icarv02 - Stanford University

Real-Time Tracking of an
Unpredictable Target Amidst
Unknown Obstacles
Cheng-Yu Lee
Hector Gonzalez-Baños*
Jean-Claude Latombe
Computer Science Department
Stanford University
* Honda’s Fundamental Research Labs, Mountain View, CA, USA
The Problem
target
observer
Goal: Keep the target in field
of view despite obstacles
observer
target
observer’s visibility region
• No prior map of workspace
• Unknown target’s trajectory
Corner Example:
Pure visual servoing
Corner Example:
Anticipating Occlusion
Corner Example
Related Problems
Missile control
 Occlusions are not the main concern
Visual tracking, visual servo-control
 No attempt to exploit sensor’s mobility to
avoid undesirable occlusions
Guarding an art gallery
 Many fixed sensors, instead of a moving one
Previous Similar Work
Off-line backchaining planning
Offline game-theoretic planning
 Prior knowledge of workspace and target’s
trajectory
On-line game-theoretic planning




Probabilistic model of target’s behavior
Prior knowledge of workspace
Localization issue
Computationally intensive
Multi-observer/Multi-target case
Our Risk-Based Approach
Observer’s visibility region is obtained by sensing
 No prior model of workspace
 No localization issue
 Tolerance to transient objects
At each step observer minimizes the risk that
target may escape its visibility region
 No prior model of the target’s behavior
Risk combines a reactive and a look-ahead term
 Works well with aggressive targets
Steps of Tracking Algorithm
Acquire visibility region / Locate target
Compute shortest escape paths
Associate risk with every shortest escape path
and compute risk gradient
Compute motion command as recursive average
of risk gradients
Acquisition of Visibility Region
+ Target Localization
Target
Acquisition of Visibility Region
Acquisition of Visibility Region
Steps of Tracking Algorithm
Acquire visibility region / Locate target
Compute shortest escape paths
Associate risk with every shortest escape path
and compute risk gradient
Compute motion command as recursive average
of risk gradients
Shortest Escape Paths
target
(Escape-Path Tree)
observer
Steps of Tracking Algorithm
Acquire visibility region / Locate target
Compute shortest escape paths
Associate risk with every shortest escape path
and compute risk gradient
Compute motion command as recursive average
of risk gradients
Initial Risk-Based Strategy
e
target
Risk = 1/length of shortest escape path
v
observer
Initial Risk-Based Strategy
e
target
p
Risk = 1/length of shortest escape path
p’
v
observer
e’
Improved Risk-Based Strategy
e
target
e”
p
p”
v
di
reactive component
look-ahead component
observer
Improved Risk-Based Strategy
(other case)
e
v
target
look-ahead component
observer
Generic Risk Function
target
 = c f(1/h)
r2
look-ahead
f(1/h) = ln (
reactive
1
h2
+ 1)
e
h
v
r
observer
Steps of Tracking Algorithm
Acquire visibility region / Locate target
Compute shortest escape paths
Associate risk with every shortest escape path
and compute risk gradient
Compute motion command as recursive average
of risk gradients
Global Risk = Recursive Average
Over Escape-Path Tree
target
observer
Example
Steps of Tracking Algorithm
Acquire visibility region / Locate target
Compute shortest escape paths
0.1s
Associate risk with every shortest escape path
and compute risk gradient
Compute motion command as recursive average
of risk gradients
Adjustments for Real Robot
Observer and target are modeled as
disks
Observer’s sensor has limited range
(8m) and scope (180dg)
Observer is nonhololomic with zero
turning radius
Imagine yourself tracking a moving
target in an unknown environment using
a flashlight projecting only a plane of light!
Transient Obstacles
Conclusion
Observer successfully tracks swift targets
despite paucity of its sensor
Fast computation of escape-path tree and
risk gradient (control rate is ~ 10Hz)
Obvious potential improvement: Add camera
for better target detection
Future work: Multiple observers and multiple
targets, more dynamic environments
Example