>> Ressourcen > Theses > Reif, Gerald: M[..] > 07. Fuzzy Logik

next up previous contents
Nächste Seite: 8. Neuronale Netze Aufwärts: I. Der Untersuchungsbereich Vorherige Seite: 6. Expertensysteme   Inhalt



7. Fuzzy Logik

In Expertensystemen, die im vorigen Abschnitt vorgestellt wurden, wird Expertenwissen zumeist in Form von Regeln gespeichert. Diese Regeln besten aus Vorbedingungen, die entweder wahr oder falsch sein können, und Aktionen, die, abhängig von den entsprechenden Vorbedingungen, ausgeführt werden oder nicht. Menschliche Experten formulieren ihre Regeln aber oft in einer Art, in der nicht genau festgelegt ist, wann eine Vorbedingung erfüllt ist; z.B. ,,Wenn die Temperatur ungefähr $19^\circ$C beträgt, dann muß das Heizungsventil ein wenig geöffnet werden.'' Menschen sind in der Lage diese Regel zu verstehen und können danach handeln. Für Computer stellen jedoch die unscharfen Begriffe ,,ungefähr $19^\circ$C'' oder ,,einwenig öffnen'' ein Problem dar. Ab wann soll ein Expertensystem eine Temperatur als ,,ungefähr $19^\circ$C'' interpretieren? Doch zugleich zeigt sich, daß viele komplexe Probleme durch die Verwendung von unscharfen Regeln einfach beschrieben werden können. Daher ist es das Ziel, dem Computer das Umgehen mit unscharfen Begriffen zu ermöglichen. Dies geschieht mit Hilfe der 1965 von Lotfi A. Zadeh an der Universität von Kalifornien in Berkeley entwickelten Theorie der unscharfen Mengen (fuzzy set theory) und deren Anwendung, die in diesem Abschnitt vorgestellt werden soll.

7.1 Klassische Mengen versus Fuzzy Sets

In der klassischen Mengenlehre kann ein Element nur entweder einer Menge angehören oder nicht. Will man nun den Begriff ,,angenehme Raumtemperatur'' beschreiben, so definiert man die Menge der angenehmen Raumtemperaturen. Dies kann in der klassischen Mengenlehre nur durch die Definition eines scharf abgegrenzten Intervalls geschehen, z.B. die Temperaturen zwischen $19^\circ$C und $24^\circ$C, wie dies in Abbildung 7.1a. dargestellt ist. Somit würde eine Temperatur von $18,9^\circ$C als nicht angenehm eingestuft. Dieser scharfe Übergang von angenehm zu nicht angenehm entspricht jedoch nicht dem menschlichen Empfinden. [Zimmermann1993]

Im Gegensatz zu klassischen Mengen können Elemente bei Fuzzy Sets auch nur bis zu einem bestimmten Grad einer Menge angehören. Dieser Zugehörigkeitsgrad wird üblicherwiese durch eine Zahl aus dem Intervall $[0,1]$ beschrieben. Dabei bedeutet der Grad 1 volle Zugehörigkeit zur Menge und der Grad 0 keine Zugehörigkeit. In Abbildung 7.1b. ist die Zugehörigkeitsfunktion zur unscharfen Menge der angenehmen Raumtemperaturen angegeben. Bei dem Beispiel gehört die Temperatur $19^\circ$C mit dem Zugehörigkeitsgrad $0,8$ der Menge der angenehmen Raumtemperaturen an. [Zimmermann1993]

Abbildung 7.1: Definition des Begriffs: Angenehme Raumtenperatur.
a. nach der klassischen Mengenlehre: Es können nur scharfe Grenzen zwischen Element und nicht Element gezogen werden.
b. nach der Theorie der unscharfen Mengen: Ein Element kann auch nur zu einem bestimmten Grad einer Menge angehören; z.B. gehört die Temperatur $19^\circ$C mit dem Grad $0,8$ der Menge der angenehmen Raumtemperaturen an.
\includegraphics [width=13.5cm]{bilder/tech/fuzzytemperatur.eps}

7.2 Definitionen

An dieser Stelle sollen einige, für das Verständnis von Fuzzy Regel Systemen notwendige Definitionen der Fuzzy Set Theory angeführt werden: [Rojas1993] [Nauck1994]

Definition Fuzzy-Menge (fuzzy set, unscharfe Menge): Gegeben sei

  1. Eine Grundmenge $U$ (auch Universum) mit den Elementen $u$.
  2. Eine totale Abbildung $\mu_A:U \longrightarrow [0,1]$ vom Universum in das abgeschlossene Intervall $[0,1]$, dann ist

