Presentation Transcript
An Event-Driven Approach toHuman Crowd Simulationwith Example Motions: An Event-Driven Approach to Human Crowd Simulation with Example Motions
OUTLINE: Motivation
Basic Idea
Related Work
Overview
Initializer
Behavior Generation
Motion Generation
Results
Conclusion OUTLINE
1. Motivation: 1. Motivation Crowd Scenes
Commonplace in computer games and feature films
Evolving from the interactions among individual members and their interactions with the environment
Highly dynamic and complex
An Event-driven Approach to Human Crowd Simulation with Example Motions
Why example motions?: To generate realistic motions efficiently.
How?
Motion capture and reuse.
On–line motion blending. [Park et al. 2002] Why example motions?
Why “Event – driven” ?: Why not employing a fixed–time advancing scheme?
Well, ……
Some well–known characteristics of crowds :
Members clustered together very closely.
Living creatures to actively interact with each other and also with the environment.
Adaptive correcting behaviors to dynamically changing situations even during a time step !!! Why “Event – driven” ?
2. Basic Idea: 2. Basic Idea Event-driven approach
Guided by the external events reflecting the scenario, the behavior of a crowd evolves as intended, while adding variations due to the internal events.
Live-captured motion clips
3. Related Work: 3. Related Work Non-human creatures : reactive behaviors
Dynamic spatial partitioning [Reynolds 1987]
Synthetic visions [Tu and Terzopoulos 1994]
Pedestrian dynamics : Pedestrian crowd modelling
Similar to gases and fluids [Henderson 1974]
Individual pedestrian dynamics
[Gipps and Markiso 1985; Helbing 1992, 1995, 2000]
3. Related Work (cont.): 3. Related Work (cont.) Behavioral rules
Behavioral model of groups: Border Collies and Olympic bicycle racing [Brogan et al. 1997]
ViCrowd [Musse and Thalmann 2001]
Improv [Perlin and Goldberg 1996]
Real-world systems
Based on pedestrian dynamics together with procedural rules
AntZ, The Lord of the Rings
Plug-ins to MayaTM and SoftimageTM
4. Overview: Script parser Motion
Generator Event
Scheduler External Event
Generator Internal Event
Generator Scenario Behavior Generator Example
motions Event handler Initializer 4. Overview
5. Initializer: Script Parser Scenario behavioral rules external Events Event Handler Event Scheduler 5. Initializer External Event Generator
6. Behavior Generation: 6. Behavior Generation Script Parser behavioral rules Event Handler Internal Event Generator Event Scheduler External Event Generator Motion Generatior External event Event Candidate Internal Event Motion specification
Event-Driven Paradigm: Event-Driven Paradigm External events
Internal events (candidate)
Internal Event Prediction: Internal Event Prediction Predicting two candidate internal events for a crowd member
A candidate resetting event
A candidate colliding event
Why candidates?
Space Subdivision: Space Subdivision
Time-Varying Bounds: Time-Varying Bounds Assumptions
- moving trajectories unknown
- bounded acceleration
Time – varying bounds Uncertainty in future
facilitating interactions r
Slide16: Registration of Time-varying Bounds (C(sk)) R(sk) C(sk) sk ℓ 2ℓ A time-varying bound sk is said to be registered in a subspace C(sk) if the center of sk was contained in C(sk) at its most recent event time. C(sk), R(sk), and R(sk) 3ℓ
Slide17: Candidate Resetting Event Generation (C(sk)) R(sk) C(sk) Sk = {all time-varying bounds registered in (R(sk)).
Slide18: Candidate Colliding Event Generation
Event Handling: Event Handling Deriving the reactions to events
Updating the internal status
Behavioral rules + external information
How to Handle External Events: How to Handle External Events Controlling the global flow of crowd simulation
Drawing the reactions from behavioral rules
Prescribing motion specifications
Creating new candidate internal events
How to Handle Internal Events: How to Handle Internal Events Local interactions among crowd members
Interaction with the environment
Adding details to crowd behaviors
A force field model of pedestrian dynamics
Slide22: Force Field Model avoiding force braking force driving force
Slide23: Driving Force global velocity control local velocity adjustment route goal
Braking Force: 0 0 Braking Force
Avoiding Force: 0 Avoiding Force
Resetting Event Handling: - resetting the time-varying bound sk to its initial size
- probing the position xk(t) and velocity vk(t) to re-initialize
the time-varying bound sk
making registration change if needed. new location old location Resetting Event Handling
Colliding Event Handling: identify the neighbors and nearby objects
compute the force exerted on each of colliding members reset the time-varying bounds Colliding Event Handling
7. Motion Generation: Example motions Parameterization Motion Blending Weight Computation Time Warping Posture Blending Motion Retargeting Motion Specifications Target Motion 7. Motion Generation
8. Results: 8. Results
9. Conclusion: 9. Conclusion Event-driven approach
Locomotive behaviors
Collision detection + Pedestrian dynamics
Future work
Scripting system (scenario + behavioral rules)
Sophisticated behavioral rules
Generalization to other types of motions