7
Automatisieren Fuzzy-Logik Prof. Dr.-lng. Karl Goser Dipl.-lnform. Hartmut Surmann Clevere Regler schnell entworfen Anwender können Fuzzy-Regler für ihre eigenen Regelprobleme aufbauen In den Massenmedien erscheinen täglich neue Artikel über Produk- te, die „Fuzzy-Logik " beinhalten. Dennoch ist es oft schwer, daraus zu erkennen, wie Fuzzy-Logik funktioniert und wie sie übergrei- fend anzuwenden ist. Die nähere Betrachtung eines „Fuzzy-Control- lers " (unscharfer Regler) soll das verdeutlichen. Hierbei wurde der Algorithmus in einem C-Programm implementiert und mit einer einfa- chen externen Schnittstelle verse- hen. Damit können Sie nicht nur die Funktionsweise nachvollzie- hen, sondern einen Fuzzy-Control- lerfür Ihr spezielles Regelungs- problem schnell realisieren. F uzzy-Logik heißt das neue Schlagwort in der Computerszene, ohne das sich in asiatischen Län- dern wie Japan nur noch schwer innovative Produkte verkaufen lassen. Nicht nur in der Konsumelektronik findet die unscharfe Logik ihre Anwendung, sondern auch mehr und mehr für Automatisierungsaufgaben wie beispielsweise für Regelprobleme. Wann aber ist es sinnvoll, Fuzzy anzuwenden? Wozu wir unscharfe Regler brauchen Unscharfe Regler werden eingesetzt, um „Faustfor- meln" und Intuition des menschlichen Experten, der mit der Prozeßsteuerung beschäftigt ist, sowie heuristi- sche Kontrollregeln in eine automatische Regelungs- strategie umzusetzen. Zu diesem Zweck besitzen die Fuzzy-Steuerregeln die gleiche linguistische Struktur wie Konditionalsätze, also If-Then-Regeln, die ein geeignetes Mittel zur Regelbeschreibung in der betrieb- lichen Praxis darstellen. Die Grundlage eines unscharfen Reglers ist somit kein exaktes mathematisches Modell. Sein Steueralgorith- mus besteht aus einer Menge dieser Steuerregeln, die durch die folgenden beiden Strategien miteinander ver- knüpft werden: O die „Fuzzy-Implikation" und O die „Compositional Rule of Inference". Im Gegensatz zu konventionellen Reglern, die auf einer Modellierung mit Differentialgleichungen auf- bauen und deshalb nur diskrete (scharfe) Werte akzep- tieren, arbeitet der unscharfe Regler mit unscharfen Werten. Dies erlaubt die Verarbeitung von sprachlichen Wertrelativierungen, wie z.B. „ungefähr", „mittel", „wenig" und vieles mehr. Die Stellgröße bzw. Ausgangs- größe setzt sich beim Einsatz eines unscharfen Reglers aus einem gewichteten Mittel aller Regeln zusammen, die bei einem bestimmten Systemzustand zumindest graduell Anwendung finden können. Aufgrund dieses Funktionsprinzips bietet ein unscharfer Regler auch die Option, in einfacher Weise ein für manche Anwendun- gen vorteilhaftes, nichtlineares Verhalten zu realisie- ren. Seine größte Bedeutung liegt aber in der Möglich- keit, Prozesse automatisch zu regeln, die entweder zu komplex sind, um sie in Echtzeit exakt zu modellieren, oder von denen gar kein „exaktes" mathematisches Modell existiert. Bild l zeigt den prinzipiellen Aufbau eines unschar- fen Reglers mit Anbindung an das zu regelnde System. Letzteres liefert die Meßgrößen, z.B. eine Temperatur oder eine Spannung, die im Zustands-Interface entspre- chend aufbereitet oder erweitert werden können, z.B. auf die Temperatur- oder Spannungsänderung. In der Recheneinheit werden dann mit Hilfe der Daten- und Regelbasis die Ausgangsgrößen ermittelt, im Aktions- Interface in entsprechende Regelgrößen umgesetzt und an das zu regelnde System weitergegeben. Zustands- und Aktions-Interface müssen entsprechend der Hard- ware-Umgebung und dem Problem angepaßt werden. Darauf wollen wir hier nicht weiter eingehen, denn in unserem Interesse steht der unscharfe Regler selbst, wobei die ersten Forschungsarbeiten schon ab 1971 von Zadeh, dem Erfinder der „Fuzzy-Logik", und Mam- dani durchgeführt wurden [l, 2, 3]. 60 Elektronik 6/1992

Clevere Regler schnell entworfen - volksbot.de · Fuzzy-Steuerregeln die gleiche linguistische Struktur wie Konditionalsätze, also If-Then-Regeln, die ein geeignetes Mittel zur Regelbeschreibung

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

AutomatisierenFuzzy-Logik

Prof. Dr.-lng. Karl GoserDipl.-lnform. Hartmut Surmann

Clevere Reglerschnell entworfenAnwender können Fuzzy-Reglerfür ihre eigenen Regelprobleme aufbauen

