0% found this document useful (0 votes)
49 views4 pages

Latif, Widyarto - 2004 - The Crowd Simulation For Interactive Virtual Environments

It is about crowd simulation for IVE

Uploaded by

swidyarto
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views4 pages

Latif, Widyarto - 2004 - The Crowd Simulation For Interactive Virtual Environments

It is about crowd simulation for IVE

Uploaded by

swidyarto
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

The Crowd Simulation for Interactive Virtual Environments

Muhammad Shafie Abdul Latif* Setyawan Widyarto **


* **
Faculty of Computer Science and Information System, Politeknik Negeri Lampung, Jalan Soekarno Hatta,
Universiti Teknologi Malaysia, 81310 UTM Skudai, Rajabasa, Bandar Lampung 35145, Indonesia,
Johor,

Abstract

The paper will cover the issues of Collective Behavior in complex Path planning produces correct solutions but the associated
and critical event in Virtual Environment and its Application by semantics is not easily accessible. This can be related to the
Visualizing Space and Information. This is related to the on-going underlying heuristic search techniques, which essentially compile
research results concerning development of the crowd simulation information into heuristics, which are not high-level
for interactive virtual environments. The simulation aims to representations.
reproduce realistic scenarios involving large number of the virtual
human agents. We define interactive VE as an architecture of Conversely, adopting a semantic approach to path planning opens
multi-agent system allowing behaviors of the agents to interact the way to a better and more appropriate control of autonomous
among them, with the virtual environment as well as with the real agents. The introduction of semantics in heuristic path planning
human participants. The first behavior is known as Collective has been proposed by Bandi and Cavazza [Bandi and Cavazza
behavior. One of collective behavior to be described in this paper 1999]. This paper will describe the extension of this approach to
is maximum dispersion for the group of three agents. There are the case of multi-agent co-ordination, a problem with many
some complexities in identifying the procedure for maximum applications in computer animation.
dispersion behavior among three agents. For experimenting with
the determined procedures, the path planning of crowd dispersion
in the building environment at the time of emergency situation is
2 Research Problem
applied. With this complex and critical environment an
experiment is carried out and the result of simulating maximum There are three aspects to the problem of crowd simulation
dispersion behavior of agents is discussed. specifically co-ordinating group of agent. The first one is to
search for the minimal path from source to destination, the second
CR Categories: is to co-ordinate a group of actors for the purpose of embedding
semantic information i.e. maximum dispersion and finally to
Keywords: collective behavior, the A* algorithm, multi-agent convert action to motion for animation.
coordination.
However, the paper concentrates on the co-ordination of agents to
1 Introduction move together as a group or crowd. Co-ordination will result in
the generation of alternative paths if such paths exist. The
Crowd simulation may be defined as an animation of a group of procedure for co-ordinating path planning for three agents in
animated character. Animated characters or we may call agents virtual environments has been implemented.
moving together in virtual environment. The movement in certain
cases requires agents to coordinate among them self. They may The on-going research result presented in this paper will introduce
follow after one another, walking in line or dispersing using the synchronous path planning method in order to tackle the first
different directions. All these actions contribute a collective two problems. The result of path generation is the list of direction
behavior that need to be explored. and then converts into a transformation of animation i.e. to solve
the third problem. With a single path planning calculation,
Path planning is used to generate motion and this motion also multiple paths will be generated to provide different paths for
constitutes a set of actions. As virtual worlds are normally multiple agents from the same location to the same destination. In
populated by more than one agent, incorporation of multi-agent other words, this can provide alternative paths for agents to
actions is one of the most important areas in animation proceed to a certain destination. The property of admissibility is
techniques. This is another test case of the relationship between used to enhance the capabilities of the A* algorithm to serve this
high-level descriptions (actions) and low-level motion. In this purpose. Coordination is embedded in path planning using
case, we will investigate how high-level semantics can govern application-dependent data for the semantic interpretation, i.e.
low-level motion from a population of agents instead of one single maximum dispersion. It is subsequently included as a collective
agent. behavior for multi-agents movement in a virtual environment.
--------------------------------------------
*e-mail: [email protected] 3 Related Work in Collective Behavior
**e-mail: [email protected]
Copyright 2004 by the Association for Computing Machinery, Inc. In this section, some details of the architectural crowd will be
Permission to make digital or hard copies of part or all of this work for personal or described. Collective behaviors have been studied and modeled
classroom use is granted without fee provided that copies are not made or distributed with very different purposes. Besides single work concerned with
for commercial advantage and that copies bear this notice and the full citation on the
first page. Copyrights for components of this work owned by others than ACM must be
generic crowd simulation [Musse 2000.], most approaches were
honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on application specific, focusing on different aspects of the crowd
servers, or to redistribute to lists, requires prior specific permission and/or a fee. behavior.
Request permissions from Permissions Dept, ACM Inc., fax +1 (212) 869-0481 or e-mail
[email protected].
2004 ACM 1-58113-884-9/04/0006 $5.00
Short Paper
278
research co-ordination among multi-agent is so specifically as to
3.1 Behavioral Levels in Groups disperse for alternative paths leading toward the same destination.

