23
DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

Embed Size (px)

Citation preview

Page 1: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils

FRODO AgentFramework

ein kleiner EinblickFRODOianer-Sitzung am 1.3.2002

Page 2: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Projektstruktur

src Sourcecode

bak Sourcecode-Backups

classes Kompilierte Klassen

apidoc Generierte Doku

doc Weitere Dokumentation

import Verwendete JAR-Files

lib Projekt-JAR-File

Apidoc-JAR-File

cfg Konfigurationsfiles

Page 3: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

JBuilder und Projekte

Importierte JAR-Files als projekt-lokale Libraries definieren Tools Configure Libraries

JAR-File erzeugenWizards Archive BuilderSourcefiles mit ins JAR-File

Page 4: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Projekt-lokale Libraries

Page 5: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

JBuilder und Projekte

Importierte JAR-Files als projekt-lokale Libraries definieren Tools Configure Libraries

JAR-File erzeugenWizards Archive BuilderSourcefiles mit ins JAR-File

Page 6: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

JAVA-Files im Archiv

Page 7: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Übersicht

DFKIUtils /project/se/java/DFKIUtils

lib/DFKIUtils.jar lib/DFKIUtilsApidoc.jar DFKIUtils.jpx

AgentFramework /project/frodo/AgentFramework

lib/AgentFramework.jar lib/AgentFrameworkApidoc.jar AgentFramework.jpx

Page 8: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

DFKIUtils

Neue Features der Debug-Klasse Graphische Debug-Konsole Umleitung auf eine einzige Konsole Patterns und Objekte in Meldungen Längenbeschränkung von Stacktrace-Ausgaben

Objekt-Serialisierung über JSX XML-basiert Robuster als JAVA-Serialisierung wird für ObjectContainer im Framework verwendet

Page 9: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Debugging Meldungen

Page 10: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Debug-Konsole: Konfiguration

Page 11: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Debug Konsole

Page 12: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

AgentFramework (Überblick)

Reactive Behaviour Layer

Social Layer

Specialist Layer

Agent Platform (JADE)

Platform Abstraction Layer

Page 13: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Reactive Behaviour

Reactive Behaviour Layer

Context und Content Extraktion & Dispatching

FRODO Message

Message HandlerActivities

zur Ausführung an den Agenten zurück

Page 14: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Was ist ein Handler?

Realisiert Teile des Agentenverhaltens

Reagiert auf bestimmte Nachrichten(frei definierbar)

Erzeugt „Activities“ als Reaktion auf eine empfangene Nachricht

kann dynamisch zum Agentenverhalten hinzugefügt und gelöscht werden

Page 15: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Vorteile eines Handlers?

benötigte Informationen aus der Nachricht sind bereits aufbereitet

es müssen nur noch Call-Back Methoden imlementiert werden

Schedulingaufgaben und Ausführung der Activities regelt das Framework

Page 16: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Handler (Code-Fragment)

Page 17: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Beispiele für Handler

RequestHandler

ConditionalRequestHandler

AnswerHandler

AgreeHandler

RefuseHandler

FailureHandler

...

dfki.frodo.agent.rbf.handler.*

Page 18: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Beispiele für Activities

SendRequestActivitiy

SendAgreeActivitiy

...

RaiseEventActivity

MessageReHandleActivity

...

dfki.frodo.agent.rbf.activity.*

Page 19: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Reichen diese Handler?

Handler sind elementare Bausteine der Nachrichtenbehandlung

Individuell für einzelne Nachrichten(typen)

Aber oft: Folgen von Nachrichten z.B. versende Request, warte auf Antwort

Verwaltung mehrerer gleichzeitiger Requests macht einfache Handler zu komplex

Handler für Interaktionsprotokolle

Page 20: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Was ist ein Protokoll-Handler?

Unterstützung für Interaktionsprotokolle:Generiert automatisch Conversation-IDs Initiales Ausführen von Activities beim

aktivieren des HandlersCallback-Methoden für mögliche

Reaktionen des Kommunikationsparnters

dfki.frodo.agent.rbf.handler.ip.*

Page 21: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Protokoll-Handler (Code-Fragment)

Page 22: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

ReactiveBehaviourBuilder

Page 23: DFKIUtils FRODO AgentFramework ein kleiner Einblick FRODOianer-Sitzung am 1.3.2002

DFKIUtils / AgentFramework

Übersicht

DFKIUtils /project/se/java/DFKIUtils

lib/DFKIUtils.jar lib/DFKIUtilsApidoc.jar DFKIUtils.jpx

AgentFramework /project/frodo/AgentFramework

lib/AgentFramework.jar lib/AgentFrameworkApidoc.jar