KI – Wintersemester 2013/2014 Intelligente Agenten Grundlagen der Künstlichen Intelligenz Wintersemester 2014/2015 Marc Toussaint © 2006-2014 Heidemann, Bruhn, Toussaint Überblick Überblick Agentenbegriff, Beispiele für Agenten Agentenfunktion, Agentenprogramm Typisierung von Umgebungen Typisierung der Agentenprogrammierung 2 Agenten (1) Was ist ein Agent? Agent: nimmt Umgebung über Sensoren wahr und beeinflusst diese durch Aktuatoren Was sind 1. Sensoren, 2. Aktuatoren, 3. Umgebung, 4. Erfolgskriterium? 3 Agenten (2) PEAS Beschreibung (P)erformance Element – Erfolgskriterium (E)nvironment – Umgebung (Zustandsraum der Umgebung) (A)ctuators – Aktuatoren (Aktionsraum & Beeinflussung des Zustands) (S)ensors – Sensoren (Sensorinformation abhänig vom Zustand) 4 Agenten (3) Beispiele I Montageroboter 1. 2. 3. 4. Sensoren: Kamera, taktile Sensoren Aktuator: Greifer Umgebung: Schraube, Gewinde, Beleuchtung Erfolgskriterium: Schraube eindrehen Autonomes Fahrzeug (DARPA Challenge): 1. 2. 3. 4. Sensoren: Laser Range-Scanner, Kamera, GPS Aktuatoren: Räder Umgebung: Wüste Erfolgskriterium: Ziel schnell erreichen 5 Agenten (4) Beispiele II Spielautomat (Spielhalle): 1. 2. 3. 4. Sensoren: Knöpfe, Hebel Aktuatoren: z.B. Bildschirm, Zahlenräder, Glocke Umgebung: Spieler Erfolgskriterium: Geld abnehmen (Unterziele: Spaß machen, abhängig machen) Expertensystem („Software-Agent“): 1. 2. 3. 4. Sensoren: Datenempfang Aktuatoren: Versenden von Daten Umgebung: Ratsuchender Erfolgskriterium: nach wenigen Anfragen richtige Auskunft geben 6 Agenten (5) Beispiele III Staubsaugerwelt: 1. 2. 3. 4. Sensoren: für Position und Schmutz Aktuatoren: nach rechts / links bewegen; Sauger Umgebung: Felder A, B, ggf. mit Schmutz Erfolgskriterium: alle Felder sauber machen 7 Agenten (6) Formal Sensorsignale: Aktionen: Zustand der Umgebung: Erfolgskriterium: oder eine Kostenfunktion Sensormodell: Umweltmodell: Agentenfunktion: 8 Agentenfunktion / Agentenprogramm (1) Agentenfunktion und Agentenprogramm Agentenfunktion wählt Aktion in Abhängigkeit von der Wahrnehmungsfolge aus kann im Prinzip als Lookup-Table dargestellt werden … … die aber i.A. sehr groß ist Agentenprogramm implementiert die Agentenfunktion (irgendwie) Programm ersetzt die Tabelle leistet i.A. „Kompression“ der Tabelle durch Aufstellen (häufig impliziter) Regeln 9 Agentenfunktion / Agentenprogramm (2) Agentenfunktion der Staubsaugerwelt Wahrnehmungsfolge Aktion A, sauber Rechts A, schmutzig Saugen B, sauber Links B, schmutzig Saugen … … B, schmutzig, B, sauber B, sauber, B, sauber, B, sauber Links Links B, sauber, B, sauber, B, schmutzig Saugen 100x (B, sauber), B, schmutzig Saugen 10 Agentenfunktion / Agentenprogramm (3) Bemerkungen Tabelle unendlich groß, da beliebig lange Wahrnehmungsfolgen! Je nach den gewählten Aktionen muss nicht unbedingt jede Zeile der Tabelle zur Anwendung kommen. einfacher: Agentenprogramm Da Tabelle jede mögl. Wahrnehmungsfolge abdeckt, können im Prinzip beliebig komplexe Agentenfunktionen realisiert werden, die vergangene Wahrnehmungen einbeziehen (Bsp. letzte Zeile) und unter Umständen nicht leicht durch Programm (Regeln) zu erfassen sind. 11 Agentenfunktion / Agentenprogramm (4) Agentenprogramm der Staubsaugerwelt Aktuelle Wahrnehmung Aktion A oder B, schmutzig Saugen A, sauber Rechts B, sauber Links Achtung: Die Tabelle ist ein Agentenprogramm, keine Agentenfunktion! Programm implementiert nur eine sehr einfache Agentenfunktion, die vergangene Wahrnehmungen nicht berücksichtigt. d.h. wenn z.B. alle Felder sauber sind, oszilliert der Sauger zwischen den Feldern 12 Umgebungen (1) Typisierung von Umgebungen Grad der Beobachtbarkeit deterministisch / stochastisch episodisch / sequenziell statisch / dynamisch diskret / kontinuierlich Einzelagent / Multiagenten 13 Umgebungen (2) Grad der Beobachtbarkeit Problem: Was erfassen die Sensoren? Staubsauger: Position des Saugers Zustand des aktuellen / benachbarten Feldes zwei Arten von teilweiser Beobachtbarkeit: Teil der Umgebung ist unzugänglich für Sensoren (z.B. Nachbarfeld) Beobachtung ist ungenau (z.B. Sensor verschmutzt) 14 Umgebungen (3) Deterministisch vs. Stochastisch Deterministisch Zukünftiger Zustand der Umgebung hängt allein vom gegenwärtigen Zustand + den Aktionen ab. Stochastisch Umgebung enthält Zufallselemente, ihre Entwicklung ist daher auch bei vollständiger Beobachtung nicht vorhersagbar. Wahrnehmung in der Praxis: Umgebung ist nicht vollständig beobachtbar und erscheint daher stochastisch. 15 Umgebungen (5) Statisch vs. Dynamisch Statisch Umgebung ändert sich nur durch Aktionen des Agenten. Dynamisch Umgebung ändert sich auch unabhängig von den Aktionen, insbesondere auch wenn der Agent nicht beobachtet! 17 Umgebungen (6) Diskret vs. Kontinuierlich Betrifft: Zeit Wahrnehmungen Aktionen Beispiel: Schach als Spiel: diskrete Zeit, Wahrnehmungen, Aktionen Schachfigur physisch setzen: kontinuierliche Zeit, Wahrnehmungen (z.B. Druck der Figur auf die Finger), Aktionen (Muskeln steuern) Technisch meist diskrete Darstellung kontinuierlicher Vorgänge (z.B. Kamera mit 25 Bildern/s). 18 Umgebungen (7) Einzelagent vs. Multiagenten Unterscheidung: kooperative Multiagenten konkurrierende Agenten Realwelt: – häufig Mischungen 19