Die sogenannte Fuzzy Logik ist eine Erweiterung der klassischen Logik und ermöglicht es mit ungenauen und unsicheren Daten umzugehen. Im Vergleich zur traditionellen Logik, welche darauf basiert, dass Dinge entweder wahr oder falsch sind, lässt die Fuzzy Logik auch Zustände dazwischen zu. Dadurch kann es passieren, dass Zustände „teilweise wahr“ oder „etwas falsch“ sind.
In diesem Beitrag beschäftigen wir uns ausführlich mit der Fuzzy Logik, deren Konzepte und Grundlagen und versuchen dabei möglichst einfache Beispiele zu verwenden. Außerdem zeigen wir die Vor- und Nachteile auf, die sich bei der Verwendung dieser Methode ergeben und erklären, welche Unterschiede es zur traditionellen Logik gibt.
Was ist die Fuzzy Logik?
Die Fuzzy Logic ist eine Erweiterung der klassischen, booleschen Logik, die neben den beiden Zuständen wahr/falsch oder 0/1, auch Aussagen zulässt, die nur zu einem gewissen Grad wahr oder falsch sind und somit einen Wert annehmen, der zwischen 0 und 1 liegt. Erfunden wurde dieses Konzept in den 1960er Jahren Lotfi Zadeh an der University of California. Dieser versuchte das Problem zu lösen, einer Maschine die menschliche, natürliche Sprache beizubringen und stellte dabei fest, dass die Sprache sich nicht in 0 und 1 klassifizieren lässt.
Um diese vagen Begriffe darstellen zu können, erfand er das Konzept der Fuzzy Logic, um Unsicherheiten in einem Modell abbilden zu können. Seit der Einführung ist diese sehr weit verbreitet und wird in verschiedensten Anwendungen, wie beispielsweise der Regelungstechnik oder künstliche Intelligenz, eingesetzt.
Was sind Fuzzy Mengen und Zugehörigkeitsfunktionen?
Um die Fuzzy Logik abbilden zu können, benötigen auch die grundlegenden Konzepte der Logik einige Anpassungen, um zu funktionieren. Die Fuzzy Mengen bieten einen mathematischen Rahmen, um die Unsicherheit der Fuzzy Logik abbilden zu können. Im Gegensatz zu herkömmlichen, mathematischen Mengen, ermöglichen sie eine teilweise Zugehörigkeit. Dies erreichen sie, indem sogeannte Zugehörigkeitsgrade zwischen 0 und 1 gesetzt werden können. Ein Wert von 0,7 zeigt dann zum Beispiel an, dass ein bestimmtes Element zu einem Prozentsatz von 70% zur Menge gehört.
Dieser Wert wird über die sogenannte Zugehörigkeitsfunktion, oder auch Fuzzy Funktion, ermittelt. Sie ordnet jedem Element einen Zugehörigkeitswert zwischen 0 und 1 zu, welcher den Grad der Zugehörigkeit angibt. Im Unterschied zur normalen Logik, in der eine Aussage entweder wahr oder falsch sein kann, ist durch diese Funktion eine stufenweise Einteilung möglich.
Ein klassisches Beispiel für diesen Aufbau ist die Einteilung in „warm“ oder „kalt“. In der booleschen Logik könnte diese vorgenommen werden, indem alle Temperaturen unter 25°C als „kalt“ und alle darüberliegenden als „warm“ klassifiziert werden. In der Fuzzy Logik hingegen kann diese Definition deutlich flexibler getroffen werden, was dann beispielsweise zur folgenden Zugehörigkeitsfunktion führen kann:
- Bei 20°C ist die Zugehörigkeit zur Menge „warm“ mit 0,2 sehr gering, es ist also nur „20% warm“.
- Bei 25°C hingegen ist der Zugehörigkeitswert bereits bei 0,7, es ist also 70% warm.
- Bei 30°C ist die Zugehörigkeit bei 1 und es ist somit vollständig warm.
Diese flexible Einteilungsmöglichkeit beschreibt die Realität deutlich genauer, da wir Menschen die Temperatur deutlich differenzierter wahrnehmen als „warm“ und „kalt“.
Was sind Fuzzy Operatoren?
Wie in der klassischen Logik, gibt es auch in der Fuzzy Logik logische Operatoren, wie AND, OR und NOT. Diese verhalten sich jedoch bei Fuzzy Mengen nicht exakt so wie bei herkömmlichen Mengen, da sie mit kontinuierlichen Zugehörigkeitsgraden arbeiten. In diesem Abschnitt werden wir uns die drei logischen Fuzzy Operatoren genauer anschauen und zu jedem ein kurzes Beispiel zur Erläuterung geben.
Fuzzy-AND
Der Fuzzy-AND Operator beschreibt eine Konjunktion aus zwei oder mehr Fuzzy Werten, die also mit einem UND verbunden sind. Der Zugehörigkeitswert aus einer Konjunktion ergibt sich dann entsprechend aus dem Minimum der beiden Werte:
\(\) \[\mu_{\text{AND}}(A, B) = \min(\mu_A, \mu_B) \]
Hierbei ist \(\mu_A\) der Zugehörigkeitswert zur Fuzzy-Menge A und \(\mu_B\) der Zugehörigkeitswert zur Fuzzy-Menge B. Es wird der niedrigere von beiden Werten genutzt, um die Idee umzusetzen, dass beide Bedingungen möglichst wahr sein müssen.
Angenommen eine Klimaanlage entscheidet automatisch, ob sie tätig werden soll. Dabei misst sie zwei Werte, nämlich zum einen, ob es warm ist und zum anderen wie hoch die Luftfeuchtigkeit im Raum ist. Angenommen in einem Raum gibt es die folgenden Zugehörigkeitswerte:
- „warm“: \(\mu_A = 0,7 \, (70\%)\)
- „feucht“: \(\mu_B = 0,5 \, (50\%)\)
Der Fuzzy-AND Operator nutzt nun den minimalen Wert, also 0,5. Basierend auf dieser Grundlage entscheidet die Klimaanlage nun, dass sie zu 50% laufen sollte.
Fuzzy-OR
Beim Fuzzy-OR Operator handelt es sich um eine Disjunktion aus zwei oder mehr Fuzzy-Werten. Im Gegensatz zur Konjunktion wird hierbei der Maximumwert aus den Zugehörigkeitswerten bestimmt:
\(\) \[\mu_{\text{OR}}(A, B) = \max(\mu_A, \mu_B) \]
Dies sagt aus, dass die Vereinigung der beiden Fuzzy-Werte durch den höheren Zugehörigkeitswert bestimmt wird. In der booleschen Logik ist dies ähnlich, da die Disjunktion wahr wird (1), wenn mindestens einer der beiden Werte wahr (1) ist.
Wenn die Klimaanlage anhand einer Disjunktion entscheidet, könnte das Beispiel mit den vorherigen Werten so aussehen, dass sich die Klimaanlage zu 70 % dafür entscheidet zu kühlen, da die Luft im Raum sehr feucht ist.
Fuzzy-NOT
Der Fuzzy-NOT Operator negiert den Zugehörigkeitswert eines Elements, indem der Wert von 1 abgezogen wird. Dies spiegelt die Tatsache wieder, dass wenn ein Element beispielsweise einen Zugehörigkeitswert von 0,8 besitzt, also zu 80 % wahr ist, auch zu 20 % falsch ist.
\(\) \[\mu_{\text{NOT}}(A) = 1 – \mu_A\]
Also ein Raum, der zu 30% warm ist, also einen Zugehörigkeitswert von 0,3 besitzt, hat negiert einen Wert von 0,7. Dies ist analog zur Aussage, dass ein Raum, der 30% warm ist, auch zu 70% kalt ist.
T-Normen & S-Normen
In der Fuzzy Logik müssen nicht unbedingt die min-Funktion für die Konjunktion und die max-Funktion für die Disjunktion genutzt werden. Vielmehr ist dies nur eine Möglichkeit, die Fuzzy Operatoren umzusetzen, die abhängig von der Anwendung auch verändert werden können.
Die T-Normen umfassen also Funktionen, die verwendet werden können, um die Konjunktion modellieren zu können. Alle diese Funktionen besitzen die Eigenschaften monoton steigend und assoziativ zu sein. In den meisten Fällen wird dafür die min-Funktion genutzt.
Die S-Normen umfassen entsprechend alle Funktionen, die für eine Disjunktion in der Fuzzy Logik verwendet werden können. Der am häufigsten genutzte Operator ist daraus die max-Funktion.
Wie werden in der Fuzzy Logik Entscheidungen getroffen?
Durch die unscharfe Definition von Zuständen, ist die Entscheidungsfindung in der Fuzzy Logik etwas komplexer als in der booleschen Logik, in der lediglich zwei Zustände unterschieden werden. Deshalb spielen „Wenn-Dann“-Formulierungen eine zentrale Rolle, da sie es ermöglichen, Entscheidungen auf der Basis von unscharfen Eingabedaten zu treffen.
Eine beispielhafte Wenn-Dann-Regel im Fall einer Klimaanlage könnte dann besagen: „Wenn die Temperatur warm ist und die Luftfeuchtigkeit hoch, dann stelle den Ventilator auf die mittlere Stufe“. Hierbei sind die Messwerte für Temperatur und Luftfeuchtigkeit unscharf, sodass die Entscheidung nicht auf festen Schwellenwerten basieren kann, sondern vielmehr auf fließenden Übergängen basiert.
Der Prozess der Schlussfolgerung (Inference) beschreibt in der Fuzzy Logik, wie auf Basis von unscharfen Fuzzy-Werten eine entsprechende Fuzzy-Ausgabe erzeugt werden kann. Im vorherigen Beispiel erzeugen die unscharfen Eingaben aus Temperatur und Luftfeuchtigkeit, eine unscharfe Ausgabe bei der Einstellung des Ventilators.
Wie wir gesehen haben, erzeugt ein Fuzzy-System meist auch unscharfe Ausgaben. In der Realität jedoch können die Geräte mit diesen unscharfen Anweisungen nicht umgehen. Der beschriebene Ventilator hat möglicherweise keine Einstellung „mittel“ und es sollte vielmehr eine konkrete Umdrehungsgeschwindigkeit angegeben werden. Deshalb werden Methoden benötigt, welche unscharfe Ausgabe in eine präzise, konkrete Entscheidung überführen. Diese Methode wird als Defuzzifizierung bezeichnet.
In vielen Fällen wird dafür die sogenannte Centre of Gravity – Methode eingesetzt, welche mithilfe von mathematischen Berechnungen das Zentrum des Gewichts der Fuzzy-Ausgabe als endgültigen Wert berechnet. Mithilfe dieser Defuzzifizierung könnte dann in dem Ventilatorbeispiel die konkrete Erhöhung der Geschwindigkeit berechnet werden, die am Ventilator eingestellt werden muss.
Was sind die Anwendungen von Fuzzy Logik?
Die Fuzzy-Logik hat sich bereits in den unterschiedlichsten Bereichen etabliert, vor allem dann, wenn mit vagen und unsicheren Werten umgegangen wird. Durch die gegebene Flexibilität können deutlich präzisere und robustere Entscheidungen getroffen werden. In diesem Abschnitt stellen wir drei Anwendungsbereiche vor in denen die Fuzzy Logik schon nicht mehr wegzudenken ist.
Automatisierungs- & Regelungstechnik
Die Fuzzy-Logik ist in der Regelungstechnik schon nicht mehr wegzudenken, wie auch an den bereits genannten Beispielen bei Klimaanlagen oder Ventilatoren deutlich wurde. Dabei kommt sie auch beispielsweise bei Waschmaschinen zum Einsatz wo auf die Gewichtsbelastung und auf die Wassertemperatur geachtet werden muss, welche sehr vage sein kann. Mithilfe der Fuzzy-Logik können die Geräte eigenständig differenzierte Entscheidungen treffen, ohne dass feste Schwellenwerte definiert werden müssen.
Künstliche Intelligenz
In der Künstlichen Intelligenz entstammt die Unschärfe häufig aus den Datensätzen selbst, da zum Beispiel die Bilder in einem Datensatz aufgrund von schlechter Beleuchtung oder Schattenwurf nicht ganz eindeutig sind. Mithilfe der Fuzzy-Logik kann auf solche Unsicherheiten reagiert werden und trotzdem Entscheidungen getroffen werden. Beispielsweise können auf Überwachungskameras die Umrisse einer Person sehr undeutlich sein, da die Beleuchtung nicht optimal ist. Nichtsdestotrotz muss eine Entscheidung getroffen werden, ob mit ausreichender Sicherheit eine Person zu erkennen ist, um einen Alarm auszulösen.
Wirtschaftsentscheidungen
Im Bereich der Wirtschaft wird die Fuzzy Logik für Finanzmodelle und Risikobewertungen eingesetzt, um Unsicherheiten, wie Marktschwankungen oder ungenaue Prognosen, zu berücksichtigen und trotzdem zu belastbaren Entscheidungen zu kommen. Solche Unsicherheiten lassen sich bei Kreditvergaben oder Investitionsentscheidungen nicht ausschließen und dürfen aber trotzdem den Entscheidungsprozess nicht negativ beeinflussen.
Die Integration von Fuzzy Logik in unterschiedlichen Anwendungsbereichen erweitert die Fähigkeit von Systemen mit Unsicherheiten und ungenauen Eingaben umgehen zu können und trotzdem belastbare Entscheidungen zu treffen. In der Realität lassen sich solche Ungenauigkeiten oft nicht verhindern, weshalb diese Systeme einen großen Mehrwert besitzen.
Was sind die Vor- und Nachteile der Fuzzy Logik?
Die Fuzzy Logik bietet zahlreiche Vorteile in unterschiedlichen Anwendungen, wenn Unsicherheiten und ungenaue Werte in eine Entscheidung mit einbezogen werden sollen. Jedoch sollten vor allem bei komplexen Systemen auch die Grenzen nicht außer Acht gelassen werden. In diesem Abschnitt werden die wichtigsten Vor- und Nachteile der Fuzzy Logik aufgezeigt, welche vor dem Einsatz abgewogen werden sollten.
Vorteile:
- Flexibilität: Der Hauptvorteil der Fuzzy Logik besteht unangefochten in der Möglichkeit die reine boolesche Logik um ungenaue Werte erweitern zu können. In den meisten realitätsnahen Anwendungen sind solche vagen Zustände unumgänglich und können mit den Konzepten der klassischen Logik nur sehr schwer umgesetzt werden. Die Fuzzy Logik hingegen ist hier deutlich flexibler und ermöglicht es mithilfe der Zugehörigkeitsfunktion individuelle Szenarien zu erstellen.
- Benutzerfreundlichkeit: Die Formulierung von Regeln im „Wenn-Dann“ Format ist sehr intuitiv und leicht verständlich. Dadurch wird ermöglicht, alltägliche Entscheidungsprozesse abzubilden, in denen Entscheidungen nicht immer auf strikten Vorgaben beruhen, sondern mit ungenauen Informationen umgehen müssen.
- Robustheit: Ein Entscheidungssystem, welches auf der Fuzzy Logik basiert, kann robust mit fehlerhaften Daten umgehen und führt dadurch deutlich seltener zu Fehlern im Vergleich zu Systemen, die auf der booleschen Logik basieren.
Jedoch haben solche Systeme auch Nachteile und Grenzen, die bei der Wahl beachtet werden sollten:
- Komplexität: Bei einer Zunahme der Parameter kann ein Fuzzy-System und dessen Regeln schnell sehr komplex werden, vor allem dann, wenn die Anzahl der Regeln steigt. Je mehr Regeln und Parameter hinzukommen, desto unübersichtlicher und komplexer wird das Gesamtsystem, wodurch auch die nötige Rechenleistung deutlich zunimmt. Außerdem leidet darunter auch die Wartbarkeit.
- Subjektivität: Durch den hohen Grad der Individualisierbarkeit ist die Wahl der Zugehörigkeitsfunktion oft subjektiv. Dies stellt an sich erstmal kein Problem dar, jedoch besteht die Gefahr, dass die Leistung des Systems maßgeblich von den subjektiven Entscheidungen des Entwicklers abhängt. Deshalb sollte ausgeprägtes Expertenwissen bei der Formulierung der Regeln vorhanden sein.
Die Fuzzy Logik stellt ein mächtiges Tool bei der Erstellung von regelbasierten Entscheidungsmodellen dar. Jedoch kann es auch schnell zu einer hohen Komplexität kommen, vor allem bei Systemen mit vielen. Parametern. Diese Punkte sollten deshalb vor einer Entscheidung beachtet werden.
Was sind die Unterschiede von Fuzzy Logik zur regulären Logik und anderen Logiksystemen?
Die Fuzzy Logik unterscheidet sich in vielen Punkten von den klassischen Logiksystemen. Diese Punkte sind wichtig, um die Anwendbarkeit in konkreten Systemen bewerten zu können und die optimale Wahl abhängig vom Anwendungsfall treffen zu können.
Vergleich zur klassischen Logik
Die klassische oder boolesche Logik basiert darauf, dass Entscheidungen binär sind, also die Aussagen entweder wahr (1) oder falsch (0) sind. Dies hat zwar den Vorteil, dass Entscheidungen oft klar und eindeutig sind, jedoch ist diese Vereinfachung in der Realität oft zu starr, um die Komplexität ausreichend abbilden zu können.
Dieser Unterschied macht sich in einem einfachen Beispiel aus der Regelungstechnik bemerkbar. In der booleschen Logik gibt es lediglich zwei Zustände, nämlich eine Klimaanlage aus- oder einzuschalten. In der Realität ist die Situation jedoch deutlich komplexer, da das Gerät in verschiedenen Stufen betrieben werden kann und darin stärker oder schwächer kühlt. Diese Komplexität lässt sich erst mithilfe der Fuzzy Logik möglichst realitätsnah abbilden.
Diese Unterschiede werden auch in der zugrundeliegenden Mathematik der Systeme deutlich. Der AND-Operator beispielsweise bei der booleschen Logik ist nur genau dann wahr, wenn beide Aussagen der Konjunkten wahr sind. In der Fuzzy Logik hingegen muss erst die sogenannte T-Norm bestimmt werden, die in vielen Fällen die min-Funktion ist und dann wiederum einen vagen Wert zurückgibt.
Vergleich zur probabilistischen Logik
Probabilistische Systeme basieren auf den Wahrscheinlichkeiten, dass ein bestimmtes Ergebnis basierend auf den gegebenen Bedingungen eintritt. Diese Wahrscheinlichkeiten sind objektiv und basieren auf Daten aus der Vergangenheit und deren Analyse. Dieser Ansatz unterscheidet sich jedoch zur Fuzzy Logik, da die Wahrscheinlichkeit nicht die Zugehörigkeit zu einer Menge angibt, sondern lediglich eine Aussage darüber trifft, wie sich Systeme in der Vergangenheit in einer solchen Situation verhalten haben.
Die Aussage „morgen regnet es zu 70%“ hat somit also keinen Informationsgehalt über den Grad der Zugehörigkeit zu „regen“ oder „nicht regen“, sondern sagt lediglich aus, dass es in der Vergangenheit in 70% der Fälle geregnet hat, wenn die äußeren Bedingungen vergleichbar waren.
Das solltest Du mitnehmen
- Die Fuzzy Logik unterscheidet sich zur booleschen Logik darin, dass sie ungenaue Werte zulässt.
- Dabei werden spezialisierte Konzepte wie Fuzzy Mengen und Zugehörigkeitsfunktionen benötigt, um diese Logik abbilden zu können.
- Analog zur booleschen Logik besitzt auch die Fuzzy Logik die Operatoren AND, OR und NOT. Jedoch unterscheiden sich diese in den zugrundeliegenden Funktionen.
- Die Entscheidungsfindung in der Fuzzy Logik wird mithilfe von „Wenn-Dann“ Formulierungen vorgenommen, welche das menschliche Denken nachahmen sollen.
- Mithilfe der Defuzzifizierung kann dann die vage Ausgabe der Fuzzy Logik wieder in einen echten Entscheidungswert umgewandelt werden. Dazu wird häufig das Centre of Gravity Konzept verwendet.
- Die Fuzzy Logik findet in den verschiedensten Bereichen Anwendung, wie zum Beispiel der Regelungstechnik oder in der künstlichen Intelligenz.
Was ist die Bivariate Analyse?
Nutzen Sie die Bivariate Analyse: Erforschen Sie Typen und Streudiagramme und nutzen Sie Korrelation und Regression.
Was ist eine RESTful API?
Erfahren Sie alles über RESTful APIs und wie sie Ihre Webentwicklungsprojekte effizienter und skalierbarer machen können.
Was sind Zeitreihendaten?
Gewinnen Sie mithilfe von Analyse- und Prognosetechniken Erkenntnisse aus Zeitreihendaten. Entdecken Sie Trends und Muster!
Was ist ein Balkendiagramm?
Entdecken Balkendiagramme bei der Datenvisualisierung. Lernen Sie, wie man sie für aufschlussreiche Datenanalyse erstellt und anpasst.
Was ist ein Liniendiagramm?
Meistern Sie die Kunst der Liniendiagramme: Lernen Sie in unserem Leitfaden, wie Sie Trends und Muster visualisieren können.
Was ist Data Preprocessing?
Optimieren Sie Ihre Datenanalyse mit effektivem Data Preprocessing. Lernen Sie das Wesentliche in unserem Leitfaden zur Datenvorverarbeitung.
Andere Beiträge zum Thema Fuzzy Logic
Die Standford University bietet einen interessanten Artikel über dieses spezielle logische Konzept.
Niklas Lang
Seit 2020 bin ich als Machine Learning Engineer und Softwareentwickler tätig und beschäftige mich leidenschaftlich mit der Welt der Daten, Algorithmen und Softwareentwicklung. Neben meiner Arbeit in der Praxis unterrichte ich an mehreren deutschen Hochschulen, darunter die IU International University of Applied Sciences und die Duale Hochschule Baden-Württemberg, in den Bereichen Data Science, Mathematik und Business Analytics.
Mein Ziel ist es, komplexe Themen wie Statistik und maschinelles Lernen so aufzubereiten, dass sie nicht nur verständlich, sondern auch spannend und greifbar werden. Dabei kombiniere ich praktische Erfahrungen aus der Industrie mit fundierten theoretischen Grundlagen, um meine Studierenden bestmöglich auf die Herausforderungen der Datenwelt vorzubereiten.