Janus Vortrag

28
Janus Vortrag von Rene Kassel 1

Transcript of Janus Vortrag

Page 1: Janus Vortrag

1

Janus

Vortrag von Rene Kassel

Page 2: Janus Vortrag

2

Gliederung

1. Grundlagen1. Agenten allgemein2. Multiagentensystem3. CRIO metamodel

2. Janus Project1. Allgemeines2. Lebenszyklus eines Agenten in Janus3. Starten eines Agenten4. Agent-to-Agent Direct Communication

Page 3: Janus Vortrag

3

Gliederung

3. Praktische Beispiele6. MyAgent7. Market-Like-Community8. Boids9. Ant Colony

4. Schlusswort

Page 4: Janus Vortrag

4

1. Grundlagen

Page 5: Janus Vortrag

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."

Page 6: Janus Vortrag

6

1.1 Agenten Allgemein

Einsatz von Agenten: E-Commerce Informationsrecherche Simulation Erledigen von Routineaufgaben

Agententypen: Reaktive Agenten Adaptive Agenten Kognitive Agenten

Page 7: Janus Vortrag

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

Page 8: Janus Vortrag

8

1.3 CRIO-metamodel CRIO: Capacity, Role, Interaction and Organization Organisation

Sammlung von Rollen Rollen stehen in einen gemeinsamen Kontext 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 (Boundary Role)

Page 9: Janus Vortrag

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

Page 10: Janus Vortrag

10

2. Janus-Project

Page 11: Janus Vortrag

11

2.1 Allgemeines

beschäftigt sich mit Modellierung und Simulation von komplexen Systemen

besonders „holonic multiagent systems“ 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

Page 12: Janus Vortrag

12

2.2 Lebenszyklus eines Agenten

Jeder Agent in Janus durchlebt verschiedene Lebenszyklen

Diese sind:

Activate

Live

End

Page 13: Janus Vortrag

13

2.2 Lebenszyklus eines Agenten

Page 14: Janus Vortrag

14

2.3 Starten eines Agenten

Page 15: Janus Vortrag

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:

AgentAddress sendMessage(Message message, AgentAddress agents)

One-to-Many Communication Möchte ein Agent eine Nachricht an viele senden wird

folgenden Methode verwendet

void broadcastMessage(Message message, AgentAddress agents) 

Page 16: Janus Vortrag

16

3. Praktische Beispiele

Page 17: Janus Vortrag

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

Page 18: Janus Vortrag

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

Page 19: Janus Vortrag

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

Page 20: Janus Vortrag

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

Page 21: Janus Vortrag

21

3.2 Market-Like-Community

Page 22: Janus Vortrag

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)

Page 23: Janus Vortrag

23

3.3 Boids

Page 24: Janus Vortrag

24

3.4 Ant Colony das Beispsiel zeigt die Simulation eines

Ameisenstaates mit Hilfe eines Multiagentensystems

dies liefert eine mögliche Implementierung von BOIDS

Das Ant Colony 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

Page 25: Janus Vortrag

25

3.4 Ant Colony

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

Page 26: Janus Vortrag

26

3.4 Ant Colony Definition der Ant Colony 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

Page 27: Janus Vortrag

27

3.4 Ant Colony

Beispiel

Page 28: Janus Vortrag

28

4. Schlusswort