Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL.

Ähnliche Präsentationen


Präsentation zum Thema: "Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL."—  Präsentation transkript:

1 Prädikatenlogik First-Order Logic

2 KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL Wissensrepräsentation in PL

3 KI 8-Prädikatenlogik3 Vor- und Nachteile der Aussagenlogik Aussagenlogik ist deklarativ Aussagenlogik erlaubt unvollständige / disjunkte / negierte Information –(im Gegensatz zu den meisten Databasen) Aussagenlogik ist kompositional: –Bedeutung von B 1,1 P 1,2 wird abgeleitet von der Bedeutung von B 1,1 und P 1,2 Bedeutung ist in Aussagenlogik kontext-unabhängig –(im Gegensatz zu natürlicher Sprache) Aussagenlogik hat sehr begrenzte Möglichkeiten, Wissen zu repräsentieren –(im Gegensatz zu natürlicher Sprache) –Z.B. kann nicht ausgedrückt werden Falltüren verursachen Luftzug in angrenzenden Feldern (außer durch explizites Aufstellen der Sätze für jedes Quadrat)

4 KI 8-Prädikatenlogik4 Prädikatenlogik Während Aussagenlogik voraussetzt, dass die Welt aus Fakten besteht, basiert Prädikatenlogik (wie natürliche Sprache) darauf, dass die Welt folgendes enthält: –Objekte: Leute, Häuser, Zahlen, Farben, Baseballspiele, … –Relationen: Rot, rund, prim, Bruder von, größer als, Teil von, steht zwischen, … –Funktionen: Vater von, Freund von, einer mehr als, plus, …

5 KI 8-Prädikatenlogik5 Syntax von FOL: Grundelemente Konstanten KingJohn, 2, Stuttgart,... Prädikate Bruder, >,... Funktionen Sqrt, LinkesBeinVon,... Variable x, y, a, b,... Verknüpfungen,,,, Gleichheit = Quantoren,

6 6 Syntax Satz AtomarerSatz | (Satz Verknüpfung Satz) | Quantor Variable, … Satz | Satz AtomarerSatz Prädikat(Term, …) | Term = Term Term Funktion(Term, …) | Konstante | Variable Verknüpfung | | | | Quantor | Konstante A | Wumpus | John | … Variable a | x | s | … Prädikat Vor | HatFarbe | EsRegnet | … Funktion Mutter | LinkesBein | …

7 KI 8-Prädikatenlogik7 Atomare Sätze AtomarerSatz =Prädikat (Term 1,...,Term n ) oder Term 1 = Term 2 Term =Funktion (Term 1,...,Term n ) oder Konstante oder Variable Beispiele: Bruder(KingJohn, RichardTheLionheart) > (Länge(LinkesBeinVon(Richard)), Länge(LinkesBeinVon(KingJohn)))

8 KI 8-Prädikatenlogik8 Komplexe Sätze Komplexe Sätze entstehen aus atomaren durch Verknüpfungen: S, S 1 S 2, S 1 S 2, S 1 S 2, S 1 S 2, Geschwister(KingJohn,Richard) Geschwister(Richard,KingJohn) >(1,2) (1,2) >(1,2)

9 KI 8-Prädikatenlogik9 Wahrheit Sätze sind wahr in Bezug auf ein Modell und eine Interpretation. Modelle enthalten Objekte (Domänenelemente) und Relationen zwischen diesen. Interpretation spezifiziert den Bezug für Konstantensymbole Objekte Prädikatssymbole Relationen Funktionssymbole Funktionale Relationen Ein atomarer Satz Prädikat(Term 1,...,Term n ) ist wahr wenn die Objekte, auf die sich Term 1,...,Term n beziehen, in der Relation stehen, auf die sich Prädikat bezieht.

10 KI 8-Prädikatenlogik10 Beispiel

11 KI 8-Prädikatenlogik11 Logik - Allgemeines Ontologische Bindungen: Voraussetzungen über die Realität –Aussagenlogik: Es gibt nur Fakten. –Prädikatenlogik: Es gibt Objekte, Beziehungen, Funktionen. Epistemologische Bindungen: Mögliche Wissenszustände des Agenten –Aussagen- und Prädikatenlogik: Wahr, falsch, unbekannt. –Wahrscheinlichkeitstheorie: Glaubensgrad zwischen 0 und 1.

