An introduction to agents DARTS 2003 – Session 2A – 22nd October 2003 Joris Maervoet and Stijn Bernaer KaHo Sint-Lieven Hogeschool, Ghent.

Slides:



Advertisements
Similar presentations
E-Commerce Based Agents over P2P Network Arbab Abdul Waheed MSc in Smart Systems Student # Nov 23, 2008 Artificial Intelligence Zhibing Zhang.
Advertisements

Information Society Technologies programme 1 IST Programme - 8th Call Area IV.2 : Computing Communications and Networks Area.
MULTI-AGENT BASED SCHEDULING D. Ouelhadj ASAP (Automated Scheduling Optimisation and Planning) Research Group School of Computer Science and IT University.
Agents & Mobile Agents.
Understanding Code Mobility
An Agent Framework for Effective Data Transfer Stijn Bernaer Patrick De Causmaecker Joris Maervoet Greet Vanden Berghe ECUMICT 2004 Gent, 1-2 April 2004.
Some questions o What are the appropriate control philosophies for Complex Manufacturing systems? Why????Holonic Manufacturing system o Is Object -Oriented.
© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
SELBO Agent Ivan Minov University of Plovdiv “Paisii Hilendarski“
Constructing the Future with Intelligent Agents Raju Pathmeswaran Dr Vian Ahmed Prof Ghassan Aouad.
1 Intelligent Agents Software analog to human agents real estate agent, librarian, salesperson Perform tasks individually, or in collaboration Static and.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Chapter 4 DECISION SUPPORT AND ARTIFICIAL INTELLIGENCE
Technical Architectures
The Decision-Making Process IT Brainpower
Discovering Computers Fundamentals, 2011 Edition Living in a Digital World.
Intelligent Agent Systems. Artificial Intelligence Systems that think like humans Systems that think rationally Systems that act like humans Systems that.
April 15, 2005Department of Computer Science, BYU Agent-Oriented Software Engineering Muhammed Al-Muhammed Brigham Young University Supported in part by.
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
Agent-Based Acceptability-Oriented Computing International Symposium on Software Reliability Engineering Fast Abstract by Shana Hyvat.
Agent-based E-travel Agency Agent Systems Laboratory Oklahoma State University
A Framework for Effective Data Transfer Stijn Bernaer Patrick De Causmaecker Joris Maervoet Greet Vanden Berghe AMobe - project.
Client/Server Architectures
1 The SpaceWire Internet Tunnel and the Advantages It Provides For Spacecraft Integration Stuart Mills, Steve Parkes Space Technology Centre University.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM]
International Workshop on Web Engineering ACM Hypertext 2004 Santa Cruz, August 9-13 An Engineering Perspective on Structural Computing: Developing Component-Based.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
11 C H A P T E R Artificial Intelligence and Expert Systems.
Software Agents: An Overview by Hyacinth S. Nwana and Designing Behaviors for Information Agents by Keith Decker, Anandeep Pannu, Katia Sycara and Mike.
ASG - Towards the Adaptive Semantic Services Enterprise Harald Meyer WWW Service Composition with Semantic Web Services
Lecture 9: Chapter 9 Architectural Design
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
 Communication Tasks  Protocols  Protocol Architecture  Characteristics of a Protocol.
