powered by jeffsutherland.com/scrum

 

Object Management Group

 

Framingham Corporate Center

492 Old Connecticut Path

Framingham, MA  01701-4568

U.S.A.

 

Telephone: +1-508-820 4300

Facsimile: +1-508-820 4303

 

 

 

Agent Technology

Green Paper

 

Agent Working Group

OMG Document  ec/99-08-06

 

Version 0.8

 

 

 

 

20 August 1999

 

 

 

This paper presents a discussion of technology issues considered in a Working Group of the Object Management Group  The contents of this paper are presented to create discussion in the computer industry on this topic; the contents of this paper are not to be considered an adopted standard of any kind. This paper does not represent the official position of the Object Management Group.


Table of Contents

1. Introduction...................................................................................................................................................................... 3

1.1 Purpose of the Green Paper................................................................................................................................. 3

1.2 Intended Audience(s)................................................................................................................................................ 3

1.3 Agent Working Group Mission........................................................................................................................... 3

1.4 Writing Team................................................................................................................................................................. 3

1.5 Questions & Comments............................................................................................................................................ 4

2. Current State.................................................................................................................................................................... 5

2.1 Definition of Agent................................................................................................................................................... 5

2.2 State of the Current Practice......................................................................................................................... 6

2.3 Maturity Level of the Industry..................................................................................................................... 6

2.4 Current Application Areas................................................................................................................................. 8

2.5 Agent Reference Architecture.................................................................................................................... 10

3. Key Areas of agent Technology...................................................................................................................... 11

3.1 Agent Communication.......................................................................................................................................... 11

3.2 Agent Mindspace....................................................................................................................................................... 12

3.3 Lifecycle Management........................................................................................................................................ 13

3.4 Agent as a Principle............................................................................................................................................... 16

3.5 Relationship between Agent and Object Technologies.............................................................. 16

4. AGENT System Development................................................................................................................................. 21

4.1. Agent Modeling and Specification............................................................................................................. 21

4.2. Testing, debugging, validation, and simulation............................................................................. 21

4.3. Agent System development methodologies....................................................................................... 21

4.4. Enterprise architecture and Services.................................................................................................. 21

5. Considerations for Agent RFI/RFPs................................................................................................................. 25

5.1 Planned Roadmap..................................................................................................................................................... 25

6. Relationship to OMG Technology and Other Work Efforts................................................... 25

6.1. Current relevant OMG services.................................................................................................................. 25

6.2. Modifications and enhancements of OMG specifications......................................................... 25

7. Other Similar Standards and Efforts......................................................................................................... 25

8. Appendix................................................................................................................................................................................ 26

8.1. Glossary........................................................................................................................................................................ 26

8.2. References................................................................................................................................................................... 26

8.3. Requirements for Agent Technology...................................................................................................... 26

8.4. Open  Issues.................................................................................................................................................................. 26

 

 

 

 

 


 

1.  Introduction

1.1             Purpose of the Green Paper

Typically, when the word “agent” is used, many people conjure up images from James Bond to Web spiders.  Yet, these same people feel that there is something more to the concept.  For those who wish to know more, the purpose of this paper is to provide:

1) an overview of the general area known as agent technology 

2) suggestions for standardizing areas of this new technology using the OMG process.

 

1.2             Intended Audience(s)

This green paper is intended for the OMG as a whole and, specifically, those task forces and working groups that are working in areas that might involve agent technology.  This will ensure the work in these workspaces is well synchronized.

            Another audience may be the agent technology industries outside of the OMG.  Their thoughts and suggestions will help address the commercial significance of the concepts and directions established in the paper.

 

1.3             Agent Working Group Mission

The Agent Working Group of the Electronic Commerce Task Force (ECTF) is to provide a forum for identifying and building consensus and convergence in the industry around agent technology development.[1]

 

One of the first efforts of this group is to produce this green paper.  This green paper has two purposes:

·    to address the key features of agent technology, and

·    to determine what and why the next steps might be for the Agent Working Group.

 

