The AARIA agent architecture: an example of requirements-driven agent-based system design

Designs for real-world agent-based systems must reflect domain requirements as well as the technical capabilities of agents. This needs-driven approach is being applied in AARIA (Autonomous Agents for Rock Island Arsenal), an industrial-strength agent-based factory scheduling and simulation system being developed for an Army manufacturing facility. A review of the operations of Rock Island in the light of broader industrial needs yields seven requirements. After introducing the AARIA agent community, we summarize each of these requirements and how AARIA supports it. More information is available at http://www.aaria. uc.edu . The AARIA Agent Community In discrete manufacturing, Parts move through a network of Unit Processes (UP’s) and Buffers. Each UP acquires one or more input Parts from Buffers of the needed types, and engages certain Resources to produce one or more output Parts into appropriate Buffers. In AARIA, we use linguistic case theory [Parunak 95] over a set of declarative sentences describing the domain to identify candidate agents, then refine this population using the requirements. Figure 1 shows the resulting community, with its flows of Parts and Engagements for Resources along orthogonal axes that intersect at UP’s. Previous research on agentbased factory control and scheduling (including our own) differs widely on what is represented as an agent: levels in a hierarchical decomposition of the factory (Butler & Ohtsubo 92, Tilley & Williams 92, Parunak 87), Resources (Shaw & Whinston 85, Baker 96, Parunak et al. 87, Heaton 94), or Parts (Maley 88, Duffie et al. 88). In AARIA, Separate full-fledged agents represent parts, resources and unit processes with substantially equal intelligence and responsibility in each type of agent. The AARIA system has a number of other important enhancements from past work in multi-agent manufacturing. The system incorporates new features for schedule optimization and fault recovery. Unlike many past systems, these agents are being implemented in an agent infrastructure that allows true agent behavior by supporting true broadcast and multicast communications, subject based mail handling, multithreaded agent activity, multi-platform instantiation, agent migration, and the implementation of multiple scheduled activities within an agent. Also, the system is being implemented with dual functionality so it can run a real factory or run in simulation mode. The sections below outline AARIA's seven design requirements and highlight other enhancements to past work. Meeting the AARIA Requirements Uniformity (An operation at the boundary of AARIA interacts with external suppliers or customers in the same way that it does with internal ones.)—Both an external customer and an internal UP draw from Buffers, and both an external supplier and a UP feed Buffers. Thus UP’s represent both customers and suppliers. This result offers a novel approach to supply-chain integration. Traditionally, each firm in a supply chain is viewed as a monolithic entity with its own internal mechanisms, requiring a special set of mechanisms to interact with other firms. AARIA views each firm as an internal supply chain. As a result, the interfaces between AARIA agents within a firm are the same as those between one firm and another, and integrating multiple AARIA-based firms into a supply chain becomes immediate and transparent. Metamorphosis (The system maintains continuity between different entities that represent different stages in a common life cycle, for example, an order for a part, the part itself, and its production history.)—AARIA distinguishes persistent agents, whose behavior does not change over the time scale involved in daily shop operation, from transient agents, which represent interactions among persistent agents and which go through a In pu t P ar ts Unit Process Buffer Buffer Buffer Buffer Buffer Buffer