2 Problemlösen und Suche

Ähnliche Dokumente
Definition von Planung

2 Problemlösen und Suche

8 Einführung in Expertensysteme

als Bewertungsfunktion g(n) eines Knotens n wird der tatsächliche Weg vom Startzustand zu diesem Knoten benutzt

Arten von Kontrollstrukturen. Constraint Satisfaction. Constraints. 4 Problemlösen und Suche. Methoden der KŸnstlichen Intelligenz

2 Problemlösen und Suche

2 Problemlösen und Suche

2 Problemlösen und Suche

8 Einführung in Expertensysteme. 21. Vorlesung: Regelbasiertes Programmieren und Expertensysteme

Wissensbasierte Systeme. Kombinatorische Explosion und die Notwendigkeit Heuristischer Suche. Heuristiken und ihre Eigenschaften

Zustandsraumsuche: Blinde und Heuristische Suche. Blinde und Heuristische Suche

Uninformierte Suche in Java Informierte Suchverfahren

Teil II Optimierung. Modellgestützte Analyse und Optimierung Kap. 5 Einführung Optimierung. Peter Buchholz 2006

Einführung in Heuristische Suche

Übersicht. Künstliche Intelligenz: 3. Problemlösen durch Suche Frank Puppe 1

Einführung in Suchverfahren

Was ist Logik? Was ist Logik? Aussagenlogik. Wahrheitstabellen. Geschichte der Logik eng verknüpft mit Philosophie

Wissensbasierte Systeme 5. Constraint Satisfaction Probleme

Logik für Informatiker

23.1 Constraint-Netze

Technische Universität Berlin Fakultät IV - Elektrotechnik und Informatik. Schriftlicher Test - Teilklausur

Was bisher geschah Modellierung von Daten durch Mengen Beziehungen (Zusammenhänge und Eigenschaften) durch Relationen, Graphen und Funktionen

Künstliche Intelligenz

Constraintprogrammierung

Klausur Grundlagen der Künstlichen Intelligenz

Projekt 1: Constraint-Satisfaction-Probleme Abgabe: 7. Juni 2009

Uninformierte Suche in Java Informierte Suchverfahren

Technische Universität Berlin Fakultät IV - Elektrotechnik und Informatik. Schriftlicher Test - Teilklausur 1

8.1 Einleitung. Grundlagen der Künstlichen Intelligenz. 8.1 Einleitung. 8.2 Lokale Suchverfahren. 8.3 Zusammenfassung. Suchprobleme: Überblick

Sudoku. Warum 6? Warum 6?

Zusammenfassung KI (von Marco Piroth)

Einfacher Problemlösungsagent. Übersicht. Begriffsdefinitionen für Einfach-Probleme

WS 2009/10. Diskrete Strukturen

Moderne Methoden der KI: Maschinelles Lernen

Künstliche Intelligenz - Optimierungsprobleme - Suche in Spielbäumen

Diskrete Strukturen Kapitel 1: Einleitung

STRIPS. Hauptseminar: Kognitive Systeme. Stefanie Sieber Norbert Wächtler

Übungsblatt 2 Lösungen

Wissensbasierte Systeme

12. Übung Künstliche Intelligenz Wintersemester 2006/2007

Modellierung: Relation (Beziehungen)

Beispiele. mit. Beispiel 2.3. Suche einen Weg von nach. Tiefensuche bzw. Breitensuche.

Seminar Künstliche Intelligenz Wintersemester 2013/14

Electronic Design Automation (EDA) Technology Mapping

5. Algorithmen. K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16

Universität Koblenz-Landau Fachbereich Informatik Klausur Einführung in die Künstliche Intelligenz / WS 2003/2004. Jun.-Prof. Dr. B.

Grundlagen der Künstlichen Intelligenz

Mathematische Strukturen Sommersemester Vorlesung. Kombinatorik: Einführung. Ziehen aus Urnen

