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.

4 Prädikatenlogik<br />

4.5.6 Hornklauseln und SLD-Resolution<br />

Hornklauseln s<strong>in</strong>d syntaktisch e<strong>in</strong>geschränkte Klauseln, d.h. nicht alle Klauseln s<strong>in</strong>d<br />

Hornklauseln, und daher werden nicht alle Prädikatenlogischen Formeln von Hornklauselmengen<br />

erfasst.<br />

Def<strong>in</strong>ition 4.5.1 (Hornklausel). E<strong>in</strong>e Hornklausel ist e<strong>in</strong>e Klausel, <strong>die</strong> höchstens e<strong>in</strong> positives<br />

Literal enthält. E<strong>in</strong>e Klauselmenge, <strong>die</strong> nur aus Hornklauseln besteht, nennt man Hornklauselmenge.<br />

Beispiel 4.5.2. {̸= R(x), P (a), Q(f(y))} ist ke<strong>in</strong>e Hornklausel, da sie zwei positive Literale enthält.<br />

H<strong>in</strong>gegen s<strong>in</strong>d <strong>die</strong> Klauseln {¬R(f(x)), ¬P (g(x, a), )Q(y)} und {¬R(g(y)), ¬P (h(b))}<br />

beide Hornklauseln, da <strong>die</strong> erste Klausel genau e<strong>in</strong> positives Literal (das Literal Q(y)) und <strong>die</strong><br />

zweite Klausel gar ke<strong>in</strong>e positiven Literale enthält.<br />

Hornklauseln f<strong>in</strong>den Verwendung <strong>in</strong> logischen Programmiersprache, wie z.B. Prolog,<br />

was wir noch behandeln werden. Hornklauseln lassen sich weiter unterteilen:<br />

• Def<strong>in</strong>ite Klauseln s<strong>in</strong>d Klauseln mit genau e<strong>in</strong>em positiven Literal.<br />

• Def<strong>in</strong>ite E<strong>in</strong>sklauseln( mit positivem Literal) werden auch als Fakt bezeichnet.<br />

• Klauseln, <strong>die</strong> nur negative Literale enthalten, nennt man auch e<strong>in</strong> def<strong>in</strong>ites Ziel.<br />

E<strong>in</strong>e Menge von def<strong>in</strong>iten Klauseln nennt man auch def<strong>in</strong>ites Programm.<br />

Wie bereits erwähnt s<strong>in</strong>d <strong>die</strong> l<strong>in</strong>eare Resolution ohne Verwendung <strong>der</strong> Faktorisierung<br />

und auch <strong>die</strong> Unit-Resolution vollständige Strategien für Hornklauseln.<br />

Die sogenannte SLD-Resolution ist nur für Hornklauselmengen def<strong>in</strong>iert. Das D steht<br />

dabei für Def<strong>in</strong>ite Klauseln. Beg<strong>in</strong>nend mit e<strong>in</strong>er Zentralklausel (<strong>die</strong> e<strong>in</strong> def<strong>in</strong>ites Ziel ist,<br />

also ke<strong>in</strong>e positiven Literale enthält), wird L<strong>in</strong>eare Resolution durchgeführt, wobei e<strong>in</strong>e<br />

determ<strong>in</strong>istische Selektionsfunktion bestimmt, welches Literal aus <strong>der</strong> aktuellen Zentralklausel<br />

wegresolviert wird.<br />

Tatsächlich lässt sich nachweisen, dass <strong>die</strong> Auswahl <strong>die</strong>ses Literals nicht entsche<strong>in</strong>ed<br />

für <strong>die</strong> Wi<strong>der</strong>legungsvollständigkeit ist, d.h. unabhängig davon, welches Literal gewählt<br />

wird, f<strong>in</strong>det <strong>die</strong> Resolution <strong>die</strong> leere Klausel; o<strong>der</strong> umgekehrt: wenn man Literal L i zu<br />

erst wegresolviert und man f<strong>in</strong>det <strong>die</strong> leere Klausel nicht, dann f<strong>in</strong>det man sie auch nicht,<br />

wenn man zunächst Literal L j wegresolviert. D.h. <strong>die</strong> Wahl des Literals ist sogenannter<br />

don’t care-Nichtdeterm<strong>in</strong>ismus <strong>der</strong> durch <strong>die</strong> Selektionsfunktion entfernt wird. Man<br />

kann hier verschiedene Heuristiken verwenden. Üblicherweise werden zunächst durch<br />

<strong>die</strong> Resolution neu h<strong>in</strong>zugefügte Literal wegresolviert. Als weitere Selektionsfunktion<br />

kann man <strong>die</strong> Aufschreibereihenfolge verwenden, o<strong>der</strong> beispielsweise zuerst <strong>die</strong> am meisten<br />

<strong>in</strong>stanziierten Literale (o<strong>der</strong> <strong>die</strong> am wenigsten <strong>in</strong>stanziierten Literale) verwenden.<br />

Als weitere Beson<strong>der</strong>heit <strong>der</strong> SLD-Resolution ist zu beachten, dass bei e<strong>in</strong>em def<strong>in</strong>iten<br />

Ziel als Zentralklausel und def<strong>in</strong>item Programm als E<strong>in</strong>gabeklauseln, jede l<strong>in</strong>eare Resolution<br />

stets <strong>die</strong> Resolvente und e<strong>in</strong>e Seitenklausel verwendet, d.h. es werden nie zwei Re-<br />

Stand: 04. Dezember 2012 150 M. Schmidt-Schauß & D. Sabel, Skript KI, WS 2012/13

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!