12 KI 8-Prädikatenlogik12 Logik - Allgemeines SpracheOntologische Bindung Epistemologische Bindung AussagenlogikFakten 1 Wahr / falsch / unbekannt PrädikatenlogikFakten 1, Objekte, Relationen Wahr / falsch / unbekannt Temporale LogikFakten 1, Objekte, Relationen, Zeiten Wahr / falsch / unbekannt Wahrscheinlichkeits- theorie Fakten 1 Glaubensgrad 0 …1 Fuzzy LogikFakten mit Wahrheitsgrad 0 … 1 Intervallwert 1 … und die Fakten sind in der Welt wahr oder falsch.

13 KI 8-Prädikatenlogik13 Logik - Allgemeines Prädikatenlogik: Logik erster Stufe Logik höherer Stufe: –Relationen und Funktionen sind selbst Objekte

14 KI 8-Prädikatenlogik14 Allquantor Jeder in Stuttgart ist schlau: x In(x, Stuttgart) Schlau(x) x P ist wahr für ein Modell m, wenn der logische Ausdruck P wahr ist für jedes Objekt x des Modells m. Vereinfacht gesagt: x P ist äquivalent zur Konjunktion der Instantiatiierungen von P: In(KingJohn, Stuttgart) Schlau(KingJohn) In(Richard, Stuttgart) Schlau(Richard) In(Stuttgart, Stuttgart) Schlau(Stuttgart)...

15 KI 8-Prädikatenlogik15 Allquantor Achtung: Meist ist die wichtigste Verknüpfung mit. Häufiger Fehler: Gebrauch von als Verknüpfung mit : x In(x,Stuttgart) Schlau(x) heißt: Jeder ist in Stuttgart und jeder ist schlau.

16 KI 8-Prädikatenlogik16 Existenzquantor Irgendjemand in Stuttgart ist schlau: x In(x,Stuttgart) Schlau(x) x P ist wahr in einem Modell m, wenn der logische Ausdruck P wahr ist für jedes Objekt x des Modells m. Vereinfacht gesagt: x P ist äquivalent zur Disjunktion der Instantiatiierungen von P: In(KingJohn,Stuttgart) Schlau(KingJohn) In(Richard,Stuttgart) Schlau(Richard) In(Stuttgart,Stuttgart) Schlau(Stuttgart)...

17 KI 8-Prädikatenlogik17 Meist ist die wichtigste Verknüpfung mit Häufiger Fehler: Gebrauch von als Verknüpfung mit : x In(x,Stuttgart) Schlau(x) ist wahr, wenn es irgendjemand gibt, der nicht in Stuttgart ist! Existenzquantor

18 KI 8-Prädikatenlogik18 Eigenschaften der Quantoren x y ist dasselbe wie y x x y ist nicht dasselbe wie y x x y Liebt(x,y) –Es existiert ein x, so dass für alle y … –Es gibt eine Person, die jeden auf der Welt liebt. y x Liebt(x,y) –Für jedes y existiert ein x so dass … –Jeder auf der Welt wird von mindestens einer Person geliebt. Dualität der Quantoren: Quantoren können durch den jeweils anderen ausgedrückt werden x IsstGerne(x,Eis) x IsstGerne(x,Eis) x IsstGerne(x,Broccoli) x IsstGerne(x,Broccoli)

19 KI 8-Prädikatenlogik19 Gleichheit Term 1 = Term 2 ist bei gegebener Interpretation genau dann wahr, wenn Term 1 und Term 2 sich auf dasselbe Objekt beziehen. Z.B. Definition von Geschwister mittels Elter: x,y Geschwister(x,y) [ (x = y) m,v (m = v) Elter(m,x) Elter(v,x) Elter(m,y) Elter(v,y) ]

20 KI 8-Prädikatenlogik20 Anwendung der Prädikatenlogik Verwandtschafts-Domäne: Brüder sind Geschwister: x,y Bruder(x,y) Geschwister(x,y) Mutter ist weiblicher Elternteil: m,k Mutter(k) = m ( Weiblich(m) Elter(m,k)) Geschwister ist symmetrisch: x,y Geschwister(x,y) Geschwister(y,x)

21 KI 8-Prädikatenlogik21 Mengen-Domäne: m Menge(m) (m = { } ) ( x,m 2 Menge(m 2 ) m = {x | m 2 }) (Menge ist leer oder entsteht durch Hinzufügen eines Elements zu einer Menge) x,m {x | m} = { } (Leere Menge ist nicht zerlegbar) x,m x m m = {x | m} (Hinzufügen vorh. Elements wirkungslos) x,m x m [ y,m 2 (m = {y | m 2 } (x = y x m 2 ))] (Nur Elemente drin, die hinzugefügt wurden) m 1,m 2 m 1 m 2 ( x x m 1 x m 2 ) (Teilmenge) m 1,m 2 (m 1 = m 2 ) (m 1 m 2 m 2 m 1 ) (Gleichheit) x,m 1,m 2 x (m 1 m 2 ) (x m 1 x m 2 ) (Schnittmenge) x,m 1,m 2 x (m 1 m 2 ) (x m 1 x m 2 ) (Vereinigung) Anwendung der Prädikatenlogik

