Database Reference
In-Depth Information
4.3.3
Zielorientierte Inferenz (Ruckwartsverkettung)
Die Vorwartsverkettung ist sicherlich nutzlich, wenn man einen Uberblick uber den
allgemeinen Zustand eines Systems erhalten will. Oft ist man aber nur am Zustand
ganz bestimmter Knoten (z.B. des Endknotens M ) interessiert. Fur diesen Fall
bietet sich die ruckwartsgerichtete Inferenz oder Ruckwartsverkettung an.
Auch der Ruckwartsverkettung liegt das Prinzip der transitiven Verknupfung
von Regeln zugrunde. Hierbei geht man jedoch nicht von den gegebenen Daten aus,
sondern von einem Zielobjekt, uber dessen Zustand der Benutzer Informationen
wunscht. Das System durchsucht dann die Regelbasis nach geeigneten Regeln, die
also das Zielobjekt in der Konklusion enthalten. Die Objekte der Pramissen werden
zu Zwischenzielen.
Bevor wir einen allgemeinen Algorithmus skizzieren und ihn auf das Regelwerk
des Beispiels 4.7 anwenden, wollen wir die Idee an einem kleinen, trivialen Beispiel
illustrieren.
Beispiel 4.13 Die Wissensbasis enthalte die (zweiwertigen) Objekte O1,O2,O3
und die Regeln
Regel 1:
if O1 then O2
Regel 2:
if O2 then O3
Wir wollen den Zustand des Zielobjektes O3 in Erfahrung bringen. Aufgrund von
Regel2wissenwir,dassO3wahrist,wennO2 wahr ist. Dieses wiederum ist erfullt
(Regel 1), wenn O1 wahr ist. Nun sucht das System gezielt nach Informationen uber
O1.
Das allgemeine Vorgehen wird durch den Algorithmus in Abbildung 4.5 be-
schrieben. Dabei gehen wir davon aus, dass alle Regeln in Normalform vorliegen, und
notieren eine Regel if p 1 ∧...∧p m then q als p 1 ∧...∧p m → q . Die zielorientierte
Inferenz ist dann wie in Abbildung 4.5 durch den Aufruf BACKCHAIN([q 1 ,...,q n ])
definiert, wobei [q 1 ,...,q n ] die gegebene Liste von Zielen ist und BACKCHAIN re-
kursiv wie in den Zeilen (1) bis (10) in Abbildung 4.5 definiert ist.
Zu Beginn des Verfahrens besteht die Zielliste aus der Liste der angegebenen
Zielobjekte; ist nur ein einzelnes Zielobjekt q 1 angegeben, also aus der Liste [q 1 ]. Ist
diese Liste leer, liefert BACKCHAIN als Ruckgabewert yes . Andernfalls sei q 1 das
erste Element der Liste der Zielobjekte. Ist q 1 in der Faktenmenge
enthalten, wird
BACKCHAIN mit der Restliste ohne q 1 aufgerufen. Andernfalls wird die Regelbasis
RB gezielt nach Regeln durchsucht, die das Zielobjekt in der Konklusion enthalten.
Findet es solche Regeln, so versucht das Verfahren, sie gezielt anzuwenden, indem
fur eine solche Regel BACKCHAIN rekursiv aufgerufen wird, wobei anstelle von q 1
die Pramissen der Regel als neue Ziele in die Liste der Zielobjekte aufgenommen
werden. Ist fur keine der Regeln mit q 1 als Konklusion dieser Aufruf erfolgreich, so
kann dieses Zielobjekt nicht abgeleitet werden und BACKCHAIN liefert als Ergebnis
no zuruck. Beachten Sie aber, dass, sofern nicht weitere Vorkehrungen getroffen
werden, BACKCHAIN bei rekursiven Regeln eventuell nicht terminiert, z.B. bei
der Regelmenge
F
{
p
q, q
p
}
und der Anfrage [p].
Search WWH ::




Custom Search