Vorlesung. Prof. Janis Voigtländer Übungsleitung: Dennis Nolte. Mathematische Strukturen Sommersemester 2017

9. Heuristische Suche

Wissensbasierte Systeme

Dirk Mattfeld Richard Vahrenkamp. Logistiknetzwerke. Modelle für Standortwahl. und Tourenplanung. 2., aktualisierte und überarbeitete Auflage

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7

4. Logik und ihre Bedeutung für WBS

Einführung in Expertensysteme

Universität Koblenz-Landau Fachbereich Informatik Klausur KI-Programmierung WS 2007/2008. Jun.-Prof. Dr. B. Beckert. 21.

Pro Informatik 2009: Objektorientierte Programmierung Tag 18. Marco Block-Berlitz, Miao Wang Freie Universität Berlin, Institut für Informatik

Grundlagen der Kognitiven Informatik

Algorithmen und Datenstrukturen

Lösungen zur Vorlesung Berechenbarkeit und Komplexität

An Overview of the Signal Clock Calculus

Algorithmen zur Visualisierung von Graphen

Bayes-Netze (2) Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg

2. Spiele. Arten von Spielen. Kombinatorik. Spieler haben festgelegte Handlungsmöglichkeiten, die durch die Spielregeln definiert werden.

Folgen und Reihen. Folgen. Inhalt. Mathematik für Chemiker Teil 1: Analysis. Folgen und Reihen. Reelle Funktionen. Vorlesung im Wintersemester 2014

ZAHLENDREIECKE DURCH VERGLEICHEN UND PROBIEREN

Diskrete Strukturen Kapitel 2: Grundlagen (Mengen)

Künstliche Intelligenz

Lineare Algebra I (WS 13/14)

Zahlentheorie I - Tipps & Lösungen. Aktualisiert: 15. Oktober 2016 vers Teilbarkeit

Vorlesung: Künstliche Intelligenz

Bayesianische Netzwerke - Lernen und Inferenz

Outline. 1 Funktionen von mehreren Veränderlichen. 2 Grenzwert und Stetigkeit. 3 Partielle Ableitungen. 4 Die verallgemeinerte Kettenregel

Planen als heuristische Suche

Aufgabe 1 (Allgemeines)

Abschnitt 3: Mathematische Grundlagen

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15.

2. Erläutern Sie, wie sich ein Agent von einem typischen Transformationsprogramm unterscheidet.

Thinking Machine. Idee. Die Thinking Machine Visualisierung versucht, die Denkprozesse eines Schachcomputers sichtbar zu machen

Kapitel 1: Einleitung. Gliederung. Zum Begriff Informatik Zum Begriff Algorithmus Zum Begriff Programmieren

Grundlagen der Künstlichen Intelligenz

Kapitel 3: Constraints

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss.

Anwendungen der Differentialrechnung

Grundlagen der Künstlichen Intelligenz. 9.1 Einführung und Beispiele. 9.2 Constraint-Netze. 9.3 Belegungen und Konsistenz. 9.

Policy Learning Teil 2. von Susanne Schilling

Vorlesung Datenstrukturen

Teil II: Einstieg in Expertensysteme

6. Spiele Arten von Spielen. 6. Spiele. Effizienzverbesserung durch Beschneidung des Suchraums

Werden wir Schoßhunde der Roboter sein? Herbert Stoyan Universität Erlangen

Vektoren - Die Basis

Algorithmen. Von Labyrinthen zu. Gerald Futschek

15. Algorithmus der Woche Das Rucksackproblem Die Qual der Wahl bei zu vielen Möglichkeiten

Rationale Agenten Rationalität

Analysis II. Vorlesung 47

2. Vorlesung. 1.3 Beste-Antwort Funktion. Vorlesung: Einführung in die Spieltheorie WS 2006/ Oktober 2006 Guido Schäfer

Grundlagen der Künstlichen Intelligenz