Margherita Forcolin (Insiel S.p.A.) Thessaloniki, 13 October 2011.
Session-8 Data Management for Decision Support
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
NAVEEN AGENT BASED SOFTWARE DEVELOPMENT. WHAT IS AN AGENT? A computer system capable of flexible, autonomous (problem-solving) action, situated in dynamic,
Content The system development life cycle
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
MOBILE AGENTS What is a software agent ? Definition of an Agent (End-User point of view): An agent is a program that assists people and acts on their behalf.
Responding to the Unexpected Yigal Arens Paul Rosenbloom Information Sciences Institute University of Southern California.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Chapter 5 McGraw-Hill/Irwin Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved.
Framework for MDO Studies Amitay Isaacs Center for Aerospace System Design and Engineering IIT Bombay.
SEMANTIC AGENT SYSTEMS Towards a Reference Architecture for Semantic Agent Systems Applied to Symposium Planning Usman Ali.
1 BRUSSELS - 14 July 2003 Full Security Support in a heterogeneous mobile GRID testbed for wireless extensions to the.
Department of Electronic Engineering Challenges & Proposals INFSO Information Day e-Infrastructure Grid Initiatives 26/27 May.
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
Riga Technical University Department of System Theory and Design Usage of Multi-Agent Paradigm in Multi-Robot Systems Integration Assistant professor Egons.
31 March 2009 MMI OntDev 1 Autonomous Mission Operations for Sensor Webs Al Underbrink, Sentar, Inc.
1 Reasons for Migrating Code The principle of dynamically configuring a client to communicate to a server. The client first fetches the necessary software,
Integration of Workflow and Agent Technology for Business Process Management Yuhong Yan. Maamar, Z. Weiming Shen Enterprise Integration Lab.Toronto Univ.Canada.
1 Object Oriented Logic Programming as an Agent Building Infrastructure Oct 12, 2002 Copyright © 2002, Paul Tarau Paul Tarau University of North Texas.
NETWORKING FUNDAMENTALS. Network+ Guide to Networks, 4e2.
Intelligent Agents. 2 What is an Agent? The main point about agents is they are autonomous: capable of acting independently, exhibiting control over their.
SelfCon Foil no 1 Variability in Self-Adaptive Systems.
Software Agents & Agent-Based Systems Sverker Janson Intelligent Systems Laboratory Swedish Institute of Computer Science
 Ease the managing task  Guide for problem solving & decision making  Advance in carrier. Realise opportunities and meet personal and company goals.
Cyberinfrastructure Overview of Demos Townsville, AU 28 – 31 March 2006 CREON/GLEON.
EEL 5937 Multi Agent Systems -an introduction-. EEL 5937 Content What is an agent? Communication Ontologies Mobility Mutability Applications.
Introduction To Modeling and Simulation 1. A simulation: A simulation is the imitation of the operation of real-world process or system over time. A Representation.
Real-Time Systems Laboratory Seolyoung, Jeong JADE (Java Agent DEvelopment framework )
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
Chapter 1 Characterization of Distributed Systems
System.
Discovering Computers 2010: Living in a Digital World Chapter 14
#01 Client/Server Computing
AGENT FRAMEWORK By- Arpan Biswas Rahul Gupta.
In Distributed Systems
#01 Client/Server Computing
Presentation transcript:

An introduction to agents DARTS 2003 – Session 2A – 22nd October 2003 Joris Maervoet and Stijn Bernaer KaHo Sint-Lieven Hogeschool, Ghent

Talk outline An introduction to agents 1.Agent definitions 2.Agent applications: Helm’s Deep/NASA 3.Agent applications: overview 4.Agent-oriented design 5.Programming agents 6.The AMobe project

1 – Agent definitions

Agent definition Encapsulated computer system, situated in some environment, and capable of flexible autonomous action in that environment in order to meet its design objectives (Jennings) Agent interaction is inevitable to achieve individual objectives and to manage inter-dependencies (Jennings)

Properties Re-active On external asynchronous stimuli Autonomous Controls own actions, operates without direct intervention of others Pro-active Goal directed, takes initiatives Continuous and persistent Is “living”, not “running” Social Communicates with other agents and humans Learning Adaptiveness based on experience Mobile Moves among machines in network

Why Agents? Load reduction Trusted Agent travels between server and client, carries safe protocol Delay independence Agents perform in real time, not over uncertain networks Protocols Agents encapsulate protocols, for better adaptability and maintainability Asynchronous Together with autonomy, agents can act on their own, without necessity for continuous interaction

Why Agents? Adaptive Agents react autonomously on changes in the environment Heterogeneity Distributed systems are heterogeneous in nature. Agents are optimal for system integration Robustness Mobile agents can make a distributed system more robust and fault tolerant by deciding autonomously in case of an error

Agents and objects, what’s the difference? Agent AAgent B Object AObject B method  ACL message

2 - Agent applications: 2 examples

The battle at Helm's Deep Gathering 70,000 people, dressing them and choreographing each other is out of question Stephen Regelous created Massive (special-effects program) Massive is able to generate characters with their own minds (also called agents) Source: Wired News, Digital actors in Rings can think