22 KI 8-Prädikatenlogik22 Knowledge Engineering in PL 1.Aufgabe verstehen! 2.Erforderliches Wissen sammeln. 3.Vokabular von Prädikaten, Funktionen, und Konstanten festlegen. 4.Allgemeines Domänenwissen kodieren. 5.Beschreibung des speziellen Problems kodieren. 6.Anfragen an WB stellen, Antworten prüfen. 7.WB debuggen.

23 KI 8-Prädikatenlogik23 Domäne der elektronischen Schaltkreise Ein-bit Volladdierer Summanden 0 Übertrag Summe 0 0 Übertrag

24 KI 8-Prädikatenlogik24 Domäne der elektronischen Schaltkreise Ein-bit Volladdierer Summanden 1 0 Übertrag Summe 1 0 Übertrag

25 KI 8-Prädikatenlogik25 Domäne der elektronischen Schaltkreise Ein-bit Volladdierer Summanden Übertrag Summe 1 0 Übertrag

26 KI 8-Prädikatenlogik26 Domäne der elektronischen Schaltkreise Ein-bit Volladdierer Summanden 1 0 Übertrag Summe 0 1 Übertrag

27 KI 8-Prädikatenlogik27 Domäne der elektronischen Schaltkreise Ein-bit Volladdierer Summanden 0 1 Übertrag Summe 1 0 Übertrag

28 KI 8-Prädikatenlogik28 Domäne der elektronischen Schaltkreise Ein-bit Volladdierer Summanden Übertrag Summe 0 1 Übertrag

29 KI 8-Prädikatenlogik29 Domäne der elektronischen Schaltkreise Ein-bit Volladdierer Summanden 0 1 Übertrag Summe 0 1 Übertrag

30 KI 8-Prädikatenlogik30 Domäne der elektronischen Schaltkreise Ein-bit Volladdierer Summanden 1 Übertrag Summe 1 1 Übertrag

31 KI 8-Prädikatenlogik31 1.Aufgabe verstehen: –Addiert der Schaltkreis richtig? (Verifikation des Schaltkreises) 2.Relevantes Wissen sammeln: –Besteht aus Drähten und Gattern –Typen der Gatter: AND, OR, XOR, NOT –Irrelevant: Größe, Form, Farbe, Kosten der Gatter 3.Vokabular festlegen –Alternativen: Typ(X 1 ) = XOR Typ(X 1, XOR) XOR(X 1 ) Domäne der elektronischen Schaltkreise

32 KI 8-Prädikatenlogik32 4.Kodiere allgemeines Domänenwissen 1 0 (Unterscheide: Logisches wahr/falsch vs. Signal 0/1) p Signal(p) = 1 Signal(p) = 0 p 1,p 2 Verbunden(p 1, p 2 ) Signal(p 1 ) = Signal(p 2 ) p 1,p 2 Verbunden(p 1, p 2 ) Verbunden(p 2, p 1 ) g Typ(g) = NOT Signal(Ein(1,g)) Signal(Aus(1,g)) g Typ(g) = OR ( n Signal(Ein(n,g)) = 1 Signal(Aus(1,g)) = 1) g Typ(g) = AND ( n Signal(Ein(n,g)) = 0 Signal(Aus(1,g)) = 0) g Typ(g) = XOR (Signal(Ein(1,g)) Signal(Ein(2,g)) Signal(Aus(1,g)) = 1) Domäne der elektronischen Schaltkreise

33 KI 8-Prädikatenlogik33 5.Kodiere spezifisches Problem Typ(X 1 ) = XOR Typ(X 2 ) = XOR Typ(A 1 ) = ANDTyp(A 2 ) = AND Typ(O 1 ) = ODER Verbunden(Aus(1,X 1 ), Ein (1,X 2 ))Verbunden(Ein(1,C 1 ), Ein(1,X 1 )) Verbunden(Aus(1,X 1 ), Ein (2,A 2 ))Verbunden(Ein(1,C 1 ), Ein(1,A 1 )) Verbunden(Aus(1,A 2 ), Ein (1,O 1 )) Verbunden(Ein(2,C 1 ), Ein(2,X 1 )) Verbunden(Aus(1,A 1 ), Ein (2,O 1 )) Verbunden(Ein(2,C 1 ), Ein(2,A 1 )) Verbunden(Aus(1,X 2 ), Aus(1,C 1 )) Verbunden(Ein(3,C 1 ), Ein(2,X 2 )) Verbunden(Aus(1,O 1 ), Aus(2,C 1 )) Verbunden(Ein(3,C 1 ), Ein(1,A 2 )) Domäne der elektronischen Schaltkreise

