ppt format

advertisement
Advanced Mobile Robotics
Syllabus/Introduction/Review
Prof. Jizhong Xiao
Department of Electrical Engineering
CUNY City College
jxiao@ccny.cuny.edu
City College of New York
1
Outline
• Syllabus
–
–
–
–
–
Course Description
Prerequisite, Expected Outcomes
Primary Topics
Textbook and references
Grading, Office hours and contact
• How to …
– How to read a research paper
– How to write a reading report
• G5501 Review
– What is a Robot?
– Why use Robots?
– Mobile Robotics
City College of New York
2
Syllabus
Course Description
• This course is an in depth study of state-of-theart technologies and methods of mobile robotics.
• The course consists of two components: lectures
on theory, and course projects.
• Lectures will draw from textbooks and current
research literature with several reading
discussion classes.
• In project component of this class, students are
required to conduct simulation study to
implement, evaluate SLAM algorithms.
City College of New York
3
Syllabus
Primary Topics
• Mobile Robotics Review
– Locomotion/Motion Planning/Mapping
– Odometry errors
• Probabilistic Robotics
– Mathematic Background, Bayes Filters
• Kalman Filters (KF, EKF, UKF)
• Particle Filters
• SLAM (simultaneous localization and mapping)
• Data Association Problems
City College of New York
4
Syllabus
Textbooks:
• Probabilistic ROBOTICS, Sebastian Thrun, Wolfram Burgard, Dieter
Fox, The MIT Press, 2005, ISBN 0-262-20162-3.
Available at CCNY Book Store
Reference Material:
• Introduction to AI Robotics, Robin R. Murphy, The MIT Press, 2000,
ISBN 0-262-13383-0.
• Introduction to Autonomous Mobile Robots, Roland Siegwart, Illah
R. Nourbakhsh, The MIT Press, 2004, ISBN 0-262-19502-X
• Computational Principles of Mobile Robotics, Gregory Dudek,
Michael Jenkin, Cambridge University Press, 2000, ISBN 0-52156876-5
• Papers from research literature
City College of New York
5
Syllabus
• Contact Information
– Office: T-534, Tel: 212-650-7268
– E-mail: jxiao@ccny.cuny.edu
– Website: http://robotics.ccny.cuny.edu/blog
– Office Hours:
• Mon: 5:00~6:00pm, Friday: 3:00~5:00pm
• Expected outcomes:
– Knowledge
– Abilities
• Be able to read technical papers
• Be able to write technical papers
• Be able to conduct independent research
City College of New York
6
• How to …
– How to read a research paper
• Conference papers (ICRA, IROS)
• Journal papers
– IEEE Transactions on Robotics
– Autonomous Robots
– International Journal of Robotics Research
CCNY resource:
http://www.ccny.cuny.edu/library/Menu.html
IEEE Xplorer
– How to write a reading report
City College of New York
7
G5501 Course Review
City College of New York
8
Mobile Robotics
Locomotion/Motion Planning/Mapping
Prof. Jizhong Xiao
Department of Electrical Engineering
CUNY City College
jxiao@ccny.cuny.edu
City College of New York
9
Contents
• Review
• Classification of wheels
– Fixed wheel, Centered orientable wheel, Off-centered
orientable wheel, Swedish wheel
• Mobile Robot Locomotion
– Differential Drive, Tricycle, Synchronous Drive,
Omni-directional, Ackerman Steering
• Motion Planning Methods
– Roadmap Approaches (Visibility graphs, Voronoi
diagram)
– Cell Decomposition (Trapezoidal Decomposition,
Quadtree Decomposition)
– Potential Fields
• Mapping and Localization
City College of New York
10
Review
• What are Robots?
– Machines with sensing, intelligence and mobility (NSF)
• To qualify as a robot, a machine must be able to:
1) Sensing and perception: get information from its surroundings
2) Carry out different tasks: Locomotion or manipulation, do
something physical–such as move or manipulate objects
3) Re-programmable: can do different things
4) Function autonomously and/or interact with human beings
• Why use Robots?
– Perform 4A tasks in 4D environments
4A: Automation, Augmentation, Assistance, Autonomous
4D: Dangerous, Dirty, Dull, Difficult
City College of New York
11
Review
z
• Robot Manipulator
– Kinematics
– Dynamics
– Control
z
z
y
y
x
z
x
y
x
y
x
• Mobile Robot
–
–
–
–
Kinematics/Control
Sensing and Sensors
Motion planning
Mapping/Localization
City College of New York
12
Mobile Robot Examples
ActivMedia Pioneer II
Sojourner Rover
NASA and JPL, Mars exploration
City College of New York
13
Wheeled Mobile Robots
• Locomotion — the process of causing an robot to
move.
– In order to produce motion, forces must be applied to the robot
– Motor output, payload
• Kinematics – study of the mathematics of motion
without considering the forces that affect the motion.
– Deals with the geometric relationships that govern the system
– Deals with the relationship between control parameters and the
behavior of a system.
• Dynamics – study of motion in which these forces are
modeled
– Deals with the relationship between force and motions.
City College of New York
14
Notation
Posture: position(x, y) and
orientation 
City College of New York
15
Wheels
Rolling motion
Lateral slip
City College of New York
16
Wheel Types
Centered orientable wheel
Fixed wheel
Off-centered orientable wheel
(Castor wheel)
Swedish wheel:omnidirectional
property
City College of New York
17
Mobile Robot Locomotion
Locomotion: the process of causing a robot to move
 Differential Drive
 Tricycle
