Prepared By Xiaoshan Pan

12
Interactive Navigation in Complex Environments Using Path Planning Salomon et al.(2003) University of North Carolina Prepared By Xiaoshan Pa

description

Interactive Navigation in Complex Environments Using Path Planning Salomon et al.(2003) University of North Carolina. Prepared By Xiaoshan Pan. Content. 1 st section (3/4) Pre-compute a global roadmap Graph search (ini goal) in real-time Display motion 2 nd section (1/4) - PowerPoint PPT Presentation

Transcript of Prepared By Xiaoshan Pan

Page 1: Prepared By Xiaoshan Pan

Interactive Navigation in Complex Environments Using Path Planning

Salomon et al.(2003) University of North Carolina

Prepared By Xiaoshan Pan

Page 2: Prepared By Xiaoshan Pan

Content

1st section (3/4)– Pre-compute a global roadmap– Graph search (inigoal) in real-time– Display motion

2nd section (1/4)– User-steered exploration

Page 3: Prepared By Xiaoshan Pan

Basic Idea

Preprocessing phase

Runtime algorithm

Page 4: Prepared By Xiaoshan Pan

Precomputation: Sampling

Gravity

•Shooting rays

Random Rays

Page 5: Prepared By Xiaoshan Pan

Precomputation: Sampling

Gravity

•Shooting rays

ө ө

•Walkable surface

•Construct roadmap

-Max # of samples

-Min dist between samples

Page 6: Prepared By Xiaoshan Pan

•Connectors - Rc > Rg

Rc

Guards & Connectors (C-space)

•Reachability (vs. visibility)

Rg

•Guards - guards can’t see each other

Page 7: Prepared By Xiaoshan Pan

- yes reject c, goto while

c

- no! c becomes a Guard, connect to connectors (if any), goto while

Algorithm (build_roadmap)

While (map_coverage < P_cover), do // map_coverage = guards_reachable/entire_space

Return roadmap

Connector

GuardGuard

Connector

GuardGuard

Connector

GuardGuard

2. Can c be a Connector? See any Guards in Rc? - Yes then connect, goto while (else goto 3)

1. Pick a random config. c

c

3. Can c be a Guard? See any Guards in Rg?

c

Be a Connector Be a Guard Be rejected

Page 8: Prepared By Xiaoshan Pan

Search for a path: init goal Initial position (Rc radius)

ini

goal

Goal position Graph search…

Page 9: Prepared By Xiaoshan Pan

Display Motion: Smooth Path Walk along the path

ini

goal

Smoothing path (cutting redundant corners while walking)

Page 10: Prepared By Xiaoshan Pan

User-steered exploration (local walk)

User has control– A directional vector

Robot always stays on a walkable surface

– In free space– Surface within a tolerance

angle– Steps ok, cliffs NO!!

Robot do not penetrate objects

Page 11: Prepared By Xiaoshan Pan

Local Walk Algorithm

Follow the directional vector, if- Goal is reached, stop

- Collision, project along obstacle edge

- New surface, step up/down (not a cliff!)- Edge, step up/down or project along the edge

Page 12: Prepared By Xiaoshan Pan

Discussion

Can deal with complex environment– Because it pre-computes a global roadmap.

Still…– Pre-computation could be time consuming.– Walking along line segments does not look

natural. Overall assessment: Pretty good