Transkript:

Universität Bielefeld Kontrollstrategien für die Suche 2 Problemlösen und Suche Kontrollstrategie problemunabhängig (Teil-)Übersicht: Breitensuche 6. Vorlesung: Constraint Satisfaction, Planen wissensgestützte Suche Operatoren Tiefensuche Operatorordnung Zustandsbewertung Bestensuche, A*-Algorithmus Methoden der Künstlichen Intelligenz Ipke Wachsmuth WS 2003/2004 Datenbasis Means-Ends Analysis Problemreduktion (Goal Trees) constraint satisfaction problemspezifisch wissensgestützte Suche 6. Vorlesung Methoden der Künstlichen Intelligenz 2 Constraint Satisfaction Constraints ( Beschränkungen, Randbedingungen ) sind ein zunehmend häufig verwendetes Darstellungsmittel, vor allem im Bereich Suche und Planen. Ein Constraint Satisfaction Problem (CSP) ist ein spezieller Problemtyp: die Zustände des Suchraums sind durch Werte einer Menge von Variablen definiert der goal-test spezifiziert eine Menge von Constraints, denen die Werte genügen müssen Eine einfache Form der Constraint Satisfaction (Constraint-Erfüllung) wurde bereits bei den Goal Trees betrachtet. Constraints Lesehinweis hierzu: Puppe, Einführung in Expertensysteme, Kap. 6 dienen zur Repräsentation von Relationen, das heißt Beziehungen zwischen Variablen besonders zur Darstellung lokaler Randbedingungen, die eine Problemlösung erfüllen muß Beispiel: Wunsch eines Lehrers bei der Stundenplan-Planung: einen Tag pro Woche frei durch jedes neue Constraint wird der Lösungsraum weiter eingeschränkt Ziel von Constraint-Systemen: Finden einer Lösung unter Beachtung aller Constraints 6. Vorlesung Methoden der Künstlichen Intelligenz 3 6. Vorlesung Methoden der Künstlichen Intelligenz 4

Uridee: Schaltkreis-Simulation Vergleich Constraint/Operator Im Constraint-System EL wird z.b. elektrischer Widerstand als Constraint zwischen Eingangs-, Ausgangsspannung und Strom repräsentiert: Widerstand U U 1 U U = R 2 1 2 I Alle Komponenten eines Schaltkreises sind durch Constraints repräsentiert und durch gemeinsame Variablen zu einem Constraint-Netz verbunden. Bekannte Werte werden durch das Constraint-Netz propagiert, so daß für jede Variable ein Wert berechnet wird. I Constraints repräsentieren ungerichtete Zusammenhänge zwischen Variablen (z.b. U = R * I), Operatoren gerichtete. Constraints sind mächtiger als Operatoren (schließen die Möglichkeiten von mehreren Operatoren ein), aber in der Realisierung aufwendiger. Constraints sind vorzüglich zur Modellierung vernetzter Systeme geeignet und beschleunigen dort die Suche (Abbruch bei Constraint-Verletzung). 6. Vorlesung Methoden der Künstlichen Intelligenz 5 6. Vorlesung Methoden der Künstlichen Intelligenz 6 Constraint-Propagierung Propagierungsalgorithmen Ein Constraint kann häufig als mathematische Gleichung (oder Ungleichung) betrachtet werden und ein Constraint-Netz als (Un-) Gleichungssystem, auch für nichtnumerische Zusammenhänge. Ausrechnen des Systems durch Constraint-Propagierung: Beschränkungen der Wertemengen von Variablen werden über die mit ihr verbundenen Constraints an andere Variablen weitergegeben, bis keine Einschränkung des Wertebereichs mehr möglich ist. Genau ein Wert pro Variable: eindeutige Lösung Wertemengen für Variablen: multiple Lösungen Leere Wertzuweisung für eine Variable: Inkonsistenz EINGABE: Constraint-Netz und Teilbelegung von Variablen mit Werten AUSGABE: eine mit den Constraints konsistente Wertzuweisung an weitere Variablen Propagierungsalgorithmen unterscheiden sich danach, was entlang einer Variablen propagiert werden kann: nur feste Werte, z.b. X = 5 Wertemengen, z.b. {3,4,5,6} symbolische Ausdrücke, z.b. X = 2Y Wichtig ferner: ob Maßnahmen für Fallunterscheidungen und Revision von Ableitungen zu treffen sind. 6. Vorlesung Methoden der Künstlichen Intelligenz 7 6. Vorlesung Methoden der Künstlichen Intelligenz 8

