prädikatenlogik first-order logic. ki 8-prädikatenlogik2 Überblick warum prädikatenlogik (pl) ?...
TRANSCRIPT
![Page 1: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/1.jpg)
Prädikatenlogik
First-Order Logic
![Page 2: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/2.jpg)
KI 8-Prädikatenlogik 2
Überblick
• Warum Prädikatenlogik (PL) ?
• Syntax und Semantik von PL
• Anwendung
• Wumpus-Welt in PL
• Wissensrepräsentation in PL
![Page 3: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/3.jpg)
KI 8-Prädikatenlogik 3
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 B1,1 P1,2 wird abgeleitet von der Bedeutung von B1,1 und
P1,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)
–•
–•
–•
–
•
![Page 4: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/4.jpg)
KI 8-Prädikatenlogik 4
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, …
–
–
•
![Page 5: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/5.jpg)
KI 8-Prädikatenlogik 5
Syntax von FOL: Grundelemente
• Konstanten KingJohn, 2, Stuttgart, ...
• Prädikate Bruder, >, ...
• Funktionen Sqrt, LinkesBeinVon, ...
• Variable x, y, a, b,...
• Verknüpfungen , , , , • Gleichheit =
• Quantoren ,
![Page 6: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/6.jpg)
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 | …
![Page 7: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/7.jpg)
KI 8-Prädikatenlogik 7
Atomare Sätze
AtomarerSatz = Prädikat (Term1,...,Termn) oder Term1 = Term2
Term = Funktion (Term1,...,Termn) oder Konstante oder Variable
Beispiele:• Bruder(KingJohn, RichardTheLionheart) • > (Länge(LinkesBeinVon(Richard)),
Länge(LinkesBeinVon(KingJohn)))
![Page 8: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/8.jpg)
KI 8-Prädikatenlogik 8
Komplexe Sätze
Komplexe Sätze entstehen aus atomaren durch Verknüpfungen:
S, S1 S2, S1 S2, S1 S2, S1 S2,
• Geschwister(KingJohn,Richard) Geschwister(Richard,KingJohn)
• >(1,2) ≤ (1,2)
• >(1,2) >(1,2)
![Page 9: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/9.jpg)
KI 8-Prädikatenlogik 9
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ürKonstantensymbole → ObjektePrädikatssymbole → RelationenFunktionssymbole → Funktionale Relationen
• Ein atomarer Satz Prädikat(Term1,...,Termn) ist wahr wenn die Objekte, auf die sich Term1,...,Termn beziehen, in der Relation stehen, auf die sich Prädikat bezieht.
•
–•
![Page 10: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/10.jpg)
KI 8-Prädikatenlogik 10
Beispiel
![Page 11: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/11.jpg)
KI 8-Prädikatenlogik 11
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.
![Page 12: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/12.jpg)
KI 8-Prädikatenlogik 12
Logik - Allgemeines
Sprache Ontologische Bindung
Epistemologische Bindung
Aussagenlogik Fakten1 Wahr / falsch / unbekannt
Prädikatenlogik Fakten1, Objekte, Relationen
Wahr / falsch / unbekannt
Temporale Logik Fakten1, Objekte, Relationen, Zeiten
Wahr / falsch / unbekannt
Wahrscheinlichkeits-theorie
Fakten1 Glaubensgrad 0 …1
Fuzzy Logik Fakten mit Wahrheitsgrad 0 … 1
Intervallwert
1… und die Fakten sind in der Welt wahr oder falsch.
![Page 13: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/13.jpg)
KI 8-Prädikatenlogik 13
Logik - Allgemeines
• Prädikatenlogik: Logik erster Stufe
• Logik höherer Stufe:– Relationen und Funktionen sind selbst
Objekte
![Page 14: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/14.jpg)
KI 8-Prädikatenlogik 14
Allquantor
<Variable> <Satz>
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) ...
••
•
![Page 15: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/15.jpg)
KI 8-Prädikatenlogik 15
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”.
•
![Page 16: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/16.jpg)
KI 8-Prädikatenlogik 16
Existenzquantor
<Variable> <Satz>
• 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) ...
•
•
![Page 17: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/17.jpg)
KI 8-Prädikatenlogik 17
• 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
![Page 18: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/18.jpg)
KI 8-Prädikatenlogik 18
Eigenschaften der Quantoren
x y ist dasselbe wie y x 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)
•––
•
•
![Page 19: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/19.jpg)
KI 8-Prädikatenlogik 19
Gleichheit
• Term1 = Term2 ist bei gegebener Interpretation genau dann wahr, wenn Term1 und Term2 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) ]
•
![Page 20: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/20.jpg)
KI 8-Prädikatenlogik 20
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)
–••
–
![Page 21: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/21.jpg)
KI 8-Prädikatenlogik 21
Mengen-Domäne:
m Menge(m) (m = { } ) ( x,m2 Menge(m2) m = {x | m2})
(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,m2 (m = {y | m2} (x = y x m2))]
(Nur Elemente drin, die hinzugefügt wurden)
m1,m2 m1 m2 (x x m1 x m2) (Teilmenge)
m1,m2 (m1 = m2) (m1 m2 m2 m1)
x,m1,m2 x (m1 m2) (x m1 x m2)
x,m1,m2 x (m1 m2) (x m1 x m2) (Vereinigung)
(Schnittmenge)
(Gleichheit)•
Anwendung der Prädikatenlogik
![Page 22: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/22.jpg)
KI 8-Prädikatenlogik 22
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.
8.
9.
10.
11.
12.
13.
•
![Page 23: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/23.jpg)
KI 8-Prädikatenlogik 23
Domäne der elektronischen Schaltkreise
Ein-bit Volladdierer
•Summanden 0 0
0Übertrag
Summe 0
0Übertrag
![Page 24: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/24.jpg)
KI 8-Prädikatenlogik 24
Domäne der elektronischen Schaltkreise
Ein-bit Volladdierer
•Summanden 1 0
0Übertrag
Summe 1
0Übertrag
![Page 25: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/25.jpg)
KI 8-Prädikatenlogik 25
Domäne der elektronischen Schaltkreise
Ein-bit Volladdierer
•Summanden 0 1
0Übertrag
Summe 1
0Übertrag
![Page 26: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/26.jpg)
KI 8-Prädikatenlogik 26
Domäne der elektronischen Schaltkreise
Ein-bit Volladdierer
•Summanden 1 1
0Übertrag
Summe 0
1Übertrag
![Page 27: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/27.jpg)
KI 8-Prädikatenlogik 27
Domäne der elektronischen Schaltkreise
Ein-bit Volladdierer
•Summanden 0 0
1Übertrag
Summe 1
0Übertrag
![Page 28: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/28.jpg)
KI 8-Prädikatenlogik 28
Domäne der elektronischen Schaltkreise
Ein-bit Volladdierer
•Summanden 1 0
1Übertrag
Summe 0
1Übertrag
![Page 29: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/29.jpg)
KI 8-Prädikatenlogik 29
Domäne der elektronischen Schaltkreise
Ein-bit Volladdierer
•Summanden 0 1
1Übertrag
Summe 0
1Übertrag
![Page 30: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/30.jpg)
KI 8-Prädikatenlogik 30
Domäne der elektronischen Schaltkreise
Ein-bit Volladdierer
•Summanden 1 1
1Übertrag
Summe 1
1Übertrag
![Page 31: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/31.jpg)
KI 8-Prädikatenlogik 31
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(X1) = XOR
Typ(X1, XOR)
XOR(X1)
•
–•–•
•
Domäne der elektronischen Schaltkreise
![Page 32: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/32.jpg)
KI 8-Prädikatenlogik 32
4. Kodiere allgemeines Domänenwissen
1 ≠ 0
p Signal(p) = 1 Signal(p) = 0
p1,p2 Verbunden(p1, p2) Signal(p1) = Signal(p2)
p1,p2 Verbunden(p1, p2) Verbunden(p2, p1)
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)
– (Unterscheide: Logisches wahr/falsch vs. Signal 0/1)
•
Domäne der elektronischen Schaltkreise
![Page 33: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/33.jpg)
KI 8-Prädikatenlogik 33
5. Kodiere spezifisches Problem
Typ(X1) = XOR Typ(X2) = XORTyp(A1) = AND Typ(A2) = ANDTyp(O1) = ODER
Verbunden(Aus(1,X1), Ein (1,X2)) Verbunden(Ein(1,C1), Ein(1,X1))Verbunden(Aus(1,X1), Ein (2,A2)) Verbunden(Ein(1,C1), Ein(1,A1))Verbunden(Aus(1,A2), Ein (1,O1)) Verbunden(Ein(2,C1), Ein(2,X1))Verbunden(Aus(1,A1), Ein (2,O1)) Verbunden(Ein(2,C1), Ein(2,A1))Verbunden(Aus(1,X2), Aus(1,C1)) Verbunden(Ein(3,C1), Ein(2,X2))Verbunden(Aus(1,O1), Aus(2,C1)) Verbunden(Ein(3,C1), Ein(1,A2))
Domäne der elektronischen Schaltkreise
![Page 34: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/34.jpg)
KI 8-Prädikatenlogik 34
6. Stelle Anfragen Was sind die erlaubten Wertemengen aller Ein- und
Ausgänge des Schaltkreises C1?
e1,e2,e3,a1,a2 Signal(Ein(1,C_1)) = e1 Signal(Ein(2,C1)) = e2 Signal(Ein(3,C1)) = e3 Signal(Aus(1,C1)) = a1 Signal(Aus(2,C1)) = a2
7. WB debuggenZ.B. 1 ≠ 0 wird leicht vergessen!
–•
Domäne der elektronischen Schaltkreise
![Page 35: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/35.jpg)
KI 8-Prädikatenlogik 35
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.
![Page 36: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/36.jpg)
KI 8-Prädikatenlogik 36
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.
![Page 37: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/37.jpg)
KI 8-Prädikatenlogik 37
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!
![Page 38: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/38.jpg)
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)
![Page 39: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/39.jpg)
KI 8-Prädikatenlogik 39
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
![Page 40: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/40.jpg)
KI 8-Prädikatenlogik 40
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<<F (denn eine Aktion beeinflusst meist nur wenige Prädikate).
• Inferentielles Frame-Problem ( später):
Reduziere Berechnung der Effekte einer Aktionsfolge auf O(ET).
![Page 41: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/41.jpg)
KI 8-Prädikatenlogik 41
• 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 FormAktion 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
![Page 42: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/42.jpg)
KI 8-Prädikatenlogik 42
• 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
![Page 43: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/43.jpg)
KI 8-Prädikatenlogik 43
• 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
![Page 44: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/44.jpg)
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╞ σ.
•
•
»
![Page 45: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/45.jpg)
KI 8-Prädikatenlogik 45
Planen
Anfangsbedingung in WB:Bei(Agent,(1,1),S0)Bei(Gold, (1,2),S0)
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, S0))}
Es wurde angenommen, dass S0 die einzige in der WB bekannte Aktion ist und der Agent von S0 aus plant.
![Page 46: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/46.jpg)
KI 8-Prädikatenlogik 46
Planen
• Repräsentiere Pläne als Aktionsfolgen: [a1, a2, a3, … an]
• 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,S0))
• Antwort: {p / [Vorwärts,Greifen]}
• Definition von PlanResultat durch Resultat:
s PlanResultat([], s) = s
a,p,s PlanResultat([a1,a2,…an], s) =
PlanResultat([a2,…an], Resultat(a1,s))
• Planungssysteme sind spezialisierte Algorithmen, die diesen Typ der Inferenz effizienter ausführen als general-purpose Inferenzmaschinen.
![Page 47: Prädikatenlogik First-Order Logic. KI 8-Prädikatenlogik2 Überblick Warum Prädikatenlogik (PL) ? Syntax und Semantik von PL Anwendung Wumpus-Welt in PL](https://reader036.vdocuments.site/reader036/viewer/2022062512/55204d6449795902118ba494/html5/thumbnails/47.jpg)
KI 8-Prädikatenlogik 47
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.
•