250 likes | 284 Views
Algorithms for Path-Planning. Shuchi Chawla (CMU/Stanford/Wisconsin) 10/06/05. A trick-or-treat problem. It’s Halloween… Collect large amounts of candy between 6pm and 8pm Goal: Get as much candy as possible In what order should you visit houses?. A travelling repair-bot problem.
E N D
Algorithms for Path-Planning Shuchi Chawla (CMU/Stanford/Wisconsin) 10/06/05
A trick-or-treat problem • It’s Halloween… Collect large amounts of candy between 6pm and 8pm • Goal: Get as much candy as possible • In what order should you visit houses? Shuchi Chawla
A travelling repair-bot problem • Robot receives requests for repair • Requests come with a time-window for servicing • Brownie points for each request serviced • Goal: Maximize the total brownie points • Cannot perform all of them • Takes time to service each request and move from one to another • The problem: • Which ones to accept? • How to schedule them? Selection Ordering Shuchi Chawla
Path-planning • Informally… planning and ordering of tasks • Classic instance ― TravelingSalesmanProblem Find the shortest tour covering all given locations • A natural extension ― Orienteering Cover as many locations as possible by a given deadline • Many variants, applications: • Delivery & distribution problems • Production planning, Supply chain management • Robot navigation • Studied in Operations Research for 2-3 decades • Mostly NP-hard; we look for approximation algorithms Shuchi Chawla
Approximation Results • A reward vs. time trade-off A “quota” approximation OPT (2 hrs, ) (4 hrs, ) A “budget” approximation (2 hrs, ) Reward obtained Time taken Shuchi Chawla
Approximation Results • A reward vs. time trade-off • A budget on time; maximize reward • Orienteering • Deadline-TSP • TSP with Time-Windows • A quota on reward; minimize time • TSP • k-TSP • Min-latency • Optimize a combination of reward and time • Prize-Collecting TSP • Discounted-Reward TSP • single deadline on time • different deadlines on different locations • different time windows for diff. locations • visit all locations • visit k locations • visit all; minimize sum of times • minimize time plus reward foregone • max. reward, reward decreases with time Shuchi Chawla
Approximation Results Joint work with Bansal, Blum, Karger, Meyerson, Minkoff & Lane • A reward vs. time trade-off • A budget on time; maximize reward • Orienteering • Deadline-TSP • TSP with Time-Windows • A quota on reward; minimize time • TSP • k-TSP • Min-latency • Optimize a combination of reward and time • Prize-Collecting TSP • Discounted-Reward TSP • ? • ? • ? • 3 • 3 log n • 3 log2 n Use structural properties & Dynamic Programming LP-based techniques • 1.5 [Christofides ’76] • 2+ [Garg99] [AK00] [CGRT03] [Garg05] • 3.59 [GK96] [CGRT03] • 1.5 [Christofides ’76] • 2+ [Garg99] [AK00] [CGRT03] [Garg05] • 3.59 [GK96] [CGRT03] • 2 [Goemans Williamson ’92] • ? • 2 [Goemans Williamson ’92] • 6.75+ Shuchi Chawla
Back to Orienteering • The givens A “map” G of locations, distances, start location s Rewards on locations Deadline D • To find A path that collects as much reward as possible by deadline D Shuchi Chawla
Back to Orienteering: why LPs don’t work • Naïve attempt: use (a variant of) k-TSP • Fails when most reward is far from the start • Algorithms for “quota” problems rely on the Goemans-Williamson primal-dual subroutine • Miss out on far-away reward • Budget problems are ill-behaved w.r.t. small perturbations • Solution: handle the “very-low slack” case separately Bad case: low slack Shuchi Chawla
Formalizing the “slack” • Excess of path = length of path – length of shortest path • An approx. for excess an approx. for Orienteering • a-approx to length : len(ALG) a (shorest-len + excess) • a-approx to excess : len(ALG) shortest-len + a excess Given approx for k-TSP: Good solution to prefix of OPT Given approx for excess: Good solution to suffix of OPT Shuchi Chawla
Approximating the excess • Excess of path = length of path – length of shortest path • a-approx to length : len(ALG) a (shortest-len + excess) • a-approx to excess : len(ALG) shortest-len + a excess • The simple case : excess > shortest-len • 2-approx to length gives 3-approx to excess • Solution: use k-TSP • The harder case : excess << shortest-len • examine a slightly different problem • Suppose OPT visits all nodes in order of increasing distance from start; Find OPT. • Can solve this exactly using dynamic programming! Shuchi Chawla
The large excess case: excess > shortest-len Use k-TSP The small excess case: excess ≈ 0 (OPT is “monotone”) Use Dynamic Programming Dynamic Program Use k-TSP Approximating the excess Gives a (2+)-approximation for Min-Excess What about the intermediate case? Patch segments using dynamic programming OPT wiggly wiggly monotone monotone monotone In order of increasing distance from start Shuchi Chawla
3 1 2 An algorithm for Orienteering • Construct a path from s to t, that has length D and collects maximum possible reward • Given a 3-approximation to min-excess: 1. Divide OPT into 3 “equal-reward” parts (hypothetically) 2. Approximate the part with the smallest excess 3-approximation to Orienteering An r-approximation for min-excess gives a r-approximation for Orienteering Excess of path from u to v (u,v) = ℓ(u,v)–d(u,v) OPT v2 v1 ALG Excess of ALG 1+2+3 ; Reward of ALG = ⅓ reward of OPT Shuchi Chawla
So far… • A new problem: min-excess • An approximation to min-excess • A 3-approximation to Orienteering • Coming up next: Planning with deadlines – a (3 log n)-approximation Shuchi Chawla
Planning with deadlines: Deadline-TSP • The travelling repair-bot problem: • Every node (request) v has a deadline D(v) • Reward obtained at v, if v is visited before D(v) • In Orienteering, D(v) = D for all nodes v • Constant approx known for special cases: • points on a line • Few different deadlines (based on Orienteering) • Nothing known in general Shuchi Chawla
Approximating Deadline-TSP • Our approach: • Divide the problem into “Orienteering sub-problems” • Solve these using algorithm developed previously • When can we use Orienteering? If the last vertex visited by OPT has the smallest deadline • Remove nodes of smaller deadline • Reduce all other deadlines to the smallest one • OPT remains unchanged • Does OPT have a large subpath with this property? Shuchi Chawla
A pictorial representation of OPT “Good” rectangle Deadline Can be approximated via Orienteering Time Shuchi Chawla
The high-level idea • A single “good” rectangle may not contain enough reward • Idea: Approximate many rectangles; stitch together the approximations • Main bottleneck: avoiding double-counting of reward • Divide graph into disjoint subsets Vi • Approximate the i-th rectangle over Vi Shuchi Chawla
Avoiding double-counting • Divide nodes into sets by deadlines • Guess last node on OPT in each group • Approximate Orienteering on each group V4 V3 V2 Deadline V1 length of seg. 2 length of seg. 3 Time Shuchi Chawla
Avoiding double-counting • To visit nodes before deadlines, rectangles must be disjoint along the time-axis • Still consider the same sets Vi of vertices • Obtain reward contained in axis-disjoint rectangles V4 V3 V2 Deadline V1 Time Shuchi Chawla
The disjoint-rectangle argument • Approximate reward contained in a family of “disjoint” rectangles • We construct (log n) families of disjoint rectangles • The families together contain all the nodes of OPT • We can approximate the best family via Orienteering and dynamic programming • Reward obtained ⅓ 1/(log n) • Gives a (3 log n)-approximation Shuchi Chawla
Deadlines to Time-Windows • Nodes have release-times as well as deadlines • Must visit a node within its time-window to obtain reward • Straightforward extension of Deadline-TSP algorithm (3 log2 n)-approximation to Time-Windows-TSP • A bicriteria approximation: Given any k > 0, get O(1/k) fraction of reward exceed deadlines by a (1+2-k) factor O(log Dmax)-approximation Shuchi Chawla
A recap of our results • First approximations for Orienteering, Deadline-TSP, Time-Windows-TSP, Discounted-Reward-TSP, … • Introducing the new min-excess objective and approximating it Shuchi Chawla
Open Problems • Hardness of planning problems • Approximations for directed path-planning • Chekuri, Pal give quasi-polytime polylog-approximations • Dealing with capacity & precedence constraints • Techniques for approximating planning problems on MDPs Shuchi Chawla