co-chairs: Stephen McConnell
(OSM) and Craig Thompson (OBJS)
Agent Working Group reports to ECDTF and Internet PSIG
OMG document ECDTF 98-09-xx/internet-98-09-10
Agents@omg.org. The email list Agents@omg.org at OMG now exists. Send email to firstname.lastname@example.org to add yourself to this list. The public can join.
Presentations at this meeting covered:
DRAFT Agent WG Mission Statement: The mission of the Agent Working Group is:
The issue of the scope of the Agent WG is still TBD, and requires discussion at future meetings and possibly an RFI. How an agent architecture relates to OMA is still TBD as well but that is the central question of the Agents WG.
The issue of which group(s) Agent WG should report to was handled by having both the platform Internet SIG and the domain Electronic Commerce Task Force formally jointly meet to sponsor the group. But at the same time there is interest from other groups (e.g., OA&D TF) and there is an intent to accommodate the wide interest in agents and not just look through Internet or EC glasses, so all interested parties are invited to participate in Agent WG.
FIPA chair is Dr. L Chiaglone of CSELT (was behind MPEG2). 47 member organizations, 28 corporations, 10 Telcos, 13 academic. FIPA title does not mean robots.
Agent is a fundamental actor in a domain. It is autonomous, communicates, is owned. Autonomous is deep: messages are not methods but tokens in a conversation. Receiving action is a positive action. Agent chooses to receive the message. Agent is free to say no. The outcome of a conversation between two agents may depend on other conversations the agent is having with other agents.
ACL = agent communication language. Agents are recursively embeddable and can talk about each other. The can model other agents. Protocols allow conversations between agents. Ontologies are used to agree on the meaning of terms on per message basis. Example of an inform message with a lot of arguments. The content argument might generally be very complicated.
Why are we doing this? Story for management: View Multi Agent systems as a generalization of client-server. Benefits of agents: we are able to encapsulate intention. Soft nature of negotiation makes it easier to build large scale dynamic distributed applications. Allows dynamic scaleable environments.
Back to FIPA. Main contributions:
Q/A: FIPA uses IIOP but honored in the breech. CORBA is deficient in IIOP in not being asynchronous but see OMG messaging service. The notion of a message call versus a request to execute the message is very deep. So OMG and FIPA are not necessarily unifiable.
MASIF is OMG's mobile agent interop spec. Goal was to integrate mobile agents and RPC. MASIF is a common denominator of its developers. Provides history: formative 1996-1997, accepted in 1998 by OMG board. See 98-03-09.pdf document. (All OMG specs)
MASIF addresses agent management, tracking, and transport but not agent communication.
Agent is an entity which acts autonomously on behalf of another entity. Agent System is platform for execution of agents. Notion of place where agent is executed. Region is a grouping of agent systems. Finder is registry for locaing agents, places, and agent systems.
Agent management addresses management: creation and termination, suspension and resumption. Tracking: locating agents in distributed environment. Naming of agents and agent systems. Agent system type and location syntax. Integration of existing CORBA services like security, naming, life cycle, and externalization.
We send a message to other place to request agent to be received to other system, so we one can fetch missing classes if needed. Get places in other agent system. Uses IDL but agents do not have to be IDL objects. The specs deal with interop across agent systems (ag. D'Agents, Aglets, Grasshopper agents can interoperate). MAF finder is for registering and looking up agents and agent systems. Agent may not have to have same features as FIPA.
IBM has implementation planned in Mar99. The Open Group will provide compliance in context of ESPRIT. Grasshopper (IKV++) is an implementation that is COTS since Jun98.
MASIF does not provide means of making reference location transparency. Does not preclude you from saving execution state but does not define how.
Next step is to develop implementations, test, refine and add new elements to the spec or other agent specs. Want some typical agent plarform services like serialization format, security in multihop, integration with existing CORBA services like Trading (no current notion of federation), cooperation with other standards bodies. Want a system to be upgraded to FIPA and/or MASIF. MASIF implementation compliant in a lean way by implementing some of FIPA. Direction includes fault tolerance. Also resource management.
Q: Isn't MASIF like a class loader for IDL? Agents are chunks of code (maybe objects) that are owned and mobile.
The presentation provides a strawman reference architecture for both DARPA coABS and potentially for the Agents Working Group. After introducing agents, the presentation provides a number of architectural views of agents and the "grid" they inhabit (the environment that supports them, services, etc.). It loosely shows how a number of DARPA and industry efforts relate to the agents reference architecture.
Is there a flock agent? No, its emergent. Agents have rules. Three rules explain flock behavior: Don't fly alone, match neighbors, and don't hit obstacles. The Lion King stampede was made this way. This area is called complex adaptive systems. Nature is a metaphor. Rules for how carbon atoms bond. They can bond on their own.
Notion of agents: usual list of properties: autonomous, communicative, adaptive/reactive, mobile, proxy, proactive, intelligent, temporally continuous, character, able to learn and evolve. First three are the most criterial.
Working agent definition: autonomous [software] entity that can interact with its environment.
Various patterns: uniform agents, federated via facilitator, highly specialized agents as in CEO, … Using smiley faces as the new OA&D notation. Agents are an evolution, not a revolution. Objects with heads that can say no, since one deep difference between agents and objects is requesting versus sending messages. So what about kinds of agents that do decision making for you (that now requires trust).
In industry, we are using agents for supply chain. Many patterns of parallel problem solving with millions of agents.
They can react, learn (within a lifetime), evolve (across lifetimes). Ants: wander randomly. If you see food take it home and leave a trail of phermones. If you sense phermones, follow the trail. Learning might be: classifier rules and genetic algorithms, survival of fittest, weighting, increasing returns, …
Adaptation for parasitism, symbiosis, niche, arms race, … If there is a threat, worker ants will become patroller ants.
Emergence - a phenomenon emerges from group behavior. How does this apply to software. EG stock market.
When does the emergent behavior take on the characteristic of a new individual? Tests are: generated and self maintained boundary. Pure autonomy and self interest.
Q: in simulations, you can afford emergence. In applications, I do not want "getting paid" to be an emergent property. I want to be certain of being paid.
Emergence has a fixed deterministic part and an emergent pattern. There is an opportunism and self interest. But it is really a spectrum between deterministic and emergent. The "edge of chaos" is between the total order and total disorder. Patterns that damp, are regular, are chaotic, are semi-chaotic and regular - this is the important class.
My evolution can affect your evolution.
Decentralization. Rabbits eat grass, grass is gone, rabbits die, the grass grows back, rabbits return, … Lotka-Volterra equations of biology.
Bottleneck in software versus trying to stop agents stealing your food.
Created without a central designer.
We want to build applications with mixes of software and people.
Why agents are important. A proven power of parallel problem solving with diverse examples in nature and culture. There are huge opportunities if the grid is continuously populated. They will stumble on to new patterns. We want hybrids of humans and autonomous intelligence to form an ecology of organizational adaptation and response. In reaction to AI, behavior based intelligence instead of symbolic reasoning. But both are important.
Modeling issues: predicting or understanding the behavior of agent communities means simulating everything they do. Challenges of simulation: fine grained concurrency, explicit time, inherent indeterminism w probability, overlapping emergent processes, process boundaries vs. process internals, dynamic configuration and behavior, pervasive observability, reflective computation (mirror worlds).
Swarm does emulation of parallel simulation. Tom Ray does biodiversity reserves onto the network.
European project on agents, budget is 400 man months, started in Mar98, see www.fokus.gmd.edu/… There are seven partners. Objective is a uniform agent platform according to European Information Infrastructure. Approach is converging the mobility aspects of FIPA and MASIF via a prototype. Demo in pan-European test bed. Key issues are cooperative management of advanced telecommunications and information services. Security in agent systems - access control and secure transport. Electronic commerce.
Why do by agents if you can do by conventional technology?
Evaluated many agent platforms and selected Grasshopper from IKV++. Now working on enhancements and application case studies. Next step is platform enhancement requirements, next is platform enhancement specs.
Trial applications are
Expected achievements: want to demonstrate massive reduction of traffic load of management information experienced by operators. Higher availability network management. Reduction of prerequisitive user knowledge. Will show that the technology is a win in EC applications, focused on aspects of security and (very long) transactions. Also will support customization.
Background of agents was distributed AI but then user interface and simplifying intelligent computing. We moved from disjoint world to ad hoc dbms to all software talking. So do we now need planners? Well, lets insure decentralized. Not all software agents need to be intelligent.
Contrasting objects and agents. Agents choose to respond versus messages. Message sequences implicit versus conversations. Want agents to follow social conventions like honesty.
KAoS is the system. Want same architecture across a wide domain. Be able to easily agentify software.
Agents in a role of upper middleware. Agent structure in KAoS is knowledge, facts, beliefs, intents, desires, etc.
Specific to particular agents - optional planner, various capabilities. Shared by all agents: conversational support, transport support, security, …
Domains are aggregations of agents registered.
Matchmaker is a sophisticated trader.
Conversations are protocols between sets of agents. Could be designed offline or allowed to become emergent, planning each speech act at a time.
DARPA if funding us to develop a Conversation-Design Tool (CDT). Conversation policies are designed off line as (currently) finite state machines. Lessons the burden of inference so simple agents can talk to sophisticated agents. Winograd and Flores. One pattern is request, decline, promise, … (in an FSA).
Several other projects: portable satellite that follows astronaut and at night checks temperature.
JumpStart has partners and collaborators and is for DARPA.
DARPA sees many agent vendors with added capabilities in future, must be able to control systems composed of these.
How to extend toolkit?
Problem of KQML is fixed number of non-compositional properties. Like HTML.
Teams of programs that make commitments with human in loop. Getting into Cohen and Leveque team models. Mentions Tombe at USC/ISI, OGI, Quickset.
Current Jumpstart is focused on communications and security. Sun is developing standards for security and mobility standards. DARPA dial for policy.
Want also to combine FSA and planners.
Offers come with pragmatic constraints as in "I cannot offer to 50 people to go to lunch." CDT is a Java theorem prover from Stanford. Stanford OpenProof will be the core framework.
Java is security conscious but … JDK 1.2 goes beyond and beyond that is the Security Design Tool.
Want to save execution state. Want anytime mobility.
Evolution of Airplane Trouble Shooting Support. Was paper. Then computer based hypertext. Then toward a process view so data flows to the trouble-shooter.
Aviation Extranet Goal. Develop middleware components to tie together world global aviation infrastructure.
Q: in negotiation facility, there are many policies for conversations. So you can negotiate other protocols.
Deep issue on whether agents allow just anyone to introspect them.
Thompson described the proposed mission (see the Executive Summary). An issue arose about scope of Agents WG but it is always such and that is why OMG issues RFIs -- still the scope is an issue. The sense of the group is that the mission as described is reasonable (and needs to be written down).
We then discussed forming the group.
Finally, we discussed the next meeting. See the Executive Summary.