Upload
erna-henken
View
106
Download
3
Embed Size (px)
Citation preview
1
Baukästen für Agentensysteme
Ronald Schulte
2
Gliederung
Einleitung: Definition Klassifizierung Beispiele für Baukästen
ZEUS MadKit BOND Aglets SIM_AGENT
Zusammenfassung
3
Einleitung
Was ist ein Baukasten?
Kasten mit Einzelteilen zum Bauen.
[Wahrig – Deutsches Wörterbuch]
Ein Baukastensystem ist ein System, bei dem Häuser, Motoren usw. aus verschiedenen standardisierten Einzelteilen zusammengebaut werden, die miteinander auf verschiedene Weise kombiniert werden.[Encarta 2001]
4
Einleitung
Was ist ein Baukasten?
Kasten mit Einzelteilen zum Bauen.
[Wahrig – Deutsches Wörterbuch]
Ein Baukastensystem ist ein System, bei dem Häuser, Motoren usw. aus verschiedenen standardisierten Einzelteilen zusammengebaut werden, die miteinander auf verschiedene Weise kombiniert werden.[Encarta 2001]
5
Einleitung
Def.: Baukasten für Agentensysteme
Ein Baukasten für Agentensysteme ist eine Sammlung verschiedener (standardisierter) Einzelteile, die auf unterschiedliche Weise miteinander kombiniert werden können, um ein Agentensystem zu bauen.
6
Einleitung
Def.: Baukasten für Agentensysteme
Ein Baukasten für Agentensysteme ist eine Sammlung verschiedener (standardisierter) Einzelteile, die auf unterschiedliche Weise miteinander kombiniert werden können, um ein Agentensystem zu bauen.
7
Klassifizierung
Bestandteile
Welche Einzelteile? Kommunikation Ontologie soziale Interaktion ...
Gibt es zusätzliche Werkzeuge? Entwicklungswerkzeuge Laufzeitunterstützung
8
Klassifizierung
Technische Aspekte
Welche Standards?(Kommunikationsprotokolle)
Art der Benutzeroberfläche
Welche Programmiersprache
9
Klassifizierung
Konzept / Philosophie
Einsatzmöglichkeiten
Rollenmodell BDI ...
Mobile Agenten Service Agenten Verteilte Agenten ...
10
Beispiele für Agentenbaukästen
ZEUS MadKit BOND Aglets SIM_AGENT
11
ZEUS Agent Building Toolkit
Zeus 1.2.1Released Mai 2001
12
ZEUS Agent Building Toolkit
Bestandteile
Agent Component Library
Communication
Social Interaction
Data Structures
Planning and Scheduling
User Interface
Agent Building Software
Visual Editors
Code Generator
Legacy Systems API
Utility Agents
Name Server
Facilitator
Visualiser
Society Viewer
Reports Tool
Statistics Tool
Agent Viewer
Control Tool
13
ZEUS Agent Building Toolkit
Agent Component Library
Planning and Scheduling
Stellt (interene) Strategien zur Entwicklung von Handlungs-Absichten bereit.
Social InteractionStellt (externe) Strategien zur Koordination mit anderen Agenten bereit.
14
ZEUS Agent Building Toolkit
Agent Component Library
Kommunikation Unterstützung von
ACL und KQML Asynchrones socked-based
message passing Editor zur Beschreibung
einer Domain-spezifischenOntologie
Knowledge representationlanguage
15
ZEUS Agent Building Toolkit
Agent Component Library
Datenstrukturenzur Speicherung der Ressourcen und Kompetenzen der Agenten
Benutzerschnittstellezur Interaktion mit dem Agenten
16
ZEUS Agent Building Toolkit
Architektur des
generischenZEUS-Agenten
Mailbox Message Handler
Co-ordination Engine
Acquaintance Database
Planner and Scheduler
Task/ Plan Database
Resource Database
Ontology Database
Execution Monitor
External Database
Incoming Messages
Outgoing Messages
External Systems
17
ZEUS Agent Building Toolkit
Die grafische Entwicklungsumgebung des ZEUS Baukastens Anpassen der generischen Struktur
Entwicklung auf hoher Abstraktionsebene durch Ontology Editor
Fact / Attribute Editor Agent Definition Editor
Task Description Editor Organisation Editor Coordination Editor
18
ZEUS Agent Building Toolkit
19
ZEUS Agent Building Toolkit
20
ZEUS Agent Building Toolkit
Einsatzgebiet
Beratende und zeitgerichtete Multi-Agenten-Systeme für aufgabenorientierte Einsatzgebiete
Beispiele Dienstleistungen (Service provisioning) Ressourcen- und Prozessmanagement Supply-Chain-Management
21
Multi-Agent-Development Kit
MadKit 2.0.1 "Zimbra"Released June 2000
Universität Montpellier
22
MadKit
Konzept: Aalaadin Agent/Group/Role model
23
MadKit
Architektur:
24
MadKit
Bestandteile / Struktur
Java Framework Hauptklasse AbstractAgent Unterklasse Agent
unterstützt eine konkurrierende thread-basierte Ausführung
Interface für Scheduler- und Watcher- Objekte
25
MadKit
Nachrichten
Standard Klasse Message für Nachrichten
Spezialisierte Unterklassen für String Nachrichten XML Nachrichten ACL Nachrichten KQML Nachrichten
26
Die Entwicklungsumgebung, die G-BOX
27
MadKit
WeitereEinsatzgebiete:
28
BOND Distributed Objekt Multi-Agent System
BOND 2.1Released December 2000
Department of Computer Sciences,Purdue University
29
BOND
Java basiertes verteiltes Objektsystem und Agenten-Framework
Implementiert eine nachrichtenorientierte Middleware und Assoziative Dienste (directory, persistence, monitoring and security)
Vorgefertigte Komponenten für Strategien und Pläne
Agentenbeschreibung über Blueprint / XML
Intersystemkommunikation über KQML / XML
30
BOND
Architektur:
31
Aglets Software Development Kit
ASDK 1.1 Beta 3Released June 2000
Open Source VersionAugust 2001
32
Aglets
Java Framework für mobile Agenten
Nachrichten über eigene MessageObjekte (kein stand. Protokoll)
Server-Daemon, über GUI steuerbar
Client-Daemon Tahiti
33
SIM_AGENT TOOLKIT
THE SIM_AGENT TOOLKIT
Part of the Cognition and Affect Project
34
SIM_AGENT
Programmier-Paradigmen die in SIM_AGENT umgesetzt werden
OOP Rule-based prg. List processing Event driven prg. Conventional procedural and functional
prg. Other computational paradigms needed
for particular applications, e.g. neural nets
35
SIM_AGENT
Weitere Konzepte
Erweiterbarer Syntax und Semantik(Makros, ...)
Schrittweise Kompilierung mit dynamisch austauschbaren Modulen
Automatische Speicherverwaltung und garbage collection
36
SIM_AGENT
Sehr allgemeines und flexibles System
Nicht unbedingt einfach zu erlernen
Die Kombination dieser Paradigmen wird durch den
Einsatz der Programmiersprache Pop-11 realisiert.
37
SIM_AGENT
Bestandteile:
Regelsystem Poprulebase Agenten Library Grafikpaket RCLIB
38
SIM_AGENT
Bestandteile:
Regelsystem Poprulebase Agenten Library
Basisklassen und Scheduling-Mechanismen Objektklassen
Mehrfachvererbung Generische Funktionen
Jeder Agent besitz sein eigenes Regelsystem!
Grafikpaket RCLIB
39
Zusammenfassung
40
Zusammenfassung (1/2)
Entwicklungs-umgebung
Werkzeuge & Zusatzprod.
Kommunik.-Protokoll
Programmier-
Sprache
ZEUSVisual-Editor
Nameserver,Facilitator,Visualiser
ACL,KQML
JAVA
MadKitG-Box
Scheduler,Watcher
ACL,KQML,XML
JAVA
BondBond-GUI
Server,Extensions
KQML,XML
JAVA
AgletsTahiti
Server-Daemon (eigenes) JAVA
SIM_Agt(Poplog) Scheduler (eigenes) Pop-11
41
Zusammenfassung (2/2)
Baukasten-Konzept Architektur
Agenten-Strategie
ZEUSSWE-Konzept Ont/Agt/Task
Vorlagen für Task, Coordination & Organisation
MadKit Framework mit Entwicklungs-
umgebungAgt/Grp/Rol Diverse
vorgefertigte Strategien
Bond Framework für verteilte Objekte
message-based Middleware
Komponenten für Strategien und
Pläne
Aglets Framework für mobile Agenten mobile Agenten
(selbständiger)Hostwechsel
SIM_Agt Library (Regelsystem)Regelbasierte
KI
42
Literatur
Aglets Software Development Kithttp://www.trl.ibm.com/aglets/
BOND. The Distributed Object Multi-Agent Systemhttp://bond.cs.purdue.edu/
The MadKit Project (a Multi-Agent Development Kit)http://www.madkit.org/
The SIM_AGENT Toolkithttp://www.cs.bham.ac.uk/~axs/cogaff/simagent.html
ZEUS Agent Building Toolithttp://innovate.bt.com/projects/agents/zeus/index.htm