Algorithms for Path-Planning

About This Presentation
Title:

Algorithms for Path-Planning

Description:

Robot navigation. Mostly NP-hard. Shuchi Chawla. 5. Algorithms for Path-Planning ... The travelling repair-bot problem: Every node (request) v has a deadline D(v) ... – PowerPoint PPT presentation

Number of Views:30
Avg rating:3.0/5.0
Slides: 29
Provided by: Shuchi2
Learn more at: http://www.cs.cmu.edu

less

Transcript and Presenter's Notes

Title: Algorithms for Path-Planning


1
Algorithms for Path-Planning
  • Shuchi Chawla
  • Carnegie Mellon / Stanford Univ.

2
A trick-or-treat problem
  • Its Halloween
  • Collect large amounts of candy between 6pm and
    8pm
  • Goal Get as much candy as possible
  • In what order should you visit houses?

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
4
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
  • Delivery distribution problems
  • Production planning, Supply chain management
  • Robot navigation
  • Mostly NP-hard ?

5
Path-planning A brief history
  • 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

A 2-approximation half-as-good as OPT
value ? ½ OPT
Find a solution in polynomial-time with value ?
OPT (a ? 1)
1/?
  • cutting plane methods ? branch and bound
  • simulated annealing ? genetic
    algorithms
  • Focus mostly on exploration, position
    estimation
  • Some poly-time solvable problems studied e.g.
    shortest paths
  • Linear and Dynamic programming techniques

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

This talk
? ? ?
3 3 log n 3 log2 n
Use structural properties Dynamic
Programming FOCS03 STOC04
Use LP-rounding
1.5 Christofides 76 2 BRV99 AK00
CGRT03 Garg05 2?
1.5 Christofides 76 2 BRV99 AK00
CGRT03 Garg05 ?
2 Goemans Williamson 92 ?
2 Goemans Williamson 92 6.75?
9
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
10
Back to Orienteering why LPs dont work
  • Naïve attempt use (a variant of) k-TSP
  • If there exists a path length , reward ?
  • 2-approx to k-TSP gives length ? , reward ?

½D
1/?
OPT
D
OPT
1/?
11
Back to Orienteering why LPs dont 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
12
Formalizing the slack
  • Excess of path length of path length of
    shortest path
  • The Min-Excess problem
  • Given a map G, start s, end t, reward quota k
  • Find path with reward k that minimizes excess

t
dist(s,t)
1½ hrs.
length
2 hrs.
OPT
excess
l
length shortest distance
½ hr.
Min-Excess approx
2½ hrs.
k-TSP approx
4 hrs.
13
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
14
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 gt shortest-len
  • 2-approx to length gives 3-approx to excess
  • Solution use k-TSP
  • The harder case excess ltlt 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!

15
Approximating the excess combining them
  • The large excess case
  • excess gt shortest-len
  • Use k-TSP
  • The small excess case
  • excess 0
  • (OPT is monotone)
  • Use Dynamic Programming

Gives a (2?)-approximation for Min-Excess
FOCS03
Patch segments using dynamic programming
What about the intermediate case?
OPT
wiggly
wiggly
monotone
monotone
monotone
In order of increasing distance from start
16
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) l(u,v)d(u,v)
OPT
v2
v1
ALG
Excess of ALG ? ?1?2?3 Reward of ALG ?
reward of OPT
17
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

18
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

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

20
A pictorial representation of OPT
Good rectangle
Deadline
Can be approximated via Orienteering
Time
21
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

22
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
23
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
24
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

25
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 gt 0, get O(1/k) fraction of reward
  • exceed deadlines by a (12-k) factor
  • ? O(log Dmax)-approximation

26
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

27
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

28
Questions?
Write a Comment
User Comments (0)