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 G
vis
( S ) (V ( S ), Evis )
be the visibility graph of S.
Visibility Graph
Let V(S) be the vertex of S
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
Visibility Graph
Let V(S) be the vertex of S
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
Visibility Graph
Let V(S) be the vertex of S
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
u sees v uv C free
Visibility Graph
Let V(S) be the vertex of S
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
u sees v uv C free ( R 2 | S )
Visibility Graph
Let V(S) be the vertex of S
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
u sees v uv C free ( R 2 | S )
Visibility Graph
Let V(S) be the vertex of S
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
u sees v uv C free ( R 2 | S )
Visibility Graph
Let V(S) be the vertex of S
Pgoal
Pstart
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
u sees v uv C free ( R 2 | S )
Visibility Graph
Let V(S) be the vertex of S
Pgoal
Pstart
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
V ( S ) V ( S ) {Pstart , Pgoal }
Visibility Graph
Let V(S) be the vertex of S
Pgoal
Pstart
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
V ( S ) V ( S ) {Pstart , Pgoal }
Visibility Graph
Let V(S) be the vertex of S
Pgoal
Pstart
Let G (S ) (V (S ), E ) be the visibility graph of S.
Where: E {uv |u, v V ( S ), u sees v}
vis
vis
vis
V ( S ) V ( S ) {Pstart , Pgoal }
Visibility Graph
Corollary: The shortest path between
P_start and P_goal corresponds to a
shortest path in G (S ) (V (S ), E )
vis
vis
Pgoal
Pstart
Finding the shortest path
We’ll use Dijkstra algorithm in order to
find the shortest path in G
For each uv E do w(uv ) d (u, v)
vis
DIJKSTRA(Gvis , w, Pstart , Pgoal )
return
Euc .
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
© Copyright 2026 Paperzz