Intelligente Systeme

Ähnliche Dokumente
Intelligente Systeme

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

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

2. Spielbäume und Intelligente Spiele

Wissensbasierte Systeme 5. Constraint Satisfaction Probleme

Einführung in Heuristische Suche

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Übersicht. 5. Spiele. I Künstliche Intelligenz II Problemlösen 3. Problemlösen durch Suche 4. Informierte Suchmethoden

Der Alpha-Beta-Algorithmus

Spiele (antagonistische Suche) Übersicht. Typen von Spielen. Spielbaum. Spiele mit vollständiger Information

Der Bestimmtheitssatz

Einführung in die Methoden der Künstlichen Intelligenz

Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen

TD-Gammon. Michael Zilske

Grundlagen der Künstlichen Intelligenz Einführung Minimax-Suche Bewertungsfunktionen Zusammenfassung. Brettspiele: Überblick

Praktikum Algorithmen-Entwurf (Teil 7)

KI und Sprachanalyse (KISA)

2.4 Constraint Satisfaction Suche und Constraints

Uninformierte Suche in Java Informierte Suchverfahren

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

5. Spiele. offensichtlich eine Form von Intelligenz. Realisierung des Spielens als Suchproblem

Einführung in die Künstliche Intelligenz. 6. Spiele

Kombinatorische Spiele mit Zufallselementen

Zwei-Spieler-Spiele. Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen. Schach. Schach (2)

Seminar: Randomisierte Algorithmen Auswerten von Spielbäumen Nele Küsener

Übungsblatt 2 Lösungen

Wissensbasierte Suche

Hackenbusch und Spieltheorie

Erste Schritte um Schach zu lernen

Spiele als Suchproblem

Klausur Informatik B April Teil I: Informatik 3

Künstliche Intelligenz am Zug: Können Programme gegen menschliche Spieler gewinnen?

Spielregeln für Schach

Wissensbasierte Systeme

Branch-and-Bound und Varianten. Kapitel 3. Branch-and-Bound und Varianten. Peter Becker (H-BRS) Operations Research II Wintersemester 2014/15 98 / 159

Schach Spielanleitung/Spielregeln. Brettspielnetz.de Team Copyright 2017 Brettspielnetz.de

Künstliche Intelligenz

Backtracking mit Heuristiken

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

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

Programmierkurs Prolog, SS 2000

Proseminar: Geschichte des Computers Schachprogrammierung Die Digitale Revolution

6in1 Deluxe Spiele-Koffer. Spielanleitung

Grundlagen der Künstlichen Intelligenz

Rationale Agenten Rationalität

Optimierung. Optimierung. Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung Fabian Kuhn

NP-vollständige Probleme

Uninformierte Suche in Java Informierte Suchverfahren

Ein Constraint c C heißt n-stellig, wenn es von n Variablen abhängt. mit w i D(x i ) für i = 1,...,n.

Wissensbasierte Systeme 5. Brettspiele

a) Fügen Sie die Zahlen 39, 38, 37 und 36 in folgenden (2, 3)-Baum ein:

Go Spielanleitung/Spielregeln. Brettspielnetz.de Team Copyright 2016 Brettspielnetz.de

Go (9x9) Spielanleitung/Spielregeln. Brettspielnetz.de Team Copyright 2017 Brettspielnetz.de

Kasparov versus Deep Blue. Till Tantau. Institut für Theoretische Informatik Universität zu Lübeck

Das Problem des Handlungsreisenden

Muster. Informatik 3 (Februar 2004) Name: Matrikelnummer: Betrachten Sie den folgenden Suchbaum. A G H J K M N

Übungsblatt Nr. 6. Lösungsvorschlag

3. Das Reinforcement Lernproblem

Grundlagen der Künstlichen Intelligenz

Eine kurze Anleitung des Schachs

15. Elementare Graphalgorithmen

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Logik für Informatiker

Grundlagen der Künstlichen Intelligenz

Sachrechnen/Größen WS 14/15-

Kapitel 5: Suchverfahren: Backtracking

Künstliche Intelligenz

Konvexe Hülle. Abbildung: [Wikipedia]: Nicht-konvexe Menge (links), konvexe Menge (rechts) KIT Institut für Theoretische Informatik 510

