Title: The Design of Multi-Agent Systems

Author: Eric Werner, Ph.D.

Contact: eric.werner@cellnomica.com

Abstract and Introduction

In the last few years a new research paradigm has come into the international arena. The area of distributed artificial intelligence (DAI) and multi-agent systems (MAS) has gained major importance as a paradigm for computer scientists as well as other disciplines all over the globe. What makes the area so fascinating and attractive? Why are researchers from such diverse disciplines as computer science, robotics, linguistics, mathematical logic, organization theory, computer supported cooperative work, human computer interaction, economic theory, communication theory, biology, sociology, social psychology and philosophy drawn to this new science?

Perhaps the primary reason for its almost universal interest is that distributed AI and multi-agent systems concentrate on a theme of central importance to human beings, namely, their communicative, cooperative and social nature. For the goal of distributed artificial intelligence and multi-agent systems is to understand the cooperation and the organization of groups and even societies of agents. The scale and complexity of the agents range from very simple agents to highly sophisticated systems.

A second reason is that our world is getting very complicated. We need new concepts and practical methods to coordinate groups of men and groups of computer-controlled machines. We live in a highly decentralized, distributed multi-agent world. Designers of software and hardware must confront this new world of distributed agents. Since the behavior of distributed systems of agents is very complex, we need new theories, methods and tools to understand, specify, design, construct, and verify such systems. The verification of the correctness of various properties of a system becomes most important when human lives are at stake, as is the case, for example, in multi-agent approaches to air traffic control. Economical considerations also play a role when multi-agent systems are used to achieve factory scheduling and telecommunications management.

As the tasks that computers are supposed to solve become more complex, the design and implementation of software and hardware to perform the tasks can become a nightmare. Systems are built that are incoherent, unreliable, excessively expensive and sometimes dangerous. Social responsibility demands that we begin to use systematic methods in multi-agent system design.

This introduction is a modest attempt to at least make a start in the direction of building well structured multi-agent systems with well specified interfaces at various levels of the design architecture. We hope this will bring us closer to linking multi-agent system design with international standards for specifying and verifying classical, simpler distributed systems. We will focus on the relationships of the designer, systems programmer, applications programmer and the user of a multi-agent system. Thus, we place the multi-agent system in a social context of a larger more heterogeneous multi-agent system. We will not focus on the levels of design of a multi-agent system itself, which we will call the object system (see below), except in so far as they are relevant to the interactions with external agents (e.g., the designer, systems programmer, applications programmer, and end user).