1.4             Writing Team

Editor:  James Odell.

 

Contributors: David Kerr, Broadcom Eireann Research Ltd.

                        David Levine, IBM

                        Gregory Mack, Booz-Allen & Hamilton, Inc.

David Mattox, Mitre Corporation

Francis McCabe, Fujitsu Labs

Stephen McConnell, OSM sarl

James Odell

Kate Stout, Sun Microsystems, Inc.

Craig Thompson, Object Services and Consulting

 

1.5             Questions & Comments

Please address content-related questions or feedback to the Agent Working Group and to the paper editor James Odell (jodell@compuserve.com).  In the interests of mailing list efficiency, please address errata or omissions directly to the editor only.

 


2.  Current State

2.1.            Definition of Agent

A basic dictionary definition of agent is one who acts.  Under such a broad definition, agents can have a host of properties.  One way to think about these properties is as follows:

·    Autonomous - is capable of initiating action independent of any other entity; to some extent, can operate without direct intervention externally.

·    Interactive - communicates with the environment and other agents, such as humans, machines, and software agents (i.e., social).

·    Adaptive/reactive - responds to its environment.

·    Mobile - able to transport itself from one environment to another.

·    Proxy - may act on behalf of someone or something; i.e., acting in the interest of, as a representative of, or for the benefit of some entity.

·    Rational - able to reason or understand.

·    Proactive - goal-oriented, purposeful; does not simply act in response to the environment.

·    Intelligent - state is formalized by knowledge (i.e., beliefs, goals, plans, assumptions) and interacts with other agents using symbolic language.

·    Temporally continuous - is a continuously running process.

·    Character - believable personality and emotional state.

·    Transparent and accountable - must be transparent when required, yet must provide a log of its activities upon demand.

·    Able to learn and evolve - changes behavior based on experience.

·    Cooperative - capabilities and resources can be exchanged among agents (e.g., can coordinate, collaborate, and negotiate).

·    Rugged - able to deal with errors and incomplete data robustly.

·    Trustworthy - adheres to Laws of Robotics and is truthful.

 

            Most people who work with agents find this definition overly broad. However, a commonly agreed definition has not yet emerged. Some argue that an agent is not very useful without at least the first three of the above properties. The other properties listed above may or may not be present in agents to varying degrees.  Rather than trying to determine if something is or isn't an "agent" it makes more sense to try and classify it along a spectrum that ranges from weak to strong agency. In general, the more of the above properties that an entity exhibits, the more agent-like it is.  At a minimum, though, an agent is generally regarded to be an autonomous entity that can interact with its environment.

            Software agents are a more specific type of agent.  While there are many definitions, generally a software agent is an autonomous software entity that can interact with its environment.  In other words, they are agents that are implemented using software.  They are autonomous and can react with other entities, including humans, machines, and other software agents in various environments and platforms.

            Agents are commonly considered similar, but not equivalent to objects  Traditional object are biased towards notions, such as class, association, and message.  While these constructs are useful for a certain category of applications, they do not directly address the requirements of agents.  As presented above, agents have such characteristics as autonomy, mobility, and adaptability.  Furthermore, business users like to express other concepts, such as rules, constraints, goals and objectives, and roles and responsibilities. (Stated another way, agents encapsulate the knowledge needed to perform a specific task.) In short, the agent-based approach distinguishes between autonomous, interactive, mobile objects (agents) and the passive objects of conventional OO.  This does not mean that object orientation is dead; instead, it can be used to enable, rather than drive, agent-oriented technology.

 

2.2.            State of the Current Practice

The emergence of agent technology is similar to the stories many other technologies (e.g. relational, object oriented, GUI).  As such, some expect to some of history’s lessons to repeat themselves:[2]  

·    Agent technology is not a single, new, emerging technology—but rather the integrated application of multiple technologies.

·    Agents are not necessarily a new, isolated form of application.  Instead, it can add a new set of capabilities to existing applications.

·    Initially, agent functions will emerge within applications, but later—with experience—will become part of the operating system or application environment.