\begin{displaymath}
A:=\{ (u,\mu_A(u))\,\vert\, u \in U, \mu_A(u) \in [0,1]\}
\end{displaymath} (7.1)

eine Fuzzy-Menge (fuzzy set). $\mu_A(u)$ gibt den Zugehörigkeitsgrad, bzw. den Grad der Mitgliedschaft eines Elements $u \in U$ zur Menge $A$ an. Sie heißt Mitgliedsgradfunktion (membership function), Zugehörigkeitsfunktion bzw. charakteristische Funktion. [Rojas1993]

Besteht das Bild der Funktion $\mu_A(u)$ aus den diskreten Werten $\{0,1\}$, dann ist $A$ eine Menge im klassischen Sinn. Eine solche Menge heißt dann gewöhnliche Menge (ordinary set).

Das Intervall $[0,1]$ heißt ,,membership space'' $M$. $M$ kann auch eine beliebige teilweise geordnete Menge sein.

Unscharfe Begriffe wie ,,angenehm'', ,,hoch'', ,,nieder'', ,,kalt'', usw. werden als linguistische Werte bezeichnet und durch unscharfe Mengen beschrieben.

Als Zugehörigkeitsfunktion sollte eine möglichst einfache Funktion gewählt werden. Fuzzy-Mengen in der Form von Dreiecks-, Trapez- und Gauß-Funktionen, die durch wenige Parameter beschrieben werden können, eignen sich besonders gut für die Speicherung in Computern und die Durchführung von Berechnungen. Beispiele für solche unscharfen Mengen sind in Abbildung 7.2 dargestellt. [Kruse1997]

Damit auf der Basis von Fuzzy Sets ein Regelsystem arbeiten kann, muß jeder mögliche Wert einer Variable zumindest einer unscharfen Menge angehören. Der Wertebereich einer Variable wird daher in linguistische Werte gegliedert, sodaß die zugehörigen unscharfen Mengen den ganzen Bereich überdecken und sich überlappen. Diese Aufgliederung nennt man unscharfe Fuzzy Zerlegung oder Fuzzy Partitioning. Ein Beispiel dafür ist in Abbildung 7.3 dargestellt. [Kruse1997]

Ausgehend von den oben getroffenen Definition einer Fuzzy Menge können weiters folgende Definitionen getroffen werden:

Definition ( Gleichheit): Zwei Fuzzy-Mengen $A$ und $B$ heißen gleich und werden $A=B$ geschrieben, genau dann wenn

$\displaystyle \mu_A(u)=\mu_B(u)$   $\displaystyle \forall u \in U$ (7.2)

gilt.

Definition ( Leere Menge): Eine Fuzzy-Menge $A$ heißt leer und wird $A=\emptyset$ bezeichnet, genau dann wenn

$\displaystyle \mu_A(u)=0$   $\displaystyle \forall u \in U$ (7.3)

gilt.

Definition ( Teilmenge): Eine Fuzzy-Menge $A$ heißt Teilmenge einer Fuzzy-Menge $B$, bezeichnet durch $A \subseteq B$, genau dann wenn

$\displaystyle \mu_A(u) \le \mu_B(u)$   $\displaystyle \forall u \in U$ (7.4)

gilt.

Mengenoperationen

Definition ( Komplement): Ist $A$ eine Fuzzy-Menge über einem Universum $U$, dann ist das Komplement $A'$ (bzw. $\neg A$) gegeben durch

\begin{displaymath}
A'=\{ (u,(1-\mu_A(u))) \,\vert \; u \in U\}.
\end{displaymath} (7.5)

Abbildung 7.4: Komplementbildung bei Fuzzy-Mengen.
\includegraphics [height=3cm]{bilder/tech/fuzzykomplement.eps}

Definition ( Vereinigung): Sind $A$ und $B$ Fuzzy-Mengen über $U$, dann ist die Vereinigung $A \cup B$ ebenfalls eine Fuzzy-Menge $C$ und die Zugehörigkeitsfunktion ist gegeben durch

$\displaystyle \mu_C(u)=max \{\, \mu_A(u), \mu_B(u) \,\}$   $\displaystyle \forall u \in U.$ (7.6)

Abbildung 7.5: Vereinigung zweier Fuzzy-Mengen.
\includegraphics [height=3cm]{bilder/tech/fuzzyvereinigung.eps}

