2. Gliederung Grundlagen Agenten allgemein Multiagentensystem CRIO metamodel Janus Project Allgemeines Lebenszyklus eines Agenten in Janus Starten eines Agenten Agent-to-Agent Direct Communication 2
5. 1.1 Agenten Allgemein "Ein Agent ist ein Computersystem das sich in einer bestimmten Umgebung befindet und welches fähig ist, eigenständige Aktionen in dieser Umgebung durchzuführen, um seine (vorgegebenen) Ziele zu erreichen." 5
6. 1.1 Agenten Allgemein Einsatz von Agenten: E-Commerce Informationsrecherche Simulation Erledigen von Routineaufgaben Agententypen: Reaktive Agenten Adaptive Agenten Kognitive Agenten 6
7. 1.2 Multiagentensystem Gehört zum Forschungsgebiet der Künstlichen Intelligenz Ist ein System aus mehreren gleichartigen oder unterschiedliche spezialisiert handelnden Agenten Lösen gemeinsam ein Problem Beschäftigen sich damit, wie autonome, verteilte und „intelligente“ Systeme als Einheit ihr spezifisches Wissen, ihre Ziele, Fähigkeiten und Pläne abstimmen, um koordiniert zu handeln oder Probleme zu lösen 7
8. 1.3 CRIO-metamodel CRIO: Capacity, Role, Interaction and Organization Organisation Sammlung von Rollen Rollenstehen in einengemeinsamenKontext Kontext: gemeinsames Wissen, soziale Regeln und Normen Ziel: gemeinschaftliche Erfüllung einer Aufgabe Rollen ist struktriertes Verhalten Ziel einer Rolle ist zur Erfüllung von Aufgaben einer Organisation beizutragen Interne Rolle (Common Role) Externe Rolle (BoundaryRole) 8
9. 1.3 CRIO-metamodel Interaktion Dynamische, nicht vorher bekannte Abfolge von Ereignissen Rollen reagieren je nach ihrem Verhalten auf die Ereignisse Kapazität / Capacity: hier frei übersetzt mit Fähigkeit abstrahiert know-how von einer konkreten Realisierung 9
11. 2.1 Allgemeines beschäftigt sich mit Modellierung und Simulation von komplexen Systemen besonders „holonicmultiagentsystems“ Janus ist eine Multiagentenplattform zur Implementierung von Mutliagenten in Java 1.5 geschrieben basiert auf dem CRIO metamodel Schwerpunkt: Unterstützung und Implementation von Rollen und Organisation bei Agenten 11
12. 2.2 Lebenszyklus eines Agenten Jeder Agent in Janus durchlebt verschiedene Lebenszyklen Diese sind: Activate Live End 12
15. 2.4 Agent-to-Agent Communication One-to-One-Communication Möchte ein Agent eine Nachricht an einen anderen Agenten senden wird folgenden Methode verwendet: AgentAddresssendMessage(Message message, AgentAddressagents) One-to-Many Communication Möchte ein Agent eine Nachricht an viele senden wird folgenden Methode verwendet voidbroadcastMessage(Message message, AgentAddressagents) 15
17. 3.1 MyAgent Zeigt ein selbst implementiertes einfaches Beispiel, wie man einen Agenten startet und welchen Zustand er besitzt für die Erstellung war MAVEN nötig MAVEN = Build-Management-Tool 17
18. 3.2 Market-Like-Community zeigt die Implementierung von Rollen als first-class entity benutzt das CRIO-Metamodell Implementiert mit der Janus-Platform Beispiel zeigt eine Marktähnliche Gemeinschaft Grundlagen: Ist ein Beispiel für den Inlands-Reisemarkt es gibt 3 einfache Agententypen: einen Client (Kunde) einen Broker (Makler) 4 Provider (Anbieter) Client möchte das beste Reiseangebot bekommen 18
19. 3.2 Market-Like-Community Vorgang: Sendet Vorschlag an CBroker CBroker leitet an PBroker weiter PBroker schickt Information an alle verfügbaren Provider Pbroker wählt beste Alternative und teilt diese den Client mit Der beste Provider und der Client treten in Kontakt, um Bestellung abzuschließen 19
20. 3.2 Market-Like-Community Organisationen Das Beispiel hat 3 Organisationen, jede davon besitzt 2 Rollen Purchase (Kauf) Providing (Bereitstellung) Contracting (Vertragsnehmer)) Für Beispielszenario wird also benötigt: 3 Agententypen 3 Organisationen 6 Rollen 20
22. 3.3 Boids wurde 1986 als ein Computer Modell vorgeschlagen, dass koordinierte Tierbewegung simuliert, wie Vogel- oder Fischschwärme wird häufig in der Computergrafik genutzt, die eine realistische Darstellung von Vögeln oder anderen Lebewesen liefern sollen die 3 einfachen Verhaltensregeln: Separation (Trennung) Alignment (Angleichen) Cohesion (Zusammenhalt) 22
24. 3.4 AntColony das Beispsielzeigt die Simulation eines Ameisenstaates mit Hilfe eines Multiagentensystems dies liefert eine mögliche Implementierung von BOIDS Das AntColony Prinzip eine einzelne Ameise hat kein globales Wissen über die Aufgaben, die sie ausführt Die Aktionen basieren auf lokalen Entscheidungen und sind meist nicht vorhersehbar Das intelligente Verhalten entsteht durch die Selbstorganisation und indirekten Kommunikation zwischen den Ameisen 24
25. 3.4 AntColony Definition der Umwelt die Umwelt ist in ein Raster zerlegt jede Zelle des Raster kann eine Kolonie, eine Pheromon oder eine Nahrungsquelle sein In dem Beispiel gibt es 2 Typen von Pheromonen: Das „Food-Pheromon“ gibt die Richtung der Nahrungsquelle an Das „Colony-Pheromon“ die gibt Richtung der Ameisenkolonie an 25
26. 3.4 AntColony Definition der AntColony Organisation Die Organisation besteht aus 2 Rollen: Patroller: Läuft zufällig durch die Kolonie und verstreut das „Colony Pheromon“ Kehrt zur Kolonie zurück, wenn er denkt, das seine Pheromone auf die Hälfte des Ursprungswertes gesunken sind Forager: Dieser sucht zufällig nach Futterquellen Während der Suche wirft er das „Colony Pheromon“ aus Nachdem er eine Futterquelle gefunden hat, versucht er zur Kolonie zurückzukehren mit Hilfe des Colony Pheromons Während er zurück zur Kolonie geht wirft er „Food-Pheromons“ aus um die Nahrungsquelle später wieder zu finden 26