1 / 47

An introduction to agents DARTS 2003 – Session 2A – 22nd O ctober 2003

An introduction to agents DARTS 2003 – Session 2A – 22nd O ctober 2003. Joris Maervoet and Stijn Bernaer KaHo Sint-Lieven Hogeschool, Ghent. Talk outline. An introduction to agents Agent definitions Agent applications: Helm’s Deep/NASA Agent applications: overview Agent-oriented design

Download Presentation

An introduction to agents DARTS 2003 – Session 2A – 22nd O ctober 2003

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

  3. 1 – Agent definitions

  4. Agent definition • Encapsulated computer system, situated in some environment, and capable of flexibleautonomous 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)

  5. Properties

  6. Why Agents?

  7. Why Agents?

  8. Agents and objects, what’s the difference? Object A Object B method Agent A  ACL message Agent B

  9. 2 - Agent applications: 2 examples

  10. 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

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

  12. 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

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

  14. 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

  15. http://technology.arc.nasa.gov

  16. 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

  17. 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

  18. 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

  19. 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

  20. 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

  21. 3 – Agent applications: overview Source: Agentlink Roadmap

  22. 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

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

  24. 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

  25. 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

  26. 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

  27. 4 - Agent-oriented design

  28. 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

  29. 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

  30. 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

  31. 5 – Programming agents

  32. 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

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

  34. 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

  35. JADE and LEAP Taken from: LEAP User Guide

  36. 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.

  37. 6 - The AMobe-project

  38. 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)

  39. ‘97 – ’99 OCAPI ObjeCt georiënteerde Agenten voor gedistribueerde PlannIngssystemen: using agents to optimize rostersand the routes of mobile nurses ‘99 – ‘01COALA COoperating And Learning Agents:creating an ontology for planning systems, Semantic Web ‘01 – ‘03 CoFfTeA 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 – ‘04TITAN(internal project) Developing a timetabling application for the Engineering department ‘03 – ’05 DINGO DIstributed Negotiation - Gedistribueerde Onderhandeling

  40. AMobe Application Development for Mobile Devices • 2 coordinators, 2 researchers • How are mobile devices integrated in applications? • 2 case studies (evaluation and iteration) • Website: http://ingenieur.kahosl.be/projecten/AMobe

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

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

  43. 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

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

  45. Demo in JADE caesar.clt gaudi Watch caesar arno Start/stop panamarenko Force blixa Could I send a report? Fill arno.txt *GML*GML*GML … Spartacus(x) will be your partner Create I am active spartacus(x).txt *GML*GML*GML … spartacus(x) blixa Fill Watch size Please send everything Copy arno.txt end ToSend.txt *GML*GML*GML … Server Mobile device

  46. 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)

More Related