• Keine Ergebnisse gefunden

Kapitel 3 Agentenarchitekturen 66

4.4 TÆMS / GPGP

Der Beitrag von TÆMS / GPGP12 für die agentenorientierte Programmierung liegt in der Modellierung und Nutzung von Koordinationsbeziehungen. Anders als bei COOL findet Koordination nicht in globalen Kooperationsprotokollen Ausdruck, sondern wird lokal behandelt. Hierfür bietet TÆMS ein „Rahmenwerk“ zur Reprä-sentation domänenunabhängiger Koordinationsprobleme und einer Zuordnung von Koordinationsmechanismen an. Darüberhinaus enthält TÆMS eine Simulations-umgebung, in der verschiedene Koordinationsmechanismen in unterschiedlichen Kontexten gegeneinander getestet werden können.

Die Spezifikation findet auf zwei Ebenen statt: Zunächst werden hierarchische Task-Strukturen beschrieben und zu organisatorischen Einheiten zusammengefaßt.

Danach werden zwischen Elementen innerhalb einer Struktur die Koordinationsbe-ziehungen herausgearbeitet. Nach abgeschlossener Modellierung greifen die GPGP13-Mechanismen in den Agenten zur wohlkoordinierten Auswahl und Durch-führung von Aktionen gemäß vorgegebener Ziele.

Task-Strukturen

Eine Szenariobeschreibung besteht aus einer Menge von Task-Strukturen. Diese werden als gerichtete, azyklische Graphen dargestellt. Jeder Knoten im Graph stellt eine Task dar, verbundene Knoten drücken Task-Subtask-Beziehungen aus. Knoten ohne Nachfolger werden auch Methoden genannt, das sind ausführbare, elementare Aktionen. Alle Task-Strukturen, zwischen denen Abhängigkeiten bestehen, werden zu einer Task-Gruppe zusammengefaßt. Auf diese Weise definiert jede Task-Grup-pe eine Menge von Aktionen, die - unmittelbar oder mittelbar - voneinander abhän-gig sind. Umgekehrt sind Tasks, die unterschiedlichen Task-Gruppen angehören, voneinander unabhängig. Vervollständigt wird eine Task-Gruppe durch eine Zeit-spezifikation, die angibt, wann spätestens die Gruppe abgearbeitet sein muß.

Jede Task besitzt ein Qualitätsattribut. Die Qualität einer Task wird durch die Qualität der Subtasks bestimmt. TÆMS bietet zur Aggregation die Möglichkeit der Summenbildung, Minimum, Maximum sowie arithmetisches Mittel (siehe die unter den Knoten in Abbildung 4-6 stehenden Namen).

12. Task Analysis, Environment Modeling, and Simulation [Decker 1995] und Generalized Partial Global Planning [Decker, Lesser 1991].

13. GPGP ist historisch aus der verteilten Sensoranwendung DVMT [Lesser, Corkill 1983], [Durfee, Lesser 1989], [Durfee, Lesser 1991] entstanden. Es besteht aus einer Reihe von Datenstrukturen und Algorithmen zur Behandlung der nachfolgend beschriebenen Koordinationsbeziehungen.

Methoden werden mit den generischen Attributen Qualität, Zeit und Kosten fein-spezifiziert. Der Tatsache, daß diese Quantitäten gewöhnlich nicht exakt vorhersag-bar sind, wird einer Zuordnung von Ungewißheitsfaktoren in Form von Wahr-scheinlichkeiten Rechnung getragen. Koordinationsbeziehungen zwischen Paaren von Zielen oder Aktionen bringen zusätzliches Wissen ein. Wenn mehrere konkur-rierende Methoden existieren, können die Attribute für die Methodenauswahl her-angezogen werden.

Abbildung 4-6: Modellierung einer Task-Struktur in TÆMS14

Koordinationsbeziehungen

Die elementare Subtask-Beziehung wurde bereits oben erklärt. Neben dieser agen-tenlokalen Relation15 existieren Koordinationsbeziehungen zwischen Tasks, die globale Effekte haben. Diese Effekte beschränken sich im TÆMS-Kontext bei den betroffenen Agenten auf Zeit- und Qualitätsänderungen.

14. Die Repräsentation sagt nichts darüber aus, ob es sich bei Subtasks um UND oder ODER-Beziehungen handelt. [Decker, Lesser 1995] (S.10) sprechen von einer ODER-Beziehung im Falle einer MAX-Aggregationsvorschrift.

15. Task-Subtask-Beziehungen sind deshalb lokaler Natur, weil gewöhnlich die gesamte Task-Struktur (im Gegensatz zur Task-Gruppe) in einem Agenten angesiedelt ist.

T

• Die enables-Beziehung drückt aus, daß eine Task beendet sein muß, bevor die andere starten darf.

• Mit facilitates wird beschrieben, daß eine Task eine andere unterstützt. Wenn die unterstützende Task ausgeführt wurde, bewirkt dies, weil deren Ergebnis ge-nutzt werden kann entweder eine Steigerung der Qualität oder Verbesserung der Performance bei der unterstützten Task.

