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 PQ 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:= min1, 1− pq 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