Situation

Situation Based Approach for
Virtual Crowd Simulation
Ph.D Preliminary talk
Mankyu Sung
Crowds
Sports event
Crowds
In
Different
Environments
Museum
Street
Features in Crowds
•
•
•
•
•
•
Large number of people
Share same environment
Anonymity
Importance of short term crowd behavior
Importance of locational factor in crowd behavior
Importance of social-relational factor in crowd
behavior
Applications of Crowd Simulation
•
•
•
•
Training
Education
Entertainment
Architecture
Why Crowd Simulation is Hard?
- Conflicting Goals
- Simple agent with simple behaviors vs. Complex
agent with realistic behaviors
- Control over action of crowd vs. Not control over
every agent individually
- Fast simulation of the small number of characters
vs. Slow simulation of the large number of
characters
Talk Outline
1. Research Goal
2. Related Works
3. Works to Date
4. Demo
5. Future Plan
The Goal of Research
• Set three demands that are able to solve
these problems.
Scalability
Convincingness
Controllability
Scalability
• Two Specific Scalabilities
– Memory Scalability
• The amount of memory for a character does not
proportionally increase as the complexity of
environment increases.
– Performance Scalability
• The overall performance (frame-rate) does not
proportionally increase as the complexity of
environment increases.
Convincingness
• Visually Convincing Behaviors
– Visually realistic motion of characters
• Semantically Convincing Behaviors
– Plausible behaviors for given time
• e.g.) At a crosswalk, crowds are crossing or
standing depending on a traffic sign.
Controllability
• Specify crowd behaviors
– User interfaces
• Control crowd flow
– Predefined scenario
– Interactive control
– Density control
Proposed Approach
• Scalability
– Situation based simulation
• Convincingness
– STM(Snap-Together-Motion)
– Composable behaviors
Situation
Based
Approach
• Controllability
– Painting interface
– Situation graphs
(Sung et al. EG2004)
Thesis Statement
It is my thesis that the situation based
approach is able to achieve the demand of
scalability, convincingness and controllability.
Related Works
• Smart Environments
– Smart Object (Kallman et al. 1998)
– Informed environment (Farenc et al. 1999)
– Informed hierarchical information (Thomas et al.
2000)
– Apply Gibson’s “natural movement” theory (Michael et
al. 2003)
• Computer Games
– The Sims TM (EA games)
Related Works
• Character Animation
– Non-human creature
• Flocking algorithm : Boids (Reynolds, 1987)
• Artificial fish by using synthetic vision (Tu et al. 1994)
– Human animation
• Motion blending (Rose et al. 1996, Wiley et al. 1997,
Kovar et al. 2003)
• STM(Snap-Together-Motion) (Gleicher et al. 2003)
Related works
• Behaviors in STM
– Behavior is a series of actions over time
– Specifying a behavior is to choose proper
action one by one in time
A1
A2
A3
Actions
Time
Related Works
• Intelligent Agent
– Cognitive architecture (Funge 1999)
– Role-passing system (Horswill 1999, O’Sullivan et al.
2002, McNames et al. 2003)
• Crowd Modeling
– Rule based system (Musse et al. 1987, 2001)
– Cellular automata (Blue et al. 1998)
Related Works
• Crowd Modeling
– Physically Based Approach
• Fluid dynamics (Henderson, 1974)
• Particle system (Bouvier et al. 1997, Gipps et al. 1985)
• Social force model (Helbing et al. 1995, 2000)
– Robotics Algorithm
• Use PRM for group behavior (Bayazit et al. 2002)
• Collision-free path planning for multiple robots (Furtney 2000)
• Leader-Following model (Li et al. 2001)
Situation Based Approach
• Scalability
–Situation based simulation
• Convincingness
– STM(Snap-Together-Motion)
– Composable behaviors
• Controllability
– Painting interface
– Situation graphs
Situations
Situation
Actions
A1
A1
A2
A8
A3
A8
A3
Agent
Character
A7
A2
A4
A6
…
A5
Behavior 1
Behavior 2
Behavior 3
...
Behavior 1
Behavior 2
Situations (2)
• Example
Actions
sing
At a crosswalk
walk
climb
cross
street
turn
A man
dance
A man
sit
stand
cross
…
stand
Zig-Zag walk
Straight walk
Straight walk
Checking cars
Sit down
...
Situations (3)
Situation
A2
A1
A3
Augmented
Actions
A4
Agent
Pluggable
Agent
Architecture
Behavior 1
Behavior 2
Behavior 3
Behavior 4
Behavior 5
Augmented
Behaviors
Situation (4)
• Spatial Situation
– Has a region in the environment
• e.g.) ATM, Bus Stop, Bench, Ticket Booth, Crosswalk
– The region is used for checking whether or not an
agent is in the situation.
• Non-Spatial Situation
– Social relationship between agents
– Has no region in the environment
– Directly set on crowds.
• e.g.) Friendship, Group member
Situation(5)
• Situation architecture
Actions
Sensors
Empty
Don’t’
Walk turn
sensor
If(Empty) then
Compose(Sitdown)
Proximity
If(Signal)
then
Don’t
Turnoverlap
sensor
Compose(walk)
Behavior
Functions
Event
Rules
Signal
Path
Sit plan
sensor
Situation(6)
• Situation Composition
– Union of all components of situations
Situation A
Situation B
Composed Situation
Situation C
Agent can react to the
situation A, B and C at
the same time
Situation(7)
• Example
Crossing to the
other side of
The road
Traffic
sign
Crossing a street
with
checking traffic signs
Situation(8)
• Advantages of situation based simulation
– Scalability
• Situation controls a small set of local behaviors.
• Agents keep only information of the situations that
they are in at any given time.
• Situations can be composed/decomposed easily.
– Ease of authoring
– Re-usability
– Efficiency
Situation Based Approach
• Scalability
– Situation based simulation
• Convincingness
– STM(Snap-Together-Motion)
– Composable behaviors
• Controllability
– Painting interface
– Situation graphs
STM(Snap-Together-Motion)
• For visual convincingness, we use STM
technique for animating characters.
– From input motion clips, the STM produces a
set of small motions that can be connected
with each other with minimizing artifacts.
[Gleicher et al. I3D 2003]
Composable Behaviors
• For semantically convincing behaviors, we
propose the composable behavior technique
based on the probability scheme.
A1
Probability
Agent
Default Actions
Probability A2
Probability
A3
Actions
Action from a situation
Composable Behaviors (2)
• Probability Scheme
– Behavior functions compute the probability of
each action based on its own criteria.
– Returned probability distributions are
composed by multiplication operation.
– A sampling is performed on the final
probability distribution result to select a final
action.
P(action)
Overlap
Behavior Function
Collision with
Other agents
.5
.5
.5
Actions
A
B
C
P(action)
Multiplication
Target Finding
Behavior Function
.7
.6
.3
Actions
Agent has a
Target pos.
A
B
C
P(action)
Composed Prob. Dist
.43
.37
.19
Re-normalization
Actions
A
B
C
Composable Behaviors (4)
Composed Prob. Dist
.43
.37
.19
A
Actions
B
C
Sampling (0-1)
.19 (A)
0
.43 (B)
Action selection through sampling
.37 ( C)
1
Composable Behaviors (5)
• Advantages
– Gives a basic framework for scalability and
controllability demands.
– Provides randomness on simulation
– Takes various kinds of factors into account for
behaviors.
Situation Based Approach
• Scalability
– Situation based simulation
• Convincingness
– STM(Snap-Together-Motion)
– Composable behaviors
• Controllability
–Painting interface
–Situation graphs (future work)
Painting Interfaces
• How to specify a
particular situation in
the environment.
Spatial
Situation
Non-spatial
Situation
Putting Pieces Together
Preprocessing
Simulation time
Create an environment
Set run time situations
Set situations
Situations
Plug-in information to agents
Put crowds in the environment
Checking events with sensors
Behavior composition
Sampling on final prob. dist
Demos
•
•
•
•
•
•
1. Composable behaviors
2. Street environment
3. Theater environment
4. On-line situation setting
5. Painting interface
6. Visualization of crowds
Performance
Future Works (1)
• Smarter Situations
– Problem
• Crowd flow planning
– Solution
• Situation Graph
–
–
–
–
Represents aggregative relation between situations
Makes crowd follow a scenario
Provides interactive control
Controls the number of agents in a situation.
Situation Graph
• Example
Ticket booth
(start)
Gather and
Talk
50
100
Movie room
(end)
Restroom
10
70
Future works (2)
• Hierarchical Situations
– Problem
• Need to organize situations efficiently
– Solution
• Hierarchical situations
– Organizes situations in a hierarchical way
» e.g.) parent (queue), child (Vertical queue, Horizontal
queue)
Future Works (3)
• Hierarchical Environments
– Problem
• Not easy to make a massive environment
– Solution
• Hierarchical environment
Town
Theater
Lobby
Once we make a theater environment,
we can copy and paste it to wherever
we want.
Bench
Future Works (4)
• Adjustment of Discrete Action Choices
– Problem
• Failed in satisfying constraints because of
shortage of discrete choices
– Solution
• Provides a way to adjust actions to satisfy
constraints
– e.g.) If an agent has a target position, we can adjust the
action choices to make agent move to the exact spot.
Future Works in Timeline
Adjustment
Of
Action Choices
Hierarchical
Environment
Mar/05
Sep/04
Dec/04
Jun/04
Hierarchical
Situation
Situation
Graph
Thanks
• Financial support : NSF, MIC of Korea
• Motion donations : House of Moves,
Demian Gordon, Ohio State Unviersity
• Intellectual and technical support : M.
Gleicher, S. Chenney, H.J. Shin, L. Kovar
and all graphics group members