1 / 28

On approximating a geometric prize-collecting traveling salesman problem with time windows

On approximating a geometric prize-collecting traveling salesman problem with time windows. Reuven Bar-Yehuda Guy Even Shimon (Moni) Shahar. 1.5 hours. 4 hours. 2 hours. 2 hours. 2 hours. 1 hour. 1 hour. 1 hour. Motivation – nurse visiting patients. 10:00-11:00. 6:00-7:00.

terah
Télécharger la présentation

On approximating a geometric prize-collecting traveling salesman problem with time windows

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. On approximating a geometric prize-collecting traveling salesman problem with time windows Reuven Bar-Yehuda Guy Even Shimon (Moni) Shahar

  2. 1.5 hours 4 hours 2 hours 2 hours 2 hours 1 hour 1 hour 1 hour Motivation – nurse visiting patients 10:00-11:00 6:00-7:00 12:00-8:00 16:00-17:00 0.5 hour rest 17:00-18:00 7:00-5:00 7:00-6:00 12:00-8:00 leave home at 5:00 get back at 20:00

  3. Prize-collecting TSP with time windows • 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. • Extra: service-time per site.

  4. Known results: scheduling with locations • Feasibility is NPC even for points on a line [Tsitsiklis92]. • Polynomial algorithm for the case where all intervals are [0,t_i] (using dynamic programming) [Khanna] • 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. Our results • Logarithmic approximation for points on a line. • Optimal algorithm for points in any metric space, for special case: no round-trips within time windows. • Heuristic for any metric space. Achieves an approximation ratio that depends on a “density” measure.

  6. t Points on a line • Speed in [0,1], so dist(A,B) = amount of time required to travel from A to B. • Construct the following 2D view of an instance: • speed = 1/slope Slope in 900+[-450,+450] Simplify tour: discrete speed in {-1,0,1}. X

  7. t-X t+X Point on a line (cont.) • Now we rotate the view by 450, and obtain a weakly x-monotone tour {00,450,900}. 2-D generalization of the “max monotone subsequence” problem

  8. 1 1 1 1 1 1 2 1 1 1 1 1 1 An 8-approx for unit intervals • Construct a 1/2 -square grid. • Each interval intersects exactly 2 grid lines. • Direct the grid up & right. • Assign edge weights (#intersecting intervals). • Find a longest path on the obtained DAG. An instance (slanted intervals in the plane).

  9. Cj Ci Analysis - definitions • horizontal slice is the region defined by two consecutive horizontal lines. • vertical slice is the region defined by two consecutive vertical lines. • Ci dominates Cj if: • Right(Ci)  Left(Cj) && • Top (Ci)  Bott(Cj) • Domination ensures that concatenation of sub-tours is feasible.

  10. Segment counted twice Analysis (cont.) THM: The longest path in the graph intersects no less than OPT/8 intervals. • Each interval intersects 2 grid-segments •  weight(path) : wrong by at most a factor of 2.

  11. Optimal path Analysis (cont.) “decompose” OPT into alternating horizontal and vertical blocks. (each block within a slice). • Sub-tours through red (blue) blocks can be concatenated. • If there is a grid-path that is 4-approx in each block, pick red or blue blocks. This gives an 8-approx.

  12. OPT in a block Analysis (cont.) Select either left-top path or bottom-right path in the DAG. Every interval in block must intersect the perimeter  OPT intersects at most 2 times more intervals than the better path.  Error in weight of path is at most by a factor of 2. Overall: 8-approximation

  13. Remarks • For [1,2) intervals this is a 16-apx algorithm. • This can be extended to a 16log(I)-approx. alg. for arbitrary intervals, where I = Imax/Imin. • The size of the DAG is weakly polynomial. It becomes strongly poly if we consider only grid lines that intersect some interval.

  14. An O(log n) approximation • If I = Imax/Imin is is super-poly, then O(log I)> O(log n). • We need a different approach to divide the intervals into “disjoint-sets”. • We use an interval tree for this partition.

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

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

  17. O(log(n)) Approximation • Partition the intervals into (log n) combs. • For each comb, 12-approximate an optimal tour. • O(log(n)) approximation.

  18. Approximation for comb • Construct a DAG. • Form a grid. • Find the longest path. • An interval crosses exactly 1 vertical line. • An interval can cross many horz lines (but a grid-path crosses at most 2).

  19. Approx ratio = 12 • Decompose OPT into alternating sub-tours: • horizontal sub-tours inside a slice • vertical sub-tours between two comb teeth • Note the slices are non-uniform, but the proof still holds.

  20. No round-trips within time windows DEF: • for all pairs (vi,vj): dist(vi,vj) + dist(vj,vi) > interval (vi). • Service time: dist(vi,vj) + dist(vj,vi) + serv(vj) > interval(vi). IDEA: can’t zig-zag between sites.

  21. Dynamic program for no round-trips within time windows Intuition: examine two tours A,B such that: • Both visit k sites • Both end at site vi. • tour A ends at time tA. • tour B ends at time tB. • tA < tB •  A+best-aug(A)  B+best-aug(B) • Proof: aug(B) is also aug(A). Prize-collecting is additive because aug(B) cannot visit sites visited by A.

  22. Dynamic program for no round-trips within time windows (cont.) The algorithm works in layers, where in each layer, it keeps a list of states. A state in layer i is a pair (v,t) which signifies: a path that ends in v at time t after visiting i sites. • Layer 0: (origin, t=0)

  23. Dynamic program for no round-trips within time windows (cont.) • Layer i+1 (induction step): For each state (vi,t) in Layer i go from (vi ,t) to all vj. • Consider the state (vj,t+dist(vi,C) • After deadline? Don’t add to layer i+1. • On time? is it earlier than previous states that end in vj ? If so replace. • Before release time? Use release time instead of arrival time.

  24. Analysis of the dynamic program • Correctness: lexicographic order all optimal tours by considering vector of service times. observation: algorithm computes an optimal tour that is minimal in this order. Running time: • each layer has at most one interesting point per interval. • each point produces at most n candidates for next layers. • number of layers is at most n. The running time is O(n3).

  25. Generalized no-round trip • The density of an instance is: () = maxuv {I(u) / (Luv + Lvu) } • Density bounds number of zig-zags. • The approximation ratio of the dynamic program is:  () +1. • This follows from the fact that between every two visits of the same site, at least 1/ () of its length passed. • Non-unit profits: the problem is knapsack hard, and an approximation scheme of (1+) is possible.

  26. Remarks • This algorithm works also for asymmetric distances. • It shows that difficulty is due to “close” intervals.

  27. Further research • Improve approximation ratio in 1-D. • Nothing known for 2-D.

  28. The end

More Related