Universität Ulm, Fakultät für Informatik, Abtl. Künstliche Intelligenz up: Diplomarbeiten

Agentenmodellierung und -evaluierung im Rahmen eines objektorientierten verteilten Simulationssystems

Bernd Schattenberg

Diplomarbeit (1998)


 Zusammenfassung

Testbeds für Multi-Agenten Systeme ermöglichen Versuche mit mehreren Agenten, die kooperierend oder konkurrierend in einer gegebenen Umwelt agieren. Zumeist werden diese Experimentierumgebungen jedoch nur für eine spezielle Agenten-Architektur in einem speziellen Szenario erstellt und bieten deshalb nicht allgemein verwendbare Werkzeuge an. Um die Erstellung und Wiederverwendung von Testbeds und ihren Komponenten zu unterstützen, integrieren wir Agenten in einen allgemeineren Modellierungs- und Simulationsformalismus für diskret Ereignis-orientierte Systeme. Dieser kombiniert ein komponentenbasiertes, hierarchisches Modelldesign mit einem parallel und verteilt arbeitenden Ausführungsmechanismus. Die Arbeit zeigt die prototypische Realisierung des Testbeds James (Java based Agent Modeling Environment for Simulation), welches intelligente Agenten mit austauschbaren deliberativen Komponenten in einer dynamischen Umwelt simuliert. Eine exemplarisch durchgeführte Evaluierung planender Agenten im Tileworld-Szenario illustriert die Möglichkeiten von James.


 Auszug: Kapitel 1 Zusammenfassung

Ein wichtiger Schritt im Entwicklungszyklus von Sofware ist deren Evaluation. Da Computer-Programme immer mehr in für Mensch und Wirtschaft kritischen Bereichen eingesetzt werden, sind Methoden zur Einschätzung von Korrektheit und Leistungsfähigkeit der Applikationen von größerer Bedeutung denn je. Diese Arbeit fokussiert Methoden zur Leistungsmessung einer besonderen Art von Software, die sich in der Praxis aufgrund ihrer hohen Komplexität formaler Verifikation bisher entzieht: intelligente Agenten [Fisher und Wooldridge 93,Wooldridge 96]. Unter dem Begriff Agent verstehen wir Entitäten, welche die folgenden von Wooldridge und Jennings [Wooldridge und Jennings 95] beschriebenen Eigenschaften besitzen:

  • Autonomie: Agenten arbeiten ohne direkte Intervention durch Menschen und besitzen selbst die Kontrolle über ihr Handeln.
  • soziale Fähigkeiten: Agenten interagieren mit anderen Agenten (oder dem Benutzer) mittels einer Art Agenten-Kommunikationssprache.
  • Reaktivität: Agenten nehmen ihre Umwelt wahr und reagieren rechtzeitig und angemessen auf änderungen in ihrer Umwelt.
  • Pro-Aktivität: Agenten agieren nicht nur als Antwort auf änderungen in ihrer Umwelt, sondern sind in der Lage, zielgerichtet die Initiative zu ergreifen.
