2. Intelligente Agenten
Transcription
2. Intelligente Agenten
2. Intelligente Agenten Definition und Klassifizierung Umgebungen Einf. in die KI 2–1 Agenten Agenten • nehmen durch Sensoren ihre Umwelt wahr ; Perzepte • manipulieren ihre Umwelt mit Hilfe ihrer Effektoren ; Aktionen Beispiele: sensors • Roboter percepts ? environment actions effectors Einf. in die KI • Softbots (Software-Roboter) agent • Lichtschalter, Heizungen • ... 2–2 Rationale Agenten Rationale Agenten tun das “Richtige”. Zur Beurteilung müssen geeignete Leistungsmaße festgelegt werden – Leistungsmaße sind anwendungsabhängig. Beispiel: Ein autonomer Staubsauger • Menge des entfernten Schmutzes • Anzahl der gereinigten Quadratmeter • Reinheitsgrad • Stromverbrauch • Geräuschemission • Sicherheit Einf. in die KI 2–3 Rationalität vs. Allwissenheit • Ein allwissender Agent kennt den tatsächlichen Weltzustand und damit die tatsächlichen Effekte seiner Aktionen. • Ein rationaler Agent handelt dagegen auf Grund seiner Wahrnehmungen (Perzepte) und seines (beschränkten) Wissens und versucht, die erwartete Leistung zu maximieren. • Beispiel: Wenn ich vor dem Überqueren einer Straße schaue, ob die Straße frei ist, und dann mitten auf der Straße von der herabfallenden Frachtraumtür eines über mir fliegenden Flugzeuges erschlagen werde, habe ich dennoch rational gehandelt. Einf. in die KI 2–4 Ideale rationale Agenten Rationales Handeln wird bestimmt durch • Ziele • Leistungsmaße • Wahrnehmungssequenzen • Weltwissen • Aktionen Ein idealer rationaler Agent wählt – auf der Basis seines Weltwissens – zu jeder möglichen Wahrnehmungssequenz immer diejenige Aktion aus, die erwartungsgemäß seine Leistung maximiert. Aktive Wahrnehmung, um notwendige Informationen zu erhalten, ist ein wesentlicher Aspekt von Rationalität. Wichtig: Sensoraktionen müssen explizit vorgesehen (eingeplant) werden. Einf. in die KI 2–5 Beispiele für Agenten Klassifikation anhand möglicher • Wahrnehmungen (Percepts) • Aktionen (Actions) • Ziele (Goals) • Umgebungen (Environments) Einf. in die KI 2–6 Agent Type Percepts Actions Goals Environment Medical diagnosis system Symptoms, findings, patient’s answers Questions, tests, treatments Healthy patient, minimize costs Patient, hospital Satellite image analysis system Pixels of varying intensity, color Print a categorization of scene Correct categorization Images from orbiting satellite Part-picking robot Pixels of varying intensity Pick up parts and sort into bins Place parts in correct bins Conveyor belt with parts Refinery controller Temperature, pressure readings Open, close valves; adjust temperature Maximize purity, yield, safety Refinery Interactive English tutor Typed words Print exercises, suggestions, corrections Maximize student’s score on test Set of students Einf. in die KI 2–7 Die Struktur rationaler Agenten Ein rationaler Agent kann durch eine Abbildung beschrieben werden: Wahrnehmungssequenz × Weltwissen 7→ Aktion Realisierung dieser Abbildung durch ein • Agenten-Programm, das auf einer • Architektur ausgeführt wird, die auch die Schnittstelle zur Umwelt realisiert (Perzepte, Aktionen) Agent = Architektur + Programm Einf. in die KI 2–8 Skelettprogramm für einen Agenten: function SKELETON-AGENT( percept) returns action static: memory, the agent’s memory of the world memory UPDATE-MEMORY(memory, percept) action CHOOSE-BEST-ACTION(memory) memory UPDATE-MEMORY(memory, action) return action Einf. in die KI 2–9 Tabellengesteuerte Agenten Das einfachste Agenten-Programm ist die Implementierung einer Tabelle, in der zu jeder Sequenz von Perzepten die entsprechenden Aktionen verzeichnet sind. function TABLE-DRIVEN-AGENT( percept) returns action static: percepts, a sequence, initially empty table, a table, indexed by percept sequences, initially fully specified append percept to the end of percepts action LOOKUP( percepts, table) return action • Die Tabelle kann sehr groß werden. • Die Erstellung der Tabelle ist entsprechend aufwendig. • Der Wartungsaufwand ist sehr hoch. • Flexibilität des Agenten ist nicht gegeben. Einf. in die KI 2 – 10 Der automatische Taxifahrer Agent Type Percepts Actions Goals Environment Taxi driver Cameras, speedometer, GPS, sonar, microphone Steer, accelerate, brake, talk to passenger Safe, fast, legal, comfortable trip, maximize profits Roads, other traffic, pedestrians, customers Leistungsmaße: • Korrektheit: Erreichen des vorgegebenen Ziels • Ressourcenverbrauch: Minimierung von Zeit- und Kraftstoffverbrauch • Legalität: keine Verstöße gegen Verkehrsregeln ; Abwägen der Ziele nötig Einf. in die KI 2 – 11 Erforderliche Verhaltensmerkmale: • Reflexe • Verfolgen des Umgebungszustandes • Verfolgen der eigenen Ziele • Leistungsmaximierung Einf. in die KI 2 – 12 Reflex-Agenten Agent Sensors Condition−action rules What action I should do now Environment What the world is like now Effectors • Auflistung aller möglichen Wahrnehmungssequenzen ist nicht praktikabel • Abstraktion – Interpretation der Perzepte – Verwendung von Produktionsregeln Einf. in die KI 2 – 13 Reflex-Agenten (2) if car-in-front-is-braking then initiate-braking function SIMPLE-REFLEX-AGENT( percept) returns action static: rules, a set of condition-action rules state INTERPRET-INPUT( percept) rule RULE-MATCH(state, rules) action RULE-ACTION[rule] return action • Erzeugung abstrakter Beschreibungen des aktuellen Zustandes • Abbildung der Perzepte auf Aktionen • Reflex-Agenten können auf diese Weise leicht modelliert und effizient implementiert werden. Einf. in die KI 2 – 14 Agenten mit internem Zustand Falls neben dem aktuellen Perzept auch die Historie für die Auswahl von Aktionen von Bedeutung ist, muß diese in geeigneter Form repräsentiert werden. Sensors State How the world evolves What my actions do Condition−action rules Agent Einf. in die KI What action I should do now Environment What the world is like now • Sensoren machen nur Ausschnitte der Umgebung zugänglich. • Die Effekte bestimmter Aktionen sind zustandsabhängig. Effectors 2 – 15 Agenten mit internem Zustand (2) function REFLEX-AGENT-WITH-STATE( percept) returns action static: state, a description of the current world state rules, a set of condition-action rules state UPDATE-STATE(state, percept) rule RULE-MATCH(state, rules) action RULE-ACTION[rule] state UPDATE-STATE(state, action) return action Internes Wissen des Agenten umfaßt • die Entwicklung der Umgebung (Fortschreiben des Umgebungszustandes) • und die tatsächliche Auswirkung seiner eigenen Aktionen. Einf. in die KI 2 – 16 Agenten mit expliziten Zielen Oft sind Perzepte allein für die Aktionsauswahl nicht ausreichend, da die richtige Aktion von explizit vorgegebenen Zielen abhängt. Diese müssen bei der Auswahl der Aktionen berücksichtigt werden. Antizipierte Entwicklungen fließen in die Entscheidung mit ein. Sensors State What the world is like now What my actions do What it will be like if I do action A Goals What action I should do now Agent Einf. in die KI Environment How the world evolves Effectors 2 – 17 Leistungsorientierte Agenten Meistens gibt es mehrere Möglichkeiten ein Ziel zu erreichen, die sich aber in ihrer Qualität unterscheiden können. Dann ist eine Bewertung der verschiedenen Möglichkeiten erforderlich. Einf. in die KI 2 – 18 Sensors State What the world is like now What my actions do What it will be like if I do action A Utility How happy I will be in such a state What action I should do now Agent Einf. in die KI Environment How the world evolves Effectors 2 – 19 Reflexhaft vs. Ziel- und Leistungsorientiert • In Reflex-Agenten ist das gewünschte Verhalten in Form von Produktionsregeln explizit programmiert. insbesondere: Jedes neue Ziel erfordert neue Programmierung. • Ziel- und leistungsorientierte Agenten verfügen über Techniken, das gewünschte Verhalten aus Perzepten und internem Wissen abzuleiten. ⇒ große Flexibilität ⇒ Planen und Einf. in die KI Suchen 2 – 20 Die Umgebung rationaler Agenten • zugänglich vs. unzugänglich Sind den Sensoren alle relevanten Aspekte der Welt zugänglich? • deterministisch vs. indeterministisch Hängt der nächste Weltzustand allein vom aktuellen Zustand und der ausgeführten Aktion ab? • episodisch vs. nicht-episodisch Kann die Qualität einer Aktion innerhalb einer Episode (Wahrnehmen-AgierenZyklus) isoliert bewertet werden (episodisch) oder ist Antizipation notwendig? • statisch vs. dynamisch Kann sich die Welt ändern, während der Agent die nächste Aktion berechnet? • diskret vs. kontinuierlich Kann die Umgebung durch klar definierte, diskrete Zustandsübergänge beschrieben werden? Einf. in die KI 2 – 21 Beispiele für Umgebungen Environment Chess with a clock Chess without a clock Poker Backgammon Taxi driving Medical diagnosis system Image-analysis system Part-picking robot Refinery controller Interactive English tutor Accessible Deterministic Episodic Static Discrete Yes Yes No Yes No No Yes No No No Yes Yes No No No No Yes No No No No No No No No No Yes Yes No No Semi Yes Yes Yes No No Semi No No No Yes Yes Yes Yes No No No No No Yes Ob eine Umgebung eine bestimmte Eigenschaft hat, hängt auch von der entsprechenden Modellierung ab. Bemerkung zu “Static”: “Semi” deutet daraufhin, daß sich lange Rechenzeiten negativ auf die Bewertung der Ergebnisse auswirken können. Einf. in die KI 2 – 22 Evaluierung eines Agenten in einer Umgebung Um Agenten zu evaluieren, müssen wir sie in einer Umgebung agieren lassen, am einfachsten in einer simulierten Umgebung: Einf. in die KI 2 – 23 function RUN-EVAL-ENVIRONMENT(state, UPDATE-FN, agents, termination, PERFORMANCE-FN) returns scores local variables: scores, a vector the same size as agents, all 0 repeat for each agent in agents do PERCEPT[agent] GET-PERCEPT(agent, state) end for each agent in agents do ACTION[agent] PROGRAM[agent](PERCEPT[agent]) end state UPDATE-FN(actions, agents, state) scores PERFORMANCE-FN(scores, agents, state) until termination(state) return scores /* change */ → Simulationsumgebung Einf. in die KI 2 – 24 Simulation • Die Erkenntnisse, die aus Simulationen gewonnen werden können, hängen von der Validität der Umgebungsmodelle ab. • Simulationen für dynamische Umgebungen und zeitkritische Anwendungen sind dabei von besonderer (praktischer) Relevanz. • Die Simulationsumgebung JAMES – Entwicklung in der Abteilung KI (Dr. A. Uhrmacher und Studenten) • Evaluierung von Planungsagenten • Simulation mobiler Softbots Einf. in die KI 2 – 25 Zusammenfassung • Ein Agent macht Wahrnehmungen und agiert in seiner Umgebung. Er besteht aus einer Architektur und einem Agentenprogramm. • Ein idealer rationaler Agent führt die Aktionen aus, die für gegebene Wahrnehmungssequenzen und gegebenes Weltwissen die Leistung maximieren. • Ein Agentenprogramm bildet Wahrnehmungssequenzen auf Aktionen ab und aktualisiert den internen Zustand. • Es existieren verschiedene Designs für solche Programme: Wir unterscheiden Reflex-Agenten, ziel- und leistungsorientierte Agenten. • Besonders anspruchsvoll sind Umgebungen, die unzugänglich, nicht-episodisch, dynamisch oder kontinuierlich sind. Einf. in die KI 2 – 26