An Infrastructure for Engineering Cooperative Agents

Currently, systems of cooperative agents (multi-agent systems), possessing the capabilities of autonomy, adaptation, and cooperation, are being used in an increasingly wide variety of application areas, and the conversation-based multi-agent system design is the major design for those multi-agent systems. Supposedly, conversation-based multi-agent systems should have been prevailing enough for tackling dynamic aspects of problems in a variety of domains. However, for industries, multi-agent systems are still found to be in the birth stage where they only show their new values in anticipation for further explorations and improvements in order to attract critical mass of users of information executives or software developers. Nevertheless, what are the success factors that can result in a critical mass of multi-agent system designers? This paper shows one possible success factor — an infrastructure for the bottom-up design of multi-agent systems. The bottom-up design makes it possible for agents to be reassembled into multi-agent systems and reused as needed. However, what do we need to successfully support the bottom-up design? This paper is the first attempt to present a tool that fully supports the bottom-up design of multi-agent systems. The tool has three parts. The first part is a wrapper that wraps each agent so that it exempts the designers from the careful detailed deployment of the inter-relationships between cooperation knowledge and task knowledge inside the agent. This wrapper should be independent of the functions of agents. The second part is an environment that can support the wrapper to automate the cooperation process on behalf of agents. The third part is a graphical assembly panel for developers to visually configure wrapped agents residing at different places of the Internet into a working multi-agent system.