Behavior in groups of a system may be described at three levels: 4 Motion Control for Non-Player Characters
the individual agent, relationships among individual agents and
collective structure of a group. Each level has its own complexity Non-Player Characters (NPCs) are the autonomous characters that
and emergent phenomena. are free from the users control. NPCs will interpret an action
carried out by the main animated character or player avatar. The
Relating with animation in VE, the behavior may be referred to as interpretation process is important for this view in behavioral
a sequence of motions. Where as, the behavior in the real world animation. This will lead to further autonomous actions in the
would counterpart to action in virtual world. Typical work on virtual environment as well as intelligent responses to the action
action is concerned with how to control the motion or to create the being carried out. Thus motion or path planning becomes much
animation. Thus a computer animation technique is often referred more complicated when an animation for large crowds must be
to motion control systems [Watt and Watt 1992]. An animation made. Recent development in motion planning and in global
techniques for improving the approach has been discussed
establishing the interaction between objects and their surrounding
[Overmars, 2002] but it concentrated on the probabilistic roadmap
may be classified as behavioral animation. In this case, a desired
(PRM). Whereas the improvement for path planning techniques
goal is specified, and the system attempts to generate a suitable
used for large crowds is very few.
series of position and orientation on a moving object in spatial
coordinates. Algorithms that simply co-ordinate agents around a group leader
[Brock et al, 1992] without actually sharing a common goal are
3.2. Modeling of Behavior in Groups faced with a certain number of limitations. For instance, flocking
algorithms [Reynolds 2000] are vulnerable to local phenomena in
3.2.1 Autonomous Modeling the virtual world: if one actor splits from the group it might not be
able to reconvene on the basis of the flocking algorithm only,
The model gives agents some ability to improvise, and frees the especially if the terrain contains obstacles. More specifically, it is
difficult with flocking algorithms to devise strategies for multiple
animator from the need to specify each detail of every path. An
path planning that enable co-ordinate agents to follow different
autonomous agent determines its own actions, at least to a certain
routes to the same destination [AbdLatiff and Cavazza 2000]. In
extent. Agents may be guided by external process (users interact addition to this, flocking method is not easily applicable to
with agents), may be controlled by the use of notation to define specific constraints, such as the maximum dispersion problem. In
possible behaviors (robotic field term is teach and pendant), and other words, they go on different routes and reconvene back to a
may independently behave as individuals who posses the ability to same destination. This problem would generally lead the flock to
think and react to events around them. The last capability relates loose some of its elements, as most flocking procedures ensure
to the field of artificial intelligence. flock cohesion rather than agent dispersion.
3.2.2 Collective Behavior Formulation The separate paths that are created for each agent using linear
interpolation as implemented in crowd behavior [Thalmann et al.
In building a mathematical formulation for the crowd behavior, 2000; Farenc et al 2000; Musse et al 1998, 1997] do not involve a
we have to assume that there are some certain regularities (e.g. path planning process. The movement is based on guided crowd
follow stochastic laws, for examples, A*, Dijkstra's and The least behavior from one interest point (IP) to another IP and collision
effort algorithm). Helbing [Helbing1992] describes crowds into detection with obstacles is included in separate module for each
three formulations: i.e. a stochastic, a gaskinetic or by a fluid agent. It is impossible for the crowd behavior to plan the path and
dynamic formulation. to find the shortest path to destination.