In den Massenmedien erscheinentäglich neue Artikel über Produk-te, die „Fuzzy-Logik " beinhalten.Dennoch ist es oft schwer, darauszu erkennen, wie Fuzzy-Logikfunktioniert und wie sie übergrei-fend anzuwenden ist. Die nähereBetrachtung eines „Fuzzy-Control-lers " (unscharfer Regler) soll dasverdeutlichen. Hierbei wurde derAlgorithmus in einem C-Programmimplementiert und mit einer einfa-chen externen Schnittstelle verse-hen. Damit können Sie nicht nurdie Funktionsweise nachvollzie-hen, sondern einen Fuzzy-Control-lerfür Ihr spezielles Regelungs-problem schnell realisieren.

Fuzzy-Logik heißt das neue Schlagwort in derComputerszene, ohne das sich in asiatischen Län-

dern wie Japan nur noch schwer innovative Produkteverkaufen lassen. Nicht nur in der Konsumelektronikfindet die unscharfe Logik ihre Anwendung, sondernauch mehr und mehr für Automatisierungsaufgabenwie beispielsweise für Regelprobleme. Wann aber ist essinnvoll, Fuzzy anzuwenden?

Wozu wir unscharfe Regler brauchen

Unscharfe Regler werden eingesetzt, um „Faustfor-meln" und Intuition des menschlichen Experten, dermit der Prozeßsteuerung beschäftigt ist, sowie heuristi-sche Kontrollregeln in eine automatische Regelungs-strategie umzusetzen. Zu diesem Zweck besitzen dieFuzzy-Steuerregeln die gleiche linguistische Strukturwie Konditionalsätze, also If-Then-Regeln, die eingeeignetes Mittel zur Regelbeschreibung in der betrieb-lichen Praxis darstellen.

Die Grundlage eines unscharfen Reglers ist somit keinexaktes mathematisches Modell. Sein Steueralgorith-mus besteht aus einer Menge dieser Steuerregeln, diedurch die folgenden beiden Strategien miteinander ver-knüpft werden:

O die „Fuzzy-Implikation" undO die „Compositional Rule of Inference".

Im Gegensatz zu konventionellen Reglern, die aufeiner Modellierung mit Differentialgleichungen auf-bauen und deshalb nur diskrete (scharfe) Werte akzep-

tieren, arbeitet der unscharfe Regler mit unscharfenWerten. Dies erlaubt die Verarbeitung von sprachlichenWertrelativierungen, wie z.B. „ungefähr", „mittel",„wenig" und vieles mehr. Die Stellgröße bzw. Ausgangs-größe setzt sich beim Einsatz eines unscharfen Reglersaus einem gewichteten Mittel aller Regeln zusammen,die bei einem bestimmten Systemzustand zumindestgraduell Anwendung finden können. Aufgrund diesesFunktionsprinzips bietet ein unscharfer Regler auch dieOption, in einfacher Weise ein für manche Anwendun-gen vorteilhaftes, nichtlineares Verhalten zu realisie-ren. Seine größte Bedeutung liegt aber in der Möglich-keit, Prozesse automatisch zu regeln, die entweder zukomplex sind, um sie in Echtzeit exakt zu modellieren,oder von denen gar kein „exaktes" mathematischesModell existiert.

Bild l zeigt den prinzipiellen Aufbau eines unschar-fen Reglers mit Anbindung an das zu regelnde System.Letzteres liefert die Meßgrößen, z.B. eine Temperaturoder eine Spannung, die im Zustands-Interface entspre-chend aufbereitet oder erweitert werden können, z.B.auf die Temperatur- oder Spannungsänderung. In derRecheneinheit werden dann mit Hilfe der Daten- undRegelbasis die Ausgangsgrößen ermittelt, im Aktions-Interface in entsprechende Regelgrößen umgesetzt undan das zu regelnde System weitergegeben. Zustands-und Aktions-Interface müssen entsprechend der Hard-ware-Umgebung und dem Problem angepaßt werden.Darauf wollen wir hier nicht weiter eingehen, denn inunserem Interesse steht der unscharfe Regler selbst,wobei die ersten Forschungsarbeiten schon ab 1971von Zadeh, dem Erfinder der „Fuzzy-Logik", und Mam-dani durchgeführt wurden [l, 2, 3].

60 Elektronik 6/1992

Unscharfe Mengen und Mitgliedschaftsfunktion

Eine Fuzzy-Menge oder auch unscharfe Menge kannals eine mathematische Beschreibung sprachlicherWertrelativierungen wie z.B. „ungefähr", „klein" oder„groß" aufgefaßt werden. Im Gegensatz zur konventio-nellen Mengentheorie, bei der die Frage nach der Mit-gliedschaft eines Wertes in einer Menge eine Ja/Nein-bzw. 1/0-Entscheidung ist, gibt es bei einer unscharfenMenge keine scharfe Abgrenzung, sondern kontinuierli-che Mitgliedschaftswerte zwischen 0 und 1.

Jeder unscharfen Menge i ist deshalb eine Mitglied-schaftsfunktion f*i(e) zugeordnet, die die Mitglied-schaftsgrade aller Elemente e für die unscharfe Menge iliefert (Beispiele s. Bild 2). Es gilt:

