, Elblag University of Humanities and Economy
Abstract—A review of Software Agent-Based Applications, Platforms and Development by Kits Rainer Unland, Matthias Klusch, and Monique Calisti, eds.
Software Agent-Based Applications, Platforms and Development Kits
Rainer Unland, Matthias Klusch, and Monique Calisti, eds.
Birkhäuser Verlag, 2005
Intelligent agent and multiagent systems are an interesting, dynamic area of information technology. The usual focus of interest in MASs is their perceived high-level conceptual capabilities. However, many agent-related research projects, both academic and commercial, focus on software tools and their applications, and their number is growing. Software Agent-Based Applications, Platforms and Development Kits appeared just in time to provide a comprehensive overview of existing software agent development kits and environments and their applications.
The book consists of 18 papers divided into seven chapters. The first chapter covers agent platforms; it starts by describing the well-known JADE (Java Agent Development framework) environment. Written by JADE developers, the paper discusses JADE's kernel architecture, which enables the deployment of platform-level services (such as communication, replication, persistence, and security) at runtime and the use of JADE in mobile networks. This paper also contains examples of possible application areas, such as
The second paper describes the architecture of A-globe, an agent platform designed for MAS prototyping and application development. The authors claim that A-globe provides the same level of services as JADE, Cougaar (Cognitive Agent Architecture), FIPA-OS (Foundation for Intelligent Physical Agents-Open Source), and JACK and describe in detail its components:
This paper includes numerous diagrams, which help explain technical details. It also contains the results of the authors' experiments comparing the performance of JADE, FIPA-OS, ZEUS, JACK, and A-globe. The paper finishes by describing two simulations implemented in A-globe: ACROSS (Agent Complex Reasoning Simulation System) and NAIMT (Naval Automation and Information Management Technology).
The last paper in this chapter presents an approach to writing MASs using the Erlang programming language (resulting in development of eXAT, the Erlang Experimental Agent Tool). The authors give a brief overview of the proposed platform and examples (such as code for an agent behavior).
The second chapter is devoted to development environments. One paper discusses the software engineering challenges developers face and demonstrates how the Living Systems Technology Suite's features and architecture address those challenges. Another paper describes an interesting software tool called MASDK (Multi Agent System Development Kit) that can support industrial MASs' complete life cycle—analysis, design, implementation, deployment, and maintenance. The authors compare their proposed system, which is based on the Gaia methodology, with agentTool, PTK (PASSI Toolkit), JACK, and ZEUS. A third paper discusses an integrated development environment and methodology for MAS engineering that's based on the concept of electronic institutions. The authors define electronic institutions, then describe their proposed tool (Double Auction Dialog Framework) and give examples of its use.
The third chapter discusses frameworks. The first paper's authors claim that two important categories of platforms exist—middleware and reasoning-centered—each with specific merits and problems. Whereas most middleware platforms don't address the internal agent architecture and instead concentrate on simple tasks, reasoning-centered platforms focus on agent behaviors and try to achieve rationality and goal-directness. The authors propose Jadex, which supports both platform types, as a middle-of-the-road solution. They give detailed information about its architecture and compare it with JACK. The chapter's second paper presents the CAFnE (Component Agent Framework for Domain Experts) Toolkit, which aims to make modifying and deploying agent systems easier for domain experts. The authors describe the proposed framework's functions using the example of designing a weather alert system.
The next chapter, called "Tools for the Integration of Web-Services and Agent Technology," begins with a paper discussing the WSDL2Agent Tool, which was created in response to Web services' growing popularity and to recent research on Grid computing, the Semantic Web, ontology modeling, and service integration. WSDL2Agent can help integrate Web services into agent systems and lets agent based-system developers add intelligent functions to these services by combining and extending them. Similarly, the second paper discusses the WS2JADE tool, which has the same goals but is based on JADE agents. This paper's authors also present a simple example of Web service management with JADE agents.
The fifth chapter covers tools supporting agent communication and integration. The first paper discusses the System for Analysis of Multi-Issue Negotiation (SAMIN). This system aims to support and formally analyze multi-issue, (partially) closed, one-to-one negotiations without mediators. To illustrate their proposed system's properties, the authors give an example of using SAMIN to analyze the automated-negotiation process. The next paper also discusses agents in negotiations. It concerns design and implementation of voice and mobile user interfaces for accessing information in an e-marketplace called FuzzyMAN (Fuzzy Multi-Agent Negotiation). The last paper in this chapter presents a layered model of agent communication in the context of the FIPA agent architecture. The authors consider agent-to-agent wireless communication and analyze the performance of message transport protocols, message envelopes, agent communication languages, and interaction protocols.
The next-to-last chapter is devoted to agent migration. The first paper presents a Java-based environment for creating and running mobile, autonomous agents. To illustrate the most important points, the authors use the NetDoctor application, which employs mobile agents for enhancing SNMP (Simple Network-Management Protocol) network management. The second paper describes the Tracy toolkit, which provides fundamental functions common to other toolkits and abstracts from their possible services (that is, these services are developed as plugins and can be started and stopped during runtime). This makes it possible, for example, to replace Tracy's migration service with another implementation and even to run two different migration services in parallel in a single application.
The last chapter contains three papers that focus on agents in applications. The first describes an abstract application called Packet-World, which is used to investigate, experiment with, and evaluate fundamental concepts and mechanisms related to MASs situated in an environment. The next paper discusses a novel setting of a large-scale logistics problem with multiple competing companies. Finally, the last paper presents a detailed description of TeamWorker, a multiagent-based computer cooperative-support system designed to help overcome the difficulties mobile workers face (such as traffic jams or searching for the shortest or fastest route from one place to another). The authors analyze the potential benefits of using agents in real-life mobile business processes.
Overall, this book would be particularly useful for readers who want to assess the maturity and state of the art of applied software agent technology. Each paper contains URLs and contact information so that you can find the described software (if it's available) and know whom to contact if you have questions. Furthermore, most papers include an extended bibliography pertinent to their particular subject area.
Cite this article: Maria Ganzha, "Software Agent Technology: The State of the Art," review of Software Agent-Based Applications, Platforms and Development by Kits Rainer Unland, Matthias Klusch, and Monique Calisti, eds., IEEE Distributed Systems Online, vol. 8, no. 1, 2007, art. no. 0701-o1005.