Direkt zum Inhalt

Neuronale Fuzzy-Systeme

Durch Kombination von Prinzipien der Fuzzy Logic einerseits und der neuronalen Netze andererseits lassen sich kostengünstig lernfähige Systeme entwickeln, die mit unpräzisen Informationen arbeiten können.

Jeder Fahrschüler muß feststellen, daß Anfahren nicht gerade einfach, aber erlernbar ist. Einige Hinweise des Fahrlehrers in unscharfen Begriffen der Umgangssprache ("ein bißchen Gas geben, Kupplung langsam kommen lassen") helfen ihm, das Fahrzeug zumindest holpernd in Bewegung zu bringen. In der folgenden Übungsphase verschafft er sich eine zunehmend präzisere Vorstellung davon, was unter "ein bißchen Gas" oder "langsam kommen lassen" zu verstehen ist; durch Erfahrung lernt er dann einen flüssigen Bewegungsablauf, der schließlich keinerlei Nachdenken mehr erfordert.

Eine maschinelle Lösung desselben Problems, beispielsweise den Entwurf einer Computersteuerung für ein automatisches Getriebe, würde man traditionellerweise ganz anders angehen. Idealerweise hätte man eine mathematische Beschreibung des zu regelnden Systems zur Verfügung, etwa in Form einer Differentialgleichung. Aus deren Analyse ließe sich ein Satz von Vorschriften ableiten, der zu jeder Kombination möglicher Ist-Werte des Systems (Motordrehzahl und Fahrzeuggeschwindigkeit) die erforderlichen Stellgrößen (Positionen von Gas- und Kupplungspedal) angibt.

So günstige Umstände sind allerdings extrem selten. Vor allem sehr komplizierte oder technologisch neue Systeme sind derart vollständig nur unter großem Aufwand oder gar nicht zu durchschauen. Andererseits geht es offensichtlich auch ohne diese erschöpfende Kenntnis: Man kann erfolgreich Auto fahren, ohne etwas von Differentialgleichungen zu verstehen.

Das hat verschiedene Wissenschaftler motiviert, die Art, wie ein Mensch einen Prozeß beherrschen lernt, auf Maschinen zu übertragen. Zum einen geht es darum, aus unscharf formulierten, an wenigen Beispielen erklärten Anweisungen durch Interpolation eine allgemeine Steuerstrategie zu machen; das leistet Fuzzy Logic, genauer: deren Anwendung Fuzzy Control. Zum anderen lernt der Mensch aus Erfahrung mit dem Ziel, gewisse Zahlenwerte optimal den Forderungen eines sehr komplexen Systems anzupassen; das ist die wesentliche Fähigkeit der künstlichen neuronalen Netze.

Beide Prinzipien sind unabhängig voneinander entwickelt worden und passen von sich aus nicht besonders gut zueinander. Fuzzy Logic hat da ihre Stärken, wo neuronale Netze ihre Schwächen haben, und umgekehrt. Erstrebenswert sind deshalb Kombinationen, welche die Stärken beider Ansätze in sich vereinigen.