Automatisier

W : U-»[0,1]i = { (e, //i(e))

mit eU,

, d. h.

Wegen der Unscharfe sprachlicher Wertrelativierun-gen sind natürlich auch Überlappungen angrenzenderMitgliedschaftsfunktionen möglich und wichtig, wie esin Bild 3 gezeigt wird.

Die später für die unscharfen Mengen benötigtenGrundoperationen sind in Bild 4 zusammengefaßt.Dabei seien A, B, C unscharfe Mengen, U sei der Werte-bereich von e, also e € U.

Menschliche Erfahrung auf unscharfemRegler abbilden

Die Regelstrategie eines (menschlichen) „Prozeß-Steuerers" kann sprachlich als Menge von unpräzisenImplikationen (If-Then-Regeln) ausgedrückt werden,die somit eine Menge von Entscheidungsregeln bilden;z.B. könnte eine typische Regel zur Temperaturrege-lung lauten:WENN die Temperatur steigt, DANN erhöhe die Kühlung.

Hierbei sind „steigt" und „erhöhe" unpräzise Anga-ben über die Quantität einer physikalischen (odermathematischen) Größe. Jedoch können diese Unge-nauigkeiten gut durch unscharfe Mengen modelliertwerden. Da außerdem die Struktur der If-Then-Regelnmit der Steuerregel des unscharfen Reglers nachgebil-det wird, kann die Erfahrung des menschlichen Bedie-ners direkt auf den Steueralgorithmus des unscharfenReglers abgebildet werden. So hat im einfachsten Fall -bei einer Ein- und einer Ausgangsgröße des unscharfenReglers - eine Steuerregel die FormIF(A'lSAj) THEN (Ut IS Ut')mit folgenden unscharfen Größen (unscharfen Mengen):A' : Eingangsgröße,AJ : „Sollwert" der Eingangsgröße zur Anwendung der

Regel,Ui : „Sollwert" der Stellgröße,Uj': aktuelle (Partial-)Stellgröße.

Man bezeichnet eine Steuerregel auch als „Fuzzy-Implikation" oder, verallgemeinerter, „Modus Ponens":IF (A' IS Aj THEN (Uf IS Ut')

Fuzzy-Logik

Systemgrenze des unscharfen ReglersAnwender

Ausgabe

Bild 1. Das Innenleben eines unscharfen Reglers.

MIT)

150'[ T 150'C T 150°C Tungefähr150°C ungefähr150"C genau150°C

Bild 2. Beispiele für Mitgliedschaftsfunktionen.

Mitglied-schaft

0

sehr mittel mittel sehrdünn dünn dünn normal dick dick dickhnomoG

Viskosität

Bild 3. Werterelativierung einer unscharfen Menge.

entspricht(A'ISAi)-* (UtISU('),wobei „-»" die Implikation anzeigt. Das heißt:Prämisse: A ist wahrImplikation: IfA then BKonklusion: B ist wahr

Die Prämisse der Steuerregel (Bild 5) wird folgender-maßen berechnet:(A' IS AI) = max [minfA', AJ] = .- a>i € [0,1]

Die min-Funktion sorgt hierbei für die Bildung derSchnittmenge S; = A'A A,. Die max-Funktion bestimmtdas Element aus Sj, dem der größte Mitgliedschaftswertin der unscharfen Menge S; zugeordnet ist. Das GewichtW, ist somit ein Maß für die Erfüllung des If-Teils. Liegtdie Eingangsgröße als diskreter (d.h. exakter) Wert vor(s. Bild 2), was bei regelungstechnischen Problemen fastimmer der Fall ist, dann handelt es sich nur um eineinfaches Einsetzen der Eingangsgröße in die Mitglied-schaftsfunktion.

Elektronik 6/1992 61

AutomatisierenFuzzy-Logik

Der Steueralgorithmus, ein Satz von n Regein

Der Steueralgorithmus besteht aus einem Satz von nSteuerregeln. Betrachtet man wieder den Fall von Steu-erregeln für einen Regler mit einer Ein- und einerAusgangsgröße, so erhält man folgendes Steuerregelsy-stem:1F (A' IS A!) THEN (Uj IS Uj')IF (A' IS A2) THEN (U2 IS U2')

I F f A ' I S A J THEN(Un IS Un')Die Stellgröße U'(u) erhält man durch Bildung der

Vereinigungsmenge der Partialstellgrößen Uj'(u) allerSteuerregeln (i = l...n). Dieses Verfahren wird auch als„Compositional Rule of Inference" bezeichnet (Bild 6).

Da die einzelnen Konklusionen (Then-Teile) entspre-chend der Erfüllung der If-Teile (Prämissen) gewichtetwerden, besitzt die Regel, deren Prämisse am bestenerfüllt ist, auch den größten Einfluß bei der Festlegungder Stellgröße U' des gesamten Systems.

Multivariablensysteme mit mehrerenEin- und Ausgangsgrößen

