# Fuzzylogik

Fuzzylogik (englisch fuzzy ‚verwischt‘, ‚verschwommen‘, ‚unbestimmt‘; fuzzy logic, fuzzy theory ‚unscharfe Logik‘ bzw. ‚unscharfe Theorie‘) oder Unschärfelogik ist eine Theorie, welche in der Mustererkennung zur „präzisen Erfassung des Unpräzisen“ (Zadeh) entwickelt wurde, sodann der Modellierung von Unschärfe von umgangssprachlichen Beschreibungen von Systemen dienen sollte, heute aber überwiegend in angewandten Bereichen wie etwa der Regelungstechnik eine Rolle spielt.
Anders als die herkömmliche Boolesche Logik basiert Fuzzylogik auf unscharfen Mengen, den Fuzzy-Mengen. Eine Eigenschaft eines Gegenstands wird in beiden Modellen als die Zugehörigkeit zu einer Menge gefasst, aber in der Fuzzylogik wird die Zugehörigkeit nicht durch eine ja/nein-Unterscheidung scharf definiert, sondern ist graduell abgestuft. Das geschieht durch Zugehörigkeitsfunktionen, die jedem Element einen numerischen Wert aus einem Intervall als Zugehörigkeitsgrad zuordnen. Die so eingeführten neuen Mengenoperationen definieren die Operationen eines zugehörigen Logikkalküls, der die Modellierung von Inferenzprozessen erlaubt.

## Motivation

Das folgende Beispiel verdeutlicht den Ansatz der Fuzzy-Logik: Eine Person in der Wüste bekommt zwei Flaschen mit Flüssigkeit. Der Inhalt der einen Flasche hat eine 90%ige Wahrscheinlichkeit, reines Trinkwasser zu sein, und eine 10%ige Wahrscheinlichkeit, giftig zu sein. Die andere ist dagegen eine „Fuzzy-Flasche“, deren Inhalt einen Zugehörigkeitswert von 0,9 in nicht-giftigen Flüssigkeiten aufweist. Sie enthält nämlich Sumpfwasser. Dies verdeutlicht, dass in der Wahrscheinlichkeitsbetrachtung Zuweisungen zu klar abgegrenzten Mengen involviert sind (lediglich ungewiss), während die Zugehörigkeitsfunktionen zu Fuzzymengen die Ähnlichkeit eines Elements zu einer Klasse ausdrücken.

## Historische Entwicklung

Die Überlegungen zu einer Logik der Unschärfe reichen zurück in die griechische Antike. Bereits der Philosoph Platon postulierte, dass zwischen den Begriffen wahr und falsch ein dritter Bereich liege. Dies stand ganz im Gegensatz zu seinem Zeitgenossen Aristoteles, welcher die Präzision der Mathematik darin begründete, dass eine Aussage nur entweder wahr oder falsch sein kann.
Bezüge zum modernen Begriff der Unschärfe hat auch der von Georg Wilhelm Friedrich Hegel geprägte Begriff der Gedoppelten Mitte.
Die Fuzzy-Set-Theorie, also die unscharfe Mengenlehre, wurde 1965 von Lotfi Zadeh an der University of California, Berkeley entwickelt.
Die Fuzzy-Set-Theorie nahm in den 1980er Jahren vor allem in Japan ihren Aufschwung mit der sogenannten japanischen Fuzzy-Welle. Die Fuzzy-Set-Theorie wurde als Fuzzy-Regler erfolgreich in industriellen Prozessen eingesetzt. Ein historisches Beispiel ist die Regelung der vollautomatischen U-Bahn Sendai, die erste erfolgreiche Großanwendung mit Fuzzylogik in der Praxis. Später fand die Fuzzylogik auch in Geräten der Unterhaltungselektronik breite Anwendung. Die europäische Fuzzy-Welle kam erst Mitte der 1990er Jahre, als die Grundsatzdiskussionen über die Fuzzylogik verebbten. Zu den deutschen Pionieren gehört Harro Kiendl.

## Fuzzy-Set-Theorie