R
 Synchronous Drive
 Ackerman Steering
City College of New York
Swedish Wheel
 Omni-directional
18
Differential Drive

• Posture of the robot
• Control input
(x,y) : Position of the robot
: Orientation of the robot
City College of New York
v : Linear velocity of the robot
w : Angular velocity of the robot
(notice: not for each wheel)
19
Differential Drive
VR (t ) – linear velocity of right wheel
VL (t ) – linear velocity of left wheel
r – nominal radius of each wheel
R – instantaneous curvature radius (ICR) of the robot
trajectory (distance from ICC to the midpoint between the
two wheels).
Property: At each time instant, the
left and right wheels must follow a
trajectory that moves around the
ICC at the same angular rate , i.e.,
L
L
 ( R  )  VR
 ( R  )  VL
2
2
City College of New York
20
Differential Drive
Property: At each time instant, the left and right wheels must
follow a trajectory that moves around the ICR at the same
angular rate , i.e.,
L
L
 ( R  )  VR
 ( R  )  VL
2
2
• Kinematic equation

90  
• Nonholonomic Constraint
 x 
sin   cos    x sin   y cos  0
 y 
Physical Meaning?
City College of New York
21
Non-holonomic constraint
A non-holonomic constraint is a constraint on the
feasible velocities of a body
So what does that mean?
Your robot can move in some directions (forward
and backward), but not others (sideward).
The robot can instantly
move forward and backward,
but can not move sideward
Parallel parking,
Series of maneuvers
City College of New York
22
Differential Drive
• Basic Motion Control
R : Radius of rotation
Instantaneous center
of curvature (ICC)
• Straight motion
R = Infinity
• Rotational motion
R= 0
City College of New York
VR = VL
VR = -VL
23
Differential Drive
• Velocity Profile
3
3
0
2
0
2
1
1
: Radius of rotation
: Length of path
: Angle of rotation
City College of New York
24
Tricycle
• Steering and power are provided through the front wheel
• control variables:
– angular velocity of steering wheel ws(t)
– steering direction α(t)
d: distance from the front wheel to the rear axle
City College of New York
25
Tricycle
Kinematics model in the world frame
---Posture kinematics model
City College of New York
26
Synchronous Drive
• All the wheels turn
in unison
– All wheels point in the
same direction and turn
at the same rate
– Two independent
motors, one rolls all
wheels forward, one
rotate them for turning
• Control variables
(independent)
– v(t), ω(t)
City College of New York
27
Omidirectional
Swedish Wheel
City College of New York
28
Ackerman Steering (Car Drive)
• The Ackerman Steering equation:
– :
d
cot  i  cot  o 
l
cos 
cot  
sin 
cot i  cot o
Rd /2 Rd /2


