agent factory : a prototyping environment for agents gregory o’hare cs 4019 multi-agent systems...

26
Agent Factory : A Prototyping Environment for Agents Gregory O’Hare Gregory O’Hare CS 4019 CS 4019 Multi-Agent Systems Lecture Material, Multi-Agent Systems Lecture Material, University College Dublin University College Dublin

Upload: rosa-kimberly-thornton

Post on 11-Jan-2016

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Agent Factory : A Prototyping Environment for Agents

Gregory O’HareGregory O’Hare

CS 4019CS 4019

Multi-Agent Systems Lecture Material,Multi-Agent Systems Lecture Material,

University College DublinUniversity College Dublin

Page 2: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Outline

What is the difference between Objects and Agents?

What is Agent Factory?

Visual Design within Agent Factory

Case Study: WAY System

Agent Factory in Context

Conclusions

Page 3: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Objects versus Agents

Numerous Authors & Researchers have debated the differences and similarities between Objects and Agents;

Agents are autonomous. An object does not exhibit control over its behaviour; methods are made available for invokation as and when desired; Agents do not invoke methods but make requests;

Objects have nothing to say about differing deductive models like reactive, pro-active or social abilities

Agents are each considered to have their own thread of control. In standard object systems there is merely one thread; However some concurrent object based programming languages starting to emerge;

Page 4: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Active Objects

Active Objects blur the distinction;

Active objects have their own thread of control and can in some senses be considered autonomous;

They exhibit some behaviours without actually being operated upon;

Page 5: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

What is Agent Factory?

Agent Factory is…

“a cohesive framework that supports a structured approachto the development and deployment of multi-agent systems.”

AF-APL is augmented with:

AF-APL

Run-Time Environment

Development Environment

Development Methodology

Page 6: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

AF-APL

AF-APL is a declarative language. Designed to simplify the implementation of complex

agent behaviours.

Underpinned by a formal agent theory. Founded upon an analysis of how agents commit to

actions. Formalised as a multi-modal temporal logic.

Specifically, Agent Factory agents employ: Beliefs Commitments Commitment Rules

AF-APL

Page 7: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

AF-APL Control Algorithm

World

BeliefUpdate

Query

Perceptors

Actuators

Beliefs

Commitments

CommitmentManagement

Commitment Rules

Migrate?

1 Perceive

2 Deliberate

3 Act

AF-APL

Page 8: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

AF-APL

AF-APL Programs define: Actuators

Perceptors

Modules

Commitment Rules

Initial Mental State

AF-APL

Page 9: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

The Run-Time Environment

Deals with Interoperability.

FIPA compliant Design It is comprised from one or

more Agent Platforms (APs)

Each AP combines: Support for agent migration White and Yellow Pages

Agents Agent Management Services Initial Agent Community

Agent Platform

Agent Container

AgentPla tformGUI

Message Transport Manager

Sys tem Agents

AMSDF

Applica tion Agents

RemTerry

AgentManagementServices

HTTP Message Transport Service

To other AP's

Migra tion Manager

To other AP's

HTTP Migra tion Service

MMA

AP ScriptHandler

AF-APL

Page 10: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

The Agent Design Tool

Supports reuse of AF-APL code through inheritance.

Implements filtered views of agent classes.

Facilitates “publication” of agent designs.

AF-APL

Page 11: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Agent Viewer Tool

Supports the visualisation, configuration, and execution of agents

Provides a filtered view of the agent through a set of views

AF-APL

Page 12: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

The Development Methodology

Defines a structured approach to the coding and testing phases.

Places a partial ordering on the use of the tool set.

Identifies key deliverables to be produced.

Coding Testing

Testing / Debugging

Analysisof Agent

Behaviour

ConversationTesting

Deployment

Configura tion of Run-Time Environment

Agent ViewerTool

CommunityMonitor

Message Sender

Script Editor

Component Building

MTSCrea tion

ModuleCrea tion

ResourceCrea tion

Agent Implementa tion

Actua torCrea tion

OntologyDefinition

AgentBehaviourDefinition

PerceptorCrea tion

Actua torBuilde r

PerceptorBuilde r

Agent Des ign ToolContentLanguage Editor

AF-APL

Page 13: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Visual Design with Agent Factory

Provision of graphical tools to support the design of agents. Initial focus upon support for the modelling of agent

interaction protocols.

Provides scope for the utilization of various design notations.

Supports users in the fabrication of semantically correct protocols.

