0% found this document useful (0 votes)
6 views

Lecture5 - Planning and Navigation

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Lecture5 - Planning and Navigation

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 63

ECE497: Introduction

to Mobile Robotics
Lecture 5
Dr. Carlotta A. Berry
Spring 06 - 07

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 1
Quote of the Week

“Making realistic robots is going to


polarize the market, if you will. You will
have some people who love it and some
people who will really be disturbed.”

David Hanson, CNN.com, 11/23/06

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 2
Planning and Navigation (6.1):
Where am I going? How do I get there?
 So far we have discussed the ?
elements of a mobile robot that
are critical to robust mobility
 kinematics of locomotion
 perception for determining the
robot’s environmental context
 localization with respect to the
map
 the robot’s cognitive level Localization "Position“ Cognition
Global Map
represents the purposeful
decision-making and execution Environment Model Path
that a system utilizes to achieve Local Map

its highest-order goals Real World Motion


Perception Environment Control
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 3
Planning and Navigation (6.1):
Where am I going? How do I get there?
 In mobile robotics, the specific aspect of cognition directly linked to robust
mobility is navigation competence
 given partial knowledge about is environment and a goal position or series of
positions
 navigation encompasses the ability of the robot to act based on its
knowledge and sensor values so as to reach its goal positions as
efficiently and as reliably as possible
 the key difference between various navigation architectures is the manner in
which they decompose the problem into smaller subunits
 there are 2 competences for mobile robot navigation:
 given a map and goal location, path planning involves identifying a
trajectory that will cause the robot to reach the goal location when
executed
 given real-time sensor readings, obstacle avoidance involves modulating
the trajectory of the robot in order to avoid collisions
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 4
Competencies for Navigation:
Planning and Reaction (6.2)
 The navigation task for a robot
 involves executing a course of action (plan) to reach its goal position
 during execution, the robot must react to unforeseen events (obstacles)
in such a ways to still reach the goal
 Cognition / Reasoning :
 is the ability to decide what actions are required to achieve a certain
goal in a given situation (belief state).
 decisions ranging from what path to take to what information in the
environment to use.
 Today’s industrial robots can operate without any cognition (reasoning)
because their environment is static and very structured.
 In mobile robotics, cognition and reasoning is primarily of geometric nature,
such as picking a safe path or determining where to go next.
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 5
Competencies for Navigation:
Planning and Reaction (6.2)
 The robot must incorporate new information gained during plan
execution
 The planner must also incorporate the new information as it is
received in order to correct a planned trajectory
 When a planner incorporates every new piece of information in real
time, instantly producing a new plan that reacts to the new
information and the concept of planning and reacting merge is
called integrated planning and execution
 Robot control can usually be decomposed in various behaviors or
functions
 e.g. wall following, localization, path generation or obstacle
avoidance.
 You can generally distinguish between (global) path planning and
(local) obstacle avoidance.
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 6
Competencies for Navigation:
Global Path Planning (6.2.1)
 The robot’s environment representation can range from a
continuous geometric description to a decomposition-
based geometric map or a topological map
 Assumption: there exists a good enough map of the
environment for navigation.
 Three general strategies for decomposition
 road map - identify a set of routes within the free space
 cell decomposition – discriminate between free and
occupied cells
 potential field – impose a mathematical function over
the space
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 7
Competencies for Navigation:
Global Path Planning (6.2.1)
 Road Map, Graph construction  Cell decomposition
 Identify a set of routes within  Discriminate between free
the free space and occupied cells
 Where to put the nodes?  Where to put the cell
 Topology-based: boundaries?
 at distinctive locations  Topology- and metric-based:

 Metric-based:  where features disappear

 where features disappear


or get visible
or get visible

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 8
Competencies for Navigation:
Road map path planning (6.2.1.1)
 Road maps capture the connectivity of the robot’s free space in a
network of 1D curves or lines, or road maps
 Path planning is reduced to connecting the initial and goals position
of the robot to the road network
 the road map is a decomposition of the robot’s configuration space
based on obstacle geometry
 visibility graph – roads come as close as possible to obstacles
and resulting paths are minimum-length solutions
 Voronoi diagram – roads stay as far away as possible from
obstacles

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 9
Full-knowledge motion planning
Roadmaps Cell decompositions
visibility
graph exact free
space

approximate
free space
Voronoi
diagram

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 10
Road map-based path planning

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 11
Roadmap-based path planning

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 12
Competencies for Navigation:
Visibility graph (6.2.1.1)
 the visibility graph consists of all
edges joining vertices that can see
each other
 objects in the environment are
polygons in either discrete or
continuous space  the length of the solution path
 the size of the representation and is optimal
the number of edges and nodes  sense of safety from obstacles
increase with the number of is sacrificed for this optimality
polygons  one solution is to grow
 paths take the robot as close as obstacles by the robot’s radius
