The Agent Factory Framework @ October 2007
description
Transcript of The Agent Factory Framework @ October 2007
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
The Agent Factory Framework@
October 2007
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
Agent Research @ PRISM
• PRISM: Practice and Research in Intelligent Systems and Media– Director: Gregory O’Hare– Currently 29 Research Staff
• 2 Academic Staff• 3 Post Doctoral Researchers• 1 Visiting Researcher• 23 Post Graduates
– 35+ Publications per year
• 2 Main Research Themes– Agent-Oriented Software Engineering
• Practical agent architectures and programming languages• Tool and methodology support• Application Infrastructures and Architectural Patterns
– Application Development• Focus on complex distributed systems.• Applied to real-world problem domains. • Used to implement large-scale demonstrator applications.
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
Agent Factory
• Framework for developing and deploying multi-agent systemsInitial specification 1995Smalltalk based implementation 1996-2000Java Agent Factory “Lite” for mobile devices released 2000Transition to full Java implementation 2001
• Key Features– Adopts “Plug and Play” philosophy
– Supports multiple Agent Architectures and Languages
– Broadly compliant with FIPA standards
– Run-time is deployable on J2SE and J2ME CDLC devices
• Available as Open Source under LGPL
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
Agent Factory On-line
Downloads since July 2004
Total: 3511
Downloads
0
200
400
600
800
1000
1200
1400
1600
2003.5 2004 2004.5 2005 2005.5 2006 2006.5 2007 2007.5
Downloads
http://www.agentfactory.com
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
Platform Configuration
NEXUSAgents
HOTAIRAgents
ACCESSAgents
Agent Factory Framework
AF Deployment Process
SystemSpecification
PlatformConfiguration
CommunityInitialization
BBADevelopment Kit
ALPHADevelopment Kit
AFAPLDevelopment Kit…
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Agent System Architecture
Secure Mobile Agent Architecture
Federated FIPA-compliantWP & YP Services
FIPA-compliant Agent Platform
…Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
The Agent Factory Framework
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
Platform Configuration
NEXUSAgents
HOTAIRAgents
ACCESSAgents
Agent Factory Framework
AF Deployment Process
SystemSpecification
PlatformConfiguration
CommunityInitialization
BBADevelopment Kit
ALPHADevelopment Kit
AFAPLDevelopment Kit…
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Agent System Architecture
Secure Mobile Agent Architecture
Federated FIPA-compliantWP & YP Services
FIPA-compliant Agent Platform
…Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
The Agent Factory Framework
• Deployment Process– Defines how to deploy a multi-agent system– Starts with an informal specification– Identifies platform configurations & the distribution of the initial agent community
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
Platform Configuration
NEXUSAgents
HOTAIRAgents
ACCESSAgents
Agent Factory Framework
AF Deployment Process
SystemSpecification
PlatformConfiguration
CommunityInitialization
BBADevelopment Kit
ALPHADevelopment Kit
AFAPLDevelopment Kit…
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Agent System Architecture
Secure Mobile Agent Architecture
Federated FIPA-compliantWP & YP Services
FIPA-compliant Agent Platform
…Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
The Agent Factory Framework
• Development Kits– Provide support for developing specific types of
agent– Minimum requirement is a agent architecture / interpreter– The most mature is the AFAPL Development Kit
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL
• AFAPL: Agent Factory Agent Programming Language– High-level language for specifying agent behaviours based on multi-modal
logic of commitment• Beliefs: The current state of the world• Plans: Possible courses of action that the agent may follow• Commitments: The courses of action that the agent has decided to follow• Commitment Rules: Situations in which new commitments should be adopted
– Combined with a set of Java-based agent components• Perceptors: generate beliefs about the current state of the environment• Actuators: implement the primitive actions of the agent• Modules: Private internal resources that the agent can use to store data
– Plus support for reuse through a C-style #include mechanism
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
AFAPL Interpreter
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
Platform Configuration
FIPA-compliant Agent Platform
Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
Agent Factory & AFAPL-DK
• Interpreter– Loads & executes AFAPL programs
– Instantiates agent components
– Algorithm designed to handle failure of components
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
AFAPL Interpreter
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
Platform Configuration
FIPA-compliant Agent Platform
Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
Agent Factory & AFAPL-DK
• Development Environment– Compiler checks syntax and semantics
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL-DK: AFAPL CompilerAFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
AFAPL Interpreter
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
AFAPL Interpreter
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
Platform Configuration
FIPA-compliant Agent Platform
Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
Agent Factory & AFAPL-DK
• Development Environment– Compiler checks syntax and semantics
– Integration with established IDEs
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL-DK: Netbeans ModuleAFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
AFAPL Interpreter
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
AFAPL Interpreter
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
Platform Configuration
FIPA-compliant Agent Platform
Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
Agent Factory & AFAPL-DK
• Development Environment– Compiler checks syntax and semantics
– Integration with established IDEs
– Extended toolset
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL-DK: VIPER ToolkitAFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
AFAPL Interpreter
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL-DK: AFAPL DebuggerAFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
AFAPL Interpreter
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AFAPL Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
AFAPL Interpreter
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
Platform Configuration
FIPA-compliant Agent Platform
Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
Agent Factory & AFAPL-DK
• Development Environment– Compiler checks syntax and semantics
– Integration with established IDEs
– Extended toolset
– Library of Prefabricated Elements
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
AF Development Methodology
AFAPL Development Environment
Agent Factory Run-Time Environment
Agent System Architecture
FIPA-compliant Agent Platform
Eclipse Plugin Netbeans Module VIPER Toolkit
Agent Component & Program Library
AFAPL Compiler AFAPL Debugger
AFAPL Interpreter
System BehavourModel
Protocol Model Activity Model
AFAPL Test Suite
Belief Manager Module ManagerCommitment
Manager
Plan Library Action Library
Platform Configuration
FIPA-compliant Agent Platform
Interpreter Manager
AFAPLInterpreter
ALPHAInterpreter
BBAArchitecture…
Platform Services Manager
Agent ManagementService
HTTP MessageTransport Service
AFAPLTest Suite…
Security Module
Platform ServiceAccess Rights
Platform Configuration File
Agent PlatformScript
Run-time Tools
AFAPL DebuggerRemote Command
ServiceLightweight PlatformManagement Tool…
Agent Factory & AFAPL-DK
• AFDM– Flexible development process
– Promotes Test-Driven Development
– Models based on Agent UML
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361
UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY
Current Application Domains
• Mobile Computing– Gulliver’s Genie, Ad-Me, WAY System, EasiShop, E=mc2
• Virtual and Mixed Reality Environments– ECHOES, NEXUS, Agent Chameleons
• Robotics– Social Robot Architecture, SAID, Agent Chameleons
• Distributed Sensor Networks– AIC, CLARITY
• Large-Scale Information Retrieval– HOTAIR, SIFT