Grundlagen der Wissensverarbeitung

Werbung
Was bisher geschah
Wissensrepräsentation und -verarbeitung in
I
Zustandsübergangssystemen
I
Logiken
Repräsentation von Mengen aussagenlogischer Regeln:
I
Wissensbasis (Kontextwissen): Formelmenge,
Problembeschreibung (Wissen über den speziellen Fall):
Formel
Problemlöseverfahren: Schließen, (evtl. Folgern)
I
Wissensbasis: Entscheidungstabelle,
Problembeschreibung: Falldaten (Merkmalswerte)
Problemlöseverfahren: Auswahl der zu den Falldaten
passenden Regel (Folgern)
I
Wissensbasis: (binärer) Entscheidungsbaum,
Problembeschreibung: Falldaten (Merkmalswerte)
Problemlöseverfahren: Verfolgung des zu den Falldaten
passenden Pfades (Folgern)
74
Effektivere Darstellung binärer Entscheidungsbäume
Beispiel: ϕ mit Mod(ϕ) = {W0000 , W0011 , W1100 , W1111 }
Schrittweise Anwendung (ebenenweise von Blättern zur
Wurzel) der folgenden Operationen auf einen
Entscheidungsbaum T (oder BDD):
Verschmelzung von Knoten , die Wurzeln gleicher Teilbäume
sind (Vereinigung der Kantenmarkierungen)
Kontraktion von Kanten zwischen einem Knoten und seinem
Kind, falls dieses sein einziges Kind ist
(Vereinigung der Knotenmarkierungen,
gleichzeitige Entscheidung nach mehreren
Kriterien)
Ergebnis: markierter gerichteter azyklischer Graph (DAG),
hat meist weniger Knoten als T
75
Binary Decision Diagrams
kompakte Darstellungsform für Boolesche Funktionen
Binary Decision Diagram (BDD):
markierter gerichteter azyklischer Graph (DAG) mit
Markierungen:
I
innere Knoten: Variablen
I
Kanten: 0 oder 1
und den folgenden Eigenschaften:
I
BDD hat eine Wurzel,
I
jeder innere Knoten hat Grad 2,
je einen mit 0 und einen mit 1 markierten Nachfolger
I
jedes Blatt hat Grad 0
76
ROBDDs
Variablenordnung: totale Ordnung > auf Variablenmenge
BDD heißt genau dann bzgl. der Variablenordnung > geordnet,
falls auf jedem Pfad von der Wurzel zu einem Blatt die
Variablen in der Reihenfolge der Variablenordnung vorkommen.
Beispiel: ϕ mit Mod(ϕ) = {W0000 , W0011 , W1100 , W1111 } mit
Variablenordnungen [x, y , z, u] und [x, z, y , u]
BDD heißt genau dann OBDD (ordered binary decision
diagram), wenn es bzgl. einer Variablenordnung geordnet ist
OBDD heißt genau dann ROBDD (reduced ordered binary
decision diagram), wenn keine der Reduktionsoperationen
(Knotenverschmelzung, Kantenkontraktion) möglich ist.
77
Eigenschaften von ROBDDs
I
für jede Variablenordnung kanonische Repräsentation
(bis auf Isomorphie eindeutig)
I
Erfüllbarkeit, Allgemeingültigkeit trivial
I
Größe ist abhängig von Variablenordnung
Beispiel: (u ∧ v ) ∨ (w ∧ x) ∨ (y ∧ z) mit
Variablenordnungen [u, v , w, x, y , z] und [u, w, y , v , x, z]
I
es gibt Formeln, für die jede Variablenreihenfolge ein
exponentiell großes ROBDD liefert
I
Verfahren zur Konstruktion
78
AL(P) → BDD
gegeben: Variablenordnung
I
top-down (Shannon-Expansion, ite-NF):
IA: falls ϕ Wahrheitswert, direkte BDD-Erzeugung (Blatt)
IS: rekursive Erzeugung von BDDs mit
I
I
I
Wurzelmarkierung: größte vorkommende Variable x
0-Kind: BDD für Formel ϕ[x 7→ 0]
1-Kind: BDD für Formel ϕ[x 7→ 1]
danach Reduktion
Beispiel: (x ∨ y ) ∧ (x ∨ ¬y ∨ z) ∧ ¬z
I
bottom-up:
falls ϕ Wahrheitwertkonstante oder Atom, direkte
BDD-Erzeugung
Konstruktion des BDD für ϕ aus BDDs für Teilformeln mit
Hilfe der BDD-Operationen (für ∨, ∧, ¬)
79
Operationen auf BDDs
gegeben: BDDs Bϕ und Bψ
I
ϕ ∧ ψ:
jeden 1-Knoten in Bϕ durch Bψ ersetzen
I
ϕ ∨ ψ:
jeden 0-Knoten in Bϕ durch Bψ ersetzen
I
¬ϕ:
alle Blattmarkierungen x durch 1 − x ersetzen
Ergebnis meist nicht geordnet und nicht reduziert
80
BDD → AL(P)
direktes Ablesen
I
einer Formel in ite-NF oder
I
einer Menge von Regeln
Beispiele: Für BDD (Tafel):
I
ite-Formel
I
Menge aussagenlogischer Regeln
81
Darstellungsformen Boolescher Funktionen
Boolesche Funktion f : {0, 1}m → {0, 1}n
I
Wertetabelle
(Wahrheitswerttabelle, Entscheidungstabelle)
I
aussagenlogische Formel(n) ϕ ∈ AL({x1 , . . . , xn })
I
Modellmenge (Urbild f −1 (1))
I
ite-Formel(n)
I
binäre Entscheidungsbäume
I
(RO)BDDs
Beispiele:
I
verschiedene Darstellungen für (p ∧ q) ∨ (r ∧ s)
I
BDD zur ite-Formel ite(p, ite(q, ite(r , t, f), f), t) (Tafel)
I
zu p → (q ∧ r ) äquivalente ite-Formel:
ite(p, ite(q, ite(r , t, f), f), t)
82
Herunterladen