Definition ( Durchschnitt): Sind $A$ und $B$ Fuzzy-Mengen über $U$, dann ist die Durchschnitt $A \cap B$ ebenfalls eine Fuzzy-Menge $C$ und die Zugehörigkeitsfunktion ist gegeben durch

$\displaystyle \mu_C(u)=min \{\, \mu_A(u), \mu_B(u) \,\}$   $\displaystyle \forall u \in U.$ (7.7)

Logische Verknüpfung linguistischer Werte

In den Vorbedingungen von Regeln werden linguistische Werte durch logische Operationen miteinander verknüpft. Bevor dies jedoch geschehen kann, müssen die aktuellen Eingangswerte erst fuzzyfiziert werden. Unter Fuzzyfizierung versteht man die Ermittlung der Zugehörigkeitsgrade zu den unscharfen Mengen, ausgehend von aktuellen Werten der Eingangsgrößen. Der Zugehörigkeitsgrad wird mit Hilfe der Zugehörigkeitsfunktion $\mu(u)$ ermittelt, d.h. der Eingangswert führt über die Zugehörigkeitsfunktion zu einem Zugehörigkeitsgrad der entsprechenden unscharfen Menge.

Bei der UND-Verknüpfung ist der Zugehörigkeitsgrad der Vorbedingung durch das Minimum der Zugehörigkeitsgrade der aktuellen Eingangsgrößen bestimmt. Es wird somit das Minimum der fuzzyfizierten Eingangsgrößen gebildet. Das Ergebnis der UND-Verknüpfung entspricht somit einer Zahl aus dem Intervall $[0,1]$. Dieser Vorgang ist in Abbildung 7.7 dargestellt.

Abbildung: UND-Verknüpfung von zwei linguistischen Werten.
\includegraphics [width=14.5cm]{bilder/tech/fuzzyund.eps}

Bei der ODER-Verknüpfung ist der Zugehörigkeitsgrad der Vorbedingung durch das Maximum der Zugehörigkeitsgrade der aktuellen Eingangsgrößen bestimmt. Es wird somit das Maximum der fuzzyfizierten Eingangsgrößen gebildet. Das Ergebis der ODER-Verknüpfung entspricht somit einer Zahl aus dem Intervall $[0,1]$. Dieser Vorgang ist in Abbildung 7.8 dargestellt.

Die hier vorgestellten Definitionen für Fuzzy Sets und Fuzzy Logic sind voll kompatibel zur klassischen Mengenlehre und zur klassischen Logik. Dies kann leicht veranschaulicht werden, indem man nur Zugehörigkeitsfunktionen verwendet, die auf die diskreten Werte $\{0,1\}$ abbilden. Diese Definitionen stellen jedoch nicht die einzige Möglichkeit dar, logische Operationen auf unscharfe Ausdrücke zu definieren. In der Literatur findet man dafür auch andere Möglichkeiten. [Hofer1995] Als Beispiel dafür soll an dieser Stelle kurz die Definition über die beschränkten Summen angeführt werden. Die Und-Verknüpfung erfolgt über $C=A\, \wedge \, B=max\{0, \,
\mu_A(a)+\mu_B(b)-1\}$, die Oder-Verknüpfung über $C=A\, \vee \, B = min
\{1, \, \mu_A(a) + \mu_B(b) \}$ mit $ a \in A,\, b \in B$ . [Rojas1993] Für die weiteren Betrachtungen wird jedoch auf die ersteren Definitionen von logischen Operationen auf Fuzzy Mengen zurückgegriffen.

7.3 Arbeitsweise eines Fuzzy Regel Systems

Die Arbeitsweise eines Fuzzy Regel Systems soll anhand eines einfachen Regelbeispiels erklärt werden. Das Beispiel ist gegeben, durch folgende Regeln: [Kruse1997]

  1. Wenn $x$ positiv klein ist und $y$ positiv klein ist, dann ist $z$ positiv klein.
  2. Wenn $x$ positiv groß ist und $y$ positiv klein ist, dann ist $z$ positiv groß.
Die Zugehörigkeitsfunktionen zu den in den obigen Regeln verwendeten linguistischen Werte ,,$x$ positiv klein'', ,,$x$ positiv groß'', ,,$y$ positiv klein'', ,,$z$ positiv klein'' und ,,$z$ positiv groß'' sind nachfolgend in der Abbildung 7.9 dargestellt. [Kruse1997]