Hinders ist das Gegenteil von facilitates. Die Qualität der abhängigen Task wird herabgesetzt oder deren notwendige Laufzeit verlängert.

Causes drückt aus, daß die erfolgreiche Abarbeitung einer Task automatisch die Vollendung der abhängigen Task bewirkt.

Cancels bewirkt durch Herabsetzen der Qualität auf 0, daß eine Task nach Be-endigung einer anderen nicht mehr durchgeführt wird.

Andere Beziehungen wie precedence oder shares-result lassen sich aus den oben genannten ableiten.

Ein weiteres Mittel zur Aktivitätenkoordinierung in TÆMS bieten Ressourcen.

Die Verknüpfung einer Task mit einer Ressource bewirkt zwei Effekte: Einerseits wird der Zustand der Ressource durch eine der Methoden uses, replenishes, con-sumes, reads oder writes verändert, andererseits bewirkt deren Nutzung Änderun-gen in bezug auf die Qualität und Dauer der Task. Allerdings ist die Ressourcenmo-dellierung sehr einfach gehalten; mehr als zwei Tasks können nicht dieselbe Res-source nutzen.

Koordinationsmechanismen

Unter dem Begriff Generalized Partial Global Planning ist eine Serie von Mecha-nismen zur Verarbeitung von Koordinationsbeziehungen zusammengefaßt. GPGP erfordert keine spezielle Agentenarchitektur, gefordert werden bloß eine Belief-Wissensbasis, ein Scheduler und ein Koordinationsmodul. Die Wissensbasis enthält die oben beschriebenen Task-Strukturen anderer Agenten. Im Koordinationsmodul sind die nachfolgend beschriebenen Mechanismen enthalten. Dort findet auch die Steuerung eines Agenten statt: Zyklisch, jedoch mit einstellbarem Aufwand wird

„Informationssammlung“, Kommunikation, Scheduling und Ausführung der loka-len Methoden betrieben. Informationssammlung betrifft das Eintragen aller emp-fangener Informationen in die Belief-Wissensbasis; Kommunikation beschränkt sich auf das Versenden von Task-Strukturen und Ergebnissen.

Herzstück eines jeden GPGP-Agenten ist ein nutzenoptimiert arbeitender Sche-duler. Dieser verarbeitet die Informationen der Task-Hierarchien in Abhängigkeit von benutzerdefinierten Kriterien zu einer Task-Reihenfolge. Als Anforderungen können Gewichtungen der Qualitäts- und Kostenparameter angegeben werden. Die Vorgehensweise des Schedulers ist inkrementell; er berücksichtigt bereits geplante

Tasks aufgrund eigener lokaler oder globaler Verpflichtungen. Dabei werden die Berechnungsaufwandsinformationen genutzt, um Vorhersagen über den Zeitpunkt von vorliegenden Teilergebnissen zu machen.

Sowohl die lokalen wie auch die nicht-lokalen Commitments sind Resultat der nachfolgend vorgestellten Koordinationsmechanismen:

• Austausch privater Sichten auf Task-Strukturen: Agenten können einander über ihre Task-Strukturen informieren. Dabei können gesamte Strukturen, aber auch Teilstrukturen und abstrahierte, unvollständige Strukturen kommuniziert wer-den. Ziel ist es, anderen Agenten eine globalere Sicht zu verschaffen. Ein Agent, der eine Task-Struktur eines anderen Agenten empfängt, kann neue Koordinati-onsbeziehungen erkennen und nutzen und so seine oder die globale Performance verbessern. Zwischen dem möglichen Nutzen kommunizierter Strukturen und deren Umfang besteht jedoch eine relativ starke Wechselbeziehung. Um den Kommunikationsaufwand gering zu halten macht es daher üblicherweise Sinn, nur abstrakte Strukturen zu versenden.

• Kommunikation von Ergebnissen: Auch das Mitteilen ermittelter Resultate nach erfolgreicher Abarbeitung lokaler Methoden dient primär zur Vervollständigung der Weltsicht anderer Agenten. Hierbei können unterschiedliche Strategien ge-fahren werden: Entweder ist ein Agent wenig mitteilsam und gibt nur Ergebnis-se, die aus Verpflichtungen anderen Agenten gegenüber beruhen heraus, oder er kommuniziert sämtliche Ergebnisse per Broadcast an alle Agenten. Auch ein Mittelweg kann beschritten werden, indem Ergebnisse, zu deren Übermittlung sich ein Agent verpflichtet hat, zusammen mit anderen Ergebnissen derselben Task-Struktur - eventuell per Broadcast - kommuniziert werden.

• Behandlung von Redundanzen: Redundanzen treten auf, wenn mehrere Agenten an denselben Methoden oder Task-Strukturen arbeiten oder wenn Unterstruktu-ren innerhalb einer Task-Hierarchie als Alternativen zueinander gelten. Ziel ist es, durch Redundanzvermeidung Mehrfacharbeit zu verhindern und so zu einer besseren Gesamtperformance zu gelangen. Die einfachste Methode sieht vor, daß ein beliebiger Agent zur Verarbeitung ausgewählt wird und das Resultat dem (bzw. den) anderen mitteilt. Dazu geht der Agent eine nicht-lokale Ver-pflichtung ein. Auch ist es möglich, die Beauftragung eines Agenten zum Ge-genstand von Verhandlungen zu machen. Hierbei gilt es, den Agenten mit der besten Lösungsqualität, der schnellsten Lösungsfindung oder der geringsten Auslastung zu finden.

