Potential Field Path Planning
Reference:
Principles of Robot Motion
H. Choset et.al.
Mit Press
Also: Siegwart text, section 6.3.2
Potential Field Path Planning
• Simple idea: Have robot “attracted” to the goal and
“repelled” from the obstacles
• Think of robot as a positively charged particle moving
towards negatively charged goal – attractive force
• Obstacles have same charge as robot – repelling force
• States far away from goal have large potential energy,
goal state has zero potential energy
• Path of robot is from state of high energy to low (zero)
energy at the goal
• Think of the planning space as an elevated surface, and
the robot is a marble rolling “downhill” towards the goal
Potential Field Path Planning
Repulsive force
++++++
start + + goal
+
+ + -
+ +
+ ++++++ +
+ +
Attractive force
Potential Field Path Planning
• A potential function is a function that may
be viewed as energy
• the gradient of the energy is force
• Potential function guides the robot as if it
were a particle moving in a gradient field.
• Analogy: robot is positively charged
particle, moving towards negative charge
goal
• Obstacles have “repulsive” positive charge
• Potential functions can be viewed as a
landscape
• Robot moves from high-value to low-value
Using a “downhill” path (i.e negative of the
gradient).
• This is known as gradient descent –follow
a functional surface until you reach its
minimum
Potential Field
start
goal
• Attractive Potential Function is distance from goal
• High energy away from goal, Zero at goal
• Path is negative gradient, largest change in energy
Computing Attractive Potential
• With point robot, we can use distance as a measure, and
velocity becomes the gradient
• Simplest: scaled distance to goal. Gradient becomes a
constant, undefined at goal
• Better: Use a continuously differentiable function – e.g.
Quadratic Function of distance:
Computing Repulsive Potential
• Strength of repulsive force should increase as
we near the obstacle
• Compute potential in terms of distance to closest
obstacle
• Multiple obstacles: compute repulsive potential
over all obstacles
Total Potential Function
U (q ) = U att (q ) + U rep (q )
F (q ) = −∇U (q )
+ =
16-735, Howie Choset, with slides from Ji Yeong Lee, G.D. Hager and Z. Dodds
Potential Field
start obstacles
goal
• Obstacles create high energy barriers
• Gradient descent follows energy minimization path to goal
Gradient Descent
Gradient Descent:
– q(0)=qstart
– i=0
– while || ∇ U(q(i)) || > ε do
• q(i+1) = q(i) - α(i) ∇ U(q(i))
• i=i+1
16-735, Howie Choset, with slides from Ji Yeong Lee, G.D. Hager and Z. Dodds
Potential Field Limitations
start goal
Local minimum:
attractive force (goal) = repulsive force (obstacles)
Potential Field Methods
start
goal
Local minimum: attractive force = repulsive force
Solution: Take a random walk – perturb out of minima
Need to remember where you have been!
Online Distance Computation
Potential Fields Summary
• More than just a path planner: Provides simple control
function to move robot: gradient descent
• Allows robot to move from wherever it finds itself
• Can get trapped in local minima
• Can be used as online, local method:
– As robot encounters new obstacles via sensors, it can
compute the Potential Function online
– Laser/sonar scans give online Robot
distance to obstacles