Foundation for Intelligent Physical Agents

FIPA was founded in 1996 to produce standards for agents and agent-based systems.

Abstract Architecture

AMS = Agent Management System (An agent that provides white pages services plus life cycle and resource management services.)

DF = Directory Facilitator (An agent that provides yellow pages services.)

Message Transport System = Agent Communication Channel = ACC (Provides communication services for on and off platform agent message exchanges.)

Agents

An agent is a computational process that implements one or more roles in an application. An agent might be implemented as a Java Bean, a COM object, an active object, an autonomous LISP program, etc. Agents communicate using an Agent Communication Language (ACL). An agent has a name, attributes, and a locator. Agents may register and deregister with various directory services. Agents may search a directory service for other agents.

Conversations

Conversations are called agent interactions in FIPA. A conversations is an exchange of ACL messages. ACL message fall into one of several types (called Communicative Acts):

Call for Proposal
Accept Proposal
Agree
Cancel
Confirm
Disconfirm
Failure
Inform
Inform If
   Inform Ref
   Request
   Not Understood
   Propose
   Reject Proposal
   Subscribe
   etc.

FIPA also defines several interaction protocols, including the Contract Net Interaction Protocol.

In addition, it is possible for agents to agree on a common vocabulary to facilitate conversations. These vocabularies are called ontologies.

Applications

Personal Assistant

A personal assistant (PA) is an agent that acts on behalf of a user. Like a secretary, it accomplishes routine support tasks to allow the user to concentrate on their real job. It is unobtrusive but ready when needed and rich in knowledge about user and their areas of work. Examples of such functions and services include:

Managing a user's diaries
Filtering and sorting email
Managing a user's desktop environment
Managing a user's activities, plans and tasks
Locating and delivering multimedia information
Recommending entertainment
Purchasing desired items
Planning travel.

A more specific example of a PA is a Personal Travel Assistant (PTA).

Audio-Visual Entertainment and Broadcasting

Nomadic Computing

Resources

Publicly available FIPA implementations

Agentcities

Java Agent Services (JAS)