Presentation is loading. Please wait.

Presentation is loading. Please wait.

Algorithms for Path-Planning Shuchi Chawla Carnegie Mellon University.

Similar presentations


Presentation on theme: "Algorithms for Path-Planning Shuchi Chawla Carnegie Mellon University."— Presentation transcript:

1 Algorithms for Path-Planning Shuchi Chawla Carnegie Mellon University

2 Algorithms for Path-Planning Shuchi Chawla 2 A trick-or-treat problem It’s Halloween… Collect as much candy as possible between 6pm and 8pm Goal: Get as much candy as possible In what order should you visit houses?

3 Algorithms for Path-Planning Shuchi Chawla 3 Path-planning Informally… planning and ordering of tasks Classic instance ― Traveling Salesman Problem 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:

4 Algorithms for Path-Planning Shuchi Chawla 4 Informally… planning and ordering of tasks Classic instance ― Traveling Salesman Problem A natural extension ― Orienteering Many variants, applications: –Delivery & distribution problems –Production planning, assembly analysis –Robot navigation Needs to be solved at large scales in practice Mostly NP-hard ☹ Up the elevator Up the stairs Path-planning 1:002:003:004:0012:0011:0010:009:00 Package A, Robinson Package C, Downtown, *priority* Package B, Monroeville Office; Pick packages C & DOffice; Pick packages A & B Package D, Waterfront Pick up and delivery schedule, Friday, Jan 17 Item X1: Value: $15 Deadline: 100 units by March 15 Requirements: 5 hrs. on Y1 7 hrs. on Y2 Scheduling constraints: < 1 hr. gap between Y1 and Y2 Machine Y2: Cost: $2 per hr. Scheduling constraints: > 30 mins. between X1 and X2 Cannot find the optimal solution in “polynomial-time”

5 Algorithms for Path-Planning Shuchi Chawla 5 Studied in Operations Research for the past 20-30 years (also known as Vehicle Routing) Many variants: multiple vehicles, stochastic demands, pickup-and-delivery Techniques for Mixed Integer Programming Stochastic planning problems in Robotics and AI My focus: Approximation algorithms cutting plane methods  branch and bound simulated annealing  genetic algorithms … A 2-approximation: half-as-good as OPT; value  ½ OPT Focus mostly on exploration, position estimation Some poly-time solvable problems studied e.g. shortest paths Linear and Dynamic programming techniques Path-planning: A brief history Find a solution in polynomial-time with value  OPT (   1) 1∕1∕

6 Algorithms for Path-Planning Shuchi Chawla 6 Approximation Results A reward vs. time trade-off Time taken Reward obtained A “quota” approximation A “budget” approximation OPT (2 hrs, ) (4 hrs, )

7 Algorithms for Path-Planning Shuchi Chawla 7 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-Excess 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 k locations, but minimize excess minimize time plus reward foregone max. reward, reward decreases with time

8 Algorithms for Path-Planning Shuchi Chawla 8 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-Excess Optimize a combination of reward and time –Prize-Collecting TSP –Discounted-Reward TSP 1.5 [Christofides ’76] 2+  [BRV99] [Garg99] [AK00] [CGRT03] … ? 1.5 [Christofides ’76] 2+  [BRV99] [Garg99] [AK00] [CGRT03] … 2+  Approximation Results ?????? 2 [Goemans Williamson ’92] ? 3 3 log n 3 log 2 n 2 [Goemans Williamson ’92] 6.75+  FOCS’03: Blum, Karger, Chawla, Lane, Meyerson, Minkoff STOC’04: Bansal, Blum, Chawla, Meyerson This talk Use LP-rounding Use structural properties and Dynamic Programming

9 Algorithms for Path-Planning Shuchi Chawla 9 A road-map An approximation for Orienteering Current and future work –Robot navigation & path-planning in a stochastic world Other research

