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

Upload: liv

Post on 23-Jan-2016

21 views

Category:

Documents


0 download

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

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