View
213
Download
0
Embed Size (px)
Citation preview
San Diego7/11/01
VIRTUAL SHELLS FOR AVOIDING
COLLISIONS
Yale University
A. S. Morse
OVERALL PROBLEM
Develop local control concepts to enable a large groupingof mobile autonomous agents to perform biologicallyinspired group maneuvers such as schooling, swarming,flocking in a safe and purposeful manner.
THE MAIN ISSUE
COLLISION AVOIDANCE
Virtual Shells
The concept of a virtual shell stems from two ideas:
•Neighbors can cooperate•The ``block’’ or ``moving slot’’ protocol
The concept of a virtual shell stems from two ideas:
•Neighbors can cooperate•The ``block’’ or ``moving slot’’ protocol
•Schooling fish sometimes rub against each other •Flocking birds sometimes gently hit each other•Individuals sometimes maneuver through a crowd by pushing•Crowds reform by gently nudging to pass through a portal•Children can successfully maneuver bumper cars at amusement parks•Football players sometimes guide teammates motion by pushing
Cocktail Party Problem
A key component of large group coordination seems to bethe ability of agents to cause nearest neighbors to cooperatively react to their wishes in order to effectively maneuver.
Behaviors which affect group coordination:
•Neighbors can cooperate•The ``block’’ or ``moving slot’’ protocol
•Neighbors can cooperate•The ``block’’ or ``moving slot’’ protocol
RAILROAD
block 1 block 4block 3block 2
At most one train in one block at one time
BLOCK CONTROL
Generalization
Personal Rapid Transit
A dedicated guideway network on which small driverless vehicles movebetween stations under computer control.
Slot Concept: Contiguous streams of computer generated virtual blocks or slots move along each segment of guideway withvariable temporal and physical spacings defined in such a way sothat the slot flow is the same throughout the network. Slots merge atmerges and diverge at diverges.
At most one vehicle can occupy one slot at one time.
Personal Rapid Transit
A dedicated guideway network on which small driverless vehicles movebetween stations under computer control.
Induces anatural hierarchy:
Slot Concept: Contiguous streams of computer generated virtual blocks or slots move along each segment of guideway withvariable temporal and physical spacings defined in such a way sothat the slot flow is the same throughout the network. Slots merge atmerges and diverge at diverges.
At most one vehicle can occupy one slot at one time.
•Vehicle slot-tracking controllers•Slot assignment based on real-time network flows•Slot slipping or vehicle maneuvering control
The Virtual Shell Concept
By a virtual shell is meant a closed non-deformable surface of appropriate shape
For planning purposes, shells are regarded as rigid dynamical bodieswhich move through 2d or 3d space and are subject to force fields.
Force fields are typically determined by potential functions designedto accomplish particular tasks.
A swarm or school or flock of virtual shells thus admits the model of a hybrid dynamical system.
Shells can gently hit each other, but such collisions are always “lossless”.
Collision avoidance is achieved by requiring each vehicle to remain within its own shell for all time
This is accomplished by “conventional” tracking control applied to each vehicle.
For this to be possible, each vehicle must know the trajectory of the shell it is tracking.
Since shell trajectories are determined by force fields and collisions with nearest neighbors, nearest neighbor shell position and orientationmust be available to each vehicle.
Communication between nearest neighbors is thus required.
Issues
•Shell shape •Impact rules•Impact detection•Tracking controllers•Virtual force fields
Issues
•Shell shape •Impact rules•Impact detection•Tracking controllers•Virtual force fields
2D: circles or ellipses3D: spheres or ellipsoids
Issues
•Shell shape •Impact rules•Impact detection•Tracking controllers•Virtual force fields
1. Elastic collision rule: Impacting shells interchange normal components of velocity vectors at impact point.
2. Reflection rule: Impacting shells each change the sign of its normal component of its velocity vector’s at impact point.
Issues
•Shell shape •Impact rules•Impact detection•Tracking controllers•Virtual force fields
Easy for circles and spheres: Impact occurs just when distance between centers equals sum of radii.
What about ellipsoids ?
x0Q ix + 2cix + di = 0; i = 1;2
Detecting Intersecting EllipsoidsDetecting Impacting Ellipsoids
x0Q ix + 2cix + di = 0; i = 1;2
Q1x + c01= õ(Q2x + c02)
x0Q1x + c1x = õ(x0Q2x + c2x)
c1x + d1= õ(c2x + d2)
22
22
11
11 ''det
dc
cQ
dc
cQ
Detecting Impacting Ellipsoids
Issues
•Shell shape •Impact rules•Impact detection•Tracking controllers•Virtual force fields
Issues
•Shell shape •Impact rules•Impact detection•Tracking controllers•Virtual force fields
….for a three wheeled, nonholonomic cart
L
R
x
y
Nonholonomic Cart
zç1=r1zç2=r2zç3=z1r2à z2r1
z1=xcosþ+ysinþz2=þz3=2(x sinþ à ycosþ) à þ(x cosþ+ysinþ)
r1=u à v(x sinþ à ycosþ)r2=v
Brockett
nonholonomicintegrator
Do not exist continuoustime-invariant control lawsu = f(x, y, ) v = g(x, y,)which stabilizethe origin x =y = = 0 !
nonholonomic cart model
nonholonomic cart model
Tracking Problem: Devise a feedback controller whichcauses the nonholonomic cart to “track” a given reference trajectory {xr, yr, r}.
Sussmann and LiuBrockett and MorgansenDeLuca et. al.
Approximate inversion
Model Following
Find tracking controlsto cause x ! xr, y ! yr,
and ! r
Implement
nonholonomic cart model
nonholonomic cart reference
nonholonomic cart model
nonholonomic cart reference
error system
error system
error system in new coordinates
error system in new coordinates
error system in new coordinates
closed-loop
error system in new coordinates
closed-loopstable
stable
error system in new coordinates
closed-loopgoing to zero
Suppose a vehicle is initially centered on its shell and that at most n reflection rule determined collisions can occur before the precedingtracking control can re-center the vehicle within its shell. Then themaximum distance from center cannot exceed n
This is a consequence of the already shown fact that
is non-increasing, the fact that
and the fact that can jump by at most at each impact.
What’s it take to keep a vehicle in its shell?
= 35
distanceof vehicle from centerof its shell
number of impacts
Each vehicle must continuously compute its own shell’s position.
Since each vehicle’s shell position depends on impacts with the shells of nearest neighbors, nearest neighbor shell position and orientationmust be available to each vehicle.
Communication between nearest neighbors is thus required.
One possible way to avoid the need for this communication, it for eachvehicle to assume that its neighbors are centered within their shellsat impact – this is the centering protocol.
Worst case vehicle spacing = shell radius