Presentation is loading. Please wait.

Presentation is loading. Please wait.

ESA2003 1 On approximating a geometric prize-collecting traveling salesman problem with time windows Reuven Bar-Yehuda – Technion IIT Guy Even – Tel Aviv.

Similar presentations


Presentation on theme: "ESA2003 1 On approximating a geometric prize-collecting traveling salesman problem with time windows Reuven Bar-Yehuda – Technion IIT Guy Even – Tel Aviv."— Presentation transcript:

1 ESA2003 1 On approximating a geometric prize-collecting traveling salesman problem with time windows Reuven Bar-Yehuda – Technion IIT Guy Even – Tel Aviv Univ. Shimon (Moni) Shahar –Tel Aviv Univ.

2 ESA2003 2 7:00-5:00 7:00-6:00 12:00-8:00 6:00-7:00 leave office at 5:00 get back at 20:00 10:00-11:00 16:00-17:00 17:00-18:00 0.5 hour rest 1 hour 2 hours 1.5 hours 2 hours 4 hours 2 hours Motivation – postman distributing packages

3 ESA2003 3 Prize-collecting TSP with time windows A scheduling problem with locations. Definition: –Sites in a metric space (e.g. the plane). –A time-interval for each site (release-time, deadline). –Moving agent with speed in [0,1]. –Goal: max #sites the agent visits on-time. –Extension: service-time per site.

4 ESA2003 4 Known results: scheduling with locations Feasibility is NPC for points on a line [Tsitsiklis92]. Polynomial algorithm for the case where all intervals are [0,t i ] (using dynamic programming) [Tsitsiklis92 Khanna02] Min makespan (completion time of last job): –1.5-approx for points on a line with release times, processing times, and no deadlines [KNI98]. –2-approx for points on a line, no deadlines, multiple agents (vehicles) [KN01]. –PTAS for trees with O(1) leaves, single & multiple agents [AS02].

5 ESA2003 5 x y t

6 ESA2003 6 x y t

7 ESA2003 7 x y t

8 ESA2003 8 x y t

9 ESA2003 9 x t

10 ESA2003 10 x t

11 ESA2003 11 x t

12 ESA2003 12 x t

13 ESA2003 13 speed = 1/slope  Slope in [45 0, 135 0 ] Chop intervals outside of visibility cone

14 ESA2003 14 Now we rotate the view by 45 0 ….

15 ESA2003 15 After we rotate the view by 45 0, Slope of tour  [0, 90]

16 ESA2003 16 Longest monotone path

17 ESA2003 17 Special case: zero length Longest monotone subsequence

18 ESA2003 18 Approach: Longest path on a DAG

19 ESA2003 19 Approach: Longest path on a DAG

20 ESA2003 20 Approach: Longest path on a DAG

21 ESA2003 21 Approach: Longest path on a DAG

22 ESA2003 22 x y t Approach works for any dimension: Longest path on a DAG

23 ESA2003 23 x y t Longest path on a DAG

24 ESA2003 24 Polynomial time algorithms:  If all interval times have zero length  If Max length ≤ k * Min Length Grid path: Opt in time Poly(n,2 k ) General: 2-approx in time Poly(n,2 k ) General: O(log k /loglogn) - approx  No assumptions: O(log(n)) - approximation

25 ESA2003 25 Construct a DAG. V={(x,y): (x,y)  R 2 } 1 1 1 1 1 1 1 11 1 1 2 1 Direct the grid up & right. Assign edge weights (#intersecting intervals). Find a longest path on the obtained DAG.  k-apx Grid path: |interval  grid|  k

26 ESA2003 26 Grid path: |interval  grid|  k Construct a DAG V = {(x,y),b 1 …b k : (x,y)  R 2 and b i  {0,1}} Directed “right” edges (x,y)0b 2 …b k  (x+1,y)b 2 …b k 0 (x,y)0b 2 …b k  (x+1,y)b 2 …b k 1 Directed “up” edges (x,y)1b2…bk  (x,y+1)b2…bk0 (x,y)1b2…bk  (x,y+1)b2…bk1 Assign edge weights and find longest path in the DAG (2,2) 1 1 00 (2,3) 0 (2,2)1001  (2,3)0010

27 ESA2003 27 A 2-approx for length  [1,2) Construct a  2/4 square grid. Each interval intersects at most 8 grid lines. Find optimal grid path (k=8). Time complexity: Poly(n) Claim:  (optimal) path P:  grid paths P1 P2, s.t P1 and P2 cover all intervals intersected by P

28 ESA2003 28  (optimal) path P:  grid paths P1, P2, s.t P1 and P2 cover all intervals intersected by P P: an optimal path P1: Upper grid path P P1 P2 P2: Lower grid path

29 ESA2003 29 A 2-approx for length  [1,2)  2log(I max /I min )- apx for the general case

30 ESA2003 30 A 2-approx for length  [1,k)  2log(I max /I min )/logk- apx for the general case k=O(logn)  time is Poly(n)

31 ESA2003 31 Recursive bisection Claim:  separating vertical line (at most half the intervals lie strictly on each side).

32 ESA2003 32 Recursive bisection (cont.) bisect recursively  log(n) “combs” Level 1 Level 2 2nd comb A comb defines subset of intervals that intersect exactly one comb-tooth.  comb C i such that: C i  OPT contains at least OPT/log n intervals.

33 ESA2003 33 O(log(n)) Approximation Partition the intervals into log n combs. For each comb 2-apx.  2log(n)- approximation.

34 ESA2003 34 Approximation for comb Form a grid. Construct a DAG. V = set of horz segments Set of edges: (i, j)  (i+1, k) If j  k. Edge weights is the number Of new intersected intervals ii+1 j k weight((i, j), (i+1, k))=4

35 ESA2003 35 Approx ratio = 2 Decompose OPT into alternating sub-tours: –horizontal sub-tours inside a slice –vertical sub-tours between two comb teeth –Each “covered segment” must cross P1 or P2 P2 P1

36 ESA2003 36 Zigzags: source of hardness special case: no zigzags between intervals Dynamic programming finds optimal tour (even if distances are asymmetric). Extension: density = bound on number of zigzag between intervals. apx ratio=density (same dynamic programming)

37 ESA2003 37 Further research Improve approximation ratio in 1-D. Nothing known for 2-D.


Download ppt "ESA2003 1 On approximating a geometric prize-collecting traveling salesman problem with time windows Reuven Bar-Yehuda – Technion IIT Guy Even – Tel Aviv."

Similar presentations


Ads by Google