Some examples of applications concerning crowd behavior both Schooling behavior [Tu 1996, 1994] particle systems [Bouvier et
al. 1997), voxel spaces [Zhang and Wyvill, 1997] as well as
the formation of freely forming groups and the behavior in queues
flocking algorithm are ill-suited to the simulation of human
include crowd motion simulations to support architectural design
movements in planar environment. Their main purpose is to
both for everyday use [Bouvier and Guilloteau, 1996], for
simulate the movement of agents in open space. Although Bouvier
emergency evacuation conditions [Still, 2000; Thompson and et al [Bouvier et al. 1997] have successfully used particle system
Marchant, 1995] and simulations of physical aspects of crowd in simulating human crowd movement, it is difficult to include
dynamics [Helbing et.al. 2000]. Ulicny [Ulicny at.al 2001] has proper path planning in this kind of simulations. Moreover,
developed the crowd simulation for interactive virtual special purpose actions such as obstacle avoidance are controlled
environments such as virtual reality training system for urban by a separate behavior routine, for instance avoiding-static-
emergency situations and defined architecture of multi-agent obstacles and avoiding-fish in schooling behavior.
system allowing both scripted and autonomous behaviors of the
agents as well as interactions among them, with the virtual Multi-agent Real-Time-A* with selection [Yokoo and Kitamura
environment and with the real human participants has been. 1996] is not meant to provides the solution for multi-agents
movement. Multiple agents are used only to concurrently search
Most of the solutions to crowd movement will cause agents to the same goal or destination and at the final stage competing each
move to another place whilst staying close to each other and other to find one best solution. All other multi-agent search such
avoiding collisions. Information sharing between objects is used as Ishida [Ishida 1998] normally serves the same purpose. In this
to make sure that the objects will move together and that objects case, multiple agents are used for distributed problem solving:
will not collide with each other. On the contrary, in this on-going only the best solution found is relevant and the agents are not
featured as such in the simulation.

279
distance to agent_B but this is not assured with agent_C. If
5 System Algorithm and Its Initial Results. agent_A has the maximum distance to agent_B and agent_C, it is
quite complicated to make agent_B to have the maximum distance
Using traditional algorithms, calculating the path for a group of with agent_C at the same time. For this purpose four different
actors originating from the same place towards the same procedures have been set up as given below and the result
destination results in all actors following the same path. Figure 1 produced from it are analyzed.
shows the path taken by three actors that calculate their own path
using the normal A* algorithm. There are moving from the left
middle room to the right room with a few obstacles for them to
avoid on the way. The collective behavior is following i.e.
leading one after another. This is impractical at the time of
emergency. The agents are rushing to find an alternative path to
save them self or to vacant the building.

Bandi and Cavazza [1999] have shown how to integrate semantic


information in to the A* path planning using a secondary
heuristic. Abd Latiff and Cavazza (2000) have come out with
SNA* algorithm to incorporate application-related knowledge or Figure 2. Three leader agents with two followers each
application-dependent data into path planning.
Procedure [1]
an=max_dist(ac, bc ); bn=max_dist(ac , bc ); cn=max_dist(an , cc );

Procedure [2]
an=max_dist(ac, bc ); bn=max_dist(ac , bc ); cn=max_dist(bn , cc );

Procedure [3]
an= max_dist(a0, b0 ); bn= b0; cn=max_dist(b0 , cc );