l
l
d

l
R
City College of New York
29
Ackerman Steering
Equivalent:
City College of New York
30
Car-like Robot
Driving type: Rear wheel drive, front wheel steering
  R  u1
l


 u1
tan
Rear wheel drive car model:
ICC
Y


R
x  u1 cos
y  u1 sin 

l
u1

  tan
l
  u2
X
non-holonomic constraint:
x sin   y cos  0
x, y
u1 : forward velocity of the rear wheels
u2 : angular velocity of the steering wheels
l : length between the front and rear wheels
City College of New York
31
Robot Sensing
• Collect information about the world
• Sensor - an electrical/mechanical/chemical device
that maps an environmental attribute to a
quantitative measurement
• Each sensor is based on a transduction
principle - conversion of energy from one form to
another
• Extend ranges and modalities of Human Sensing
City College of New York
32
Electromagnetic Spectrum
Visible Spectrum
700 nm
400 nm
City College of New York
33
Sensors Used in Robot
• Resistive sensors:
– bend sensors, potentiometer, resistive photocells, ...
• Tactile sensors: contact switch, bumpers…
• Infrared sensors
– Reflective, proximity, distance sensors…
• Ultrasonic Distance Sensor
• Motor Encoder
• Inertial Sensors (measure the second derivatives of position)
– Accelerometer, Gyroscopes,
• Orientation Sensors: Compass, Inclinometer
• Laser range sensors
• Vision, GPS, …
City College of New York
34
Mobot System Overview
high-level
Motion Planning: Given a known world and a
cooperative mechanism, how do I
get there from here ?
Localization: Given sensors and a map, where am I ?
Vision: If my sensors are eyes, what do I do?
Mapping: Given sensors, how do I create a useful map?
Abstraction level
Bug Algorithms: Given an unknowable world but a
known goal and local sensing, how
can I get there from here?
Kinematics: if I move this motor somehow, what
happens in other coordinate systems ?
Control (PID): what voltage should I set over time ?
low-level
Motor Modeling: what voltage should I set now ?
City College of New York
35
What is Motion Planning?
• Determining where to go without hit obstacles
City College of New York
36
References
• G. Dudek, M. Jenkin, Computational Principles of Mobile Robots, MIT
Press, 2000 (Chapter 5)
• J.C. Latombe, Robot Motion Planning, Kluwer Academic Publishers, 1991.
• Additional references
– Path Planning with A* algorithm
• S. Kambhampati, L. Davis, “Multiresolution Path Planning for
Mobile Robots”, IEEE Journal of Robotrics and Automation,Vol.
RA-2, No.3, 1986, pp.135-145.
– Potential Field
• O. Khatib, “Real-Time Obstacle Avoidance for Manipulators and
Mobile Robots”, Int. Journal of Robotics Research, 5(1), pp.90-98,
1986.
• P. Khosla, R. Volpe, “Superquadratic Artificial Potentials for
Obstacle Avoidance and Approach” Proc. Of ICRA, 1988, pp.11781784.
• B. Krogh, “A Generalized Potential Field Approach to Obstacle
Avoidance Control” SME Paper MS84-484.
City College of New York
37
Motion Planning
Motion Planning: Find a path connecting an
initial configuration to goal configuration
without collision with obstacles
Assuming the environment is known!
– Configuration Space
– Motion Planning Methods
• Roadmap Approaches
• Cell Decomposition
• Potential Fields
City College of New York
38
The World consists of...
• Obstacles
– Already occupied spaces of the world
– In other words, robots can’t go there
• Free Space
– Unoccupied space within the world
– Robots “might” be able to go here
– To determine where a robot can go, we need to
discuss what a Configuration Space is
City College of New York
39
Configuration Space
Notation:
A: single rigid object –(the robot)
W: Euclidean space where A moves; W  R2
or R3
B1,…Bm: fixed rigid obstacles distributed in W
• FW – world frame (fixed frame)
• FA – robot frame (moving frame
rigidly associated with the robot)
Configuration q of A is a specification
of the physical state (position and
orientation) of A w.r.t. a fixed
environmental frame FW.
Configuration Space is the space of all possible robot configurations.
City College of New York
40
Configuration Space
Configuration Space of A is the space (C )of all possible
configurations of A.
Point robot (free-flying, no constraints)
C
Cfree
qslug
Cobs
qrobot
For a point robot moving in 2-D plane, C-space is R 2
City College of New York
41
Configuration Space
C
y
Z
Cfree
qgoal
Cobs
qstart
x
For a point robot moving in 3-D, the C-space isR 3
What is the difference between Euclidean space and C-space?
City College of New York
42
Configuration Space
Y
A robot which can translate in the plane
C-space:
2-D (x, y)
X
Euclidean space:R 2
Y
A robot which can translate and rotate in the plane

