Presentation is loading. Please wait.

Presentation is loading. Please wait.

Approximation Algorithms for Deadline-TSP & Vehicle Routing with Time Windows by Nikhil Bansal, Avrim Blum, Schuchi Chawla & Adam Meyerson STOC 2004 Presented.

Similar presentations


Presentation on theme: "Approximation Algorithms for Deadline-TSP & Vehicle Routing with Time Windows by Nikhil Bansal, Avrim Blum, Schuchi Chawla & Adam Meyerson STOC 2004 Presented."— Presentation transcript:

1 Approximation Algorithms for Deadline-TSP & Vehicle Routing with Time Windows by Nikhil Bansal, Avrim Blum, Schuchi Chawla & Adam Meyerson STOC 2004 Presented by Richard Neil Pittman

2 Outline ► Introduction ► Definitions & Scenarios ► Problem Setup ► Algorithms ► Conclusion ► References ► Questions & Homework

3 Introduction ► The Traveling Salesman Problem (TSP) is fundamental routing problem in computer science with numerous applications. ► However, optimizing for the minimum length tour is not always the best solution for a given application. ► Sometimes the minimization of cost, time or distance is does not produce the desired behavior.

4 Definition - TSP Traveling Salesman Problem (TSP): Instance:Set C of m cities, positive distances d(c i,c j ) for each pair of cites c i & c j in C & an integer B. Question:Is there a tour of C having length of B or less.[3] Or Traveling Salesman Problem (TSP) Given an undirected graph, G(V,E,W), consisting of vertices, V, edges, E, and edge weights, W, find a tour of minimum weight that visits each vertex exactly once. Each edge, e(v i, v j ) or e ij, is associated with a weight, w(e ij ) or wt ij, which represents a cost that edge. A tour is defined a permutation of vertices in the graph with same start and end point.[2]

5 Scenario – part 1 ► Our traveling salesman with this problem definition can design algorithm that can create the tour with close to the shortest length or determine if a tour exist under a bound which can be interpreted as a limited amount of gas for is vehicle.

6 Traveling Salesman Optimal tour visiting all sites once

7 Definitions - MRTSP Maximum Reward TSP (MRTSP) Given graph G(V,E,W, ∏), edge weights W(v i,v j ), and vertex rewards ∏(v), and integer B, find a tour with a weight of B or less that maximizes the reward. Each vertex v i has a reward ∏(v i ) that is awarded on the tour only the first time the vertex is visited.[2]

8 Scenario – part 2 ► This time our traveling salesman cannot use a tour longer than a given bound. This bound can be thought of as a limit on mileage due to limited gas funds. ► Each of the sites has different accounts the salesman is responsible for, that have different values. It is to the salesman’s advantage to service the accounts of the most value. ► Using the problem statement above the traveling salesman can create a tour that will allow to him get close to the maximum reward his limited gas funds will allow.

9 Traveling Salesman Tour with in bound of 80 with reward $194 What if the tour bounded under 80?

10 Definitions - DTSP Deadline TSP (DTSP) Given graph, G(V,E,W, ∏, D), edge weights W(v i,v j ), vertex rewards ∏(v), and vertex deadlines D(v), find a tour that maximizes the reward. Each vertex v i has a reward ∏(v i ) and a deadline D(v i ), such that the reward is awarded on the tour only the first time the vertex is visited before its deadline. [2]

11 Definitions - TWTSP Time Window TSP (TWTSP) Given graph, G(V,E,W, ∏, D,R), weights W(v i,v j ), vertex rewards, ∏(v), vertex deadlines D(v), and vertex release times R(v), find a tour that maximizes the reward. Each vertex v i has a reward ∏(v i ), a deadline D(v i ), and a release time R(v i ), such that the reward is awarded on the tour only the first time the vertex is visited before its deadline but after its release time.[2]

12 Scenario – part 3 ► This time the traveling salesman has the added complication that he has to make appointments ahead of time to meet with his clients. ► These clients have limited availability defined by their time windows and deadlines. Using one or both of these problems statement defines the requirements for an algorithm to solve problems of interest.

13 Traveling Salesman Tour with reward of 238 & visiting 6 sites on time What if the salesman could only visit sites at certain times?

14 Definitions - P2POP Point to Point Orienteering Problem (P2POP) Given graph, G(V,E,W, ∏), weights W(v i,v j ), and vertex rewards ∏(v i ), two points v i and v j, and an integer D, find the path from vi to v j with weight D or less that maximizes the reward. Each vertex v i has a reward ∏ i that is awarded on the path only the first time the vertex is visited.[2]

15 Definitions - ORDP Orienteering with Release Dates Problem (ORDP) Given graph, G(V,E,W, ∏,D,R), edge weights W(v i,v j ), vertex rewards ∏(v i ), deadlines D(v i ), and release times R(v i ), and two points v i and v j, find the path from v i to v j that maximizes the reward. Each vertex v i has a reward ∏ i that is awarded on the path only the first time the vertex is visited after its release time but before its deadline.[2]

