adaptive behavioral modeling for crowd simulations
TRANSCRIPT
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
1/25
Adaptive Behavioral Modeling for Crowd
Simulations
Abstract
Behavioral modeling for crowd simulations should consider a number of factors
effecting on agents, including environment. In this study, we design an adaptive behav-
ioral model for a dynamic virtual environment. We model the dynamic environment
with behavior maps which are constructed with information theory quantities and sta-
tistical formulations. These maps are capable of capturing the dynamic nature of the
environment by adaptively changing temporally and spatially. Subsequent to building
this model, agents responses to these maps are represented with a set of formulations.
In our test studies, we have observed that our model successfully produces realistic and
diverse behaviors by incorporating effects of the environment.
Keywords: crowd simulation, information theory, behavioral modeling
1
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
2/25
1 Introduction
Crowd is a fundamental element in our real environment, thus it also constitutes a crit-
ical component in many virtual environment applications. In order to improve a virtual
environments realism, crowds must be simulated believable in terms of their appearance
and behavior. Recent advances in graphics hardware addresses the issue of photo-realistic
rendering of crowds. However, realistic behavior of agents in crowd simulations is still a
challenging problem due to the number of factors effecting agents behavior, hence those
factors are not easy to represent mathematically. Most of the crowd simulation systems use
a set of rules and scripts to model human behavior, and when used alone, this approach has
limits to model the complex nature of human behavior [1]. Therefore, recent studies are
generally employing agent-based behavioral modeling methods. In these methods; an agent
responds to other agents and events using static and predefined behavior rules, whatever the
environment conditions are. However, dynamic conditions which are inherent in the envi-
ronment greatly effect an agents behavior and existing models are not capable of adapting
themselves to these conditions.
Apart from the physical properties, a built environment also has psychological effects
on people [2]. Physical properties of built environments and physical properties of agents
are already successfully handled by collision avoidance algorithms, predefined rules and
predefined roadmaps in most of the crowd simulations. And when dealing with human-
environment interactions, one should have a model that can predict the environmental con-
2
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
3/25
ditions under which humans behave in a certain manner [3]. Therefore; we need an adaptive
simulation which considers the psychological effects of the environment when modeling the
behavior of agents.
To successfully design an adaptive crowd simulation for a dynamic virtual environment,
we first build an analytical model of a crowded environment and define how agents act
according to that model.
The crowd itself can be considered as one of the most prominent factor of an environ-
ment effecting agents in a simulation [4]. In order to model the effects of the crowd,
we need methods to represent properties and activities of elements of a crowded en-
vironment such as built environment and agents. The resulting quantification should
provide a measure to evaluate the activities of the crowd and should be utilized to rep-
resent the effects of the crowd on individual agents. A good model has to be adaptive
to changes in the dynamics of the crowd both spatially and temporally.
In agent-based behavioral methods, agents are assigned some attributes to determine
their behaviors; hence, their response to certain events and other agents are altered.
However, as Shoda stated in [5], personality structure can be static but its behavioral
output changes greatly under specific circumstances. An agent should behave differ-
ently under different environmental conditions to fulfill this statement.
3
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
4/25
Our methods to build an analytical model of the environment borrow ideas from behav-
ioral mapping techniques used in psychology research. These techniques involve place-
centered maps, which keep track of behavior of individuals within a specific space and time.
These maps display how and when a place is being used [6]. In our model, we utilize
the notion of place-centered maps in simulations and propose behavior maps. A behavior
map is constructed by considering both spatial and temporal dynamics of agents in a crowd
simulation. It conveys information on probabilistic and statistical properties of agents ac-
tivities. Information theory quantities, i.e. information entropy and Kullback-Leibler diver-
gence, and statistical formulations are used to produce behavior maps. As behavior maps
are updated spatially and temporally; agents adaptively respond to their environment with
the contribution of these maps. This contribution is represented with numerical entities and
agents responses are calculated with a set of formulations.
The rest of the paper is organized as follows: in Section 2, we review the related literature.
In Section 3, we introduce different behavior maps. In Section 4, responses of agents to
behavior maps are covered. Section 5 discusses the results obtained with the model. To
conclude, final remarks are made at the conclusion section.
4
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
5/25
2 Related Work
An overall idea of the challenges and improvements in the field can be obtained in [7]. There
are several behavioral models proposed in the literature and a survey from Kasap et.al.[8]
covers most of these studies. There have been many studies on agent-based crowd models
to create human-like behaviors. Seminal works of Reynolds used behavioral models con-
sidering local rules [9] and create emergent flocking [10] behaviors. There is considerable
work on agent-based simulation systems incorporating psychological models and sociolog-
ical factors. In [11], Luo et.al. model social group and crowd related behaviors. Their main
focus is a layered framework to reflect the natural pattern of human-like decision making
process. Rymill et.al.[12] tried to improve the quality of agent behavior by adding theories
from psychology. In their work, they tried to produce more realistic collision avoidance
responses. Musse et.al. developed virtual human agents with intentions, beliefs, knowledge
and perception to create a realistic crowd behavior [13]. In [1], Pelechano et.al. assigned
psychological roles and communication skills to agents to produce diverse and realistic be-
haviors. In a more recent work, Pelechano et.al. [14] created an improved model by using
psychological and geometrical rules with a social and physical forces model. In [15] Hu
proposed an adaptive crowd behavior simulation, where he defines a static behavior context
layer. When the behavior context is altered with a predefined event, the new context adap-
tively inhibits certain behavior in agents. However, this scheme is not suitable for dynamic
environments. There are studies which model the virtual environment as maps to guide
5
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
6/25
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
7/25
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
8/25
We need to have pmfs regarding to the activities in the scene. The first pmf, Pv
, defines
the velocity direction distribution. Consider an agent with normalized velocity v, then this
vector is added as a sample to one of the n bins of Pv
, where the value of n effects quan-
tization resolution. The second pmf, Pv, defines the velocity magnitude distribution. As
agents speed is in a predefined range, this range is quantized into m categories and speed
of an agent is added as a sample to one of these categories. We merge these two pmfs into a
single pmf, Pv, with a user defined constant , which distributes importance to direction or
speed distributions, as:
Pv = Pv + (1 )Pv (2)
As Pv is taking samples over a period of time, a Gaussian shaped filter is applied to control
the importance given to temporally cumulated distributions. Let t1 and t2 be two time steps
where t2 t1 = nt and n N, temporal filter is applied as;
P t1t2v = 0Pt2v + 1P
t2tv + . . . + nP
t2ntv (3)
n =1
2e(x)2
c2 , = 0 (4)
where, n is defined as historical depth which defines the maximum age to consider,
where age means the time passed from the moment the distribution have occurred. With t
defining the time interval between two adjacent frames,
8
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
9/25
3.1.1 Entropy Map
Entropy measures the uncertainty of a random variable. If we interpret activities of an
agent as the random variable, entropy values reflect behavioral patterns of the crowd. En-
tropy values denote where agents move either more independently or where they move in a
pattern. Locations with smaller entropy values mark where agents move with similar veloc-
ities. Conversely, locations with higher entropy values represent greater disorder in agents
behavior. To build the entropy map, E, we begin by considering a random variable, Xi,j (i,j
indicating location on E), drawn according to pmf(P(tnt)t
v )i,j. Then, E can be defined
as;
Et = {H(Xi,j) ; 0 i < w, 0 j < h} (5)
, where H(Xi,j) is the entropy ofXi,j [22].
3.1.2 Expectance Map
Probability distribution of activities on a scene gives an idea on the type of activities that is
likely to occur at specific locations. This distribution is defined by pmf Pv in our calcula-
tions. In order to quantize the expectance of the current activities on the scene, we compare
the current probability distribution on the scene with Pv. We employ Kullback-Leibler diver-
gence (D, Equation 1) to compute the difference between two probability distributions. Itti
et.al. [24] used KL divergence to discover surprising events in video. They employed a prin-
cipled approach to prove that KL is a powerful measure to represent surprise. We postulate
9
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
10/25
that KL calculations can be represented as behavior maps, so called expectance maps. Let
P tv define the current (at time t) probability distribution of the scene, and P(tnt)(tt)
v
define the cumulative (between time steps (t nt),(t t)) distribution of activities,
expectance map KL is defined as;
KLt = {(D(P (tnt)(tt)v
P tv ))i,j ; 0 i < w, 0 j < h} (6)
A high KL value represents that current activities taking place at that location can be re-
garded as surprising, while in areas with lower KL values, the current status of the crowd is
as expected.
3.2 Density Map
In addition to the proposed information theory based maps, a map called density map, F,
is also integrated into our behavioral simulation model. This map indicates how crowded
a specific location is. In order to produce a measure that is less prune to noise, a temporal
filter is applied on F.
Ft = {f (tnt)(tt)i,j ; 0 i < w, 0 j < h} (7)
where f is a function giving the number of agents on location i, j between time steps (t
nt) and (t t) with temporal filter applied on count values in the same manner as
Equation 3.
10
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
11/25
4 Response to Behavior Maps
In our crowd simulation engine, agents have internal properties to determine their behav-
ior. Internal properties consist of two elements; behavioral constants and behavioral state.
Behavioral constants can be regarded as personality attributes of an agent and behavioral
state determines at what level behavioral constants effect agents behavior. Throughout the
simulation, behavioral state is altered adaptively by behavior maps. In Figure 1, the overall
structure of our model can be seen. Stages in the figure are listed as: 1)Activities of agents
are analyzed between time t0 and tn to produce behavior maps. 2)Each agent is mapped
to a specific behavior map cell. 3)Each agent has predefined roadmap, internal properties
and goals. 4)Considering all these factors, an agent modifies its internal properties and
orientation. In this step, ais properties are modified in order to respond to the behavior
map. 5)Agents modified properties and preferred velocity is fed into the navigation system.
6)Navigation system considers predefined rules and agents properties to produce a collision
free path.
To cover diverse agent behaviors we incorporate the following methods into our simu-
lation model: 1) Composite agents: A composite agent is a special agent equipped with
a proxy agent, ri, to model a number of emergent behaviors realistically [25]. A proxy
agent is a virtual agent, which is visible to all agents in the simulation except its parent ai.
ri moves according to ais choices and ai displays particular behaviors by controlling ri.
2)Preferred velocity: In crowd simulations, agents have an initial state and a desired final
11
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
12/25
state. Each agent seek for a collision-free path to its destination [7]. In order to reach their
goal as quick as possible, agents prefer to move in a pattern that brings them directly to their
goal or subgoals. A preferred velocity, vp, of an agent ai is the optimal velocity that would
bring the agent to its goal. 3) Safety factor: Safety factor is the range an agent considers
while calculating possible future collisions. A high value means, the agent takes more of the
possible collisions into account and behaves more careful by avoiding them. On the other
hand, with a lower value the agent becomes reckless and constitutes a higher possibility of
making collisions. In Figure 3-a, these methods are illustrated briefly.
Definition of an agent has to include internal properties, in addition to the physical prop-
erties. Definition of an agent ai is extended as:
ai
={
type, u, v, vp
, d, s, ri, ,
f1,..,f
n, : v
p R2; f
n, , d , s
[0, 1]
}(8)
These parameters are: 1) type : Indicates whether an agent is composite agent, proxy agent
or a normal agent. A composite agent both has a proxy agent ri and personal attributes.
A proxy agent doesnt carry any property, its behavior is dependent solely on its parent.
A normal agent only carries personal properties. 2) vp : Indicates the velocity an agent
prefers to move. 3) ri: Indicates the proxy agent associated with the current agent (available
for composite agents). 4) d : Distance to set between ri[u] and u (available for composite
agents). The longer the distance, the further ai can proceed with suffering less collisions.
5) s : Size of the area ri occupies (available for composite agents). The larger the area,
the easier ai can move. 6) : Indicates the range in which an agent considers possible
12
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
13/25
collisions, modifies safety factor. 7) fn : Indicates a behavior constant. Each constant can
be utilized to mimic certain personality attributes. They are static properties assigned to ai
at the beginning of the simulation. fn values are randomly distributed over agents and this
distribution is a method for creating behavioral variety. 8) : Indicates the behavioral state
of an agent.
Response to entropy map Entropy map displays how predictable crowd moves in a par-
ticular location. The notion of predictability can be utilized to modify behaviors of agents.
An agent, ais, response to entropy maps can be formulated as;
ai[] = kEi,j ; f
0 = (1 f0) ; f
1 = f1
ai[vp] =(vop + f
0vb)f
0m0 (9)
ai[] = f
10
where k is a constant to normalize values, 0 is the default value for and vop is the optimal
velocity leading to agents goal. The modified behavioral constants are utilized to modify
preferred velocity or modify value. vps direction is calculated with f
0 and vb, and its
magnitude is calculated with f
0 and the default speed m0. vb can be calculated as a vector
leading to lower entropy zones found as a result of a local search in an agents location or
can be a random vector. In the former case, agents tend to move to locations with lower
entropy values. Figure 3-b displays how values modify agents internal properties.
13
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
14/25
Response to expectance map An expectance map indicates the level of surprise in a
specific location. Agents give different responses to unexpected events, which can be for-
mulated as;
ai[] = kK Li,j ; f
0 = f0; f
1 = (1 f0)
ai[vp] =(vop + f
1vb)f
0m0 (10)
ai[d] = f
0d0 ; ai[s] = f
0s0; ai[] = 1/0
In this formulation, f
0 value modifies the proxy agent ri, as f
0 gets higher, d and s values
are amplified. f
0 value also increases the speed of an agent in areas with high KL value.
f
1 value, on the other hand, amplifies the deviation from optimal velocity vop. The final
response is the change in value that is inversely proportional to values.
Response to density map While some agents tend to avoid crowded areas, others dont.
This behavioral difference is related to the behavioral constant f0. An agents responses can
be described with the same formulation in Equation 10 but with different f0 values.
5 Results & Test Cases
We tested our methods through a number of scenarios. Our test environment is a modified
version of multi-agent simulation system called RVO proposed in [26]. We implemented
our adaptive behavioral model on top of this system. Our approach produces realistic and
diverse crowd behavior. Figure 4 displays snapshots from test scenarios. Accompanying
14
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
15/25
videos presents comparative results of our simulation system performing in real-time on a
system with Intel QuadCore 2.8 GHz and Nvidia GeForce GTX-280.
In order to test our behavioral model, we create a simulation containing 200 agents. We
initialize the crowd by creating three groups of agents with specific behavioral constants.
First of these groups constitutes of 20 agents with high f0 and low f1 values which can be
considered either as aggressive agents. Second of these groups contain 20 agents with low
f0 and high f1 values which can be considered as calm agents. The last group consist of
160 standard agents which do not display any adaptive behavior. As we run our simulation
with these agents, their activities are cumulated and analyzed either in one of the behavior
maps or in a combination of them, i.e. entropy, expectance or density maps. These maps are
accessed by all the non-standard agents and they modify their behavior adaptively by using
the associated behavior map value. To test this adaptive process, we perform three scenarios,
where responses to each behavior map is observed distinctively. In order to observe each
maps effects separately, in each scenario, we use a single behavior map.
To observe responses given to entropy maps, we adopt a scenario where specific agents
pass through other agents in a piazza and a pavement to reach their goal. As implied by
the formulation of entropy maps, a piazza produces higher entropy values and as agents
behave in an ordered manner, pavements produce lower entropy values. Confident agents
move directly to their goal as their preferred velocity is not effected from higher values.
15
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
16/25
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
17/25
Each one of the three behaviour map methods is generating satisfactory results in differ-
ent setting. To address the general case for a dynamic virtual environment we combined
all three models into a single one. We calculate a weighted average response by adjusting
the contribution of each behavior map to agents responses. The resulting simulation out-
performed sngle behavior map simulations in terms of variability and realism. For a visual
comparison between each method, please refer to the accompanying video.
6 Conclusion
In this paper, we proposed an adaptive behavioral model for crowd simulations. Our model
incorporates the dynamics of a virtual environment through building an analytical model of
crowds activities and formulates agents responses.
We ran our model over a number of scenarios and observed that agents behaviors are
adaptively altered under certain environmental conditions. Results show that our methods
add complexity and diversity in agents behaviors, thus improve realism. These methods can
be integrated into either scripted behavioral models to increase their behavioral variation or
autonomous agent systems to improve their realism. Presented methods will provide life-
like and evolving environments for games, industrial crowd simulations,i.e. emergency,
urban planning and can reduce production times for movie pre-visualizations.
17
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
18/25
Our model performed in real-time with several hundreds of agents. As a future work,
we will improve the scalibilty of our model with parallel computing techniques. Another
future work is introducing static preset maps into our model which will enable a designer to
encode environmental factors.
References
[1] N. Pelechano, K. OBrien, B. Silverman, and N. Badler. Crowd simulation incorpo-
rating agent psychological models, roles and communication. In First International
Workshop on Crowd Simulation, 2005.
[2] Tommy Grling and Reginald G.Golledge, editors. Behavior and environment : psy-
chological and geographical approaches. North-Holland.
[3] R. De Young. Environmental psychology. Encyclopedia of environmental science,
Kluwer Academic Publishers, Hingham, MA, USA, 1999.
[4] P.A. Bell. Environmental Psychology. Wadsworth Pub Co, 2001.
[5] Yuichi Shoda. Computational modeling of personality as a dynamical system. Hand-
book of Research Methods in Personality Psychology, pages 633 652, 2007.
[6] R. Sommer and B. Sommer. A Practical Guide To Behavioral Research: Tools and
Technique. Oxford University Press, 5 edition, 2002.
18
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
19/25
[7] Daniel Thalmann and Soraia Raupp Musse. Crowd Simulation. Springer, 2007.
[8] Z. Kasap and N. Magnenat-Thalmann. Intelligent Virtual Humans with Autonomy and
Personality : State-of-the-Art, pages 4384. Studies in Computational Intelligence,
Springer, 2008.
[9] C.W. Reynolds. Steering behaviors for autonomous characters. In Game Developers
Conference, 1999.
[10] C.W. Reynolds. Flocks, herds and schools: A distributed behavioral model. In Pro-
ceedings of the 14th annual conference on Computer graphics and interactive tech-
niques, pages 2534, 1987.
[11] Linbo Luo, Suiping Zhou, Wentong Cai, Malcolm Yoke Hean Low, Feng Tian, Yong-
wei Wang, Xian Xiao, and Dan Chen. Agent-based human behavior modeling for
crowd simulation. Comput. Animat. Virtual Worlds, 19(3-4):271281, 2008.
[12] S.J. Rymill and N.A. Dodgson. A Psychologically-Based Simulation of Human Be-
haviour. In Theory and Practice of Computer Graphics, pages 3542, 2005.
[13] S. R. Musse and D. Thalmann. Hierarchical model for real time simulation of virtual
human crowds. IEEE Transactions on Visualization and Computer Graphics, 7:152
164, 2001.
19
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
20/25
[14] N. Pelechano, J. M. Allbeck, and N. I. Badler. Controlling individual agents in high-
density crowd simulation. In Proceedings of the 2007 ACM SIGGRAPH/Eurographics
symposium on Computer animation, pages 99108. Eurographics Association, 2007.
[15] X. Hu. Context-Dependent Adaptability in Crowd Behavior Simulation. In Informa-
tion Reuse and Integration, 2006 IEEE International Conference on, pages 214219,
2006.
[16] W. Shao and D. Terzopoulos. Autonomous pedestrians. Graphical Models, 69(5-
6):246274, 2007.
[17] R. Gayle, A. Sud, E. Andersen, S.J. Guy, M.C. Lin, and D. Manocha. Interactive
Navigation of Heterogeneous Agents Using Adaptive Roadmaps. Visualization and
Computer Graphics, IEEE Transactions on, 15(1):3448, 2009.
[18] M. Sung, M. Gleicher, and S. Chenney. Scalable behaviors for crowd simulation. In
Computer Graphics Forum, volume 23, pages 519528, 2004.
[19] C. Dornhege and A. Kleiner. Behavior maps for online planning of obstacle negotiation
and climbing on rough terrain. In Intelligent Robots and Systems, 2007. IROS 2007.
IEEE/RSJ International Conference on, pages 30053011, 2007.
[20] J. Berclaz, F. Fleuret, and P. Fua. Multi-Camera Tracking and Atypical Motion Detec-
tion with Behavioral Maps. In proceedings of the European Conference on Computer
Vision. Springer.
20
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
21/25
[21] Pere-Pau Vazquez, Miquel Feixas, Mateu Sbert, and Wolfgang Heidrich. Viewpoint
selection using viewpoint entropy. In Proceedings of the Vision Modeling and Visual-
ization Conference 2001, pages 273280. Aka GmbH, 2001.
[22] C. E. Shannon. A mathematical theory of communication. Bell Systems Technical
Journal, 27:623656, 1948.
[23] Solomon Kullback. Information Theory and Statistics (Dover Books on Mathematics).
Dover Publications, 1997.
[24] Laurent Itti and Pierre Baldi. A principled approach to detecting surprising events
in video. In IEEE Computer Society Conference on Computer Vision and Pattern
Recognition, pages 631637. IEEE Computer Society, 2005.
[25] Yeh Hengchin, Curtis Sean, Patil Sachin, van den Berg Jur, Manocha Dinesh, and Lin
Ming. Composite agents. In Symposium on Computer Animation - SCA08, 2008.
[26] J. van den Berg, M. Lin, and D. Manocha. Reciprocal Velocity Obstacles for real-time
multi-agent navigation. In Robotics and Automation, 2008., pages 19281935, 2008.
21
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
22/25
ai
Agents, A Behavior Map, B
t0 tn
Agent, ai
Goals &
Roadmaps
Behavior Map
Values
Navigation
System
Internal
Properties
1
2
3
4
5
6
Modify
Internal Properties & PreeredVelocity
with Behavior Map Values
:(u, v)current
ai :(u, v)new
Figure 1: Overall structure of our model. (Details given in Section 4)
22
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
23/25
Agents, A
CumulativeProbabilistic Model Entropy Map, E
Expectance Map, KL
+ ..... +
H(x)
D(x)
Current Velocity
Distribution
Density Map, F
Density
Distribution
1
2
3
4
5
6
P P
n 0
Figure 2: Behavior map construction. 1) List of agents is fed to the system. 2) Activities
of the crowd are mapped to the underlying grid to form the current distribution function
of the activities of the crowd 3) Older distributions are merged with a temporal filter. 4)
Entropy map of the scene is built by calculations on merged pmfs from (t n to t). 5)
Expectance map is formed by calculating KL divergence between the probabilistic model
and the current distribution. 6) Density map is formed by calculating the current densities
on a specific cell.23
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
24/25
-
8/14/2019 Adaptive Behavioral Modeling for Crowd SImulations
25/25
Figure 4: Screenshots from our test environment. Each column represents successive time
steps. Each row displays responses to entropy, expectance and density map consecutively.
Agents behave distinctively in response to each of these maps. Note that, aggressive agents
(red) and calm agents (blue) behave accordingly to our model.
25