next up previous
Next: Handling Loops Up: Discussion Previous: Discussion

Variables

The algorithm does not incorporate classical variables and variable-passing. As a matter of fact, a lot of its advantages would disappear if they would be introduced. For example, one reason a lot of search is eliminated is exactly because there are no variables in the algorithm. A first implication of the absence of variables is that one cannot specify goals using variables (e.g. goto-location(x,y)). A second implication is that all modules/operators of the domain have to be instantiated beforehand, which means that a node has to be created for every parameter.

We try to avoid the need for variables altogether, by thinking about problems in an `Agre/Chapman' like way (Agre & Chapman, 1987), i.e., using only so-called indexical-functional aspects to describe relevant properties of the immediate environment. The main idea here is that internal representations of objects in the environment are in terms of the purposes and circumstances of the agent. The module `spray-paint-self' for example only has to be instantiated with one parameter, namely `the-sprayer-I-am-holding-in-my-hand'. Because of this, it is not necessary to create new operators/modules for every new object that is introduced in the world. There is no exhaustive combination of operators and objects.

The idea of indexical-functional aspects is particularly interesting for autonomous agents because it does not make unrealistic assumptions about what perception can deliver. In particular, it does not demand that perception can produce the identity and exact location of objects. The absence of variables does constrain the language one can use to communicate with the system, but not in a too strong way. All it requires is a new way of thinking about how to tell an agent what to do. More specifically, one does not use unique names of objects when specifying goals. Instead goals are specified in terms of indexical or functional constraints on the objects involved. For example, one would not tell the agent to go to location (x,y), but one would tell the agent that the goal is to be in a location that is a doorway (a small area where it is able to `go through' a wall).



next up previous
Next: Handling Loops Up: Discussion Previous: Discussion



Alexandros Moukas
Wed Feb 7 14:24:19 EST 1996