REAL-TIME NAVIGATION OF INDEPENDENT AGENTS USING ADAPTIVE ROADMAPS
Avneesh Sud1, Russell Gayle2, Erik Andersen2, Stephen Guy2, Ming Lin2, Dinesh Manocha2
1: Microsoft Corp 2: UNC Chapel Hill
http://gamma.cs.unc.edu/crowd/aero
Motivation
Navigating to goal - important behavior in virtual agent simulation
Navigation requires path planning Compute collision-free paths Satisfy constraints on the path Exhibit crowd dynamics
Motivation
Simulation of Virtual Humans
ViCrowd [Musse & Thalmann01; EPFL] ABS [Tecchia et al.01; UCL]
Virtual Iraq [ICT/USC 06]
Motivation
Interactive simulation of crowds/virtual agents in games
Assassin’s Creed
Second Life
Spore
Challenges
Path planning for multiple (thousands of) independent agents simultaneously
Each agent is a dynamic obstacle
Exact path planning for each agent in dynamic environments is P-space complete
Goal
Real-time navigation for multiple virtual agents Independent behavior Global path planning Dynamic environments Thousands of agents
Applications
Crowd simulation Multi-robot planning Social engineering Training and simulation Exploration Entertainment
Main Results
Adaptive-Elastic ROadmaps (AERO): Graph structure for global navigation that adpats to dynamic environments
Augment global path planning with local dynamics model
Results: Tradeshow Demo
Simulation of 100 agents in an urban environment, 10fps
Outline
Related Work Our Approach Results Discussion and Conclusion
Outline
Related Work Our Approach Results Discussion and Conclusion
Related Work
Multiple agent planning Crowd dynamics
Related Work
Multiple agent planning Global path planning [Bayazit et al.02, Li &
Chou03, Pettre et al.05] Local methods [Khatib86] Hybrid [Lamarche & Donikian04] Dynamic environments [Quinlan & Kthaib93,
Yang & Brock06, Gayle et al. 07, Li & Gupta07, Sud et al. 2007]
Crowd Simulation
Related Work Multiple agent planning Crowd Simulation
Agent-based methods [Reynolds87, Musse & Thalmann97, Sung et al.04, Pelechano et al.07]
Cellular Automata [Hoogendoorn et al00, Loscos et al.03, Tu & Terzopoulos 93]
Particle Dynamics [Helbing03, Sugiyama et al. 01]
Continuous Methods [Helbing05, Treuille et al.06]
Outline
Related Work Our Approach
Overview Adaptive Elastic Roadmaps (AERO) Navigation using AERO
Results Discussion and Conclusion
OverviewAt each time step
Environment(Static Obstacles,
Dynamic Obstacles,and Agents)
Local Dynamics
AdaptiveElastic Roadmap
Scripted Behaviors
Collision Detection
OverviewAt each time step
Environment(Static Obstacles,
Dynamic Obstacles,and Agents)
Local Dynamics
AdaptiveElastic Roadmap
Scripted Behaviors
Collision Detection
Outline
Related Work Our Approach
Overview Adaptive Elastic Roadmaps (AERO) Navigation using AERO
Results Discussion and Conclusion
Adaptive Elastic Roadmaps (AERO)
Global connectivity graph Continuously adapts to dynamic obstacles Physically-based updates Localized roadmap deformations and
maintenance
Advantage: Efficient to deform roadmap than recompute & replan
AERO: Representation
Representation Graph G = { M, L } M = set of dynamic milestones L = set of reactive links
lj(t) = [ p0(t) p1(t) p2(t) … pn(t) ]
Where pk(t) is a dynamic particle
AERO: Representation
Representation Graph G = { M, L } M = set of dynamic milestones L = set of reactive links
lj(t) = [ p0(t) p1(t) p2(t) … pn(t) ]
Where pk(t) is a dynamic particle
AERO: Force Model Applied forces influence roadmap behavior
Force on particle/milestone i:
Internal Forces Prevent unnecessary link expansion Prevent roadmap drift
External Forces Respond to obstacle motion
AERO: Force Model
Quasi-Static simulation Considers particles at rest Prevents undesirable link oscillations
Verlet integrator
AERO: Maintenance Roadmap maintenance
Link removal Deformation energy
Prevent overly stretched links
Proximity to obstacles
Link insertion Repair removed links Explore for new path options
AERO: Maintenance Link insertion
1. Check removed links2. Check disconnected components3. Biased exploration toward the “wake”
of moving obstacles
AERO: Demo
AERO: Link Bands
Region of free space closer to a link Collision free zone in neighborhood of a link Identify nearest link for each agent for path
search
AERO: Link Bands
Link 1
Link 2
Band 1
AERO: Link Bands
Link 2
AERO: Link Bands
Link 1
Band 1
Outline
Related Work Our Approach
Overview Adaptive Elastic Roadmaps (AERO) Navigation using AERO
Results Discussion and Conclusion
Navigation: Path Planning
Source link link band containing agent Goal link link band containing goal Link weights
Path length Link band width Agent density
Navigation: Local Dynamics
Generalized force model of pedestrian dynamics [Helbing 2003]
Emergent crowd behavior at varying densities
Navigation: Local Dynamics
Fsoc : Social repulsive force among agents
Fatt : Attractive force among agents Fobs : Repulsive force from obstacles Fr : Roadmap force
Navigation: Local Dynamics
Fsoc : Social repulsive force among agents
Fatt : Attractive force among agents Fobs : Repulsive force from obstacles Fr : Roadmap force
OverviewAt each time step
Environment(Static Obstacles,
Dynamic Obstacles,and Agents)
Local Dynamics
AdaptiveElastic Roadmap
Scripted Behaviors
Collision Detection
Outline
Related Work Our Approach Results Discussion and Conclusion
Demos
Maze Tradeshow City
Demos: Maze
Demos: City
Demos: Tradeshow
Timings
Outline
Related Work Our Approach Results Discussion and Conclusion
Conclusions
Physically-based, adapting roadmap AERO Adapts to motion of obstacles Handle changes in free space connectivity
Combine with a local dynamics model using link bands
Efficient localized updates No assumptions on motion
Limitations
Unrealistic high-DoF human motion Computed paths may not be optimal Lacks convergence guarantees
Future Work
Develop multi-resolution techniques Exploit natural grouping behavior
Higher DoF articulated models for more realistic motions
Example / Learning based methods to guide simulation [Lerner2007]
Acknowledgements
UNC GAMMA Group Anonymous reviewers Funding organizations
ARO ONR NSF DARPA / RDECOM Intel Corp Microsoft Corp
Questions?
http://gamma.cs.unc.edu/crowd/aero [email protected]
Top Related