Technologien, Architekturen, Plattformen
Prof. Dr. Stefan Bosse
Universität Koblenz - FB Informatik - Praktische Informatik
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt ::
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Herausforderungen
Bei der Entwicklung von modernen Informatiksystemen gibt es verschiedene Herausforderungen:
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Software im Wandel
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Vergleich Traditionelle vs. Multiagentensysteme
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Vergleich Traditionelle vs. Multiagentensysteme
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Vergleich Traditionelle vs. Multiagentensysteme
Eigenschaften von Agenten
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Endliche Zustandsautomaten
Das Gegenteil von Agenten?
Ein endlicher Zustandsautomat (EZA/englisch FSM) verarbeit Eingangsdaten (Variablen x) und gibt Ergebnisse y in Abhängigkeit seines Zustandes σ ∈ Σ aus
Die Menge der Zustände Σ ist von Beginn an festgelegt und konstant!
Keine Adaptivität, keine Rekonfiguration!
Einfachstes Modell einer Berechnung (im Sinne der Informatik)
Folgendes Beispiel zeigt einen EZA der eine Zahl auf Teilbarkeit durch 3 unteruschen soll
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Endliche Zustandsautomaten
Beispiel eines EZA
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Zelluläre Automaten
Die Ursuppe für Agenten?
Zelluläre Automaten besitzen diskrete Zustände und ändern ihren Zustand nur zu diskreten Zeitpunkten
Zelluläre Automaten als Netzwerk aus einfachen kommunizierenden Berechnungseinheiten
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Zelluläre Automaten
Es gibt immerhin schon Nachbarschaftskommunikation (Datenaustausch) zwischen Knoten des Netzwerks
Aber: Ein Automat ist noch ein (nicht adaptiver) endlicher Zustandsautomat → ZA = Lokal verbundende EZA!
Auch die Netzwerkkonfiguration ist statisch - entspricht nicht natürlichen Systemen
Nachbarschaftsrelationen können durch einen Radius charakterisiert werden:
Kommunikation kann als Austausch von Signalen zwischen einzelnen Zellen verstanden werden
Zelluläre Automaten besitzen räumliche und zeitliche Dynamik
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Zelluläre Automaten
Hoekstra,SCSCA,2010
Verschiedene Nachbarschaftsrelationen in ZA
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Zelluläre Automaten
Eine Zelle besitzt eine endliche (kleine) Menge von Zuständen σ = { s1,..,sn}.
Eine Berechnung mit Eingabe- und internen Daten (Perzeption und innerer Zustand) führt i.A. zu einer Änderung des Zustandes der Zelle → es gibt einen Zustandsübergang
Übergangsregeln Φ können aus einfachen arithmetischen Operationen (Funktionen) bestehen, und beziehen die Zellen aus der Nachbarschaft N mit ein (durch Kommunikation):
σi,j(t+1)=Φ(σk,l(t)|σk,l(t)∈N)
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Zelluläre Automaten
Anzahl der Regeln eines ZA in Abhängigkeit der Anzahl der Zustände pro Zelle und des verbinsungsgrades der Zellen
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Zelluläre Automaten
Beispiele für Dynamik und Emergenz (cellauto.js und pixi.js)
Examples: caves, cavesWithWater,gameOfLife,maze,cyclic,rain,lava
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Zelluläre Automaten
var world = new CAWorld({ width: 96,height: 64, cellSize: 6});world.palette = [ '255, 255, 255, 1', '68, 36, 52, 1'];world.registerCellType('wall', { getColor: function () { return this.open ? 0 : 1; }, process: function (neighbors) { var surrounding = this.countSurroundingCellsWithValue(neighbors, 'wasOpen'); this.open = (this.wasOpen && surrounding >= 4) || surrounding >= 6; }, reset: function () { this.wasOpen = this.open; }}, function () { /* init cells */ this.open = Math.random() > 0.40; });world.initialize([ { name: 'wall', distribution: 100 } ]);
Beispiel einer ZA Weltbeschreibung
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Agenten
Agenten besitzen eine Vielzahl von Fähigkeiten, die sie von klassischen Programmen unterscheiden - obwohl Agenten auch Programme sein können!
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Agenten
Beziehung realer natürlicher Welt mit Lebewesen zu virtueller Welt mit Agenten
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Multiagentensysteme - Entwurf
Wie konstruiert man Agenten,
die unabhängig und autonom von Nutzeren und Systemadminstratoren agieren,
um die an sie delegierten Aufgaben zu erledigen?
Wie konstruiert man Agenten,
die mit anderen Agenten interagieren und sich austauschen,
um ihre Aufgaben mit dem Ziel einer globalen Aufgabe zu erfüllen,
auch wenn manche dieser Agenten gegensätzliche Interessen haben und ihre eigenen (konkurrierenden) Ziele verfolgen?
Stefan Bosse - MAS - Modul A Einführung in die Agentenwelt :: Multiagentensysteme - Entwurf