• Verarbeitung von Koordinationsbeziehungen: „Harte“ Beziehungen wie ena-bles wirken direkt auf die Reihenfolge von Methoden. Sind für eine Methode ei-ne Menge von vorher zu erledigenden Aufgaben bekannt und wurde für die Methode bereits eine zeitliche Zusage gemacht, müssen die Ergebnisse der vor-angestellten Aufgaben rechtzeitig geliefert werden. Daraus ergeben sich Cons-traints für die spätesten Endtermine anderer Aufgaben, die den betreffenden Agenten kommuniziert werden müssen und dort beim Scheduling, zum Beispiel

durch Zeitminimierungsstrategien oder Umsortierung bereits eingeplanter Me-thoden, entsprechend zu berücksichtigen sind. In Verbindung mit Redundanz können zeitliche Nebenbedingungen auch relativ einfach durch Zuordnung der Aufgabe an den „eiligsten“ Agenten berücksichtigt werden.

Andere, „weiche“ Beziehungen sind verhandelbar. Beispielsweise kann eine er-kannte facilitates-Relation lokal ohne Kommunikation genutzt werden, um die Vorgänger-Methode möglichst früh einzuschedulen. Dann ist die Wahrschein-lichkeit, daß der qualitätssteigernde oder laufzeitverringernde Effekt tatsächlich eintritt größer als bei späterer Bearbeitung.

4.4.1 Methodik

Anders als bei den vorher beschriebenen Ansätzen steht hier nicht der Agent im Mittelpunkt des Intersses. Stattdessen gibt TÆMS eine Modellierungssprache für komplexe Aufgaben vor. Der Programmierer spezifiziert Tasks baumartig top-down bis zur Ebene von Methoden und reichert die entstandene abstrakte Struktur mit Ko-ordinationsbeziehungen zwischen Knoten an.

Anschließend sind die Methoden zu implementieren und in Agenten zu integrie-ren. Entscheidungsunterstützung für die Zuordnung von Methoden an Agenten, die Gestaltung der Schätzwerte für die generischen Parameter, den Umfang der kom-munizierten Strukturen und die für die Systemperformance wichtigen Entscheidun-gen in bezug auf redundante Auslegung von Methoden gibt TÆMS jedoch nicht.

Dafür kann eine Simulationsumgebung genutzt werden, um Aufschluß über das Sy-stemverhalten bei unterschiedlicher Ausegung der genannten Parameter zu bekom-men. Aus analytischen und durch Simulation belegten Betrachtungen wurden eine Reihe von generellen Vorhersagen bezüglich der Ausgestaltung einzelner Parameter abgeleitet.

Im Gegensatz zu den bisher vorgestellten Ansätzen spielt die Modellierung von typischen agentischen Fähigkeiten wie Kommunikation oder Kooperationsproto-kollen keine Rolle.

4.4.2 Bewertung

TÆMS beschreitet mittels einer high-level-Spezifikationssprache einen problem-zentrierten Ansatz. Der Beitrag zur agentenorientierten Programmierung liegt in der expliziten Herausarbeitung von Koordinationsbeziehungen zwischen Aspekten der Problemlösung. TÆMS/GPGP wurde für Anwendungen im Bereich verteilter Sen-sor-Netzwerke konzipiert und erfolgreich eingesetzt16.

Von den Agenten wird im wesentlichen eine verteilte Scheduling-Leistung er-bracht. Dabei nutzen sie global verfügbares, abstraktes Problemwissen in Form der

ihnen bekannten Taskstrukturen und Koodinationsbeziehungen sowie die während der Problemlösung übermittelten Informationen und eigene Schlußfolgerungen über die Aktivitäten anderer Agenten zur Erstellung lokaler Reihenfolgepläne.

Durch die Konzentration auf das Erkennen und Ausnutzen von Koordinationsbezie-hungen skalieren derartige Systeme gut.

Jedoch werden wesentliche Eigenschaften, die andere Agentenmodelle aus-zeichnen, nicht unterstützt. Insbesondere die fehlende sprechaktbasierte Kommuni-kation führt dazu, daß mit TÆMS realisierte Anwendungen geschlossene Systeme sind. Durch die Konzentration auf lokale Koordinierungsfähigkeiten und das Feh-len eines flexibFeh-len Kooperationsmodells eignet sich dieser Ansatz nicht für dynami-sche Szenarien mit wechselnden, nicht im vorhinein bekannten Aufgabenstellun-gen. Im übrigen wird von den Autoren der Status von TÆMS/GPGP als Multiagen-ten-Testbett herausgestellt. Den Forschungscharakter dieses Ansatzes unterstreicht ein Simulator, der zwecks Gewinnung von Erkenntnissen in Bezug auf Skalierung von Agenten und Systemen eingesetzt wird.