Walt Truszkowski, Senior Technologist, Code 588
|
Jay Karlin, Viable Systems, Inc.
|
Keywords: Agents, Agent Communities, Autonomy, Autonomous Systems, Cybernetic System Modeling, Agent Communication Language, Artificial Intelligence, Human-to-Computer
We begin by identifying and briefly discussing what are the general requirements for an agent community from our perspective. These requirements serve to establish the general context for understanding agent community concepts. Good sources for agent community concepts can be found in [2., 3]. These are the requirements to be modeled.
1) An agent community will have an overarching goal and shall accommodate subgoals. This overarching goal establishes a "purpose" and this purpose makes the agent community a "system" in the cybernetic sense.
2) Any two agents in the community can carry on a meaningful conversation. Thus, all agents in the community shall have a shared ontology. This shared ontology may be the kernel of a larger ontology which is obtained through the "composition" of the ontology's of all of the agents in the community. This kernel is necessary to support ontology negotiation between agents who wish to collaborate but do not have identical ontology's.
3) An agent community shall have at least one user interface. This interface to the outside world (user) provides a mechanism for allowing the user to establish, in real-time, new goals for the community, to observe the behavior of the community in action and to get status information on the community's activities.
4) An agent community shall have an infrastructure capable of supporting its internal communications. Without such an infrastructure the agents would exist in isolation from one another and not be able to function as a community.
5) An agent community infrastructure shall be capable of supporting the cooperative behavior of its members. Cooperative behavior may be broken down into either coordinated or collaborative behaviors. In coordinated behavior a single agent is vested with authority over other agents. In collaborative behavior, the agents that are cooperating do so as peers.
6) An agent community will be adaptable to environmental changes. Continual environmental changes are to be expected. Adaptability can be realized in several ways including intervention from the "user" and agent learning (however realized).
7) Agent community members will negotiate and share agreements. This is the essence of collaborative behavior in a community.
8) An agent community will have integrated reasoning ability. This means that a group of agents will have the capability to collectively reason about a problem utilizing the talents, knowledge, etc. of all the agents in the group. Another way of saying this is that the community is a knowledge community.
9) An agent community shall reason about at least one domain. This is related to Requirement 1 above. The goal of the community is to serve with respect to, at least, one domain of activity.
10) An agent community will be capable of negotiating their shared interests and individual goal priorities in several different subdomains. This is related to both Requirements 1 and 9. As an example: if the domain of activity is spacecraft operations then the community as a whole is responsible for monitoring and maintaining successful spacecraft operations. An agent may be associated with the power subsystem, another with the thermal subsystem, yet another with command and control. These agents with their own subdomain interests may work together to ensure a broader domain interest.
11) An agent community shall have access to plans or partially complete plans. We view a community as a knowledge community and as such the knowledge level of the community rises with each individual agent success. The plans that were used to successfully accomplish a task become part of the knowledge base of the community for future use by the community. The community knowledge base may initially (when the community comes into existence) be empty.
12) An agent community will have a history-keeping and logging capability. This is part of the documentation of the community's knowledge base. In order for the community to both improve its performance over time as a community and to be responsive to "outside" queries about its behavior patterns a logging mechanism is required.
| Figure 1. System Defined A system performs services as tasks in order to effect changes in its environment. The system strives to meet goals which have been decided upon from some higher commanding order of intelligence, e.g., a user. Intelligent agents may be considered for inclusion in this higher order if they are able to act as community management on the behalf of a user to achieve a desired environmental state. This state-oriented agent could be capable of judgment calls or of convening a meeting of agents collaborating on a strategy which would then be parsed out for execution to, for instance, specialist/tactical agents. The viable system architecture provides a way of discussing internal and external system behaviors in a systematic manner. It involves 5 levels of recursion in doing so. The viable system model depicted in Figure 2 has both horizontal and vertical recursive paths. This model was originally developed by Stafford Beer [4,5,6,7,8,9] as part of his management cybernetic work. We are attempting to utilize the concepts and notations to gain comprehensive insight into the needed behaviors of agent communities. |
| Figure 2. Viable System Model Schematic The model consists of 5 systems, numbered 1-5. System 1 is the base system, System 2 provides local regulatory monitoring and control for system 1. It regulates oscillatory behaviors. System 3 deals with self-organization and autonomic regulation. System 4 deals with self -reference, simulation and planning. System 5 deals with homeostasis and overall policy making. |
In preparation for the rest of the paper let's begin with a preliminary application of this model schematic to an agent community. The overall system, which is being modeled, is the community of agents. System viability refers to the fact that the community can withstand perturbations either triggered by the environment or by internal changes in individual agent's behaviors. The various systems 1-5 identified in the schematic can be thought of as encapsulations of entities and/or functionality that contribute to the overall viability of the agent community. The elements of System 1 will be individual agents Ai. These agents interact with the environment through perceptors and effectors to maintain an awareness of the environment and to make impacts on the environment. System 2 is concerned with being aware of the behaviors of the elements in System 1 and providing behavioral control. System 3 focuses on the organization of the community and the autonomy that the elements in the community have to contribute to self-organization. For example, the formation of a subgroup of agents to focus on a specific problem would come under the purview of the functionality in System 3. System 3 is concerned with things as they are. System 4 is concerned with what is going on in the environment and what needs to be done to prepare for the future. System 4 contains functionality that enables itself to maintain a view of itself as a community. There are many interactions between Systems 3 and 4 as is depicted in the schematic. System 5 monitors the interaction between Systems 3 and 5 and establishes overall policies for the agent community as a whole.
It is the authors' opinion that one of the main differences between intelligent agent systems and other Artificial Intelligent, (AI), systems is a matter of their relative degrees of independence. For example, an agent can decide that in order to complete its task it must look outside to find required expertise or knowledge. It can then proceed to search for and use such a resource in order to complete its task. In contrast, under similar circumstances, the AI system would issue a message to the user that it could not complete the assignment (e.g., within its constraints) and then go into standby or await additional instruction. This ability of an agent, to reflect upon its own capabilities and then to actualize itself, either in commencing a learning routine or engaging another agent and collaborating with it, is what distinguishes intelligent agents from other types of autonomous systems. This capacity would be preferred over more limited AI capabilities in applications where, for instance, an agent is inaccessible to direct reprogramming, such as in missions with limited ground station coverage, but has access to other agents nearby.
The white areas, in Figure 3, surrounding each of the three systems depict environment or domain areas. Agent communities are composed of specialists and facilitators or "system managers". Architectural types may be hierarchical, distributed, distributed hierarchical or clustered, depending on the goal of the application. In this paper we intend to describe their possibilities and model some useful structural-behavioral characteristics. Note that the community concept makes no sense with an AI system, but it is here in situations involving homeostasis that autonomous agents realize their fullest potential.
| Figure 2 Three agents comprising a community, with their associated domains embedded within the community's domain. Domains are represented by encircling white bands. |
The members cooperatively adapt with new plans and initiatives to meet the challenge presented in order to exercise their community responsibility. These new measures are assigned to tactical agents to minister to their individual domains. The procedure unfolds differently according to the following cases:
1. Community-level perception/decision resulting in new goal assignments (possibly new models) to the agents.
2. Attempts to reconcile, with existing models, different simultaneous anomalies detected by two or more agents.
3. Community intervention within an agent's domain should a crisis situation demand it.
4. Community learning by formulating revised models of its domain.
| Figure 4 Intersection of Domain Areas Calls for Domain Related Adaptive and Cooperative Behavior by their Respective Agents |
Therefore, in order to examine cooperation in an agent community it is helpful to re-map the previous figures to clarify agent and system interactions. A graphic demonstration follows in which subsystems are shredded out of their environments and domain-associated agents shredded out of their systems. For a single agent the result appears as shown in Figure 5A. Figure 5B shows the interaction of three agents and their respective domains/subsystems.
|
|
| Figure 6A: Instantiation of an Agent/Domain | Figure 6B: Interaction of Agents as a Community |
Conceptually, Figure 5A shows the system and its domain-associated agent having two interfaces to the system (horizontal arrowheads): one interface is a triangular prism, which represents a reactive correction device or governor. The second is a direct intervention or override auditing function which analyzes spurious movements of the system and attempts to redirect it from a revised perspective or model (i.e., learning). Both interfaces are stimulus/response types but the latter interface is a probing by the agent into different critical nodes of its associated system on an intermittent basis while the former is monitoring and adjusting nominal performance settings. In this way, by use of the probe, the agent can investigate a wider domain but yet limit its own demand for critical community resources. Note that in nominal operation the triangular prism provides a semi-autonomous (i.e., reactive) control to the system. The agent is stimulated to replan only when the governor (triangle) indicates that the system's healthy limits might be violated. Thus the governor forms a part of the agent (its perceptor/effector arrangement) but, as will be shown below, the governor is also a node of the network that coordinates the overall communal system. This discussion begins to illustrate the cybernetic (viable system) modeling technique under investigation.
In addition to communal coordination there is another type of coordination. This function coordinates relative to communal interests, an example of which is an auditor that enforces resource sharing and corrects transmission of data. For example, if a system begins to draw more than its normal level of electric current, then, even though its performance in terms of system functional performance may be within tolerance, something internal to the system is suspect. For this type of trouble shooting, the special discipline dealing just with such matters needs to be applied. Since a single source normally distributes power to all systems, a central monitor agent would be used having unique capability to trouble shoot the electrical power system. (There is obviously a tradeoff possibility here) The point is that there may be certain agent and component roles that would be better suited for a central position in the overall schema than as a peer member in the community.
There are a number of these positions that together suggest themselves as a separate central body in the community. Some of them are as follows:
Agent registrar.
Planner and Scheduler (from a system shared resource consideration).
Futures Planner (or "what-if" coordinator).
Agent translator and communications czar.
Executive.
Although simpler systems may escape with having only one tier limited to two or three collaborating agents, complex systems may have several tiers of agents, grouped into communities, in which community-to-community communication is carried on. Individuals from two or more communities might in turn occupy additional positions as member of a higher level planning and coordination or executive body.
| Figure 6. Nested Systems/Agents as Containers |
If the foregoing discussion has not done so already, the diagram of Figure 6 should have revealed the underlying premise of this report: that the agent community being discussed is an architectural model of the lower part of the central nervous system. If the visceral organs of the body system are represented by the subsystems, then our coordinating and other networks perform the functions of sympathetic and parasympathetic ganglia, while the agent-to agent ACL communication network is the spinal column. And this spinal column is suspended from the cerebellum portion of the brain, which is the lower segment as discussed above. This physiological analogy is based on the work of Stafford Beer [4,5,6].
| Figure 7. Top-level View of an Autonomous Spacecraft Subsystem |
This model begins to show, at a high level, the applicability of the modeling technique in the context of spacecraft subsystems. The model would be duplicated for each subsystem and then integrated into an overall model of the spacecraft. The modeling technique may also be applicable to autonomous science-instruments (this is a new area of interest for us).