Title: Dr. John (Jizhong) Xiao
1A Taste of Localization Problem Course Summary
Introduction to ROBOTICS
- Dr. John (Jizhong) Xiao
- Department of Electrical Engineering
- City College of New York
- jxiao_at_ccny.cuny.edu
2Topics
- Brief Review (Robot Mapping)
- A Taste of Localization Problem
- Course Summary
3Mapping/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) - It is an on-going research
- It is the most difficult task for robot
- Even human will get lost in a building!
4Review Use Sonar to Create Map
What should we conclude if this sonar reads 10
feet?
there isnt something here
there is something somewhere around here
10 feet
Local Map
unoccupied
no information
occupied
5What is it a map of?
Several answers to this question have been tried
cell (x,y) is unoccupied
cell (x,y) is occupied
oxy
oxy
Its a map of occupied cells.
pre 83
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.
6What is it a map of ?
Several answers to this question have been tried
cell (x,y) is unoccupied
cell (x,y) is occupied
oxy
oxy
Its a map of occupied cells. Its a map of
probabilities p( o S1..i ) p( o
S1..i )
pre 83
The certainty that a cell is occupied, given the
sensor readings S1, S2, , Si
83 - 88
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.
Its a map of odds.
probabilities
evidence log2(odds)
p( o S1..i )
odds( o S1..i )
The odds that a cell is occupied, given the
sensor readings S1, S2, , Si
p( o S1..i )
7Combining Evidence
- The key to making accurate maps is combining
lots of data.
8Combining Evidence
- The key to making accurate maps is combining
lots of data.
p( o S2 ? S1 )
defn of odds
odds( o S2 ? S1)
p( o S2 ? S1 )
p( S2 ? S1 o ) p(o)
.
Bayes rule ()
p( S2 ? S1 o ) p(o)
p( S2 o ) p( S1 o ) p(o)
conditional independence of S1 and S2
.
p( S2 o ) p( S1 o ) p(o)
p( S2 o ) p( o S1 )
.
Bayes rule ()
p( S2 o ) p( o S1 )
previous odds
precomputed values
the sensor model
Update step multiplying the previous odds by a
precomputed weight.
9Mapping 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 free space
likely obstacle
lighter areas lower evidence of obstacles
being present
not sure
darker areas higher evidence of obstacles being
present
10Mobot System Overview
11Content
- Brief Review (Robot Mapping)
- A Taste of Localization Problem
- Course Summary
12Whats the problem?
- WHERE AM I?
- But what does this mean, really?
- Reference frame is important
- Local/Relative Where am I vs. where I was?
- Global/Absolute Where am I relative to the world
frame? - Location can be specified in two ways
- Geometric Distances and angles
- Topological Connections among landmarks
13Localization Absolute
- Proximity-To-Reference
- Landmarks/Beacons
- Angle-To-Reference
- Visual manual triangulation from physical points
- Distance-From-Reference
- Time of Flight
- RF GPS
- Acoustic
- Signal Fading
- EM Bird/3Space Tracker
- RF
- Acoustic
14Triangulation
Land
Landmarks
Works great -- as long as there are reference
points!
Lines of Sight
Unique Target
Sea
15Compass Triangulation
cutting-edge 12th century technology
Land
Landmarks
Lines of Sight
North
Unique Target
Sea
16Localization Relative
- If you know your speed and direction, you can
calculate where you are relative to where you
were (integrate). - Speed and direction might, themselves, be
absolute (compass, speedometer), or integrated
(gyroscope, Accelerometer) - Relative measurements are usually more accurate
in the short term -- but suffer from accumulated
error in the long term - Most robotics work seems to focus on this.
17Localization Methods
- Markov Localization
- Represent the robots 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)
- .
18Environment Representation
- Environment Representation
- Continuos Metric x,y,q
- Discrete Metric metric grid
- Discrete Topological topological grid
Continuous metric
Real environment
Discrete Topological
Metric grid
19Environment Representation
- Continuous Metric, (x,y,q)
- Topological (landmark-based, state space
organized according to the topological structure
of the environment) - Grid-Based (the world is divided in cells of
fixed size resolution and precision of state
estimation are fixed beforehand) - The latter suffers from computational overhead
20Probability Review
- Discrete Random Variables
- X denotes a random variable.
- X can take on a countable number of values in
x1, x2, , xn. - P(Xxi), or P(xi), is the probability that the
random variable X takes on value xi. - P( ) is called probability mass function.
- E.g.
.
21Probability Review
- Continuous Random Variables
- X takes on values in the continuum.
- p(Xx), or p(x), is a probability density
function. - E.g.
p(x)
x
22Probability Review
- Joint and Conditional Probability
- P(Xx and Yy) P(x,y)
- If X and Y are independent then P(x,y) P(x)
P(y) - P(x y) is the probability of x given y P(x
y) P(x,y) / P(y) P(x,y) P(x y) P(y) - If X and Y are independent then P(x y) P(x)
23Law of Total Probability, Marginals
Discrete case
Continuous case
24Probability Review
25Conditional Independence
26Bayes Formula
If y is a new sensor reading
Prior probability distribution
?
Posterior probability distribution
?
Generative model, characteristics of the sensor
?
?
Does not depend on x
27Bayes Rule with Background Knowledge
28Markov Localization
- What is Markov Localization ?
- Special case of probabilistic state estimation
applied to mobile robot localization - Initial Hypothesis
- Static Environment
- Markov assumption
- The robots location is the only state in the
environment which systematically affects sensor
readings - Further Hypothesis
- Dynamic Environment
29Markov Localization
- Applying probability theory to robot localization
- Markov localization uses an explicit, discrete
representation for the probability of all
position in the state space. - This is usually done by representing the
environment by a grid or a topological graph with
a finite number of possible states (positions). - During each update, the probability for each
state (element) of the entire space is updated.
30Markov Localization
- Instead of maintaining a single hypothesis as to
where the robot is, Markov localization maintains
a probability distribution over the space of all
such hypothesis - Uses a fine-grained and metric discretization of
the state space
31Example
- Assume the robot position is one- dimensional
The robot is placed somewhere in the environment
but it is not told its location
The robot queries its sensors and finds out it is
next to a door
32Example
The robot moves one meter forward. To account for
inherent noise in robot motion the new belief is
smoother
The robot queries its sensors and again it finds
itself next to a door
33Basic Notation
Bel(Ltl ) Is the probability (density) that the
robot assigns to the possibility that its
location at time t is l
The belief is updated in response to two
different types of events sensor readings,
odometry data
34Notation
35Markov assumption(or static world assumption)
36Markov Localization
37Update Phase
a
b
c
38Update Phase
39Recursive Bayesian Updating
Markov assumption zn is independent of
z1,...,zn-1 if we know x.
40Example Closing the door
41Example Second Measurement
- P(z2open) 0.5 P(z2?open) 0.6
- P(openz1)2/3
- z2 lowers the probability that the door is open.
42Action Prediction Phase
- Often the world is dynamic since
- actions carried out by the robot,
- actions carried out by other agents,
- or just the time passing by
- change the world.
- How can we incorporate such actions?
43Modeling Actions
- To incorporate the outcome of an action u into
the current belief, we use the conditional pdf - P(xu,x)
- This term specifies the pdf that executing u
changes the state from x to x.
44State Transitions
- P(xu,x) for u close door
- If the door is open, the action close door
succeeds in 90 of all cases.
45Integrating the Outcome of Actions
Continuous case Discrete case
46Example The Resulting Belief
47Bayes Filters Framework
- Given
- Stream of observations z and action data u
- Sensor model P(zx).
- Action model P(xu,x).
- Prior probability of the system state P(x).
- Wanted
- Estimate of the state X of a dynamical system.
- The posterior of the state is also called Belief
48Markov Assumption
Measurement probability
?
State transition probability
?
- Markov Assumption
- past and future data are independent if one knows
the current state
- Underlying Assumptions
- Static world, Independent noise
- Perfect model, no approximation errors
49Bayes Filters
z observation u action x state
50Summary
51Content
- Brief Review (Robot Mapping)
- A Taste of Localization Problem
- Course Summary
52Mobile Robot
53Mobile Robot Locomotion
Locomotion the process of causing a robot to move
Swedish Wheel
54Differential Drive
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.,
55Differential Drive
R Radius of rotation
- Straight motion
- R Infinity VR VL
-
- Rotational motion
- R 0 VR -VL
56Tricycle
- Steering and power are provided through the front
wheel - control variables
- angular velocity of steering wheel ws(t)
- steering direction a(t)
d distance from the front wheel to the rear axle
57Tricycle
Kinematics model in the world frame ---Posture
kinematics model
58Synchronous 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)
59Ackerman Steering (Car Drive)
- The Ackerman Steering equation
-
60Car-like Robot
Driving type Rear wheel drive, front wheel
steering
Rear wheel drive car model
forward velocity of the rear wheels
angular velocity of the steering wheels
non-holonomic constraint
l length between the front and rear wheels
61Robot 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
62Gas Sensor
Gyro
Accelerometer
Metal Detector
Pendulum Resistive Tilt Sensors
Piezo Bend Sensor
Gieger-Muller Radiation Sensor
Pyroelectric Detector
UV Detector
Resistive Bend Sensors
CDS Cell Resistive Light Sensor
Digital Infrared Ranging
Pressure Switch
Miniature Polaroid Sensor
Limit Switch
Touch Switch
Mechanical Tilt Sensors
IR Sensor w/lens
IR Pin Diode
Thyristor
Magnetic Sensor
Polaroid Sensor Board
Hall Effect Magnetic Field Sensors
Magnetic Reed Switch
IR Reflection Sensor
IR Amplifier Sensor
IRDA Transceiver
IR Modulator Receiver
Radio Shack Remote Receiver
Solar Cell
Lite-On IR Remote Receiver
Compass
Compass
Piezo Ultrasonic Transducers
63Sensors 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,
64Motion Planning
Path Planning Find a path connecting an initial
configuration to goal configuration without
collision with obstacles
- Configuration Space
- Motion Planning Methods
- Roadmap Approaches
- Cell Decomposition
- Potential Fields
- Bug Algorithms
65Motion Planning
- Motion Planning Methodololgies
- Roadmap
- Cell Decomposition
- Potential Field
- 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
Global methods
Local methods
66Full-knowledge motion planning
Cell decompositions
Roadmaps
visibility graph
exact free space represented via convex polygons
voronoi diagram
approximate free space represented via a quadtree
67Potential field Method
- Usually assumes some knowledge at the global
level
The goal is known the obstacles sensed
Each contributes forces, and the robot follows
the resulting gradient.
68Thank you!
This Thurday Final Exam Time Dec. 13,
630pm-830pm, Place SH-378 Coverage Mobile
Robot Close-book with 2 pages cheat sheet, but Do
Not Cheat