Procedure [4]
Figure 1. Three agents follow one after another using normal A* an= max(max_dist(ac , bc ), max_dist(ac , cc ));
Basically in A* algorithm, there is a set of nodes called OPEN bn= max(max_dist(bc , ac ), max_dist(bc , cc ));
and another set called CLOSED. Each time through the main cn= max(max_dist(cc , ac ) max_dist(cc , bc );
loop, the best element (an element with the lowest cost) from
OPEN is picked out, and evaluated at its neighbors. Then, it is put Procedure [3] gives the best result for the maximum dispersion
in any unvisited neighbors into the OPEN set. The cost of a node behavior for three agents. It is shown in Figure 3. In this
is the sum of the current cost of walking from the start to that procedure agent_B will always take the shortest distance and can
node and the heuristic estimate of the cost from that node to the be assumed as a group leader, i.e. bn= b0. Agent_A will take the
goal.
left alternative path, i.e. an= max_dist(a0, b0 ) whereas agent_C
Most of the improvements in the A* algorithm principally involve takes the right of its leader, i.e. cn=max_dist(b0 , cc).
its heuristic evaluation function. This includes the manipulation
of its heuristic function, h (n) as well as the computation time of f
(n). The enhancement of A* can be done by including application
related knowledge in the selection of f (n). This enhancement is
applied in the co-ordination of path planning for multiple agents
or the movement of a crowd. In the research a secondary heuristic
is employed to incorporate the behavior of multi-agent, which is
termed collective behavior.

For the secondary heuristic, the expanded node is no longer the


best node in the OPEN list, but a node from FOCAL list will be
used instead. The best or several selected nodes in FOCAL are Figure 3: Total dispersion using behavior in procedure [3]
induced with the application-dependent knowledge or collective
behavior. Both classical A* and SNA* algorithm path planning technique
were used to control the animation. The path planning provides
There are some complexities in identifying the procedure for the shortest path between source and destination, and will
maximum dispersion behavior in crowd simulation. In early automatically avoid obstacles. Even though, they could be
experiment crowd simulation was limited to three leader agents extremely expensive if we have large crowds those techniques
and four different procedures. Each leader has two follower agents may result a model that similar to real life crowd in some
as seen in Figure 2. Leaders and followers must coordinate among respects. As we know that the techniques will lead to paths that
them. have sharp corners.

The dispersion method for coordination must be no collision and We introduce directive method as a technique to convert action to
no deadlock. For instance, agent_A can have the maximum motion animation. Collective behavior is an action generated from
path planning algorithm. The result is a list of direction number to

280
represent two orientations i.e. the new translation and a new BOUVIER, E., COHEN, E. and NAJMAN, L., 1997. From crowd
rotation. The procedure below is used to map the list of directions simulation to airbag deployment: particle systems, a new paradigm of
into the actual move orientation in a 2D planar environment: simulation. Journal of Electronic Imaging 6(1), 94-107, January.
BOUVIER, E., GUILLOTEAU, P., 1996, Crowd Simulation in
Begin Immersive Space Management, Proc. Eurographics Workshop on
For every loop/frame displayed Virtual Environments and Scientific Visualization 96, pp. 104-110,
if artificial actor starts to walk Springer-Verlag.
newTranslation = setLinearVelocity(direction_no); BROCK, D.L., MONTANA, D.J. & CERANOWICZ, A.Z., 1992.
newRotation = setAngleOfRotation(direction_no); Coordination and Control of Multiple Autonomous Vehicles.
getNewTransformation(newTranslation, Proceedings of the IEEE Conference on Robotic and Automation.
newRotation); Nice, France.
direction_no++; FARENC, N., MUSSE, S.R., SCHWEISS, E., KALLMANN, M., AUNE,
end-if O., BOULIC, R. and THALMANN, D., 2000. A Paradigm for
end Controlling Virtual Humans in Urban Environment Simulations.
end Applied Artificial Intelligence. 18, 1, pp. 81-103.
HELBING, D 1992, Models for Pedestrian Behavior, Natural Structures.
The animation loop continues for every 20 milliseconds to Principles, Strategies, and Models in Architecture and Nature, Part II,
generate the new frame. The new transformation occurs only 93-98, Sonderforschungsbereich 230, Stuttgart
when the agent starts to walk. The setLinearVelocity( ) function is HELBING, D., FARKAS, I., and VICSEK, T., 2000 Simulating
used to set the velocity at that particular time. This function will dynamical features of escape panic, Nature, 407:487-490.
look up the direction/velocity conversion table (Table 1) and ISHIDA, T., 1998. Real-Time Search for Autonomous Agents and Multi-
translate the direction number to velocity vector for the new Agents Systems. Autonomous Agents and Multi-Agent Systems. Vol.
translation. The setAngleOfRotation( ) function consequently sets 1, pp. 139-167.
the rotation for the whole body of the agent towards the direction KORF, R.E., 1998. Artificial Intelligence Search Algorithm, In CRC
of movement. Another look up table has been developed to Handbook of Algorithms and Theory of Computation, M.J. Atallah
synchronize the facing and the movement direction of the (Ed.), CRC Press, Boca Raton, FL, 1998, pp. 36-1 to 36-20.
synthetic actor. MUSSE, S.R., 2000, Human Crowd Modeling with Various Levels of
Behavior Control, PhD Thesis, EPFL, Lausanne.
Table 1: The relation between rotation and velocity as well as MUSSE, S.R., BABSKI, C., CAPIN, T. and THALMANN, D., 1998.
direction number Crowd Modelling in Collaborative Virtual Environments, ACM VRST
/98. Taiwan
Direction Rotation value MUSSE, S. R., and D. THALMANN. 1997. A Model of Human Crowd
Velocity value
number in Behavior: Group Inter-Relationship and Collision Detection Analysis.
0 North ( 0.0 , 0.0 , -0.5 ) Proceedings of the Eurographics Workshop on Computer Animation
1 North west ( -0.5 , 0.0 , -0.5 ) x -3/4 and Simulation, September, Budapest, Hungary.
2 West ( -0.5 , 0.0 , 0.0 ) x -1/2 OVERMARS, M. H.. 2002. Recent Developments in Motion Planning.
3 South west ( -0.5 , 0.0 , 0.5 ) x -1/3 International Conference on Computational Science (3). Pp.313
4 South ( 0.0 , 0.0 , 0.5 ) 0 REYNOLDS, C.W., 2000. Interaction with Groups of Autonomous
5 South east ( 0.5 , 0.0 , 0.5 ) x 1/3 Characters. Proceeding of Game Developers Conference 2000, CMP
6 East ( 0.5 , 0.0 , 0.0 ) x 1/2 Game Media Group (formerly: Miller Freeman Game Group), San
7 North east ( 0.5 , 0.0 , -0.5 ) x 3/4 Francisco, California, pp. 449-460.
8 Stop ( 0.0 , 0.0 , 0.0 ) 0 STILL, G., K., 2000, Crowd Dynamics, PhD Thesis, Warwick University.
THALMANN, D., MUSSE, S.R, KALLMANN, M., 2000. From
Individual Human Agents to Crowds. INFORMATIK/
6 Conclusion INFORMATIQUE, No1, 2000.
THOMPSON, P.A., MARCHANT, E.W., 1995, A Computer-model for
This paper has discussed the importance of multi-agent the Evacuation of Large Building Population, Fire Safety Journal,
interaction, but the concentration has been on the co-ordination of 24(2): 131-148.
agents to move together as a group or crowd. Co-ordination will TU, X., 1996. Artificial Animal for Computer Animation: Biomechanic,
result in the generation of alternative paths if such paths exist. The Locomotion, Perception and Behavior. PhD. Thesis. University of
procedure for co-ordinating path planning for multiple agents in Toronto.
virtual environments has been introduced. This procedure is TU, X. and TERZOPOULOS, D., 1994. Artificial Fishes: Physics,
Locomotion, Perception, Behavior. Proc. Siggraph 94, ACM Press,
derived from traditional path planning techniques developed for
New York, pp. 43-50.
isolated agents, based on the A* algorithm. This solution is a
ULICNY, B. and THALMANN, D. Crowd simulation for interactive
generic approach to include semantic information in multiple
virtual environments and VRtraining systems, Proc. Eurographics
agent movement.
Workshop on Animation and Simulation, pp. 163-170, Springer-
Verlag, 2001
References WATT, A. and WATT, M. (1992). Advanced Animation and Rendering
Techniques. ACM Press.
ABD LATIFF, M.S. and CAVAZZA, M., 2000. Synchronous Path YOKOO, M. and KITAMURA, Y., 1996. Multiagent Real-Time A* with
Planning for Multi-Agent Co-ordination. Proceedings of the VSMM Selection: Introducing Competition in Cooperative Search.
2000 Conference. Gifu, Japan. International Conference on Multi-Agent Systems (ICMAS-96), pp.
BANDI, S. and CAVAZZA, M., 1999. Integrating World Semantics into 409-416, 1996.
Path Planning Heuristics for Virtual Agents. In Proceedings of VA'99. ZHANG, H. and WYVILL, B., 1997. Behavioral Simulation in Voxel
Salford, UK. Space. Computer Animation'97, University of Geneva.

281

You might also like