Die Fuzzy-Set-Theorie ist von der mehrwertigen Logik zu unterscheiden, die in den 1920er Jahren von dem polnischen Logiker Jan Łukasiewicz beschrieben wurde. Im engeren Sinne kann die so genannte Fuzzylogik zwar als eine mehrwertige Logik gedeutet werden, und insofern gibt es eine gewisse Nähe zur mehrwertigen Logik, für deren Wahrheitswert einer logischen Aussage Zahlen aus dem reellen Einheitsintervall [0, 1] (die reellen Zahlen von 0 bis 1) verwendet werden. Allerdings fasst Lotfi Zadeh die Fuzzy-Set-Theorie als Formalisierung von unbestimmten Begriffsumfängen im Sinne einer referenziellen Semantik auf, was ihm erlaubt, die Unschärfe der Zugehörigkeit von Objekten als Elemente der zu definierenden Mengen graduell über numerische Werte zwischen 0 und 1 anzugeben. Damit eröffnete sich eine weitergehende, linguistische Interpretation der Fuzzy-Set-Theorie als Basis einer Logik der Unschärfe. Die Bezeichnung Fuzzy Logic wurde zunächst auch nicht von Zadeh, sondern erst später von dem ebenfalls in Berkeley lehrenden Linguisten George Lakoff benutzt, nachdem Joseph Goguen, ein Doktorand Zadehs, eine Logik unscharfer Begriffe eingeführt hatte.
In der linguistischen Semantik wird heute die Fuzzylogik aber mehrheitlich als nicht geeignet angesehen, um ein Modell für Vagheit und ähnliche Phänomene der natürlichen Sprache zu liefern. Anstatt einer unbestimmten Aussage einen Wahrheitswert zuzuweisen, der eine reelle Zahl zwischen 0 (falsch) und 1 (wahr) ist, wird die Methode der Supervaluation bevorzugt, bei der die Zuweisung eines klassischen Wahrheitswertes (0;1) aufgeschoben ist, weil sie von Parametern abhängt, die durch Information aus dem Kontext belegt werden müssen bzw. je nach Kontext unterschiedliche Werte annehmen. Es gibt also je nach Kontext unterschiedliche Kriterien für eine Präzisierung hin zu einer 0/1-Entscheidung. Das zugrundeliegende Modell bezeichnet man als eine partielle Logik (die in einem klaren Gegensatz zu mehrwertigen Logiken steht).

## Unscharfe Mengen

Grundlage der Fuzzylogik sind die sogenannten unscharfen Mengen (engl.: fuzzy sets). Im Gegensatz zu traditionellen Mengen (im Kontext der Fuzzylogik auch scharfe Mengen genannt), in denen ein Element einer vorgegebenen Grundmenge entweder enthalten oder nicht enthalten ist, wird eine unscharfe (fuzzy) Menge nicht durch die Objekte definiert, die Elemente dieser Menge sind (oder nicht sind), sondern über den Grad ihrer Zugehörigkeit zu dieser Menge.
Das geschieht durch Zugehörigkeitsfunktionen μ$_A$: X → [0,1], die jedem Element der Definitionsmenge X eine Zahl aus dem reellwertigen Intervall [0,1] der Zielmenge zuordnen, welche den Zugehörigkeitsgrad μ$_A$(x) jeden Elements x zur so definierten unscharfen Menge A angibt. Damit wird jedes Element zum Element jeder unscharfen Menge, aber mit jeweils unterschiedlichen, eine bestimmte Teilmenge definierenden Zugehörigkeitsgraden.
Zadeh erklärte hierzu neue Mengenoperationen, die als Operationen eines neuen Logikkalküls die mehrwertige Fuzzylogik begründen und sie als eine Verallgemeinerung der zweiwertigen, klassischen Logik ausweisen, welche als Spezialfall in ihr enthalten ist. Diese Operationen auf unscharfen Mengen sind wie auf scharfen Mengen definierbar, wie z. B. die Bildung von Schnittmengen (UND), Vereinigungsmengen (ODER) und Komplementmengen (NICHT). Zur Modellierung der logischen Operatoren der Konjunktion (UND), der Disjunktion (ODER) und der Negation (NICHT) bedient man sich der Funktionsklassen der T-Norm und T-Conorm.