16 Definitions - MEPP Min Excess Path Problem (MEPP) Given graph G(V,E,W, ∏), weights W(v i,v j ), and vertex rewards ∏(v i ), two points v i and v j, and an integer K, find the path from v i to v j that visits K or more vertices and minimum excess along that path from v i to v j, ε P. Each vertex vi has a reward ∏i that is awarded on the tour only the first time the vertex is visited. The excess of the path, P, from v i to v j is defined as the length of the path, l P (v i,v j ), minus the direct distance from v i to v j, dist(v i,v j ). Therefore ε P >= l P (v i,v j ) - dist(v i,v j ).[1]

17 Problem Setup ► The problem instance for both these problems are given in the form of an undirected graph with edge weights and vertex rewards, deadlines and release times defined. ► In the case of scheduling problems with additional parameters of setup time and task duration, these parameters can be taken into account by adjusting the edge weights of the graph. ► For each edge e ij from v i to v j, increase the edge weight by half the setup time for v i and v j and half the duration of v i and v j.[2]

18 (2 + ε) Min Excess Path Algorithm ► Use a dynamic algorithm previously presented in Blum et al [1]

19 Point to Point Orienteering Algorithm

20 ► FACT 1:ε P (u 0, u i ) is increasing in i, where ε P (u 0, u i ) is the excess along path P from u 0 to u i.[2] ► FACT 2:The excess function is sub-additive. By ‘sub-additive’ we refer to that nodes u i, u j and u k with 0 <= i <= j <= k <= l, ε P (u i,u j ) + ε P (u j,u k ) <= ε P (u i,u k ).[2] ► Theorem 1:The algorithm for P2POP is a 3- approximation to the point to point orienteering problem or the algorithm returns 1/3 the optimal prize.[2]

21 Bicriteria Approximation for TWTSP ► This algorithms is designed to optimize for two criteria:  Maximize Reward  Minimize Excess along the path ► This algorithm is broken into two cases that are used to solve the General Case (Algorithm C):  Small Margin Case (Algorithm A)  Large Margin Case (Algorithm B)

22 Small Margin Case (Algorithm A)

23 ► ε is a constant that establishes the segment partitions ► S j is partitioned subset of vertices whose deadlines fall into to the interval [f j D max,f j-1 D max ] ► V e is the set of all vertices that lie on the optimal path on the interval [D(v)/(1+ε),D(v),]

24 Small Margin Case (Algorithm A) ► Lemma 2:For any j and any nodes u in S j ∩ V e where in S j+3 ∩ V e, t O (v) < t O (u), where t O (v) is the arrival time on the optimal path at vertex v.[2] ► Lemma 3:For any nodes v in S j ∩ V e, f 3 R(v) <= t A (v) < fD(v), where t A (v) is the arrival time at vertex v on path A.[2] ► Theorem 4:Algorithm A returns a path P with ∏ ε P >= 1/9 ∏ O (V e ), where ∏ ε P is the reward earned on a path P with constant ε and ∏ O (V e ) is the reward earned on the optimal path on the subset V e.[2]

25 Small Margin Case (Algorithm A) ► Both paths A and O visits S j ∩ V e after f j+2 D max and before f j-1 D max ► For all v in S j ∩ V e R(v) <= f j-1 D max ► t A (v) >= f j+2 D max >= f 3 R(v) ► D(v) <= f j D max by definition ► t A (v) <= f j-1 D max <= fD(v) ► f 3 R(v) <= t A (v) <= fD(v)

26 Small Margin Case (Algorithm A) ► The algorithm looses a factor of 3 from P2POP ► The algorithm looses a factor of 3 by omitting two thirds of the vertices in any given solution ► Therefore the approximation is bounded by 1/9

27 Large Margin Case (Algorithm B)

28 ► α and β is an approximation parameters ► D’(v) = D(v)/4 ► S i is the partition of a subset of vertices whose D’(v) are within the interval [α i,α i+1 ] ► Pi is the P2P path for the root, r, and Si of length i+1 ► Ti is the tour following Pi and back to r.

29 Large Margin Case (Algorithm B) ► Lemma 5:For any i, j and v in S βi+j, ½ R(v) <= t Q (v) <= ½ D(v), where t Q (v) is the arrival time on the path Q and Q is the path from the root along a P2P orienteering path and back to the root.[2] ► Theorem 6:Algorithm B returns a path P with ∏ P >= 1/24 ∏ O (V 1/4 ), where V 1/4 is the subset of vertices whose arrival times on the optimal path are less that ¼ of their deadlines and ∏ O (V 1/4 ) is the reward earned on the optimal path for this subset.[2]

30 Large Margin Case (Algorithm B) ► D(v) = 4D’(v) >= 4α βi+j ► |Qj| = Σ k<i |T βk+j | + |P βi+j | <= α βi+j+1 (2/(α β – 1)+1) ► t Q (v) <= (α/4)(2/(α β – 1)+1)D(v) ► t Q (v) <= ½ D(v) given β = 8 and α = 1.2 ► t Q (v) >= Σ k = Σ k<i |T βk+j | = (2α βi+j+1 )/(α β – 1) ► t Q (v) >= ½ D’(v) given β = 8 and D’(v) = ½ D’(v) given β = 8 and D’(v) <= α βi+j+1 ► t Q (v) >= ½ R(v) given R(v) = ½ R(v) given R(v) < D’(v) ► ½ R(v) <= t Q (v) <= ½ D(v)

