Agent Factory: An Agent Prototyping Environment G.M.P. O'Hare.

Slides:



Advertisements
Similar presentations
Agents & Mobile Agents.
Advertisements

On Experimenting with AgentSpeak(L) Agents Ioannis Svigkos June 2004 Harrow School of Computer Science.
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
A Unified Approach to Combat Counterfeiting: Use of the Digital Object Architecture and ITU-T Recommendation X.1255 Robert E. Kahn President & CEO CNRI,
Programming Languages for End-User Personalization of Cyber-Physical Systems Presented by, Swathi Krishna Kilari.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Dr Rem Collier Department of Computer Science University College Dublin Agent Factory A Software Engineering Framework for Intelligent.
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361 UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY The.
Deployment of Multi-Agent Techniques in Robotics VRMLVRML Social Robotics M.Sc. Cognitive Science Robotics Lecture Notes Part III.
Object-Oriented Analysis and Design
Specifying Agent Interaction Protocols with AUML and OCL COSC 6341 Project Presentation Alexei Lapouchnian November 29, 2000.
Distributed components
Adding Organizations and Roles as Primitives to the JADE Framework NORMAS’08 Normative Multi Agent Systems, Matteo Baldoni 1, Valerio Genovese 1, Roberto.
Beyond Prototyping in the Factory of Agents Rem Collier, Gregory O’Hare, Terry Lowen, Colm Rooney PRISM Laboratory, Department of Computer Science, University.
Gregory O’Hare Department of Computer Science, UCD COMP 4.19 Multi-Agent Systems Lectures 17&18.
Experiences with an Architecture for Intelligent Reactive Agents By R. Peter Bonasso, R. James Firby, Erann Gat, David Kortenkamp, David P Miller, Marc.
Intelligent Agent Systems. Artificial Intelligence Systems that think like humans Systems that think rationally Systems that act like humans Systems that.
The Multi-Agent System IDE : What it Should and Should not Support Gregory O’Hare, Department of Computer Science, University College Dublin.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
April 15, 2005Department of Computer Science, BYU Agent-Oriented Software Engineering Muhammed Al-Muhammed Brigham Young University Supported in part by.
Agent Factory Micro Edition: A Framework for Ambient Applications C. Muldoon, G.M.P. O’ Hare, R.W. Collier, M.J. O’ Grady School of.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
3D Web Agents in Distributed Logic Programming Zhisheng Huang, Anton Eliens and Cees Visser Intelligent Multimedia Group Vrije.
1 / 26 CS 425/625 Software Engineering Architectural Design Based on Chapter 11 of the textbook [SE-8] Ian Sommerville, Software Engineering, 8t h Ed.,
Agents, Mobility, Ubiquity & Virtuality Gregory O’Hare Department of Computer Science, University College Dublin Social Robotics COMP4019 Multi-Agent systems.
Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu.
Object-oriented design CS 345 September 20,2002. Unavoidable Complexity Many software systems are very complex: –Many developers –Ongoing lifespan –Large.
Course Instructor: Aisha Azeem
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
Robots at Work Dr Gerard McKee Active Robotics Laboratory School of Systems Engineering The University of Reading, UK
Introduction to Jadex programming Reza Saeedi
Agent Factory : A Prototyping Environment for Agents Gregory O’Hare CS 4019 Multi-Agent Systems Lecture Material, University College Dublin.
The Design Discipline.
Chapter 2 The process Process, Methods, and Tools
Describing Methodologies PART II Rapid Application Development*
DiFac Consortium 3rd INTUITION Workshop “VR/VE & Industry – Challenges and Opportunities” Schwabenlandhalle, Fellbach / Stuttgart, Germany 30th of November.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
Agent-Oriented Software Engineering CSC532 Xiaomei Huang.
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
Architecting Web Services Unit – II – PART - III.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
SOFTWARE DESIGN.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Page 1 WWRF Briefing WG2-br2 · Kellerer/Arbanowski · · 03/2005 · WWRF13, Korea Stefan Arbanowski, Olaf Droegehorn, Wolfgang.
Abstract We present two Model Driven Engineering (MDE) tools, namely the Eclipse Modeling Framework (EMF) and Umple. We identify the structure and characteristic.
Chapter 3 Object Oriented Systems and Open GIS. Objectives of the Chapter Establish place of O-O in OpenGIS cover basics of O-O emphasise design issues.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
I Robot.
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
OBJECT ORIENTED AND FUNCTION ORIENTED DESIGN 1 Chapter 6.
Intelligent Agent Framework1 From Chapter 7 of Constructing Intelligent Agents with Java.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
Multiagent System Katia P. Sycara 일반대학원 GE 랩 성연식.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Providing web services to mobile users: The architecture design of an m-service portal Minder Chen - Dongsong Zhang - Lina Zhou Presented by: Juan M. Cubillos.
MTA SZTAKI Department of Distributed Systems Hogyan mixeljünk össze webszolgáltatásokat, ontológiákat és ágenseket? Micsik András.
Intelligent Agents Chapter 2. How do you design an intelligent agent? Definition: An intelligent agent perceives its environment via sensors and acts.
Done by Fazlun Satya Saradhi. INTRODUCTION The main concept is to use different types of agent models which would help create a better dynamic and adaptive.
Fundamentals of Information Systems, Sixth Edition
Architecting Web Services
Architecting Web Services
Model-Driven Analysis Frameworks for Embedded Systems
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
AGENT FRAMEWORK By- Arpan Biswas Rahul Gupta.
Presentation transcript:

