Hornklauseln zu den Beweisverfahren hinzugefügt

This commit is contained in:
paul-loedige 2021-02-02 20:43:14 +01:00
parent f6e7a5ddd3
commit 69ca84b577
3 changed files with 27 additions and 1 deletions

View File

@ -49,3 +49,29 @@
\label{resolutionsalgorithmus}
\includegraphics[width = .8\textwidth]{resolutionsalgorithmus1.png}\\
\includegraphics[width = .3\textwidth]{resolutionsalgorithmus2.png}
\section{Hornklauseln}
\label{hornklauseln}
Klauseln in \ac{KNF} lassen sich nach positiven und negativen Literalen sortieren:
$$ (\neg A_1\vee\dots\vee\neg A_m\vee B_1\vee\dots\vee B_n)$$
Hieraus ergibt sich durch umformen:
$$ A_1\wedge\dots\wedge A_m \Rightarrow B_1\vee\dots\vee B_n$$
Dies ist besonders hilfreich, wenn die Klausel nur ein positives Literal enthält:
$$ \neg A_1\vee\dots\vee\neg A_m\vee B)$$
$$A_1\wedge\dots\wedge A_m \Rightarrow B$$
Diese Klauseln werden als \textbf{Hornklauseln} bezeichnet.
Der große Vorteil bei der Nutzung von Hornklauseln ist,
dass die Laufzeit einer Folgerung mit Hornklauseln \textbf{linear} in der Anzahl der Fakten der Wissensbasis ist.
\subsection{Forward Chaining}
\label{forward chaining}
Der Modus Ponens (\ref{inferenzregeln}) ist für Hornklauseln eine vollständige Inferenzregel:
$$\frac{A_1\wedge\dots\wedge A_m, A_1\wedge\dots\wedge A_m \Rightarrow B}{B}$$
\includegraphics[width = \textwidth]{forward_chaining.png}
\subsection{Backward Chaining}
\label{backward chaining}
Während das Forward Chaining (\ref{forward chaining}) den einen datengetriebenen Ansatz verfolgt (Bei den Fakten starten und Anfrage herleiten)
beginnt das Backward Chaining bei der Anfrage und arbeitet die relevanten Teile des Und-Oder-Graphen rückwärts ab.
Dies hat den Vorteil, das anders als beim Forward Chaining keine potentiell unnötigen Formeln abgeleitet werden.\\
\includegraphics[width = \textwidth]{backward_chaining.png}

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
images/forward_chaining.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB