[Next] [Previous] [Up] [Top] [Contents]

5.3 Example 2 - Communication, Learning and the El Farol Bar Problem

5.3.3 Results and A Case Study From the Model


In the output of the model the attendance at the bar fluctuates unevenly about the critical number of patrons (see the example plot in
figure 13).

Figure 13: Number of people going to El Farol's each week in a typical run

The average fitness of the agents' models fluctuates wildly at the beginning but as the simulation progresses they settle down somewhat but not down to zero. The deviance between different models of the same agent reduces only slightly (figure 14).

Figure 14: The change in variance (in standard deviations) of the Agents' population of models over time in (another) typical run

The graph of the utilities gained shows that different agents predominate at different times during the simulation with no one agent permanently dominating the others (figure 15).



Figure 15: (smoothed) utility gained by agents over time

What is perhaps more revealing is the detail of what is going on, so I will exhibit here a case study of the agents at the end of a typical simulation.

Here I have chosen a 5-agent simulation at date 100. In this simulation the agents judge their internal models by the utility they would have achieved over the previous 5 time periods. Each agent had 40 mental models of average depth of 5 generated from the language of nodes and terminal specified in figure 16.

Figure 16: Possible nodes and terminals of the tree-structured genes

The formal languages indicated in figure 16 allow for a great variety of possible models, including arithmetic projections, stochastic models, models based on an agents own past actions, or the actions of other agents, logical expressions and simple trend projections.

The utility that agents get is 0.4 if they go when it is too crowded, 0.5 if they stay at home and 0.6 if they go when it is not too crowded (where too crowded means greater than 60% of the total population).

The best (and hence active) genes of each agent are summarised in figure 17. I have simplified each so as to indicate its immediate logical effect only. The actual genes contain much logically redundant material which may put in an appearance in later populations due to the activity of cross-over in producing later models. Also it must be remembered that other alternative models may well be selected in subsequent weeks, so that the behaviour of each agent may `flip' between different modes (represented by different models) depending on the context of the other agent's recent behaviour.



Figure 17: Simplified talk and action genes for the five agents at date 100

The effect of the genes is tricky to analyse even in its simplified form. For example agent-1 will tell its friends it will go to El Farol's if the average attendance over a previous number of time periods (equal to the number who went last time) is greater than the predicted number indicated by the trend estimated over the same number of time periods but evaluated as from the previous week! However its rule for whether it goes is simpler - it goes if it went last week*1.

You can see that for only one agent what it says indicates what it does in a positive way (agent 4) and one which will do the exactly the opposite of what it says (agent 2). It may seem that agents 1 and 3 are both static but this is not so because figure 17 only shows the fittest genes for each agent at the moment in terms of the utility they would have gained in previous weeks. During the next week another gene may be selected as the best.

The interactions are summarised in figure 18, which shows the five agents as numbered circles. It has simple arrows to indicate a positive influence (i.e. if agent-2 says she is going this makes it more likely that agent-4 would go) and crossed arrows for negative influences (e.g. if agent-2 says she will go this makes it less likely she will go). The circles with an "R" represent a random input.

Figure 18: Talk to action causation

It is not obvious from the above, but agent-2 has developed its action gene so as to gradually increase the number of `NOT's. By date 100 it had accumulated 9 such `NOT's (so that it actually read NOT [NOT [... NOT [Isaid]...]]). In this way it appears that it has been able to `fool' agent-4 by sometimes lying and sometimes not.


Modelling Bounded Rationality In Agent-Based Simulations using the Evolution of Mental Models - 17 MAR 98
[Next] [Previous] [Up] [Top] [Contents]

Generated with CERN WebMaker