Agent Factory: An Agent Prototyping Environment G.M.P. O'Hare

What is an APE? An Agent Prototyping Environment (APE) is an environment that facilitates the design and construction of heterogeneous agent designs and the subsequent fabrication of diverse agent communities. Some prominent APEs are: –AgentBuilder [1]. Reticular Systems APE provides a generic agent framework that may be configured to include a host of features including intentional reasoning models. Supports inter-agent communication through KQML [2]. –JAT Lite [3]. A Java package that is based around a model of KQML to support inter-agent communication. Provides little support in the way of agent models and reasoning mechanisms. –dMars [4]. Perhaps the most successful APE so far. Developed at the Australian AI Institute (AAII) by Rao & Georgeff, it is based on SRI’s Procedural Reasoning System (PRS) [5]. Reasoning is based on the BDI mental model. No particular consideration is given to inter-agent communication. Trends in modern APEs lean towards providing a generic agent model that supports configurability in areas such as Commitment Management and Agent Communication via Agent Communication Languages (ACLs).

What is Agent Factory? Agent Factory is an Agent Prototyping Environment (APE). –Adheres to the Agent-Oriented Programming (AOP) Paradigm [6] –Developed in Smalltalk-80 using ObjectShares’ VisualWorks Package –Uses TCP/IP Protocols for Network Communication –Has been discussed elsewhere in [7][8][9][10] Promotes design reuse through embracing of Object-Oriented technology: –Component Design Hierarchies combine standard Object-Oriented features with Agent Factory Specific features The Agent Factory System has been divided into two key areas: –A Run-Time Environment for the realisation of Multi-Agent Systems –A Development Environment for the building and testing of Intelligent Agent designs Current Applications: –Avatars (in VRML) –Personal Digital Assistants (PDAs) –Social Robotics

Agent Factory Schematic Organisational Level Agent Level Agents Commitment Management Strategies Controller World(s) Viewing Tools: ACL Interface VRML Visualiser Viewing Tools: Agent Viewer Agent Interpreter AF Run-time Server AF Run-time Environment Agent Factory Development Environment Builders: Scheduler World Agent Web Server Design Tools: Agent Design Tool Agent Debugger Scheduler Designer World Builder Agent Components ACL Designs Agent Designs World Designs Scheduler Designs Component Library

The Run-Time Environment The run-time environment provides the support necessary for the release of a completed Multi-Agent System (MAS). This environment is further sub-divided into: –A Run-time Server. The run-time server offers two main services: access to the non-agent components of the system (a controller and some worlds), and a set of tools for viewing and interacting with the agent community. –An Agent Interpreter. The Agent Interpreter provides the functionality necessary for the execution and visualization of agents. The existence of a run-time server is not a necessity in Agent Factory MAS, but rather an organisational tool that eases system administration. Instantiation of agents within the Run-Time Environment involves selecting an appropriate agent design. RT Server: demo Agent: rachel Agent: rem Agent: paul Agent: tomas

The Run-Time Server The Run-Time Server is a framework for linking agents to Controllers (Schedulers) and World Interfaces. –The controller permits global control of the MAS, and can be used to synchronise agent execution. It is part of a distrubuted control system for MAS execution. –The world interface provides administrative services for the placement and maintenance of agents in their arenas. Placement involves linking the agent to its “body” (the system - be it physical or virtual - that the agent is to exert control over). Currently, both asynchronous and synchronised control systems have been developed. In addition to controlling the execution of agents, the synchronised control system provides: –A Common Time Frame for Agents The scheduler maintains a global clock that all agents within a community may access. This provides a way of synchronizing action amongst multiple agents. –A Discrete Linear Time Model Time is based on the execution of the community, not real-time. Again, this is to maintain synchronized behavior.