The battle at Helm's Deep “making realistic crowds is making realistic individuals” Taken from: Pierre Vinet/ New Line Productions

The battle at Helm's Deep Agent’s brains (look like complex flow charts) define how they see and hear, how fast they run, … Agent’s movements are based on these of stunt actors to allow for example realistic ducks to avoid a sword Like real people, agents are influenced by their environment

The battle at Helm's Deep Taken from: Entertainment Weekly’s EW.com

The battle at Helm's Deep Each agent makes subtle responses to its surroundings with fuzzy logic rather than yes/no decisions Placing agents into a simulation, each agent makes decisions from it’s point of view (no crowd control) Other examples: generating flocks of birds, duplicating film stars

NASA Traditionally ground systems deal with spacecraft planning & scheduling, establishment of communications and (in some cases) processing So the ground system is responsible for managing the spacecraft and its activities (remote control) Source: Nasa Ames Research Center, Remote Agent Project Website

Remote Agent The first artificial intelligence control system to control a spacecraft without human supervision Remote Agent successfully demonstrated the ability to plan onboard activities and correctly diagnose and respond to simulated faults in spacecraft components

Remote Agent Advantages Faster reactions to problem situations (getting instructions from Earth could take a while) Less operation costs and less remote control:the Remote agent can take care of itself and does not need a hundred of specialised people on board or on the ground

Remote Agent Made up of 3 components Planner and scheduler (PS): produces flexible plans, specifying the basic activities that must take place in order to accomplish the mission goals Smart executive (EXEC): carries out the planned activities Mode Identification and Recovery (MIR): monitors the health of the spacecraft and attempts to correct any problems that occur

Remote Agent These components work together and communicate to ensure that the spacecraft accomplishes the goals of the mission Taken from: Nasa Ames Research Center, Remote Agent Project Website

3 – Agent applications: overview Source: Agentlink Roadmap

Agent-based systems - overview Assistant agents: e.g. TAC, where agents book hotels and make travel arrangements Multi-agent decision systems: e.g. components in a network may jointly seek to allocate scarce resources of the network Multi-agent simulation systems: used to model some complex real-world domains, e.g. biological populations

Manufacturing eCommerce e.g. Telecommunications Supply chain management Entertainment and leisure e.g. “The Creature Games”, SimCity the film “The Two Towers” Industrial and Commercial Applications

Simulation applications Agent-based simulation characterised by Agent-based computing Social sciences: studies interaction among social entities and include social psychology, management, policy and some areas of biology Computer simulation: techniques such as discrete event, object-oriented, equation-based simulation

Simulation applications Advantages Forecasting some complex real-world environments (economy, society, biology) Examples Flight Simulators: train pilots to respond appropriately to unexpected events Southwest Airlines increased revenues by $ 10 million dollar by using a agent-based simulation of cargo routing

Application opportunities Ambient intelligence: providing an environment of thousands of embedded and mobile devices interacting to support user- centred goals and activity Bioinformatics Grid computing: geographically separated computers that share applications, data and computational resources Electronic business

4 - Agent-oriented design

A new software paradigm procedures  data types  objects  agents Point of view: a further powerful abstraction, a new software paradigm Methodologies (e.g. AUML) in development Agent patterns

Pitfalls (Jennings) Political: you oversell agents, you get dogmatic about agents Management: you don’t know why you want to use agents, you want generic solutions to one- off problems Conceptual: you believe agent technology is a ‘silver bullet’, you forget that you are developing software, you forget agents are multi-threaded software

Pitfalls (Jennings) Analysis and design: you ignore related technology, you don’t exploit concurrency, you start from a tabula rasa Agent level: you want your own architecture, you use too much AI / no AI Society level: you see agents everywhere, you have too few/many agents, you spend all the time on an infrastructure, your agents interact too freely, your system lacks structure

5 – Programming agents

JADE and LEAP Java Agent Development framework (JADE) is an agent development environment implemented in J2SE. Developing FIPA-compliant (Foundation for Intelligent Physical Agents) agent applications for ‘interoperable intelligent multi-agent systems’. Lightweight Extensible Agent Platform (LEAP) replaces JADE’s ‘core functionality’ for devices with low memory/CPU capacities. JADE-based agentplatform which is standardized for mobile devices and compatible with mobile Java environments

