Post on 22-Feb-2016
description
transcript
Motion Planning
Majd Srour
Definition Motion planning refers to the
computational process of moving from one place to another in the presence of obstacles.
Work space The physical space in which the
robot of finite-size. – Real world
Configuration Space (Only translation) The configuration space is a
transformation from the physical space in which the robot is of finite-size into another space in which the robot is treated as a point.
The configuration space is obtained by shrinking the robot to a point, while growing the obstacles by the size of the robot.
Work space vs Configuration space
Free Space The free space of a configuration
space simply consists of the areas not occupied by obstacles. Any configuration within this space is called a free configuration.
Free Path The free path between an initial
configuration and a goal configuration is the path which lies completely in free space and does not come into contact with any obstacles.
Motion Planning Problems (from easy to hard) :
Completely known static Obstacles Completely known dynamic
Obstacles Partially Known static Obstacles Partially Known dynamic Obstacles
Roadmap Approach Visibility Graph
Voronoi method
Cell Decomposition
Visibility Graph A visibility graph is a graph of
intervisible locations, typically for a set of points and obstacles in the Euclidean plane
Visibility Graph Given a set S of disjoint (open)
polygons..
Visibility Graph Let V(S) be the vertex of S
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
( ) ( ( ), )vis visG S V S E
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
freeuv Cu sees v
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
2( )|freeuv C Su sees v R
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
2( )|freeuv C Su sees v R
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
2( )|freeuv C Su sees v R
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
2( )|freeuv C Su sees v R
startPgoalP
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
( ) ) , }{( start goalV S V S PP
startPgoalP
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
( ) ) , }{( start goalV S V S PP
startPgoalP
Visibility Graph Let V(S) be the vertex of S
Let be the visibility graph of S.
Where:
( ) ( ( ), )vis visG S V S E
{ ( ), }| ,visE uv u v V S u sees v
( ) ) , }{( start goalV S V S PP
startPgoalP
Visibility Graph Corollary: The shortest path
between P_start and P_goal corresponds to a shortest path in ( ) ( ( ), )vis visG S V S E
startPgoalP
Finding the shortest path We’ll use Dijkstra algorithm in
order to find the shortest path in G For each return
.( ) ( , )vis Eucuv do w uv d u vE
( , , ),vis start goalDIJKSTRA G w PP
Dijkstra Assign to every node a distance value of infinity, and to
the first node 0 Mark all nodes as unvisited, set initial node as current For current node, consider all of its unvisited neighbors
and calculate their tentative distances When we are done considering all of the neighbors of
the current node, mark the current node as visited and remove it from the unvisited set. A visited node will never be checked again; its distance recorded now is final and minimal.
If the destination node has been marked visited then stop.
Set the unvisited node marked with the smallest tentative distance as the next "current node" and go back to step 3.
Example Find shortest path from a to z http://www.youtube.com/watch?
v=UG7VmPWkJmA