Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

K-SAT: Ein heuristischer Algorithmen- Vergleich Kann man den Brute Force Search Algorithmus schlagen?

Ähnliche Präsentationen


Präsentation zum Thema: "K-SAT: Ein heuristischer Algorithmen- Vergleich Kann man den Brute Force Search Algorithmus schlagen?"—  Präsentation transkript:

1 k-SAT: Ein heuristischer Algorithmen- Vergleich Kann man den Brute Force Search Algorithmus schlagen?

2 Einführung ins k-SAT Problem Gegeben: Konjunktive Normal Form Frage: Ist diese KNF erfüllbar? Das k-SAT Problem ist NP vollständig.

3 Die 3 Parameter Anzahl verschiedene Variablen = d Anzahl Klauseln = c Anzahl Literale pro Klauseln = k

4 Die Algorithmen (Allgemeines) Der Input: KNF (d, c, k) Der Output: Eine Aussage über die Erfüllbarkeit dieser KNF.

5 Brute Force Search Teste alle möglichen Belegungen, beginnend mit L= Falls KNF(L)=1 KNF erfüllbar, STOP Falls für alle L gilt: KNF(L)=0 KNF nicht erfüllbar Komplexität:

6 Brute Force Search (Beispiel) L=00000-> KNF(L)=0 L=00001-> KNF(L)=0 L=00010-> KNF(L)=0 L=00011-> KNF(L)=1-> KNF erfüllbar

7 Limited Local Search (LLS) Wähle eine beliebige Initialbelegung L Wiederhole folgendes 3*d mal: 1. Falls KNF(L)=1 -> RETURN 1 2. Sonst wähle eine beliebige, noch nicht erfüllte Klausel C, wähle aus C ein beliebiges Literal l i und flippe dessen Wert in der Belegung L. RETURN 0

8 Limited Local Search (Beispiel) L=00110-> KNF(L)=0-> L=00111 L=00111-> KNF(L)=0-> L=01111 L=01111-> KNF(L)=0-> L=01101 L=01101-> KNF(L)=1-> RETURN 1

9 Limited Local Search & Restart Benütze dazu den LLS Algorithmus. 1. Wiederhole LLS mal: Falls LLS 1 zurückgibt KNF erfüllbar, STOP Falls LLS 0 zurückgibt nächster Versuch 2. Keine Aussage machbar! A Probabilistic Algorithm for k-SAT Based on Limited Local Search and Restart; by U. Schöning Algorithmica (2002) 32: Referenz:

10 Die Idee: Zufall Randomisierte Algorithmen Man ist schon zufrieden, wenn man meistens (mit hoher Wahrscheinlichkeit) eine Antwort findet. -> 2 Fragen: Wie viele Belegungen müssen evaluiert werden? Wie hoch ist die WSK, dass der Algorithmus eine Antwort findet?

11 Das Tool

12 Die Partnerübung Welches sind Vorteile / Nachteile von LLS & Restart und Brute Force Search? Unter welchen Vorraussetzungen? Wie hängen diese von den Parametern d und c ab? (k = 3)

13 Vorgehen & Abgabe Diskutiert die Frage und notiert eure Vermutungen (10 min) Benützt das Tool um eure Notizen zu bestätigen oder zu widerlegen. Notiert die Erkenntnisse. (20 min) [Form der Abgabe] [Abgabezeit und Ort]


Herunterladen ppt "K-SAT: Ein heuristischer Algorithmen- Vergleich Kann man den Brute Force Search Algorithmus schlagen?"

Ähnliche Präsentationen


Google-Anzeigen