### Negation

Die Negation in der Fuzzylogik erfolgt durch Subtraktion der Eingabewerte von 1. Also

### Nicht ausschließende-ODER-Schaltung

Die Adjunktion erfolgt durch Wahl des jeweils höheren Wertes der Eingabewerte. Also

### UND-Schaltung

Die Konjunktion erfolgt durch Wahl des jeweils niedrigeren Wertes der Eingabewerte. Also

### Ausschließende-ODER-Schaltung

Fuzzy XOR :
| ! x \ y | 0.0 | 0.1 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.9 | 1.0 |
| 0.0 | 0.0 | 0.1 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.9 | 1.0 |
| 0.1 | 0.1 | 0.1 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.9 | 0.9 |
| 0.2 | 0.2 | 0.2 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.8 | 0.8 |
| 0.3 | 0.3 | 0.3 | 0.3 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.7 | 0.7 | 0.7 |
| 0.4 | 0.4 | 0.4 | 0.4 | 0.4 | 0.4 | 0.5 | 0.6 | 0.6 | 0.6 | 0.6 | 0.6 |
| 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 |
| 0.6 | 0.6 | 0.6 | 0.6 | 0.6 | 0.6 | 0.5 | 0.4 | 0.4 | 0.4 | 0.4 | 0.4 |
| 0.7 | 0.7 | 0.7 | 0.7 | 0.7 | 0.6 | 0.5 | 0.4 | 0.3 | 0.3 | 0.3 | 0.3 |
| 0.8 | 0.8 | 0.8 | 0.8 | 0.7 | 0.6 | 0.5 | 0.4 | 0.3 | 0.2 | 0.2 | 0.2 |
| 0.9 | 0.9 | 0.9 | 0.8 | 0.7 | 0.6 | 0.5 | 0.4 | 0.3 | 0.2 | 0.1 | 0.1 |
| 1.0 | 1.0 | 0.9 | 0.8 | 0.7 | 0.6 | 0.5 | 0.4 | 0.3 | 0.2 | 0.1 | 0.0 |
Für die Disjunktion komplementiert man den kleineren zweier Werte und wählt den kleineren der beiden. Für mehr als zwei Eingabewerte setzt man das Ergebnis der letzten Operation rekursiv mit dem jeweils nächsten Eingabewert ein. Einfacher: man nimmt die Differenz des weniger Extremen von dem ihm gegenüberliegenden Extremwert. Also

## Fuzzyfunktionen

Zusammenfassungen einzelner Zugehörigkeitsfunktionen ergeben die Fuzzyfunktionen. Ein Beispiel dafür ist eine Fuzzyfunktion für das Alter eines Menschen. Diese könnte aus mehreren dachförmigen Dreiecken bestehen, die ihrerseits für verschiedene Alterstypen stehen und Zugehörigkeitsfunktionen dieser einzelnen Alterstypen darstellen. Jedes Dreieck deckt einen Bereich von mehreren Jahren des Menschenalters ab. Ein Mensch mit 35 Jahren hätte so die Eigenschaften: jung mit der Wertung 0,75 (das ist noch relativ viel), mittleres Alter mit der Wertung 0,25 (das ist ein bisschen) und von den übrigen Funktionen nichts. Anders ausgedrückt: mit 35 ist man ziemlich viel jung und ein bisschen mittel. Die Fuzzyfunktion ordnet jedem Alterswert eine ihn charakterisierende Zugehörigkeitsfunktion zu.
Diese Dreiecksgestalt ist allerdings keineswegs zwingend, generell können die Werte von Fuzzy-Funktionen beliebige Gestalt haben, solange deren Funktionswerte im Intervall [0,1] bleiben. In der Praxis werden solche Dreieckfunktionen aufgrund ihrer einfachen Berechenbarkeit jedoch gerne verwendet. Relativ weit verbreitet sind noch Trapeze (nicht notwendigerweise spiegelsymmetrisch), aber auch Halbkreise finden sich in einigen Anwendungen. Auch können sich prinzipiell mehr als zwei Abschnitte einer Fuzzy-Funktion überlappen (beim hier betrachteten Beispiel scheint das aber nicht sinnvoll zu sein).
In vielen Fällen werden Fuzzyfunktionen über Tabellen aus statistischen Erhebungen erzeugt. Diese können auch von der Anwendung selbst erhoben werden soweit eine Rückkopplung gegeben ist, wie in der Fahrstuhlsteuerung. Praktisch bedeutsam ist auch, die Erfahrungen und Intuitionen eines Experten auf dem jeweiligen Gebiet in eine Fuzzyfunktion mit einfließen zu lassen, insbesondere dann, wenn überhaupt keine statistischen Aussagen vorhanden sind, beispielsweise dann, wenn es sich um ein komplett neu zu beschreibendes System handelt.