8.1 Blinde Suche. Grundlagen der Künstlichen Intelligenz. Klassische Suche: Überblick. 8. Klassische Suche: Breitensuche und uniforme Kostensuche

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Perfect Games. Johannes Clos Knowledge Engineering und Lernen in Spielen SS04, Prof. Fürnkranz. 5/18/04 Perfect Games

Algorithmische Methoden für schwere Optimierungsprobleme

Heuristische Verfahren

Grundlagen der Künstlichen Intelligenz

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Schulbesuch Erich-Kästner Gesamtschule 07. April 2011

Zufallsgrößen. Vorlesung Statistik für KW Helmut Küchenhoff

Kapitel 2: Suche. Problemzerlegung. Interpretation als Und-Oder-Baum bzw. -Graph. Eigenschaften und Verbesserungen von A*

Eine spieltheoretische Betrachtung des Pokerspiels

Einführung in das Invarianzprinzip

Algorithmen und Datenstrukturen Klausur WS 2006/07 Software-Engineering und Technische Informatik Bachelor

von Heinrich Glumpler und Matthias Schmitt

Wissensbasierte Systeme

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7

Handlungsplanung und Allgemeines Spiel Ausblick: GDL-II. Peter Kissmann

Heuristische Suchverfahren

Transkript:

Intelligente Systeme Spiele und Erfüllungsprobleme Prof. Dr. R. Kruse C. Braune {kruse,cbraune}@iws.cs.uni-magdeburg.de Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02. Februar 2015

Übersicht 1. Spiele Perfekte Spiele Glücksspiele 2. Bedingungserfüllungsprobleme

Arten von Spielen deterministisch Glücksspiel vollständige Schach, Dame, Backgammon, Informationen Go, Othello Monopoly unvollständige Schiffe versenken, Bridge, Poker, Scrabble, Informationen blindes Tic-Tac-Toe Nuklearer Krieg Blindes Tic-Tac-Toe: Unvollständige Variante des Standardspiels Jeder Spieler kann X und O setzen Gegner erfährt nur welches Feld, aber nicht ob X oder O Spieler mit erster Linie mit 3 gleichen Zeichen gewinnt R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 2 / 45

Spielbaum (2 Spieler, deterministisch, Runden) MAX (X) MIN (O) X X X X X X X X X MAX (X) X O X O X O... MIN (O) X O X X O X X O X............... TERMINAL Utility X O X X O X X O X O X O O X X O X X O X O O 1 0 +1... R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 3 / 45

Minimax-Algorithmus Perfektes Spiel für deterministische Spiele mit vollständigen Infos Algorithmus zur Ermittlung der optimalen Spielstrategie für endliche Zweipersonen-Nullsummen-Spiele mit vollständiger Information z.b. 2-schichtiges Spiel: MAX 3 A 1 A 2 A 3 MIN 3 2 2 A 11 A 21 A 22 A 23 A 32 A 33 A 12 A 13 A 31 3 12 8 2 4 6 14 5 2 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 4 / 45

MiniMax: Eigenschaften Zeit- und Speicherkomplexität gemessen anhand von b: maximalem Verzweigungsfaktor des Suchbaums m: maximaler Tiefe des Zustandsraums (eventuell ) Vollständig: ja, falls Baum endlich Optimal: ja, gegen optimalen Gegner Zeit: O(b m ) Speicher: O(b m) (Tiefensuche) Für Schach: b 35, m 100 bei realistischen Spielen. Somit ist die exakte Lösung absolut nicht berechenbar. Aber: muss jeder Pfad exploriert werden? R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 5 / 45

α β-stutzen MAX 3 MIN 3 3 12 8 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 6 / 45

α β-stutzen MAX 3 MIN 3 2 3 12 8 2 X X R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 6 / 45

α β-stutzen MAX 3 MIN 3 2 14 3 12 8 2 X X 14 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 6 / 45

α β-stutzen MAX 3 MIN 3 2 14 5 3 12 8 2 X X 14 5 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 6 / 45

α β-stutzen MAX 3 3 MIN 3 2 14 5 2 3 12 8 2 X X 14 5 2 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 6 / 45

