The Open Agent Architecture: A framework for building distributed softwaresystems

Citation
Dl. Martin et al., The Open Agent Architecture: A framework for building distributed softwaresystems, APPL ARTIF, 13(1-2), 1999, pp. 91-128
Citations number
23
Categorie Soggetti
AI Robotics and Automatic Control
Journal title
APPLIED ARTIFICIAL INTELLIGENCE
ISSN journal
08839514 → ACNP
Volume
13
Issue
1-2
Year of publication
1999
Pages
91 - 128
Database
ISI
SICI code
0883-9514(199901/03)13:1-2<91:TOAAAF>2.0.ZU;2-5
Abstract
The Open Agent Architecture (OAA), developed and used for several years at SRI International, makes it possible for software services to be provided t hrough the cooperative efforts of distributed collections of autonomous age nts. Communication and cooperation between agents are brokered by one or mo re facilitators, which are responsible for matching requests,from users and agents, with descriptions of the capabilities of other agents. Thus it is not generally required that a user or agent know the identities, locations, or number of other agents involved in satisfying a request. OAA is structu red so as to minimize the effort involved in creating new agents and "wrapp ing" legacy applications, written in various languages and operating on var ious platforms; to encourage the reuse of existing agents; and to allow for dynamism and flexibility in the makeup of agent communities. Distinguishin g features of OAA as compared with related work include extreme flexibility in using facilitator-based delegation of complex goals, triggers, and data management requests; agent-bused provision of multimodal user interfaces; and built-in support for including the user as a privileged member of the a gent community. This article explains the structure and elements of agent-based systems con structed using OAA. The characteristics and use of each major component of OAA infrastructure are described, including the agent library, the Interage nt Communication Language, capabilities declarations, service requests,faci litation, management of data repositories, and autonomous monitoring using triggers. To provide technical context, we describe the motivations for OAA 's design, and situate its features within the realm of alternative softwar e paradigms. A summary is given of OAA-based systems built to date, and bri ef descriptions are given of several of these.