Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

I. M., Christian Lange, U. P. Rescue team simulation Multiagentensystem.

Ähnliche Präsentationen


Präsentation zum Thema: "I. M., Christian Lange, U. P. Rescue team simulation Multiagentensystem."—  Präsentation transkript:

1 I. M., Christian Lange, U. P. Rescue team simulation Multiagentensystem

2 Gliederung 1)Aufgabe Agenten Unterschiede/Funktion 2)Umsetzung 3)Entity-Package 4)Control-Package 5)GUI-Package

3 Gliederung 5)(No)CollisionNoCoordination Agenten 6)search-Algorithmus 7)(No)CollisionCoordination Agenten 8)Erweiterungen, Verbesserungen 9)Programmvorstellung 10)Ergebnisse der Simulation

4 Aufgabe MAS zum Retten von Unfallopfern Survivor Verschlechtert seinen Gesundheitszustand mit einer Wahrscheinlichkeit von 60% je Zeiteinheit Ausgangsgesundheit globaler Parameter Agent Random NoCollisionNoCoordination CollisionNoCoordination NoCollisionCoordination CollisionCoordination

5 Agenten Random Random Bewegen sich zufällig Strafversetzung beim Kollidieren mit anderen Agenten Survivor gerettet durch Betreten des Feldes A AS

6 Agenten NoCollisionNoCoordination / CollisionNoCoordination NoCollisionNoCoordination / CollisionNoCoordination Bewegen sich mittels intelligente Algorithmen Kollisionen Vermeiden Strafversetzung Survivor werden gerettet durch Betreten des Survivor-Feldes A AS

7 Agenten NoCollisionCoordination / CollisionCoordination NoCollisionCoordination / CollisionCoordination Bewegen sich mittels intelligente Algorithmen Kollisionen Vermeiden Strafversetzung Rettet den Survivor durch Umkreisen dieses AA AS AA AAA ASA AAA AAA SA AA

8 Aufgabe Einstellungen Anzahl der Agenten Anzahl der Survivor Größe des Feldes Episoden Eine Episode beendet, wenn alle Survivor gerettet worden sindStatistik Durchschnittliche Rettungszeit Durchschnittliche gerettete Survivor je Agentenart

9 Umsetzung Erarbeiten der Agentenfunktionalität Recherche nach ähnlichen Projekten Sehr komplexe Algorithmen Klassendiagramm erstellt - Implementierung des Simulators Aufgabenverteilung

10 I. M. U. P. Christian Lange Erstellen des CollisionManager Erstellen der NoCollisionNoCoordin ation/ CollisionNoCoordinatio n Agenten Implementieren der abstracten Agenten, Teams Team Agenten (NoCollisionCoordinati on/ CollisionCoordination Agenten) Erweiterung Rescued Manager Grafische Darstellung der Welt und der Agenten Grafische Auswertung der Ergebnisse Implementieren der abstracten Agenten, Welt, Surviors, Random Agenten, Rescued Manager

11 Entwicklungsumgebung Java 1.5 Update 9 Plattformunabhängig Eclipse Freeware Bibliotheken JFreeChart

12 Entity-Package

13 World Klasse, welche die Welt repräsentiert kapselt Teams und Survivor Enthält das Spielfeld Field-Objekte Was befindet sich auf dem Feld? Was ist der Zustand des Feldes? explored?

14 Team Ein Team für jede Agentenart Enthält die Agenten Besitzt die TeamWorld Steuert Agenten und gibt Anweisungen des Systems weiter Stellt globale Teamvariablen bereit Kommunikation innerhalb des Teams Teams konkurrieren

15 Agent & Survivor Agent ID Aktuelle Position Zielpositon nearestSurvivor Survivor ID Gesundheitszustand rescued

16 Control-Package

17 Control-Klassen RescueSystem steuert den Ablauf in einem Zeitschritt & in den Episoden ruft die Manager auf Manager CollisionManager Prüft, ob Kollisionen und löst diese RescuedManager Prüft, ob Survivors gerettet wurden

18 RescueSystem steuert den Ablauf Nachricht an die Teams Agenten sollen sich umschauen & ihre Wunschposition Aufruf CollisionManager Nachricht an die Teams Agenten auf nächste Position updaten der World/TeamWorld Felder setzen (durch Teams) RescuedManager Gesundheitszustand der Survivors verändern GUI neu zeichnen