α β-algorithmus: Eigenschaften Stutzen hat keine Auswirkung auf Endergebnis Gute Zugordnung verbessert Effektivität des Stutzens. Mit perfekter Ordnung, Zeitkomplexität = O(b m/2 ) Somit doppelte Suchtiefe Für Schach: immer noch 35 50 möglich R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 7 / 45

Bewertungsfunktionen Black to move White slightly better White to move Black winning Für Schach: typischerweise linear gewichtete Summe von n Merkmalen n Eval(s) = w i f i (s) i=1 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 8 / 45

Deterministische Spiele Dame: Schach: 1994 beendete Chinook die 40-jährige Herrschaft des Weltmeisters Marion Tinsley Endspieldatenbank mit perfekten Spielen aller Stellungen mit 8 Steinen ( 443 10 9 Stellungen) Deep Blue besiegte 1997 Weltmeister Garri Kasparow in 6 Spielen 200 10 6 Stellungen/Sekunde, sehr komplizierte Bewertung Bis zu 40 Halbzüge tief (nicht veröffentlichte Methoden) Othello: Wettbewerb nur unter menschlichen Meistern Go: Wettbewerb nur unter menschlichen Meistern b > 300, daher Datenbanken mit Mustern für plausible Züge R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 9 / 45

Glücksspiele: Backgammon 0 1 2 3 4 5 6 7 8 9 10 11 12 25 24 23 22 21 20 19 18 17 16 15 14 13 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 10 / 45

Glücksspiele allgemein Zufall aufgrund von Würfeln, Mischen von Karten, etc. Vereinfachtes Beispiel mit Münzwurf: MAX CHANCE 3 1 0.5 0.5 0.5 0.5 MIN 2 4 0 2 2 4 7 4 6 0 5 2 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 11 / 45

Algorithmus für nichtdeterministische Spiele ExpectiMinimax liefert perfektes Spiel Wie Minimax, nur Zufallsknoten müssen behandelt werden:... if state is a Max node { return highest ExpectiMinimax-Value of Successors(state) } if state is a Min node { return lowest ExpectiMinimax-Value of Successors(state) } if state is a chance node { return average of ExpectiMinimax-Value of Successors(state) }... R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 12 / 45

Nichtdeterministische Spiele in Praxis Jeder Würfelwurf erhöht Verzweigungsfaktor b: 21 mögliche Würfe mit 2 Würfeln Backgammon 20 erlaubte Züge (bei einem 1 1 Wurf können es 6000 sein) Tiefe 4 20 (21 20) 3 1, 2 10 9 Zustände Mit steigender Tiefe: Wahrscheinlichkeit sinkt geg. Knoten zu erreichen Damit wird Wert des Vorgriffs vermindert α β-stutzen viel weniger effektiv TDGammon benutzt beschränkte Tiefensuche mit d = 2 + sehr gute Eval: vergleichbar mit menschlichem Weltmeister R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 13 / 45

Spiele mit unvollständigen Informationen Die meisten Kartenspiele (wie Bridge, Doppelkopf, Hearts, Mau-Mau, Poker, Siebzehn und vier, Skat) sind Nullsummenspiele mit unvollständigen Informationen. Auch einige Brettspiele (Schiffe versenken, Kriegspiel-Schach). Nullsummenspiel: Spiel, bei dem der Gewinne und Verluste aller Spieler = 0 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 14 / 45

Beispiel: Kriegspiel-Schach Unvollständige Variante des Schach 1824 entwickelt von einem Preußischen Militäroffizier Wurde bekannt als Aufgabe fürs Militär-Training Vorläufer von modernen Militärkriegsspielen Ähnlich einer Kombination aus Schach und Schiffe versenken Figuren starten in normaler Position, aber man sieht die Züge seines Gegners nicht Nur wie folgt kommt man an Informationen: Man schlägt eine Figur oder verliert eine Eigener König wird Schach gesetzt Man macht einen ungültigen Zug rmbzkans opo0zpop 0Z0Z0Z0Z Z0ZqZ0Z0 0Z0Z0Z0Z Z0Z0Z0Z0 0Z0Z0Z0Z Z0Z0Z0Z0 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 15 / 45