Ein nichttriviales Beispiel Constraint-Netz mit 5 Constraints (Newell & Simon) Belegung aller Variablen mit verschiedenen Werten finden, so daß die Gleichung aufgeht. Elegante Formulierung des Problems als Constraint-Netz benutzt zusätzliche Variablen U1, U2, U3, U4 für Überträge der Spaltensummen. Wertebereiche der Variablen: D,E,N,O,R,Y {0,1,2,3,4,5,6,7,8,9} SEND + MORE MONEY E C1: D+E = Y+10U1 C2: N+R+U1 = E+10U2 U2 U1 C3: E+O+U2 = N+10U3 U3 N O D Y R SEND + MORE MONEY M,S {1,2,3,4,5,6,7,8,9} C4: S+M+U3 = O +10U4 S U1, U2, U3, U4 {0,1} U4 M 6. Vorlesung Methoden der Künstlichen Intelligenz 9 C5: M = U4 6. Vorlesung Methoden der Künstlichen Intelligenz 10 Formale Charakterisierung Propagierungsalgorithmus (ein einfacher: nur für feste Werte und Wertemengen) Constraint als Tripel: (Name, Variablenmenge, Relation) z.b. ( C1, {D,E,Y,U1}, D+E = Y +10U1 ) Constraint-Problem gegeben durch: 1. Menge von Constraints, die durch gemeinsame Variablen verbunden sind 2. Anfangsbelegung von einigen Variablen Lösung des Constraint-Problems: maximale Einschränkung aller Variablen Propagierungsalgorithmen für symbolische Ausdrücke sind allerdings sehr aufwendig! Eingabe: Constraint-Netz und Anfangsbelegung Ausgabe: Maximale konsistente Wertzuweisung zu allen Variablen 1. Weise allen Variablen ihre Anfangsbelegung zu; 2. Aktiviere alle Constraints, in denen die Variablen vorkommen, und setze sie auf die Liste AKTIV; 3. Wähle ein Constraint aus AKTIV aus und deaktiviere es; falls AKTIV leer: STOP (Ergebnis = aktuelle Variablenbelegung); 4. Berechne den neuen Wertebereich für die an dem ausgewählten Constraint beteiligten Variablen. Falls die Wertemenge einer Variable leer ist: STOP (Inkonsistenz); 5. Falls die Wertemenge beschränkt wurde, setze alle Constraints, die auf die Variablen Bezug nehmen, auf AKTIV; 6. GOTO 3; 6. Vorlesung Methoden der Künstlichen Intelligenz 11 6. Vorlesung Methoden der Künstlichen Intelligenz 12

