Verifikation reaktiver Systeme - Universität Kaiserslautern
Verifikation reaktiver Systeme - Universität Kaiserslautern
Verifikation reaktiver Systeme - Universität Kaiserslautern
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
103<br />
Ein logischer Schaltkreis kann auch eine aussagenlogische Gleichung darstellen.<br />
Neben der eigentlichen Gleichung enthält der Schaltkreis strukturelle Informationen<br />
wie z. B. die Richtung von Leitungen. Die Umwandlung eines Schaltkreises<br />
in eine SAT-Gleichung ist trivial und wird in Abschnitt 3.1 beispielhaft<br />
gezeigt.<br />
2.1 Exakte Lösungsverfahren<br />
Für viele Probleme in P sind bereits effiziente Algorithmen bekannt. Dagegen<br />
sind NP-vollständige Probleme nur schwer zu lösen. Es wird angenommen, dass<br />
es für diese Probleme keine effizienten Algorithmen gibt.<br />
Es gibt verschiedene Ansätze NP-vollständige Probleme zu bearbeiten. Diese<br />
Ansätze kann man in zwei Kategorien einteilen: Exakte (vollständige) Verfahren<br />
untersuchen alle möglichen Lösungen und finden beweisbar eine optimale<br />
Lösung, falls diese existiert. Bei Erfüllbarkeitsproblemen ist andernfalls die Unerfüllbarkeit<br />
gezeigt. Durch die Betrachtung des gesamten Lösungsraums 2 brauchen<br />
diese Verfahren i. A. viel Zeit und Speicher. Lokale Suchverfahren dagegen<br />
betrachten nur einen Teil des Lösungsraums und können in Bezug auf das SAT-<br />
Problem nur Erfüllbarkeit, aber nicht die Unerfüllbarkeit zeigen. Für Optimierungsprobleme<br />
(z. B. TSP) können diese heuristischen Verfahren aber innerhalb<br />
kurzer Zeit fast-optimale Lösungen finden, die für praktische Anwendungen gut<br />
genug sind.<br />
Im Nachfolgenden wird der Schwerpunkt auf exakte Verfahren für das SAT-<br />
Problem gelegt.<br />
Vollständige Verfahren für das SAT-Problem lassen sich in drei Vorgehensweisen<br />
einteilen. Neben den deduktiven Verfahren, die mit logischem Schließen<br />
dieExistenzeineLösung beweisen, gibt es enummeriende Algorithmen, die alle<br />
möglichen Lösungen untersuchen. Als dritte Art gibt es die auf einer funktionalen<br />
Repräsentation (z. B. Graphen) arbeitenden Verfahren.<br />
Deduktive Algorithmen Deduktive Algorithmen leiten die Existenz einer Lösung<br />
durch logisches Schließen her. Die Art von Algorithmen werden auch in der<br />
klassischen” künstlichen Intelligenz [3] eingesetzt.<br />
”<br />
Davis-Putnam Bei dem Resolutionsverfahren von Davis und Putnam (DP) [4]<br />
werden die logischen Konsequenzen aus einer Klauselmenge berechnet. Dabei<br />
werden ausgehend von der ursprünglichen Klauselmenge zwei Elternklauseln gewählt,<br />
die ein Literal jeweils komplementär (im Beispiel x 3 ) besitzen. Im Resolutionsschritt<br />
wird eine neue Klausel erzeugt, die aus den beiden Elternklauseln<br />
ohne das gewählte Literal besteht (Abbildung 1(a)). Die neu erzeugte Klausel<br />
wird in die Klauselmenge hinzugefügt. Falls eine leere Klausel hergeleitet werden<br />
kann, ist die Instanz nicht erfüllbar.<br />
Das Davis-Putnam-Verfahren kann schlimmstenfalls exponentiell viel Speicher<br />
und Zeit benötigen. Es gibt verschiedene Erweiterungen, die in Abschnitt C<br />
und [3] aufgeführt sind.<br />
2 Durch Optimierung können aber Teile des Lösungsraums ausgeblendet werden.