REAL-TIME NAVIGATION OF INDEPENDENT AGENTS USING ADAPTIVE ROADMAPS Avneesh Sud 1, Russell Gayle 2, Erik Andersen 2, Stephen Guy 2, Ming Lin 2, Dinesh Manocha 2 1: Microsoft Corp 2: UNC Chapel Hill
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 ] 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
Overview At each time step Environment (Static Obstacles, Dynamic Obstacles, and Agents) Local Dynamics Adaptive Elastic Roadmap Scripted Behaviors Collision Detection
Overview At each time step Environment (Static Obstacles, Dynamic Obstacles, and Agents) Local Dynamics Adaptive Elastic 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 l j (t) = [ p 0 (t) p 1 (t) p 2 (t) … p n (t) ] Where p k (t) is a dynamic particle
AERO: Representation Representation Graph G = { M, L } M = set of dynamic milestones L = set of reactive links l j (t) = [ p 0 (t) p 1 (t) p 2 (t) … p n (t) ] Where p k (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 links 2. Check disconnected components 3. 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 F soc : Social repulsive force among agents F att : Attractive force among agents F obs : Repulsive force from obstacles F r : Roadmap force
Navigation: Local Dynamics F soc : Social repulsive force among agents F att : Attractive force among agents F obs : Repulsive force from obstacles F r : Roadmap force
Overview At each time step Environment (Static Obstacles, Dynamic Obstacles, and Agents) Local Dynamics Adaptive Elastic Roadmap Scripted Behaviors Collision Detection
Outline Related Work Our Approach Results Discussion and Conclusion
Implementation 3Ghz Pentium D CPU, 2GB RAM NVIDIA GeForce 7900 GPU, 512MB OpenGL
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?