### Beispiel für eine nicht-lineare Fuzzy-Funktion

Ein Beispiel für eine nicht-lineare Zugehörigkeitsfunktion bildet die folgende Sigmoidfunktion:
    $S(x,a,\delta )={\begin{cases}0&x\leq a-\delta \\2\left({\frac {x-a+\delta }{2\delta }}\right)^{2}&a-\delta <x\leq a\\1-2\left({\frac {a-x+\delta }{2\delta }}\right)^{2}&a<x\leq a+\delta \\1&x>a+\delta \end{cases}}$
Die Kurve drückt durch die Form des Buchstabens S eine ansteigende Zugehörigkeit zu der jeweils beschriebenen Menge durch einen Wert im Wertebereich [0,1] aus. Je nach Anwendungsfall lässt sich eine abnehmende Zugehörigkeit durch eine entsprechende Z-Kurve ausdrücken:
    $Z(x,a,\delta )=1-S(x,a,\delta )$
Der Parameter $a$ gibt hierbei den Wendepunkt der S-Kurve an, der Wert $\delta$ bestimmt die Neigung der Kurve. Je größer $\delta$ gewählt wird, desto flacher wird der Verlauf der resultierenden Funktion.
Das Alter eines Menschen lässt sich mittels dieser Kurve wie folgt als Fuzzy-Funktion darstellen:
Alter eines Menschen :
| Bezeichnung | Zugehörigkeitsfunktion |
| sehr jung | $s_{0}:\;(1-S(x,30,30))^{2}$ |
| jung | $s_{1}:\;1-S(x,30,30)$ |
| nicht sehr jung | $s_{2}:\;1-(1-S(x,30,30))^{2}$ |
| mehr oder weniger alt | $s_{3}:\;{\sqrt {S(x,60,30)}}$ |
| alt | $s_{4}:\;S(x,60,30)$ |
| sehr alt | $s_{5}:\;S(x,60,30)^{2}$ |
Dabei können die umgangssprachliche Modifikatoren sehr, mehr oder weniger sowie nicht sehr durch einfache Modifikation einer gegebenen Funktion dargestellt werden:
* Der umgangssprachlich verstärkende Modifikator sehr kann in Form eines erhöhten Exponenten dargestellt werden (im Beispiel $s_{0}=s_{1}^{2}$). Das Ergebnis ist ein steilerer Kurvenverlauf im Vergleich zur Ausgangsfunktion.
* Der umgangssprachliche Modifikator mehr oder weniger kann durch Verwendung eines niedrigeren Exponenten bzw. der Quadratwurzel auf eine gegebene Funktion ausgedrückt werden($s_{3}={\sqrt {s_{4}}}$). Das Ergebnis ist ein flacherer Kurvenverlauf im Vergleich zur Ausgangsfunktion.
* Die Negation eines umgangssprachlichen Ausdrucks lässt sich durch eine einfache Subtraktion darstellen ($s_{2}=1-s_{0}$).
Den Anwendungsfällen entsprechend handelt es sich bei dieser Form der Repräsentation um linguistische Variablen. Letztlich wird aus den einzelnen gewichteten Aussagen ein einziger Zahlenwert berechnet, der das Alter in mathematischer Form auszudrücken vermag. Mit diesem Wert lässt sich dann präzise weiterarbeiten. Auch bei dieser so genannten Defuzzyfikation sind viele Verfahren möglich, das bekannteste (aber bei weitem nicht immer beste) ist sicherlich die Methode Center-of-Gravity, bei der der Zahlenwert gewichtet nach der Masse der geometrischen Form der einzelnen Abschnitte der Zugehörigkeitsfunktion gebildet wird. Eine andere Möglichkeit ist, einfach einen gewichteten Mittelwert der Funktionswerte zu bilden.

