final multi agent - hatanaka lab · 2007. 8. 19. · 1 tokyo institute of technology fujita...
TRANSCRIPT
-
1
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Multi-Agent Search using VoronoiPartition and Voronoi 1D experiment
Fujita Lab, Dept. of Control and System Engineering,FL07-13-2: July 09,2007
David Asikin
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Outline
• Review
• Introduction• Decreasing density function• Stability• Conclusion
• Work progress:1. Simulation of Voronoi 2D with density function2. Lloyd’s Algorithm 1D experiment
• Future Work
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Review
• Review menu:1. Voronoi partition in 1D & 2D2. Lloyd’s Algorithm3. Objective function:- Sensing performance- Density function
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Review
• Voronoi partition:The set of all points q whose distance from pi is less than or equal to the distances from all other pj
( ){ }:i i jV q j i q p q p= ∀ ≠ − ≤ −
0 1
1V 3V2V
1p 2p 3p0 11p 2p 3p
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Review
• Lloyd’s Algorithm:A method for evenly distributing points over an unknown area.
• The steps:Step 0: Start with a random area, {Wi}, and
random points, {pi}.Step 1: Construct Voronoi partition {Vi},
generated by {pi}.Step 2: Update pi to be the centroid of Vi.
Return to Step 1.
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Review
Step 0: Start with a random area, {Wi}, and random points, {pi}.
Step 1: Construct Voronoi partition {Vi}, generated by {pi}.
Step 2: Update pi to be the centroid of Vi.Return to Step 1.
0 1
1V 3V2V
1p 2p 3p0 10 11p0 11p 2p0 11p 2p 3p0 1'1p'2p
'3p
1V 3V2V
-
2
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Review
• Objective function:
Sensing performance(f=big → poor sensing)Density function
p = agent position q = object W = partition
• By minimizing H, we get optimum coverage. Why?When H = min, agents move to the area with the highest occurrence possibility.
( ) ( ) ( ),W
H p W f q p q dqφ= −∫
( ) :qφ
( ) :f q p−
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Review
• We assume:Simplify the objective function using parallel axis theorem.
• To minimize this, p=Cw (=centroid of W partition)• Therefore, use this as an input to make agents go to
centroid of the partition.
( ) ( ) ( ),W
H p W f q p q dqφ= −∫
( ) 2f q p q p− = −
( ) ( ) 2, ,W W WH p W H c W M p c= + −( ) :W WM q dq massφ= ∫
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Introduction
• Application:search & rescue, environmental monitoring, military and defence application, etc.
• Objective: multi-agent searchAgents deploy themselves optimally in Q while updating (=reducing) uncertainty density function and gather information till the uncertainty is below a certain level.
Autonomous N agents equipped with sensors deploythemselves in an optimal way over an unknown area.
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Decreasing Density Function• At each iteration, after deploying themselves
optimally, the sensors gather information about Q, reducing the density function as:
: density function: sensing performance: position of the i-th sensor
• is the factor of reduction• Why ?
Only the agent with the smallest can reduce the uncertainty by the largest amount.
( ) ( ) ( ){ }1 minn n iiq q x qφ φ β+ = −nφ
( )ix qβ −
[ ]: 0,1β + a
ix
( ){ }min ii x qβ −β
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
β
Decreasing Density Function
• For sensing performance function:
• As xi approaches q → decreases (=good sensing)• As xi go further away from q → increases (=bad
sensing)
Conclusion:When xi = q, is minimum.
( ) 21 ix qix q ke αβ − −− = − ( )0,1k ∈
ββ
0α >
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Decreasing Density Function
• For objective function:
( )n nQH q dqφ= ∆∫ ( ) ( ){ }1max n nQ q q dqφ φ += −∫( ) ( ) ( ){ }{ }minn n iQ iq q x q dqφ φ β= − −∫
( ) ( ){ }{ }1 minn iQ iq x q dqφ β= − −∫( ) ( ){ }1
in ii V
q x q dqφ β= − −∑ ∫
( ) ( ){ }21 1 ii
x qni V
q ke dqαφ − −= − −∑ ∫
( )2
i
i
x qni V
q ke dqαφ − −=∑ ∫
-
3
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Decreasing Density Function
• Objective function: ( )2
i
i
x qn ni V
H q ke dqαφ − −=∑ ∫( ) ( )( )
2
2ii
x qnn ii V
i
H q ke x q dqx
αφ α− −∂ = − −∂ ∑ ∫
( ) ( )( )'2i
n ii Vq x q dqα φ= − −∑ ∫
( ) ( ) ( ){ }' '2i i
n i ni V Vq x dq q qdqα φ φ= − −∑ ∫ ∫
( ) ( ) ( )( )' '2i
n i ni Vq x q q dqα φ φ= − −∑ ∫
( ){ }2 i i iV i V VM x M Cα= − −2
i iV i VM x Cα ⎛ ⎞= − −⎜ ⎟
⎝ ⎠
②
( )V VM q dqφ= ∫( )1V V
V
C q q dqM
φ= ∫
②
① ( ) ( )2
' ix qn nq q ke
αφ φ − −=①
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Decreasing Density Function
• From , we can conclude that thenecessary condition for optimality is,
( and are respectively the mass and the centroid of Vi with respect to )
• Assume the system as . Use the result above as an input:
This moves the agent towards .
2i i
nV i V
i
H M x Cx
α∂ ⎛ ⎞= − −⎜ ⎟∂ ⎝ ⎠
ii Vx C=
iVC
iVM
'nφ
i ix u=&
ii prop i Vu k x C⎛ ⎞= − −⎜ ⎟
⎝ ⎠0propk >
iVC
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
DDF Summary• Objective:
Agents deploy themselves optimally in Q while reducing uncertainty density function and gather information till the uncertainty is below a certain level.
• Decreasing density function:
• Objective function:
• On system , use this as an input:
( ) ( ) ( ){ }1 minn n iiq q x qφ φ β+ = − ( )2
1 ix qix q keαβ − −− = −
( ) ( )2
i
i
x qn n niQ V
H q dq q ke dqαφ φ − −= ∆ =∑∫ ∫2
i i
nV i V
i
H M x Cx
α∂ ⎛ ⎞= − −⎜ ⎟∂ ⎝ ⎠
ii prop i Vu k x C⎛ ⎞= − −⎜ ⎟
⎝ ⎠i ix u=&
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Stability
• Consider the , whererepresents the configurations of N agents.
• Since , , is a negative definite.
( ) ndHV Xdt
= −& n iii
H xx
δδ
= −∑ &
2i iV i V ii
M x C xα ⎛ ⎞= −⎜ ⎟⎝ ⎠
∑ &
2i i iV i V prop i Vi
M x C k x Cα ⎛ ⎞⎛ ⎞ ⎛ ⎞= − − −⎜ ⎟ ⎜ ⎟⎜ ⎟⎝ ⎠ ⎝ ⎠⎝ ⎠∑
2
2i iprop V i Vi
k M x Cα ⎛ ⎞= − −⎜ ⎟⎝ ⎠
∑
( ) nV X H= − ( )1 2, , , NX x x x= K
0propk >0α > V&
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Stability
• By LaSalle’s invariance principle, the trajectories of the agents governed by control law:
starting from any initial configuration, will asymptotically converge to centroidal Voronoipartition with respect to the density function:
• Note:
ii prop i Vu k x C⎛ ⎞= − −⎜ ⎟
⎝ ⎠
iVC
( )'1i
i
V nVV
C q q dqM
φ= ∫
( ) ( )2
' ix qn nq q ke
αφ φ − −=
( )'iV nV
M q dqφ= ∫
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Conclusion
• Objective:Agents deploy themselves optimally in Q, gather information in their respective Voronoi partition and hence reduce uncertainty density function.(Note: the iterations are continued till the uncertainty in the is below a required level)
• The one-step optimal deployment is the centroidalVoronoi configuration with respect to the reduced density function.
• Proven stable by LaSalle’s invariance principle.
-
4
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-0-a)• Simulation of Voronoi 2D with constant density
function : (n = 9 agents)1φ =
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-0-b)• Last position:
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-0-c)
• Trajectory graph:
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-1-a)• Simulation of Voronoi 2D with density function
: (n = 9 agents)( )2 2exp x yφ = − −
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-1-b)
• Last position:
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-1-c)
• Trajectory graph:
-
5
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-2-a)• Simulation of Voronoi 2D with density function
: (n = 9 agents)( )2 2exp x yφ = − −
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-2-b)
• Last position:
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (1-2-c)
• Trajectory graph:
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (2)
• Lloyd’s Algorithm 1D simulation with density function :
• Objective of the experiment:To test the convergence characteristic of Lloyd’s Algorithm in 1D using RC cars.
1φ =
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (2)• Equipment:
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (2)• Software:
1. Halcon:Orders the camera to capture the position of the cars.
2. Simulink:Processes the data captured by Halcon. (Lloyd’s Algorithm block is written here)
-
6
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (2)• Software:
3. Control Desk:1. Receives order (output)
from Simulink and passes it to RC motors.
2. Monitors cars position, speed, voltage given, etc.
4. Microsoft Visual C++: Links data between Halcon and Simulink.
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (2)
• Software diagram:
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (2)• Experiment order:1. Make circles out of cardboard (as cars position) for
camera to read, and prepare the field.2. Make Halcon program.3. Make C++ program to link data from Halcon to
Simulink.4. Make Lloyd’s Algorithm block diagram in Simulink.5. Link Simulink with Control Desk and make monitors
in Control Desk.
+ Adjust voltage, cars speed, direction, camera, etc.+ Debug and compile.
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (2)• Lloyd’s Algorithm 1D block diagram:
Halcon Voronoi 1 CV1 Motor 1+
-
Halcon Voronoi 2 CV2 Motor 2+
-
Halcon Voronoi 3 CV3 Motor 3+
-
p1
p2
p3
u1
u2
u3
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Work Progress (2)
• Trouble:– Different time/day, different car and camera characteristic.– Adjustment for car speed, direction.– Limited power on cars battery reflects on performance.– Friction between the field and the tire.– Camera’s vision is warped (afflicts on video capturing
performance). – Backward movement.– Etc.
• Backward movement:Forward : 3VStop : 2.8VBackward : 2.6 V
3V
2.6V
2.8V
2.6VFujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
Future Work
• Lloyd’s Algorithm 1D experiment revision.• Lloyd’s Algorithm 1D experiment with density
function.• Multi-Agent Search 2D simulation.• Read more coverage control papers, etc.
• If possible, Lloyd’s Algorithm 2D experiment with constant density function.
-
7
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology
References
• Guruprasad K.R., Debasish Ghose, “Multi-Agent Search using Voronoi Partitions”, ACODS, 2007
• Jorge Cortes, Sonia Martinez, Timur Karatas, Francesco Bullo, “Coverage Control for Mobile Sensing Networks”, IEEE, 2007
• Bruce Francis, “Distributed Control of Autonomous Mobile Robots”, 2006
Fujita LaboratoryTokyo Institute of Technology
Tokyo Institute of Technology