How Agents do it in Stream Logic Programming
Matthew M. Huntbach, Nicholas R. Jennings, Graem A. Ringwood · ePrints Soton (University of Southampton) · 1995
The key factor that will determine the speed and depth to which multi-agent systems penetrate the commercial marketplace is the ease with which applications can be developed. One approach is to use general purpose languages to construct layers of agent level constructs. Object-oriented languages have been advocated as appropriate for the complexity of distributed systems. According to Gasser and Briot [1992], the key problem with the common forms of object based concurrent programming is the fixed boundaries they give to agents are too inflexible. They do not reflect either the theoretical positions emerging in Multi-agent systems, MAS, nor the reality of multilevel aggregations of actions and knowledge. This paper advocates the use of a rather different type of object based concurrent language, stream logic programming, SLP, that does not have this drawback. 1 Object Based Concurrent Programming The key factor that will determine the speed and depth to which multi-agent systems, MAS, penetrate the commercial marketplace is the ease with which applications can be developed. The few agent applications that, presently, exist are hand-crafted from scratch for each new problem, [e.g. Jennings, 1994]. This means they have a high overhead as the relatively complex infrastructure for agent computing needs to be put in place before the rest of the application can be constructed. A further impediment to the take up of MAS is many of the tools and techniques that are currently being deployed appear ill-suited to the problem- they are not designed for easy and concise expression of the problem, nor the concomitant complexity, of agents and agent interactions. One way of alleviating these problems is to provide high level constructs and primitives that facilitate the implementation of agents and multi-agent systems. There are, essentially, two ways of doing this. Firstly, new languages are proposed in which agent-level features and interactions are primitives. For example, Shoham's [1990] agent-oriented paradigm involves programming agents directly with intentional notions like beliefs and