34 KI 8-Prädikatenlogik34 6.Stelle Anfragen Was sind die erlaubten Wertemengen aller Ein- und Ausgänge des Schaltkreises C 1 ? e 1,e 2,e 3,a 1,a 2 Signal(Ein(1,C_1)) = e 1 Signal(Ein(2,C 1 )) = e 2 Signal(Ein(3,C 1 )) = e 3 Signal(Aus(1,C 1 )) = a 1 Signal(Aus(2,C 1 )) = a 2 7.WB debuggen Z.B. 1 0 wird leicht vergessen! Domäne der elektronischen Schaltkreise

35 KI 8-Prädikatenlogik35 Wissensbasis für die Wumpus-Welt in PL Perzeption z,g,t Perzept([Gestank,z,g],t) Gestank(t) s,g,t Perzept([s,Zug,g],t) Zug(t) s,z,t Perzept([s,z,Glitzern],t) Bei(Agent,Gold,t) Ortseigenschaften: x,y,t Bei(Agent,x,y,t) Gestank(t) Stinkig(x,y) x,y,t Bei(Agent,x,y,t) Zug(t) Zugig (x,y) Geometrie x,y,u,v Neben([x,y],[u,v]) [u,v] {[x+1,y], [x-1,y],[x,y+1],[x,y-1]} s – Gestank, z – Zug, g – Glitzern, t – time, (x,y), (u,v) – Orte.

36 KI 8-Prädikatenlogik36 Erschließen versteckter Eigenschaften Quadrate sind zugig nahe einer Falltür: Diagnostische Regel – schließe Ursache aus Wirkung x,y Zugig(x,y) u,v Neben(x,y,u,v) Falltür(u,v) Kausale Regel – schließe Wirkung aus Ursache u,v Falltür(u,v) ( x,y Neben(u,v,x,y) Zugig(x,y)) Definition Prädikat Zugig(.,.): x,y Zugig(x,y) [ u,v Neben(x,y,u,v) Falltür(u,v) ] Beachte: Regeln sind unvollständig, denn sie sagen nichts über weiter entfernte Felder aus.

37 KI 8-Prädikatenlogik37 Aktionen Reflex t Bei(Agent,Gold,t) BesteAktion(Greifen,t) Reflex mit innerem Zustand t Bei(Agent,Gold,t) Hat(Gold,t) BesteAktion(Greifen,t) Beachte: Hat(Gold,t) kann nicht beobachtet werden! Daher: Veränderungen speichern!

38 38 Repräsentation von Veränderungen Situationskalkül repräsentiert Veränderungen in PL: Fluents: Prädikate und Funktionen, die sich mit der Situation ändern. Füge zu jedem Fluent-Prädikat ein Situations- Argument hinzu, z.B. Jetzt in Hat(Agent,Gold,Jetzt) Situationen werden durch Funktion Resultat verbunden: Result(a,s) ist die Situation, die aus Situation s durch Aktion a entsteht. Fakten gelten für bestimmte Situationen, aber nicht immer. Z.B. Hat(Agent,Gold,Jetzt) statt Hat(Agent,Gold)

