Chandra Chekuri, Nitish Korula and Martin Pal
Proceedings of the nineteenth annual ACM-SIAM symposium on Discrete algorithms (SODA 08)
Improved Algorithms for Orienteering and Related Problems
Presented By: Asish Ghoshal
The Problem
• Given a graph G(V,E) (directed or undirected), two nodes s,t ϵ V and a non-negative budget B, find an s-t walk of total length at most B so as to maximize the number of distinct nodes visited by the walk.
• A node may be visited multiple times by the walk but is only counted once in the objective function.
• Motivated from real world problems in vehicle routing, robot motion planning.
Quick Facts
• Is NP-hard
• Is APX-hard (cannot be approximated within 1481/1480)
• Introduced in 1987 by Bruce L. Golden, Larry Levy, and Rakesh Vohra
Introduction
• Orienteering belongs to the class of prize collecting TSP.
• Given a set of cities with some “prize” associated with each city and given a set of pair wise distances, a salesman needs to pick a subset of cities so as to minimize distance and maximize total reward.
• Bi-criteria optimization problem.
Introduction
• General approach:
• Fix one criteria and optimize the other– K-TSP, k-Stroll
Fix: No of nodes (total reward)
Optimize: distance
– OrienteeringFix: Total distance (budget)
Optimize: Reward (no of nodes covered)
The Story So far
• First non-trivial approximation: 2 + Ɛ (Arkin, Mitchell and Narasimhan) for points on Euclidean plane.
• 4 (Blum et al) for points on arbitrary metric spaces.
• 3 (Bansal et al)
• PTAS (K. Chen and Har-peled) for fixed dimensional Euclidean space.
Results
• Undirected graphs:– Ratio of (2+δ) and running time of nO(1/ δ^2)
• Directed Graphs:• Ratio O(log2 OPT)
Approach
• The basic approach:
Approximation of k-stroll -> approximation of minimum excess -> approximation for Orienteering.
The MIN_EXCESS Problem
• The excess of a path P is defined as the difference between the length of the path L and the shortest distance D between its end points. i.e excess(P) = L – D
• Given a weighted graph with rewards, end points s and t, and a reward quota k, find a minimum excess path from s to t collecting reward at least k.
MIN_EXCESS (Contd)
• If x is the excess of an optimal path, an α-approximation for the minimum-excess problem has length at most:
d(t) + αx ≤ α(d(t) + x)
and hence gives an α approximation for the minimum length problem.
Note: d(t) is the shortest distance between the end points of the path.
K-stroll to Orienteering via min-excess
1. In undirected graphs a β-approximation to the k-stroll problem implies a (3 β/2 – ½)-approximation to the minimum excess problem (Blum 2003)
2. In directed graphs a β-approximation to the k-stroll problem implies a (2β - 1)-approximation to the minimum excess problem.
3. A γ-approximation to the min-excess problem implies a | γ| approximation for orienteering. (Bansal 2004)
• 2 and 3 can be extended to show that an (α,β)-approximation to the k-stroll algorithm for directed graphs gives (α|2β -1|)-approximation for directed orienteering.
• Using 1 and 3 and a (1 + δ,2)-approximation for the k-stroll problem gives a ((1+ δ)*|2.5|) = (3 + δ)-approximation for orienteering.
• But we are interested in (2 + δ) approximation.
K-stroll to Orienteering via min-excess
(2 + δ) approach
• Begin with k-stroll
• Given a metric graph G, with 2 specified vertices s, t and a target k, find an s-t path of minimum length that visits at least k vertices.
• Let L be the length of such an optimal path and D be the shortest path distance from s to t.
(2 + δ) approach (Contd)
• Objective: For any fixed path that visits at least (1-O(δ))k vertices and has total length at most max1.5D,2L-D
• (Chaudhuri et al 2003) give a polynomial algorithm to find a tree T that spans k vertices containing both s and t, of length at most (1+ Ɛ)L for any Ɛ > 0
• Guesses O(1/Ɛ) vertices s,w1..wm,t such that an optimal path P visits the vertices in the given order and length and distance between any wi-wi+1 is < ƐL.
• Assume all edges in T are < ƐL.
• Let PTs,t be the path in T from s to t.
• L is the shortest s-t path visiting k vertices.
• Since length(T)<= (1+Ɛ)L
We can double all edges of T not on PTs,t to
obtain a path PT from s to t that visits k vertices.
Length of PT is 2length(T)-length(PTs,t) <=
2length(T) - D
Easy Doubling conditions
• If length(T) <= 5D/4 then PT has length at most 3D/2).
• Length(PTs,t) >= D+2ƐL then
length(PT) <= 2(1+Ɛ)L – (D + 2ƐL) = 2L - D
• If the easy doubling conditions are not met it means D <= 4/5(length(T)) and length(PT
s,t) >= (1/5 - 2Ɛ)L
• Modify the tree T to T’ in the following way:
• Greedily decompose the edge set of T\PTs,t into
Ω(1/δ) disjoint connected components, each with length in [δL,3δL)
• Merge connected components to get T’• Tree T’ contains a vertex of degree 1 or 2 that
corresponds to a component containing at most 32δk vertices.
• Remove C• C can either be a leaf or a node with degree 2
and contain at most 32δk vertices.• So we get a tree T’’ of length (1-32δ)k vertices.• If C is not a leaf we get two Trees.• Find the shortest distance between trees.• In either case double edges and we get a tree of
length at most 2L-D and we are done.
Conclusion
• Using results from Orienteering improved results can be obtained for TSP with deadlines and TSP with time windows.
References
• N. Bansal, A. Blum, S. Chawla and A. Meyerson. Approximation Algorithms for Deadline TSP and Vehicle Routing with time windows. Proc. Of ACM STOC 166-174. 2004
• A.Blum, S.Chawla, D. Karger, T.Lane, A. Meyerson and M. Minkoff. Approximation algorithms for Orienteering and disounted reward TSP, SIAM J. On Computing, 37(2):653-670,2007.
• K. Chaudhuri, B.Godfrey, S.Rao and K.Talwar. Paths, trees and minimum latency tours. Proc. of IEEE FOCS, 36-45,2003.
Top Related