31 Large Margin Case (Algorithm B) ► The sets S jmodβ are guaranteed to include all of V 1/4 ► Π Qj >= 1/3 Σ i Π O (S βi+j ) from P2POP ► Therefore the algorithm returns 3β approximation ► 24 for β = 8

32 General Case (Algorithm C)

33 ► ε is the approximation parameter ► s is defined as the smallest integer that satisfies f S <= ¼, where S is (1.5) s. ► s is bounded by O(log 1/ ε) ► Theorem 7:Algorithm C returns a path P with ∏ ε P >= (1/(24(s + 2)) ∏ O = Ω(1/(log 1/ε) ∏ O. ► Corollary 8:Algorithm C with ε = 1/D max gives an O(log D max ) approxiamation of the Time Window TSP problem.

34 O(log n) Approximation of Deadline TSP (Algorithm D)

35 ► A vertex u i is considered minimal if either t O (u j ) = D(u i ) for u i and any other vertex u j ► For any three minimal vertices u h, u j, and u k there exists a set R(h,j,k) such that D(u j ) <= D(u) <= D(u k ) or t O (u h ) <= t O (u) <= t O (u j ) ► R(h1,j1,k1) and R(h2,j2,k2) are disjoint if h2 >= j1 and j2 >= k1 ► A collection of rectangular sets, C i, is considered disjoint if all rectangular sets in C i are disjoint ► There at most log n collections of disjoint rectangular sets such that all vertices u i on the optimal path O is present in at least one collection C i ► The total reward of all collections is at most Π O, therefore some collections have at least (1/log n) Π O ► This set of collections is denoted as a family, F

36 O(log n) Approximation of Deadline TSP (Algorithm D) ► Using P2P we can find all the O(n 4 D max 2 ) paths within 1/3 of the optimal for the minimal vertex pairs in polynomial time ► Then using a dynamic algorithm we patch these sub-paths together ► The O(1) approximation of P2P and the fact there exists some Ci with at least 1/log n reward implies a O(log n) approximation for DTSP

37 O(log n) Approximation of Deadline TSP (Algorithm D) ► Lemma 9:For each vertex u, visited in the optimum path O, there is at least one collection C i in F such that u lies in some rectangle in C i, where F is a family of log m collections where log m <= log n. ► Lemma 10:We can compute in polynomial time a feasible path that collects at least a third of the reward collected by the best collection C i. ► Theorem 11:Algorithm is an O(log n) approximation for the Deadline TSP problem.

38 Orienteering with Release Dates Problem Algorithm ► Redefine time windows of the vertices to [0,T-R(v)] where T is the max deadline or distance and call this new graph G’(V,E) ► Run Algorithm D on this G’(V,E) and return the result in reverse order ► Theorem 12:Algorithm D gives a 3 log n approximation to the Orienteering with Release Dates Problem, when applied to the complimentary graph.

39 O(log2 n) Approximation of Time Window TSP ► Using Algorithm D with the P2P subroutine replaced with the solution to the Orienteering with Release Dates Problem ► Theorem 13:The algorithm for Time Window TSP gives a 3 log 2 n approximation of the Time Window TSP.

40 Conclusions ► This paper describes approximation algorithms for the deadline and time window TSP. ► The first algorithm is shown to have an O(log 1/ε) approximation ratio or O(log D max ) when ε = 1/D max. ► We have O(log n) and O(log 2 n) approximations for deadline and time window TSP respectively that run in polynomial time.

41 References 1. A. Blum, S. Chawla, D. Karger, T. Lane, A. Meyerson,and M. Minkoff. Approximation algorithms for orienteering and discounted-reward tsp. In Proceedings of the 44th Foundations of Computer Science, 2003. 2. N. Bansal, A. Blum, S. Chawla, and A. Meyerson, Approximation algorithms for deadline-TSP and vehicle routing with time-windows. In Proceedings of the thirty- sixth annual ACM symposium on Theory of computing, 2004. 3. M. Garey, and D. Johnson. Computers and Intractability, A Guide to the Theory of NP-Completeness. W. H. Freeman and Company. 1979. p. 211.

42 Questions? & Homework ► The first algorithm for the TWTSP and DTSP utilize two optimizing criteria. Formulate another optimization problem using two or more criteria. ► Describe an application of TWTSP or DTSP other than vehicle navigation. How would you convert that problem to TWTSP or DTSP ► Formulate one of the problems presented using the outline presented in class


Download ppt "Approximation Algorithms for Deadline-TSP & Vehicle Routing with Time Windows by Nikhil Bansal, Avrim Blum, Schuchi Chawla & Adam Meyerson STOC 2004 Presented."

Similar presentations


Ads by Google