CS225B Robot Programming Laboratory

Download Report

Transcript CS225B Robot Programming Laboratory

Probabilistic Models of Sensing and Movement
Move to probability models of sensing and movement



Project 2 is about complex behavior using sensing
Sensor interpretation is difficult – simple interpretation in this section
Artifacts [goal-directed motion] and reactive behaviors
Lectures



Probabilistic sensor models
Probabilistic representation of uncertain movement
Particle filter implementation
Project



PF for motion model
Markov localization with PF
Stretch – feature-based localization
Slides thanks to Steffen Gutmann
7/21/2015
CS225B Kurt Konolige
Probabilistic Sensors Models
The central task is to determine P(z|x), i.e., the probability of a measurement z
given that the robot is at position x.
Question: Where do the probabilities come from?
Approach: Let’s try to explain a measurement.
p ( x | z )  p ( z | x) p ( x)
7/21/2015
CS225B Kurt Konolige
Beam-based Sensor Model
Scan z consists of K measurements.
z  {z1 , z2 ,...,zK }
Individual measurements are independent given the robot
position.
K
P( z | x, m)   P( zk | x, m)
k 1
7/21/2015
CS225B Kurt Konolige
Beam-based Sensor Model
K
P( z | x, m)   P( zk | x, m)
k 1
7/21/2015
CS225B Kurt Konolige
Typical Measurement Errors of an Range Measurements
1. Beams reflected by
obstacles
2. Beams reflected by
persons / caused
by crosstalk
3. Random
measurements
4. Maximum range
measurements
7/21/2015
CS225B Kurt Konolige
Proximity Measurement
Measurement can be caused by …




a known obstacle.
cross-talk.
an unexpected obstacle (people, furniture, …).
missing all obstacles (total reflection, glass, …).
Noise is due to uncertainty …




in measuring distance to known obstacle.
in position of known obstacles.
in position of additional obstacles.
whether obstacle is missed.
7/21/2015
CS225B Kurt Konolige
Beam-based Proximity Model
Measurement noise
0
zexp
1
Phit ( z | x, m) 
e
2b
7/21/2015
Unexpected obstacles
zmax
1 ( z  zexp )

2
b
2
0
zexp
  e  z
Punexp ( z | x, m)  
 0
CS225B Kurt Konolige
zmax
z  zexp 

otherwise
Beam-based Proximity Model
Random measurement
zexp
0
Prand ( z | x, m) 
7/21/2015
zmax
1
zmax
Max range
0
zexp
zmax
0 if z  zmax
Pmax ( z | x, m)  
1 if z  zmax
CS225B Kurt Konolige
Resulting Mixture Density
  hit 


 unexp 
P ( z | x, m)  
 max 


 
 rand 
T
 Phit ( z | x, m) 


 Punexp ( z | x, m) 

Pmax ( z | x, m) 


 P ( z | x, m) 
 rand

How can we determine the model parameters?
7/21/2015
CS225B Kurt Konolige
Raw Sensor Data
Measured distances for expected distance of 300 cm.
Sonar
7/21/2015
Laser
CS225B Kurt Konolige
Approximation
Search for -parameters that maximize the
(log) likelihood of the data
P( z | zexp )
Search space of n-1 parameters.




Hill climbing
Gradient descent
Genetic algorithms
…
Deterministically compute the n-th parameter to satisfy normalization constraint.
7/21/2015
CS225B Kurt Konolige
Approximation Results
Laser
Sonar
400cm
300cm
7/21/2015
CS225B Kurt Konolige
Example
z
7/21/2015
P(z|x,m)
CS225B Kurt Konolige
Summary Beam-based Model
Assumes independence between beams.


Justification?
Overconfident!
Models physical causes for measurements.


Mixture of densities for these causes.
Assumes independence between causes. Problem?
Implementation




Learn parameters based on real data.
Different models should be learned for different angles at which the sensor beam hits
the obstacle.
Determine expected distances by ray-tracing.
Expected distances can be pre-processed.
7/21/2015
CS225B Kurt Konolige
Scan-based Model
Beam-based model is …


not smooth for small obstacles and at edges.
not very efficient.
Idea: Instead of following along the beam, just check the end
point.
7/21/2015
CS225B Kurt Konolige
Scan-based Model
Probability is a mixture of …



a Gaussian distribution with mean at distance to closest obstacle,
a uniform distribution for random measurements, and
a small uniform distribution for max range measurements.
Again, independence between different components is
assumed.
7/21/2015
CS225B Kurt Konolige
Example
Likelihood field
Map m
P(z|x,m)
7/21/2015
CS225B Kurt Konolige
San Jose Tech Museum
Occupancy grid map
7/21/2015
Likelihood field
CS225B Kurt Konolige
Properties of Scan-based Model
Highly efficient, uses 2D tables only.
Smooth w.r.t. to small changes in robot position.
Allows gradient descent, scan matching.
Ignores physical properties of beams.
Will it work for ultrasound sensors?
7/21/2015
CS225B Kurt Konolige