Beispiel: Kriegspiel-Schach Jeder Spieler versucht normale Schachzüge auszuführen Falls der Zug ungültig ist, erfährt man, dass man einen anderen Zug versuchen soll Wenn eine Figur geschlagen wird, erfahren es beide Spieler Man erfährt den Quadranten, jedoch nicht die Art der Figur Wenn ein legaler Zug ein Schach, ein Schachmatt oder einen Patt für den Gegner verursacht, erfahren es beide Spieler Man erfährt, ob Schach verursacht wurde durch lange/kurze Diagonale, Reihe, Linie, Springer (oder Kombination derer) rmbzkans opo0zpop 0Z0Z0Z0Z Z0ZqZ0Z0 0Z0Z0Z0Z Z0Z0Z0Z0 0Z0Z0Z0Z Z0Z0Z0Z0 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 16 / 45

Beispiel: Kriegspiel-Schach Größe der Informationsmenge (Menge aller Zustände, in denen man sich möglicherweise befindet): Schach: 1 Texas hold em: 10 3 Bridge: 10 7 Kriegspiel: 10 14 Bei Bridge oder Poker resultiert die Unsicherheit durch das zufällige Austeilen der Karten Wahrscheinlichkeitsverteilung ist leicht zu berechnen Beim Kriegspiel resultiert die Unsicherheit daher, dass die gegnerischen Züge nicht sichtbar sind Kein einfacher Weg, um eine geeignete Wahrscheinlichkeitsverteilung zu bestimmen rmbzkans opo0zpop 0Z0Z0Z0Z Z0ZqZ0Z0 0Z0Z0Z0Z Z0Z0Z0Z0 0Z0Z0Z0Z Z0Z0Z0Z0 R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 17 / 45

Beispiel: Giraffe - Ein Schachprogramm (1/3) Motivation: Man nimmt an, dass der Spielbaum für Schach eine Größe von ca 10 123 hat. Selbst bei optimaler Anordnung möglicher Züge im Spielbaum müsste immer noch ein Baum der Größe 10 62 durchsucht werden. Die Bewertung der einzelnen Positionen und Züge geschieht semi-heuristisch durch hand-getunete und ausgesuchte Kriterien. Hunderte verschiedener Parameter fließen in die Bewertung ein; jahrelange Entwicklung. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 18 / 45

Beispiel: Giraffe - Ein Schachprogramm (2/3) Ansatz: Computer lernt Schachspielen, indem er gegen sich selber spielt. Mustererkennung (z.b. bestimmte Stellung) und Regeln als Ergebnis eines riesigen, rekurrenten neuronalen Netzes (Deep Learning) So gut wie kein Vorwissen einprogrammiert; sämtliche Kriterien werden vom Algorithmus selbst entdeckt. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 19 / 45

Beispiel: Giraffe - Ein Schachprogramm (3/3) Ergebnis: Trainingszeit: 72 Stunden auf 20 CPUs verteilt. Spielstärke: innerhalb der TOP 2.2% (FIDE International Master) Moderne Schachprogramme spielen teilweise auf Großmeisterniveau, sind allerdings über mehrere Jahre hinweg entwickelt worden. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 20 / 45

Übersicht 1. Spiele 2. Bedingungserfüllungsprobleme

Was ist ein BEP? BEP = < X, C, D > X ist ein endliche Menge von Variablen X 1,..., X n. C ist eine endliche Menge von Bedingungen C 1,..., C m. D ist eine nicht-leere Menge D 1,... D n von möglichen Werten für jede Variable X i. Ein Zustand ist definiert als Zuweisung von Werten zu einigen oder allen Variablen. Eine konsistente Zuweisung ist eine Zuweisung, die keine der Bedingungen verletzt. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 21 / 45

Was ist ein BEP? Eine Zuweisung ist vollständig, wenn jeder Variablen ein Wert zugewiesen wurde. Eine Lösung für ein BEP ist eine vollständinge und konsistente Zuweisung. In einigen Fällen muss durch die Lösung außerdem eine Zielfunktion maximiert werden. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 22 / 45

BEP Beispiel: Graphfärbungsproblem Variablen: X 1 = WA, X 2 = NT, X 3 = Q, X 4 = NSW, X 5 = V, X 6 = SA und X 7 = T Wertebereiche: D i = {rot, grün, blau} für i = 1,..., 7. Bedingungen: benachbarte Regionen müssen unterschiedliche Farben haben, z.b.: WA NT oder (WA, NT) {(rot, grün), (rot, blau), (grün, rot),...} R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 23 / 45