10 Algorithms for Path-Planning Shuchi Chawla 10 Back to candy-collection (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 NP-hard; we want to find an approximation In poly-time, find a path covering reward  ⅓ OPT by deadline D

11 Algorithms for Path-Planning Shuchi Chawla 11 A flawed attempt: the greedy approach Visit the closest location; continue until time over Assume for simplicity – all locations have equal reward Local decisions are bad – consider the “big picture” –treat clusters of locations as single entities with large reward Optimal Greedy (2 hrs, )

12 Algorithms for Path-Planning Shuchi Chawla 12 A single mistake – the very first step – could be disastrous! Suppose we had twice or thrice the time … Can we use this to approximate Orienteering? A flawed attempt: the greedy approach Greedy Optimal Algorithm using twice the optimal length (4 hrs, ) (2 hrs, ) Recall: 2-approx to k-TSP … We know how to achieve this!

13 Algorithms for Path-Planning Shuchi Chawla 13 k-TSP versus Orienteering k-TSP: Visit at least k reward as fast as possible Several approx. known –best: 2-approx [Garg05] Orienteering: Visit as much reward as possible by time D No approximation known Equivalent at optimality; different in approximation: Time taken Reward obtained OPTk-TSP approx Orienteering approx 2 hrs.4 hrs.

14 Algorithms for Path-Planning Shuchi Chawla 14 If there exists a path: length =, reward  2-approx to k-TSP gives: length , reward  Is there a good path with these properties? Bad trade-off between length and reward! Delving deeper does not help – –algorithms for k-TSP use a “primal-dual” subroutine [Goemans Williamson’92] –inherently aim for the low-hanging fruit first ½D Next attempt: Using k-TSP for Orienteering D 1∕1∕ OPT 1∕1∕ Time taken Reward obtained OPTk-TSP approx Orienteering approx OPT’k-TSP approx 1 hr.2 hrs. OPT’ OPT ALG 4 hrs.

15 Algorithms for Path-Planning Shuchi Chawla 15 If there exists a path: length =, reward  2-approx to k-TSP gives: length , reward  Is there a good path with these properties? –Yes, if we didn’t have to start from –Idea: Approximate one half of OPT ½D Next attempt: Using k-TSP for Orienteering D Problem: If OPT collects most reward in its second half…  Length of path ≫ D Use only as much extra length as “saved” in the first part Need a better approximation than k-TSP 1∕1∕ OPT 1∕1∕

16 Algorithms for Path-Planning Shuchi Chawla 16 Need a better approximation than k-TSP Excess of path = length of path – length of shortest path Given a 2-approx for “excess”: –Divide OPT into 2 parts, each with equal excess –Approximate “excess” on the part with maximum reward Problem: If OPT collects most reward in its second half?  Length of path ≫ D Key insight: Approximate “excess”

17 Algorithms for Path-Planning Shuchi Chawla 17 Approximating the excess The Min-Excess problem: Given a map G, start s, end t, reward quota k Find path with reward k that minimizes excess = length – shortest distance from s to t ℓ OPT k-TSP approx Min-Excess approx length = shortest distance length excess t Shortest distance from start Length of path s dist(s,t)

18 Algorithms for Path-Planning Shuchi Chawla 18 Approximating the excess: large excess The easy case:dist(s,t) ≪ excess k-TSP gives a good approximation to Min-Excess ℓ t Shortest distance from start Length of path s OPT k-TSP approx Min-Excess approx length excess dist(s,t) OPT k-TSP approx t Min-Excess approx

19 Algorithms for Path-Planning Shuchi Chawla 19 Approximating the excess: small excess The hard case:dist(s,t) > excess, or, excess ≈ 0 OPT visits locations roughly in order of increasing distance from start Key insight: If OPT visits locations in order of increasing distance, we can find it exactly using Dynamic Programming! ℓ t Shortest distance from start Length of path s OPT k-TSP approx t Min-Excess approx ℓ To find best path for (v,k), – try all paths that end at some u and collect reward k-1 – Pick the one with smallest excess For all locations v, and reward k: find and store best path from start to v with reward k u v u v k=4 k=5

20 Algorithms for Path-Planning Shuchi Chawla 20 Approximating the excess: combining them The large excess case: excess ≫ shortest dist Use k-MST The small excess case: excess ≈ 0 (OPT is “monotone”) Use Dynamic Programming Use k-TSP Dynamic Program monotone wiggly Patch segments using dynamic programming OPT Gives a (2+  )-approximation for Min-Excess [FOCS’03] In order of increasing distance from start What about the intermediate case?

21 Algorithms for Path-Planning Shuchi Chawla 21 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 into 3 “equal-reward” parts (hypothetically) 2. Approximate the part with the smallest excess  3-approximation to orienteering An algorithm for Orienteering Excess of ALG   1 +  2 +  3 ; Reward of ALG = ⅓ reward of OPT 11 22 33 Excess of path from u to v  (u,v) = ℓ (u,v)–d(u,v) An r-approximation for min-excess gives a  r  -approximation for Orienteering v1v1 v2v2 OPT ALG Open: Given an r-approx for min-excess, can we get r-approx to Orienteering?

22 Algorithms for Path-Planning Shuchi Chawla 22 Open problems Better approximations –Vehicle capacities –Precedence constraints Faster approximations How hard are they? –Hardness of approximation results for path-planning –Only small-constant-factor hardness known Stochastic models –Map changes over time –Requests arrive stochastically –Robot Navigation

23 Algorithms for Path-Planning Shuchi Chawla 23 An application: Robot Navigation Robot’s task: deliver packages to various locations, collect samples, etc. Planning with uncertainty –may run out of battery power –may crash into a wall –may face unforeseen obstacle that causes delay Goal: perform as many tasks as possible before failure occurs; perform all tasks as fast as possible in expectation

24 Algorithms for Path-Planning Shuchi Chawla 24 A simple model for uncertainty At each step, fail with probability  Goal: maximize expected reward collected before failure A crude heuristic: –Expected number of steps until failure = 1/  –Set deadline = 1/  and apply Orienteering algorithm –Provides no guarantee on reward Better formulation: “exponential-discounting” –Probability that robot is alive at time t = 2 -t (say,  = ½ ) –Thus, if robot visits reward  at time t, expected reward collected = 2 -t  –Maximize “discounted-reward” reward time Fixed deadline (Orienteering) Discounted-reward Can be solved using techniques in AI, if reward is collected every time the robot visits a location The one-time reward case: Discounted-reward TSP 6.8-approximation [FOCS’03]

25 Algorithms for Path-Planning Shuchi Chawla 25 A more general model: MDPs Typically modeled as a Markov Decision Process –Current position of the robot summarized as a “state” –Several actions available in each state –Each action results in a new state with some probability 0.2 0.5 0.3 0.1 0.6 0.3 0.5 0.2 0.8

26 Algorithms for Path-Planning Shuchi Chawla 26 Stochastic path-planning Measure reward/time in expectation Stochastic-TSP: find a strategy that takes minimum possible time in expectation to visit all nodes Harder than the deterministic case: –The problems are likely to be PSPACE-hard –Generalize deterministic “directed” problems My focus –Currently examining approximation for stochastic-TSP joint work with Blum, Kleinberg and McMahan –General techniques for transforming deterministic-case algorithms to their stochastic versions 0.2 0.5 0.3 0.1 0.6 0.3 0.5 0.2 0.8

27 Algorithms for Path-Planning Shuchi Chawla 27 To summarize… Path-planning: wide variety of highly applicable problems Little known in terms of approximations Provided the first approximations for some of them Important future directions –Closing the gap between hardness and approximation –Stochastic models

28 Algorithms for Path-Planning Shuchi Chawla 28  Goal: Protect privacy of individuals; preserve macroscopic properties  Technique: “sanitization” via perturbation and summarization General research interests Path-planning Graph partitioning and clustering Online algorithms Database Privacy Game theory  Clustering with qualitative information  Binary classification using the mincut algorithm  Sparsest cut  finding bottlenecks  Profit maximizing auctions in the Bayesian setting  Location games  Scheduling, Routing, Data-structures for search [ICML’01, FOCS’02, SODA’05] [SODA’02, APPROX’03, SPAA’03] [TCC’05] [EC’03, EC’04]

29 Questions?

30 Algorithms for Path-Planning Shuchi Chawla 30 Going from a  r  -approx to an r-approx Approximating more than one segments –Cannot avoid overlap –Leads to “double-counting” Want a subsegment with excess  1 /r  optimal excess and reward  1 /r –Examples show that this does not hold for fractional r v1v1 v2v2 v3v3 v4v4

31 Algorithms for Path-Planning Shuchi Chawla 31 Path-planning vs. Scheduling Both about sequencing tasks PP – cost to switching between tasks S – no switching costs PP – usually study offline problems S – usually study online problems PP – keep the machine happy (max. profit, min. total time) S – keep the jobs happy (min. “flow times” & per-job quantities) Jobs arrive over time; their size etc. unknown until they arrive Time taken to reach/finish a job after its release

32 Algorithms for Path-Planning Shuchi Chawla 32 Robot Navigation – Objectives Goals: reach a goal state, identify good actions, visit most locations quickly, obey deadlines Techniques: for the first class of objectives, a “static” strategy suffices can be found using Dynamic or Linear Programming second class ― need to model one-time events require an exponentially large space or dynamic strategies Well understood Little or no work Does not change with time or past experience Future actions depend on states visited earlier

33 Algorithms for Path-Planning Shuchi Chawla 33 Stochastic-TSP Very different from the deterministic case: –The problem may be PSPACE-hard –The optimal strategy may be exponentially long! heads  move forward; tails  start again Need n heads in a row to reach the last node  2 n tries

34 Algorithms for Path-Planning Shuchi Chawla 34 Stochastic-TSP Find a strategy that takes minimum possible time in expectation to visit all nodes What can we do in poly-time? –An n-approximation is easy Pick an order on states For every state v, find the best static strategy s v to reach v - can be found in poly-time using Linear Prog. - s v is faster in expectation than OPT Follow s v 1 until v 1 is reached, s v 2 until v 2, and so on. Takes expected time at most n.OPT Does not change with time or past experience

35 Algorithms for Path-Planning Shuchi Chawla 35 Stochastic-TSP Find a strategy that takes minimum possible time in expectation to visit all nodes What can we do in poly-time? –A reduction to the “expected case” For every u and v, find the expected time to go from u to v Set-up an “ATSP” instance using these expected times Solve the ATSP to within an O(log n) approximation Use this sequence to visit nodes Asymmetric map: time taken to go from u to v  time taken to go from v to u Two kinds of actions: 1. Deterministic; costs n-1 2. Randomized; costs 1 Algorithm takes deterministic actions paying n(n-1) OPT takes randomized action paying n log n 1/n – May be worse than optimal by an  (n/log n) factor!

36 Algorithms for Path-Planning Shuchi Chawla 36 time 012345


Download ppt "Algorithms for Path-Planning Shuchi Chawla Carnegie Mellon University."

Similar presentations


Ads by Google