Die Arbeitsweise eines Fuzzy Regel Systems besteht im wesentlichen aus drei Schritten: [Hofer1995]

  • Fuzzyfizierung der konkreten Eingangsgrößen.
  • Inferenz und Komposition der Regeln.
  • Defuzzyfizierung der konkreten Ausgangsgrößen.

Fuzzyfizierung der konkreten Eingangsgrößen

Für jede Eingangsgröße wird mit Hilfe der Zugehörigkeitsfunktion der Fuzzy-Menge der Zugehörigkeitsgrad zum entsprechenden linguistischen Wert bestimmt. [Hofer1995]

Inferenz und Komposition der Regeln

Im nächsten Schritt werden die linguistischen Werte logisch miteinander verknüpft. In diesem Beispiel sind die linguistischen Werte UND verknüpft. Daher ist der Grad der Vorbedingung durch das Minimum der Zugehörigkeitsgrade der Eingangsgrößen bestimmt. Der Grad der Vorbedingung muß nun umgelegt werden, auf den linguistischen Wert der Aktion der Regel. Diesen Schritt nennt man Inferenz. Die Inferenz erfolgt, indem man das Minimum zwischen dem Grad der Vorbedingung und der Zugehörigkeitsfunktion der Aktion bildet. Graphisch kann dies als ,,abschneiden'' der Zugehörigkeitsfunktion auf Höhe des Grades der Vorbedingung angesehen werden, wie dies in Abbildung 7.9 in der letzten Spalte dargestellt ist. Diese Methode der Inferenzbildung stellt jedoch nur eine Möglichkeit dar. Eine andere Möglichkeit ist die Produktbildung zwischen dem Grad der Vorbedingung und der Zugehörigkeitsfunktion der Aktion. Für welche Art der Inferenzbildung man sich entscheidet, hängt von der Art der Anwendung ab. [Hofer1995]

Da in einem Regelsystem meist mehrere Regeln eine Ausgangsgröße betreffen, müssen die Zugehörigkeitsfunktionen der Aktion nach der Inferenzbildung zu einer Gesamtzugehörigkeitsfunktion zusammengefaßt werden. Diesen Schritt nennt man Komposition. Die gebräuchlichste Methode die Komposition durchzuführen, ist die Maximum Methode. Dabei erhält man die Gesamtzugehörigkeitsfunktion durch die Maximum-Bildung über alle Zugehörigkeitsfunktionen der Aktionen, die eine Ausgangsgröße betreffen. Dieser Schritt ist in der letzten Zeile von Abbildung 7.9 dargestellt. [Hofer1995]

Defuzzyfizierung der konkreten Ausgangsgrößen

Als letzten Schritt in einem Fuzzy Regel System muß noch eine konkrete Ausgangsgröße aus der Gesamtzugehörigkeitsfunktion ermittelt werden. Diesen Vorgang nennt man Defuzzyfizierung. Auch dieser Schritt kann durch mehrere unterschiedliche Methoden erfolgen. Die gebräuchlichste ist die Schwerpunkt-Methode. Dabei wird als Ausgangsgröße der Abszissenwert des Schwerpunktes der unter der Gesamtzugehörigkeitsfunktion gelegenen Fläche verwendet. [Hofer1995]

7.4 Anwendungsbeispiel: Container-Kran

Anhand eines konkreten Beispiels soll gezeigt werden, wie einfach der Grobentwurf eines Fuzzy Regel Systems erfolgen kann: Eine Ladung soll mit Hilfe eines Container-Krans von einer Ausgangsposition (z.B. ein Schiff) zum Ziel (z.B. ein Eisenbahnwaggon) transportiert werden. Die Last ist mit dem Krankopf durch ein Seil verbunden und pendelt, sobald sich der Kran in Bewegung setzt. Das Pendeln stört nicht während der Fahrt, aber beim Absetzen des Containers. Es soll nun ein Regelsystem entworfen werden, welches den Container möglichst schnell von der Ausgangsposition zum Ziel transportiert. [Altrock1993]

Dieses Problem ist auch mit Hilfe der klassischen Regelungstechnik lösbar. Allerdings reicht ein einfacher PID-Regler nicht aus, da die Stabilisierungsstrategie stark nichtlinear von der Position des Krans zum Ziel abhängt. Beim Anfahren ist der Pendelausgleich nicht wichtig, da die Last so schnell wie möglich an das Ziel gebracht werden soll, je näher man jedoch zum Ziel kommt, desto wichtiger ist die Stabilisierung. [Altrock1993]

