Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Wissensbasierte Systeme 1 G. Brewka Wissensbasierte Systeme 1 6. Regelbasierte Systeme Regel (über einer Sprache L): Konstrukt der Form IF Bedingung 1,

Ähnliche Präsentationen


Präsentation zum Thema: "Wissensbasierte Systeme 1 G. Brewka Wissensbasierte Systeme 1 6. Regelbasierte Systeme Regel (über einer Sprache L): Konstrukt der Form IF Bedingung 1,"—  Präsentation transkript:

1 Wissensbasierte Systeme 1 G. Brewka Wissensbasierte Systeme 1 6. Regelbasierte Systeme Regel (über einer Sprache L): Konstrukt der Form IF Bedingung 1, …, Bedingung n THEN Folgerung/Aktion Falls Aktion im THEN-Teil: Produktionsregel, sonst Inferenzregel Bedingungen und Folgerung in L formuliert verschiedene Notationen gebräuchlich: Bedingung 1, …, Bedingung n Folgerung Folgerung Bedingung 1, …, Bedingung n Folgerung :- Bedingung 1, …, Bedingung n Die Folgerung nennt man auch Kopf der Regel, die Bedingungen Körper. Viele der in den 80/90er Jahren entwickelten Expertensysteme regelbasiert.

2 Wissensbasierte Systeme 2 G. Brewka Wissensbasierte Systeme 2 Regeln vs. Implikationen A B ungerichtet: erlaubt Inferenz von B aus A, aber auch von A aus B, bzw. von B aus A B zusammen mit A B A B gerichtet: nur wenn A gegeben, kann B hergeleitet werden: Kontrolle des Schließens Falls L nur aus Atomen besteht (Horn Klausen): C folgerbar aus Implikationen gdw. C herleitbar aus entsprechenden Regeln Toddler Toddler Child Child, Male Boy Infant Child Child, Female Girl Female Beispiel:

3 Wissensbasierte Systeme 3 G. Brewka Wissensbasierte Systeme 3 Schließen mit Regeln: backward vs. forward chaining Backward chaining (Rückwärtsverkettung): entspricht dem Finden von Regeln für noch offene Teilziele: Ziel:Girl bewiesen falls beweisbarChild, Female bewiesen falls beweisbarToddler, Female bewiesen falls beweisbarFemale bewiesen falls beweisbarnichts mehr zu beweisen! Man spricht von backward chaining, da man vom Ziel zu den Prämissen (von Regel-Konklusion zu Regel-Prämisse) zurück geht.

4 Wissensbasierte Systeme 4 G. Brewka Wissensbasierte Systeme 4 Rekursive Beweisprozedur input: endliche Liste von zu beweisenden Elementen q 1, …, q n output: JA, falls aus gegebener Regelbasis R alle q i herleitbar, NEIN sonst procedure SOLVE[q 1,…,q n ] if n = 0 then return YES; for each rule r R do if r = [p 1, …, p m q 1 ] and SOLVE[p 1, …, p m, q 2,…,q n ] then return YES end for; return NO. Implizite Suchstrategie: depth first left-to-right

5 Wissensbasierte Systeme 5 G. Brewka Wissensbasierte Systeme 5 Forward chaining (Vorwärtsverkettung) Starte mit Fakten (Regeln ohne Vorbedingung) in R; wende alle Regeln an, deren Vorbedingungen bereits abgeleitet sind; iteriere, bis nichts Neues mehr abgeleitet werden kann. Formaler: Sei R Menge von Regeln. Eine Menge S heißt abgeschlossen unter R, falls gilt: [B 1, …, B n C] R und B 1, …, B n S impliziert C S. Die Hülle von R ist die kleinste Menge, die abgeschlossen ist unter R. Anmerkung: für jedes Element c der Hülle gibt es einen Beweis, d.h. eine Folge von Regeln r 1, … r k, so dass die Vorbedingungen von r j jeweils in den Köpfen von r 1 … r j-1 enthalten sind und c Kopf von r k ist. Die Hülle ist in diesem Sinne gegründet.

6 Wissensbasierte Systeme 6 G. Brewka Wissensbasierte Systeme 6 Iterative Berechnung der Hülle Betrachte Operator T R : T R (A) = {q | p 1,…, p m q R, p 1, …, p m A} Definiere T R 0 = T R i+1 = T R (T R i ) Hülle von R kann berechnet werden durch wiederholtes Anwenden von T R. Start mit der leeren Menge (Hülle ist kleinster Fixpunkt von T R ). Im Beispiel: T R 0 = T R 1 = T R ( ) = {Toddler, Female} T R 2 = T R (T R 1 ) = {Toddler, Female, Child} T R 3 = T R (T R 2 ) = {Toddler, Female, Child, Girl} T R 4 = T R (T R 3 ) = {Toddler, Female, Child, Girl}

7 Wissensbasierte Systeme 7 G. Brewka Wissensbasierte Systeme 7 Forward vs. Backward forward chaining Algorithmen leicht (im aussagenlogischen Fall sehr effizient) zu implementieren. entsprechende Algorithmen existieren auch für first order Fall (Variablen in Regeln erlaubt, Instanzierung und Unifikation zu berücksichtigen). Vor- und Nachteile: backward chaining zielgerichtet: nur Regeln überprüft, die zu gesuchter Ableitung beitragen können; aber kann endlos laufen, z.B. wenn Regel der Form p p vorhanden ist. forward chaining effizient in propositionalem Fall, terminiert möglicher Weise nicht im first order Fall, wenn Hülle unendlich werden kann.

8 Wissensbasierte Systeme 8 G. Brewka Wissensbasierte Systeme 8 Vorwärtsverkettung kann besser sein! 2n Atome:p 0, p 1, …, p n-1, q 0, q 1, …, q n-1 4n-4 Regeln:p 0 p 1, p 1 p 2, …p n-2 p n-1 p 0 q 1,p 1 q 2, …p n-2 q n-1 q 0 p 1, q 1 p 2, …q n-2 p n-1 q 0 q 1,q 1 q 2, …q n-2 q n-1 SOLVE[p i ] und SOLVE[q i ] liefern jeweils NO, aber erst nach 2 i Schritten (= Aufrufe von SOLVE). Einfacher Induktionsbeweis für p i : i = 1:ruft auf SOLVE[p 0 ] und SOLVE[q 0 ], also 2 1 Aufrufe i > 1:ruft auf SOLVE[p i-1 ] und SOLVE[q i-1 ], nach Induktionsvoraussetzung je 2 i-1 Aufrufe von SOLVE, also insgesamt 2 i. Forward chaining terminiert sofort: keine Vorbedingung einer Regel ableitbar


Herunterladen ppt "Wissensbasierte Systeme 1 G. Brewka Wissensbasierte Systeme 1 6. Regelbasierte Systeme Regel (über einer Sprache L): Konstrukt der Form IF Bedingung 1,"

Ähnliche Präsentationen


Google-Anzeigen