C-space:3-D (x, y,  )
Y
X
City College of New York
x
43
Configuration Space
b
b
a
a
2R manipulator
Configuration space
City College of New York
44
topology
Configuration Space
360
qrobot
270
b
180
b
a
90
qslug
0
45
Two points in the robot’s workspace
a
90
135
180
Torus
(wraps horizontally and vertically)
City College of New York
45
Configuration Space
If the robot configuration is within the blue area, it will hit the obstacle
360
qrobot
270
b
180
b
a
90
qslug
0
An obstacle in the robot’s workspace
What is dimension of the C-space of puma
robot (6R)?
45
a
90
135
180
a “C-space” representation
Visualization of high dimension
C-space is difficult
City College of New York
46
Motion Planning Revisit
Find a collision free path from an initial
configuration to goal configuration
while taking into account the constrains
(geometric, physical, temporal)
C-space concept
provide a
generalized
framework to
study the motion
planning problem
A separate problem for each robot?
City College of New York
47
What if the robot is not a point?
The Pioneer-II robot should
probably not be modeled as a
point...
City College of New York
48
What if the robot is not a point?
Expand
obstacle(s)
Reduce
robot
not quite right ...
City College of New York
49
Obstacles Configuration Space
C-obstacle
Point robot
City College of New York
50
C-obstacle in 3-D
What would the configuration space of a 3DOF
rectangular robot (red) in this world look like?
(The obstacle is blue.)
180º
y
can we stay in 2d ?
3-D
x
City College of New York
0º
51
One slice
Taking one slice of the C-obstacle in which the
robot is rotated 45 degrees...
PR
R
y
45 degrees
P
x
City College of New York
How many slices does P R have?
52
2-D projection
y
x
why not keep it this simple?
City College of New York
53
Projection problems
qinit
qgoal
City College of New York
too conservative!
54
Motion Planning Methods
Roadmap approaches
• Visibility Graph
• Voronoi Diagram
Cell decomposition
• Trapezoidal decomposition
Full-knowledge
motion planning
• Quadtree decomposition
Potential Fields
City College of New York
55
Full-knowledge motion planning
Roadmaps
Cell decompositions
visibility graph
exact free space
represented via
convex polygons
voronoi diagram
approximate free
space represented
via a quadtree
City College of New York
56
Roadmap: Visibility Graphs
Visibility graphs: In a polygonal (or polyhedral) configuration space,
construct all of the line segments that connect vertices to one another (and that do
not intersect the obstacles themselves).
Formed by connecting all “visible” vertices, the start point and the end
point, to each other.
For two points to be “visible” no obstacle can exist between them
Paths exist on the perimeter of obstacles
From Cfree, a graph is defined
Converts the problem into graph search.
Dijkstra’s algorithm O(N^2)
N = the number of vertices in Cspace
City College of New York
57
Visibility graph drawbacks
Visibility graphs do not preserve their
optimality in higher dimensions:
shortest path
shortest path within the visibility graph
In addition, the paths they find are “semi-free,” i.e. in contact with obstacles.
No clearance
City College of New York
58
Roadmap: Voronoi diagrams
“official” Voronoi diagram
(line segments make up the
Voronoi diagram isolates a
set of points)
Property: maximizing the
clearance between the points
and obstacles.
Generalized Voronoi Graph (GVG):
locus of points equidistant from the closest two
or more obstacle boundaries, including the
workspace boundary.
City College of New York
59
Roadmap: Voronoi diagrams
• GVG is formed
by paths
equidistant
from the two
closest objects
• maximizing the
clearance
between the
obstacles.
• This generates a very safe roadmap which avoids
obstacles as much as possible
City College of New York
60
Voronoi Diagram: Metrics
• Many ways to measure distance; two are:
– L1 metric
• (x,y) : |x| + |y| = const
– L2 metric
• (x,y) : x2 +y2 = const
City College of New York
61
Voronoi Diagram (L1)
Note the
lack of
curved
edges
City College of New York
62
Voronoi Diagram (L2)
Note the
curved
edges
City College of New York
63
Motion Planning Methods
Roadmap approaches
• Visibility Graph
• Voronoi Diagram
Cell decomposition
• Exact Cell Decomposition (Trapezoidal)
• Approximate Cell Decomposition (Quadtree)
Potential Fields
Hybrid local/global
City College of New York
64
Exact Cell Decomposition
Trapezoidal Decomposition:
Decomposition of the free space
into trapezoidal & triangular cells
Connectivity graph representing the
adjacency relation between the cells
(Sweepline algorithm)
City College of New York
65
Exact Cell Decomposition
Trapezoidal Decomposition:
Search the graph for a path
(sequence of consecutive cells)
City College of New York
66
Exact Cell Decomposition
Trapezoidal Decomposition:
Transform the sequence of cells into a
free path (e.g., connecting the midpoints of the intersection of two
consecutive cells)
City College of New York
67
Optimality
Trapezoidal Decomposition:
15 cells
9 cells
Trapezoidal decomposition is exact
and complete, but not optimal
Obtaining the minimum number of convex
cells is NP-complete.
there may be more details in the world than the task needs to worry about...
City College of New York
68
Approximate Cell Decomposition
Quadtree Decomposition:
Quadtree:
recursively subdivides each mixed
obstacle/free (sub)region into four quarters...
City College of New York
69
further decomposing...
Quadtree Decomposition:
Quadtree:
recursively subdivides each mixed
obstacle/free (sub)region into four quarters...
City College of New York
70
further decomposing...
Quadtree Decomposition:
• The rectangle cell is recursively
decomposed into smaller rectangles
• At a certain level of resolution, only the
cells whose interiors lie entirely in the free
space are used
• A search in this graph yields a collision
free path
Again, use a graph-search algorithm to
find a path from the start to goal
Quadtree
is this a complete path-planning algorithm?
i.e., does it find a path when one exists ?
City College of New York
71
Motion Planning Methods
Roadmap approaches
Cell decomposition
• Exact Cell Decomposition (Trapezoidal)
• Approximate Cell Decomposition (Quadtree)
Potential Fields
Hybrid local/global
City College of New York
72
Potential Field Method
Potential Field (Working Principle)
– The goal location generates an attractive potential – pulling the robot
towards the goal
– The obstacles generate a repulsive potential – pushing the robot far away
from the obstacles
– The negative gradient of the total potential is treated as an artificial
force applied to the robot
-- Let the sum of the forces control the robot
C-obstacles
City College of New York
73
Potential Field Method
• Compute an attractive force toward the goal
C-obstacles
Attractive potential
City College of New York
74
Potential Field Method
• Compute a repulsive force away from obstacles
Repulsive Potential
 Create a potential barrier around the C-obstacle