Ein Mensch ist jedoch in der Lage, mit etwas Erfahrung einen solchen Kran auch bei Windeiflüssen und unterschiedlichen Lasten recht gut zu steuern, ohne erst Differentialgleichungen lösen zu müssen. Will man dieses Erfahrungswissen mit Hilfe der Fuzzy Logic automatisieren, muß man zunächst durch Beobachtung des Prozesses gewisse Zustände identifizieren, z.B: schnelle Fahrt, Last pendelt stark nach hinten, Ziel weit weg, usw. Für diese Zustände werden in der Folge Wenn-Dann Regeln aufgestellt. Diese sind in Tabelle 7.1 dargestellt. Interpretiert kann die Tabelle wie folgt werden:


Tabelle 7.1: Regeln zur Steuerung eines Containerkrans. Die Eingangsgrößen sind der Abstand des Krankopfes zum Ziel und der Lastwinkel. Eilt die Ladung dem Krankopf voraus, so ist der Lastwinkel positiv. Die Ausgangsgröße ist die Motorleistung der Kranantriebes. Abstand, Lastwinkel und Motorleistung sind linguistische Variablen und werden durch Fuzzy-Mengen repräsentiert. [Altrock1993]
Abstand
Lastwinkel groß gering null
positiv, groß schnell voraus schnell voraus langsam zurück
positiv, klein schnell voraus langsam voraus langsam zurück
null schnell voraus langsam voraus stop
negativ, klein schnell voraus langsam voraus langsam voraus
negativ, groß schnell voraus langsam zurück schnell voraus


Solange der Krankopf noch weit vom Ziel entfernt ist, wird, unabhängig wie stark die Last pendelt, der Motor auf volle Leistung gestellt. Dies entspricht der Strategie: ,,Wenn man noch weit vom Ziel entfernt ist, fahre so schnell wie möglich.'' Kommt der Krankopf jedoch näher, so verändert sich die Strategie. Pendelt die Last nur gering, so wird die Geschwindigkeit leicht verringert, um ein zu abruptes abbremsen beim Ziel und das damit verbundene starke Pendeln zu verhindern. Pendelt die Last jedoch stark, so wird schon jetzt versucht, die Pendelbewegung in den Griff zu bekommen, indem man den Krankopf in die entgegengesetzte Richtung der Pendelschwingung bewegt. Befindet man sich in der unmittelbaren Umgebung des Ziels, so liegt das Hauptaugenmerk auf dem Ausgleich der Pendelbewegung. Dies erreicht man durch langsame Bewegung in die entgegengesetzte Richtung der Pendelbewegung. [Altrock1993]

Gegenüber der Lösung mit Hilfe der Klassischen Regelungstechnik wurden folgende Vorteile erzielt: [Altrock1993]

  • Die gewünschte Regelstrategie kann ohne aufwendige mathematische Modellbildung auf der Basis des vorhandenen technischen Wissens erstellt werden.
  • Auch Nichtspezialisten der Regelunstechnik können ein solches System aufbauen.
  • Da jedem Systemzustand leicht verständliche Regeln zugeordnet sind, beschleunigen sich die Inbetriebnahme und die spätere Modifikation.
  • Im Gegensatz zu einer konventionellen Lösung, deren komplexe mathematischen Berechnungen einen leistungsfähigen Rechner benötigen, lassen sich Fuzzy Regel Systeme auch auf einfachen Rechnern einsetzen.

Der Nachteil der Fuzzy Regel Systeme liegt in der Feinabstimmung. Der erste Entwurf der Regelbasis und der entsprechenden Fuzzy Mengen liefert zwar häufig sehr schnell eine Regelung, die das System im groben unter Kontrolle bringt, aber für eine genaue Regelung muß die Zugehörigkeitsfunktion der unscharfen Mengen oder das Verfahren, mit denen man die Fuzzy Mengen verknüpft, in aufwendiger Feinarbeit nachgebessert werden. Für diese Nachbesserungen stehen kaum methodische Hilfen zur Verfügung, daher erfolgen diese in den meisten Fällen über Versuchen. Dabei wäre ein lernfähiges System von Vorteil, wie dies im nächsten Kapitel vorgestellt wird. [Kruse1997] In Kapitel 9 wird darüber hinaus mit NeuroFuzzy eine Technik vorgestellt, welches die Vorteile eines lernfähigen Systems mit den Vorteilen der Fuzzy Logic verbindet.


next up previous contents
Nächste Seite: 8. Neuronale Netze Aufwärts: I. Der Untersuchungsbereich Vorherige Seite: 6. Expertensysteme   Inhalt
Gerald Reif
2000-02-01