Agents, Hierarchies and Sustainability
-
Upload
zia-velasquez -
Category
Documents
-
view
37 -
download
0
description
Transcript of Agents, Hierarchies and Sustainability
Agents, Hierarchies and SustainabilityAgents, Hierarchies and Sustainability
Vortrag von und mit André PreußnerVortrag von und mit André Preußner
Nach dem gleichnamigen Paper von Andreas König, Michael Nach dem gleichnamigen Paper von Andreas König, Michael Möhring und Klaus G. TroitzschMöhring und Klaus G. Troitzsch
InhaltInhalt
1. Agents, Hierarchies and Sustainability1.1 Die Welt1.2 Der Zucker1.3 Die Agenten1.4 Die Experimente / Ergebnisse
2. Eigene Implementation2.1 Programmdetails2.2 Ergebnisse2.3 Vorführung
Die WeltDie Welt
• sugarscape-artige Welt
• Gitter aus diskreten Zellen
• torusförmig, d.h. grenzen-los
• Simulation in diskreten Zeitschritten (runden-basiert)
Der ZuckerDer Zucker• Pflanzen dienen als Futter für die Agenten
• können auf allen Zellen wachsen
• ein gewisser Prozentsatz an Zellen ist aber unfruchtbar
• drei Parameter beeinflussen das Wachstum auf einer Zelle: – ein Minimum an Pflanzenmasse, dass auf der Zelle vorhanden
sein muss
– ein Maximum an Pflanzenmasse, das von der Zelle getragen werden kann
– ein Inkrementwert, um den der Energiewert pro Runde erhöht wird (falls das Minimum nicht unterschritten und das Maximum überschritten ist)
• eine Zelle kann Samen an Nachbarzellen verteilen• bei fruchtbaren Zellen bleibt er liegen, bei
unfruchtbaren wird er gelöscht• zwei Parameter kontrollieren den
Samenaustausch: – Spread.probability: globaler Parameter, bestimmt die
Wahrscheinlichkeit, mit der Samen auf andere Zellen verbreitet wird
– Spread.percentage: Anteil an Pflanzenmasse, die verschickt wird (wird berechnet von Pflanzenmasse - minimale Pflanzenmasse, um das eigene Überleben der Pflanze zu sichern)
SamenverbreitungSamenverbreitung
Die AgentenDie Agenten
• jeder Agent hat: – einen internen Energiespeicher– ein eigenes Erinnerungsvermögen
• speichert das Wissen über die Belegung von Zellen mit Nahrung und Agenten
• unbekannte Zellen bleiben schwarz
• Gedächtnis wird jede Runde aufgefrischt
• Sichtbarkeitsradius einstellbar
• Informationen können wieder vergessen werden
BedürfnisseBedürfnisse
• Überleben: ausreichend Nahrung (Energiewert nicht auf 0 absinken lassen)
• Wohlstand: soviel Nahrung wie möglich besitzen (keine obere Grenze)
• Neugier: soviel wie möglich über die Welt erfahren
• Fortpflanzung: Nachkommen zeugen (wenn der Agent alt genug ist)
• Einfluss: andere Agenten koordinieren
AktionenAktionen• Futter sammeln
– Nahrung wird nur von der aktuell besetzten Zelle aufgenommen
– der Agent nimmt nicht mehr als gatherAmount auf und lässt gatherRest zurück (einstellbare Parameter)
• Bewegen – der Agent kann sich auf eine der acht benachbarten
Zellen bewegen, falls diese frei ist
– ein Untergebener muss die Zelle wählen, die am nächsten an dem Ziel liegt, dass der Koordinator ihm vorgegeben hat
• Fortpflanzen und Mutieren – ist ein Agent alt genug (> pubertyAge), kann er
Nachkommen erzeugen (asexuell)– er gibt dem Kind einen initialen Betrag an Nahrung
(childFood) mit und setzt ihn auf eine leere Zelle in der Nachbarschaft
– Attribute des Agenten können mit leichten Modifikationen an die Kinder weitergegeben werden (Mutation); die Modifikation ist eine Zufallszahl aus einem Dreiecksgraphen
Wahrscheinlichkeit
Attributmodifikation
• Koordinieren und Unterordnen – ein einfacher Agent kann sich als (möglicher)
Koordinator deklarieren– danach können sich ihm andere Agenten unterordnen– Untergebene teilen ihrem Koordinator mit, was sie
sehen– Koordinatoren geben ihren Untergebenen Hinweise,
welche Zellen vielversprechend sind– der Nahrungsbedarf eines Koordinators ist höher, als
der eines einfachen Agenten oder Untergebenen– Untergebene zahlen ihrem Koordinator Tribut
(coordinatorContribution)– ein Untergebener merkt sich, welche Vorteile es ihm
bringt, koordiniert zu werden– sowohl Koordinatoren als auch Untergebene können
die Beziehung lösen
• Ruhen
BedürfnisbefriedigungBedürfnisbefriedigung• jede Aktion hat Auswirkungen auf bestimmte Bedürfnisse• bei direkter Beeinflussung wird der Befriedigungsgrad über eine
spezielle Formel berechnet• besteht kein direkter Zusammenhang zwischen Aktion und
Bedürfnis, wird eine Standardformel verwendet• Grad der Befriedigung ist reelle Zahl zwischen 0 und 1
• Befriedigung sat(i,j) der Bedürfnisse (j=1...J) durch mögliche Aktionen (i=1...I): – Bedürfnisse sind unterschiedlich gewichtet– die Gesamtbefriedigung für Aktion i ist die gewichtete
Summe der einzelnen Befriedigungen sat(i,j)– Berechnung der Wahrscheinlichkeiten für die Aktionen:
• die kleinste Summe wird von allen anderen Summen abgezogen• Differenzen werden durch die Summe der Differenzen geteilt• die Aktion mit geringster Wahrscheinlichkeit wird nie
ausgewählt, alle anderen mit der errechneten Wahrscheinlichkeit
Die ExperimenteDie Experimente
• laufen in einem 80 x 60 Gitter und starten mit 300 Agenten
• langsames Pflanzenwachstum (niedriger Inkrementwert)
• Koordination, sobald sie auftaucht, bleibt über lange Zeit stabil
• Mutation ist ausgeschaltet
Die ErgebnisseDie Ergebnisse• Durchschnittliches Nahrungsangebot, Überleben Durchschnittliches Nahrungsangebot, Überleben
und Aussterbenund Aussterben– die Variante mit Koordination erweist sich als
nachhaltiger
– in unkordinierter Variante bleibt Anzahl der Agenten länger hoch, nimmt dann aber schnell bis auf 0 ab
Anzahl Agenten
t
– das Nahrungsangebot ist zu jeder Zeit höher als in der unkoordinierten Variante
Futtereinheiten
t
– in der unkordinierten Variante beuten die Agenten ihre Umwelt doppelt so stark aus (zwischen t = 20 und t = 40)
– am Ende ist das Nahrungsangebot in der koordinierten Variante noch ausreichend, während es in der unkoordinierten auf 0 absinkt
Futtereinheiten
t
• Koordinatoren und UntergeordneteKoordinatoren und Untergeordnete– in guten Zeiten sind einfache Agenten besser
dran als Koordinatoren oder Untergebene (t = 5.050 und t = 5.650)
– in schlechten Zeiten sind Koordinatoren am besten dran
Futtereinheiten
t
Eigene ImplementationEigene Implementation
• torusförmige Welt aus diskreten Zellen• rundenbasierte Simulation• Pflanzen wachsen stetig nach (kein Mindestwert)• kein Pflanzensamen• Agenten handeln nach Regeln der Form: IF
condition THEN action• asexuelle Fortpflanzung• Koordination findet auf Grundlage der
Populationskontrolle statt
• Verhalten der Simulation kann über verschiedene Parameter beeinflusst werden: – minEnergy: Energiewert, unter dem der Agent auf
Futtersuche geht– reproductionThreshold: Energiewert, über dem der
Agent sich fortpflanzen darf– energyPerRound: Energie, die der Agent pro
Runde verbraucht– energyPerStep: Energie, die der Agent pro Schritt
verbraucht– maxLifeTime: Anzahl an Runden, die der Agent
lebt (0 = unsterblich)– visualRange: Sichtweite des Agenten– reproductionFraction: Fortpflanzung ist nur
erlaubt, wenn max. 1/reproductionFraction der Zellen im Erinnerungsspeicher eines Agenten besetzt sind
– Coordination: legt fest, ob Koordination stattfindet oder nicht
– energyIncrement: Inkrementwert für das Pflanzenwachstum
flach
hierarchisch
Keine PopulationskontrolleKeine Populationskontrolle
(blau), Anzahl Koordinatoren (rot), Anzahl Untergebene (grau)
flach
hierarchisch
Ähnlich starke Ausbeutung der Umwelt
flach
hierarchisch
Mit PopulationskontrolleMit Populationskontrolle
(blau), Anzahl Koordinatoren (rot), Anzahl Untergebene (grau)
flach
hierarchisch
Flache Variante weniger nachhaltig als koordinierte
QuellenQuellen
• Agents, Hierarchies and SustainabilityAndreas König, Michael Möhring, Klaus G. Troitzsch
www.uni-koblenz.de/~kgt/Rostock
• Eine Multi-Agenten-Simulationsumgebung zur Untersuchung von Hierarchiebildung und NachhaltigkeitDiplomarbeit von Andreas König
www.koenig-andreas.de
EndeEndeVon André Preußner
www.informatik.tu-cottbus.de/~apreussn
Vortrag im Rahmen des Seminars
Artificial LifeProf. Winfried Kurth
Lehrstuhl Grafische Systeme BTU Cottbus