Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Abstrakter Datentyp Wissensbasis Interaktion mit der Wissensbasis: mitteilen (tell): (Wissen × Aussage)Problemlösungstechnik −→ Wissen anfragen (ask): (Wissen × Anfrage)Problemlösungstechnik −→ Ergebnis Teil II Logik-basierte Wissensmodellierung Das repräsentierte Wissen ist anwendungsabhängig. Die verwendete Problemlösungstechnik ist unabhängig von der Anwendungsdomäne. Vorteil: Hoher Grad an Modularität, Trennung von Kontrollstruktur und Wissen, Unabhängigkeit von Wissenseinheiten. Vorsicht: Es ist noch nichts darüber ausgesagt, wie zu einer Anfrage ein Ergebnis generiert wird, oder wie neu mitgeteiltes Wissen in bestehendes Wissen integriert wird. SS07, T. Liebig, Uni Ulm 2 -1 SS07, T. Liebig, Uni Ulm Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Programmiersprachen vs. deklarative Wissensverarbeitung ◮ ◮ 2 -2 Architektur eines wissensbasierten Systems (vereinfacht) Programme in (konventionellen) Programmiersprachen beschreiben wie etwas getan werden soll. Benutzer In einem deklarativen System (z. B. Prolog) wird beschrieben was getan werden soll. Abfragekomponente Beispiel: Bestimmung des numerisch größten Elements einer Liste/Feld: In Java: int x = liste[0]; for (int i=0; i<liste.length; i++) if (x<liste[i]) x=liste[i]; Experte Bedienungsschnittstelle Wissenserwerbskomponente Steuerungssystem Problemlösungstechnik (Inferenzkomponente) In Prolog: maxliste(X,L) :- element(X,L), groesser_liste(X,L). groesser_liste(X,[]). groesser_liste(X,[Y|Rest]) :- X >= Y, groesser_liste(X,Rest). SS07, T. Liebig, Uni Ulm bereichsbezogenes Fachwissen x ∈L x gdw. |L| = 1 ... fallbasiertes Wissen Wissen x ≥ y, ∀y ∈ L 2 -3 SS07, T. Liebig, Uni Ulm 2 -4 Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Prädikatenlogik Gruppen logischer Schlussfolgerungssysteme Theorembeweiser / logische Programmiersprachen: Verwendung von Resolution (oder anderen Schlussfolgerungsmethoden) zur Beweisfindung von Theoremen in PL1. Mitteilungen entsprechen zusätzlichen Termen; Anfragen entsprechen Beweisen mit zugehörigen Variablenbindungen. Auffrischung der wichtigsten Begriffe der Prädikatenlogik 1. Stufe (PL1 / FOL) als Referenzsprache für die nachfolgenden Themen. Semantische Netze und Framesysteme: Abbildung von Objekten als Knoten in einem Graph mit hierarchischer Strukturierung und binären Beziehungen als Kanten oder Slots. Motivation: In der Aussagenlogik sind atomare Aussagen die einzig möglichen Bausteine (keine interne Struktur) Beschreibungslogiken: Weiterentwicklung Semantischer Netze mit formaler Semantik und hierarchischer Strukturierung als primärem Organisationsprinzip. Komplexe Begriffe werden aus atomaren Begriffen und Beziehungen mittels einer Menge von Konstruktoren erzeugt. Keine Aussagen und Ableitungen möglich wie: Produktionssysteme: Verwendung von Implikationen als primäres Repräsentationsprinzip. Die Konsequenz jeder Implikation entspricht einer Operation (z. B. Einfügung/Löschung) auf Wissensbasis. Produktionssysteme basieren auf vorwärts-verkettetem Kontrollfluss mit Konfliktresolution. In PL1 erlauben durch die Verwendung von Prädikaten, Funktionen, Variablen und Quantoren solche Aussagen. SS07, T. Liebig, Uni Ulm Alle Studenten im Hauptstudium beherrschen formale Logik. Peter ist ein Student im Hauptstudium. Peter beherrscht formale Logik. 2 -5 SS07, T. Liebig, Uni Ulm Logik-basierte Wissensmodellierung 2 -6 Logik-basierte Wissensmodellierung Warum Logik? Syntax von PL1 (Symbole & Terme) Die Syntax legt die Bezeichner fest und definiert damit die Sprache in der logische Aussagen formuliert werden können. Primitive Symbole: Die Grundse der Logik sollen niemanden fremd bleiben, der auf den Besi von Bildung Anspru erhebt. Mann kann zwar ri tig denken, ohne je eine Logik udirt zu haben, sowie man ohne Kenntni der Grammatik ri tig spre en und s reiben lernen kann; aber glei wie nur derjenige eine Spra e ganz in seiner Gewalt hat, der sie ni t blo dur praktis e Uebung erlernt, sondern au ihre allgemeinen Gesee si zum Bewutsein gebra t hat, so i au nur derjenige des Denken vollkommen m tig, der si der Gesee deselben vollkommen bewut i. Konstantensymbole: (0-stellige Funktionssymbole) mit z. T. indizierten Bezeichnern wie c1 , k1 , s1 , frodo, sam, ... Funktionssymbole: mit kleingeschr. Bezeichnern wie f(..), alter von(..), freunde(..), ... Variablensymbole: mit unindizierten Bezeichnern wie x, y, z, ... Prädikatsymbole: mit großgeschr. Bezeichnern P(..), Motor(..), HatAlsTeil(..), ... Die Menge der primitiven Symbole zusammen mit ihrer Stelligkeit bilden eine Signatur. Aus dem Vorwort von Josef Mich, Grundriß der Logik, 3. Auflage, Verlag von Buchholz & Diebel, 1877 SS07, T. Liebig, Uni Ulm Terme: 2 -7 t SS07, T. Liebig, Uni Ulm → | | x f (t1 , . . . , tn ) c1 Variable Funktionsanwendung Konstante 2 -8 Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Syntax von PL1 (Formeln) Formeln: φ, ψ → | | | | | | | | | Semantik von PL1 (Idee) P(t1 , . . . , tn ) T F ¬φ φ∨ψ φ∧ψ φ⇒ψ Atomare Formel Wahr Falsch Negation Disjunktion Konjunktion Implikation φ⇔ψ ∀x(φ) ∃x(φ) Äquivalenz Universelle Quantifikation Existentielle Quantifikation Wie in der Aussagenlogik kann einer PL1-Formel φ der Wahrheitswert wahr oder falsch in Abhängigkeit einer gegebenen Interpretation zugeordnet werden. I : φ → {T , F } Diese Interpretation I bildet wie folgt in das Universum (universe of discourse) mit entsprechender Stelligkeit ab (Tarski-Modell): Konstantensymbole auf Objekte des Universums Prädikatsymbole auf Relationen über Objekte des Universums Funktionssymbole auf funktionale Relationen über Objekte des Universums Gibt es eine Interpretation I für eine Formel φ, die diese erfüllt, ist diese ein Modell für die Formel. Geschreiben I |= φ bzw. I 6|= φ wenn I kein Modell darstellt. Quantoren binden eine Variable. Nicht gebundene Variablen heissen freie Variablen. Üblicherweise betrachtet man alle potentiellen nicht-leeren Universen. Grundterme, Grundatome, usw. sind Terme, Atome, usw. ohne Variablenvorkommen. Z. B. freunde(frodo, sam) SS07, T. Liebig, Uni Ulm Erfüllbarkeit und Gültigkeit wird bzgl. dieser Strukturen betrachtet. 2 -9 SS07, T. Liebig, Uni Ulm Logik-basierte Wissensmodellierung 2 - 10 Logik-basierte Wissensmodellierung Formale Semantik von PL1 (Interpretation) Formale Semantik von PL1 (Beispiel) Interpretation I = (D, ·I ) mit D 6= ∅ und Interpretationsfunktion ·I , die alle: ◮ ◮ ◮ n-stelligen Funktionssymbole auf n-stellige funkionale Relationen: f I ∈ [Dn → D], Konstantensymbole (als Spezialfälle von Funktionen) auf Objekte: aI ∈ D, n-stelligen Prädikatssymbole auf n-stellige Relationen: P I ⊆ Dn abbildet. Interpretation von Grundtermen: (f (t1 , . . . , tn )) I = f I (t1I , . . . , tnI ) SS07, T. Liebig, Uni Ulm gdw. = {d1 , . . . , dn } mit n > 1 D = {1, 2, 3, . . .} = d1 1I = 1 bI = d2 2I 2 BlockI = {d1 } RedI = .. . = D (∈ D) Erfüllbarkeit von von Grundatomen: I |= P(t1 , . . . , tn ) D aI ht1I , . . . , tnI i ∈P I 2 - 11 I |= Red(b) I 6|= Block(b) SS07, T. Liebig, Uni Ulm EvenI = {2, 4, 6, . . .} succI = {(1 7→ 2), (2 7→ 3), . . .} I 6|= Even(3) I |= Even(succ(3)) 2 - 12 Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Formale Semantik von Variablen in PL1 Formale Semantik von PL1 (Fortsetzung des Beispiels) Abbildung von Variablen: Funktion α : V → D (Menge aller Variablen V ). Notation: α[x/d] ist identisch zu α bis auf die Variable x. Für x gilt α[x/d](x) = d. Für die Interpretation von Grundtermen bzgl. I und α folgt: x I,α = α(x) aI,α = aI I,α = f I (t1I,α , . . . , tnI,α ) (f (t1 , . . . , tn )) D = {d1 , . . . , dn } mit n > 1 aI = d1 bI = d2 I = {d1 } RedI = D Block α = {(x 7→ d1 ), (y 7→ d2 )} I, α |= Red(x) I, α 6|= Block(y) I, α [z/d1 ] |= Block(z) ′ Dergleichen für Grundatome: I, α |= P(t1 , . . . , tn ) gdw. ht1I,α , . . . , tnI,α i ∈ P I SS07, T. Liebig, Uni Ulm 2 - 13 SS07, T. Liebig, Uni Ulm Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Erfüllbarkeit von Formeln in PL1 Terminologie (1) Eine PL-Formel mit den Teilformeln φ und ψ und folgenden Konstruktoren ist erfüllbar durch I unter α wenn folgendes gilt: I, α |= T und I, α 6|= F I, α |= P(t1 , . . . , tn ) gdw. ht1I,α , . . . , tnI,α i ∈ P I I, α |= ¬φ gdw. I, α 6|= φ I, α |= φ ∨ ψ gdw. I, α |= φ oder I, α |= ψ I, α |= φ ∧ ψ gdw. I, α |= φ und I, α |= ψ I, α |= φ ⇒ ψ gdw. falls I, α |= φ dann I, α |= ψ I, α |= φ ⇔ ψ gdw. I, α |= φ gdw. I, α |= ψ I, α |= ∀x(φ) gdw. für alle d ∈ D gilt, dass I, α[x/d] |= φ I, α |= ∃x(φ) gdw. es ein d ∈ D gibt, so dass I, α[x/d] |= φ 2 - 14 Interpretation: I, α : φ → {T , F } Modell: I, α |= φ I, α 6|= φ (I, α ein Modell der Formel φ, gdw. I, α : φ → T ) (I, α kein Modell der Formel φ, gdw. I, α : φ → F ) Es werden vier Fälle unterschieden: Eine Formel heisst erfüllbar, falls sie sie mindestens eine Interpretation besitzt, sodass die Formel wahr wird. falsifizierbar, falls sie mindestens eine Interpretation besitzt, sodass die Formel falsch wird. allgemein gültig oder Tautologie, falls sie unter jeder Interpretation wahr wird. unerfüllbar, falls keine Interpretation existiert, die sie wahr macht. allg. gültige Formeln erfüllbare, aber nicht gültige unerfüllbare Formeln Formeln Menge erfüllbarer Formeln = allg. gültige F. ∪ erfüllbaren, aber nicht gültigen F. Menge falsifizierbare Formeln = unerfüllbare F. ∪ erfüllbaren, aber nicht gültigen F. SS07, T. Liebig, Uni Ulm 2 - 15 SS07, T. Liebig, Uni Ulm 2 - 16 Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Terminologie (2) Formale Semantik von PL1 (Fortsetzung des Beispiels) Zwei Formeln sind logisch äquivalent (φ ≡ ψ) gdw. für alle I, α gilt: I, α |= φ gdw. I, α |= ψ. Für Mengen von Formeln Θ gilt (Endlichkeitssatz / compactness theorem): I, α |= Θ gdw. Θ I, α |= ψ für alle ψ ∈ Θ D Im Kontext der logik-basierten Wissensrepräsentation ist folgende Fragestellung interessant: gdw. Block(a), Block(b), ∀x(Block(x) ⇒ Red(x)) = d1 bI = d2 ff BlockI = {d1 } I = D α = {(x 7→ d1 ), (y 7→ d2 )} Red Fragestellungen: 1. I, α |= Block(a) ∨ ¬Block(a)? 2. I, α |= Block(x) ⇒ (Block(x) ∨ ¬Block(y))? Geschrieben Θ |= ψ Θ |= ψ {d1 , . . . , dn } mit n > 1 I a “Wird eine Formel ψ durch eine gegebenen Mengen von Formeln Θ impliziert?” “Ist ψ eine logische Folgerung von Θ?” = = 3. I, α |= Block(x) ⇒ Block(y)? I, α |= ψ für alle Modelle I, α für die gilt I, α |= Θ 4. I, α |= Block(a) ∧ Block(x)? 5. I |= ∀x(Block(x) ⇒ Red(x))? 6. I |= Θ? SS07, T. Liebig, Uni Ulm 2 - 17 SS07, T. Liebig, Uni Ulm Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Beispiel: Logische Folgerung Θ = 8 9 < Top(k1 ), = Top(z) ∨ ¬Clear(z), : ; On(x, y) ⇒ ¬Top(y) Ist ψ eine logische Folgerung von Θ? 2 - 18 Inferenzprozeduren D = {a, b, c} ψ = {On(x, y) ⇒ ¬Clear(y)} Gesucht: automatisierbares Verfahren zur Berechnung logischer Folgerungen → Inferenzprozedur Zunächst Aussagenlogik: ? Θ |= ψ ◮ Naives Verfahren: Wahrheitstabelle ◮ Einfache Schlussregeln: Modus ponens: ◮ 2 - 19 Modus tolens: A→B ¬B ¬A Jedoch: A→B B A SS07, T. Liebig, Uni Ulm A→B A B SS07, T. Liebig, Uni Ulm i. S. des log. Folgerungsbegriffs keine korrekte Schlussregel! 2 - 20 Logik-basierte Wissensmodellierung Logik-basierte Wissensmodellierung Ableitbarkeit Korrektheit / Vollständigkeit von Inferenzprozeduren Schlüsselkriterien von Inferenzprozeduren mit Inferenzprozedur i, Formelmenge Θ, Formel ψ und Inferenzergebnis Ai : Unterscheidung zwischen zwei Ebenen der Folgerung: ◮ Semantische Ebene mit der logischen Folgerung, d. h. Θ |= φ ◮ Inferenzebene mit syntaktischer Ableitbarkeit Korrektheit Die Prozedur i is korrekt, falls immer wenn Θ ⊢i ψ wahr ist, auch Θ |= ψ wahr ist. Ableitbarkeit: Eine Formel φ ist aus der Formelmenge Θ mit Hilfe einer Inferenzprozedur i ableitbar, geschrieben Vollständigkeit: Die Prozedur i is vollständig, falls immer wenn Θ |= ψ wahr ist, auch Θ ⊢i ψ wahr ist. Θ ⊢i φ Entscheidbarkeit: wenn eine endliche Folge von Inferenzschritten existiert, sodass man von Θ zu φ gelangt. Ai = Die Aussage φ lässt sich (durch Anw. der Prozedur i) aus der Menge der Aussagen Θ ableiten. Bemerkung: Ableitbarkeit hängt offensichtlich von der zugrundeliegenden Inferenzprozedur ab. SS07, T. Liebig, Uni Ulm 1, 0, falls Θ ⊢i ψ falls Θ 6⊢i ψ Komplexität: Fragestellung, ob i ∈ P 2 - 21 SS07, T. Liebig, Uni Ulm Logik-basierte Wissensmodellierung 2 - 22 Logik-basierte Wissensmodellierung Inferenzprozedur Resolution Logik: Zusammenfassung Widerspruchsbeweis: Θ |= φ äquivalent mit Θ ∧ ¬φ ist widersprüchlich. Idee: Reduktion von PL1 auf aussagenlogische Erfüllbarkeit: 1. Pränex-Normalform (Quantoren + Matrix); Eliminieren von Implikation und Äquivalenz; Negation nach innen; Quantoren nach außen Logik erlaubt die Axiomatisierung einer Anwendungsdomäne und das Schlussfolgern auf diesem Wissen 2. Skolemisierung (Eleminierung von existentiellen Quantoren) Skolem-Normalform (Pränex-Normalform ohne Existenzquantoren) Eckpunkte: 3. Umwandlung in KNF (Klauselmenge) ◮ Syntax 4. Herbrand-Interpretation/Model: Universum besteht aus allen möglichen Grundtermen (mind. einer Konstante); beliebige Interpretation der Prädikate; Funktionen syntaktisch interpretiert. ◮ Semantik ◮ Kriterium: Korrekte und vollständige Schlussfolgerungsprozedur Probleme: 5. Wiederholte Anwendung der Inferenzregel (Ziel: leere Klausel als Resolvente). ◮ ◮ Eine Inferenzregel: Seine C1 und C2 Klauseln und L ein Literal mit L ∈ C1 und ¬L ∈ C2 , dann heisst die Klausel (C1 \{L}) ∪ (C2 \{¬L}) Resolvente von C1 und C2 . Unerfüllbarkeit und Gültigkeit von PL1 semi-entscheidbar. Resolution als Inferenzprozedur: ◮ ◮ ◮ Wenig zielgerichtete Problemlösungverfahren Z. T. schlecht erweiterbar. Schlussfolgerungsprozess i. d. R. ungeeignet für Begründung/Erklärung. Theorem: Menge von Formeln hat Modell gdw. sie ein Herbrand-Modell hat. SS07, T. Liebig, Uni Ulm 2 - 23 SS07, T. Liebig, Uni Ulm 2 - 24