Beruflich Dokumente
Kultur Dokumente
Entscheidungsuntersttzende Systeme Dr. Andreas Bortfeldt Dr. Giselher Pankratz 6655432 Dr. Fotios Fitsilis Eufroniou 44, 16121 Kaissariani, Griechenland +30-6947-818439 fitsilisf@ypan.gr
Abgabedatum: 10/10/2006
ii
Inhaltsverzeichnis
1. Einleitung und Motivation ................................................................................................. 1 1.1. 1.2. 1.3. 2. Knstliche Intelligenz und MAS................................................................................ 1 Verteiltes Problemlsen ............................................................................................. 2 Anwendungsbeispiele von MAS................................................................................ 3
Agenten- und MAS -Grundlagen ....................................................................................... 3 2.1. Agenten ...................................................................................................................... 3 Definition ........................................................................................................... 4 Eigenschaften von Agenten................................................................................ 4
Agentenkommunikation ............................................................................................. 7 KQML ................................................................................................................ 7 KQML Struktur .......................................................................................... 8 KQML Nachrichtenstruktur ....................................................................... 8 KQML Plattformen .................................................................................... 9 FIPA ACL .......................................................................................................... 9 ACL Nachrichtenstruktur......................................................................... 10
Architekturkonzepte ......................................................................................................... 11 3.1. 3.2. 3.3. 3.4. 3.5. Logik basierte Agenten ......................................................................................... 11 Kognitive Agenten ................................................................................................... 11 Reaktive Agenten ..................................................................................................... 11 Vivid Agent Architektur........................................................................................... 12 BDI Agenten ............................................................................................................ 12
4.
MAS Technologiebersicht.............................................................................................. 13 4.1. FIPA Spezifikationen ............................................................................................... 13 Agenten Management System.......................................................................... 14 Das FIPA Agentenreferenzmodell ................................................................... 14
JADE ........................................................................................................................ 15 OMG MASIF Architektur........................................................................................ 16 Grasshopper Architektur .......................................................................................... 18 Architekturbeschreibung .................................................................................. 18
4.4.1.
iii
Die ABROSE Architektur........................................................................................ 20 Die Benutzerseite ............................................................................................. 21 Das Operator Terminal..................................................................................... 21 Die Hndlerseite............................................................................................... 22
MAS vs. zentrale / verteilte Systeme ............................................................................... 22 5.1. 5.2. Vorteile der MAS gegenber herkmmlicher Systeme ........................................... 22 Beispiele ................................................................................................................... 23
6.
Multiagentensystemen, d.h. von Systemen die aus mehreren interagierenden autonomen Einheiten, sog. Agenten, bestehen, die verschiedene Ziele verfolgen oder eine Reihe von Aufgaben bearbeiten. Diese kooperieren in Gemeinschaften durch Koordination oder Wettbewerb. Wie OHARE und JENNINGS (1997) gezeigt haben, entstehen durch die Kooperation der Agenten organisierte Strukturen, die ihrerseits das Verhalten der Agenten beeinflussen. Mitte der 70er Jahren hatten VKI Forscher die ersten Theorien und Computerarchitekturen formuliert, wie man effektiv die Arbeitsverteilung nutzen kann, um Probleme zu lsen. Gleichzeitig haben Experimente gezeigt, da rationales Handeln keine Eigenschaft isolierter
Systeme ist. Vielmehr, ist es das Ergebnis der Zusammenarbeit diskreter Einheiten, wie BROOKS (1991) und DURFEE (1992) bewiesen haben. Viel spter als VKI wurde VP ein aktiver Forschungsbereich fr Agenten. VP untersucht die Integration von groen, heterogenen, autonomen Computern aus vielen
Technologiegenerationen in einer kollaborativen Umgebung. Aus diesem Blickwinkel beschreiben HUHNS und SINGH (1998) die Agenten als Einheiten, die sich problemlos zwischen verschiedenen Systemen bewegen, whrend sie sich auf einer einzigen Plattform befinden und eine gemeinsame Sprache zur Kommunikation benutzen.
Quelle: Bildausschnitt aus DILGER (2004, S. 34) Abb. 1. Kategorien der verteilten Problemlsung.
a) Verteiltes Lsen von Problemen Damit hat man zu tun, wenn Aufgaben eine hohe Komplexitt aufweisen, so da sie nicht von einem Agenten allein gelst werden knnen, und die Lsung mehrere spezialisierte Agenten erfordert, die zusammenarbeiten und sich gegenseitig ergnzen. Die Aufgabe ist dabei nicht verteilt. Typische Beispiele dafr sind z.B. medizinische Diagnose, Sprachverstehen usw.
Dabei mu bercksichtigt werden, da das Problem von Natur aus verteilt ist. Entsprechend erfolgt die Problemlsung auch verteilt. Solche Probleme begegnet man in Fllen, wo eine zentralisierte bersicht schwierig ist, z.B. bei der Analyse, Identifikation, Steuerung eines Kommunikationsnetzes usw. c) Verteilte Techniken fr das Problemlsen Das sind Probleme, die von Prinzip aus durch einen einzelnen Agenten gelst werden knnen. Aufgabe und Lsung sind hier nicht verteilt. Jedoch, kann die Arbeitsverteilung zu einfacheren Lsungen fhren. Ein typisches Problem ist das Zusammenbauen von Teilen zu einer greren Konstruktion.
Robotersysteme und Regelungstechnik E-commerce und elektronische Mrkte Echtzeit-Monitoring und Management von Telekommunikationsnetzen Modellierung und Optimierung von Transportsystemen Analyse und Kontrolle von Geschftsprozessen in/zwischen Unternehmen
Informationsmanagement im Internet Verbesserung des Verkehrsflusses durch Sensor- und Steueragenten Besprechungs-Scheduling Optimierung von industriellen Fertigungsprozessen Computerspiele, Virtuelle Realitt
Auf einer einfachen Ebene kann man einen Agenten als eine unabhngige und autonome Einheit beschreiben, die bestimmte Eigenschaften besitzt und auf Anfrage verschiedene Operationen durchfhrt. Um eine genauere Definition zu geben, mu man verschiedene Definitionen aus der Literatur zusammenfassen. WOOLDRIDGE und JENNINGS (1995) geben eine komplette Definition eines Agenten, die DILGER (2004, S. 31) wie folgt sinnvoll zusammenfasst: Ein Agent ist eine physikalische oder virtuelle Einheit, a) die in einer Umgebung handeln kann, mit anderen Agenten direkt kommunizieren kann, eigene Ressourcen besitzt und ihre individuelle Ziele verfolgt, b) die in beschrnktem Umfang ihre Umgebung wahrnehmen kann, c) die bestimmte Fhigkeiten besitzt und Dienste anbieten kann, d) die sich eventuell selbst reproduzieren kann, e) deren Verhalten auf die Erfllung ihrer Ziele abzielt, unter Bercksichtigung der ihr zur Verfgung stehenden Ressourcen und Fhigkeiten und in Abhngigkeit von ihrer Wahrnehmung, ihren Reprsentationen und ihrer Kommunikation. Agenten sind damit in der Lage Ziele zu erreichen, die ihnen entweder von auen gestellt wurden oder die sie sich selbst gestellt haben. 2.1.2. Eigenschaften von Agenten
Viele Forscher, wie z.B. WOOLDRIDGE u.a. (1995) und BRADSHAW (1997), haben bereits versucht die Eigenschaften von Agenten in sinnvoller Weise zu klassifizieren. Die Liste der meist genannten Agenteneigenschaften kann sehr lang sein. Jedoch, sind nicht alle Agenten gleich. Zum Beispiel besitzen Intelligente Agenten nicht die gleiche Intelligenz. Im Folgenden werden die wichtigsten dieser Eigenschaften beschrieben: a) Autonomie Autonomie wird oft beschrieben als die Eigenschaft eines Agenten, ohne externe Hilfe zu operieren. Dies bezieht sich auch auf die Anpassungsfhigkeit eines Agenten und die Anforderungen der gegebenen Aufgabe. In diesem Sinne, ist die Autonomie eine der wichtigsten Eigenschaften eines rationalen Agenten. b) Reaktivitt, Sozialitt Reaktivitt ist die Eigenschaft eines Agenten, die Umweltsituation abzutasten und entsprechend zu agieren. Sozialitt ist die Eigenschaft eines Agenten, mit anderen Agenten
kommunizieren zu knnen, um die eigenen Ziele zu erreichen. Sozialitt bedeutet viel mehr als einen klassischen Kommunikationsprozess, weil sie eine dynamische Kommunikation impliziert, als einen predefinierten Nachrichtenaustausch. Um das zu erreichen, mssen sich Agenten einer gemeinsamen Kommunikationssprache bedienen. c) Mobilitt Mobilitt ist die Eigenschaft eines Agenten, an einer anderen Plattform migrieren zu knnen, wenn dies einen Vorteil fr das Erreichen seiner Ziele darstellt. Die Agentenmobilitt ist eine der interessantesten und wichtigsten Eigenschalten der Agententechnologie und es existiert eine enorme Anzahl von potentiellen Anwendungen in den Bereichen der Verteilten Prozesse und der Verteilten Datenbanken, die darauf basieren. d) Sicherheit In den letzten Jahren wird die Forderung nach mehr Sicherheit in Computersystemen immer grer. Unter anderem werden Agentensysteme in E-commerce-Plattformen und
Brsesysteme benutzt und als persnliche Suchassistenten verwendet. In diesen Fllen ist es sehr wichtig, da die Agentenplattform, eine geeignete Authentifikation seitens der Agenten fr die Transaktionen erfordert, so da falsche Agenten keinen Zugang in persnlichen oder eingestuften Informationen bekommen. e) Managementfhigkeit Das Management ist ein Satz von Operationen zu Systemkontroll- and Beobachtungszwecke. Das Hauptziel des Managements ist, das Erhalten der Dienstfunktionalitt im System mit minimallen Kosten zu garantieren. Dies bedeutet, da die Managementeigenschaften mit zu den kritischen Aspekten eines Agentensystems gehren, weil sie sich direkt auf die Verbesserung der Dienstqualitt an den Endbenutzern des Systems beziehen. f) Intelligenz und Lernfhigkeit Die Intelligenz ist eine Agenteneigenschaft, die zeigt, wie Agenten auf Situationen und Vorgnge reagieren. Dies ist auch ein Schlsselfaktor, der Agenten von Standardsoftware unterscheidet. Agenten mssen nicht nur geeignet auf Umwelteinflsse reagieren knnen, sie mssen auch in der Lage sein, sich darauf anzupassen und sich zu verndern, dadurch da sie daraus lernen. Ein lernender Agent ist viel ntzlicher als einen Agenten mit einer predefinierten Intelligenz. Allerdings, ist es viel schwieriger das Verhalten eines solchen Agenten zu beschreiben, weil es nicht mglich ist im Voraus zu wissen was ein Agent lernen wird und wie er diese Information anwenden wird.
2.2. Multi-Agenten-Systeme
2.2.1. Definition Fr den Begriff MAS sind viele Definitionen vorgeschlagen worden, die aus verschiedenen Forschungsdisziplinen stammen. Von der Seite der Verteilten Knstlichen Intelligenz, beschreiben DURFEE u.a. (1989) ein MAS als ein gekoppeltes Netz von problemlsenden Einheiten, die zusammenarbeiten, um Probleme zu lsen, die die Mglichkeiten einer einzigen Einheit bertreffen. MAS Architekturen knnen auch als soziale Strukturen aufgefasst werden, die aus autonomen Agenten bestehen, die miteinander interagieren, um die gestellten Ziele zu erreichen. Es gibt zwei Hauptformen der Interaktion: Kollaboration und Koordination. Bei der Ersten geht es um die Verteilung der Arbeit auf mehrere Agenten. Bei der Zweiten geht es um die Organisation der Aktivitten der einzelnen Agenten in Raum und Zeit. Da die grundlegenden Konzepte von MAS zielorientiert und sozial sind, werden Theorien aus der Sozial- und Kommunikationsforschung verwendet, um solche Systeme zu beschreiben. In den letzten Jahren wurde auch eine allgemeinere Definition fr MAS entwickelt, die solche Systeme anhand ihrer Eigenschaften definiert. Anhand dieser Definition, die nun fr alle MAS verwendet wird, besitzen MAS nach JENNINGS u.a. (1998) die folgenden Eigenschaften:
Ein einzelner Agent ist nicht selbstndig in der Lage ein Problem zu lsen, Es gibt keine globale Systemkontrolle, Die Daten sind dezentralisiert, Die Verarbeitung erfolg asynchron.
Die wachsende Popularitt des Internets frdert auch die MAS Entwicklung. Internet bietet die Basis einer offenen Umgebung, in der Agenten interagieren, um die eigenen oder gemeinsamen Ziele zu verfolgen. 2.2.2. MAS Eigenschaften und Klassifikation
MAS kann man anhand der Art der Agenten, ihrer Fhigkeiten und ihrer Umgebung klassifizieren. Tab. 2 bietet einen berblick mit den wichtigsten MAS Eigenschaften, sowie die Eigenschaften der MAS Umgebung. Eine Schlsselfhigkeit eines MAS ist auch die Offenheit. NWANA und NDUMU (1999) beschreiben Offenheit als die Fhigkeit eines Agenten im Laufe seiner Evolution, neue Agenten zu akzeptieren und zu integrieren, und eventuell neue Dienste anzubieten.
Attribute
2.3. Agentenkommunikation
Damit Agenten miteinander kommunizieren und kooperieren knnen, sind verschiedene Agentenkommunikationssprachen einwickelt worden. Eine Agentenkommunikationssprache basiert auf den Austausch von Nachrichten bestimmter Struktur und WAGNER (1999) beschreibt den Aufbau solcher Nachrichten. Diese beinhalten verschiedene Performative, d.h. Befehlstypen, die die Grundlagen der Agentenkommunikation darstellen, z.B.: Beschaffung von Information, z.B. durch den Befehltyp TELL(Fakt); Antwort auf Anfrage, z.B. durch den Befehltyp ASK(Anfrage); Anforderung bestimmter Aktionen, z.B. durch den Befehltyp REQUEST.
Im Gegensatz zu den Applikationsspezifischen Nachrichten in objekt-orientierten Programmiersprachen, befinden sich die Nachrichten einer Agentenkommunikationssprache auf einer hheren Abstraktionsebene, die durch die allgemeine Semantik der
Kommunikationslehre und der philosophischen Sprechakttheorie von SEARLE (1969) beschrieben werden kann. In der Sprechakttheorie wird das Verhalten eines Sprechers bezogen auf den Inhalt eines Kommunikationsaktes als Illokution beschrieben. Ein Kommunikationsakt (communication act) wird durch eine Nachricht der Form m[c] beschrieben, wobei m die illokutive kraft (z.B. TELL, ASK, REQUEST usw.) und c den Inhalt der Nachricht kennzeichnet (z.B. eine Absicht oder Aktion). Sprachen wie KQML und ACL von FIPA bieten einen Satz von Nachrichten zur
Agentenkommunikation, die auf Sprechakten basieren. Dennoch, sind bis jetzt keine effiziente Sprachen effektiv demonstriert worden, die den Inhalt von Nachrichten zwischen Agenten korrekt wiedergeben. JENNINGS u.a. (1998) erkennen, da dieses so genannte Ontologieproblem eine besonders hohe Prioritt in der Agentenforschung hat. 2.3.1. KQML
KQML (Knowledge Query and Manipulation Language), die in FININ und LABROU (1997) erlutert wird, ist eine Agentenkommunikationssprache. Sie ist sowohl ein
Nachrichtenformat als auch ein Protokoll zur Nachrichtenaustausch, um Wissenteilung zwischen Agents zu untersttzen. KQML kann sowohl als Programmiersprache benutzt werden, damit eine Softwareapplikation mit einem intelligenten System interagieren kann, als auch als Programmiersprache fr die Lsung verteilter Problemstellungen. Auerdem, enthlt KQML einen Satz von Nachrichten, die die erlaubten Operationen zur
KQML ist geschichtet aufgebaut und umfasst drei Schichten. Die KQML Nachrichten bestehen aus einer Inhaltsschicht, die in der Nachrichtenschicht eingebetet ist, die wiederum in die Kommunikationsschicht eingebettet ist. Dies ist in folgender Abbildung dargestellt:
Kommunikation Nachricht Inhalt Kommunikationsmechanismus Kommunikationslogik Inhalt der Kommunikation
Die Inhaltsschicht (content layer) enthlt den tatschlichen Inhalt der Nachricht und kann in beliebiger Format (z.B. ASCII Strings oder binre Notation) ausgedrckt werden. Die Nachrichtenschicht ist der Kern der Programmiersprache und ist von der Inhalts- und Kommunikationsschicht unabhngig. Sie gibt den Umfang der Interaktion mit einem KQML sprechenden Agenten an. Die Programmiersprache, die fr den Inhalt verwendet wird, wird auch in der Nachrichtenschicht layer) vergibt spezifiziert. Die KQML Kommunikationsschicht Nachricht, die die
(communication
zustzliche Eigenschaften
zur
Kommunikationsparameter beschreiben, z.B. Absender- und Empfngeridentitt, und einen einmaligen Identifikationsschlssel zur Kommunikation. Diese Angaben werden vom Netzwerk benutzt, um den einwandfreien Transfer von Daten zwischen Agenten durchzufhren. Die Kommunikationsschicht ist meistens auf TCP/IP, CORBA oder e-mail aufgebaut. 2.3.1.2. KQML Nachrichtenstruktur
Eine KQML Nachricht besteht aus einem oder mehreren Performativen, die dazugehrenden Argumente, die den Inhalt der Nachricht beinhalten, und einen Satz von optionalen
Argumenten, die den Inhalt, Absenter und Empfnger beschreiben. Als Beispiel sei die Nachricht in Abb. 3 angegeben, die eine Abfrage auf den Wert der SAP Aktie formuliert: (ask-one
: sender Benutzer : content (PRICE SAP ?price) : receiver stock-server : reply-with SAP-stock : language PROLOG : ontology XETRA)
Quelle: eigener Entwurf Abb. 3. Struktur einer KQML Nachricht.
// Performativ
// Wert
// Parameter
2.3.1.3.
KQML Plattformen
Die KQML Sprache und die Anwendungen des entsprechenden Protokolls haben schon in mehreren Prototypen und Demonstrationssystemen Anwendung gefunden. Die Anwendungen reichen von Design und Engineering von Hardware- und Softwaresystemen, ber Militr Transport Logistics, bis zur Entwicklung flexibler Architekturen zum Bau heterogener Informationssysteme. Eine Liste der wichtigsten KQML Implementationen, deren Entwickler als auch eine kurze Beschreibung werden in Folgender Tabelle (Tab. 3) aufgefhrt:
Tab. 3. Eigenschaften der wichtigsten KQML Plattformen.
Beschreibung JATLite bietet fertige Java-Module zur Konstruktion von Agenten. JKQML ist ein Rahmenwerk zur Konstruktion Java-basierter, KQML-sprechender Softwareagenten, die bers Internet kommunizieren. Jackal ist ein Java Paket, das eine ausfhrliche Kommunikationsinfrastruktur fr Javabasierte Agenten anbietet. Magenta (C++ Version) ist ein ACL API, das Kommunikation zwischen Agenten in einer heterogenen Umgebung anbietet. KAPI untersttzt den Transfer von KQML Nachrichten bers Internet bei Verwendung von TCP/IP, MIME Multimedia Mail und HTTP.
Quelle: eigene Zusammenstellung
2.3.2. FIPA ACL Die ACL von FIPA ist eine universelle nachrichtenorientierte Agenten-
kommunikationssprache. Eine detaillierte Beschreibung ist in FIPA ACL (2002) zu finden. Sie bietet einen Standardweg an, um Nachrichten zu formulieren, so da es garantiert werden kann, da der Empfnger den Inhalt der Nachricht verstehen wird. Die ACL definiert einen Satz von Befehlstypen, so genannte Performative, die zur Agentenkommunikation gebraucht werden. Die wichtigsten Vorteile von ACL werden in folgender Liste aufgefhrt:
Einfhrung in die Theorie der Multi-Agenten-Systeme 1. Dynamische Einfhrung und Entfernung von Diensten, 2. Einfhrung neuer Dienste, ohne das Programm neu zu kompilieren, 3. Dezentralisierte peer-to-peer Softwareentwicklung, 4. Universale Nachrichtenorientierte Sprache, 5. Konsistente Sprechaktschnittstelle, 6. Asynchrone nachrichtenbasierte Kommunikation zwischen Agenten.
10
Zusammenfassend, hat ein Agent, der ber ACL kommuniziert, die Flexibilitt auch Dienste zu nutzen die nicht a priori definiert sind. 2.3.2.1. ACL Nachrichtenstruktur
Agenten innerhalb eines MAS knnen ihre Ziele nur erreichen, indem sie mit anderen Agenten kommunizieren, z.B. wenn sie andere Agenten dazu beeinflussen, spezifische Aktionen zu ihren Gunsten zu ttigen. Diese Aktionen werden Kommunikationsakten (communicative acts) genannt. Ein entsprechendes Beispiel eines Kommunikationsaktes in Form einer ACL Nachricht wird in der folgenden Abbildung (Abb. 4) dargestellt:
(inform // Nachrichtentyp : sender Verkehrsagent : reciever Fahrer1 : content Verkehr (AutobahnA45, dicht) // Inhalt der Nachricht : in-reply-to Anfrage1 : reply-with Detail2 : language prolog // Sprache des Inhaltes : ontology Transport) // verwendete Ontologie
Quelle: eigener Entwurf Abb. 4. Struktur einer ACL Nachricht.
Die Struktur einer ACL Nachricht beginnt mit einem Wort, mit dem der Kommunikationsakt identifiziert wird (Nachrichtentyp). Die Nachricht besteht auch aus Nachrichtenparameter, die mit einem Kolon anfangen, gefolgt von einem Identifizierungswort. Der Parameter content enthlt den Inhalt der Nachricht, whrend zwei weitere Parameter die Inhaltssprache (language) und Ontologie (ontology) spezifizieren. Diese drei Parameter erlauben dem Empfnger einer Nachricht, diese zu verstehen, whrend der Nachrichtentyp dem Empfnger mitteilt, was er damit zu tun hat. Die restlichen Parameter helfen dem Transportmechanismus, die Nachricht erfolgreich abzugeben und dem Empfnger, diese als einen Teil eines Dialogs zu interpretieren.
11
3. Architekturkonzepte
KAELBLING (1991) definiert den Begriff Architektur etwas abstrakt als eine allgemeine Methodologie, um spezifische modulare Konstrukte fr bestimmte Zwecke zu bilden. Somit knnen Agentenarchitekturen als Software Engineering Agentenkonzepte gedacht werden. Im Folgenden wird ein kurzer berblick der meistverbreitesten Agentenarchitekturen prsentiert.
12
Ansichten (beliefs) besteht. 2. Eine event queue, d.h. einen Datenpuffer, der Nachrichten aus anderen Agenten oder Sensorsubsysteme (perception subsystems) enthlt. 3. Einen Satz von Reaktionsregeln (reaction rules), die das reaktive und kommunikative Verhalten des Agenten bestimmen. Die Reaktionsregeln kodieren das Verhalten eines Agenten als Antwort auf die Eingangssignale der Sensorsubsysteme. Die Agenten kommunizieren ber einer hheren Agentenkommunikationssprache wie KQML und ACL.
Umgebungsinformationen, um die in Frage kommenden Optionen zu bestimmen, und filtert diese Optionen, um seine Absichten zu spezifizieren, damit er schlielich einen bestimmten Vorgang ausfhren kann. Ein Reprsentant der BDI-Architektur, der Jam-Agent nach HUBER (2001), wird in folgender Abbildung (Abb. 5) dargestellt. Jeder Jam-Agent besteht aus fnf Primrkomponenten: ein Weltmodell (world model), d.h. eine Datenbank mit den Ansichten des Agenten, eine Planbibliothek (plan library), d.h. eine Sammlung von Plnen, die der Agent benutzt, um seine Ziele zu erreichen,
13
Einen bersetzer (interpreter). Dies ist die interne Agentenlogik, die bestimmt was ein Agent zu tun hat und wann,
Eine Absichtenstruktur (intention structure), d.h. ein internes Modell der aktuellen Agentenaktivitten und Ziele, und den Status des Erreichens dieser Ziele,
Einen Beobachter (observer), d.h. einen Vorgang, die ein Agent zwischen den eigentlichen Planstuffen durchfhrt, um Funktionalitten auerhalb der eigentlichen Ziele zu ermglichen
Quelle: HUBER (2001, S. 5), vereinfachte Darstellung Abb. 5. Die Struktur des Jam-Agenten.
4. MAS Technologiebersicht
Die wachsende Aktivitt in der Agentenforschung resultierte in den letzten Jahren zu einer groen Menge von Agentenentwicklungswerkzeugen und -plattformen mit vielen Gemeinsamkeiten aber auch Unterschieden, sowohl in der Untersttzung als auch in der Stabilitt und Dokumentation. Eine kompakte Darstellung solcher Systeme gibt GRAY u.a. (2000). Die wichtigsten MAS Plattformen werden in Kap. 4.1 bis Kap. 4.5 analysiert.
14
Agenteneigenschaft Kommunikation
Ziel der FIPA Spezifikation Agentenkommunikation zum Austausch von Informationen, Verhandlungen fr Dienste, Aufgaben delegieren. Nachrichtenaustausch Herstellung von Agententreffpunkten, wo Agenten sich austauschen knnen (z.B. directory facilities). Umgebung Eine sichere Umgebung zu generieren, wo Agenten vertrauliche Nachrichten austauschen knnen. Identifikation Erstellung von globalen Identifikationsschlsseln zur Agentenkennung. Interaktion Austausch mit den Systembenutzern. Plattform Migration zwischen verschiedenen Plattformen.
Quelle: FIPA SPECS (2002), Zusammenfassung
4.1.1. Agenten Management System Das Agenten Management System (AMS) ist ein Teil der FIPA Spezifikation. Es gibt die Minimalanforderungen an einem offenen Agentensystem an, damit es die
Grundmanagementeigenschaften garantieren kann. Des Weiteren, bietet AMS den Rahmen, in dem FIPA-konforme Agenten transparent operieren knnen. Das FIPA AMS definiert folgende Konzepte: Agentenreferenzmodell, Agentenplattform, Agentendomne. 4.1.2. Das FIPA Agentenreferenzmodell Das FIPA Agentenreferenzmodell bietet den normierten Rahmen in dem FIPA Agenten existieren und operieren. Kombiniert mit dem Agentenlebenszyklus liefert das
Agentenreferenzmodell die logische und zeitliche Basis fr die Herstellung, Operation und Entfernung der Agenten. Das FIPA Agentenreferenzmodell ist in Abb. dargestellt. Der Verzeichnisvermittler (Directory Facilitator, DF), das Agentenmanagementsystem (Agent Management System, AMS) und der Agentenkommunikationskanal (Agent Communication Channel, ACC) sind spezifische Agententypen, die das Agentenmanagement untersttzen. Der DF bietet gelbe Seiten Dienste zu anderen Agenten. Die AMS und ACC unterstuetzen die Interagentenkommunikation. Der ACC operiert sowohl innerhalb als auch zwischen verschiedenen Plattformen. Die Interne Nachrichtentransferplattform (INTP, Internal Platform Message Transport) bietet einen Nachrichtenroutingdienst fr Agenten auf einer FIPA 6 schematisch
15
konforme Plattform. Die ACC, AMS, INTP und DF sind Pflichtkomponenten des Modells und bilden eine so genannte Agentenplattform (AP).
Quelle: FIPA REFERENCE MODEL (2003), modifizierte Darstellung Abb. 6. Das FIPA Agentenreferenzmodell.
Eine
sehr
wichtige
Komponente
der
FIPA
Spezifikationen
stellt
die
Agentenkommunikationssprache ACL dar, die als eine globale Nachrichtenorientierte Kommunikationssprache entwickelt wurde und groe Verbreitung erfhrt. Die ACL wurde bereits in Kapitel 2.3.2 erlutert.
4.2. JADE
JADE (Java Agent DEvelopment Framework), beschrieben in der JADE HOMEPAGE (2006), ist ein Software Rahmenwerk, das komplett in der Java Programmiersprache implementiert ist und wird als open source Software angeboten. Es simplifiziert die Implementierung von MAS durch ein FIPA konformes Middleware, sowie durch geeignete Anwendungen zur Fehlerbeseitigung (debugging). Die Agentenplattform kann zwischen verschiedenen Systemen (mit eventuell verschiedenen Betriebssystemen) verteilt sein und die
Systemkontrolle und -konfiguration kann auch whrend der Funktionszeit durch ein entferntes GUI kontrolliert werden. Das Ziel von JADE ist die Entwicklung von MAS zu erleichtern. Gleichzeitig, bietet es einen umfangreichen Satz von Systemdiensten und Agenten, die FIPA konform sind, z.B. Namensgebungsdienst, gelbe Seiten Dienst und Nachrichtentransport. Die JADE Agentenplattform ist konform mit den Komponenten zum FIPA Spezifikationen und untersttzt alle FIPA ACC, AMS und DV. Die komplette
Plattformmanagement:
Kommunikation wird durch Nachrichtenaustausch durchgefhrt und JADE adoptierte das gesamte FIPA Kommunikationsmodell. Also wird bei JADE die FIPA ACL
Agentenkommunikationssprache benutzt.
16
Die Agentenplattform kann auf verschiedene Host-Maschinen laufen, aber auf einem Host luft nur eine Java Anwendung, d.h. eine Java Virtual Machine (JVM). Jede JVM ist im Prinzip ein Agentencontainer, der eine komplette Funktionsumgebung fr Agenten anbietet. Die JVM erlaubt auch mehreren konkurrierenden Agenten auf einer Maschine laufen zu knnen. Zustzlich bietet JADE eine Graphische Benutzeroberflche (Graphical User Interface, GUI), die entferntes Agentenmanagement, -berwachung und -kontrolle erlaubt. ber diese kann z.B. ein neuer Agent auf einer entfernten Maschine generiert werden und operieren, solange ein Agentencontainer bereits existiert. Die Vor- und Nachteile von JADE wenden in der folgenden Tabelle prsentiert:
Tab. 5. Vor- und Nachteile von JADE.
Vorteile FIPA konform Java konform Frei und Open Source Software Rahmenwerk fr Agentenbildung Schnes und einfaches GUI ACL Agenten zur Fehlerbeseitigung
Plattformmodifikationen zu erfordern. MASIF sollte nicht die Basis einer neuen Agentenplattform werden. Stattdessen, werden dessen Spezifikationen in existierenden Systemen benutzt. Tab. 6 beinhaltet die wichtigsten MASIF Systemanforderungen. Wie man auch in Abb. 7 sehen kann, adoptiert MASIF das Konzept vieler Agentenplattformen, d.h. das Vorhandensein von Agenturen (agencies), Agentenorte (agent places) und regionen (agent regions). Ein Agentenort gruppiert die Funktionalitt innerhalb einer Agentur. Entsprechend verfgen die Agenten eines Agentenorts ber bestimmte Eigenschaften und Restriktionen. Jede Agentur enthlt mindestens ein Agentenort. Eine
17
Agentenregion untersttzt das Plattformmanagement, indem sie die Agenturen geeignet gruppiert.
Tab. 6. Eigenschaften der MASIF Architektur.
# 1 2 3 4 5 6
Eigenschaft berwachung von Agentenprogrammen Kodierung von Agentenkontainer zum transportieren Transportieren von Agenten zwischen verschiedenen Maschinen Laufzeitregistrierung und Verbindung mit Agenturen Laufzeitabfrage einer genannten Agentur Laufzeitsicherheit von Agenten
Quelle: MASIF SUBMISSION (1997), Zusammenfassung
Der Kern des MASIF Standards sind die MAFAgentSystem und MAFFinder Schnittstellen: Die MAFAgentSystem Schnittstelle bietet eine Verbindung zu jeder MASIFkonformen Agentur und liefert Funktionen zum Agentenmanagement und -transport. Die MAFFinder Schnittstelle ist mit einer bestimmten Agentenregion, d.h. Sammlung von Agenturen, assoziiert. Sie ist ein Teil einer Registrierungskomponente einer Agentenregion, die die Lokalisierung von Agenten, Agenturen und Orte einer Region untersttzt.
Quelle: eigener Entwurf nach MILOJICIC u.a. (1998) Abb. 7. Schematische Darstellung der MASIF Architektur.
Des Weiteren, bietet MASIF folgende Funktionalitten an: a) Agentenmanagement Das Agentenmanagement hat die Erstellung, Eliminierung, Suspendierung der Agenten durchzufhren. Die MAFAgentSystem Schnittstelle bietet dabei entsprechende Methoden an.
18
Agenturen, Orte und Agenten sind in einer Registrierungskomponente einer Region via MAFFinder zu finden. Whrend sich Agenturen und Orte nur einmal in ihrem Leben registrieren, werden mobile Agenten bevor sie migrieren deregistriert und registrieren sich wieder, nachdem sie in einem neuen System installiert sind. Auf diesem Weg kennt die Registrierungskomponente einer Region jederzeit den aktuellen Standort jedes Agenten. c) Agententransport Die MAFAgentSystem Schnittstelle bietet zwei Methoden an, um Agentenmigration zu untersttzen, d.h. die Methode receive_agent zum Transport des Agentenstatus und anderer erforderlichen Daten, und die Methode fetch_class, um den Agentenkode anzufordern. d) Namensgebung fr Agenten und Agenturen Standardisierte Syntax und Semantik fr Agenten- und Agenturnamen erlauben deren eindeutigen Identifizierung. e) Agenturtyp Agenturtypen bieten Information ber wichtige Agenturaspekte, z.B. die benutzte Implementierungssprache. Ehe ein Agent migrieren kann, mu er herausfinden, ob seine Funktionalitt von der Zielagentur untersttzt wird.
Administrationszwecke. Die Agenten befinden sich immer an einem bestimmten Agentenort innerhalb der Agentur. Ein Agentenort ist eine logische Einheit innerhalb einer Grasshopper Agentur und der
19
Benutzer kann verschiedene Sicherheitsanforderungen fr jeden Agentenort definieren. Mobile Agenten knnen durch verschiedene Agentenorte migrieren, whrend stationre Agenten am Ort ihrer Herstellung whrend des gesamten Lebenszyklus verbleiben. 4.4.2. Managementfunktionalitt Das Agentenmanagement im Grasshopper ist eine Verantwortung der Agenturen. Eine Agentur besteht aus zwei diskreten Teilen: Die Kernagentur (core agency), die die minimale Funktionalitt beinhaltet, um die Agenten zu untersttzen, und mindenstens einen Agentenort. Die Dienste einer Kernagentur werden in Tab. 7 prsentiert:
Tab. 7. Kernagenturdienste.
Dienst Registrierung
Kommunikation
Transport
Sicherheit
Speicherung
Beschreibung Der Registrierungsdienst jeder Agentur verwaltet die Informationen ber alle Agenten der Agentur. Der Kommunikationsdienst ist fr jede durchgefhrte Kommunikationsmanahme in Grasshopper verantwortlich, wie z.B. inter-Agent Kommunikation, Agententransport und -lokalisierung. Der Transportdienst untersttzt die Migration von Agenten zwischen Agenturen. Es gibt zwei Sicherheitsmechanismen in Grasshopper: Die interne Sicherheit schtzt die Agenturressourcen vor unauthorisierten Agenten. Die externe Sicherheit schtzt die Interaktion zwischen Agenturen und Regionsregister. Der Speicherungsdienst erlaubt die Speicherung von Agenten und Agentenorten in das lokale Dateisystem.
Quelle: MAGEDANZ u.a. (1999), Zusammenfassung
4.4.3. Agentenkommunikation Die Agentenkommunikation in Grasshopper basiert auf dem Client/Server (C/S) Prinzip. Als Client-Server-Prinzip bezeichnet man ein verteiltes Computersystem, in dem mehrere Clients (Kunden) und mindestens ein Server (Diener) arbeitsteilig zusammenwirken. Die Rolle des Client und des Servers werden fr jede Kommunikatiossession neu vergeben. Aus diesem Grunde ist die Kommunikation generell symmetrisch (ein Agent kann sowohl Client als auch Server sein), die Kommunikationssessions sind jedoch asymmetrisch. Beim Benutzen des Kommunikationsdienstes haben die Clients keinen direkten Bezug zu den entsprechenden Servern. Stattdessen, wird dazwischen eine andere Einheit, das so genannte Proxy-Objekt, eingefhrt. Damit eine Kommunikationsverbindung mit einem Server zu Stande kommt, generiert ein Client einen Proxy, der dem gewnschten Server entspricht. Dieser Proxy baut nun die Verbindung zum gesuchten Server auf. Insgesamt, existieren in
20
Grasshopper drei verschiedene Servertypen: Agenturen, Agenten und Regionen. Die nchste Abbildung (Abb. 8) verbildlicht das zuvor beschriebene Modell der Kommunikation.
Quelle: GRASSHOPPER (2001, S. 75), vereinfachte Darstellung Abb. 8. Das Grasshopper Kommunikationsmodell.
Grasshopper kann erweitert werden, um nachrichtenbasierte Kommunikation zu untersttzen. Das wird mit Hilfe eines ACL Softwaremoduls realisiert, das volle FIPA-ACL Kompatibilitt gewhrleistet.
ABROSE Systems dar. Die Komponenten dieser Architektur und ihre Zusammenarbeit werden im Folgenden beschrieben (Kap. 4.5.1 bis 4.5.3).
Quelle: EINSIEDLER u.a. (1999), zusammenfassende Systemdarstellung Abb. 9. Die Architektur des ABROSE Systems.
4.5.1. Die Benutzerseite Die Benutzerseite enthlt die folgenden Komponenten: Verbindungsassistent (Connection Assistant, CA): Er hilft dem Benutzer, sowohl sich mit dem System zu verbinden als auch bei der Registrierung. Agentmanagerassistent (Agent Manager Assistant, AMA): Er koordiniert die agentenbasierte Kommunikation zwischen Benutzer- und Hndlerseite. Navigationsassistent (Navigation Assistant, NA): Hilft dem Benutzer bei der Navigation in der Wissensdatenbank und bei der Auswahl der entsprechenden Kriterien fr seine Anfrage. Spion (Spy): Er kopiert den Inhalt einer Kundentransaktion mit einem Inhaltsanbieter (content provider), um anschlieend das Benutzerprofil zu verbessern. Vorderseite (Front End, FE): Sie wird zur Untersuchung von Agentenanfragen auf spezifische Datenbankinhalte benutzt. 4.5.2. Das Operator Terminal Das Operator Terminal (OT) hilft dem Administrator, die Dienste des ABROSE Systems zu managen und zu verwalten. Es visualisiert den Status der Systemkomponenten, erlaubt die Kontrolle ber Komponentenparameter und erlaubt den Zugang auf Benutzerinformationen.
Einfhrung in die Theorie der Multi-Agenten-Systeme 4.5.3. Die Hndlerseite Die Hndlerseite (Broker Domain) hat drei Komponenten: Der Benutzerzugangsund Authentifizierungsmanager (User Access
22
and
Authentication Manager, UAM) kontrolliert den Zugang zum ABROSE System bei Benutzung des Logins und des Passworts. Der Hndlermanager (Broker Manager, BM) berwacht die Zusammenarbeit aller Komponenten. Die MAS (Multi Agent System) Komponente: Jeder Benutzer hat einen eigenen Transaktionsagenten (Transaction Agent, TA). Ein TA koordiniert die
Kommunikation zwischen Benutzer und Hndlerseite. Die TAs sind unter einem Mediation Agent (MA) gruppiert. Der MA kontrolliert die Generierung der TAs von neuen Benutzern und die Elimination der TAs von abgegangenen Benutzern.
Einfhrung in die Theorie der Multi-Agenten-Systeme darstellt. Zustzlich, wird dadurch die Netzwerkskalierbarkeit begrenzt, da
23 die
Managementaktivitten und die Aktualisierung der Server die maximale Systemgre eines bestimmten Systems beeinflussen und schlielich begrenzen. Auerdem erfolgt die Kommunikation auf niedriger Ebene, so da die Programmierer die einzelnen Netzwerkadressen und Synchronisationspunkte bestimmen und kennen mssen. Zentralisierte Systeme speichern den Datenbestand zentral. Das Arbeiten am gleichen Datenbestand verhindert sowohl verschiedene Versionen von Dokumenten und Daten, als auch Synchronisationsmanahmen. Solche Systeme erlauben weltweites, unabhngiges und gleichzeitiges Arbeiten an einem Dokument oder einer Datenbasis. Zudem, garantieren die einfach zu vergebenen Zugriffsrechte und die Benutzerorganisation hohe Sicherheit. Jedoch, mu man dabei beachten, da die Komlexitt solcher Systeme sehr rasch mit der Zahl der verbundenen Knoten wchst. Auf der anderen Seite besitzen die MAS aufgrund ihres Aufbaus eine Reihe von Vorteilen gegenber traditioneller Client/Server- oder zentralisierter Systeme, hauptschlich wegen ihrer Migrationseigenschaften, ihrer Autonomie, ihrer Persnlichkeit (Verhaltensmodell) und ihrer Prozessierungsunabhngigkeit. Dies wird in den folgenden MAS-Eigenschaften zusammengefasst, nach JENNINGS u.a. (1998): Asynchrones Handeln, Geringer Datenverkehr im Netzwerk, Robustheit, Verteilte Abwicklung von Prozessen, Flexibles Angebot von Dienstleistungen.
5.2. Beispiele
a) Supply Chain Management (SCM) Die Vorteile von MAS werden in Planungs- und Steuerungsanwendungen in einem Unternehmen deutlich. Diese bedrfen einer breiten Informationsbasis, bedingt durch die Verknpfung mit den Prozessen der Lieferanten und Kunden. In der klassischen SCM Betrachtungsweise wird die Information (z. B. Verhalten, Zustand) zur Planung und Steuerung von Lieferketten zentral gehalten. So kann das System auf jedes Strereignis reagieren. Jedoch wchst die Komplexitt des Systems mit zunehmender Anzahl von Lieferanten, Partner, Kunden usw. enorm. Die MAS Technologie kann hier anstelle eines
24
zentralisierten Systems verwendet werden und die Firma Profaktor, siehe PROFACTOR HOMEPAGE (2004), benutzt diese Mglichkeit in kommerziellen Systemen. In diesem Fall, werden Agenten als Stellvertreter der einzelnen Domnen, Unternehmen, funktionalen Einheiten usw. eingesetzt und agieren als autonome und kooperative Teile des Systems zur Planung und Steuerung von logistischen Prozessen. b) E-commerce Die Vorteile der MAS Technologie haben auch die Europische Union dazu stimuliert entsprechende Projekte zu finanzieren. MKBEEM (1999) (Multilingual Knowledge Based European Electronic Marketplace) ist ein IST-Projekt fr die Entwicklung eines verteilten Systems, um multilinguale Dienste fr E-commerce-Plattformen anzubieten. Dazu testet und verwendet MKBEEM die verfgbaren Agententechnologien und Methodologien. c) Brsendienste Solche Dienste knnen bei Verwendung von MAS ideal implementiert werden und eine Reihe solcher Systeme ist zurzeit in der Entwicklungs- oder Testphase. Eins davon ist das ABROSE System, das bereits in Kapitel 4.5 beschrieben wurde. Das Ziel von ABROSE war die Weiterentwicklung des ACTS ABS Projektes. Das ACTS ABS Projekt (Architecture for Information Brokerage Service), beschrieben von ATHANASSIOU und HOANG (1998), fokusierte auf die Entwicklung einer offenen Architektur fr einen Brsendienst, um effiziente on-line Informationsdienste im Rahmen der Europischen Informationsinfrastuktur anzubieten. d)Verteiltes Informationsmanagement Das verteilte Informationsmanagement (IM) wird mit dem Wachstum des World Wide Web immer komplizierter. Herkmmliche Methoden des IM, wie z.B. die C/S-Technologie, sind immer noch wertvoll, dennoch werden ihre Grenzen langsam deutlich, da sie jederzeit nur einen immer kleineren Teil der global verfgbaren Information in der Lage zu bearbeiten sind. Zur Lsung dieses Problems verwendete DALE (1997) die Technologie der mobilen Agenten und prsentierte eine Agentenarchitektur zur Untersttzung des verteilten IM von Ressourcen.
6. Zusammenfassung
6.1. Schlussfolgerung
Die Agententechnologie hat sich in den letzten Jahren enorm entwickelt und Anwendung in vielen verschiedenen Bereichen gefunden. Eine der interessantesten Vorteile dieser
25
Technologie liegt in der Lsung verteilter Probleme. Entsprechend entwickelten sich auch MAS. Diese haben ihre Wurzeln in die klassische KI der 70er Jahren und zur ihrer Beschreibung werden unter anderem auch soziale Theorien benutzt. Auf der anderen Seite gilt es als sehr schwer, MAS exakt zu definieren, so da ihre Definition sich eher an den Eigenschaften entsprechender Systeme orientiert. Agenten kommunizieren miteinander ber spezielle Kommunikationssprachen, wie KQML und ACL. Die rasche Entwicklung dieses Forschungszweigs hat sehr schnell zu einer sehr groen Menge von verschiedenen Systemen, Architekturen und Plattformen gefhrt, die meistens nicht kompatibel miteinander sind. FIPA und OMG fhren den Standardisierungsversuch an, der als besonders wichtig fr die Verbreitung dieser Systeme gilt. Letztendlich, bieten MAS eine Reihe von Vorteilen verglichen mit herkmmlichen Technologielsungen, wie z.B. C/STechnologie oder zentralisierte Systeme, die ihre Ausbreitung vielversprechend machen.
6.2. Ausblick
Die Entwicklung der MAS kann als ein Software Engineering Beispiel fr die Entwicklung zuknftiger Computersysteme dienen. Die Benutzung des Internets als eine offene Umgebung und die Verbreitung von maschinenunabhngigen Programmiersprachen wie Java, macht die Verbreitung dieser Technologie zu einen erreichbaren Ziel. Wie FLORES-MENDEZ (1999) schon berichtete, ist zurzeit die wichtigste Aufgabe, die fehlende Standardisierung von MAS voranzutreiben. Zuknftige Forschungsarbeiten im Bereich der Agententechnologie umfassen auch die Zusammenarbeit von MAS zur Bildung von MAS Cluster, so genannte Multi-Multiagentensysteme (MMAS), sowie der diesen untersttzenden Werkzeuge, die in KREMPELS u.a. (2003) prsentiert werden. Weitere technische Herausforderungen der Agentenforschung sind die Standardisierung verschiedener
Ontologien und die weitere Integration von BDI Anstzen. Im Bereich der Architekturen stehen Untersuchungen zur dynamischen Dienstkomposition, Zuverlssigkeit und
Verfgbarkeit von MAS bevor. Weitere Fragen betreffen das Benchmarking von MAS, um ihre Leistungsfhigkeit mit bereits existierenden Lsungen vergleichen zu knnen. Hier mu auch betont werden, da es Versuche gibt, die herkmmliche C/S-Architektur mit der Agententechnologie zu verbinden. Dies widerspiegelt sich in der OMG Arbeit zur MASIF Beschreibung von MILOJICIC u.a. (1998), die als Meilenstein auf dem Weg zu einer einheitlichen Middleware gesehen wird, das den transparenten Datenund
26
Tab. 1. Anwendungsfelder fr MAS........................................................................................ 3 Tab. 2. MAS-Eigenschaften und -Umgebung........................................................................... 7 Tab. 3. Eigenschaften der wichtigsten KQML Plattformen...................................................... 9 Tab. 4. FIPA Spezifikationen.................................................................................................. 14 Tab. 5. Vor- und Nachteile von JADE. ................................................................................... 16 Tab. 6. Eigenschaften der MASIF Architektur. ..................................................................... 17 Tab. 7. Kernagenturdienste. .................................................................................................... 19
27
Literaturverzeichnis
ATHANASSIOU, E. und HOANG, V.A.: Architecture for Information Brokerage, In: Information Brokerage, European Union ACTS Project, InfoWin, January 1998. http://cordis.europa.eu/infowin/acts/analysys/products/thematic/brokerage/abs.html (zuletzt besucht am 25.9.2006) BRADSHAW, J.M. (Hrsg.): Software Agents. Menlo Park, Cambridge, MA: AAAI Press/The MIT Press, 1997. BROOKS, R. A.: Intelligence Without Reason, Massachusetts Institute of Technology, Artificial Intelligence Laboratory, A.I. Memo Number 1293, 1991. DALE, J.: A Mobile Agent Architecture to support distributed Information Management, Doctoral Thesis, Fakulty of Engineering and Applied Science, University of Southampton, UK, 1997. http://eprints.ecs.soton.ac.uk/849/04/thesis.pdf (zuletzt besucht am 27.9.2006) DILGER, W.: Kuenstliche Intelligenz in der Schule, Multiagentensysteme. Vorlesungsmanusskript WS 2004/2005, TU Chemnitz (2004), S. 29-40. http://www.tu-chemnitz.de/informatik/HomePages/KI/scripts/ws0405 /KI_Schule/KI-Schule-04-lehr-2.pdf (zuletzt besucht am 22.9.2006) DURFEE, E.H. und LESSER, V.R. und CORKILL, D.D.: Trends in Cooperative Distributed Problem Solving. In: IEEE Transactions on Knowledge and Data Engineering, 1 (1989) 1, S. 63-83. DURFEE, E.H.: What Your Computer Really Needs to Know, You Learned in Kindergarten. In: Proceedings of the Tenth National Conference on Artificial Intelligence (1992), S. 858-864. EINSIEDLER, H.J. und BARRETT, P. und CHIRICHESCU, D. ET.AL.: ABROSE: A Co-Operative Multi-Agent Based Framework for Elektronic Marketplace. In: Agents Technology in Europe - ACTS Activities, InfoWin, September 1999. http://cordis.europa.eu/infowin/acts/analysys/products/thematic/agents/ch3/abrose.htm (zuletzt besucht am 25.9.2006) FININ, T. und LABROU, Y.: KQML as an Agent Communication Language. In: Software Agents Von: Bradshaw, J.M. (Hrsg.), MIT Press, Cambridge, MA, 1997. FIPA ACL: Agent Communication Language Specifications. Foundation for Intelligent Physical Agents. WWW Beschreibung, 2002. http://www.fipa.org/repository/aclspecs.html (zuletzt besucht am 25.9.2006) FIPA REFERENCE MODEL: FIPA-OS distribution 2.2.0, WWW Beschreibung des FIPA Referenzmodells, 2003. http://fipa-os.sourceforge.net/summary.htm (zuletzt besucht am 25.9.2006) FIPA SPECS: Standand FIPA Specifications. Foundation for Intelligent Physical Agents. WWW Beschreibung, 2002. http://www.fipa.org/repository/standardspecs.html (zuletzt besucht am 25.9.2006)
28
FLORES-MENDEZ, R.A.: Towards a Standardization of Multi-Agent System Frameworks, In: Crossroads Magazine, ACM, 1999. http://www.acm.org/crossroads/xrds5-4/multiagent.html (zuletzt besucht am 22.9.2006) GRASSHOPPER: Programmers guide der Firma IKV++GmbH verfuegbar in WWW, Berlin, 2001. http://www.itec.uni-klu.ac.at/~harald/program.pdf (zuletzt besucht am 22.9.2006) GRAY, R.S. und CYBENKO, G. und KOTZ, D. und RUS, D.: Mobile agents: Motivations and State of the Art, In: Handbook of Agent Technology Von: Bradshaw, J. (Hrsg), AAAI/MIT Press, 2000. HUBER, M.J.: Jam Agents in a Nutshell. WWW beschreibung von Jam Agents, 2001. http://www.marcush.net/IRS/Jam/Jam-man-01Nov01-draft.htm (zuletzt besucht am 2.10.2006) HUHNS, M.N. und SINGH, M.P.: Agents and Multi-agent Systems: Themes, Approaches, and Challenges. In: Readings in Agents. Von: Huhns, M.N. and Singh, M.P. (Hrsg.), San Francisco, CA, Morgan Kaufmann Publishers, 1998, S. 1-23. JADE HOMEPAGE: WWW Beschreibung Java Agent Development Framework, online Dokumentation, 2006. http://jade.tilab.com/ (zuletzt besucht am 22.9.2006) JENNINGS, N.R. und SYCARA, K. und WOOLDRIDGE, M.J.: A Roadmap of Agent Research and Development. In: Autonomous Agents and Multi-Agent Systems Journal. Von: N.R. Jennings, K. Sycara and M. Georgeff (Hrsg.), Kluwer Academic Publishers, Boston, 1 (1998) 1, S. 7-38. KAELBLING, L.P.: A Situated Automata Approach to the Design of Embedded Agents. In: Sigart Bulletin, 2 (1991) 4, S. 85-88. KREMPELS, K.H. u. a.: Entwicklung intelligenter Multi-Multiagentensysteme Werkzeuguntersttzung, 33. Jahrestagung der GI, Lecture Notes in Informatics, 34 (2003) S.31-46, Kllen Druck+Verlag GmbH, Bonn 2003. MAGEDANZ, T. u. a.: Grasshopper-A Universal Agent Platform Based on OMG MASIF and FIPA Standards. In: Agents Technology in Europe - ACTS Activities, InfoWin, September 1999. http://cordis.europa.eu/infowin/acts/analysys/products/thematic/agents/ch4/ch4.htm (zuletzt besucht am 22.9.2006) MASIF SUBMISSION: Mobile Agent System Interoperability Facilities Specification. Joint Submission, OMG TC Document orbos/97-10-05, November, 1997. http://www.omg.org/docs/orbos/97-10-05.pdf (zuletzt besucht am 26.9.2006) MILOJICIC, D. u.a.: MASIF: The OMG Mobile Agent System Interoperability Facility. Second International Workshop on Mobile Agents, MA'98, Springer-Verlag, Berlin 1998. MKBEEM: European Union IST Project. Reference Number IST-1999-10589, WWW Prsentation, 2002. http://mkbeem.elibel.tm.fr/ (zuletzt besucht am 25.9.2006)
29
NWANA H. und NDUMU, D.: A Perspective on Software Agents Research. In: The Knowledge Engineering Review, 14 (1999) 2. Cambridge University Press, NY, 1999. OHARE, G.M.P. und JENNINGS, N.R. (Hrsg.): Foundations of Distributed Artificial Intelligence. John Wiley & Sons Inc., New York, 1997. PROFACTOR HOMEPAGE: Forschungsfeld Multiagentensysteme, WWW-Firmenbeschreibung, Profactor Produktionsforschungs GmbH, sterreich, 2004. http://www.profactor.at/index.php?id=24 (zuletzt besucht am 22.9.2006) SEARLE, J.R.: Speech Acts. Cambridge University Press, Cambridge, MA, 1969. SYED, A. und DATUIN, J. und YALAMANCHILI, P.: A Survey of Mobile Agent Systems, CSE 221 Final Project, University of California, San Diego, Department of Computer Science and Engineering (CSE), June 2000. http://www.cse.ucsd.edu/classes/sp00/cse221/reports/dat-yal-adn.pdf (zuletzt besucht am 22.9.2006) WAGNER, G.: Vivid Agents How they Deliberate, How they React, How they are Verified. In: Agents Breaking Away. Von: Van de Velde, W. und Perram, J.W. (Hrsg.), Proceedings of MAAMAW 1996, Springer Lecture Notes on Artificial Intelligence 1038, 1996. WAGNER, G.: Foundations of Knowledge Systems with Applications to Databases and Agents. Kluwer Academic Publishers, 1998. WOOLDRIDGE, M.J.und JENNINGS, N.R. (Hrsg.): Intelligent Agents. Lecture Notes in Artificial Intelligence, 890 (1995). Berlin Springer-Verlag, Berlin, 1995.