The Agent Model The Agent Model is based on Stronger Notions of Agency –This augments basic features such as: reactivity, pro-activity, social ability, and autonomy with features such as rationality, benevolence, and intentionality. Intentionality implies Mental State –Agent Factory uses a configurable intentional reasoning model. All mental state models must be based on a pre-packaged Belief-Commitment-Action-Plan Architecture (BDI derivative). –This is augmented with a set of Commitment Rules. –Manipulation of the mental state is realized through the Commitment Management System (CMS). Agent communications based on a configurable Agent Communication Language (ACL) Module –Permits development of KQML [2] and FIPA [11] compliant Agents within Agent Factory. –Currently, Agent Factory makes use of the Teanga ACL [12] Agents are Social –Functionality is included for the construction and maintenance of Acquaintance Models

The Agent Model (2) The Agent Factory System adheres to the AOP Paradigm. –AOP has many similarities with Object-Oriented Programming (OOP). Accordingly, the Agent Factory environment exhibits many similarities with OOP environments. These similarities are described below. –Agent Designs. Agent Designs are somewhat similar to classes of OOP. They encapsulate all the features necessary for the implementation of an Agent. This includes not only the initialized mental state model, but also the particular configuration to be used within the Agent Interpreter. –The Agent Interpreter. This component of the system is responsible for the execution of particular agent instances. As such, it performs a role similar to that of the virtual machine (object engine) of OOP. Essentially, it contains the functionality necessary for the execution of an Agent. The interpreter algorithm is generic and may be configured for use by particular Agent Designs. –The Agent. The agent is an instantiation of a particular agent design. These are essentially the objects of AOP. Its features are described through the Agent Design, and it is executed through the operation of the Agent Interpreter.

The Agent Architecture The Agent Designs permit the configuration of the Agent Interpreter. –The configurable components are shown above.. –The Run-Time environment provides mechanisms to override this default configuration providing a degree of run-time configurability. Communications Module ACL Module Perceptor Units Controller Mental State: Beliefs Commitments Actions Plans Commitment Management System Actuator Units Messages & Sensor Data Actions

The diagram below illustrates the Agent Interpreter algorithm. –Here, the mental state model used is the Default Mental State model. This model represents the minimal mental state model that may be used in Agent Factory. Any other mental models must extend this model. –The algorithm is a refinement of the classical perceive-deliberate-act algorithm. Here, perceptors gather beliefs, the CMS performs strategic decision-making and consequently fires various actuators. Perceptors Resolver Actuators World Key: Program Flow Data Flow Commitment Rules Planner Commitment Management System The Agent Interpreter Beliefs Commitments Actions Plans Mental State

Example Agent Design A UserPerceptor examines the user list of a diary system. This Actuator adds a user to the user list of the diary system. addUser | mess | mess := 'ADD_USER ',(self currentCommitment action at: 1) asString. self communications sendMessage: mess toPort: diaryPort onHost: diaryHost. Actions map a name, pre- and post- conditions to an Actuator to enable the system to reason about how they work and what they do. Name: addUser(X) Pre-condition: !Bel(user(X)) Post-condition: Bel(user(X)) System Call: addUser A Commitment Rule maps a situation onto a Commitment to Action. This rule states that if an acquaintance is not on the user list then commit to adding the acquaintance to the user list. Bel(acquaintance(X)) & !Bel(user(X)) => Com(Self, Now, addUser(X))

The Run-time Tool-set Agent Viewer Tool –Uses Notebook Metaphor. –Individual interfaces provide a view of the agent mental state or some other component of the agent structure. –Supports Information Hiding. –Acts as an abstraction mechanism. RT Server Viewer Tool –Provides access to the global controller –Configuration of the world interface is allowed. The Agent Factory Visualiser –A tool that supports the visualisation of MAS through VRML. –This is a client-server tool that is embedded into standard web technologies to provide a seamless, platform independent interface.

The Development Environment The development environment extends the Agent Factory Run-time Environment. –Access is provided to a collection of tools that facilitate the development of Agent communities. This is achieved through the generation of a variety of components that may be used within a particular Agent Design. –These components are stored in a Component Library and form a collection of Component Design Hierarchies (CDH) that extend the standard Object Hierarchies in the OOP Paradigm. In particular CDHs exist for all the main components of an agent community, namely the run-time server and agents. It is distributed, using client-server technology to maintain consistency over multiple development environments. Provides a web-based interface to allow remote community development and testing. Supports complete abstraction from port numbers and host names to Agent / RT Server names.

