\$

% \$

&'

 #! 

\$ &' %
 

" 

 

&'

 

current context shared representation (dos Santos França, 2010).

 
 #!



#! 

> 

Fig. 6. General Overview of the Person Agent.

3.1.2.1 Reception and Data Gathering Module

**-**

()) \* 

&'

 

&'

&'

#!

3.1.1.4 Collective mind

**3.1.2 Person agent architecture**

Figure 6.

Module.

2010).

The module that manages the information bases and the rule set of the Person agent is the Hybrid Belief-Knowledge Management Module (HBKMM). The information can be modeled by a stochastic, logical or a fuzzy approach that is used because some information kept by the HBKMM is imprecise and incomplete by nature. Since there is fuzzy information, a Fuzzy Process is also required so the information can be fuzzified and de-fuzzified according to the agent's demand (dos Santos França, 2010).

The Rules and Information Repository groups the Information Store that keeps the beliefs, knowledge and the micro collective representation, and the Rule Set which holds the Person agent's general behavioral rules.

The Information Storage holds deterministic (analyzed using equations or algorithms), probabilistic (that follows a stochastic uncertainty that defines whether it is truth or not or fuzzy information - that deals with the possibility of the information being truth or not in a scale.

The Knowledge Base stores the information that are treated as secure and confirmed by the agent. In model shown in (dos Santos França, 2010), if the information requires physical evidences, but the agent could not be able to get the evidences using its own perception, then the information is treated as a belief. Thus, the agent's variables can do a status change (from belief to knowledge) during the simulation.

The agent' personal features define the state of the agent. They are variables that change their value according to the information gathered by the agent and the agent's actions and processing. There are also constant features that were defined before the simulation started and their values do not change during the simulation.

An example of the agent's variable is the Dangerousness. It is a complex variable that relies on other variables of the agent, such as distance from the threat, health, the agent's experience on this kind of hazardous phenomenon, among others. Considering that this variable has fuzzy information, in order to be fuzzified and de-fuzzified a fuzzification table (Table 1 is used. Figure 7 shows how a graphical view of such table.


Table 1. Dangerousness Levels for Fuzzification.

Fig. 7. Fuzzification Graph

running over people. Functional rules lose their strength (mostly because permissiveness is

Simulating Collective Behavior in Natural Disaster Situations: A Multi-Agent Approach 453

When the agents define a goal and an object for action, the macro collective representation

This step is called social contagion (Fig. 2, item 6) because the communication and interaction among agents are in such condition that some individuals - not yet engaged in collective behavior - are attracted by the group, and they are induced to be part of this process. The reactive rules become the strongest rules for the agent. Since the permissiveness is high, the agents can choose actions treated as socially improper. Dynamic rules, such as learning how

Finally, the collective panic behavior (Fig. 2, item 7) is installed when the agents choose a line of action to be followed by the collectivity. The agents are fully engaged in the collective

The ComC receives all requests for communication from the CogC and the CBC and puts

Whenever the agent needs to send a message to the other agents, this module is requested. The MSM receives the message from the COMMUNICATION CORE. Inside the MSM the MESSAGE FORMATTER prepares the message to be dissipated on the environment by encoding, adding other relevant data, such as the message format (using an ACL) and how it should be expressed in the environment: if it is a gesture or a speech and how the message mood is

The computation model is the transposition of the conceptual model to the computational realm. In order to achieve such transition, there are two major choices. The first choice is building the whole simulation program and framework by hand. In other words, the developer could write all the elements of the simulation and a framework to manage the

This simulation was entirely written in the Java programming language. As it was described in Section 2.2, each agent (Person, Exit, Threat and Obstacle) was modeled as a Java class.

The framework used to implement this model was the Swarm Framework, found at (SwarmTeam, 2008). The database engine used to store the simulation statistical data was the HSQLDB (Hsqldb Development Group, 2009), a free and open-source database engine

A simple log system was also designed and it could be set up to store step-by-step state data for all agents or just for a set of them. The log data was stored using the YAML standard for

to escape are limited (dos Santos França, 2010; dos Santos França et al., 2009).

behavior, and they will stay on that condition until they do not feel threatened.

those requests in a queue for being dispatched by the MESSAGE SENDER MODULE.

rising) and reactive rules get stronger.

3.1.2.4 Message Sender Module (MSM)

(lovely, cold, etc.) dos Santos França (2010).

better human readability than CSV or XML.

simulation.

written in Java.

**3.2.1 Implementation details**

**3.2 Bring the concept to life: Computational model**

starts to develop and to establish.

The Rule Set has all the rules that the Person agent may perform during the simulation. An example of rule is "Establish the Agents' Pressure Limit" that updates how much pressure the agents can hold based on their individual size. Listing 1 describes how this rule is performed.

```
✞
1 on the simulation's setup process
2 do
3 foreach agent in worldAgents do
4 agent.pressLimit = agent.size * 2 * PI * PRESS_LIMIT_FACTOR
5 endfor
6 end
✡✝ ✆
```
Listing 1. Establish the Agents' Pressure Limit.

### 3.1.2.3 Social-Cognitive Module

This module is responsible for coordinating the agent PERSON other modules' actions, managing their autonomous and private process. It is made of the following cores: COGNITIVE CORE (COGC), COLLECTIVE BEHAVIOR CORE (CBC) and COMMUNICATION CORE (COMC).

The CogC stands in continuous processing, managing information and guiding actions so the agent can pursue its goals. As long as the individual is in a situation that does not pose as a threat to its life (see Fig 2, item 1), the CogC leads the agent to a certain behavior that it accepts the rules and roles established in the society. However, if an event that poses a threat is triggered, the CogC passes his duties to the CBC. This replacement makes the agent act in a collective way, engaging in the collective behavior. Also, the CBC deals with the agent's collective behavior state machine.

In order to quantify the threat, the agent checks his experience and the hazardous level he assigned for the current situation. Up to that moment, the functional rules remain strong, and the reactive ones still remain weak. The individual does not have enough information to go to a specific line of action. Thus, in order to go to the next step (social unrest), the uncertainty level assigned for the situation must be higher than a certain threshold, which implies that the agent doesn't know what is happening, so he feels that he needs more information about the event (dos Santos França, 2010; dos Santos França et al., 2009).

When the agent goes to the social unrest state (Fig. 2, item 2), he looks for information that helps him to analyze what is going on. Its uncertainty level rises since it is unable to understand the event by himself. Thus, he , so it engages in the milling process (Fig. 2, item 3). At this point, the agent increases his communication with the others, trying to build his own MICRO COLLECTIVE REPRESENTATION (Fig. 2, item 4). At the same time the personal value variable is affected, increasing the agent's acceptance for external thoughts. The agents become less aware of themselves as individuals and more aware of the others. The dynamic rules (e.g. learning how to perform an operational task) become weaker because the sense of urgency is stronger in a dangerous situation than in an ordinary condition dos Santos França (2010); dos Santos França et al. (2009).

Collective excitement (Fig. 2, item 5) begins when the permissiveness starts to interfere on the agent's choices. At this point the agents can choose socially unacceptable actions, such as running over people. Functional rules lose their strength (mostly because permissiveness is rising) and reactive rules get stronger.

When the agents define a goal and an object for action, the macro collective representation starts to develop and to establish.

This step is called social contagion (Fig. 2, item 6) because the communication and interaction among agents are in such condition that some individuals - not yet engaged in collective behavior - are attracted by the group, and they are induced to be part of this process. The reactive rules become the strongest rules for the agent. Since the permissiveness is high, the agents can choose actions treated as socially improper. Dynamic rules, such as learning how to escape are limited (dos Santos França, 2010; dos Santos França et al., 2009).

Finally, the collective panic behavior (Fig. 2, item 7) is installed when the agents choose a line of action to be followed by the collectivity. The agents are fully engaged in the collective behavior, and they will stay on that condition until they do not feel threatened.

The ComC receives all requests for communication from the CogC and the CBC and puts those requests in a queue for being dispatched by the MESSAGE SENDER MODULE.

3.1.2.4 Message Sender Module (MSM)

18 Will-be-set-by-IN-TECH

The Rule Set has all the rules that the Person agent may perform during the simulation. An example of rule is "Establish the Agents' Pressure Limit" that updates how much pressure the agents can hold based on their individual size. Listing 1 describes how this rule is performed.

<sup>4</sup> agent.pressLimit = agent.size \* 2 \* **PI** \* **PRESS\_LIMIT\_FACTOR**

✡✝ ✆

This module is responsible for coordinating the agent PERSON other modules' actions, managing their autonomous and private process. It is made of the following cores: COGNITIVE CORE (COGC), COLLECTIVE BEHAVIOR CORE (CBC) and COMMUNICATION

The CogC stands in continuous processing, managing information and guiding actions so the agent can pursue its goals. As long as the individual is in a situation that does not pose as a threat to its life (see Fig 2, item 1), the CogC leads the agent to a certain behavior that it accepts the rules and roles established in the society. However, if an event that poses a threat is triggered, the CogC passes his duties to the CBC. This replacement makes the agent act in a collective way, engaging in the collective behavior. Also, the CBC deals with the agent's

In order to quantify the threat, the agent checks his experience and the hazardous level he assigned for the current situation. Up to that moment, the functional rules remain strong, and the reactive ones still remain weak. The individual does not have enough information to go to a specific line of action. Thus, in order to go to the next step (social unrest), the uncertainty level assigned for the situation must be higher than a certain threshold, which implies that the agent doesn't know what is happening, so he feels that he needs more information about the

When the agent goes to the social unrest state (Fig. 2, item 2), he looks for information that helps him to analyze what is going on. Its uncertainty level rises since it is unable to understand the event by himself. Thus, he , so it engages in the milling process (Fig. 2, item 3). At this point, the agent increases his communication with the others, trying to build his own MICRO COLLECTIVE REPRESENTATION (Fig. 2, item 4). At the same time the personal value variable is affected, increasing the agent's acceptance for external thoughts. The agents become less aware of themselves as individuals and more aware of the others. The dynamic rules (e.g. learning how to perform an operational task) become weaker because the sense of urgency is stronger in a dangerous situation than in an ordinary condition dos Santos França

Collective excitement (Fig. 2, item 5) begins when the permissiveness starts to interfere on the agent's choices. At this point the agents can choose socially unacceptable actions, such as

✞

<sup>2</sup> **do**

<sup>6</sup> **end**

<sup>5</sup> **endfor**

CORE (COMC).

3.1.2.3 Social-Cognitive Module

collective behavior state machine.

(2010); dos Santos França et al. (2009).

event (dos Santos França, 2010; dos Santos França et al., 2009).

<sup>1</sup> **on** the simulation's setup process

<sup>3</sup> **foreach** agent **in** worldAgents **do**

Listing 1. Establish the Agents' Pressure Limit.

Whenever the agent needs to send a message to the other agents, this module is requested. The MSM receives the message from the COMMUNICATION CORE. Inside the MSM the MESSAGE FORMATTER prepares the message to be dissipated on the environment by encoding, adding other relevant data, such as the message format (using an ACL) and how it should be expressed in the environment: if it is a gesture or a speech and how the message mood is (lovely, cold, etc.) dos Santos França (2010).
