Boolsche und mehrwertige Logiken

Werbung
Fuzzy Logic & Control
Λογος ist ..., wenn man trotzdem denkt.
Prof. Dr.-Ing. Doris Danziger
Prof. Dr. rer. nat. Nikolaus Wulff
Agenda
•
•
•
•
•
•
•
•
Klassische Mengen
Regelbasierte Systeme
Mehrwertige Logiken und Fuzzy Logik
Fuzzy Mengen, Operationen und Implikationen
Fuzzy Mengen und Partitionen
Fuzzyfizierung und Defuzzifizierung
Fuzzy Pattern Matching
Fuzzy Image Processing
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
2
Soft-Computing
Unter dem Begriff Soft-Computing werden mehrere
Teilgebiete der Künstlichen Intelligenz subsummiert:
• Neuronale Netze
• Fuzzy-Logik
•
•
•
•
Evolutionäre Algorithmen
Schwarm Intelligenz, Ant Colonie ...
Bayessche Netzwerke => Wahrscheinlickeitstheorie
Chaos Theorie
Es geht um Relationen/Abbildungen [0,1]n  [0,1]m
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
3
Klassische Mengen
• Klassische Mengen erlauben eine klare Einteilung, ob
ein Element x zu der Menge A gehört oder nicht.
• Es sei  die Grundgesamtheit und A eine nichtleere Teilmenge hiervon.
• Die charakteristische Funktion A (Indikatorfunktion)
beschreibt die Zugehörigkeit eines Elements x ∈ 
zur Menge A
 A :  { 0, 1 }
{
1 x∈A
x   A  x=
0 otherwise
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
4
Klassische Operationen
• Für klassische Mengen sind die Operationen
Vereinigung A∪B, Schnitt A∩B und die Negation
definiert und lassen sich mit Hilfe der Indikatorfunktion darstellen.
• Vereinigung von A und B
 A∪ B  x =min 1,  A  x  B  x 
• Schnitt von A und B
 A∩B  x= A  x ∗ B  x
• Negation von A
 A  x =1− A  x 
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control

A
A∩B
B
5
Boolscher Verband/Algebra
• Eine nichtleere Menge von Symbolen A, B, C, ...
versehen mit den Junktoren
„logisches und“
∧
„logisches oder“ ∨
„Negation“
¬
bildet die Grundlage der Aussagenlogik.
• Die Symbole A werden nach ihrem Wahrheitsgehalt W(A) aus der Menge W(A)∈{0,1} bewertet.
• Mit obigen Verknüpfungen ergibt sich die aus der
Informatik- und Elektrotechnikvorlesung bekannte,
Boolsche Algebra oder Logik.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
6
Eigenschaften klassischer Mengen
• Das Komplement des „Universums“  ist die leere
Menge und vice versa:
=∅
∅=
• Für jede Menge A gilt der Satz vom ausgeschlossenen
Dritten („tertium non datur“)
A∪ A=
W  A∨¬ A=1
• Und der Satz vom Widerspruch
A∩ A=∅
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
W  A∧¬ A=0
7
Klassische Logik
n
• Klassische Logik kennt 2 n-wertige Funktionen über
n
2
der (Power Set) Menge 2 : {0, 1}n {0, 1}.
• Beispiele für n=2 sind die AND und OR Operationen,
weniger bekannt ist der logische Schluss (Operator).
2
x
0
0
1
1
y
0
1
0
1
x∧y
0
0
0
1
x∨ y
0
1
1
1
x→ y
1
1
0
1
• Übung: Wie können alle Funktionen für n=2
dargestellt werden. Welche sind allgemein bekannt?
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
8
Regelbasierte Systeme
• Regelbasierte Expertensyteme bestehen aus einem
„Langzeitgedächtnis“ dem Wissensspeicher und
einem „Kurzzeitgedächtnis“ von Fakten/Sätzen.
• Mit Hilfe von Regeln werden aus den bekannten
Fakten der „KnowledgeBase“ (KB) neue Fakten als
Konklusionen gewonnen:
Rk: if Pk then Qk
gegeben Pk ∈ KB dann KB.insert(Qk)
• Hierbei lassen sich die gewonnen Konklusionen als
neue Eingaben in weiteren Regeln verwenden.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
9
Vorwärtsverkettung
Liste conclude(Liste p={Pα,...,Pζ }) {
KB.insert(p);
Eingabe ein Liste
conq = {}
von Fakten.
do {
temp = {}
Leer Liste
for all Rk: Pk=>Qk in KB {
von Konklusionen.
if Rk(Pk) is true and new
temp.insert(Qk)
}
Auffüllen der
Konklusionsliste
conq.insert(temp);
KB.insert(temp);
} while(temp != empty)
return conq;
}
– Pseudo-Algorithmus der Vorwärtsverkettung. Es werden
so lange neue Fakten zur KB hinzugefügt, bis keine
weitere Regeln mehr feuern.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
10
Modus Ponens
• Die klassische Logik kennt mehre Regeln des
logischen Schließens, einer der wichtigsten ist der
sogenannte „Modus ponendo ponens“.
• Folgt aus der Prämisse P die Konklusion Q und sei
P als wahr bekannt, so wird auf Q geschlossen.
formal
PQ P
Q
regelbasiert
R: if P then Q
gegeben P ∈ KB dann KB.insert(Q)
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
11
Modus Tollens
• Die Verneinung des Modus ponens führt zum
Widerspruch „Modus tollendo tollens“.
• Gilt die vorhergehende Regel R des Modus
ponens, jedoch die Ableitung Q ist nicht wahr, so
kann auch die Voraussetzung P nicht wahr sein.
formal
P  Q ¬Q
¬P
regelbasiert
R: if P then Q
gegeben Q  KB dann KB.insert(!P)
Merke: fehlende Fakten feuern nicht!
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
12
Kontraposition
• Äquivalent zur vorhergehenden Aussage R ist der
Umkehrschluss, die Kontraposition der Implikation.
Wenn Q nicht gilt, so kann auch P nicht gültig sein.
• Die Rollen von Prämisse und Konklusion werden
also nach vorhergehender Negation vertauscht.
formal
¬Q  ¬P ¬Q
¬P
regelbasiert
R: if !Q then !P
gegeben !Q ∈ KB dann KB.insert(!P)
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
13
Und Elemenierung
• Eine weitere praktische boolsche Inferenzregel ist
die Und-Elemenierung.
• Aus einer wahren Konjunktion P1 ∧ P2 kann auf
jedes der Konjunkte geschlossen werden:
formal
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
P 1∧P 2
P1
sowie
Fuzzy Logic & Control
P 1∧P 2
P2
14
Aussagenlogik
• Mit Hilfe der Aussagenlogik kann zu einer Menge
von logischen Formeln F die Lösungsmenge α an
möglichen Wahrheitswerten ermittelt werden.
• Ist α zu F passend, d. h. α(F)=1 so heißt α ein
Modell für F, geschrieben als α╞ F.
– Ist die Menge der Prämissen klein, so kann dieses
Modell übersichtlich mit Hilfe einer Wahrheitstafel
ermittelt werden. Andernfalls muss durch geeignete
Transformationen systematisch eine Lösungsmenge
ermittelt werden.
• Eine Menge F von logischen Formeln heißt
erfüllbar wenn mindestens ein Modell existiert.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
15
Philosophisches
1. Platon hatte Recht mit seiner Einschätzung des
Sokrates genau dann, wenn Sokrates kein großer
Philosoph war.
2. Wenn Sokrates ein großer Philosoph war, dann
hatte Aristoteles Recht mit seiner Einschätzung des
Platon.
3. Aristoteles hatte nur dann Recht mit seiner
Einschätzung des Platon, falls Platon Recht hatte
mit seiner Einschätzung des Sokrates.
• Übung: Existiert ein lösendes Modell α?
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
16
Lösungsansatz
R1
P ⇔¬S
R2
S  A
R3
A  P
P∧¬S
⇔
¬S∨ A
¬ A∨P
F ≡  P∧¬S ∧¬S ∨ A∧¬ A∨ P 
• Sowohl mit einer Wahrheitstabelle als auch mit
Hilfe von elementaren Umformungen in eine
disjunktive Normalform (DNF) lässt sich zeigen,
dass gilt ...
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
17
Algorithmus für eine DNF
1) Eliminiere → und ⇔ durch ihre Definition.
2) Ersetze jede Teilformel ¬¬G durch G.
3) Ersetze jede Form ¬(G∧H) durch ¬G∨¬H.
4) Ersetze jede Form ¬(G∨H) durch ¬G∧¬H.
5) Entstehen Ausdrücke der Form ¬¬K wende 2) an.
6) Wiederhole 3) -5) so oft wie möglich.
7) Ersetze jede Formel der Form G∧(H∨I) durch
(G∧H)∨(G∧I).
8) Ersetze jede Formel der Form (G∨H)∧I durch
(G∧I)∨(H∧I).
9) Wiederhole 7) und 8) so oft wie möglich.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
18
Klassischer Zusammenbruch
• Die klassiche Logik gerät schnell in Konflikte mit
Aussagen wie der des Epimenides:
Dieser Satz ist falsch, sagt der notorische Lügner.
– Ist der Satz wahr, hat er nicht gelogen.
– Hat er jedoch gelogen, so ist der Satz wahr...
Bob der Friseur rasiert genau die Männer, die sich
nicht selbst rasieren.
– Wer rasiert Bob?
Dieser Satz ist falsch.
All dies sind Beispiele des „Gödel Dilemmas“.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
19
Dreiwertige Logik
• Łukasiewicz dreiwertige L3-Logik gilt als Prototyp.
• Neben 0 und 1 für wahr und falsch gibt es noch den
Wert ½ für unbestimmt = unbekannt = indifferent.
AND
0
½
1
OR
0
½
1
0
0
0
0
0
0
½
1
½
0
½
½
½
½
½
1
1
0
½
1
1
1
1
1
• Lösungsidee: Die Belegung für 0 und 1 soll die
klassische Logik widerspiegeln.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
20
Mehrwertige Logik
• Die Idee drei auf n Wahrheitswerte zu Ln auszudehnen ist eine nahe liegende Verallgemeinerung.
• Vollkommen analog erhalten wir dann rationale
Wahrheitswerte der Form {0,½,1}, {0,⅓, ⅔,1}, ...
{0, 1/(n-1),…,(n-2)/(n-1),1} aus dem Interval [0,1].
• Erste Arbeiten hierzu gab es 1922 mit Lℵ für die
rationalen Zahlen und mit L∞ für alle reellen Zahlen
aus dem Einheitsintervall.
• Ähnliche Wahrheitswerte sind auch in den Gödel
Logiken Gk und G∞ zu finden. Die Definition der
logischen Operatoren unterscheidet sich...
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
21
Natürliche Anforderungen
• Mehrwertige Logiken dürfen für die Belegungen 0
und 1 nicht im Widerspruch zur Boolschen Logik
stehen.
• Die AND und OR Operatoren sollen „vernünftigen
algebraischen Anforderungen“ genügen.
– Monotonie, Kommutativität und Assoziativität.
– De Morgans Gesetze soll gelten.
• Der Wahrheitsgehalt p=W(P) der Prämisse darf
nicht höher sein, als der Wahrheitgehalt der
Konklusion q=W(Q), d.h. p ≤ q und je wahrer die
Prämisse, desto wahrer die Konklusion.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
22
Implikationsoperatoren
• Der Implikationsoperator einer Regel P → Q ist
eine zweiwertige Funktion I:[0,1]×[0,1] →[0,1].
• Seien p und q die Wahrheitswerte von P und Q so
sind folgende Eigenschaften gewünscht:
I 0, q
I 1, q
I  p , p
I  p , q
I  p , q
=1
=q
=1
≥q
=1
⇔ p≤q
• Der Wahrheitsgehalt der Konklusion ergibt sich aus
der Verkettung von Prämisse und Implikation.
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
23
Gödel und Łukasiewicz Logik
•
•
•
•
Konjunktion (AND): x∧ y :=min x , y
x∨ y :=max  x , y
Disjunktion (OR):
Unterschiedlich sind Negation und Implikation.
Negation:
1 x=0
¬Gö x :=
{0
else
¬Luka x := 1− x
{q
• Implikation:  p Gö q:= 1
p≤q
else
 p  Luka q:= min1, 1− pq
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
24
Implikationen
• Die Łukasiewicz und Gödel Implikation führen zur
unterschiedlichen Lösungsmengen.
• Beispiel Implikationen für L4 und G4 .
Luka
0
⅓
⅔ 1
0
1
1
1
1
⅓
⅔
1
1
⅔
⅓
⅔ 1
1
0
p→q
Gödel
0
⅓
⅔ 1
0
1
1
1
1
1
⅓
0
1
1
1
1
⅔
0
⅓ 1
1
⅓ ⅔ 1
1
0
⅓ ⅔ 1
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
p→q
Fuzzy Logic & Control
25
Übungen
• Wie verhalten sich die Gödel und Łukasiewicz
Logiken für Werte x,y ∈ {0,1}?
• Wie verhält sich die doppelte Negation ¬(¬x) in den
beiden Systemen?
• Gilt Tertium non datur und Satz vom Widerspruch?
W ¬x∧x=0 W ¬x∨x=1
• Gelten die klassische Implikationsbeziehungen
 p  q⇔¬ p∨q ⇔¬ p∧¬q
für p,q ∈ {0,1} und p,q ∈ ]0,1[ , d. h. auf [0,1] ?
Prof. Dr. D. Danziger und Prof. Dr. N. Wulff
Fuzzy Logic & Control
26
Herunterladen