In unserer Forschungsgruppe an der Technischen Universität Braunschweig haben wir uns intensiv mit solchen Kombinationen befaßt. Wir haben unter anderem Neuro-Fuzzy-Modelle für die Bereiche Regelungstechnik und Datenanalyse entwickelt. Dabei sind prototypische Software-Systeme entstanden, die der interessierte Leser bei den Autoren anfordern oder auch selbst über das Internet beziehen kann (http://www.cs.tu-bs.de/ibr/fuzzy/fuzzysys_d.html). Fuzzy-Systeme

Der Klarheit zuliebe wählen wir zur Darstellung der Prinzipien ein relativ einfaches Beispielsystem. Stellen Sie sich vor, Sie sollten eine automatische Regulierung der Zimmertemperatur auf einem Personal Computer entwickeln. Die Beschreibung der Problemlösung in natürlicher Sprache ist nicht schwer. Sie könnten etwa Vorschriften festlegen wie "Wenn die Temperatur ungefähr 19 Grad beträgt, dann muß das Heizungsventil ein wenig geöffnet werden", "bei etwa 24 Grad sollte es fast geschlossen werden" und so weiter. Nur – wie bringen Sie dem Computer bei, diese vage formulierten Regeln zu verarbeiten?

Der Mathematiker Lotfi A. Zadeh von der Universität von Kalifornien in Berkeley hat 1965 seine Theorie der unscharfen Mengen (fuzzy set theory) als eine Möglichkeit zur Modellierung umgangssprachlicher Begriffe wie "groß", "klein", "ungefähr 19 Grad" oder "wenig geöffnet" vorgestellt. Derartige Begriffe werden als fuzzy (unscharf, vage, verschwommen) bezeichnet, weil sie – im Gegensatz zu der Angabe "19 Grad" – nicht einen exakten Wert repräsentieren, sondern verschiedene Werte, die diesem Begriff mehr oder weniger gut entsprechen können. Zadeh zeigte, wie man mit unscharfen Mengen umgangssprachlich formulierte Regeln wie die angeführten im Computer darstellen und verarbeiten kann. Das ist ein wesentlicher Fortschritt gegenüber der Verarbeitung von Regeln mit exakten Werten, die solche Zusammenhänge nur ungenügend abbilden. (In Spektrum der Wissenschaft, März 1993, Seiten 90 bis 103, sind Prinzip und Anwendungen der Fuzzy Logic in mehreren Artikeln dargestellt.)

Die erfolgreichsten Anwendungen finden sich in der Steuerungs und Regelungstechnik (Fuzzy Control). Dabei geht es darum, einer oder mehreren Ausgangsgrößen eines Systems einen gewünschten zeitlichen Verlauf aufzuprägen – sei es die Temperatur eines Raumes, Kurs und Geschwindigkeit eines Schiffes oder die Konzentration eines Stoffes in einem Bioreaktor. Direkt manipulierbar sind jedoch nicht diese selbst, sondern nur bestimmte Stellgrößen, etwa die Ventilstellung der Heizung, die Leistung des Schiffsmotors oder der Nährstoffzufluß in dem Bioreaktor. Deren Wert ist immer wieder aufs neue so zu wählen, daß die Ausgangsgröße möglichst wenig von dem gewünschten Sollwert abweicht. Zu diesem Zweck verwendet man aktuell gemessene oder errechnete Eingangsgrößen; oft sind das die Differenz zwischen Soll und Ausgangswert und die zeitliche Änderung dieser Differenz.

Ein Regler ist also vollständig charakterisiert durch eine Funktion, die zu jeder Kombination der Eingangsgrößen den richtigen Wert der Stellgrößen angibt. Deren bildliche Darstellung ist das sogenannte Kennfeld des Reglers (Bild 1).

Im Rahmen der Fuzzy-Regelung versucht man nun, direkt – ohne Rückgriff auf ein mathematisches Modell des Systems – eine Regelstrategie zu beschreiben. Man gewinnt sie etwa, indem man einen kompetenten Systembediener fragt oder beobachtet. In der Wissensbasis eines Fuzzy-Reglers ist die Regelstrategie denn auch in Form umgangssprachlicher Regeln festgelegt, zum Beispiel: "Wenn die Differenz zwischen Soll und Ausgangswert und die Änderung dieser Differenz ungefähr null sind, dann soll die Stellgröße einigermaßen konstant gehalten werden." Diese Regeln allein – so die Idealvorstellung – sollen ausreichen, den Regler vollständig zu berechnen.

Umgangssprachlich umschriebene (sogenannte linguistische) Werte wie "ungefähr null" oder "sehr groß" werden in der Theorie durch unscharfe Mengen repräsentiert. Bei einer gewöhnlichen Menge kann man von jedem Gegenstand eindeutig bestimmen, ob er dazugehört oder nicht; entsprechend trifft in der klassischen Logik eine Eigenschaft wie "groß" auf einen Gegenstand entweder uneingeschränkt zu oder gar nicht. Das zwingt den, der mit solchen Begriffen arbeitet, eine scharfe, häufig willkürliche Grenze zwischen "groß" und "nicht groß" festzulegen. Im Gegensatz dazu kann in der Fuzzy Logic eine Eigenschaft auf einen Gegenstand bis zu einem gewissen Grad zutreffen, repräsentiert durch eine Zahl zwischen 0 und 1.

Eine unscharfe Menge ordnet jedem Gegenstand einen solchen Zugehörigkeitsgrad zu (der nicht als Wahrscheinlichkeit zu interpretieren ist). Damit sind vage Konzepte wie "ungefähr null" realistischer modellierbar; denn eine unscharfe Menge ermöglicht einen weichen Übergang von den Werten, die mit Sicherheit als ungefähr null angesehen werden dürfen, zu denen, für die das mit Sicherheit nicht gilt: Der Grad der Zugehörigkeit zu der unscharfen Menge, die den Begriff "ungefähr null" repräsentiert, wird mit zunehmendem Abstand von null kleiner. Üblicherweise beschränkt man sich auf einfache Zugehörigkeitsfunktionen mit der Form eines Dreiecks, eines Trapezes oder einer Gaußschen Glockenkurve, die sich mit wenigen Parametern festlegen lassen (Bild 2 oben).

Die in der Wissensbasis eines Fuzzy-Reglers gespeicherten Regeln sind Anweisungen, die verschiedene linguistische Werte – für die Eingangsgrößen und in der Regel für nur eine Stellgröße – miteinander in Beziehung setzen. Um zu garantieren, daß zu jedem Wert, den die Eingangsgrößen annehmen können, auch mindestens eine passende Regel in der Wissensbasis vorhanden ist, sollten die den linguistischen Werten zugeordneten unscharfen Mengen den gesamten Wertebereich der jeweiligen Variablen vollständig überdecken: Es ist eine unscharfe Zerlegung (fuzzy partition) des Wertebereichs zu bilden (Bild 2 unten). Bei der Formalisierung wird also aus jeder Regel eine Verknüpfung unscharfer Mengen aus dem Bereich der Eingangs- beziehungsweise Stellgrößen. Diese ist ihrerseits wieder eine unscharfe Menge; nur sind die Gegenstände, für die sie einen Zugehörigkeitsgrad angibt, nicht einzelne Werte, sondern Paare (oder Tripel und so weiter) von Werten aus Eingangs- und Stellgrößen. Die bildliche Darstellung ist dementsprechend nicht mehr (beispielsweise) ein Dreieck auf der x- oder z-Achse, sondern eine Pyramide auf der (x,z)-Ebene (Bild 3). Die mathematische Operation, die aus zwei Dreiecken eine Pyramide macht, ist die Bildung des Minimums über die beiden Zugehörigkeitsfunktionen.

Wie ist die unscharfe Menge, die zu einer Regel gehört, zu interpretieren? Beispielsweise ist die mittlere Pyramide in Bild 3 aus der Regel "Wenn x ungefähr 40 ist, dann stelle z ungefähr auf 200" hervorgegangen. Ihre Spitze hat die Höhe 1, was volle Zugehörigkeit bedeutet. Auf die Frage "Wenn x=40 ist, soll ich dann z auf 200 stellen?" würde die Regel also mit einem klaren Ja antworten, auf die Frage "Soll ich bei x=40 z auf 400 stellen?" mit einem ebenso klaren Nein. Auf die Frage "Wenn x=35 ist, soll ich dann z auf 150 stellen?" käme eine gleichsam halbherzige Antwort: ein 50prozentiges Ja.

Die Pyramiden zu allen Regeln dürfen sich gegenseitig durchdringen; sie fügen sich insgesamt zu einem Gebirge, das den Regler vollständig charakterisiert. (Dieses Gebirge ist nicht mit dem Kennfeld des Reglers zu verwechseln. Das in Bild 1 gezeigte Kennfeld bezieht sich auf zwei Eingangsgrößen; das zu demselben Regler gehörige Pyramidengebirge liegt in einem vierdimensionalen Raum, der nicht mehr bildlich darstellbar ist.)

Liegen nun im Betrieb für die Eingangsgrößen bestimmte Werte vor, ermittelt der Regler für jede Regel ihren Erfüllungsgrad. Er fragt gewissermaßen jede Pyramide nach ihrer Meinung zu den vorliegenden Eingangsgrößen. Die Gesamtheit der Meinungen – genauer: das Maximum der Erfüllungsgrade jeder Regel – ergibt eine unscharfe Menge über der Stellgröße, also ein Sortiment mehr oder weniger eindeutiger Anweisungen:

"Soll ich auf 0 stellen?"

"Nein."

"Soll ich auf 150 stellen?"

"50 Prozent ja."

"Soll ich auf 200 stellen?"

"30 Prozent ja." Und so weiter.

Um zu bestimmen, was der Regler nun wirklich tun soll, muß man daraus eine klare Anweisung mit einem wohlbestimmten Zahlenwert machen. Dieser Prozeß heißt Defuzzifizierung. Man bildet dazu eine Art gewichteten Durchschnitt aller dieser Anweisungen: Je höher die Überzeugung ist, mit welcher der Regler eine Handlungsalternative vertritt – das heißt, je höher der Zugehörigkeitsgrad für diesen Wert der Stellgröße ist –, desto gewichtiger geht sie in die Mittelwertsbildung ein. Bei einem häufig angewandten Defuzzifizierungs-Verfahren wählt man den Wert der Stellgröße unter dem Schwerpunkt der durch die Zugehörigkeitsfunktion begrenzten Fläche (Bild 4). Dadurch haben die Werte mit geringerem Zugehörigkeitsgrad geringeren Einfluß auf den defuzzifizierten Wert, werden aber trotzdem berücksichtigt.

Bei Fuzzy-Reglern eines speziellen Typs, die nach ihrem Erfinder Michio Sugeno vom Tokyo Institute of Technology benannt sind, gibt man anstelle der linguistischen Werte für die Stellgröße scharfe Werte vor, so daß die abschließende Defuzzifizierung sich auf die Bildung eines gewichteten Mittelwerts reduziert.

So plausibel das hier beschriebene Prinzip auch klingen mag – die Schwierigkeit seiner Realisierung steckt, wie üblich, im Detail. Der erste Entwurf der Regelbasis und der entsprechenden fuzzy partitions liefert zwar häufig sehr schnell eine Regelung, die das System in groben Zügen unter Kontrolle bringt; aber für eine genauere oder gar optimale Regelung muß man die Definition der unscharfen Mengen, der Wissensbasis und eventuell einiger mathematischer Operationen in aufwendiger Feinarbeit nachbessern. Meistens bleibt einem nichts weiter als Probieren.

Das liegt vor allem daran, daß sich die Optimierung eines Fuzzy-Reglers nicht ohne weiteres in einfache Regeln fassen läßt. Es reicht beispielsweise nicht aus, einem Fahranfänger zu sagen, daß er zum Anfahren die Kupplung langsam kommen lassen soll – er muß dafür aus der Erfahrung ein kaum in Worten faßbares Feingefühl entwickeln.

Neuronale Netze

An dieser Stelle können neuronale Netze ihre Stärken ausspielen. Sie werden auch als konnektionistische Systeme bezeichnet; aber ihren üblichen Namen tragen sie, weil ihre Struktur und Arbeitsweise sich im weitesten Sinne an Vorgänge im Gehirn anlehnen. Ihre wesentliche Eigenschaft ist Lernfähigkeit: Sie können aus vorgegebenen Beispielen lernen, eine Aufgabe zu erfüllen (Spektrum der Wissenschaft, November 1992, Seite 134).

In gewissem Sinne tut ein neuronales Netz dasselbe wie ein Fuzzy-Regler: Es approximiert eine unbekannte Funktion anhand vorgegebener Daten. Ein schwerwiegender Nachteil ist jedoch sein Mangel an Transparenz. Ein neuronales Netz lernt zwar, aber der Betrachter lernt nichts aus dem Netz. Wissen in Form von Regeln ist meist nicht aus dem System zu gewinnen.

Ein neuronales Netz besteht im wesentlichen aus einfachen Verarbeitungseinheiten, eben den Neuronen, und Verbindungen zwischen ihnen, die wie jene der echten Nervenzellen als Synapsen bezeichnet werden. Wie das biologische Vorbild ist eine Synapse eine Einbahnverbindung: Sie vermittelt die Aktivität des Ausgangsneurons an das Zielneuron – wie stark und mit welchem Vorzeichen, das hängt von einem zahlenmäßigen Parameter ab, dem Gewicht der Verbindung, auch Kopplungsstärke genannt. Die Aktivität eines Neurons kann je nach Netztyp beispielsweise die Werte +1 und -1 oder auch jeden Wert zwischen 0 und 1 annehmen. Ein neuronales Netz lernt, indem es die Verbindungsgewichte geeignet verändert.

Im Prinzip kann jedes Neuron in einem Netz mit jedem verbunden sein. Üblicherweise sind jedoch die Neuronen, etwa nach dem Vorbild des menschlichen Sehsystems, in Schichten angeordnet. Jede Schicht empfängt Information nur von der unmittelbar vorgelagerten.

Die Neuronen der ersten Schicht, die Eingabeneuronen, erhalten ihre Aktivität von außen vorgegeben, entsprechend den Sinneszellen des natürlichen Vorbilds. Alle anderen wenden zunächst die sogenannte Propagierungsfunktion an: Sie summieren die Aktivitäten der ihnen vorgelagerten Neuronen, jeweils multipliziert mit dem Gewicht der Verbindung. Dann bestimmen sie ihre eigene Aktivität nach dem Zahlenwert dieser Summe. Diese Aktivierungsfunktion ist im einfachsten Falle eine Schwellenwertfunktion: Je nachdem, ob die Summe einen vorgegebenen Wert überschreitet oder nicht, ist die Aktivität +1 oder -1.

Die Neuronen der letzten Schicht heißen Ausgabeneuronen. Ihre Aktivität ist das Ergebnis, das ein neuronales Netz berechnet.

Das einfachste neuronale Netz ist das bereits 1958 von Frank Rosenblatt an der Cornell-Universität in Ithaca (New York) entwickelte Perceptron. Es besteht lediglich aus einer Ein und einer Ausgabeschicht und kann dementsprechend nur sehr einfache Aufgaben lösen. Zur Bewältigung komplexer Aufgaben muß man weitere Schichten einfügen.

So, wie wir bis jetzt neuronale Netze beschrieben haben, tun sie nichts weiter, als eine Funktion zu berechnen, nämlich aus einer Eingabe eine eindeutig bestimmte Ausgabe zu machen. Was bedeutet nun Lernen?

Eine typische Aufgabe ist die feste Lernaufgabe. Dabei soll das Netz zu einem Sortiment vorgegebener Eingaben zugehörige gewünschte Ausgaben zu reproduzieren lernen, das heißt, ohne Hilfe von außen allmählich eine Funktion finden, die an gewissen Punkten (den Eingaben) vorgeschriebene Werte (die Ausgaben) annimmt – zumindest näherungsweise.

Zu Beginn sind die Gewichte des neuronalen Netzes zufällig eingestellt. Das Netz erhält eine Eingabe; durch den Vergleich der von ihm erzeugten mit der gewünschten Ausgabe berechnet man den Fehler und verändert daraufhin die Gewichte mit dem Ziel, den Fehler zu verringern. Diesen Prozeß wiederholt man vielfach. Es braucht im allgemeinen einige hundert bis mehrere tausend Lernzyklen, bis ein stabiler Zustand erreicht ist, der Fehler also nicht mehr abnimmt.

Der bekannteste Lernalgorithmus für neuronale Netze heißt Backpropagation. Man reicht den quantitativen Fehler, den das Netz macht, gewissermaßen von der Ausgabeschicht an die vorhergehenden Schichten zurück, bis die Eingabeschicht erreicht ist – daher der Name (wörtlich: "Rückwärts-Weitergabe"). Gleichzeitig werden die Gewichte angepaßt.

Mathematisch ist Backpropagation ein Gradientenverfahren zur Minimierung des Ausgabefehlers: In einem gedachten Gebirge in einem hochdimensionalen abstrakten Raum, das die Abhängigkeit des Fehlers von den Gewichten wiedergibt, bewegt man sich ein Stück in der Richtung, in der es am steilsten abwärts geht. Nach vielen derartigen Schritten wird man am tiefsten Punkt eines Tales angelangt sein – einem lokalen Minimum des Fehlers.

Dieses Lernverfahren heißt überwachtes Lernen, weil das Netz sozusagen einen Lehrer braucht, der ihm sagt, was richtig ist. Das verstärkende Lernen kommt mit weniger Beeinflussung durch einen Lehrer aus: Es wird nur noch das Vorzeichen des Fehlers benötigt, nicht aber sein exakter Wert. Das nicht-überwachte Lernen schließlich verlangt nicht einmal eine vorgegebene Ausgabe. Vielmehr soll das Netz lediglich lernen, auf ähnliche Eingaben mit ähnlichen Ausgaben zu reagieren. Die Daten sollen wie bei einer Clusteranalyse in möglichst homogene Gruppen eingeteilt werden.

Ein Typ neuronaler Netze mit dieser Fähigkeit sind die in den siebziger Jahren von dem Elektrotechnik-Professor Teuvo Kohonen an der Universität Helsinki entwickelten selbstorganisierenden Karten. Sie bestehen aus einer Eingabe und einer Wettbewerbsschicht; die Neuronen der letzteren sind auch untereinander verbunden. Jedes von ihnen empfängt Information von jedem Neuron der Eingabeschicht. Die Gewichte der eingehenden Verbindungen eines Neurons sind als ein aus einzelnen Punkten aufgebautes, vorgefaßtes Bild von der gesamten Eingabeschicht interpretierbar.

Wird dem Netz nun eine Eingabe präsentiert, vergleicht jedes Neuron der Wettbewerbsschicht sie mit seinem vorgefaßten Bild, dem sogenannten Gewichtsvektor; je besser dieser Vergleich ausfällt, desto mehr wird es aktiviert. Dasjenige mit der maximalen Aktivität unterdrückt über die Querverbindungen alle anderen. Der Sieger vereinigt also die gesamte Aktivität auf sich, und alle anderen gehen leer aus. Eine selbstorganisierende Karte lernt, indem der Sieger und die Neuronen in seiner näheren Umgebung ihre Gewichtsvektoren so verändern, daß sich bei erneuter Präsentation derselben Eingabe eine noch größere Übereinstimmung ergibt.

Alles, was ein neuronales Netz (jedweden Typs) gelernt hat, ist in den Gewichten codiert. Freilich lassen sich daraus kaum strukturelle Informationen gewinnen. Man hat also im günstigsten Fall ein System, das eine Lernaufgabe vollständig löst, nur weiß man nicht, wie: Das Netz stellt sich als black box dar.

Formen der Kombination

Unsere eigene Erfahrung mit den Problemen bei der exakten Einstellung von Fuzzy-Systemen hat uns motiviert, die Ende der achtziger Jahre einsetzende Diskussion aufzugreifen, wie man die Transparenz der Fuzzy-Systeme mit der Lernfähigkeit der neuronalen Netze vorteilhaft vereinigen könnte. Schwere strukturelle Mängel der frühen Ansätze veranlaßten uns, eigene neue Systeme zu entwickeln, die sich durch eine saubere, konsistente Modellierung auszeichnen.

Betrachten wir jedoch zunächst einige herkömmliche Ansätze. Man kann sie grob in zwei Klassen gliedern.

In kooperativen Systemen verwendet man neuronale Netze, um einen Teil der zahlenmäßigen Parameter, die ein Fuzzy-System bestimmen, zu optimieren. Das so optimierte Fuzzy-System arbeitet dann im Betrieb ohne das neuronale Netz. Hingegen vereinigt ein hybrides System beide Prinzipien in sich: Man kann es ebenso als spezielles neuronales Netz wie als gewöhnliches Fuzzy-System interpretieren; eine Trennung in Teilsysteme der einen oder anderen Art ist nicht mehr möglich.

Mit dem Begriff "Neuro-Fuzzy" werden auch solche Systeme belegt, die ein Fuzzy-System und ein neuronales Netz getrennt zur Bewältigung von Teilen desselben Problems einsetzen. So kann sich ein neuronales Netz um den Teil kümmern, über den kein Regelwissen vorhanden ist, während das Fuzzy-System das Wissen über den anderen Teil der Problemlösung nutzt.

Nicht immer enthält ein Neuro-Fuzzy-System ein neuronales Netz in expliziter Form. Vielfach werden lediglich Lernverfahren neuronaler Netze in ein Fuzzy-System integriert.


Kooperative Systeme

Ein Fuzzy-System ist einerseits bestimmt durch die Angabe der unscharfen Mengen, das heißt der Zugehörigkeitsfunktionen, die hinter linguistischen Begriffen wie "niedrige Temperatur" stecken, andererseits durch die Angabe der Regeln, das heißt der Vorschriften zur Verknüpfung dieser Mengen. Sowohl Mengen als auch Regeln sind durch jeweils relativ wenige zahlenmäßige Parameter beschreibbar.

Ein kooperatives Neuro-Fuzzy-System kann nun entweder unscharfe Mengen bei festgelegten Regeln lernen oder Regeln bei unveränderlichen unscharfen Mengen. Gibt man beide zugleich zur Variation frei, versinkt das System im Chaos der Beliebigkeit; erst die mächtigeren hybriden Systeme vermögen eine solche Aufgabe zu bewältigen. Es ist jedoch gelegentlich sinnvoll, zwischen beiden Lernverfahren abzuwechseln.

Wenn nun im ersten Falle ein Fuzzy-System mit vollständiger und fest vorgegebener Regelbasis eine schlechte Leistung zeigt, führt man das auf eine nicht-optimale Modellierung der in den Regeln verwendeten unscharfen Mengen zurück. Man läßt also beispielsweise die Regel "Wenn die Temperatur niedrig ist, drehe das Ventil weit auf" unangetastet und veranlaßt statt dessen das System, seine Vorstellung von "niedriger Temperatur" zu revidieren. Das läuft darauf hinaus, die Parameter der zugehörigen unscharfen Menge in Richtung auf ein erwünschtes Verhalten anzupassen – Position und Gestalt der Pyramiden aus Bild 3 müssen sich geeignet verändern. Dafür kann man ein Backpropagation-Verfahren einsetzen, bei dem an die Stelle der zu optimierenden Gewichte diese Parameter treten. Man verwendet also nicht ein neuronales Netz, sondern nur dessen Lernalgorithmus.

Das erwähnte Fehlergebirge ist ebenso glatt oder scharfkantig wie die zur Modellierung der unscharfen Mengen verwendeten Funktionen. Ein Gradientenverfahren wie Backpropagation wird indes durch scharfe Kanten in die Irre geführt, denn es ist darauf angewiesen, daß die Richtung des steilsten Abstiegs, der es folgt, sich von Schritt zu Schritt nicht allzu abrupt ändert. Deswegen verwendet man in diesem Falle nicht die scharfkantigen Dreiecksfunktionen, sondern vorzugsweise die glatten (überall differenzierbaren) Gaußschen Glockenkurven.

Minimum- und Maximumbildung führen zusätzliche Kanten in das Verfahren ein. Deswegen ersetzt man die Minimumbildung bei der Regelauswertung durch die Produktbildung; die Maximumbildung, die der Defuzzifizierung vorausgehen müßte, vermeidet man, indem man sich auf Regler vom Sugeno-Typ beschränkt.

Wenn man einem System die Freiheit gibt, unscharfe Mengen (also die mathematische Interpretation unscharfer Begriffe) zu verändern, muß man Sorge tragen, daß die wesentlichen Stärken eines Fuzzy-Systems – Transparenz und Interpretierbarkeit – nicht beeinträchtigt werden. Läßt man beispielsweise die unscharfen Mengen verschiedener Regeln unabhängig voneinander variieren, versteht am Ende möglicherweise die eine Regel unter "niedriger Temperatur" etwas anderes als die andere; oder die unscharfe Menge für "niedrige Temperatur" rutscht in einen Bereich, den man umgangssprachlich eher als heiß bezeichnen würde. Solche Verirrungen des Lernalgorithmus muß man durch geeignete Beschränkungen verhindern.

Für die andere Lernstrategie – Finden optimaler Regeln bei fest vorgegebenen unscharfen Mengen – sind beispielsweise selbstorganisierende Karten geeignet. Wie bei einer festen Lernaufgabe wird dem Netz zunächst ein großes Sortiment an Beispielen vorgelegt; bei der Heizungsregelung wären das Paare aus Temperatur und daraufhin gewählter Stellung des Heizkörperventils. Allerdings wird in diesem Stadium noch nicht zwischen Eingangs- und Stellgrößen unterschieden. Das Netz schaut gewissermaßen einem erfahrenen Anlagenbediener eine Weile zu; so wie es konstruiert ist, finden seine Wettbewerbsneuronen im Verlauf des Lernprozesses Regelhaftigkeiten im Verhalten des Bedieners. So wird sich etwa ein Neuron darauf spezialisieren, eine Kombination aus niedriger Temperatur und weit offener Ventilstellung zu erkennen, wenn derartige Kombinationen nur hinreichend häufig in der Beispielsammlung vorkommen.

Erst nach Abschluß der Trainingsphase werden in einem gesonderten Rechenverfahren die gefundenen Regelhaftigkeiten mit Hilfe der vorgegebenen unscharfen Mengen ausgedrückt. Dadurch gewinnt das System ohne Vorwissen eine Regelbasis (Kasten): Aus der Erfahrung "Wenn x vorliegt, pflegt der Bediener z einzustellen" wird die Anweisung "Wenn x vorliegt, dann stelle z ein".

Die bisher beschriebenen Systeme lernen vor dem eigentlichen Betrieb (off-line); das resultierende Fuzzy-System gelangt erst zum Einsatz, wenn der Lernvorgang abgeschlossen ist. Hingegen lernt ein On-line-System im laufenden Betrieb. Am Anfang stattet man es mit einer Regelbasis aus, die zunächst nur grob entworfene unscharfe Mengen verwendet. Während das System arbeitet, wird seine Leistung bewertet; weicht sie von der gewünschten erheblich ab, ist das der Anlaß für eine Fehlerkorrektur, etwa nach dem Backpropagation-Verfahren. Ebenso können Regeln anstelle der unscharfen Mengen on-line optimiert werden. Ein solches Verfahren ist freilich nur praktikabel, wenn ein Versagen des Systems keinen allzugroßen Schaden verursacht (beispielsweise Ihr Wellensittich nicht vom Erfrierungstod bedroht ist) oder wenn man das System statt am echten Objekt an einer Simulation üben läßt.

Ein On-line-System kann weiterlernen und sich so Änderungen der Aufgabe jederzeit anpassen. In diesem Falle werden die zur Optimierung herangezogenen neuronalen Netze (oder neuronalen Lernverfahren) nicht, wie sonst üblich, nach Abschluß des Trainings aus dem System entfernt.


Hybride Systeme

Ein System, das unscharfe Mengen und Fuzzy-Regeln zugleich erlernt, muß Eigenschaften von neuronalen Netzen und Fuzzy-Systemen untrennbar in sich vereinigen. Frühe hybride Modelle arbeiteten mit einem spezialisierten neuronalen Netz, dessen Gewichte zu Anfang des Lernprozesses nicht zufällig, sondern nach den Vorgaben eines Fuzzy-Systems gesetzt wurden. Ihre Leistung ging jedoch nicht wesentlich über die eines kooperativen Systems der ersten Art hinaus: Sie konnten nur unscharfe Mengen erlernen, und die Interpretierbarkeit ging im Laufe des Lernprozesses meistens verloren. Modernere Forschungsansätze beruhen dagegen auf dem formalen Modell eines Fuzzy-Perceptrons.

Dabei macht man sich zunutze, daß die Arbeit eines Fuzzy-Systems aus zwei Schritten – Regeln auswerten und die Ergebnisse dieser Auswertung vereinigen – besteht, deren jeder aus einer Anzahl parallel durchzuführender Einzelaktionen besteht. Indem man jede Einzelaktion einem eigenen kleinen Prozessor – einem Neuron – zuweist und die Verbindungen zwischen den Neuronen genau so knüpft, wie die Daten fließen sollen, erhält man ein neuronales Netz, das die Arbeit eines Fuzzy-Systems verrichtet. Insbesondere kann man speziell für neuronale Netze konstruierte Hardware einsetzen, die durch Ausnutzen der Parallelität besonders schnell arbeitet. Allerdings geht ein wesentliches Merkmal klassischer neuronaler Netze verloren: Die Elemente und ihre Funktionen sind nicht mehr gleichartig.

Ein Fuzzy-Perceptron ist von einem dreischichtigen Perceptron abgeleitet. An die Stelle der zahlenmäßigen Gewichte auf den Verbindungen treten unscharfe Mengen; die Aktivierungs und die Propagierungsfunktionen werden entsprechend modifiziert. Jedes Eingabeneuron repräsentiert eine Eingangsgröße, jedes Neuron der inneren Schicht eine Regel und jedes Ausgabeneuron eine Stellgröße.

Die Propagierungsfunktion zwischen Eingabe- und innerer Schicht bestimmt die Zugehörigkeitsgrade der Eingaben zu den Fuzzy-Gewichten der entsprechenden Verbindungen. Durch eine Minimumbildung bestimmt die Aktivierungsfunktion einer inneren Einheit daraus den Erfüllungsgrad einer Regel. Die Propagierungsfunktion zwischen innerer und Ausgabeschicht verknüpft daraufhin die Erfüllungsgrade mit den unscharfen Gewichten der zur Ausgabe führenden Verbindungen. Die Aktivierungsfunktion einer Ausgabeeinheit schließlich faßt die ankommenden modifizierten unscharfen Mengen zu einer einzigen zusammen und führt eine Defuzzifizierung durch.

Damit ein solches Modell immer eindeutig als Fuzzy-System interpretiert werden kann, müssen die erwähnten Einschränkungen für den Lernvorgang getroffen werden. Durch Kopplungen zwischen den Verbindungen stellt man sicher, daß anfangs gleiche unscharfe Mengen sich nicht unterschiedlich entwickeln können.

Der Lernalgorithmus zur Anpassung der Fuzzy-Mengen beruht meist auf Variationen des Backpropagation-Verfahrens. Das von uns entwickelte NEFCON-Modell (neuro fuzzy control; Bild 5) lernt on-line durch verstärkendes Lernen mit einer interessanten Variante: Der Fehler wird nicht mehr als Zahl (oder Zahlenvektor) beschrieben, sondern ebenfalls als unscharfe Menge. Das gibt dem Benutzer die Freiheit, nicht nur die Regeln in Umgangssprache auszudrücken, sondern auch das, was er will. Das ist realistisch; denn normalerweise besteht niemand darauf, daß eine Raumtemperatur von 22 Grad auf ein Zehntelgrad genau eingehalten wird. Es genügt also, eine Maßgabe zu formulieren wie etwa "Wenn die Temperatur angenehm ist, dann ist die Leistung hoch (der Fehler niedrig)". Diese wertet das System aus wie jede Regel und zieht sie zur Anpassung der Systemparameter (der unscharfen Mengen) heran.

Für das Erlernen von Fuzzy-Regeln mit einem solchen System gibt es zwei Möglichkeiten: Man beginnt ohne Regeln und fügt eine nach der anderen hinzu, bis die Leistung zufriedenstellend ist, oder man beginnt mit einer Basis aus allen möglichen erzeugbaren Regeln und streicht nicht benötigte nacheinander wieder heraus.

Der erste Weg ist weniger aufwendig, aber bei on-line operierendem verstärkendem Lernen gewöhnlich nicht anwendbar. Eine optimale Ausgabe, welche die Konklusion einer neu zu bildenden Regel darstellen würde, ist vorab nicht bekannt; das System müßte sie also gewissermaßen ins Blaue raten und dann langwierig nachbessern. Diese Variante bietet sich deshalb für Aufgaben an, bei denen die Ausgabe bekannt ist.

Die zweite Möglichkeit ist für on-line lernende Modelle geeignet. Sie ist jedoch von extremer Komplexität bedroht, wenn viele Variablen und unscharfe Mengen zu berücksichtigen sind: Bei zwei Eingangs und einer Stellgröße mit einer fuzzy partition in je acht Mengen gibt es 512, bei vier Eingangsgrößen bereits 32768 mögliche Regeln. Nur für relativ kleine Aufgaben hält sich der Aufwand für vollständiges Lernen in erträglichen Grenzen. Meist läßt sich eine Regelbasis jedoch zumindest partiell angeben, so daß nur ein Teil der Regeln hinzugelernt werden muß. Eine Lösung unseres Eingangsproblems, in dem ein hybrides Neuro-Fuzzy-System die Regelung Ihrer Heizung übernimmt, könnte folgendermaßen aussehen: Zunächst legen Sie durch die Angabe von unscharfen Mengen fest, welche Temperaturen Sie als angenehm empfinden und welche nicht, zum Beispiel durch eine Einteilung der Temperaturskala in die linguistischen Werte "zu niedrig", "angenehm" und "zu hoch". Anschließend bekommt das System den Auftrag, die Temperatur im angenehmen Bereich zu halten, und erhält die Kontrolle über das Heizungsventil.

Da das System bisher noch keinerlei Kenntnis über das korrekte Vorgehen hat, müssen Sie nun eine etwas chaotische Heizperiode überstehen, in der das System herauszufinden versucht, welche Fuzzy-Regeln eine angenehme Temperatur ergeben: Es überprüft, in welchem Grade die aktuelle Temperatur Ihrer Vorstellung von angenehm entspricht. Besteht keine ausreichend hohe Übereinstimmung, weiß das System, daß es sich in einem Fehlerzustand befindet, und bewertet diejenigen Regeln als schlecht, die diesen Zustand herbeigeführt haben. Entspricht die aktuelle Temperatur hingegen der Bedingung "angenehm", werden die verantwortlichen Regeln als gut bewertet.

Nach einer Weile hat das System durch Probieren und Bewerten selbständig eine Regelbasis gefunden und kann nun noch durch die Anpassung der unscharfen Mengen, die es zur Beschreibung der Temperatur verwendet, die Regelung optimieren. Dies geschieht nach demselben Schema: Wenn das System sich als im Fehlerzustand befindlich erkennt, verändert es die Definition seiner unscharfen Mengen so, daß bei erneutem Eintreten derselben Temperaturbedingungen eine Ventileinstellung resultiert, die eine angenehmere Temperatur zur Folge hat. Abschließend können Sie sich die Regeln und die Mengen anzeigen lassen und auf ihre Plausibilität hin überprüfen.

Sie haben somit nicht nur eine Lösung des Problems erhalten, sondern zusätzlich noch Wissen über diese Lösung. Das Neuro-Fuzzy-System dient also auch dem Wissenserwerb, einer wichtigen Eigenschaft sogenannter intelligenter Systeme. Es entwickelt ähnlich wie ein Mensch nur durch Beobachtung des Prozeßverhaltens und mit einer Zielvorgabe eine geeignete Vorgehensweise.

Wer das Problem vollständig durchschaut, es formal (beispielsweise durch nichtlineare Differentialgleichungen) modellieren und dann auch noch lösen kann, hat selbstverständlich die Chance, die Lösung eines Neuro-Fuzzy-Systems noch weiter zu verbessern. Dieser totale Durchblick fehlt jedoch in der Regel gerade bei innovativen Produkten; und häufig ist die von einem einfachen Neuro-Fuzzy-System gefundene Lösung bereits so gut, daß sich in der wirtschaftlichen Praxis der oft immense Aufwand für eine optimale Problemlösung nicht lohnt.


Erste Anwendungen und weitere Forschung

In Japan werden neuronale Fuzzy-Systeme bereits in den verschiedensten Gebieten erfolgreich eingesetzt. Man findet sie in Waschmaschinen und Kopiergeräten wie auch in Systemen zur Bewertung von Börsenpapieren. Die Begriffe "Fuzzy Logic" und "Neuro" dienen vielfach als Werbeargumente. Dabei ist der Begriff Logik in einem sehr weiten, umgangssprachlichen Sinne zu verstehen. Methoden der mathematischen mehrwertigen Logik werden in den seltensten Fällen verwendet.

Während in Europa und den USA die Forschung in diesem Bereich gerade erst beginnt, flaut sie in Japan schon wieder ab. Der Zwang, neue Erkenntnisse möglichst schnell in High-Tech-Produkten zu vermarkten, erlaubt den dort eher anwendungsorientiert arbeitenden Forschern kaum, diese modernen Methoden tiefergehend zu analysieren. Unter dem Diktat rasch wechselnder Moden auch in der Technik kann nur wenig Grundlagenforschung stattfinden. Hier liegt eine Chance für europäische Forscher. Japan hat die ausgezeichnete Anwendbarkeit von Neuro-Fuzzy-Systemen demonstriert, so daß wissenschaftlicher Einsatz dafür nicht erklärungsbedürftig ist.

Wir sehen neuronale Fuzzy-Systeme als einen Beitrag, wissensbasierte Systeme leistungsfähiger und flexibler zu machen, ohne daß ihre Interpretierbarkeit und Transparenz dabei verloren ginge. Damit gehören diese Verfahren zu den unter den Schlagwörtern soft computing oder computational intelligence firmierenden interdisziplinären Ansätzen der Informationsverarbeitung, die Vagheit und Unsicherheit bewußt tolerieren und nutzen, um zu effizienten, handhabbaren und insbesondere preisgünstigen Problemlösungen zu gelangen. Aus Sicht der Forschung und auch für spätere Anwendungen ist es wichtig zu klären, wo genau diese Verfahren gegenüber klassischen Methoden Vorteile bei der Entwicklung intelligenter Systeme bieten.

Literaturhinweise

- Neuronale Netze und Fuzzy-Systeme. Von Detlef Nauck, Frank Klawonn und Rudolf Kruse. Vieweg, Wiesbaden 1994.

– Fuzzy-Systeme. Von Rudolf Kruse, Jörg Gebhardt und Frank Klawonn. 2. Auflage. Teubner, Stuttgart 1995.

– Unsicheres Wissen. Von Marcus Spies. Spektrum Akademischer Verlag, Heidelberg 1993.

– Fuzzy Set Theory – and its Applications. Von Hans-Jürgen Zimmermann. 2., überarbeitete Auflage. Kluwer, Dordrecht 1991.

– Neuronale Netze. Von Helge Ritter, Thomas Martinetz und Klaus Schulten. 2., überarbeitete Auflage. Addison-Wesley, Bonn 1991.

– Neuronale Netze in der Automatisierungstechnik. Herausgegeben von Sigrid Hafner. Oldenbourg, München 1994.


Aus: Spektrum der Wissenschaft 6 / 1995, Seite 34
© Spektrum der Wissenschaft Verlagsgesellschaft mbH
6 / 1995

Dieser Artikel ist enthalten in Spektrum der Wissenschaft 6 / 1995

Kennen Sie schon …

27/2020

Spektrum - Die Woche – 27/2020

Spezial Biologie - Medizin - Hirnforschung 1/2020

Spektrum der Wissenschaft – Spezial Biologie - Medizin - Hirnforschung 1/2020: Künstliche Intelligenz

Informatik: Der Siegeszug der neuronalen Netze • Lernalgorithmen: Maschinen imitieren kindlichen Verstand • Ethik: Ein Roboter muss auch Nein sagen können

Dossier 4/2019

Gehirn&Geist – Dossier 4/2019: Die Eroberung des Gehirns

Die Eroberung des Gehirns: Wegweisende Methoden – neue Einsichten: Organoide: Minihirne aus dem Baukasten • Hirnscans: Was die bunten Bilder aussagen • Neuronale Netze: Dem Schaltplan auf der Spur

Lesermeinung

Beitrag schreiben

Wir freuen uns über Ihre Beiträge zu unseren Artikeln und wünschen Ihnen viel Spaß beim Gedankenaustausch auf unseren Seiten! Bitte beachten Sie dabei unsere Kommentarrichtlinien.

Tragen Sie bitte nur Relevantes zum Thema des jeweiligen Artikels vor, und wahren Sie einen respektvollen Umgangston. Die Redaktion behält sich vor, Leserzuschriften nicht zu veröffentlichen und Ihre Kommentare redaktionell zu bearbeiten. Die Leserzuschriften können daher leider nicht immer sofort veröffentlicht werden. Bitte geben Sie einen Namen an und Ihren Zuschriften stets eine aussagekräftige Überschrift, damit bei Onlinediskussionen andere Teilnehmer sich leichter auf Ihre Beiträge beziehen können. Ausgewählte Lesermeinungen können ohne separate Rücksprache auch in unseren gedruckten und digitalen Magazinen veröffentlicht werden. Vielen Dank!