AIMA Notizen
Teil I
Kapitel 2: Intelligente Agenten
(Agent im Sinne von Interessenvertreter und Beauftragter)
Inhalt
- Agenten und Umwelt
- Definition: Ein Agent
nimmt (s)eine Umwelt über
Sinnesrezeptoren wahr und beeinflusst sie mittels seiner Aktuatoren
- Bsp. Rezeptoren: Augen,
Ohren, Tastatureingaben, Netzwerkpakete
- Bsp. für
Aktuatoren: Mund, Hand, Bildschirm, Netzwerkpakete
- Annahme: Jeder Agent nimmt
seine eigenen Aktionen wahr (aber
nicht unbedingt deren Wirkungen)
- Die Empfindung (percept)
eines Agenten ist die Gesamtheit der
Zustände seiner Sinnesrezeptoren zu einem gegebenen Zeitpunkt.
- Die Empfindungsfolge
(percept sequence) ist die komplette Folge
aller Empfindungen, die der Agent je wahrgenommen hat; sie ist mithin
beliebig lang
- => Entscheidungen
des Agenten können von seiner
gesamten Empfindungsfolge abhängen
- Die Agentenfunktion ordnet
jeder möglichen
Empfindungsfolge eine Aktion zu. Sie ist damit eine
vollständige,
abstrakt mathematische Beschreibung des Agenten. Wegen der beliebigen
Länge der Empfindungsfolge wäre eine Funktionstabelle
ebenfalls unendlich.
- Die Agentenfunktion ist
eine externe Repräsentation des
Agenten. Die zugehörige interne Repräsentation ist
das
Agentenprogramm.
- Das Agentenprogramm ist im
Gegensatz zur Agentenfunktion eine
konkrete Umsetzung, ein konkreter Versuch, dem Agenten
Rationalität beizubringen.
- Richtiges Verhalten:
Rationalität
- insgesamt richtiges
Verhalten ergibt sich aus richtigem Verhalten in jedweder Situation:
also der Zuordnung der "richtigen" Aktion zu jeder möglichen
Wahrnehmungsfolge. Die "richtige" Aktion ist jene, die den
größten Erfolg verspricht.
- Leistungsmaße,
Performanzmaße:
- Ein
Leistungsmaß definiert Kriterien für den Erfolg des
Verhaltens eines Agenten.
- Leistungsmaße
werden dem Agenten von außen vorgegeben. Dadurch sind sie
objektiv (nicht subjektiv nach Gutdünken des Agenten).
- Leistungsmaße
sollten danach gewählt werden, was tatsächlich
erreicht werden soll und nicht um das Verhalten des Agenten
(vermeintlich) zu optimieren.
- =>
Leistungsmaße beschreiben den gewünschten Zustand
der Umwelt, nicht das gewünschte Verhalten des Agenten (der
allerdings Teil der Umwelt ist).
- Die Definition von
Leistungsmaßen ist häufig schwierig.
- Rationales Verhalten zu
einem bestimmten Zeitpunkt setzt sich aus vier Eigenschaften zusammen:
- das
Leistungsmaß das den Erfolg bewertet,
- das gegebene Wissen
des Agenten über seine Umwelt,
- die möglichen
Aktionen des Agenten und
- die bisherige
Wahrnehmungsfolge des Agenten.
- Definition
des rationalen Agenten:
Für jede mögliche Wahrnehmungsfolge wählt
ein rationaler Agent unter Zuhilfenahme der bisherigen
Wahrnehmungsfolge und seines a-priori-Wissens über die Umwelt
die Aktion, die das zu erwartende Leistungsmaß maximiert.
- Ein rationaler Agent muss
nicht perfekt sein. Es geht nur darum, das zu erwartende
Leistungsmaß zu optimieren. Dann kann aber immer noch was
schief gehen, da er nicht allwissend sein kann. Dennoch wird von ihm
verlangt, dass er sein Wissen durch Informationssammlung und Erforschen
der Umwelt gegebenenfalls vergrößert um potentiell
fragwürdige Aktionen abzusichern.
- Ein rationaler Agent muss
lernen. Über Informationssammlung und Erforschen der Umwelt
hinaus muss ein rationaler Agent die bestmöglichen
Schlüsse aus der bisherigen Wahrnehmungsfolge ziehen. Nur in
statischen, a-priori bekannten Umwelten ist lernen unnötig.
- Entscheidungen die ein
rationaler Agent aufgrund seiner Erfahrung und nicht aufgrund seines
a-priori-Wissens trifft, machen ihn autonom. Ein flexibler rationaler
Agent nutzt möglichst viel selbst deduziertes Wissen und
benötigt möglichst wenig a-priori-Wissen (nur so viel
wie er benötigt um die erste Lernphase zu überleben
bzw. ein minimales Leistungsmaß zu erfüllen).
- Einsatzszenarien,
Einsatzumgebungen (task environment)
- Zusammenfassung der
Sensoren und Aktuatoren des Agenten, seiner Umwelt und sein
vorgegebenes Leistungsmaß bilden sein Einsatzszenario.
- PEAS: Performance,
Environment, Actuators, Sensors
- eine
möglichst genaue Bestimmung des Einsatzszenarios ist der erste
Schritt in der Entwicklung eines Agenten.
- Entwicklung von
Einsatzszenarien: zuerst Leistungsmaß aufstellen und die
Umwelt des Agenten analysieren. Zuletzt nötige Aktuatoren und
Sensoren bestimmen.
- Eigenschaften von
Einsatzszenarien
- vollständig
<=> teilweise beobachtbar: weenn der gesamte Zustand
(oder zumindest der für den Einsatz relevante Teil) der Umwelt
vom Agenten zu jeder Zeit vollständig wahrgenommen werden
kann, heisst die Umwelt vollständig beobachtbar.
- deterministisch
<=> stochastisch: Wenn sich der Folgezustand der Umwelt
aus ihrem Zustand und einer Aktion des Agenten präzise ergibt,
heisst sie deterministisch. Wenn die Wirkung von Aktionen nicht
eindeutig ist, heisst sie stochastisch.
- episodisch
<=> fortlaufend: das Einsatzszenario ist episodisch, wenn
es in voneinander unabhängige Episoden unterteilt werden kann.
Entscheidungen des Agenten beeinflussen die Umwelt nur innerhalb der
Episode, aber nicht ausserhalb. Fehler wirken sich deshalb nur
innerhalb einer begrenzten Zukunft aus.
- statisch
<=> dynamisch: Wenn die Umwelt während der
Entscheidungsfindungsphase des Agenten sich nicht verändert,
heisst das Einsatzszenario statisch. Die Zeit die der Agent
benötigt spielt keine Rolle. Umwelten die sich
unabhängig von Aktionen des Agenten verändern
heißen dynamisch. Statische Umwelten, bei denen sich aber das
Leistungsmaß mit der Zeit ändert (=erniedrigt)
heißen semidynamisch.
- diskret
<=> kontinuierlich: tatsächlich mehrere
Dimensionen bezüglich Zeit, Zustände der Umwelt,
Wahrnehmungen und Aktionen des Agenten.
- einzelner Agent
<=> mehrere Agenten: Teile der Umwelt können
entweder als Objekte (möglicherweise sich stochistisch
verhaltende Objekte) betrachtet werden oder möglicherweise als
andere Agenten, abhängig davon, ob sich ihr Verhalten gut als
Maximierung eines vom Agenten abhängigen
Leistungsmaßes beschreiben lässt. Abhängig
von der Übereinstimmung der Leistungsmaße der
Agenten spricht man von kooperativen oder widerstrebenden
Multiagentensystemen.
- Agentenstrukturen:
Prinzipien des Agentenbaus
- die Agentenfunktion
beschreibt das ideale Verhalten eines
Agenten von aussen.
- das Agentenprogramm
berechnet die Agentenfunktion. Die
Entwicklung effizienter Agentenprogramme ist die Aufgabe der KI.
- der Agent besteht aus
einem Agentenprogramm das auf der
Agentenplattform/-architektur ausgeführt wird.
- Aufbau von
Agentenprogrammen:
- Eingaben: derzeitige
Wahrnehmung
- Ausgabe:
nächste Aktion
- <>lokal
werden beliebige Daten in beliebigen Strukturen
gespeichert (z. B. auch die gesamte Wahrnehmungsfolge, die für
die korrekte Berechnung der Agentenfunktion relevant sein kann).
- Agententypen:
- tabellengesteuerter
Agent: die gesamte Wahrnehmungsfolge wird
gespeichert und die Folgeaktion abhängig von der
Wahrnehmungsfolge
in einer Tabelle nachgeschlagen. Die Tabelle wird dem
tabellengesteuerten Agenten von außen zur Verfügung
gestellt.
- dieser Ansatz ist in
realen Umgebungen nicht praktikabel,
da die Komplexität zu groß ist.
- einfache Reflexagenten
(simple reflex agents)
- berechnet die
Ausgabeaktion auf Basis der aktuellen
Wahrnehmung. Alle vorherigen Wahrnehmungen werden nicht
berücksichtigt.
- einfach, schnell,
- Reiz-Reflex-Reaktionen
- Tabelle oder Regeln
bestimmen die Reaktion aus der
Wahrnehmung
- nur erfolgreich in
wenn die Umwelt vollständig
beobachtet werden kann
- in
unvollständig beobachtbaren Umwelten kann die
Performanz durch zufällige Entscheidungen verbessert werden
- modellbasierte
Reflexagenten (model-based reflex agents)
- interner Zustand
speichert Informationen über den
Ausschnitt der Welt der aktuell nicht beobachtet werden kann
- die Ausgabeaktion und
der Folgezustand werden aus Zustand
und aktueller Wahrnehmung generiert
- erfolgreich in
partiell wahrnehmbaren Umwelten
- zielgeleitete Agenten
(goal-based agents)
- Reflexagenten
können nur erfolgreich reagieren, aber
nicht erfolgreich agieren, weil ihre Entscheidungen nicht die Zukunft
und die in der Zukunft zu erreichenden Ziele berücksichtigen
- Zielgeleitete Agenten
planen ihr Verhalten und suchen in
den zur Verfügung stehenden Aktionenfolgen jene, die das Ziel
des
Agenten erreichen.
- flexiblerer aber auch
aufwendiger als reine Regelanwendung
zur Suche der Ausgabeaktion aus der bisherigen Eingabefolge
- nutzgeleitete Agenten
(utility-based agents)
- die Nutzwertfunktion
(utility function) ordnet einer
Zustandsfolge einen bestimmten Nutzwert zu. Diesen Nutzwert gilt es zu
maximieren.
- kann beispielsweise
unter mehreren Zielen, die nicht mit
Sicherheit erreichbar sind eine optimale Strategie errechnen.
- Kapitel 16 beweist,
dass tatsächlich rationale Agenten
nutzgeleitet sein müssen.
- lernende Agenten
- ein lernender Agent
besteht aus vier primären
Komponenten:
- das Lernelement
sorgt für Optimierungen
- das
ausführende Element trifft Entscheidungen,
dieses Element ist in nichtlernenden Agenten auch vorhanden, dort aber
das einzige.
- das
Bewertungselement beurteilt die vom ausführenden
Element getroffenen Entscheidungen und schlägt Verbesserungen
vor
- der Problemgenerator
schlägt Aktionen vor die das
Wissen des Agenten über seine Umwelt, unabhängig von
seinen
zu erreichenden Zielen, erweitern und so die Leistung des Agenten in
der Zukunft möglicherweise verbessern
letzte Änderung: 20. Dezember 2004.
mail AT timobaumann.de