19 GUI-Package

20 GUI Swing JMenuBar JToolBar JTabbedPane JPanel

21 Einstellungen Anzahl der Agenten Sichtweite Wahrscheinlichkeit Gesundheitszustand Anzahl der Survivor Anzahl der Episode und die Pausenzeit

22 Statistiken 3 Arten Implementiert Ø gerettete Survivors je Agent pro Episode je Team pro Episode Ø Zeit für das Retten eines Survivors Exportieren und Drucken der Diagramme

23 Ines Moosdorf, Christian Lange, Ulrike Plötner (No)CollisionNoCoordinationAgent I. M. A AS

24 Einleitung NoCollisionNoCoordination & CollisionNoCoordination Beide gleiche Art, um Survivor zu befreien haben beide gleiche Algorithmen Unterschied nur bei Kollisionskonfliktlösen Sind keine Individualisten, sondern kommunizieren

25 Ablauf Agent Sensorik Überlegung Aktorik

26 Sensorik Agent: lookAround() schaut sich x Kästchen weit um trägt Entdeckungen in TeamWorld ein

27 Überlegung Team: findDestinations() kürzeste Wege für alle Agenten zu allen Survivors ermittelt Utilities übergibt diese Daten dem Agenten Agent: berechnet daraus Expected Utilities und bestimmt damit seinen optimalen Survivor

28 Berechnung Expected Utility = Probability x Utility P.. Probability S.. Summe aller kürzesten Wege eines Agenten k.. Kürzester Weg zum aktuellen Survivor Utility.. Kehrwert des Gesundheitszustand des Survivors

29 Kommunikation zwischen den Agenten wird vom Team angestoßen klären, wer welchen Survivor bekommt für jeden Survivor ein Agent (s=a) wenn weniger Survivor als Agenten die besten laufen zu den Survivors & die restlichen durchsuchen andere Felder (search()) wenn noch kein Survivor Agent ruft search()-Methode auf

30 Kommunikation zwischen den Agenten - Details

31 Nächster Schritt Agenten, die einen Survivor festzugeordnet bekommen haben: Nächste Position: Feld, welches näher am Survivor dran ist als ihr aktuelles Feld Agenten, die keinen Survivor haben: search()-Algorithmus: solange in eine Richtung gerade aus laufen, bis sie gegen eine Wand laufen

32 Kollisionsprüfung CollisionManager Control-Klasse solveCollisions()

33 Aktorik Team: moveAllAgents() Ruft move() der Agenten auf ändert Status der Felder in der TeamWorld und in der echten Welt Änderung in der Umgebung Agent: move() Gewünschte Position wird zur aktuellen Position Änderung im Agenten

34 TODO – (No)CollisionNoCoordination search()-Algorithmus nicht optimal NoCollision-Agenten Kollisionsalgorithmus

35 Ines Moosdorf, Christian Lange, Ulrike Plötner (No)CollisionCoordinationAgent U. P. AA AS AA AAA ASA AAA AAA SA AA

36 Ablauf lookAround findDestinations move

37 findDestination search if no survivor found else coordinateRescue

38 search definiere geradeaus laufe geradeaus while possible not possible

39 Grundgedanken Einteilung der Agenten in Rettungsteams ANIM – AgentsNotInMission SNIM – SurvivorsNotInMission SIM – SurvivorsInMission

40 findDestinations() findDestinations() { checkDisappearedSurvivors(); checkNewSurvivors(); coordinateRescue(); }

41 coordinateRescue() SIM: calcNextPositionRescueTeam() Bildung der Rettungsteams aus ANIM wenn es SNIM gibt: calcAgentsForRescue() calcShortestWays() putPrioritySurviovrInMission()

42 Erweiterungen CollisionManager Sichtweite der Agenten momentan können sie hinter Mauern sehen

43 Erweiterungen

44 Verbesserungen search-Algorithmus Coordination-Agents: flexiblere Teams prioritySurvivor

45 Programmvorstellung

46 Ergebnisse der Simulation

47

48 Größe 30x30 2 RandomAgents 1 CollisionNoCoordinationAgent 3 CollisionCoordinationAgent Sichtweite 2 Survivors 30 Episoden 10

49

50

51


Herunterladen ppt "I. M., Christian Lange, U. P. Rescue team simulation Multiagentensystem."

Ähnliche Präsentationen


Google-Anzeigen