Transcript Fuzzy Logik

Fuzzy Logic und Control
CIC Lab
Computational Intelligence
and Control Laboratory
Lars Erger, Jörg Krone, Ulrich Lehmann,
Hans Brenig, Udo Reitz, Michael Schneider
1
sehr
niedrig
niedrig
mittel
hoch
sehr
hoch
0,7
0,3
0
50
100
Geschw.
[km/h]
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
1
End
Inhalt
CIC Lab
Computational Intelligence
and Control Laboratory
• Einleitung
• Fuzzy Set Theorie (Fuzzyfizierung)
• Operationen auf Fuzzy Sets (Fuzzy-Logik)
• Fuzzy-Regelwerk (Ablegen von Expertenwissen)
• Fuzzy-Inferenz (Schlussfolgerung)
• Defuzzyfizierung (Erzeugen einer scharfen Ausgangsgröße)
• Blockschaltbild Fuzzy-System
• Entwurfsschritte bei der Entwicklung eines Fuzzy-Systems
• Beispiel Fuzzy-PI-Controller
• Quellenverzeichnis
• Fragen?
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
2
End
Einleitung
CIC Lab
Computational Intelligence
and Control Laboratory
Fuzzy Logic = unscharfe Logik
Nachbildung von verbal formulierten Wissen
und Zusammenhängen auf einem Digitalrechner
Umgangsprachliche Begriffe wie 'sehr hell' oder
'ziemlich langsam' lassen sich damit mathematisch
beschreiben
Anwendungsbereich in der Steuerung und Regelung
technischer Systeme, Entscheidungs-Unterstützungssysteme in der BWL, Expertensysteme, ...
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
3
End
Binäre Menge mit
binärer Zugehörigkeit 0 oder 1
CIC Lab
Computational Intelligence
and Control Laboratory
X sei eine klassische (scharfe) Menge von
Temperaturwerten, die als „kalt“ definiert sind
X = {11°C, 12°C, 13°C, 14°C, 15°C}
μ
kalt
1
0
8
12
18
x
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
4
End
Fuzzy Set Theorie
unscharfe Menge mit Zugehörigkeit μÃ
= {0 - 1} für einzelne Werte
CIC Lab
Computational Intelligence
and Control Laboratory
à sei eine unscharfe Menge „kalt“ von Temperaturwerten, die eine Zugehörigkeit μà zwischen 0 und 1
besitzen.
à = { (9°C, 0.1), (11°C, 0.7), (12°C, 1.0), (14°C, 0.5)}
μÃ
kalt
1
Die Zugehörigkeitsfunktion
ist hier eine Gauß-Funktion
0
8
WS 2007/2008
12
18
V_1_Fuzzy_Logik_Control_1.2
x
2
5
End
Fuzzy Set Theorie
CIC Lab
Computational Intelligence
and Control Laboratory
Im Bereich Fuzzy Control haben sich Zugehörigkeitsfunktionen
mit linearen Flanken durchgesetzt. Dadurch wird weniger Rechleistung als bei Sinus-, Sigmoid- oder Gauß-Funktionen benötigt:
μ
μ
1
μ
1
0
x
m1
m2
Trapez
WS 2007/2008
1
0
x
m
Dreieck
V_1_Fuzzy_Logik_Control_1.2
0
x
m
2
Singelton
6
End
Linguistische Variablen und Terme
CIC Lab
Computational Intelligence
and Control Laboratory
linguistische Werte bzw. Terme
μ
1
sehr
niedrig
niedrig
mittel
hoch
sehr
hoch
linguistische Variable
0
WS 2007/2008
50
V_1_Fuzzy_Logik_Control_1.2
100
Geschw.
[km/h]2
7
End
Operationen auf
Fuzzy Sets (Fuzzy Logik)
CIC Lab
Computational Intelligence
and Control Laboratory
Minimum Operator (Fuzzy-UND-Verknüpfung)
Bsp.: 0,2 UNDF 0,4 = 0,2
0,9 UNDF 0,6 = 0,6
Maximum Operator (Fuzzy-ODER-Verknüpfung)
Bsp.: 0,1 ODERF 0,7 = 0,7
0,9 ODERF 0,2 = 0,9
Komplementärbildung (Fuzzy-NICHT-Verknüpfung)
Bsp.: NICHTF 0,0 = 1,0
NICHTF 0,7 = 0,3
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
8
End
CIC Lab
Operationen auf
Fuzzy Sets (unscharfe Mengen)
Computational Intelligence
and Control Laboratory
μ
μ
niedrig
niedrig
mittel
niedrigODER
UND mittel
mittel
1
1
x
0
xx
0
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
9
End
Überblick über gebräuchliche
Operatoren
CIC Lab
Computational Intelligence
and Control Laboratory
UND - Operatoren
ODER - Operatoren
Bezeichnung
Formel
Bezeichnung
Formel
Fuzzy UND
min(μ1, μ2)
Fuzzy ODER
max(μ1, μ2)
algebr. Produkt
μ1 * μ2
algebr. Summe
μ1 + μ2 - μ1 * μ2
beschränkte Differenz max(0, μ1 + μ2 - 1)
beschränkte Summe min(1, μ1 + μ2)
Einstein Produkt
(μ1*μ2)/( 2 - (μ1 + μ2-μ1*μ2)) Einstein Summe
(μ1+μ2)/(1+μ1*μ2)
Hamacher Produkt
(μ1*μ2)/(μ1+μ2-μ1*μ2)
(μ1+μ2-2*μ1*μ2)/(1-μ1*μ2)
Hamacher Summe
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
10
End
Besondere Operatoren
CIC Lab
Computational Intelligence
and Control Laboratory
(1- (1 - μ1)(1 – μ2))γ
Der Gamma-Operator ermöglicht eine stufenlose Verstellung
zwischen Fuzzy-UND und Fuzzy-ODER. Er wird häufig bei
betriebswirtschaftlichen Problemstellungen eingesetzt.
Der NICHT-Operator entspricht der Inversion, er wird auch in der
Systemtechnik eingesetzt.
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
11
End
Fuzzy Regelwerk
CIC Lab
Computational Intelligence
and Control Laboratory
Arbeitsregeln geben an, wie das Fuzzy-System
funktionieren soll. In ihnen liegt das Expertenwissen,
das die Funktion des Systems beschreibt. Alle Regeln
sind i.d.R. ODER-verknüpft und können gleichzeitig feuern!
Arbeitsregel: WENN Bed.1 UND Bed. 2, DANN Output a
Bsp.:
1. WENN es heiß ist UND wärmer wird, DANN stark kühlen
ODER
2. WENN es warm ist UND wärmer wird, DANN kühlen
ODER
3. WENN es unverändert warm ist, DANN leicht kühlen
ODER
4. ...
Aggregation
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
12
End
DANN-Teil einer Regel
wird gültig
CIC Lab
Computational Intelligence
and Control Laboratory
Beispiel für das Feuern einer Regel:
WENN x1 = niedrig UND x2 = mittel, DANN y = hoch
0,25
μ
1,0
0,25.
μ
niedrig
1
μ
mittel
1
hoch
1
UND
0
0,1
x1 = 0,15
0,5
x1
0
0,3
0,7
X2 = 0,5
x2
0
y
0,9
0,5
Output
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
13
End
CIC Lab
Fuzzy-Inferenz
(Schlussfolgerung)
Computational Intelligence
and Control Laboratory
Ergebnis der Inferenz ist zunächst eine resultierende
Fuzzy-Lösungsmenge mit der Zugehörigkeitsfunktion
µres(y) (Implikation). Die Ergebnisse aller DANN-Teile
aus den Regeln aus dem Regelwerk fließen in die
Lösungsmenge ein.
MAX-MIN-Inferenz
MAX-PROD-Inferenz
SUM-MIN- und
SUM-PROD-Inferenz
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
14
End
Max-Min-Inferenz
CIC Lab
Computational Intelligence
and Control Laboratory
WENN x1 = niedrig UND x2 = mittel, DANN y = hoch.
μ
μ
niedrig
1
μ
mittel
1
hoch
1
UND
0
0,1
x1 = 0,15
0,5
x1
0
0,3
0,7
x2
0
0,5
y
0,9
X2 = 0,5
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
15
End
Max-Min-Inferenz
CIC Lab
Computational Intelligence
and Control Laboratory
R1: WENN x = niedrig DANN y = hoch
R2: WENN x = mittel DANN y = mittel
μ
μ
niedrig
mittel
mittel
hoch
1
1
0
x1
0,1
0
0,5
y
0,1
0,5
x = 0,45
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
16
End
Max-Prod-Inferenz
CIC Lab
Computational Intelligence
and Control Laboratory
WENN x1 = niedrig UND x2 = mittel, DANN y = hoch.
μ
μ
niedrig
1
μ
mittel
1
hoch
1
UND
0
0,1
x1 = 0,15
0,5
x1
0
0,3
0,7
x2
0
0,5
y
0,9
X2 = 0,5
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
17
End
Max-Prod-Inferenz
CIC Lab
Computational Intelligence
and Control Laboratory
R1: WENN x = niedrig DANN y = hoch
R2: WENN x = mittel DANN y = mittel
μ
μ
niedrig
mittel
mittel
hoch
1
1
0
x1
0,1
0
0,5
y
0,1
0,5
x = 0,45
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
18
End
Sum-Min-Inferenz
CIC Lab
Computational Intelligence
and Control Laboratory
R1: WENN x = niedrig DANN y = hoch
R2: WENN x = mittel DANN y = mittel
μ
μ
niedrig
mittel
mittel
hoch
1
1
0
x1
0,1
0
0,5
y
0,1
0,5
x = 0,45
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
19
End
Sum-Prod-Inferenz
CIC Lab
Computational Intelligence
and Control Laboratory
R1: WENN x = niedrig DANN y = hoch
R2: WENN x = mittel DANN y = mittel
μ
μ
niedrig
mittel
mittel
hoch
1
1
0
x1
0,1
0
0,5
y
0,1
0,5
x = 0,45
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
20
End
Defuzzyfizierung
CIC Lab
Computational Intelligence
and Control Laboratory
Ergebnis der Inferenz ist eine resultierende Fuzzy-Lösungsmenge
mit der Zugehörigkeitsfunktion
µres(y). Die Defuzzyfizierung generiert daraus einen möglichst
„sinnvollen“ scharfen Ausgangswert. Folgende Methoden haben
sich dafür bewährt:
Maximum-Methoden (schnell)
• Mittleres Maximum (MOM)
• Wahl des linken Randpunktes, kleinstes Max. (SOM)
• Wahl des rechten Randpunktes, größtes Max. (LOM)
Schwerpunktmethode für Singleton
(deutsch: Höhenmethode)
Flächenschwerpunktmethode (genau)
(engl.: Centroid)
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
2
21
End
Maximum-Methoden
CIC Lab
Computational Intelligence
and Control Laboratory
μ
Hmax
y
4,5
5
5,5
ys links
ys mitte
ys rechts
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
22
End
Schwerpunktmethode für Singleton
CIC Lab
Computational Intelligence
and Control Laboratory
μ
1
O,75
3 * 0,25 + 5 * 0,75
ys =
O,25
0,25 + 0,75
= 4,5
y
1
2
3
4
5
ys = 4,5
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
23
End
Schwerpunktmethode
(näherungsweise)
CIC Lab
Computational Intelligence
and Control Laboratory
Statt dem Integral wird die Summe yi * µ(yi) berechnet.
Dadurch sinkt der Rechenzeitbedarf erheblich.
μ
n
ys =
i=1
yi * μ(yi)
n
μ(yi)
μ2
μ1
i=1
y1
y2
y
ys = 4,421
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
24
End
Blockschaltbild Fuzzy-System
CIC Lab
Computational Intelligence
and Control Laboratory
R1: WENN ... DANN ...
R2: WENN ... DANN ...
e1
.
.
.
en
u
Rn: WENN ... DANN ...
Defuzzyfizierung
Fuzzyfizierung
Regelwerk u. Inferenz
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
25
End
CIC Lab
Entwurfsschritte für ein
Fuzzy-System
Computational Intelligence
and Control Laboratory
• Wissenserwerb (Befragung, Messung,
Simulation,…)
• Wahl der Ein- und Ausgangsgrößen
• Struktur des Fuzzy-Systems oder – Controllers
• Skalierung der Ein- und Ausgangsgrößen
• Fuzzyfizierung der Ein- und Ausgangsgrößen
• Regelbasis erstellen
• Simulation
• Validation (Anforderungen erfüllt? Ja -> Ende)
• Nein: Tuning der Zugehörigkeitsfunktionen
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
26
End
Anwendungsbeispiel
Fuzzy-PI-Regler (Controller)
für eine Lichtregelung
CIC Lab
Computational Intelligence
and Control Laboratory
Modell der Regelstrecke mit Fuzzy Controller
Regeldifferenz xd
Stellgröße yR
Integral der Regeldifferenz xd dt
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
27
End
CIC Lab
FC Zusammenhang Eingang,
Regelwerk, Ausgang, Inferenz
Computational Intelligence
and Control Laboratory
xd xd dt yR
Regeldifferenz xd
Integral der Regeldifferenz xd dt
Max-Min-Inferenz
Stellgröße yR
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
28
End
CIC Lab
Ausgangskennlinienfeld des Fuzzy
Controllers yR = f(xd, xd dt)
Computational Intelligence
and Control Laboratory
yR
xd dt
xd
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
29
End
Quellenverzeichnis
CIC Lab
Computational Intelligence
and Control Laboratory
• Fuzzy Control für Ingenieure
Jörg Kahlert
ISBN 3-528-05460-3
• Fuzzy-Logik und Fuzzy-Control
Jörg Kahlert, Hubert Frank
ISBN 3-528-05304-6
• www.kahlert.com
• Hoffmann, J.; Brunner, U.: Matlab & Tools für die Simulation
dynamischer Systeme
• Lehmann, Ulrich: Skript Prozessrechensysteme
• ftp-Server: ftp://193.174.71.../Neuro-FuzzySysteme%20CI%20(RTII)/Vorlesung_FH_SWF/
• Lehmann, U.; Krone, J.: Vorlesung Neuro-Fuzzy-Systeme,
FH-SW Iserlohn, SS 2003 www.fh-swf.de/cv-ci
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
30
End
Fragen ?
CIC Lab
Computational Intelligence
and Control Laboratory
Fragen Sie bitte!
2
WS 2007/2008
V_1_Fuzzy_Logik_Control_1.2
31
End