Fuzzy Logic Prof. Dr. Lotfi Zadeh, Erfindervon Fuzzy Logic Inhalt • Theoretische Einführung • Praktische Beispiele • Neuronale Netze und Fuzzy Logic, FuzzyTECH Anwendung • Diskussion, Fragen & Antworten Theoretische Einführung Was ist Fuzzy Logic? • Entwicklungsgeschichte Fuzzy Logic • Information und Komplexität • Arten der Unsicherheit • Wofür kann Fuzzy Logic verwendet werden? „In beinahe jedem Fall kann man dasselbe Produkt ohne Fuzzy Logic herstellen, aber Fuzzy Logic ist schneller und billiger.” Prof. Lotfi Zadeh, UC Berkeley, Erfinder der Fuzzy Logic Entwicklungsgeschichte Fuzzy Logic (1) • Der Begriff „Fuzzy“ wurde 1965 von • • • • • Lotfi A. Zadeh geprägt. Fuzzy Logic galt wissenschaftlich als • unpräzise • unseriös Nach 20 Jahre wurde Fuzzy Logic akzeptiert Seit den 90er ein richtiger Boom Nach Erfolgen in industriellen Anwendungen findet Zugang zu Uni Vorreiter Japan Entwicklungsgeschichte der Fuzzy Logic (2) • Fuzzy Logic = keine bestimmte Mathematische Logik, sondern eine Theorie der „unscharfen Mengen“. • Hauptgedanke: Umgang mit unscharfen Mengen • zugehörig • nicht zugehörig • Zwischenstufen Information und Komplexität • bisherige Methoden zur Erstellung komplexer Systeme • hohe Anzahl von relevanten Variablen • viele Faktoren • hohe Abhängigkeit zwischen diesen Faktoren • Fuzzy Systeme (tolerieren) • Anteil Präzision • Vagheit • Unsicherheit Art der Unsicherheit • Vagheit • Unscharfe Entscheidungen • Mehr oder weniger • Zum Beispiel Ist es ein Kreis? • Mehrdeutigkeit • Welche von mehreren Entscheidungen ist richtig? • Zum Beispiel Lottozahlen Wofür kann Fuzzy Logic verwendet werden? • Unscharfe Informationen •z.B. Verarbeitung der Sprache semantisch • Komplexe Systeme •z.B. Medizin Fuzzy Sets 2-2 Example: Fuzzy Driving Brake Speed Distance Fuzzy Processing Unit, FPU Input Fuzzy Set : Distance Input Fuzzy Set : Speed Knowledge-Base Knowledge-Base Rule 1: If Distance is Middle and Speed is High Then Brake is Mittel Rule 2: If Distance is Low and Speed is High Then Brake is High Etc. Output Fuzzy Set: Brake Facts: Distance = 35 m Speed = 90 Km/h Distance = 35 m, Low Speed = 90 km/h, High Result of Rule 1 Result of Rule 2 Addition of Two Fuzzy Sets DefuzificationCenter of Gravity 71% of Brake Intensity Deffuzification • The Output Fuzzy Set is converted into Discret (Crisp) Value. • Center of Gravity Method is the most used to make this conversion Mathematik der Fuzzy-Mengen 1. Definitionen 2. Verknüpfungen von Fuzzy-Mengen 3. Fuzzy-Relationen 4. Linguistische Variablen und Terme • Verallgemeierung der klassischen Mengenlehre • Countor • Wohlbestimmten Objekten • Wohlunterschiedenen Objekten • Fuzzy Menge • Ohne Wohlbestimmtheit und Wohlunterschiedenheit Verknüpfungen von Fuzzy-Mengen • Fuzzy Komplement • Fuzzy-Durchschnitt • Fuzzy-Vereinigung Fuzzy-Relation • Beispiel U1= U2 sei eine Menge von Personen {Peter, Thomas, Hans, Klaus} und die unscharfe Relation „grösser als“. Peter = 1.90m Thomas = 1.75m Hans = 1.65m Klaus = 1.85m Linguistische Variablen und Terme • Numerische Variablen nicht Zahlen • Wörter oder Ausdrücke • z.B. kann die Raumtemperatur als linguistische Variable mit den Termen kalt, kühl, angenehm, warm und heiss aufgefasst werden. Praktische Beispiele • Teil 1: Erläuterung der Theorie anhand eines praktischen Beispiels • Teil 2: Vorstellen Fuzzy-Anwendungen - technische - betriebswirtschaftliche Problemstellung Wir möchten in einem Druckkesselsystem von den gegebenen Messwerten Pressure und Volume auf die Temperature schliessen können. Anhand bestehender Daten wissen und definieren wir: Angaben zur Problemstellung (1) • Pressure [atmosphere] befindet sich im Intervall [0 – 12] und wir definieren: niedrig: mittel: hoch: [0 – 3] [0 – 8] mehr als 5 Angaben zur Problemstellung (2) • Volume [litre] befindet sich im Intervall [0 – 20] und wir definieren: niedrig: mittel: hoch: [0 – 10] [5 – 15] mehr als 10 Angaben zur Problemstellung (3) • Temperature [Centigrade] befindet sich im Intervall [0 – 70] und wir definieren: niedrig: mittel: hoch: [0 – 30] [10 – 50] mehr als 40 Weiteres Wissen • Wenn Pressure hoch ist und Volume niedrig, dann ist Temperature niedrig • Wenn Pressure mittel ist und Volume mittel, dann ist Temperature auch mittel • Wenn Volume nicht niedrig ist, dann ist Temperature sehr hoch Fuzzy System Modellierung Eingangsvariable Pressure Graphische Darstellung von Pressure Erläuterungen zu Pressure • Pressure (x) hoch = { 0, (x – 5)/4) 1, if x < 5, if 5 <= x <= 9 if x > 5 • Beispiel: Pressure (6) hoch da 5 <= 6 <= 9, (hoch(6) –5)/4 = 0,25 } Eingangsvariable Volume Graphische Darstellung von Volume Ausgangsvariable Temperature Graphische Darstellung von Temperature Regelblock Regel 1 Regel 2 hoch mittel AND OR Volume niedrig mittel Temperature niedrig mittel Pressure Regel 3 nicht niedrig sehr hoch Zahlenbeispiel • Wir wissen, dass die Pressure 6 atmospheres ist und • das Volume 8 litre. • Wie gross ist die Temperature? Lösung in 3 Schritten • Fuzzifizierung • Regelbearbeitung (Inferenz) • Defuzzifizierung Fuzzifizierung (1) 6 Pressure: hoch 0,25 mittel 0,5 Fuzzifizierung (2) 8 Volume: niedrig 0,4 mittel 0,6 Regelbearbeitung (1) • Pressure: • Volume: hoch 0,25 niedrig 0,4 mittel 0,5 mittel 0,6 Die Zahlen geben den DoS (Degree of Support) oder Plausibilitätsgrad an, mit welchen die Variablen zutreffen. Regelbearbeitung (2) Regel 1 Regel 2 Pressure (0,25) hoch AND (0,5) mittel OR Volume (0,4) niedrig (0,6) mittel Temperature niedrig mittel Regel 3 (1 - 0,4) nicht niedrig sehr hoch Regelbearbeitung (3) • Regel 1: min(0,25 0,4) = 0,25 niedrig • Regel 2: max(0,5 0,6) = 0,6 mittel • Regel 3: nicht niedrig (0,6) = (0,6)2 sehr hoch Defuzzifizierung (1) 0,6 0,25 0,36 Erhaltene Fuzzy-Werte auf die Temperature Skalierung abtragen. Defuzzifizierung (2) Schwerpunkt der Fläche bestimmen und auf die x-Achse abtragen. Ergibt einen Temperature Wert von ca. 35° Technische Anwendungen • Fahrzeugsteuerungen: z.B. ABS, Scheibenwischanlage, Geschwindigkeitsbegrenzer • Regelung von Kühlsystemen • Steuerung von Haushaltsgeräten • Traffic Management • Sonarsysteme • Autopiloten Beispiel Scheibenwischanlage (1) Problembeschreibung Übliche Scheibenwischanlagen von Autos weisen einen bescheidenen Automatisierungsgrad auf. Die bekannten Intervallschaltungen mit 2-3 Stufen oder stufenlos regelbar, sind nicht befriedigend; der Lenker muss bei jeder Änderung der Fahrbedingungen die Einstellung anpassen. Lösungen mit Regensensoren, wie sie in den Fahrzeugen der Luxusklasse eingebaut werden, sind sehr teuer. Zudem wird bei dieser Lösung die Stärke des Fahrtwindes nicht berücksichtigt. Beispiel Scheibenwischanlage (2) Lösung mit Fuzzy Logic Die Firma APAG hat nun in Zusammenarbeit mit der ITR Ingenieurschule Rapperswil ein Konzept für praxisgerechte Scheibenwischersteuerung entwickelt, welches die Nachteile der bisher angewandten Verfahren vermeidet. Das Prinzip dieser neuen Steuerung liegt in der Auswertung der Stromaufnahme des Wischermotors. Aus dem zeitlichen Verlauf des Motorstroms lassen sich Rückschlüsse auf den jeweiligen Zustand der Wischanlage (Zustand der Wischblätter, Reibungswerte beim Leerlauf) und auf die Umgebungsverhältnisse (Fahrtwindgeschwindigkeit, Nässe der Windschutzscheibe ) ziehen und damit die Wischintervalle varieren. Beispiel Traffic Management (1) Ziele Der Verkehr soll auch während grossem Verkehrsaufkommen fliessend gehalten werden Frühzeitiges Verlangsamen des Verkehrs vor Stauenden Warnen vor schlechten Wetterbedingungen wie Regen, Nebel oder Eis Beispiel Traffic Management (2) Verschiedene Sensoren und Messgeräte liefern genaue und ungenaue Daten Beispiel Traffic Management (3) • Fuzzy Logic wird eingesetzt, um Messwerte zu • • kombinieren und entsprechenden Warnungen oder Massnahmen einzuleiten. Fuzzy Logic wird aber auch verwendet, um Sensor Plausibilitäts Analysen zu erstellen... ...und anhand anderer Sensorwerten, die Informationen des ungenauen oder defekten Sensors annähernd wiederherzustellen. Betriebswirtschaftliche Anwendungen • Bewertung von Risiken und Daten • Kundensegmentierung • Kreditwürdigkeitsbestimmung • Prognosen von TV Einschaltquoten • Betrugserkennung • Middle East destabilization Middle East destabilization (1) Middle East destabilization (2) System Design mit Fuzzy Logic Anwendungen mit Fuzzy Logic: Zusammenfassung • Der Aufwand, ein komplexes nichtlineares Regelungsproblem zu lösen kann mit Hilfe der Fuzzy-Regelung üblicherweise deutlich reduziert werden. • Geopfert wird dabei nicht die Präzision klassischer mathematischer Modelle an sich, sondern nur die zwecklose Präzision, die oft gar nicht nötig ist. • Alle zur Zeit mit Fuzzy-Methoden erzielten Problemlösungen wären auch mit konventionellen mathematischen/informatischen Methoden lösbar. • Der Unterschied ist nur, dass Fuzzy-Lösungen oft sehr viel einfacher, kostengünstiger, leichter zu entwickeln und leichter zu implementieren sind. Anwendungen mit Fuzzy Logic: Fazit Die Lösungen sind vielleicht nicht perfekt, aber es ist zu bedenken, dass die letzten 10% Genauigkeit oft 90% des Aufwandes kosten. Damit werden Fuzzy-Systeme wirtschaftlich sinnvoll und vertretbar. Kombination Neuronaler Netze mit Fuzzy Logic • Fuzzy Logic (explizite Wissensrepräsentation) • Neuronale Netze (implizite Wissensrepräsentation) • Neuro Fuzzy (Kombination) Fuzzy Logic (explizite Wissensrepräsentation) • Vorteil Verifikation und Optimierung der Systeme sehr transparent, einfach und effizient • Nachteil Fuzzy-Systeme sind jedoch nicht trainierbar, so dass das System explizit beschrieben werden muss. Neuronale Netze (Implizite Wissensrepräsentation) • Vorteil Lernfähigkeit anhand systembeschreibender Datensätze • Nachteil System kann nur schwer interpretiert und modifiziert werden Neuro Fuzzy Kombiniert die explizite Wissensrepräsentation der Fuzzy Logic mit der Lernfähigkeit der Neuronalen Netze Lernen mit dem Error-Backpropagation-Algorithmus 1. Beispiel wird aus dem Trainingsdatensatz gewählt 2. Aus den Eingangswerten des Beispiels werden die Ausgangsgrössen des Neuronalen Netzes berechnet 3. Berechnete Werte werden mit den Werten des Beispieldatensatzes verglichen 4. Die so bestimmte Differenz, also der Fehler wird dazu verwendet, die Gewichte des Neuronalen Netzes zu modifizieren Error-Backpropagation im Zusammenhang mit Fuzzy-Systemen Lernfähige Fuzzy-Systeme verwenden ein Verfahren das auf dem Error-Backpropagation-Algorithmus basiert. Neuro Fuzzy Glas Sensor Simulation Systembeschreibung Das System greift auf die drei Farbdaten als die Eingangsvariablen „RedGreen”, „GreenBlue” und „BlueRed” zurück und berechnet den Glastyp als Ausgangsvariable „Type”. „Type” weist den vier Termen green, red, white und blue numerische Werte zu, die mittels der Defuzzifizierungsmethode berechnet werden: 1 rote Flasche 2 grüne Flasche 3 weisse Flasche 4 blaue Flasche.