Mit dem Begriff ``intelligent'' wollen wir in Bezug auf die Pro-Aktivität und Autonomie triviale Software wie Druckjob- oder Mail-Agenten ausschließen und das Augenmerk auf Programme lenken, die deliberative Komponenten integrieren, wie zum Beispiel Planer oder Lern-Algorithmen. Auf anderen Gebieten haben sich im Laufe der Zeit Test-Verfahren etabliert, um die Leistungsfähigkeit, im folgenden oft Performanz genannt, zu messen. Ein Beispiel hierfür sind standardisierte Animationssequenzen, welche die Geschwindigkeit einer Grafikkarte ermitteln und somit einen direkten Vergleich zweier Modelle erlauben.
Da es sich bei intelligenten Agenten meist um hochkomplexe Software handelt, deren Vertreter sich in den seltensten Fällen in Aufbau und Funktion auch nur annähernd ähnlich sind, gestalten sich solche Tests recht schwierig. Es gibt keine allgemein vorhandenen Funktionalitäten, die der Reihe nach aktiviert werden können und vergleichbare Ergebnisse liefern1. Aus diesem Grund hat sich bei Entwicklern die Praxis durchgesetzt, die Agenten mit prototypischen Problemstellungen zu konfrontieren, das heißt, sogenannte benchmark tests durchzuführen. Als Beispiel sei hier das Spiel ``Türme von Hanoi'' genannt, das Planern präsentiert wird.
Da aber die meisten für ein Experiment relevanten Situationen, z.B. das Verhalten eines Agenten im Konflikt-Fall, nur selten auftreten, muß immer eine größere Anzahl von Durchläufen stattfinden2. Nur so kann ein statistisch auswertbarer Einfluß der verschiedenen Stellgrößen ermittelt werden [Anderson 95]. Es sind viele Durchläufe nötig, um generelle Aussagen zu treffen.
So begann man Testumgebungen für das jeweilige Produkt zu erstellen und es in möglichst aussagekräftigen Szenarien systematisch zu erproben. Testbeds für Multi-Agenten Systeme sind solche Umgebungen, die es zudem erlauben, kontrollierte Experimente mit mehreren interagierenden Agenten in einer virtuellen Umwelt durchzuführen [Hanks 93].

Jedoch werden diese Testbeds meistens sehr speziell auf die zu testende Software zugeschnitten. Für eine andere Agenten-Architektur oder ein neues Einsatz-Szenario müssen die Systeme jeweils von Grund auf neu implementiert werden, da in der Mehrzahl der Fälle das Design zu spezialisiert und monolithisch ist:
    "...clearly an undesirable state of affairs.." [Jennings and Wooldridge, 98]
Unser Ziel ist es daher, einen Ansatz zum Design von Testbeds vorzustellen, deren Komponenten beliebig verändert, ausgetauscht und vor allem wiederverwendet werden können: James. Den theoretischen Unterbau liefert DEVS, ein diskret Ereignis-orientierter Modellierungs- und Simulationsformalismus. Er wurde von Petra und Dirk Tyschler in einem objektorientierten Simulationssystem in Java umgesetzt und dabei um eine verteilte und parallele Abarbeitung sowie um variable Modellstrukturen ergänzt [D.Tyschler 98, P.Tyschler 98].

Aufgabenstellung:
Im Rahmen dieser Diplomarbeit soll ein diskret Ereignis-orientierter Simulationsformalismus für die Modellierung und Evaluierung von intelligenten Agenten eingesetzt werden. Dazu ist zunächst festzustellen, welche Möglichkeiten der Ansatz im Vergleich mit anderen bietet (Kapitel 2). Ein existierendes verteiltes, objektorientiertes Simulationssystem in Java soll um ein Testbed für intelligente Agenten erweitert werden. Kapitel 3 stellt die Realisierung eines Testbeds vor, Kapitel 4 zeigt die entwickelten Werkzeuge für die Modelliererung und Evaluierung. In Kapitel 5 führen wir ein Experiment durch, das die Verwendung unseres Systems illustriert. Wir schließen in Kapitel 6, welches die Ergebnisse der vorliegenden Arbeit zusammenfaßt und einen Ausblick bietet.


1 Ein Gegenbeispiel sind Datenbanken, deren maximal möglicher Transaktionsdurchsatz durch eine gegebene Test-Datenmenge ermittelt werden kann.
2 In diesem Zusammenhang stellt sich die berechtigte Frage, ob systematische Experimente in manchen Fällen überhaupt machbar sind: Es gibt viele realitätsnahe Szenarien, die beliebig viele miteinander kombinierbare Einflußgrößen haben [Hanks 93].
 Online Kopie
Die Diplomarbeit - the diploma thesis - gzipped postscript (1.6MB) und als gzipped pdf (1.1MB) in Deutsch - in German.

 BibTeX Eintrag
@MastersThesis{Schatten98,
  author = {Bernd Schattenberg},
  title = {{A}gentenmodellierung und {E}valuierung im {R}ahmen eines objektorientierten verteilten {S}imulationssystems},
  school = {Universit{\"a}t Ulm},
  year = 1998}


Abtl. KI Startseite  Hilfe  Mail an Webmaster  B. Schattenberg - 17. Dezember 1998