region that cannot be traversed by the robot’s
configuration
 It is usually desirable that the repulsive potential
does not affect the motion of the robot when it is
sufficiently far away from C-obstacles
City College of New York
75
Potential Field Method
• Compute a repulsive force away from obstacles
• Repulsive Potential
City College of New York
76
Potential Field Method
• Sum of Potential
Attractive potential
Repulsive potential
C-obstacle
Sum of potentials
City College of New York
77
Potential Field Method
• After get total potential, generate force field
(negative gradient)
• Let the sum of the forces control the robot
Negative
gradient
Equipotential contours
Total potential
To a large extent, this is computable from sensor readings
City College of New York
78
Potential Field Method
Pros:
• Spatial paths are not preplanned and can be generated in real time
• Planning and control are merged into one function
• Smooth paths are generated
• Planning can be coupled directly to a control algorithm
Cons:
• Trapped in local minima in the potential field
• Because of this limitation, commonly used for local path planning
• Use random walk, backtracking, etc to escape the local minima
random walks are not perfect...
City College of New York
79
Motion Planning Summary
• Motion Planning Methodololgies
– Roadmap
– Cell Decomposition
– Potential Field
Global methods
Local methods
• Roadmap
– From Cfree a graph is defined (Roadmap)
– Ways to obtain the Roadmap
• Visibility graph
• Voronoi diagram
• Cell Decomposition
– The robot free space (Cfree) is decomposed into simple regions (cells)
– The path in between two poses of a cell can be easily generated
• Potential Field
– The robot is treated as a particle acting under the influence of a potential field U,
where:
• the attraction to the goal is modeled by an additive field
• obstacles are avoided by acting with a repulsive force that yields a negative field
City College of New York
80
Mapping/Localization
• Answering robotics’ big questions
– How to get a map of an environment with
imperfect sensors (Mapping)
– How a robot can tell where it is on a map
(localization)
– SLAM (Simultaneous Localization and
Mapping)
• It is an on-going research
• It is the most difficult task for robot
– Even human will get lost in a building!
City College of New York
81
Using sonar to create maps
What should we conclude if this sonar reads 10 feet?
there isn’t
something here
10 feet
there is
something
somewhere
around here
Local Map
unoccupied
or ...
no information
occupied
City College of New York
82
Using sonar to create maps
What should we conclude if this sonar reads 10 feet...
10 feet
10 feet
and how do we add the information that the next
sonar reading (as the robot moves) reads 10 feet, too?
City College of New York
83
Combining sensor readings
• The key to making accurate maps is combining lots of data.
• But combining these numbers means we have to know what they are !
What should our map contain ?
• small cells
• each represents a bit of
the robot’s environment
• larger values => obstacle
• smaller values => free
what is in each cell of this sonar model / map ?
City College of New York
84
What is it a map of?
Several answers to this question have been tried:
pre ‘83
It’s a map of occupied cells.
oxy
cell (x,y) is
occupied
oxy
cell (x,y) is
unoccupied
What information should this map contain,
given that it is created with sonar ?
Each cell is either occupied or unoccupied -- this
was the approach taken by the Stanford Cart.
City College of New York
85
What is it a map of ?
Several answers to this question have been tried:
cell (x,y) is
occupied
pre ‘83
It’s a map of occupied cells.
‘83 - ‘88
It’s a map of probabilities: p( o | S1..i )
oxy
p( o | S1..i )
It’s a map of odds.
oxy
cell (x,y) is
unoccupied
The certainty that a cell is occupied,
given the sensor readings S1, S2, …,
Si
The certainty that a cell is unoccupied,
given the sensor readings S1, S2, …, Si
The odds of an event are expressed relative to the
complement of that event.
evidence = log2(odds)
probabilities
The odds that a cell is occupied, given
the sensor readings S1, S2, …, Si
odds( o | S1..i ) =
City College of New York
p( o | S1..i )
p( o | S1..i )
86
An example map
units: feet
Evidence grid of a tree-lined outdoor path
lighter areas: lower odds of obstacles being present
darker areas: higher odds of obstacles being present
how to combine them?
City College of New York
87
Combining probabilities
How to combine two sets of probabilities into a single map ?
City College of New York
88
Conditional probability
Some intuition...
The probability of event o, given event S .
p( o | S ) =
p( S | o ) =
The probability that a certain cell o is occupied,
given that the robot sees the sensor reading S .
The probability of event S, given event o .
The probability that the robot sees the sensor
reading S , given that a certain cell o is occupied.
• What is really meant by conditional probability ?
p( o | S ) = p(S | o) ??
• How are these two probabilities related?
City College of New York
89
Bayes Rule
- Joint probabilities/Conditional probabilities
p( o  S ) = p( o | S ) p( S )
City College of New York
90
Bayes Rule
- Joint probabilities/Conditional probabilities
p( o  S ) = p( o | S ) p( S )
- Bayes rule relates conditional probabilities
p( o | S ) =
p( S | o ) p( o )
p( S )
City College of New York
Bayes rule
91
Bayes Rule
- Joint probabilities/Conditional probabilities
p( o  S ) = p( o | S ) p( S )
- Bayes rule relates conditional probabilities
p( o | S ) =
p( S | o ) p( o )
p( S )
Bayes rule
- So, what does this say about odds( o | S2  S1 ) ?
Can we update easily ?
City College of New York
92
Combining evidence
So, how do we combine evidence to create a map?
What we want -odds( o | S2  S1)
the new value of a cell in the
map after the sonar reading S2
What we know -the old value of a cell in the
map (before sonar reading S2)
odds( o | S1)
p( Si | o ) & p( Si | o )
the probabilities that a certain obstacle
causes the sonar reading Si
City College of New York
93
Combining evidence
odds( o | S2  S1) =
p( o | S2  S1 )
p( o | S2  S1 )
City College of New York
94
Combining evidence
odds( o | S2  S1) =
.
=
p( o | S2  S1 )
p( o | S2  S1 )
def’n of odds
p( S2  S1 | o ) p(o)
p( S2  S1 | o ) p(o)
City College of New York
95
Combining evidence
odds( o | S2  S1) =
p( o | S2  S1 )
p( o | S2  S1 )
.
=
p( S2  S1 | o ) p(o)
p( S2  S1 | o ) p(o)
.
=
p( S2 | o ) p( S1 | o ) p(o)
p( S2 | o ) p( S1 | o ) p(o)
City College of New York
def’n of odds
Bayes’ rule (+)
96
Combining evidence
odds( o | S2  S1) =
p( o | S2  S1 )
p( o | S2  S1 )
def’n of odds
.
=
p( S2  S1 | o ) p(o)
p( S2  S1 | o ) p(o)
.
=
p( S2 | o ) p( S1 | o ) p(o)
p( S2 | o ) p( S1 | o ) p(o)
conditional
independence
of S1 and S2
=
p( S2 | o ) p( o | S1 )
p( S2 | o ) p( o | S1 )
Bayes’ rule (+)
.
City College of New York
Bayes’ rule (+)
97
Combining evidence
odds( o | S2  S1) =
p( o | S2  S1 )
p( o | S2  S1 )
def’n of odds
.
=
p( S2  S1 | o ) p(o)
p( S2  S1 | o ) p(o)
.
=
p( S2 | o ) p( S1 | o ) p(o)
p( S2 | o ) p( S1 | o ) p(o)
conditional
independence
of S1 and S2
=
p( S2 | o ) p( o | S1 )
p( S2 | o ) p( o | S1 )
Bayes’ rule (+)
.
precomputed values
the sensor model
Bayes’ rule (+)
previous odds
Update step = multiplying the previous odds by a precomputed weight.
City College of New York
98
Mapping Using Evidence Grids
Evidence Grids...
represent space as a collection of cells, each with
the odds (or probability) that it contains an obstacle
evidence = log2(odds)
Lab environment
likely obstacle
not sure
likely free space
lighter areas: lower evidence of obstacles being present
darker areas: higher evidence of obstacles being present
City College of New York
99
Localization Methods
• Markov Localization:
– Represent the robot’s belief by a probability
distribution over possible positions and uses Bayes’
rule and convolution to update the belief whenever
the robot senses or moves
• Monte-Carlo methods
• Kalman Filtering
• SLAM (simultaneous localization and mapping)
• ….
City College of New York
100
Class Schedule
Homework 1 posted on the web.
City College of New York
101
Thank you!
City College of New York
102
Download