JADE and LEAP JADE: still in development. (last: 3.0) LEAP: project recently taken over by JADE Huge number of successful applications

JADE and LEAP JADE’s functionality Distributed agentplatform on several JVM’s, behaviour model, AMS (automatische (de)registratie) – DF – ACC. GUI Debugging tools … Intraplatform mobility Multiple DF ACL messages, several protocols Interface for external applications

JADE and LEAP Taken from: LEAP User Guide

JADE and LEAP LEAP on Symbian OS devices: PersonalJava. LEAP on PocketPC devices : install CLDC/MIDP or PersonalJava. LEAP on Palm OS: install CLDC/MIDP. LEAP (or just JADE) on Windows NT/98/2000/XP: install J2SE.

6 - The AMobe-project

IT research group Department of Engineering at KaHo Sint- Lieven Hogeschool Research areas: personnel scheduling, agent technology, timetabling, mobile devices, optimisation, artificial intelligence Funded projects (IWT)

‘97 – ’99OCAPI ObjeCt georiënteerde Agenten voor gedistribueerde PlannIngssystemen : using agents to optimize rosters and the routes of mobile nurses ‘99 – ‘01COALA COoperating And Learning Agents: creating an ontology for planning systems, Semantic Web ‘01 – ‘03CoFfTeA Component Framework for Timetabling Applications: component-based framework for timetabling applications ‘02 – ‘04AMobe Application Development for Mobile Devices: agent-oriented software- development on mobile devices ‘02 – ‘04 TITAN (internal project) Developing a timetabling application for the Engineering department ‘03 – ’05DINGO DIstributed Negotiation - Gedistribueerde Onderhandeling

AMobe Application Development for Mobile Devices 2 coordinators, 2 researchers How are mobile devices integrated in applications? 2 case studies (evaluation and iteration) Website:

?? Mobile devices AMobe TechnologyPlatform Architecture Functionality uLinux – Palm OS Epoc32 – Windows CE J2ME – Waba LEAP – JIAC IV Permanent presence Mobile positioning … Software patterns Other factors price market situation dimensions … 2.5G: GPRS - EDGE WLAN - bluetooth 3G: UMTS

Case studies Tele Atlas geographical database, employees on location T&I Mobile devices assist people with non- congenital brain injuries

Framework for efficient datatransfer First case study gained interest: IDEWE and WGK have similar cases Common agent-construction for efficient datatransfer between server and mobile devices Why agents? Agents can decide at which moment which data will be sent. Agents enable loosely coupled software development

SYNCHRO AGENT ToestelID|TransactieID|prio|richting|aanvrager|DBactie | 927 |form| -> | get… 002 | 928 |form| <- |hereis… 003 | 929 |form| -> | |hereis… 003 | 930 |form| <- | | get… # actieve transacties prioriteitsdrempel DOWN- LOAD CLIENT AGENT UPLOAD CLIENT AGENT RECEIVING SLAVE AGENT SENDING SLAVE AGENT SERVER DB AGENT CLIENT DB AGENT POLICY AGENT DB Server (ev. DB server)Server (ev. synchro server) Mobiel toestel INTERFACE AG. TASK AGENTS INFORMATION AGENTS RECEIVING SLAVE AGENT SENDING SLAVE AGENT

ServerMobile device arno.txt *GML*GML* GML … blixa arnopanamarenkocaesargaudi spartacus(x) spartacus(x).txt *GML*GML*GM L … ToSend.txt *GML*GML*G ML … caesar.clt Start/stop Fill Watch size Copy arno.txt Could I send a report? Spartacus(x) will be your partner Please send everything end Fill Watch Force blixa CreateI am active Demo in JADE

Demo: agents over GPRS Purchase: Sierra Wireless AirCard 750 (PCMCIA cf. PenPCs Tele Atlas) + Mobistar abonnement voor GPRS First test: JADE agent on portable (with GPRS - link) communicates with JADE agent on server within our LAN (both Windows XP)