Definition von Planung Planung: Beispielproblem Problembereich: Zustandsraum und Operatoren Planungsproblem: Ausgangs- und Zielzustand Lösung: Folge von Operatoren zur Überführung des Ausgangszustandes in den Zielzustand im Grundansatz zunächst: klassisches Suchproblem zu Suche und Planen: eigentlich alle KI-Bücher im Semesterapparat Zum Nachschlagen auch: Handbook of Artificial Intelligence, Volume 1, Kap. II Search oder Russell & Norvig, Teil II C A B On(A,table-1) On(B,table-1) On(C,A) table-1 C B A On(B,A) & On(C,B) Klötzchenwelt Gegeben: Anordnung von Klötzchen, Zielanordnung und mögliche Roboteraktionen. Gesucht: Aktionenfolge zur Herstellung der Zielanordnung. Operatoren: (1) Pickup (block) (2) Putdown (block) (3) Stack (block1,block2) (4) Unstack (block1,block2) 6. Vorlesung Methoden der Künstlichen Intelligenz 13 6. Vorlesung Methoden der Künstlichen Intelligenz 14 Weitere Beispielprobleme Ein- und mehrstufiges Planen Stundenplanerstellung Gegeben: Räume, Lehrer, Schulklassen, Fächer, Zuordnungen Gesucht: Stundenplan Computer-Konfigurierung Gegeben: Hauptkomponenten Gesucht: Layout und Hilfskomponenten Planung von Experimenten in der Molekulargenetik Gegeben: Substanzen und Organismen, durchführbare Aktionen, Ziel des Experiments (z.b. Insulin herstellen) Gesucht: Sequenz von Aktionen und Spezifikation der benötigten Substanzen und Organismen Einstufiges (nichthierarchisches) Planen: systematisch alle Sequenzen von Operatoren durchprobieren, bis der Zielzustand erreicht ist Gefahr der kombinatorischen Explosion! siehe hierzu: Konstruktion Puppe, Einführung in Expertensysteme, Kap.11 Mehrstufiges (hierarchisches) Planen: zunächst Planung einer Sequenz von abstrakten Operatoren (Grobplan), die dann schrittweise verfeinert werden. Hauptproblem: Nebeneffekte eines Operators können Anwendung eines anderen verhindern: Interaktion von Operatoren! 6. Vorlesung Methoden der Künstlichen Intelligenz 15 6. Vorlesung Methoden der Künstlichen Intelligenz 16

Interaktion von Operatoren Verfeinern von Grobplänen Beispiel: Streiche die Leiter und die Decke Decke-Leiter-Problem: Aufgabe ist, die Decke und die Leiter zu streichen. Dabei muß die Decke zuerst gestrichen werden, da die ungestrichene Leiter Voraussetzung dafür ist, daß man die Decke ohne längere Wartezeit streichen kann. Nichtlineares Planen: explizite Repräsentation von Interaktionen als Constraints zwischen Operatoren und Objekten Festlegung der Operator-Reihenfolge erst dann, wenn alle Constraints erfüllbar sind Differenzanalyse (means-ends analysis) Grobplan direkt aus Aufgabenstellung generiert durch Bewertung der Differenz zwischen Ausgangs- und Zielzustand; Auswahl abstrakter Operatoren zur Verringerung der Differenz Skelettplanen (wissensbasiertes Planen) allgemeinen Plan aus einer Bibliothek vorgegebener Skelettpläne auswählen; Beispiel folgt... Phasenaufteilung Benutzung eines einzigen Standardplans für einen gegebenen Problembereich (Beispiel: Computer-Konfigurierung) 6. Vorlesung Methoden der Künstlichen Intelligenz 17 6. Vorlesung Methoden der Künstlichen Intelligenz 18 Skelettplanen in MOLGEN Einordnende Bemerkungen Ziel: Planung eines Experiments zur Feststellung von Intrastrang- Komplementarität in einer DNA (d.h. ob ein DNA-Strang komplementäre Teilstücke enthält) 1. Auswahl des Skelettplans: Für Intrastrang-Komplementarität ist der angegebene Skelettplan vorhanden 2. Verfeinerung: Die einzelnen Operatoren werden stufenweise präzisiert (Ergebnis auf der rechten Seite) Skelettplan Verfeinerung (1) Denaturiere (spalte die Stränge Erhitze die Probe der DNA) (2) Renaturiere (Umkehrung der Schnelles Abkühlen der Probe Denaturierung) (3) Zerstöre alle einsträngige DNA Benutze Enzym S1-Nuclease (4) Finde die restliche DNA Benutze Technik Gel-Filtration [Quelle: Puppe] 6. Vorlesung Methoden der Künstlichen Intelligenz 19 Ein sehr wichtiges Einsatzfeld für Suche ist der Bereich "Planen". Suche ist eine Grundmethode für KI-Programme und wird in der einen oder anderen Form häufig benötigt. Suche ist nicht alles: "Allgemeinste" Suchprogramme haben sich in der Praxis als nicht fruchtbar erwiesen, außer für "genuine" Suchprobleme (wie Puzzles). Die meisten Such-Heuristiken sind in ihrer Nützlichkeit auf bestimmte Problemklassen beschränkt. Das große Gewicht, das dem Feld "Suche" (genauer: explorative Suche) in der KI zugeschrieben wird, hängt mit den frühen Themenstellungen der KI zusammen: Problem Solving, GPS etc. Jedoch gilt: 6. Vorlesung Methoden der Künstlichen Intelligenz 20