·    Agent applications may strengthen the human-computer interaction.

·    Ultimately, applications that do not exploit agent support in the operating system will be severely disadvantaged.

 

While destined for lofty goals, the current state of agent technology is that: 

·    It is still an active research area.

·    Isolated pioneer products are emerging.

·    The full set of technologies are not available.

·    The technologies are not integrated with one another.

·    There is no consensus on how to support agents at the operating system level

·    Despite the hype, agent technology is not in widespread use–nor has it been widely accepted as an inevitable trend.

·    There are early adopters who can demonstrate the value of agent technology.

 

 

2.3.            Maturity Level of the Industry

As suggested above, the agent “industry” is in an embryonic state. There are isolated examples of agents in use in industry. It is hard to pin down exactly due to the lack of a rigorous agent definition.

            Because of this lack of singular definition, it is hard be specific about agents deployment in the software industry. However, there are several classes of agents that have been deployed to some degree.

 

·         Network and system management agents

The telecommunications companies have been the most active in this area, and indeed seem the group most committed to the agent paradigm. Their goal is to use agents to assist in complex system and network management tasks, such as load balancing, failure anticipation, problem analysis and information synthesis.

      One note: There is a confusing overlay of terms in this area.  Network management is often performed by employing SNMP agents. These are a particular mechanism for management, but are not the types of agents we’re trying to discuss here. This is just a simple overlap of names.

     Decision and logistic support agents

Mostly deployed in closed environments, utility companies and military organizations use agents for information synthesis and decision support. These systems may alert an operator to a possible problem, provide information in support of a complex decision. They are closely aligned to decision support systems from the traditional AI community.

     Interest matching agents

These are probably the most used agents, and most users don’t even know they are using them. The interest matching agents are used by commercial Web sites to offer recommendations, such as

If you liked “Frank Sinatra’s Greatest Hits” you might also like “Tony Bennett’s Songs for a Summer Day”.

Based on Patti Maes work at MIT Media Labs, and later at Firefly, these agents observe patterns of interest and usage in order to make recommendations. They have been deployed at amazon.com, and various CD and video sales sites.

     User assistance agents

These agents operate at the UI level, offering information or advice to users. They are sometimes represented visually as a cartoon advisor. Companies such as Microsoft, Lotus, and Apple have shown the most interest in this area. The best known example of an agent in common use is the animated help characters used in Microsoft Office products. These agents use bayesean networks to analyze and predict possible topics that the user may need help with.

 

Each of these represent some aspect of agents’ features. However , none of these represent the full range of possible agent features.

            The first commercial tool sets for building agents have entered the market within the last year. These agent building systems vary widely in functionality don’t adhere to any standards. Agents built in one system will not work in others. There is no uniform support for communications protocols across these tools either. The following table gives an overview of commercial agent systems available at the time of this writing.


 

Product

Company

Language

Description

AgentBuilder®

Reticular Systems, Inc.

Java

Integrated Agent and Agency Development Environment

AgenTalk

NTT/Ishida

LISP

Multi-agent Coordination Protocols

Agent Building Environment

IBM

C++, Java

Environment

Agent Development Environment

Gensym

Java

Environment

Agentx

International Knowledge Systems

Java

Agent Development Environment

Aglets

IBM Japan

Java

Mobile Agents

Concordia

Mitsubishi Electric

Java

Mobile Agents

Grasshopper

IKV++

Java

Mobile Agents

iGEN

CHI Systems

C/C++

Cognitive Agent Toolkit

Intelligent Agent Factory

Bits & Pixels

Java

Agent Development Tool

Intelligent Agent Library

Bits & Pixels

Java

Agent Library

JACK Intelligent Agents

Agent Oriented Software Pty. Ltd.

JACK Agent Language

Environment

Jumping  Beans Engineering

Ad Astra

Java

Mobile Agents

Kafka

Fujitsu

Java

Agent Library

LiveAgent

AgentSoft Ltd.

Java