possible to obstacles on the way to or modify the solution path
the goal ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 13
Visibility Graph Paths

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 14
Visibility Graph Paths

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 15
Visibility Graph Paths

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 16
Competencies for Navigation:
Voronoi diagram (6.2.1.1)
 a Voronoi diagram is a complete road
map method that tends to maximize
the distance between the robot and
obstacles
 paths on the Voronoi diagram are
usually far form optimal in the sense of  the robot maximizes the
the total path length readings of the local minima in
 one important weakness is in the case its sensor values
of limited range localization sensors.  this has been used to conduct
these sensors will be in danger of automatic mapping by finding
sensing its surroundings and moving on unknown Voronoi
 the Voronoi diagram has the edges and then constructing a
advantage in executability consistent Voronoi map of the
environment
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 17
Voronoi Diagram

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 18
Voronoi Diagram

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 19
Discretized Voronoi Diagram

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 20
Competencies for Navigation:
Cell decomposition path planning (6.2.1.2)
 Use cell decomposition to discriminate between geometric areas, or
cells that are free and those that are occupied by objects
 Divide space into simple, connected regions called cells
 Determine which open cells are adjacent and construct a connectivity
graph
 Find cells in which the initial and goal configuration (state) lie and
search for a path in the connectivity graph to join them.
 From the sequence of cells found with an appropriate search
algorithm, compute a path within each cell.
 e.g. passing through the midpoints of cell boundaries or by
sequence of wall following movements.

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 21
Competencies for Navigation:
Cell decomposition path planning (6.2.1.2)

 An important aspect of cell decomposition is


the placement of the boundaries between the
cells
 if the boundaries are placed as a function of
the structure of the environment then the
method is exact cell decomposition
 if the decomposition is an approximation of
the actual map, the system is an approximate
cell decomposition

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 22
Competencies for Navigation:
Exact cell decomposition (6.2.1.2)
 the boundaries of cells is based on
geometric criticality
 the cells are completely free or occupied
 what matters is the robot’s ability to
traverse from each free cell to adjacent
free cells
 efficient computation in that case of large,
sparse environment
 used rarely in mobile robot applications
due to complexities in implementation
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 23
Competencies for Navigation:
Adaptive cell decomposition (6.2.1.2)
 one of the most popular techniques for mobile
robot path planning
 cell size is not dependent upon objects in an
environment so narrow passageways may be
lost
 low computational complexity for path
planning
 the fundamental cost is memory because the
grid must be represented in entirety
 sparse environments contain few cells
consuming dramatically less memory

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 24
Competencies for Navigation:
Approximate cell decomposition (6.2.1.2)
 Wavefront expansion or grassfire is an efficient and simple to
implement technique for finding routes in fixed-size cell arrays
 employs wavefront expansion from the goal position outward, marking
each cell’s distance to the goal
 this continues until the wave reaches the initial position
 the planner can then estimate the robot’s distance to the goal as well
as recover a specific solution trajectory by linking together adjacent
cells that are always closer to the goal

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 25
Wavefront propagation

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 26
Competencies for Navigation:
Potential field path planning (6.2.1.3)
 Potential field path planning creates a field, or gradient, across the
robot’s map that directs the robot to the goal position from multiple
prior positions
 Robot is treated as a point under the influence of an artificial potential
field.
 Generated robot movement is similar to a ball rolling down the hill
 Goal generates attractive force
 Obstacles are repulsive forces
 the superposition of all forces is applied to the robot
 artificial potential field smoothly guides the robot toward the goal
while simultaneously avoiding obstacles

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 27
Competencies for Navigation:
Potential field path planning (6.2.1.3)
 The resulting potential field is not just for path
planning but also a control law for the robot
 assuming the robot can localize itself, it can
always determine the next required action
based on the field
 the potential field is 2D and as new obstacles
appear, the field is updated
 the repulsive potential generates a stronger
force when the robot is closer to the object
 under ideal conditions, the robot’s velocity
vector is proportional to the field force vector
 there is a local minima problem dependent
upon the obstacle shape and size

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 28
Competencies for Navigation:
Potential field path planning (6.2.1.3)

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 29
Competencies for Navigation:
Potential field path planning (6.2.1.3)

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 30
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 31
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 32
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 33
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 34
Counteracting fields
(environment boundary and obstacles)

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 35
Potential fields cannot handle
multiple goals

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 36
Competencies for Navigation:
Extended Potential field method (6.2.1.3)
 Additions to the basic potential field are:
 rotation potential field
 Task potential field
 task potential field
 considers the present robot
 Rotation potential field velocity
 force is a function of the distance  Filters out the obstacles
from the obstacle that should not influence
the robots movements,
 force is also a function
