• No results found

5.10

Agent Architecture

In Section 5.8.2 it was stated that there is very little FIPA standardisation of how an agent should be implemented, granting a lot of flexibility to the developer. This section investigates some agent design methodologies.

5.10.1 Reactive Agents

A reactive agent will make action decision based entirely on the state of the environment, rather than using deductive reasoning techniques to determine the best action. This is often achieved using a lookup table, which matches states to actions. However, there are other methods that can be used.

Subsumption Architecture

The subsumption architecture is a commonly-used framework for developing reactive agents in a multi-agent system. It was developed by Brooks (1991), with key principles being introduced in Brooks (1986), and states the following three hypotheses:

1. Intelligent behaviour can be generated without explicit representations of the kind that symbolic AI proposes.

2. Intelligent behaviour can be generated without explicit abstract reasoning of the kind that symbolic AI proposes

3. Intelligence is an emergent property of certain complex systems.

The principle behind the subsumption architecture is simple; the behaviour of an agent is determined by the state it is in. However, behaviours are arranged into layers which determine their priority. The action taken will always be that of the highest priority state whose conditions are not met. An example of a subsumption architecture was first introduced in Brooks (1986) for robust control of a mobile robot that seeks to develop maps of its surroundings by exploration of its environment. A diagram of the control system is depicted at Figure 5.6.

5.10. Agent Architecture 106

reason about behaviour of objects plan changes to the world

identify objects monitor changes build maps explore wander avoid objects Sensors Actuators

Figure 5.6: Subsumption architecture for a mobile robot control system. Adapted from Brooks (1986)

The power of the subsumption architecture lies in its simplicity, both computationally and conceptually. It can be used to produce seemingly intelligent behaviour from simple rules, similar to the principles discussed in Section 1.1.

Fuzzy Rule Sets for Decision Making

Another approach that falls under the area of reactive agents is the use of fuzzy rules to determine the most appropriate action. This can be implemented by developing a rule set for each action and, based on a defuzzification process, determining which action has the highest output and hence the most urgency. This was the approach taken by Pay (2008) when developing a behavioural action decision process for lions and wildebeest in a predator-prey savannah landscape simulation.

The rule sets were informed by animal state. Parameters such as fear, hunger and tiredness were inputs to the fuzzy inference engine which gave a score to each action which included eat, rest, run for the wildebeest and additional actions such as hunt for the lions.

Whilst the resulting simulation did model the behaviour of the animals fairly well, the more engaging result of the research was the ability to alter and fine tune the emergent behaviour of many agents in the system with minor changes to the rule set.

5.10. Agent Architecture 107

5.10.2 Reasoning Agents

Reasoning agents are most commonly split into two categories: deductive reasoning agents and practical reasoning agents. Deductive reasoning agents act as theorem provers, purely using logical operators to come to a conclusion about a situation, based on the information they have. Practical reasoning agents may also use logical operations to come to conclusions about certain aspects of the situation, but there is also an aspect of balancing conflicting decisions towards an end goal. In this sense, it is much more goal-orientated than deductive reasoning. Bratman (1990) describes practical reasoning as follows:

Practical reasoning is a matter of weighing conflicting considerations for and against competing options, where the relevant considerations are provided by what the agent desires/values/cares about and what it believes.

Whilst the study of deductive reasoning is interesting, it falls more into the category of predicate logic and will not be considered further. Therefore, from this point onwards, the use of the term reasoning agents will refer to practical reasoning agents.

BDI architecture

The abbreviation BDI denotes the three attitudes Beliefs, Desires and Intentions and is grounded in the theory that intent, beliefs and desires are inexorably linked. An example of how this is characterised might be a man deciding whether or not he wants to buy an apple. If he has a desire to eat an apple, believes apples to be cheap and his wealth to be large enough then his intention may well be to buy one. However, if the apple is replaced with a Ferrari motor car, then he may still have a desire to buy the car, but if he believes it to be expensive and his wealth too small for such a purchase, his intention would be not to buy it. This is obviously a very simple example, but it gives some scope to the terms. However, it does rely, as is pointed out by Bratman (1987), that “...our commonsense conception of intention is inextricably tied to the phenomena of plans and planning”. In other words, an agent needs to have some concept of the consequences of performing certain actions, otherwise it would be incapable of doing any such thing.

A structure for a BDI architecture was first proposed by Bratman et al. (1988) as a way of modelling rational behaviour and attempting to provide a methodology for “automating means-end reasoning” within the AI community. In their paper, the concept of plans was also

5.10. Agent Architecture 108

proposed, comprising sets of intentions so that the expected rewards of the plans could be analysed for the greatest utility. The structure was highly theoretical with implementation details left unspecified. When attempting to plug the gaps in the BDI architecture, Rao & Georgeff (1995) identify and summarise two criticisms of the structure so that they can be overcome:

First, the having of these three attitudes is attacked from both directions: classi- cal decision theorist and planning researchers question the necessity of having all three attitudes and researchers from sociology and Distributed Artificial Intelli- gence question the adequacy of these three alone. Second, the utility of studying multi-modal BDI logics which do not have complete axiomatizations and are not efficiently computable is questioned by many system builders as having little rel- evance in practice.

The testbed for their scheme was an air traffic control system which provided a setup that is both nondeterministic in its plant and in its interaction. There are potentially many different solutions to problems and often conflicting objectives. Plus, the system state can only be sensed locally rather than with a single global observer. This setup is similar to the example depicted in Figure 5.1 of Section 5.1. They detail different ways of representing the connection between beliefs, desires and intentions and use decision trees to link them so that agents can perform actions quickly and re-evaluate if the system state changes. This work, whilst focussed on a specific system, takes big steps towards formalising a structure for building BDI systems. However, it does emphasise the need for application based design rather than a one size fits all solution.

5.10.3 Hybrid Agents

Hybrid agents combine the features of reactive agents and reasoning agents for situations where the requirements state that they must be capable of both reactive and proactive be- haviour. This inherently leads to the need for some sort of behaviour structure so that an agent can switch between reactive and proactive behaviours. M¨uller et al. (1995) introduce a layering method, either horizontal or vertical for implementing hybrid agents, as shown at Figure 5.7.

5.10. Agent Architecture 109 Layer n Layer n - 1 ... Layer 1 Layer 2

a) Horizontal architecture b) and c) different kinds of vertical architectures ... Layer n Layer n - 1 ... Layer 1 Layer 2 ... Layer n Layer n - 1 ... Layer 1 Layer 2 ... Perception Action Perception Action P er ce p ti on Ac ti on

Figure 5.7: Hybrid agent architectures with layered action suggestions. Adapted from M¨uller et al. (1995)

In these examples, it is assumed that at least one of the layers will be reactive and at least one will be proactive. In Figures 5.7b and c, the control passes through all of the layers with the perception and action only interfacing with one of the layers. This allows for each layer to provide information about the strategy so that the layer that deals with action output can make a decision on what action to take. This vertical structuring provides a distinct hierarchy but lacks robustness as failure of a single layer would cause the structure to fail completely.

For the horizontal layer in Figure 5.7a, Wooldridge (2009) notes that it has appeal in its structural simplicity but that “because the layers are each, in effect, competing with one another to generate action suggestions, there is a danger that the overall behaviour of the agent will not be coherent.” For this reason, a mediator is often required to decide which layer has priority at a given time.

An example of a horizontal layered hybrid agent architecture is called the TouringMachines architecture introduced by Ferguson (1992). The structure is depicted at Figure 5.8.

5.11. Java Agent DEvelopment Framework (JADE) 110

Related documents