Assist users in the generation of agent code based upon published protocols.

Initial prototype supports Agent UML notation.

Page 14: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Agent Factory Protocol Tool

Interface Semantic Checker

User Updates

Model

Updateof Model

Inform of failureInform of success

Page 15: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Agent Factory Protocol Tool

Page 16: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

M-Commerce. Agent Factory is being used to deliver context sensitive shopping for mobile users.

EasiShop

Robotics. Agent Factory was employed as part of a hybrid agent architecture that is being used in ongoing research to investigate social robotics.

IMPACT, MARC

Speech Processing. Agent Factory is being used to process human speech using Phonotactics.

SAID

Current Applications

Ubiquitous Computing. Agent Factory has been employed to deliver a number of location aware services for hand-held devices.

Gulliver’s Genie, WAY System, E=mc2, and AD-ME

Page 17: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

The Goal of the WAY

Support the mobile citizen in the location, tracking and rendezvousing with a variety of moving entities.

Where are you?

I’m walking down Grafton Street

Well, I’m outside Trinity College

Grand, I’ll see you in a minute

Allow the mobiles themselves to deal with these requests

Page 18: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Technologies for the WAY

Personal Digital Assistants (PDAs) Personal Digital Assistant (IPAQ 3600 - 3700) PCM/CIA Sleeve

Localisation Technology including Global Positioning Systems (GPS)

GPS card / Garmin 2 GPS receiver

Communication over Wireless Networks Nokia Card Phone 2 GSM 900/1800

Mobile, Lightweight, Belief Desire Intention (BDI), Agents Agent Factory

Page 19: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Implementing the WAY

Each user is given their own WAY agent Maintains information about the users current location and

activities

By preference, WAY Agents reside on the users mobile device When on the device, WAY Agents have access to the users

position through GPS Also, they can interact with the user through a graphical interface

However, if the device is not accessible, the agents migrate to the WAY Server

While there, they remember the users last known coordinates.

WAY Agents communicate regular updates of their users position to interested parties

But only if the user permits it!

Page 20: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

At the end of the WAY…

Zoomed In Zoomed Out

Page 21: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Agent Factory in Context I

A number of other Agent Development Tools exist: LEAP (LEAP Consortium). Integration of JADE and ZEUS that

is compliant with J2ME.

JADE (TILAB). FIPA-compliant Java API that supports the fabrication of reactive agents.

ZEUS (BT Labs). A graphical toolkit for creating deliberative agent designs, which when completed, are compiled into Java code, customised and finally, executed.

JACK (Agent-Oriented Software). Extends Java with agent-based concepts. JACK code is compiled into Java code and executed.

FIPA-OS (Emorphia). The first FIPA-compliant agent platform. Similar to JADE.

Page 22: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Agent Factory in Context II

LEAP JACK ZEUS JADE FIPA-OS 

AF

BDI √ 

√     

Mobility √ √   

√ √

White Pages √ √ 

√ √ √

Yellow Pages √ √ 

√ √ √

FIPA Compliance

 √ √

 √ √ √

Fabrication Mode Design Instance Design Instance Design Design

Inheritance √ 

√ 

√ √

Construction Graphical Graphical Graphical Graphical None None

Visualization Graphical Graphical None Graphical None None

Integrated Methodology √ √ 

√   

√√

Page 23: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Summary

Agent Factory: Is a cohesive framework for the development and deployment

of agent-oriented applications on J2ME-compliant devices.

Offers a visually intuitive development environment that: Promotes design reuse. Has strong links with Agent UML. Delivers a rich set of tools to support the development and

debugging of agent designs.

Provides a rich coupling between an Agent Development Methodology and the Agent Factory toolset.

Supports mobile agents.

Page 24: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

And, finally…

An evaluation version of the Agent Factory Framework is available for download from:

http://www.agentfactory.com/

Page 25: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

Agent Factory Physical Architecture

Component Design Library

Agent Designs

Perceptors

Actuators

Modules

MTS

MS

agentfactory.ucd.ie

krytan.ucd.ie

DevelopmentEnvironment

lister.ucd.ie

DevelopmentEnvironment

holly.ucd.ie

AgentPlatform

pda1.ucd.ie

AgentPlatform

Published components

Deployed components

Page 26: Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin

The Actuator Builder

Supports the fabrication of Actuators

Interface presents a filtered view of the implementation

Generates and compiles relevant Java classes

AF-APL