i.e. only the obstacles
of robots orientation to
in the sector Z in front
the obstacle
of the robot are
 reduces a gain factor when the considered
obstacle is parallel to the robot’s
 the sector Z id defined as the
direction of travel
space which the robot will
 enhanced wall following sweep during the next
movement
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 37
Competencies for Navigation:
Extended Potential field method (6.2.1.3)

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 38
Potential Field Path Planning:
Sysquake Demo

 Notes:
 Local minima problem exists
 problem is getting more complex if the robot is
not considered as a point mass
 If objects are convex there exists situations
where several minimal distances exist can
result in oscillations

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 39
Obstacle Avoidance (6.2.2):
Local Path Planning
 The goal of the obstacle avoidance algorithms is to avoid
collisions with obstacles
 local obstacle avoidance focuses on changing the robot’s
trajectory as informed by its sensor readings and its goal
position and relative location to the goal position
 It is usually based on local map
 Often implemented as a more or less independent task
 However, efficient obstacle avoidance
should be optimal with respect to
 the overall goal
 the actual speed and kinematics of the robot
 the on boards sensors
 the actual and future risk of collision

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 40
Obstacle Avoidance (6.2.2.1):
Bug algorithm
 simplest obstacle avoidance algorithm
 follow the contour of each obstacle in the robot’s way and
circumnavigate it
 Each encountered obstacle is once fully circled before it is left at the
point closest to the goal
 very inefficient but guarantees that the robot will reach any reachable
goal

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 41
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 42
Obstacle Avoidance (6.2.2.1):
Bug2 algorithm
 Follows the obstacle always on the  the Tangent Bug adds range
left or right side sensing and a local environmental
 Leaves the obstacle if the direct representation to termed the local
connection between start and goal tangent graph (LTG)
is crossed  LTG approaches globally optimal
 has significantly shorter total robot paths
travel

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 43
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 44
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 45
Obstacle Avoidance (6.2.2.2):
Vector field histogram (VFH)
 VFH uses potential fields and creates a
local map of the environment around the
robot
 it is an occupancy grid populated only by
relatively recent sensor range readings
 Environment represented in a grid (2 DOF)
 cell values equivalent to the probability
that there is an obstacle
 Reduction in different steps to a 1 DOF
histogram
 calculation of steering direction
 all openings for the robot to pass are
found
 the one with lowest cost function G is
selected

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 46
Obstacle Avoidance (6.2.2.2):
Vector field histogram (VFH)
 Notes:
 Limitation if narrow areas
(e.g. doors) have to be
passed
 Local minimum might not
be avoided
 Reaching of the goal can
not be guaranteed
 Dynamics of the robot not
really considered
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 47
Obstacle Avoidance (6.2.2.2):
Vector field histogram+ (VFH+)
 takes into account a simplified model
of the moving robot’s possible
trajectories based on its kinematic
limitations (dynamics)
 the robot is modeled to move in arcs
or straight lines
 an obstacle blocks all of the
allowable trajectories which pas
through the obstacle

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 48
Obstacle Avoidance (6.2.2.3):
The bubble band technique
 A bubble is defined as the maximum local subset of
the free space around a given configuration of the
robot which can be traveled in ay direction without
collision
 generated using the distance to the object and a
simplified model of the robot
 bubbles are used to form a band of bubbles which
connects the start point with the goal point
 requires a global map and global path planner
 accounts for the actual dimensions of the robot
 most valid when the environmental configuration
is well known ahead of time

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 49
Obstacle Avoidance (6.2.2.4):
Curvature velocity techniques (CVM)
 Adding physical constraints from the robot and the environment on
the velocity space (v, ) of the robot
 Assumption that robot is traveling on arcs (c= / v)
 There are acceleration and speed constraints
 Obstacle constraints: Obstacles are transformed in velocity space
 obstacles are approximated as circular objects
 Objective function to select the optimal speed
 also suffers from local minima since no a priori knowledge is used
by the system

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 50
Obstacle Avoidance (6.2.2.4):
Lane curvature method
 Improvement of basic CVM
 there was difficulty driving the robot intersections of corridors
Not only arcs are considered
 lanes are calculated trading off lane length and width to the
closest obstacles
 Lane with best properties is chosen using an objective function
 Note:
 Better performance to pass narrow areas (e.g. doors)
 Problem with local minima persists

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 51
Obstacle Avoidance (6.2.2.5):
Dynamic window approaches
 The kinematics of the robot is considered by searching a well chosen velocity space
 velocity space -> some sort of configuration space
 robot is assumed to move on arcs
 ensures that the robot comes to stop before hitting an obstacle
 objective function is chosen to select the optimal velocity
 given current robot speed, the algorithm selects a dynamic window of the velocity space
that can be reached within the next sample period, taking into account the acceleration
capabilities of the robot and the cycle time
 the dynamic window is reduced by keeping only those tuples that ensure that the vehicle