## Anwendungsbeispiele

Fuzzylogik wird heute in unterschiedlichen Bereichen eingesetzt: Eine wesentliche Anwendung sind Fuzzy-Regler, z. B. in der Automatisierungstechnik, Medizintechnik, Unterhaltungselektronik, Fahrzeugtechnik und anderen Bereichen der Regelungstechnik, in denen Fuzzy-Regler verstärkt mit konventionellen Reglern konkurrieren. Anwendung findet sie auch in der künstlichen Intelligenz, in Inferenzsystemen, in der Spracherkennung und zum Beispiel in der Elektrosicherheit.
Nützen kann Fuzzylogik besonders dann, wenn keine mathematische Beschreibung eines Sachverhaltes oder Problems vorliegt, sondern nur eine verbale Beschreibung. Auch wenn – wie fast immer – das vorhandene Wissen Lücken aufweist oder teilweise veraltet ist, bietet sich der Einsatz von Fuzzylogik an, um noch zu einer fundierten Aussage über einen aktuellen oder künftigen Systemzustand zu gelangen. Dann wird aus sprachlich formulierten Sätzen und Regeln mittels Fuzzylogik eine mathematische Beschreibung gewonnen, die in Rechnersystemen genutzt werden kann. Interessant ist dabei, dass mit der Fuzzylogik auch dann Systeme sinnvoll gesteuert (bzw. geregelt) werden können, wenn ein mathematischer Zusammenhang zwischen den Ein- und Ausgabegrößen eines Systems nicht darstellbar ist – oder nur mit großem Aufwand erfolgen könnte, wodurch eine Automatisierung zu teuer oder nicht in Echtzeit realisierbar wäre. Dies ist häufig bei defekten oder ungenauen Sensoren der Fall, deren Funktion mit Fuzzylogik kompensiert werden kann.
Weitere Anwendungen sind die Regelung von U-Bahnen, die Prognose der zukünftigen Last in Routern, Gateways oder Mobilfunk-Basisstationen, die Steuerung automatischer Getriebe in Automobilen, Alarmsysteme für die Anästhesie, Zwischenfrequenzfilter in Radios, Antiblockiersysteme für Automobile, Brandmeldetechnik, die Prognose des Energieverbrauchs bei Energieversorgern, AF-gekoppelte Mehrfeld-Belichtungsautomatiken und AF-Prädiktion in Spiegelreflexkameras, um einige zu nennen.
Auch in betriebswirtschaftlichen Anwendungen hat Fuzzylogik erfolgreich Einzug gehalten. Ein Beispiel mit Erfolgsquote ist die Intelligente Schadenprüfung (ISP), mit der sich Versicherungsunternehmen vor Versicherungsbetrug schützen.

## Begriffsabgrenzung

Nicht zu verwechseln mit der Fuzzylogik ist die Fuzzy-Suche, die eine unscharfe Suche in Datenbanken ermöglicht, zum Beispiel, wenn die genaue Schreibweise eines Namens oder Begriffes nicht bekannt ist. Auch wenn die Zugehörigkeits-Werte aus dem Intervall [0,1] formal wie Wahrscheinlichkeitswerte aussehen, so ist Unschärfe etwas grundsätzlich anderes als Wahrscheinlichkeit. Vor allem ist zu beachten, dass die Summe der Werte zweier Funktionen, die sich überschneiden, nicht 1 sein muss. Sie kann gleich 1 sein, aber auch darüber oder darunter liegen.