CSE 597F Intelligent Robotics
Lecture Notes: Sept 16 & 21 |
Topics Covered
-
Motion Planning Methods
-
Cell Decomposition Methods
-
Potential Field Based Method
|
The goal of vertical decomposition
methods in robot navigation centers around partitioning Cfree
into a discrete number of cells. A connectivity graph can then be
formed linking these areas. Using this graph, a free path for
the robot's travels may then be found.
There are two main types of cell decomposition approaches:
-Creates a set of cells which completely covers Cfree
-can yield complicated cells with irregular boundaries
-can be difficult to compute efficient traversals through cells.
-Creates a set of cells which approximately covers Cfree.
-can yield simpler cells with regular boundaries
-easier to compute traversals, but information regarding terrain is incomplete.
Cfree is decomposed
into a discrete number of cells such that the union of cells exactly covers
the free C-Space. A connectivity graph may then be constructed which
connects the centroids of each adjacent cell. This graph may be weighted
to reflect the varying distances between each centroid.
-
Sweep Line Algorithm(for convex
polygonal obstacle spaces)
1) Sort Vertices of the Obstacle Space(CB) by x-coordinate.
2) 'sweep' a vertical line L from left to right, stopping at each
vertex V in CB.
3) Three cases are now possible at each stop or 'event':
1. One vertex edge is to the left, and one vertex edge is to the right
of L.
In this case end the current cell and begin a new cell.
2. Both vertex edges are to the right of the scan line.
In this case end the two current cells and begin a new cell.
3. Both vertex edges are to the left of the scan line.
In this case end the current cell and begin two new cells.
The goal of approximate decomposition
methods is to break Cfree into a set of connected cells which
describe the general characteristics of the cell's enclosed area. Exact methods
would tell you exactly where obstacle boundaries lie within each cell,
whereas approximate methods only tell you that an obstacle exists somewhere
in the cell. Generally, each cell C is then broken down further
into subcells which describe the general characteristics of the cell's
quadrants. One may continue to break the subcells down further until
the desired resolution is achieved.
Some Advantages of Approximate methods are:
| Potential Field Based Navigation: |
An alternative to the static and preplanned
Decomposition navigation methods, is a Potential Field Based approach.
Drawing from the field theory concept in physics, this method models obstacles
as emitting a repellant force and the goal point as emitting an attractive
force on our robot. Navigation is performed by
moving the robot so as to minimize its potential energy
in our field. The point of minimal potential will ideally be the
goal point. The benefits of this approach are:
-
Simple extendability to higher dimension workspaces.
-
Dynamic decisions about robot's path, which allow for motion
in changing environments.
A major drawback to this approach, however, is that:
-
Method is incomplete if local minima exist in the potential
function.
As the example below shows for the 1 dimensional case, a
traveling robot will become become stuck in a local potential minima on
its way to the Goal:
For this method to be effective
equations, attractive and repellant forces must have the following properties:
-
Attractive & repellant potential functions should be
differentiable across the workspace.
-
Attractive Force should increase as robot moves away from
goal.
-
Repulsive Force should decrease as the robot moves away from
obstacles.
Attractive Force
One possiblility
for the attractive force in 2 dimensions is a parabolic well of
the form:
Va=Ca[(x-xg)2
+ (y-yg)2]
where:
Ca = Attractive Force Constant
(xg,yg) = Goal Point
Repulsive Force
The
following piecewise equation is simple to evaluate and satisfies our criteria
for the
repulsive
force in 2 dimensions:
Vr=[1/d(x,y)
- 1/do]2 if
d(x,y) < do
0
if d(x,y) > do
where:
d(x,y) = Current distance to obstacle = sqrt(x2 + y2)
do=Maximum range of the repulsive force.
The robot's potential function at any
point (x,y) is then modeled by the equation:
V(x,y) = Va(x,y) + Vr(x,y)
where:
Va = Attractice Potential
Function
Vr = Repulsive Potential
Function
Using only our potential energy function
V(x), we can determine the path which our robot should take through Cfree
using the following algorithm.
1. Decide upon a quantum: e = Maximum distance
traveled in each step. Let k=1.
2. Find the gradient of the potential function = grad(V(x))
3. Let uk be the direction opposite of the
gradient vector. Note: uk between [0..2pi)
4. let new position (xk+1,yk+1)
= (xk+e*cos(uk),yk+e*sin(uk))
5. If (x,y) is within distance D of the goal, declare
success.
6. If Q iteration have passed declare failure(indicates
local minima is probably present)
7. Goto step 2.