can come to a stop before hitting an obstacle
 the window is rectangular following from the approximation that the translation and
rotation are independent

 heading = measure of progress toward goal


 velocity = forward velocity of the robot
 dist = distance to the closestECE
obstacle in the trajectory
497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 52
Obstacle Avoidance (6.2.2.5):
Global Dynamic window approach
 adds global thinking to the algorithm
 adds wavefront propagation to the
objective function for the dynamic window
approach
 calculates the wavefront only on a
selected rectangular region which is
directed from the robot toward the goal
 the width of the region is enlarged and
recalculated if the goal cannot be reached
within the constraints of this chosen region
 updated from range measurements as the
robot moves in the environment

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 53
Obstacle Avoidance (6.2.2.6):
Schlegel approach
 Some sort of a variation of the dynamic window
approach
 approach considers the dynamics as well as
the actual shape of the robot
 for use with raw laser data and sensor fusion
using a Cartesian grid to represent obstacles
 uses a wavefront planner
 motion of circular arcs
 real time performance achieved
by use of precalculated table to find distance
to collision with obstacle
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 54
Obstacle Avoidance (6.2.7):
ASL approach
 Dynamic window approach with global path
planning
 Global path generated in advance
 local path planning performed by
wavefront
 resulting path converted to an elastic
band that does not take into account
kinematics
 Path adapted if obstacles are
encountered
 dynamic window considering also the
shape of the robot
 real-time because only max speed is
calculated
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 55
Navigation Architectures (6.3)
 given techniques for path planning, obstacle
avoidance, localization and perceptual
interpretation, how do we combine all these into
one complete robot system for real world
application?
 the study of navigation architectures is the study
of principled designs for the software modules
that constitute a mobile robot navigation system

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 56
Navigation Architectures (6.3)
 concrete advantages of a well-designed navigation
architecture:
 modularity for code reuse and sharing
 control localization
 an architecture can be characterized by its decomposition
of the robot’s software
 for navigation competence, temporal and control
decompositions are particularly relevant
 behaviors are used for implementing control
decomposition
ECE 497: Introduction to Mobile Robotics -
C.A. Berry Planning and Navigation 57
Navigation Architectures:
Techniques for decomposition (6.3.3)
 temporal decomposition
 distinguishes between real-time and non real-time
demands on mobile robot operation
 control decomposition
 identifies the way in which various control outputs
within the mobile robot architecture combine to yield the
robot’s physical actions

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 58
Navigation Architectures:
Generic temporal decomposition (6.3.3.1)
 the most real-time processes are shown at the bottom of the stack
 the highest category are processes with no real-time demands
off line planning
 sensor response time is the amount of time between the acquisition
of a sensor-based event and a corresponding change in the output
of the module strategic decisions

 sensor response time increases as one moves up the stack


 for the lowest-level, the sensor response time is limited by the raw tactical decisions
processor and sensor speed
 for the highest level, the sensor response can be limited by slow quasi real-time
deliberate decision making
 temporal horizon is the amount of look ahead used by a module
during the process of choosing an output hard real-time

 temporal memory is the amount of historical time span of sensor


input that is used by the module to determine the next output

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 59
Navigation Architectures:
Generic temporal decomposition (6.3.3.1)
 the spatial impact of layers increases dramatically as
one moves from low level to high level modules
 real time modules control wheel speed and
orientation, controlling spatially localized behavior
 high level strategic decision making have little or no
bearing on local position, but information global
positions far into the future
 low level modules tend to produce outputs directly
from immediate sensor inputs and are not context
sensitive
 high level modules exhibit very high context
specificity

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 60
Navigation Architectures:
Control decomposition (6.3.3.2)
 Control decomposition identifies the way in which each module’s
output contributes to the overall robot control outputs
 Pure serial decomposition
 advantages relating to predictability and verifiability

 Pure parallel decomposition


 control flow contains a combination step at which each point the result
of multiple modules may impact the robot in arbitrary ways

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 61
Navigation Architectures:
Parallel decomposition (6.3.3.2)
 The output of each component to inform the overall decision can be
switched parallel or mixed parallel
 both of these architectures are popular in the behavior-based
robotics community
 motor-schema architecture – behaviors map sensor value vectors to
motor value vectors
 behavior network – a behavior is chosen discretely by comparing and
updating activation levels for each behavior
 subsumption architecture – the active model is chosen via a
suppression mechanism rather than an activation level

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 62
Our basic architectural example
(6.3.4)

Position
Localization Position Cognition
Local Map
Local Map

Perception to

Feedback
Avoidance

Position
Obstacle

Path
Action
Environment Model
Local Map

Real World Motion


Perception Environment
Control

ECE 497: Introduction to Mobile Robotics -


C.A. Berry Planning and Navigation 63

You might also like