39 KI 8-Prädikatenlogik39 Zwei komplementäre Möglichkeiten, Effekte von Aktionen zu beschreiben: Effekt-Axiome: Beschreibe Veränderung durch Aktionen s Bei(Agent,Gold,s) Hat(Agent,Gold,Resultat(Greifen,s)) Frame-Axiome: Beschreibe, was Aktion unverändert lässt s Hat(Agent,Pfeil,s) Hat(Agent,Pfeil,(Resultat(Greifen,s)) Repräsentation von Veränderungen

40 KI 8-Prädikatenlogik40 Frame-Problem Gegeben: –A Aktionen –F Fluent-Prädikate –E Effekte pro Aktion (maximal), –T Aktionen nacheinander Frame-Problem: Beschreibe alles in der Welt, was sich nicht ändert. Repräsentation erfordert O(AF) Axiome Berechnung der Effekte einer Aktionsfolge aus T Schritten erfordert Aufwand O(FT). Repräsentationelles Frame-Problem ( nächste Folie): Eigentlich wären nur O(AE) Axiome nötig, wobei meist E<

41 KI 8-Prädikatenlogik41 Nachfolgezustand-Axiome lösen repräsentationelles Frame-Problem. Idee: Stelle Axiome auf für die Fluent-Prädikate statt Axiome für die Aktionen. Nachfolgezustand-Axiome haben die Form Aktion ist möglich [ Fluent ist im Nachfolgezustand wahr Effekt der Aktion hat ihn wahr gemacht (Er war schon vorher wahr Er wurde durch die Aktion nicht verändert) ] Damit wird Folgezustand vollständig aus dem aktuellen Zustand abgeleitet. Nachfolgezustand-Axiome

42 KI 8-Prädikatenlogik42 a – Aktion, s – Situation, x, y, z – Orte Agent ist bei y, nachdem er entweder dorthin gegangen ist oder schon dort war und die letzte Aktion ihn nicht bewegt hat: Möglich(a,s) [ Bei(Agent,y,Resultat(a,s)) a = Gehe(x,y) (Bei(Agent,y,s) a Gehe(y,z)) ] Agent hat Gold, nachdem er gegriffen hat oder es bereits hatte und nicht losgelassen hat: a,s Hat(Agent,Gold,Resultat(a,s)) (a = Greifen Bei(Agent,Gold,s) (Hat(Agent,Gold,s) a Loslassen) (Beachte: Greifen immer möglich) Nachfolgezustand-Axiome: Beispiele

43 KI 8-Prädikatenlogik43 Qualifikations-Problem: Beschreibung realer Aktionen erfordert immensen Aufwand: Gold ist glitschig (genaue Beschreibung des Greifvorgangs), Agent stolpert (genaue Beschreibung des Gehens), Wumpusbauch zu dick + Pfeil bricht ab (genaue Beschreibung des Zielens). Ramifikations-Problem: Reale Aktionen haben viele Nebeneffekte, z.B. Gehen macht Geräusch und alarmiert Wumpus, gegen Wand laufen gibt Beule am Agentenkopf, Greifen zerreißt Handschuhe. Repräsentation von Veränderungen: Probleme

44 44 Interaktion mit WB Ein Agent in der Wumpus-Welt verwendet eine WB in PL. Er nimmt Gestank und Luftzug wahr (aber kein Glitzern) zur Zeit t=4: Tell (WB, Perzept([Stench,Breeze,Nix],4)) Ask (WB, a BesteAktion(a,4)) D.h. folgt aus der WB eine beste Aktion zur Zeit t=4 ? Antwort: Ja, {a / Schießen} Ersetzung Notation: Gegeben sei ein Satz S und eine Ersetzung σ, dann bezeichnet Sσ das Result des Einsetzens von σ in S; z.B. S = Schlauer(x,y) σ = {x / Hillary, y / Bill} Sσ = Schlauer(Hillary,Bill) Ask (WB,S) gibt einige / alle σ zurück, so dass WB σ.

45 KI 8-Prädikatenlogik45 Planen Anfangsbedingung in WB: Bei(Agent,(1,1),S 0 ) Bei(Gold, (1,2),S 0 ) Anfrage: In welcher Situation s wird Agent Gold haben? Ask(WB, s Hat(Agent,Gold,s)) Antwort: Gehe vorwärts, greife Gold {s / Resultat(Greifen, Resultat(Vorwärts, S 0 ))} Es wurde angenommen, dass S 0 die einzige in der WB bekannte Aktion ist und der Agent von S 0 aus plant.

46 KI 8-Prädikatenlogik46 Planen Repräsentiere Pläne als Aktionsfolgen: [a 1, a 2, a 3, … a n ] PlanResultat(p,s) ist die Situation, die aus der Ausführung von Plan p in Situation s resultiert. Anfrage: Ask(WB, p Hat(Agent, Gold, PlanResultat(p,S 0 )) Antwort: {p / [Vorwärts,Greifen]} Definition von PlanResultat durch Resultat: s PlanResultat([], s) = s a,p,s PlanResultat([a 1,a 2,…a n ], s) = PlanResultat([a 2,…a n ], Resultat(a 1,s)) Planungssysteme sind spezialisierte Algorithmen, die diesen Typ der Inferenz effizienter ausführen als general-purpose Inferenzmaschinen.

47 KI 8-Prädikatenlogik47 Zusammenfassung Prädikatenlogik: –Syntax: Konstanten, Funktionen, Prädikate, Gleichheit, Quantoren –Objekte und Relationen sind semantische Primitive Erheblich mächtiger als Aussagenlogik: Wumpus-Welt kann repräsentiert werden! Zum Planen sind spezielle Algorithmen erforderlich.


Herunterladen ppt "Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL."

Ähnliche Präsentationen


Google-Anzeigen