Wissensbasen

Werbung
[Teile der Vorlesung stammen aus dem Buch: Artificial Intelligence – A modern approach von Russel, Norvig]
Wissensbasen
•
•
Eine Wissenbasis (Knowledge base, abk. KB) ist eine Menge von Sätzen
Ein Satz ist eine Representation von Fakten, die die Welt beschreiben
Die Sätze werden in einer sog. Wissensrepresentationssprache (knowledge representation
language) formuliert.
Solch eine Sprache wird durch zwei Aspekte definert:
•
•
Die Syntax der Sprache, die alle möglichen Konfigurationen beschreibt, aus denen
Sätze zusammengebaut sein können
Die Semantik bestimmt auf welche Fakten in der Welt sich die Sätze bezeihen.
Beispiel
Die Syntax der Sprache der arithmetischen Ausdrücke sagt, dass wenn x und y Ausdrücke
sind, die für Zahlen stehen, x > y ein Satz über Zahlen ist.
Die Semantik dieser Sprache sagt, dass x > y wahr ist, wenn x eine größere Zahl als y ist.
Die Semantik stellt die Verbindung zwischen der realen Welt und der Representation
dar
Wissensbasierter Agent
Ein wissensbasierter Agent (Knowledge based agent) besteht aus:
•
•
Eine Wissensbasis (KB)
Einem Inferenzmechanismus
Er funktioniert, indem er Sätze über die Welt in seiner Wissensbasis speichert, wobei er den
Inferenzmechanismus benutzt um neue Sätze zu schlußfolgern (inferenzieren). Diese Sätze
benutzt er dann, um zu entscheiden, welche Aktion auszuführen ist.
Programm
function KB-Agent(percept) returns an action
static: KB, a knowledge base
t, a counter, initially 0, indicating time
TELL(KB, MAKE-PERCEPT-SENTENCE(percept, t))
action <-- ASK(KB, MAKE-ACTION-QUERY(t))
TELL(KB, MAKE-ACTION-SENTENCE(action,t))
t <-- t+1
return action
Anmerkung: MAKE-PERCEPT-SENTENCE erzeugt den Satz, dass der Agent die
Wahrnehmung zu einer bestimmten Zeit gemacht hat, MAKE-ACTION-QUERY erzeugt
einen Satz der dazu geeignet ist zu fragen, welche Aktion zu dieser Zeit jetzt durchgeführt
werden soll.Die Details des Infernezmechanismus verstecken sich in TELL und ASK, und
werden später genauer betrachtet. TELL fügt einen Satz der Wissensbasis hinzu, ASK
durchsucht die Wissensbasis.
Logik
Eine Logik besteht aus folgendem:
•
•
Einem formalen System zur Beschreibung der Welt, bestehend aus Syntax und
Semantic
Logischer Inferenz (Ableitung): Einer Menge von Ableitungsregeln
Typen von Logik:
Sprache
Ontologischer Teil
(Was existiert in der
Welt)
Epistemologischer Teil
(Was der Agent von den
Fakten glaubt)
Aussagenlogik (Propositional
logic)
Fakten
wahr/falsch/unbekannt
Prädikatenlogik (First order
logic)
Fakten, Objekte,
Beziehungen
wahr/falsch/unbekannt
Temporale Logik
Fakten, Objekte,
Beziehungen, Zeit
wahr/falsch/unbekannt
Wahrscheinlichkeitstheorie
Fakten
Wahrscheinlichkeitsgrade 0...1
Fuzzy Logic
Wahrheitsgrade
Wahrscheinlichkeitsgrade 0...1
Defintion:
Eine Logik heißt monoton, wenn aus KB1 |= folgt KB1 U KB2 |= .
Das heißt, wenn wir neue Sätze zu einer Wissenbasis hinzufügen, folgen die Sätze,
die vorher schon aus der Wissensbasis gefolgt sind, immernoch.
Inferenzmechanismen
Definitionen:
•
•
•
Ein Satz folgt (entails) aus einer Wissensbasis KB (In Zeichen KB |= ), wenn
jedesmal wahr ist, wenn alle Sätze von KB wahr sind. Ich kann also den Satz aus
der Wissensbasis schlussfolgern
Eine Infernzprozedur, die nur Sätze erzeugt, die aus einer Wissensbasis folgen heißt
korrekt (sound), oder wahrheitsbewahrend (truth-preserving). Eine korrekte
Infernezprozedur zieht nur wahre Schlußfolgerungen.
Eine Inferenzprozedur heißt vollständig (complete), wenn sie alle Sätze, die aus einer
Wissensbasis KB folgen schlußfolgern (herleiten) kann.
Also: Eine vollständige Inferenzprozedur liefert alle Sätze, die man aus einer Wissensbasis
folgern kann, eine korrekte nur die wahren.
Weitere Begriffe
Die Interpretation eines Satzes ist der Fakt auf den der sich bezieht.Wenn er sich auf einen
Fakt aus der wirklichen Welt bezieht , ist sie wahr.
Ein Satz ist gültig (valid), genau dann, wenn er wahr ist in allen möglichen Interpretationen
in allen möglichen Welten.
Ein gültiger Satz muß notwendigerweise wahr sein.
Beispiele
Der Satz "Der Hund ist klein oder der Hund ist nicht klein" ist gültig
Der Satz "Der Hund ist klein oder der Hund ist groß" ist für sich genommen nicht gültig. Er
wird nur gültig unter der Voraussetzung, dass jeder Hund entweder groß oder klein sein kann.
Also ist der Satz "Wenn jeder Hund entweder groß oder klein sein kann dann ist der Hund
klein oder der Hund ist groß"
Ein Satz ist erfüllbar (satisfiable), genau dann, wenn es irgendeine Interpretation in
irgendeiner Welt gibt, in der der Satz wahr ist.
Ein nicht erfüllbarer Satz heißt unerfüllbar (unsatisfiable)
Beispiel
Der Satz "Vor mir ist eine Mauer und vor mir ist keine Mauer" ist unerfüllbar.
Herunterladen