25.11.2014 Aufrufe

Verifikation reaktiver Systeme - Universität Kaiserslautern

Verifikation reaktiver Systeme - Universität Kaiserslautern

Verifikation reaktiver Systeme - Universität Kaiserslautern

MEHR ANZEIGEN
WENIGER ANZEIGEN

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.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!