Sébastien Paris, Anton Gerdelan, Carol O’Sullivan {Sebastien.Paris, gerdelaa, GV2 group, Trinity College Dublin
CA-LOD Research Objectives Optimise the main behavioural bottleneck: character motion control Specific Objectives: 1. Each crowd member is a fully autonomous agent 2. Obstacle avoidance and path planning 3. Scale crowd to bigger size by using LOD on behaviour 4. Develop a series of algorithms that scale well with LOD without losing agents’ autonomy 23/11/2009Motion In Games 20092
Related work 1/2 Level of Detail techniques Mainly graphical ○ Geometrical LODs [Lue02] ○ Impostors / Geopostors [Dob05] Behaviour seldom addressed BUT main CPU bottleneck Existing Behaviour optimisations ○ Break crowd autonomy (pre-computed paths) [Pet06] ○ Constrain environment modelling (crowd patches) [Yer09] 23/11/2009Motion In Games Crowd patches
Related work 2/2 Micro-simulation: autonomous agents with several decision layers Rational / cognitive: action selection, path planning Reactive: collision avoidance ○ Rule based algorithm [Rey99] : wall crossing / late adaptation ○ Particle based [Hel05] : only for high densities 23/11/2009Motion In Games Rule based Particle based
Behavioural model overview 23/11/2009Motion In Games Autonomous agentInteractionEnvironment
Motion models: LOD 0: n neighbours and topology Collision Avoidance LOD 1: 1 neighbour CA LOD 2: topology CA Classic LOD distribution (camera visibility and distance) CA-LOD: Overview 23/11/2009Motion In Games P ERFORMANCE R EALISM
LOD 2: Path Planning Topological representation ( Delaunay triangulation ) Path planning (A*) Visual optimisation 7
LOD 2: Path Planning Cons: No dynamic CA Crowds tend to form into lanes along planned paths 23/11/20098 Pros: Very fast to compute (~ 60 µs / agent / s) Allows full individual autonomy
LOD 1: Fuzzy controller Bend path around other pedestrians Represent env. using fuzzy sets for distance and angle to nearest front neighbour Match inputs using fuzzy inference Aggregate outputs and modify desired speed and steering 23/11/2009Motion In Games 20099
LOD 1: Fuzzy controller Cons: Collides when 2+ oncoming neighbours Hard to optimise rules manually 23/11/2009Motion In Games Pros: Disperses people Smoothes CA-LOD transition Very fast – 1 neighbour (~ 190 µs / agent / s)
LOD 0: Geometric Avoider Analyse all nearby neighbours and topology Anticipate dynamic agents’ movement Represent environment with a “radar” structure Extract a solution minimising interactions and avoidance effort 23/11/2009Motion In Games
LOD 0: Geometric Avoider Cons: Computationally expensive (~ 600 µs / agent / s) Hard to optimise decision factors manually 23/11/ Pros: Realistic collision avoidance Anticipation Effort minimisation
Results: Performance 23/11/2009Motion In Games Single ThreadMulti-Thread (4 threads) on quad-core Possible CA-LOD distribution for real time performance:
Results: Demo 23/11/2009Motion In Games
Conclusions Able to simulate very large crowds (10,000) in real-time using commodity hardware Graphical and animation optimisations Intel Core2 Quad Q GHz GeForce 9800 GT Overall motion convincing with current LOD algorithms but further tuning possible. Perfect CA not desirable though! Can we handle bumps / physics realistically? 23/11/2009Motion In Games
Future Works Optimising fuzzy rules / geometric factors with a Genetic Algorithm Investigate a more complex fuzzy controller Multiple neighbours, Adapt to specific situations Investigate other CA algorithms (additional LODs) Find optimal LOD ranges (perceptual experiments) Unified LOD (w/ graphics, animation, sound etc) Distribute LOD based on “focus area” (salient agents / groups / zones) 23/11/2009Motion In Games
23/11/2009Motion In Games
Referenced Works [Lue02]D. Luebke et al. “Level of Detail for 3D Graphics”. Elsevier Science Inc., New York, NY, USA (2002) [Dob05]S. Dobbyn et al. “Geopostors: a real-time geometry/impostor crowd rendering system”. ACM Trans. Graph. 24(3), 933 (2005) [Yer09]B. Yersin et al. “Crowd Patches: Populating Large-Scale Virtual Environments for Real-Time Applications”, I3D’09 [Pet06]J. Pettré et al. “Real-time navigating crowds: scalable simulation and rendering”, Computer Animation and Virtual Worlds, vol. 17, CASA 2006, pp , 2006 [Rey99]C.W. Reynolds “Steering behaviors for autonomous characters”. Game Developers Conference 1999 [Hel05]D. Helbing et al. “Self-organized pedestrian crowd dynamics: Experiments, simulations, and design solutions”. Transportation Science 39(1) (2005) 1–24