Rückblick auf Teil 2 Warum Puzzles und ähnliche Aufgaben nicht so spannend für das "Problemlösen" sind Sie sind bereits als Suchaufgaben gestellt (die dann zum Teil auch extrem schwierig zu lösen sind). Wichtiger ist es aber, zu erkennen, wie sich die mit einem Problem gestellten Fragen auf Suchaufgaben abbilden lassen. 1. Allgemeine Suchprobleme mit Suchraum, Operatoren, Zustandsbewertungsfunktion und weiteren Heuristiken 2. Means-Ends-Analysis, wo man die Zustände eines Suchraums mit Zielbeschreibungen abgleicht, um anhand der Differenz nächstanwendbare Operatoren zu "raten" 3. Goal-Tree-Suche, wo Zustände in Bezug auf zu machende Festlegungen analysiert werden, die bestimmten Constraints genügen. 4. Minimax-Suche, wo spezielle Goal-Trees zur Modellierung von Zwei-Personen-Spielen benutzt werden. 5. Constraint Satisfaction und planende Suche [ ] 6. kontinuierliche Suchprobleme (Optimierungsaufgaben, Suche nach lokalen/globalen Minima und Maxima, "hill climbing" etc.)... 6. Vorlesung Methoden der Künstlichen Intelligenz 21 6. Vorlesung Methoden der Künstlichen Intelligenz 22 Ausblick: Wissensgestützte Suche Idee wissensbasierter Systeme Problemlösung basiert auf Suche -- "Schwache Methoden" für Suche wie generate-and-test sind für komplexe Suchräume nicht adäquat Menschen benutzen heuristisches Wissen,um die Suche einzuschränken (aus Wissen über den Bereich abgeleitetes Kontrollwissen für die Suche) Ein wissensbasiertes System ist ein Problemlösesystem in dem expliziteswissen* eines menschlichen Problemlösers eingebettet ist, um die Komplexität des Suchraums zu kontrollieren. *Das Wissen ist erst explizit zu machen! Idee: Explizites Wissen über einen Aufgabenbereich verkürzt Problemlösesuche. Beispiel: Safe knacken 69 32 99 Blinde Suche: Alle Kombinationen probieren => 1 000 000 (100x100x100) Versuche Wissensgestützte Suche: Wenn man weiß, daß für einen Safetyp 2 Pos. links oder rechts auch noch klappt => 8000 (20x20x20) Versuche Wenn man weiß, daß die Safes der Firma X bei Auslieferung 25 0 25 oder 50 25 50 eingestellt haben und daß 20% der Käufer versäumen, die Kombination zu ändern => in 20% reichen zwei Versuche! (nachzulesen bei R.P. Feynman: Sie belieben wohl zu scherzen, Mr. Feynman! ) 6. Vorlesung Methoden der Künstlichen Intelligenz 23 6. Vorlesung Methoden der Künstlichen Intelligenz 24