20.03.2014 Aufrufe

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

5.2 Semantik von Hornklauselprogrammen<br />

5.2.1 Vollständigkeit <strong>der</strong> SLD-Resolution<br />

Wir werden verschiedene Vollständigkeitsaussagen für <strong>die</strong> SLD-Resolution formulieren.<br />

Theorem 5.2.5. (Wi<strong>der</strong>legungsvollständigkeit)<br />

Sei P e<strong>in</strong> def<strong>in</strong>ites Programm und G e<strong>in</strong> def<strong>in</strong>ites Ziel. Wenn P ∪ {G} unerfüllbar ist, dann gibt<br />

es e<strong>in</strong>e SLD-Wi<strong>der</strong>legung von P ∪ {G}.<br />

Es gilt <strong>der</strong> folgende stärkere Satz über <strong>die</strong> Vollständigkeit <strong>der</strong> berechneten Antworten,<br />

nämlich, dass es zu je<strong>der</strong> Antwortsubstitution e<strong>in</strong>e berechnete Antwort gibt, <strong>die</strong> allgeme<strong>in</strong>er<br />

ist.<br />

Theorem 5.2.6 (Vollständigkeit <strong>der</strong> SLD-Resolution). Sei P e<strong>in</strong> def<strong>in</strong>ites Programm und G<br />

e<strong>in</strong> def<strong>in</strong>ites Ziel. Zu je<strong>der</strong> korrekten Antwort θ gibt es e<strong>in</strong>e berechnete Antwort σ für P ∪ {G}<br />

und e<strong>in</strong>e Substitution γ, so dass für alle Variablen x ∈ F V (G): γσ(x) = θ(x).<br />

5.2.2 Strategien zur Berechnung von Antworten<br />

Def<strong>in</strong>ition 5.2.7. Der folgende Algorithmus berechnet alle Antworten mit e<strong>in</strong>er Breitensuche:<br />

1. Gegeben e<strong>in</strong> Ziel ⇐ A 1 , . . . , A n :<br />

a) Probiere alle Möglichkeiten aus, e<strong>in</strong> Unterziel A aus A 1 , . . . , A n auszuwählen<br />

b) Probiere alle Möglichkeiten aus, e<strong>in</strong>e Resolution von A mit e<strong>in</strong>em Kopf e<strong>in</strong>er Programmklausel<br />

durchzuführen.<br />

2. Erzeuge neues Ziel B: Löschen von A, Instanziieren des restlichen Ziels, H<strong>in</strong>zufügen des<br />

Rumpfs <strong>der</strong> Klausel.<br />

3. Wenn B = □, dann gebe <strong>die</strong> Antwort aus.<br />

Sonst: mache weiter mit 1 mit dem Ziel B.<br />

Dieser Algorithmus hat zwei Verzweigungspunkte pro Resolutionsschritt:<br />

• Die Auswahl e<strong>in</strong>es Atoms<br />

• Die Auswahl e<strong>in</strong>er Klausel<br />

Es stellt sich heraus, dass bei <strong>der</strong> Auswahl des Atoms <strong>die</strong> restlichen Alternativen nicht<br />

betrachtet werden müssen.<br />

Satz 5.2.8. Vertauscht man <strong>in</strong> e<strong>in</strong>er SLD-Wi<strong>der</strong>legung <strong>die</strong> Abarbeitung zweier Atome <strong>in</strong> e<strong>in</strong>em<br />

Ziel, so s<strong>in</strong>d <strong>die</strong> zugehörigen Substitutionen bis auf Variablenumbenennung gleich und <strong>die</strong> Wi<strong>der</strong>legung<br />

hat <strong>die</strong> gleiche Länge.<br />

Weiterh<strong>in</strong> gilt: Die Suchstrategie, <strong>die</strong> irgende<strong>in</strong> Atom auswählt, dann alle Klauseln durchprobiert,<br />

usw. ist vollständig bzgl. <strong>der</strong> Antworten.<br />

M. Schmidt-Schauß & D. Sabel, Skript KI, WS 2012/13 159 Stand: 7. Januar 2013

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!