Professional Documents
Culture Documents
Howie Choset
http://voronoi.sbp.ri.cmu.edu/~choset
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
What’s Special About Bugs
• Many planning algorithms assume global knowledge
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Summary
• Bug 1: safe and reliable
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Bug 1
• known direction to goal
But some computing power!
• otherwise local sensing
walls/obstacles & encoders
“Bug 1” algorithm
1) head toward goal
2) if an obstacle is encountered,
circumnavigate it and remember
how close you get to the goal
3) return to that closest point (by
wall-following) and continue
Draw worlds in which Bug 2 does better than Bug 1 (and vice versa).
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
BUG 1 vs. BUG 2
• BUG 1 is an exhaustive search algorithm
– it looks at all choices before commiting
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
The Spiral
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
A More Realistic Bug
• As presented: global beacons plus contact-based wall following
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Raw Distance Function
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Intervals of Continuity
• Tangent Bug relies on finding endpoints of finite, conts segments
of ρR
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Motion-to-Goal Transition
from Moving Toward goal to “following obstalces”
Transition
Currently, the motion-to-goal behavior “thinks” the robot can get to the goal
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Motion-to-Goal Transition
Among Moving Toward goal to “following obstacles”
Transition
Currently, the motion-to-goal behavior “thinks” the robot can get to the goal
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Motion-to-Goal Transition
Minimize Heuristic
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Minimize Heuristic Example
At x, robot knows only what it sees and where the goal is,
so moves toward O2. Note the line so moves toward O4. Note some
connecting O2 and goal pass through “thinking” was involved and the line
obstacle connecting O4 and goal pass through
obstacle
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Transition from Motion-to-Goal
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Boundary Following
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
d followed and d reach
• Initialize with
typo
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Example: Zero Senor Range
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Example: Finite Sensor Range
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Example: Infinite Sensor Range
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Tangent Bug
• Tangent Bug relies on finding endpoints of finite, conts segments
of ρR
O5
qgoal
T x
O1 O4
O6
O2 O3
O5
qgoal
x
O1 O4
O6
O2 O3
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
The Basic Ideas
• A motion-to-goal behavior as long as way is clear or there is a
visible obstacle boundary pt that decreases heuristic distance
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Tangent Bug Algorithm
1) repeat
a) Compute continuous range segments in view
b) Move toward n ∈ {T,Oi} that minimizes h(x,n) = d(x,n) + d(n,qgoal)
until
a) goal is encountered, or
b) the value of h(x,n) begins to increase
2) follow boundary continuing in same direction as before repeating
a) update {Oi}, dreach and dfollowed
until
a) goal is reached
b) a complete cycle is performed (goal is unreachable)
c) dreach < dfollowed
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Implementing Tangent Bug
• Basic problem: compute tangent to curve forming boundary of obstacle
at any point, and drive the robot in that direction
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Sensors!
sonar rangefinder
Robots’ link to the external world...
compass
odometry… 16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Tactile sensors
on/off switch as a low-resolution encoder…
haptics
Robotic sensing
Merritt systems, FL
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Infrared sensors
“Noncontact bump sensor”
“object-sensing” IR
diffuse distance-sensing IR
IR emitter/detector pair
IR detector
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Digital Infrared Ranging
Modulated IR beam
Optical lenses
+5v
output
input
1k 1k
gnd
position sensitive device
(array of photodiodes)
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Infrared calibration
(1) sensing is based on light intensity.
The response to white copy paper
(2) sensing is based on angle received.
(a dull, reflective surface)
raw values
(put into 4 bits)
inches
15º increments
• Digital Init
• Chirp
– 16 high to low
– -200 to 200 V
• Internal Blanking
• Chirp reaches object
– 343.2 m/s
– Temp, pressure
• Echoes
– Shape
– Material
• Returns to Xducer
• Measure the time
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Issues
• Azimuth Uncertainty
• Specular Reflections
• Multipass
• Highly sensitive to temperature and pressure changes
• Minimum Range
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Sonar modeling
initial time response
accumulated
responses
blanking time
cone width
22.5 deg
spatial response:
Not Guassian!
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
(Naïve) Sensor Model
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Acoustic Physics
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
walls
sonar
(obstacles)
Sonar effects
Draw the range
reading that the
sonar will return
in each case…
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
walls
sonar
(obstacles)
Sonar effects
Draw the range
reading that the
sonar will return
in each case…
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds holding a sponge…
Sonar effects
(a) Sonar providing an
accurate range measurement
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds resolution: time / space
Region of Constant Depth (Leonard)
Typical Wall Response
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
A Different Representation
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Region of Constant Depth
• An arc is fit through the closest
response belonging to the RCD
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Wall Response Prediction
• Perpendicular line to the target is the
center of the RCD
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Compare Prediction with Data
• Close correspondence
• Our model seems sufficient
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
But does it really work?
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
ATM: Improve Azimuth Resolution
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Center Line Model – Problem
• The robot might believe the passageway is too narrow for it to
pass through
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Center Line Model – Real Data
• Center Line Model gives the robot a false impression of the world
– The robot perceives that an opening does not exist!!!
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
ATM: Arc Intersection
• Arc Intersection of two or more arcs
– The point of reflection can lie anywhere on arc 1, arc 2, …, arc n
– If many sonar arcs intersect at one point, the probability that it is in
an obstacle becomes quite high
arc2
arc1
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
ATM Median Intersection
• The median of all intersections on one arc serves as a good
approximation of the point
– Median is in the cluster of intersections
– Median is robust with respect to noise
Measurement Error?
Assume on Center Line Assume at the Intersection Errors {
Dead-Reckoning?
Some Noise?
16-735, Howie Choset with slides from G.D. Hager and Z.ÎTake a Median
Dodds
ATM Transversal Intersection
• Robot do not consider all intersections, just “Stable” intersections
θ2
OK!
θ1 No Good!
θ
Len(30°) 1
<
Arc(100" ) 10
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Mapping Example
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
McKerrow Method Overview
• Obstacle is tangent to closest sonar arc
• Use previous sonar sensor data
• Obstacle is tangent to both arcs
• Create outline segments
• Combine segments Outlined obstacle
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Single Sonar Reading
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Two Sonar Readings
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Common Tangent Condition
• d = distance between
arc centers
• r = radius of arc
• b = beam angle
• a = angle of beam
axis to x-axis
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Common Tangent Condition
• d = distance between
arc centers
• r = radius of arc
• b = beam angle
• a = angle of beam
axis to x-axis
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Common Tangent Condition
• d = distance between
arc centers
• r = radius of arc
• b = beam angle
• a = angle of beam
axis to x-axis
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Calculate Intersection Points
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Example – World
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Example – Cluttered
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Example – Clearer Picture
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Sonar Modeling
response model (Kuc)
• Models the response, hR,with
c = speed of sound
a = diameter of sonar element
t = time
z = orthogonal distance
p( S | o )
Rodolph
Robat
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Certainty Grid Approach
16-735, Howie Choset with slides from G.D. Hager and Z. Dodds
Laser Ranging
Sick Laser
LIDAR
LIDAR map
Sick
16-735, Howie laser
Choset with slides from G.D. Hager and Z. Dodds
range finder