BEP Beispiel Graphfärbungsproblem Eine Lösung für ein BEP ist eine vollständinge und konsistente Zuweisung, z.b.: {WA = red, NT = grün, Q = rot, NSW = grün, V = rot, SA = blau, T = grün}. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 24 / 45

Bedingungsgraph In einem binären BEP kommen in jeder Bedingung höchstens zwei Variablen vor. Solche Probleme lassen sich durch einen Bedingungsgraphen modellieren: Knoten sind Variablen, Kanten zeigen Bedingungen. Hier: Tasmanien ist ein unabhängiges Teilproblem. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 25 / 45

Varianten von BEPs Diskrete Variablen Endlicher Wertebereich der Größe d O(d n ) mögliche Zuweisungen z.b. Bool sche BEPs, SAT (NP-vollständig) Unendlicher Wertebereich (ganze Zahlen, Strings, etc.) z.b. Maschinenbelegungsprobleme, Variablen sind Startbzw. Endzeiten für Aufträge), lineare Bedingungen lösbar, nicht-lineare unentscheidbar Kontinuierliche Variablen Start- und Endzeiten von Beobachtungen des Hubbleteleskops Lineare Bedingungen, die in Polynomialzeit durch ganzzahlige Optimierung gelöst werden können R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 26 / 45

Varianten von Bedingungen Einstellige Bedingunen beinhalten nur eine Variable z.b.: SA grün Zweistellige Bedingungen beinhalten Paare von Variablen z.b.: SA WA Höherstellige Bedingungen beinhalten drei oder mehr Variablen z.b.: kryptoarithmetische Spaltenbedingungen Präferenzen (weiche Bedingungen), z.b. rot ist besser als grün, sind oft durch Kosten für Variablenzuweisungen darstellbar (Optimierung mit Nebenbedingungen) R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 27 / 45

Beispiel: Kryptoarithmetik R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 28 / 45

Beispiel: Echte Probleme Zuweisungsprobleme: Wer gibt welche Vorlesung? Schedulingprobleme: Welche Vorlesung findet wann und wo statt? Hardwarekonfiguration Exceltabellen Logistische Probleme R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 29 / 45

BEP als einfaches Suchproblem Ein BEP kann als einfaches Suchproblem aufgefasst werden Inkrementelle Formulierung: Startzustand: Die leere Zuweisung {} Nachfolgerfunktion: Weise einer bisher nicht belegten Variable einen Wert zu, sodass kein Konflikt entsteht Zieltest: Die aktuelle Zuweisung ist vollständig Pfadkosten: konstante Kosten für jeden Schritt R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 30 / 45