The Development Tool-set Agent Design Tool –Enables rapid development and visualisation of Agent Designs. –Based on a three stage Interface Customisation Tool –Manipulates an Interface Hierarchy. –Provides alternative views for use in the Agent Viewer Tool. CMS Design Tool –Facilitates construction of Commitment Management Strategies. Perceptor Builder –Provides abstracted access to a perceive method that is invoked when the perceptor is activated. Mental State Model Design Tool –Supports the construction of mental state models.

Agent Factory Online A limited form of the toolset discussed on the previous slide is available through the World- Wide Web. –The interface currently supports agent and run-time server creation and viewing. –Revisions to the interface will include: Wizards to facilitate the rapid generation of demos, and Online Design Tools

ReactiveDeliberativePhysical Commitment Management System Resolution System PLANNER Commitment Rules Plans Actio Library Actuator Module Perceptor Module Reflex Behaviours obstacle _avoid escape _corner stop wait retreat … Motors Sensors: proximity sonar odometry vision Digital Signal Process Motor controller Commitment Belief Set Agent Comman ds Agent Events Social ACL: Teanga Message Handler Message Generator The Social Robotics Architecture Agent Factory is currently being used as a tool within the IMPACT project as a part of the Social Robots Architecture (SRA) [13][14][15]. –The SRA is a framework for the development of Social Robots. –It is divided into four layers: the physical, reactive, deliberative, and social. –Agent Factory is used at the deliberative and social layers. This is a hybrid architecture, providing a synthesis between reaction and deliberation within a single coherent framework.

Bibliography [1]Reticular Systems, Agent Builder White Paper, [2]CDR, Stanford University, “JATLite Overview”, [3]Australian Artificial Intelligence Institute, Brief Overview, [4]Finin, T., Weber, J., Wiederhold, G., Genesereth, M., Fritzson, R., McGuire, J.,Shapiro, S., Beck, C., “DRAFT Specification of the KQML Agent- Communication Language”, [5]Rao, A.S. and Georgeff, M.P., Modeling Rational Agents within a BDI Architecture, in Proceedings of Second International Conference on Principles of Knowledge Representation and Reasoning, (J.Allen, R.Fikes, and E.Sandwall eds) pp , Morgan-Kaufmann, San Mateo, CA, [6]Shoham, Y., Agent-Oriented Programming, Artificial Intelligence (60), pp 51-90, [7]Collier, R., The Realisation of Agent Factory: An Environment for the Rapid Prototyping of Intelligent Agents, UMIST, Manchester, UK (M.Phil. Thesis), [8]O’Hare, G.M.P. and Abbas, S., Commitment Manipulation within Agent Factory, Proceedings of Decentralised Intelligent and Multi-Agent Systems, DIMAS ‘95, Nov. 1995, Cracow, Poland, 1995 [9]O’Hare, G.M.P., “The Agent Factory: An Environment for the Fabrication of Distributed Artificial Systems”, In O’Hare, G.M.P. and Jennings, N.R.(Eds.), Foundations of Distributed Artificial Intelligence, Sixth Generation Computer Series, Wiley Interscience Publishers, New York, pp , [10]O’Hare, G.M.P., Collier, R., Conlon, J. and Abbas, S., Agent Factory: An Environment for Constructing and Visualising Agent Communities, 9th AICS Conference, Irish Artificial Intelligence and Cognitive Science Conference, UCD, Dublin, 19th-21st Aug., [11]Foundation for Intelligent Physical Agents, “FIPA 97 Specification Part 2: Agent Communication Language”, [12]Rooney, C.F.B., O'Donoghue, R.P.S., Duffy, B.R., O'Hare, G.M.P.,Collier, R.W. The Social Robot Architecture: Towards Sociality in a Real World Domain. Proc. TIMR-99 (Bristol). Technical Report Series, Dept. Computer Science, Manchester University, ISSN Rep. No. UMCS , [13]Duffy B.R., Rooney C.F.B., O'Donoghue R.P.S., Collier R.W., O'Hare G.M.P., Towards Social Robots, Cognitive Science For The New Millenium, Dublin, 1999 [14]Duffy B.R., Collier R.W., O'Hare G.M.P., Rooney C.F.B., O'Donoghue R.P.S., SOCIAL ROBOTICS: Reality and Virtuality in Agent-Based Robotics, Bar-Ilan Symposium on the foundations of Artificial Intelligence: Bridging theory and practice (BISFAI), June 1999, Ramat Gan, Israel, 1999 [15]O'Hare G.M.P., Duffy B.R., Collier R.W., Rooney C.F.B., O'Donoghue R.P.S., Agent Factory: Towards Social Robots, First International Workshop of Central and Eastern Europe on Multi - agent Systems (CEEMAS'99), 30th May-3rd June 1999, St. Petersburg, Russia, 1999