On Delaying Collision Checking in PRM Planning

17
On Delaying Collision On Delaying Collision Checking in PRM Checking in PRM Planning Planning Gilardo Sánchez and Jean- Claude Latombe January 2002 Presented by Randall Schuh 2003 April 23

description

On Delaying Collision Checking in PRM Planning. Gilardo Sánchez and Jean-Claude Latombe January 2002. Presented by Randall Schuh 2003 April 23. Background. Most of a PRM planner’s time is spent checking collisions We can get better results by: Improving collision checking - PowerPoint PPT Presentation

Transcript of On Delaying Collision Checking in PRM Planning

On Delaying Collision On Delaying Collision Checking in PRM PlanningChecking in PRM Planning

Gilardo Sánchez and Jean-Claude Latombe

January 2002

Presented by Randall Schuh

2003 April 23

BackgroundBackground

Most of a PRM planner’s time is spent checking collisions

We can get better results by:– Improving collision checking– Designing smarter sampling strategies– Avoiding testing all connections between

milestones

SBL PlannerSBL Planner

Single-queryBi-directionalLazy collision-checking

Experimental FoundationsExperimental Foundations

Observations from Hsu’s planner led to SBL:

1. Most local paths are not on the final path

2. Collision-free tests are most expensive

3. Short connections between two milestones have high prior probabilities of being free

4. If a connection is colliding, it’s midpoint has high probability of being in collision

Short connections between two milestones Short connections between two milestones have high prior probabilities of being freehave high prior probabilities of being free

0.00

0.20

0.40

0.60

0.80

1.00

1.200.

02

0.06 0.1

0.14

0.18

0.22

0.26 0.3

0.34

0.38

0.42

0.46 0.5

0.54

0.58

0.62

0.66 0.7

Length of the segment

Rat

io o

f re

ject

ion

s /

tota

l

If a connection is colliding, it’s midpoint has high If a connection is colliding, it’s midpoint has high probability of being in collisionprobability of being in collision

0.00

0.10

0.20

0.30

0.40

0.50

0.60

0.70

0.80

0.90

1.000.

02

0.06

0.1

0.14

0.18

0.22

0.26

0.3

0.34

0.38

0.42

0.46

0.5

0.54

0.58

0.62

0.66

0.7

Length of the segment

Rat

io r

eje

cte

d m

idp

oin

ts /

tota

l

““Fat Obstacles”Fat Obstacles”

A short colliding segment with collision free endpoints is necessarily almost tangential to an obstacle region in C, an event that has small probability of happening.

Description of the SBL PlannerDescription of the SBL Planner

SBL Algorithm1. Install qinit and qgoal as the roots of Tinit and Tgoal

respectively

2. Repeat s times1. EXPAND

2. τ ← CONNECT

3. If τ ≠ nil then return τ

3. Return failure

EXPANDEXPAND

EXPAND Algorithm1. Pick T to be either Tinit or Tgoal, each with P=½

2. Pick a milestone m at random, with P π(m) ~ 1/η(m)

3. For i = 1,2,… until a new q been generated1. Pick a configuration q uniformly at random from

B(m, ρ/i)

2. If q is collision-free, then install it as a child of m in T

Diffusion with a GridDiffusion with a Grid

Without diffusion With diffusion

CONNECTCONNECT

CONNECT Algorithm1. m ← most recently created milestone

2. m’ ← closest milestone to m in the other tree

3. If d(m,m’) < ρ then1. Connect m and m’ by a bridge w

2. τ ← path connecting qinit and qgoal

3. Return TEST-PATH

4. Return nil

SBL ExampleSBL Example

qinit

qgoal

Nrobot = 5,000; Nobst = 83,000

Tav = 4.42 s

Nrobot = 3,000; Nobst = 50,000

Tav = 0.17 s

Some ExamplesSome Examples

Impact of Lazy Collision CheckingImpact of Lazy Collision Checking

Average performance with lazy collision checkingAverage performance with lazy collision checking

Average performance without lazy collision checking

Speed-ups ranging from 4 to 40

Example Running Milestones in Milestones Total Nr of Collision Checks Sampled Comput. Time for Std. DeviationTime(secs) Roadmap in Path Collision Checks on the Path Milestones Coll-Check (secs) for running time

1a 0.60 159 13 1483 342 245 0.58 0.381b 4.45 1609 39 11211 411 7832 4.21 2.481c 4.42 1405 24 7267 277 3769 4.17 1.861d 0.17 33 10 406 124 47 0.17 0.071e 6.99 4160 44 12228 447 6990 6.30 3.55

Example Running Milestones in Milestones Total Nr of Collision Checks Sampled Comput. Time for Std. DeviationTime(secs) Roadmap in Path Collision Checks on the Path Milestones Coll-Check (secs) for running time

1a 2.82 22 5 7425 173 83 2.81 3.01 1b 106.20 3388 32 300060 421 9504 105.56 59.30 1c 18.46 771 16 38975 219 3793 18.35 15.34 1d 1.03 29 9 2440 123 46 1.02 0.70 1e 293.77 6737 24 666084 300 11971 292.40 122.75

Some Examples 2Some Examples 2

Some Examples 3Some Examples 3

Obstacle Jumping ExampleObstacle Jumping Example

qinit

qgoal