1 / 25

Algorithms for Path-Planning

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.

Download Presentation

Algorithms for Path-Planning

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. Algorithms for Path-Planning Shuchi Chawla (CMU/Stanford/Wisconsin) 10/06/05

  2. 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

  3. 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

  4. 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

  5. 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

  6. 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

  7. 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

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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

  13. 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

  14. 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

  15. 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

  16. 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

  17. A pictorial representation of OPT “Good” rectangle Deadline Can be approximated via Orienteering Time Shuchi Chawla

  18. 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

  19. 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

  20. 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

  21. 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

  22. 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

  23. 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

  24. 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

  25. Questions?

More Related