BEP als einfaches Suchproblem Dieses Vorgehen gilt für alle BEPs! Da die Lösung bei Tiefe n (wenn es n Variablen gibt) liegt, kann Tiefensuche genutzt werden Pfad ist irrelevant, also kann auch komplette Zustandsrepräsentation genutzt werden Verzweigungsgrad b des Suchbaums in der Wurzel ist n d b = (n l) d in Tiefe l, also gibt es n!d n Blätter (aber nur d n vollständige Zuweisungen) Grund: BEPs sind kommutativ (die Reihenfolge der Zuweisungen hat keine Auswirkungen auf die Lösung R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 31 / 45

Backtracking Tiefensuche Wählt Werte für jeweils eine Variable pro Schritt und geht zurück wenn keine gültigen Schritte mehr möglich sind Uninformiertes Suchverfahren (im generellen keine gute Performance) R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 32 / 45

Beispiel: Backtracking R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 33 / 45

Backtracking Effizienzverbesserung Drei Hauptfragen: Welche Variable sollte als nächstes belegt werden und in welcher Reihenfolge soll man die Werte durchprobieren? Welche Implikationen ergeben sich aus einer Belegung für die übrigen, noch nicht belegten Variablen? Wenn ein Pfad scheitert, kann die Suche es vermeiden, diesen Fehler in zukünftigen Pfaden zu wiederholen? R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 34 / 45

Minimum Remaining Values Die minimum remaining values Heuristik (am stärksten durch Bedingungen eingeschränkte Variable) belegt die Variable als nächste, bei der die wenigsten Werte noch übrig sind. Die Heuristik beantwortet die Frage, welche Variable als nächstes belegt werden soll. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 35 / 45

Most Constraining Variable Die most constraining variable Heuristik belegt die Variable als nächste, die in den meisten Bedingungen für andere Variable auftaucht. Die Heuristik beantwortet die Frage, welche Variable als nächstes belegt werden soll. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 36 / 45

Least Constraining Value Die least constraining value Heuristik belegt eine gewählte Variable mit dem Wert, der die wenigstens Bedingungen für die übrigen Variablen. Die Heuristik beantwortet die Frage, welche Wert für eine Variable gewählt werden soll. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 37 / 45

Beispiel: Sudoku Sudoku ist ein BEP Variablen: X 11, X 12,..., X 99 Wertebereiche: {1, 2,..., 9} Bedingungen: alle Zeilen, alle Spalten und alle 3 3-Blöcke müssen jede Zahl genau einmal enthalten Die MRV-Heuristik füllt die Zelle mit den wenigsten möglichen Werten Die MCV-Heuristik füllt die Zelle, die die meisten anderen, freien Zellen beeinflusst Die LCV-Heuristik wählt den Wert (für eine gegebene Zelle), der die meisten Möglichkeiten für die übrigen Zellen lässt. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 38 / 45

Vorwärtsprüfung Können wir einen unvermeidlichen Fehler frühzeitig entdecken? Und ihn dann vermeiden? Vorwärtsprüfung: Führe eine Liste von verbleibenden, möglichen Werten für freie Variablen Beende die Suche, wenn irgendeine Variable keine gültigen Werte mehr hat. Funktioniert sehr gut zusammen mit der MRV-Heuristik R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 39 / 45

Bedingungsverbreitung Vorwärtsprüfung findet nicht alle Fehler. Wenn für zwei Variablen die selben, sich ausschließenden Belegungen verbleiben, wird das von der Vorwärtsprüfung nicht erkannt. Durch wiederholtes Propagieren der Bedingungen, können diese lokal besser durchgesetzt werden. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 40 / 45

Kantenkonsistenz Eine Kante X Y ist genau dann konsistent, wenn für jeden Wert x von X mindestens ein Wert y für Y erlaubt ist. SA NSW ist konsistent SA = blau NSW = rot R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 41 / 45

Kantenkonsistenz Eine Kante X Y ist genau dann konsistent, wenn für jeden Wert x von X mindestens ein Wert y für Y erlaubt ist. Umgekehrt: NSW SA ist konsistent NSW = rot SA = blau und NSW = blau SA =???. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 42 / 45

Kantenkonsistenz Kante kann konsistent gemacht werden, indem blau von den möglichen Werten für NSW entfernt wird. Dadurch können weitere Inkonsistenzen entstehen und der Prozess muss für die übrigen Kanten wiederholt werden. Diese Heuristik erkennt Fehler früher und kann daher nachg jeder Zuweisung als eine Art Präprozessor verwendet werden. R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 43 / 45

k-konsistenz Kantenkonsistenz erkennt nicht alle Inkonsistenzen Stärkere Formen der Verbreitung können durch k-konsistenzen definiert werden Ein BEP ist k-konsistent, wenn für jede Menge von k 1 Variablen und jede konsistente Zuweisung zu diesen Variablen, einer beliebigen k-ten Variable ein gültiger Wert zugewiesen werden kann. Formen: 1-Konsistenz (Knotenkonsistenz), 2-Konsistenz (Kantenkonsistenz), 3-Konsistenz (Pfadkonsistenz) R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 44 / 45

k-konsistenz Ein Graph ist stark k-konsistent, wenn er für jedes j k j-konsistent ist. Das ist ideal, denn eine Lösung kann dann in O(nd) gefunden werden. Aber: No-Free-Lunch! Jeder Algorithmus der n-konsistenz herstellt, braucht im schlimmsten Fall mindestens O(2 n ). R. Kruse, C. Braune IS Spiele und Erfüllungsprobleme 02.02.2015 45 / 45