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

3.1 The Set-up

3.1.2 The agents


Each agent has a population of (pairs of) expressions that represent possible behaviours in terms of what to say and what to do. This population is fixed in number but not in content. These expressions are taken from a formal language which is specified by the programmer, but the expression can be of any structure and depth. Each agent does not `know' the meaning or utility of any expression, communication or action - it can only evaluate each whole expression as to the utility each expression would have resulted in if it had used it in the past to determine whether it would go to the bar or not and the other's behaviours had remained the same. Each week each agent takes the best such pair of expressions and uses them to determine its communication and action.

Each agent has a fairly small population of such models (in this case 40). This population of expressions is initially generated according to the specified language at random. In subsequent generations the population of expressions is developed by a genetic programming [11] algorithm with a lot of propagation and only a little cross-over.

The formal language that these expressions are examples of is quite expressive. The primitive nodes and terminals allowed are shown in figure 2. It includes: logical operators, arithmetic, stochastic elements, self-referential operations, listening operations, elements to copy the action of others, statistical summaries of past numbers attending, operations for looking back in time, comparisons and the quote operator.



Figure 2. The primitives allowed in the talk and action expressions

Some example expressions and their interpretations if evaluated are shown in figure 3. The primitives are typed (boolean, name or number) so that the algorithm is strictly strongly-typed genetic program following [13].



Figure 3. Some example expressions

The reasons for adopting this particular structure for agent cognition is basically that it implements a version of rationality that is credible and bounded but also open-ended and has mechanisms for the expression of complex social distinctions and interaction. In these respects it can be seen as a step towards implementing the `model social agent' described in [3]. For the purposes of this paper the most important aspects are: that the agent constructs its expressions out of previous expressions; that its space of expressions is open-ended allowing for a wide variety of possibilities to be developed; that it has no chance of finding the optimal expressions; and that it is as free from `a priori' design restrictions as is practical and compatible with it having a bounded rationality. This is described in more detail in [8, 10].


Social Embeddedness and Agent Development - Bruce Edmonds - 30 OCT 98
[Next] [Previous] [Up] [Top] [Contents]

Generated with CERN WebMaker