• Nenhum resultado encontrado

4.3 Basic description of ABM components

4.3.1 Agents

determining courses of action (prediction) or making analysis should be done with carefulness (Castle and Crooks, 2006, pp 16, Twomey and Cadman, 2002, pp 60).

Additionally, ABM can establish a causal link between variables, but is not able to provide any insight on the reasons for that consequence.

behaviours”. Truszkowski (2006, pp 6) considers that the agent “exists in an environment and, in some cases, may itself be considered to be a contributing part of the environment [...]. The agent operates based on some precepts and it generates “actions”

that could affect the environment”. Or even, Jager (2000, pp 27) writes that “an agent is being considered as a system that tries to fulfil a set of goals in a complex, dynamic environment, and ‘agent’ thus may refer to e.g., bacteria, plants, insects, fish, mammals, humans households, firms and nations”.

Bradshaw (1997, pp 5, 8) acknowledges the lack of all-embracing definition, but enumerates characteristics an agent may exhibit:

• Reactivity – ability to sense and act;

• Heterogeneity – ability of embodying unique properties (there is no need to develop typical or mean individuals) (Castle and Crooks, 2006, p 8);

• Autonomy – ability to pursue a goal by itself. Wooldridge (2006, pp 15) refers that autonomy is the only property universally considered as being central to the concept of agent;

• Collaborative behaviour – ability to concert, namely: cooperate, coordinate and negotiate (Wooldridge, 2006, pp 3) with other agents to achieve a common goal;

• Knowledge level communication ability – ability to communicate with other agents or people (using more resembling human like language);

• Inferential capability – ability to use past information and abstract reasoning to generate novel ways (methods, behaviour, etc.) to achieve goals or perform tasks;

• Temporal continuity – ability of maintaining an identity or state over time;

• Personality – ability to reveal unique attributes of a believable character such as emotion;

• Adaptivity – ability to learn and improve with experience;

• Mobility – ability to decide a direction and move along it.

Aiming to introduce some order into the field of research on agents, taxonomies have been developed by different authors. For example: Nwana created seven categories (Nwana, 1996, pp 211-213), being: collaborative, interface, mobile, information, reactive, hybrid and smart; Gilbert classified agents along three dimension, namely:

agency, mobility and intelligence (Bradshaw, 1997, pp 9), or Franklin and Graesser created the following taxonomy tree (Bradshaw, 1997, pp 11) (Figure 4.5).

In face of the absence of a widespread definition, the author of this research work has adopted the following definition of agent. An agent is an independent entity, with precise boundaries, that exhibits autonomous behaviour and with both sensorial and communicational capabilities.

This definition requires some further explanations. So, firstly, an agent should have a clear boundary, therefore, when examining an agent based model, the agents should be easily identified. Secondly, other agents (or external entities) should not have access to the interior136

136 Interior understood as the agent’s reasoning mechanism, goals (if any) or other individual information.

of the agent but to their reactions and communications. Thirdly, an agent should be able to interact with her surroundings in at least one of two channels, either capturing information from the environment – sensorial capability – or via direct communication with other agents – communication capability. Fourthly, an agent should exhibit autonomous behaviour, which entails that she must be embodied with some sort of internal mechanism to enable her interpreting and reacting to external information in the pursuit of one or more goals.

Figure 4.5 – Franklin and Graesser’s agent taxonomy Source: Bradshaw (1997, pp 11)

Autonomous Agents

Biological Agents

Robotic Agents

Software Agents

Artificial Live Agents

Viruses Entertainment

Agent Task Specific

Agent

Having presented the definition of agent, we now describe the basic architecture of an agent. The internal functions of an agent are depicted in Figure 4.6, being: information analysis, decision making, goals, memory and reaction. Only for purposes of clarity, each function is presented separately.

The first function – information analysis – refers to the ability to translate the information received or captured through the sensorial receptor, into a format understandable by the other building blocks. The information is thereafter conveyed into the next function – decision making. This function is responsible for taking the actions. It is done upon information (either recorded or learned), desired goals, and a code of conduct and ethic rules137. It is therefore the generator of the agent’s behaviour.

Diverse techniques and methods have meanwhile been developed to emulate either realistic or specific behaviours138

137 The code of conduct and ethic rules define the agent’s personality and, ultimately, her positioning within environment and relationships with others.

138 Like for example, application of game theory principles. More information in Tesfatsion and Judd (2006).

. The function goals encompasses the agent’s goals.

Goals may be of either short-, medium- or long-term. Moreover, new goals can be generated from intermediary results or achievements. In social sciences, or whenever the object of modelling is either people or private companies, goals tend to play an important role. This because agent’s actions and decision are driven on the pursuit of her goals.

communication channel

Agent

sensorial receptor

communication channel information

analysis

decision making

goals

reaction

Figure 4.6 – Basic architecture of an agent

memory

Source: author

The function – memory – concerns the body of information of the agent, which is built over time depending upon her interactions (representing her experience) with the other agents and the environment, and it is used in the decision making building block. The information kept in memory can be of either static nature (if it does not change over time, like for example, a vehicle’s capacity) or dynamic nature (if it may change over time, like for example, the number of transport services accomplished). Dynamic information is updated regularly or whenever a new decision is taken. This building block recreates an agent’s learning capability, by gathering information over time and enabling the agent to take decision on a progressively large amount of past information.

The final function – reaction – translates the decision made by the decision making building function into action. The action can either imply a communication with other agent or agents, or to solely concern the agent itself (for example: moving from one position to another).

The decision making function may require inputs from other agents. As such, this function could generate a reaction (materialised through an action of the agent or in communication with other agents) and stay on hold for the other agent’s reactions. And several loops may be required until the completion of a decision making process.

The specific architecture of an agent (that is, the way the functions are grouped and organised) depends upon the complexity of information to handle, the number of tasks or decisions to make, the goals to achieve and their complexity, or the type or nature of actions to take. Furthermore, for modelling purposes, such as to increase the model’s legibility or to reduce the computing time, other functions could be added. The final architecture is the result of the specific nature of the problem, the purposes to attain, and the modeller’s personal experience. Of paramount importance is to ensure a fast and reliable model.

We may discuss if the presence of every of these functions is necessary to label an entity as agent; or if, conversely, the absence of one or more is reason enough not to label an entity as agent. From the author’s point of view as long as the entity fits into the definition above, it should be considered an agent (regardless the type and amount of building blocks). An entity that only presents some of the properties of an agent should be called as proto- or pseudo-agents (or even entities).