Exemplarisch soll nun (ohne Beschränkung der Allge-meinheit) die Steuerregelstruktur für einen Fuzzy-Con-troller mit zwei Ein- und zwei Ausgangsgrößen behan-

Schnittmengenbildung C = A A B (A korrespondiert mit logischem "AND"):

Mc(e) = min (jjA(e), (n(e)L Ve e U

Mitglied-schaft

A B

Vereinigung C = A v B (v korrespondiert mit logischem "OR") i

Mc(e) = mttx [MA(e), MB(e>]. Ve 6 U

Mitglied-schaft

A B

U

Komplement -,A (-, korrespondiert mit logischem "NOT"):

M,A(e) = 1 - |jA(e), Ve £ U

Mitglied-schaft

Bild 4. Grundoperationen der unscharfenMengentheorie.

Max-min- oder Max-dot-MethodeBei der Definition derSchlußfolgerungen ist zwi-schen zwei Verfahren zuunterscheiden [4]. Die Max-min-Methode mit folgenderDefinition:(Ui IS U,1) <— »

Hier bewirkt die min-Funk-tion eine Begrenzung derSollstellgröße U; auf «;, wo-

Mitglied-schaft

to,

0

durch die aktuelle Partial-stellgröße Ui' der Steuer-regel i festgelegt wird (BildR). Offensichtlich ist Ui' wie-der eine unscharfe Menge.Für die Max-dot-Methode(manchmal auch als „Max-Produkt-Methode" bezeich-net), gilt die folgende Defi-

TÜtion :(Ui IS W) <—»

Die aktuelle Partialstellgrö-ße Ui' ergibt sich also ausder Gewichtung von U; mita>i (Bild B). Auch hier ist U;'wieder eine unscharfeMenge. In unserer Imple-mentierung haben wir bei-de Methoden verwendet.Wer ein wenig mit der Max-dot-Methode spielen möch-te, der muß hierzu denFunktionsaufruf

Bild A. Ermittlungder Konklusion (U;')mit der Max-min-Methode.

Bild B.Ermittlung der '

Konklusion mit derMax-dot-Methode.

Mitglied-schaft

func-conclusion-max-jnin(..)durchfunc-conclusion-max-.dot(..)ersetzen.Unscharfe Relationen zwi-schen Fuzzy-Mengen, wiesie z.B. in den Prämissender Regeln benötigt wer-den, müssen einer t(riangu-lar)-Norm entsprechen. Ne-ben der oben angegebenent-Norm mit Minimum- undMaximum-Operation exi-stieren noch weitere Nor-men, nach denen sich un-scharfe Relationen auswer-ten lassen. Bei Zimmermann[5] sind einige Entschei-dungskriterien für die Aus-wahl derartiger t-Normenangegeben.

Elektronik 6/1992

delt werden. In diesem Fall hat eine Steuerregel dieFormIF (A' IS Ai) andl (B' IS Bj THEN (Ut IS Ut') and2 (Vt IS V-)

Automatisieren

mit den Fuzzy-Größen (unscharfe Mengen):A', B': Eingangsgrößen,Aj, BJ: „Sollwerte" der Eingangsgrößen zur Anwen-

dung der Regel i,Ui, V;: „Sollwerte" der Partialstellgrößen,IV, Vj': aktuelle Partialstellgrößen.

Hierbei handelt es sich um eine erweiterte Form derFuzzy-Implikation. Es seiaA( := (A ' IS A^ und am := (B' IS BJ),dann werden aAj und aBj berechnet durch:aAi = (A ' IS Aj) = max [min(A ', AJ] undaBi = (B' IS Bj) = max [min(B',

Die Konjunktion andl bewirkt eine Zusammenfas-sung der Partialprämissen aAi und aBi zur (Gesamt-)Prämisse «i gemäß:

MI := min(aAi, aBi).

Anstelle von „andl" kann auch „or" benutzt werden.Eine disjunktive Verknüpfung der Partialprämissen QAIund aBi führt zur (Gesamt-)Prämisse w;:

u>i := max(aAi, aBi)

In beiden Fällen sind also sowohl das Gewicht w\ wieauch die Partialgewichte aAi und aBi diskrete Werte. DieKonjunktion and2 ist ein rein syntaktisches Verbin-dungsglied in der Aufzählung der (separat) zu berech-nenden Stellgrößen Ui' und V;', die voneinander unab-hängig sind. Von nun an gelte aus Gründen der Verein-fachung die Konvention, daß anstelle der Konjunktio-nen „andl" und „and2" einheitlich die Konjunktion„and" benutzt wird.

In der hier beschriebenen Implementierung könnenbeide Verknüpfungsarten bei der Definition der Regelnbenutzt werden. Es läßt sich allerdings eine disjunktiveVerknüpfung in der Prämisse einer Regel auf zweiRegeln abbilden (Compositional Rule of Inference), sodaß nur konjunktive Verknüpfungen betrachtet werdenmüssen. Der Steueralgorithmus ist analog zumunscharfen Regler mit jeweils einer Ein- und Ausgangs-größe als Satz von n Steuerregeln definiert:

IF (A' IS Aj) and (B1 IS B}) THEN (Ut IS Uj ') and (V, IS V, ')IF (A ' IS AZ) and (B' IS BZ) THEN (U2 IS U2 ') and (V2 IS V2 ')

IF (A' IS A„) and (B ' IS B J THEN (Un IS Un ') and (Vn IS Vn ')

Für die Stellgrößen U' und V des Gesamtsystemsfolgt entsprechend:

Fuzzy-Logik

Mitglied-schaft

ü),0

MA-10) MA,(9)

Bild 5. Prämissen-berechnung.

Mitglied-schaft

Bild 6. Mitgliedschaftsfunktion Mir(u) inAbhängigkeit vom Steuerregelsatz [3].

Defuzzifizierung

Bis hierher liefert unsere Recheneinheit jeweils eineunscharfe Menge für jede Stellgröße. Zur Regelung rea-ler Prozesse ist es allerdings notwendig, die unscharfeMenge in eine diskrete (crisp) Stellgröße umzuwandeln(denazifizieren). Zur Auswahl eines diskreten Wertesuopt aus einer unscharfen Menge U'(u) sind verschie-dene Verfahren gebräuchlich, z. B. wählt man dasjenigeu, das den größten Mitgliedschaftswert in U'(u) besitzt[6], oder, wenn mehrere globale Maxima der Mitglied-schaftsfunktion juv>(u) auftreten, das u, das den Mittel-wert aller zu den Maxima gehörigen Argumentebestimmt [2]. Die am häufigsten verwendete Methodeist allerdings das Schwerpunktverfahren („center ofgravity - COG" oder „centroid") [5, 7]:

uopt =f u*uTr(u)duJ M.U. (u) du

U'(u) = max[Ui(u)] und V'(v) = mit i=l...n.

Bei einfachen oder mehreren eng beieinander liegen-den Maxima der Mitgliedschaftsfunktion juv-(u) liefernalle genannten Verfahren ähnliche Resultate. Wesentli-che Unterschiede treten bei der Behandlung einer starkzerklüfteten Topologie von ̂ u'(u) auf. Solche Funktions-verläufe ergeben sich, wenn widersprüchliche Regelnimplementiert wurden. Entsprechend der obigen Auf-zählungsreihenfolge wird von den Verfahren einewachsende Informationsmenge verarbeitet. Somit solltedas COG-Verfahren in schwierigen Fällen eingesetztwerden, bei denen die Anwendung des ersten Verfah-rens problematisch ist. Aus mathematischer Sicht gibtes auch gegen das Schwerpunktverfahren einige Ein-wände [8]. In dem diesem Artikel zugrundeliegenden C-Programm (als Diskette erhältlich) ist das Schwerpunkt-verfahren (Funktion centre_of_gravity) implementiert.

eektronik 6/1992 65

AutomatisierenFuzzy-Logik

Anhand der Mitgliedschaftsfunktion ^u'(u), die derunscharfen Menge U' zugeordnet ist, kann auf die Quali-tät der benutzten Steuerregeln geschlossen werden [3].Es stellt sich natürlich die wichtige Frage, wie die Mit-gliedschaftsfunktionen einer unscharfen Menge sowiedie Regeln bestimmt werden können [9]. Leider gibt esdafür kein. allgemeingültiges Verfahren. Bis heutebedient man sich hierbei in der industriellen Praxis der„Trial-and-Error"-Methode, unterstützt von methodi-schen Ansätzen zur Kontrollregelentwicklung. DieRegeln werden aufgestelltO basierend auf der Erfahrung eines Operateurs,O basierend auf dem Wissen von Regelungstechnikern,O durch Beobachtung des Prozesses.

Lernende Fuzzy-Regler im Entwicklungsstadium

Obige Methode ist bei einfachen Problemen nicht zuzeitaufwendig, stellt aber eine Schranke bei derBehandlung komplexer Systeme dar. Für viele Regelun-gen im täglichen Leben sind wir selbst der Experte (z.B.Temperaturregelung in der Wohnung) und könnendamit unseren unscharfen Regler entwickeln. Es gibtaber bereits Ansätze zur Automatisierung dieser Auf-gabe, z.B. durch einen „lernenden" Fuzzy-Controller[11]. Weitere Forschungen versuchen die Verknüpfungvon neuronalen Netzen und unscharfen Reglern. Dieneuronalen Netze „lernen" z.B. durch Beobachtung

eines Operateurs dessen Regelstrategie und generierenaus dem „gelernten Wissen" automatisch Mitglied-schaftsfunktionen und Regeln. Shao hat einen selbstor-ganisierenden Fuzzy-Controller vorgestellt [11]. Er ver-wendet eine 2-Ebenen-Struktur, wobei die Grundebenevon einem konventionellen Fuzzy-Controller gebildetwird. Die selbstorganisierende Ebene berechnet mitHilfe eines Güte-Index Änderungen der Steuerregeln inder Grundebene. Durch diese Form der „künstlichenIntelligenz" können adaptive Regler sowie auch effizien-tere Regelungen von nichtlinearen Prozessen mit Zeit-verzögerung realisiert werden. Allerdings ist das Feldder lernenden Fuzzy-Controller noch im Entwicklungs-stadium und läßt derzeit noch viele Fragen offen.

Unscharfer Regler mit drei Steuerregeln

Zur grafischen Verdeutlichung des Ablaufs der Regel-auswertung ist in Bild 7 ein zusammenfassendes Bei-spiel für einen unscharfen Regler mit jeweils zwei Ein-und Ausgangsgrößen gegeben, wobei der Steueralgo-rithmus auf drei Steuerregeln beruht.

Die einfachste Realisierung eines unscharfen Reglersbesteht natürlich in der Entwicklung eines Simulations-programms auf herkömmlichen Rechnern. Da die mei-sten kommerziellen Regelungslösungen ohnehin schoneinen Mikroprozessor verwenden, ist dies auch die amweitesten verbreitete Methode, einen unscharfen Reglerzu realisieren. Der unscharfe Regler muß dabei in derSprache des jeweiligen Mikroprozessors implementiertwerden. Die anfallenden Kosten beschränken sich aufdie Implementierung und erhöhen kaum den Preis desProduktes. Dafür muß man allerdings Einbußen in derGeschwindigkeit hinnehmen.

Auf der nächst höheren Stu-fe werden auf dem Soft-ware-Markt verschiedeneEntwicklungsumgebungenab 5000 Mark aufwärts an-geboten (z.B. von Togai In-fra Logic, USA; Omron, Ja-pan; Inform, Deutschland).Diese bieten dem Anwen-der die Möglichkeit, Mit-gliedschaftsfunktionen undRegeln zu definieren, wobeiein Precompiler daraus denentsprechenden C-Codegeneriert.Abgerundet werden dieseEntwicklungsumgebungendurch sogenannte „Fuzzy-Prozessoren" (FC110 v. To-gai; FP-3000 v. Omron ...).Dies sind spezielle Risc-Prozessoren, die auf der„von-Neumann-Architektur"beruhen und um unscharfeOperationen (Maximum,Minimum, Prämissen- und

Konklusionsauswertung) er-weitert sind. Auch sindmeist Methoden zur Defuz-zifizierung als Befehle vor-handen. Die Entwicklungs-umgebungen bieten danndie Möglichkeit, direkt fürdiese Prozessoren Codes zu

Defuzzifizierungszeitnicht beachtet

Die in den Werbeprospek-ten der Hersteller angege-ben Zeiten beinhalten häu-fig nur die Auswertung desIf-Then-Teils ohne Defuzzi-

Asics in Sichterzeugen. Damit ist es mög-lich, sehr schnell unscharfeRegler in der Praxis einzu-setzen. Die dabei entstan-den Lösungen sind auf-grund des erweiterten Be-fehlssatzes und einer Op-timierung auf den Fuzzy-Prozessor meist schneller(> 10 mal). Leider gibt esnoch keine einheitlicheDarstellungsweise für Ge-schwindigkeiten von un-scharfen Reglern.

ftzierung oder mit sehr ein-fachen Defuzzifizier-Verfah-ren und sind schwer mitein-ander vergleichbar. Derentscheidende Nachteil derFuzzy-Prozessoren liegt al-lerdings darin, daß sie nureine Regel nach der ande-ren bearbeiten. Jede zusätz-liche Regel erhöht somit dieAuswertungszeit. Dies kannnur durch den Einsatz vonmehreren Fuzzy-Prozesso-ren verhindert werden. So-

mit liegen die Entwick-lungskosten schnell beiüber 10 000 Mark.Eine Alternative zu den Fuz-zy-Prozessoren werden inZukunft die Asics (anwen-dungsorientierte, integrier-te Bausteine) bilden. Sie be-sitzen eine neue Architektur[7, 12] und können unschar-fe Regeln parallel abarbei-ten. Damit lassen sich dannauch die extrem schwieri-gen Echtzeitanforderungeneiniger Prozesse erfüllen.Die Entwicklungskostendieser speziellen Bausteinesind natürlich sehr hoch,doch der Stückpreis kannüber große Produktions-mengen relativ gering ge-halten werden. Vorreiterbei dieser Entwicklung sindwieder einmal die Japaner,die den Fuzzy-Markt be-herrschen.

66 Elektronik 6/1992

1

0Rule 1:

1

0

1

0Rute 3:

Bild 7.zur St<

A, A'

IF A' is A1 and

A 2 A ' 1

rA\. .IF A' is A2 or

A'A3

M A 10.85 H\a5JL,

B, B

IF B' is B1

B2B

0.70 l'

IF B' is B2

B3E

"/lIF A' is A3 and IF B' is B3

Beispieljuerregelauswertung.

u tL_^ _1 g ' 1 —————— — n l ——— i ————— —

THEN

"2 0)21

J— 0

THEN

'B 1

L .THEN

Inferenc

1

0

Uj is U^ and

"2 1

S""1'U2 is U2' and

mUjisUj' and

e

1

VilsV,'

mV2 ISV2 '

V3

W3V3 isV3 '

llCOG COGCombined inf erence results

AutomatisierenFuzzy-Logik

Dipl.-lng. Hartmut Sur-mann ist im Münsterlandgeboren und studierte ander Universität DortmundInformatik. Seit 1989 be-schäftigt er sich dort alswissenschaftlicher Mitar-beiter am Lehrstuhl fürBauelemente der Elektro-technik in einem von derVW-Stiftung Hannover ge-förderten Projekt mit neu-ronalen Netzen und Fuzzy-Logik.

Prof. Dr.-lng. Karl Goserist im Schwarzwald gebo-ren, studierte in StuttgartElektrotechnik und trat1965 in das Forschungs-labor der Siemens AG,München, ein. Dort wirkteer bei der Entwicklung derMikroelektronik mit. Jetztleitet er den Lehrstuhl fürBauelemente der Elektro-technik an der UniversitätDortmund und beschäftigtsich mit CMOS-Technikund neuronalen Netzen.

Mit der Software-Implementierung, die in C geschrie-ben ist und sich an den objektorientierten Ansatzanlehnt, lassen sich alle möglichen Regelstrategien ent-wickeln. Dazu enthält sie eine externe Schnittstelle, ausder ein mit einem ASCII-Editor erstellter Regelsatz undMitgliedschaftsfunktionen gelesen werden können. InBild 8 ist ein Regelsatz für die Regelung eines inversenPendels angegeben. Eingeleitet wird die Definition derMitgliedschaftsfunktionen durch das Schlüsselwort„functions", danach ist die Anzahl der nachfolgendenMitgliedschaftsfunktionen angegeben. Die Mitglied-

schaftsfunktionen selbst werden durch Stützpunktedefiniert. Jede Mitgliedschaftsfunktion hat einen eige-nen Namen, gefolgt von der Anzahl der x-y-Stützpunkteund den Tupelwerten. Anschließend werden dieunscharfen Variablen (Fuzzy- oder auch linguistischeVariable genannt) definiert. Im Beispiel sind dies zweiEingabevariablen mit dem Namen theta und dtheta undeine Ausgangsvariable current. Zuletzt lassen sich dieRegeln über die Variablen und Mitgliedschaftsfunktio-nen definieren (Schlüsselwort: rules). Im Beispiel wer-den 19 Regeln verwendet, wobei die erste Regel zwei

Induktive Bauteile für Schaltnetzteile o**fi> BLOCKWir entwickeln für SieWir fertigen nach Ihren AngabenMuster kurzfristig lieferbarETD-Bausatz Lager-Programm

BLOCK1Transformatoren ElektronikBLOCKTransformatoren-Elektronik GmbH & Co. KG VerdenMax-Planck-Straße 36-46 • D-2810 Verden/AllerP.O. Box 1170 • GermanyTelefon (042 31) 6 78-0 • Telex 24 252 block dTelefax (042 31) 6 78 77

oft>

Schicken Sie mir bitte weitereInformationen über Induktive

Bauteile für Schaltnetzteile

Name:

i Firma:r

Straße: _

PLZ/Ort:

Telefon: _

BLOCK Transformatoren-ElektronikPostfach 1170 • 2810 Verden/Aller

Wir stellen aus: HANNOVER-MESSE CeBIT, Halle 8, EG, Stand C20 HANNOVER-MESSE INDUSTRIE, Halle 8, EG, Stand D18

Elektronik 6/1992 Für schnelle Anfragen: Elektronik-Kontaktkarten verwenden 67

Fuzzy-Logik

Achtung: Fuzzy-Reglerselbst entwerfen

Ja, Sie haben richtig gele-sen, Sie selbst können einen„Fuzzy-Controller" bauen,um z.B. Ihre Heizungsanla-ge zu regeln. Das benötigteFuzzy-Softwarepaket für„clevere Regler", entwickeltan der Universität Dort-mund, Lehrstuhl für Bauele-mente der Elektrotechnik,bietet die ELEKTRONIK ih-ren Lesern auf Diskette an.Das heißt, Interessentenkönnen das Programm di-rekt bei der ZeitschriftELEKTRONIK beziehen. Eswird in der Reihe „ELEK-TRONIK-DesignSoft" ver-trieben. Alles, was Sie au-ßer dem Programm nochbenötigen, ist ein Rechnermit C-Compiler und ent-sprechender I/O-Karte.Warum sollten wir nichtauch das machen können,

was die Japaner uns seiteiniger Zeit vormachen?Das Fuzzy-Softwarepaketfür „clevere Regler" kostetnur DM 98- inkl. Mehr-wertsteuer, wahlweise auf5,25- oder 3,5-Zoll-Diskette.Selbstverständlich erhaltenStudenten einen Rabatt von20%. Bedenken Sie: Mit die-sem Programm können Sieselbst in kürzester Zeit dieEntwicklung eines Fuzzy-Reglers nachvollziehen.Richten Sie Ihre Bestellungdirekt an:Zeitschrift ELEKTRONIKReihe DesignSoftPostfach 37 01 208000 München 37

PS: Weitere interessanteApplikations-Software ist inVorbereitung.

stdcontr.dat

functions7nb 3 0nrn 3 32ns 3 64z 3 96PS 3 128pm 3 159pb 3 191

variables

input2thetadtheta

Output1curzent

rules

1000000

def initionsdatei fuer das pendelproblem

326496128159191223

1 64 01 96 01 128 01 159 01 191 01 223 01 255 1

192222222222222222222

1111111111111111111

0000000000000000000

6330536310434232243

1111111111111111111

1111111111111111111

3063314532324043263

0000000000000000000

0000000000000000000

660055511

l Bild 8. Beispiel4 eines Regelsatzes* für das inverse Pendel.22223

Eingabevariablen und eine Ausgangsvariable benutzt.Es wird die 0. Eingangsvariable (theta) mit der 6. Mit-gliedschaftsfunktion (positiv big pb = 6) und die 1.Eingangsvariable (dtheta) mit der 3. Mitgliedschafts-funktion (zero z) and-verknüpft (min =1). Wenn dieseRegel erfüllt ist, soll die 0. Ausgangsvariable (current)mit der Mitgliedschaftsfunktion (pb = 6) die Ausgangs-größe bestimmen. Die erste Regel heißt also:

IF Theta is positiv big and DTheata is zeroTHEN Current is positiv big

Wer die Regeln lieber in dieser Form eingebenmöchte, kann zur Umwandlung den C-Preprozessor(cpp) benutzen. Die Regeln werden zu Beginn des Pro-gramms in linguistischer Form ausgegeben (rulearr_Output). Die Codierung ist sehr einfach gehalten, so daßkurze Ausführungszeiten bei geringem Speicherplatz-bedarf erreicht werden. Mitgliedschaftsfunktionen undVariablen werden in der Reihenfolge ihres Auftretensdurchnummeriert und verwendet. Der Definitionsbe-reich der Eingangsvariablen (x-Achse) entspricht demDigital-Wert einer analogen Meßgröße, wie sie von Ana-log/Digital-Wandlern geliefert wird. (0...255 für einen8-Bit-Wandler). Die Auflösungsgenauigkeit des x-Ach-sen-Defmitionsbereichs (und damit des A/D-Wandlers)kann über die Variable X_RES eingestellt werden. Ent-sprechendes gilt natürlich auch für die Ausgangsvaria-blen. Die Implementierung kann auf den entsprechen-den Compiler (ANSI oder Berkeley) mit Hilfe von„define-Anweisungen" eingestellt werden.

Die obige Einführung in die Arbeitsweise vonunscharfen Reglern läßt sich direkt im Listing desbereits erwähnten C-Programms wiederfinden unddürfte nicht besonder schwer zu lesen sein. Damit las-sen sich auch leicht eigene Änderungen einbringen.Wer Spaß am Programmieren hat, der kann sich eineEntwicklungsumgebung zur komfortablen Definitionvon Mitgliedschaftsfunktion und Regeln schreiben unddaraus dann die einfache Schnittstelle generieren.

Literatur[1] Zadeh, L. A.: Outline of a New Approach to the Analysis of Complex

Systems and Decision Processes. IEEE Transactions on Systems, man, andcybernetics, Vol. SMC-3, No. l, S. 28...32, Jan. 1973.

[2] Kicken, W. J. M.; Mamdani, E. H.: Analysis of a Fuzzy-Logic Controller.Fuzzy Sets and Systems, H. l, S. 29...44, 1978.

[3] King, P. J.; Mamdani, E. H.: The application of fuzzy control Systems toindustrial processes. Automatica, Vol. 13, S. 235...242, 1977.

[41 Togai InfraLogic Fuzzy-C Development System User's Manual.[5] Zimmermann, H.-J.: Fuzzy Sets Theory and its Applications. 2nd Ed..

Kluwer-Nijhoff Publishing, 1990.[6] Czogala, E.: Pedrycz, W.: On the concept of fuzzy probalistic Controllers.

Fuzzy Sets and Systems, H. 10, S. 109...121, 1983.[7] Watanabe, H.; Dettloff, W. D.; Yount, K.: A VLSI Fuzzy-Logic-Controller

with reconfigurable, cascadable architecture. IEEE Journal of solid statecircuits, Vol. 25, No. 2, S. 376...382, 1990.

[8] Frank, H.: Interner Bericht: Integrierte Schaltungen mit modifiziertenFuzzy-Zellen. Universität Dortmund, 1991.

[9] Brae, M.; Rutherford, D. A.: Selection of parameters for a Fuzzy-Logic-Controller. Fuzzy Sets and Systems, H. 2, S. 185...199, 1979.

[10] Tong, R. M.: A retrospective view of fuzzy control Systems. Fuzzy Sets andSystems, H. 14, S. 199...210, 1984.

[11] Shao, S.: Fuzzy self-organizing Controller and its applications for dynamicprocesses. Fuzzy Sets and Systems, H. 26, S. 151...164, 1988.

[12] Goser, K.; Kückert, U.: Schumacher, N.; Ungering, A.: Heite, C.; Surmann,H.: Hardware für Fuzzy-Controller. 1. Dortmunder Fuzzy-Tag, 14. Juni1991.

68 Elektronik 6/1992