Example 2 - Extending the `El Farol Bar' Model
The agent modelling approach broadly follows [7]. Thus each agent has a population of mental models, which broadly correspond to alternative models of its world. These models are each composed of a pair of expressions: one to determine the action (whether to go or not) and a second to determine their communication with other agents. Either of action or communication can be dependent upon communications received, which includes the identity of the agent the communications were received from. These internal models are initially randomly generated to a given depth. Subsequently they are developed in a slow evolutionary manner based either on the past accuracy of the models predictions or some measure of what its past success at gaining utility might be. The agent structure is shown in figure 2. Although the beliefs and goals of other named agents is not explicitly represented, they emerge implicitly in the agents' models.
Figure 2. Basic structure of an agent
Each notional week, a new population of models is produced as in a genetic programming manner [10]. In this model we are using some tree crossover but with a high degree of propagation and a few random genes introduced each week. Again I stress that this is not supposed to implement an efficient learning mechanism, but one which deliberately exhibits such qualities such as `lock-in' and path dependency. The models are evaluated according to a fitness function. The fitness function can be a measure of the past predictive success the models would have had or the utility the agents would have gained by using each model in the past. The best model is then selected and used to determine first its communicative action and subsequently whether to go to El Farol's or not.
The evolution of mental models based upon a GP mechanism is only a rough representation of learning. The cross-over operation is not very realistic for this purpose but does as a first approximation - for a critique of cross-over for these purposes, see [7].
Each model is composed of two parts: one determines what it says and the other whether it will go to El Farol's. These parts are expressions in a strongly typed language that is specified by the programmer at the start*1. A simple but real example model is shown in figure 3 below. Translated this example means: that it will tell its `friends' that it will go to El Farol's if the trend predicted over observed number going over two weeks is greater than 5/3 (the total population was 5 in this example); but it will actually go if it said it would go or if agent-3 said it will go.
Figure 3. A simple example model
The possible nodes and terminals of the action and talk models are indicated in figure 4. This language allows a great variety of possible models, including arithmetic, logic, stochastic elements, models based on what other agents have said, on what the agent itself did or said previously and mixtures of all of these. Explicit names for all agents are included in the language as well as some useful arithmetic, and logical constants.
Figure 4. Possible nodes and terminals of the tree-structured genes
The amount of utility each agent gains is determined by its action and what the other do: greatest utility is gained by going to the El Farol Bar when it is not too crowded; this is followed by staying at home; going to El Farol's when it is too crowded gains it least utility. Thus each agent is competitively developing its models of what the other agents are going to do. A successful agent learns some way of deciding to go when other do not and avoiding going when many others do.
This model can be seen as an extension of the modelling work in [1], which examines three player games with a similar structure to this model. Their model is, however simpler, for it involves no explicit communication or potential for modelling of other agents and so only touches on the social elements. Revealingly they also notice that being able to distinguish the other players (left and right) is important for complex behaviour to arise.
Generated with CERN WebMaker
Modelling Socially Intelligent Agents - Bruce Edmonds - 17 DEC 97
[Next] [Previous] [Up] [Top] [Contents]