Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
9. Vorlesung
Neuronale Netze
Anwendungen in der AT
Soft Control
(AT 3, RMA)
SC
234 WS 17/18 Georg Frey
9. Vorlesung im Aufbau der Vorlesung
1. Einführung Soft Control: Definition und Abgrenzung, Grundlagen
"intelligenter" Systeme
2. Wissensrepräsentation und Wissensverarbeitung (Symbolische KI)
Anwendung: Expertensysteme
3. Fuzzy-Systeme: Umgang mit unscharfem Wissen
Anwendung: Fuzzy-Control
4. Konnektionistische Systeme: Neuronale Netze
Anwendung: Identifikation und neuronale Regler
1. Grundlagen
2. Lernverfahren
3. Anwendungen n der Automatisierungstechnik
5. Stochastische Optimierung (Genetische Algorithmen, Simulated
Annealing, Differential Evolution)
Anwendung: Optimierung
6. Zusammenfassung & Literaturhinweise
SC
235 WS 17/18 Georg Frey
Inhalt der 9. Vorlesung
• Modellierung von Systemen mit NN
Vorbemerkungen
direktes Modell
inverses Modell
• Anwendung
Regelung
„virtuelle“ Sensoren
• Bewertung NN
• Vergleich NN und Fuzzy
• Mögliche Kombinationen
• Anwendungsbeispiel: Lastkurvenprognose
SC
236 WS 17/18 Georg Frey
Vorbemerkungen
• Neuronale Netze können beliebige nichtlineare Zusammenhänge
zwischen mehreren Eingangs- und Ausgangsgrößen modellieren
• Reine Feed-Forward Netze können aber nur statische
Zusammenhänge abbilden
Lösung 1: Rekurrente Netze
- Training ist schwieriger
Lösung 2: Externe Rückkopplungen d.h. Verarbeitung von Vergangenheitswerten
+ einfache Lernalgorithmen wie Backpropagation können verwendet werden
- Die Anzahl der Vergangenheitswerte muss festgelegt werden
• Idee zur Identifikation mit Vergangenheitswerten: Diskretes Modell
SC
237 WS 17/18 Georg Frey
Bildung eines Streckenmodells
• Ziel:
Modellierung der Strecke
Netz bildet die Funktion yk = f(uk-1, yk-1)
Bei Systemen höherer Ordnung: yk = f(uk-1,uk-2,... ,yk-1,yk-2,...)
• Eingabe:
Aktuelle und vergangene Werte des Streckeneingangs u
vergangene Werte des Streckenausgangs y
• Ausgabe:
Aktueller Streckenausgang yk
• Beispiel
SC
238 WS 17/18 Georg Frey
Bildung eines inversen Streckenmodells
• Ziel:
Modellierung der inversen Strecke
Netz bildet die Funktion uk-1 = f(yk, yk-1) bzw. uk-1 = f( yk ,yk-1,yk-2,... uk-2,uk-3,... )
• Eingabe:
Aktuelle und vergangene Werte des Streckenausgangs y
vergangene Werte des Streckeneingangs u
• Ausgabe:
Aktueller Streckeneingang uk-1
• Beispiel
SC
239 WS 17/18 Georg Frey
Einsatz des direkten Streckenmodells
• Schätzung von online nicht messbaren Zustandsgrößen für die
Verwendung in einem Regler (virtueller Sensor, Beobachter)
Regler Strecke
NN Modell
w u ym
Verknüpfung
yNN
y
-
SC
240 WS 17/18 Georg Frey
Einsatz des inversen Modells (idealisiert)
• Bei idealem inversen Modell ist eine Steuerung möglich
Aber:
• Modell wird nicht ideal sein
• Es treten Störungen auf
Strecke inverses NN Modell w u y
SC
241 WS 17/18 Georg Frey
Einsatz des inversen Modells (real)
• Einsatz eines Reglers zur Ausregelung von Störungen und zum
Ausgleich der Modellfehler
Strecke inverses NN Modell y
Lin. Regler w u
-
SC
242 WS 17/18 Georg Frey
Zusammenfassung Anwendung von NN in der AT
• Neben den “klassischen“ Aufgaben wie Mustererkennung,
Klassifikation, ... können NN auch für die Kernaufgaben in der AT
eingesetzt werden
Beobachter bzw. virtueller Sensor
Regler (in Kombination mit konventionellen Reglern)
Kombinationen sind möglich
• Neben den gezeigten Grundideen existieren viele weitere Strukturen
SC
243 WS 17/18 Georg Frey
Bewertung NN
• Neuronale Netze können auf Basis von Daten trainiert werden
keine Modellierung der Prozesse erforderlich
• Erfolgreiche Anwendungen zeigen das Potenzial der Methode
• Das Wissen ist in der Struktur des NN kodiert
Eine Überprüfung, Interpretation der errechneten Ausgaben ist
praktisch nicht möglich (Akzeptanzprobleme!)
• Training von NN ist aufwendig
• Beschaffung von „guten“ Daten kann problematisch sein
• Zur Festlegung der Strukturparameter
Anzahl der versteckten Schichten
Anzahl der Neuronen in den versteckten Schichten
Art der Vernetzung
Art der verwendeten Aktivierungsfunktionen
Einstellung der Lernparameter und Abbruchkriterien
existieren bestenfalls Heuristiken
SC
244 WS 17/18 Georg Frey
Gegenüberstellung NN vs. Fuzzy
- z.T. sehr lange Rechenzeiten,
- unsichere Konvergenz
- u.U. lange
Rechenzeiten beim
Trainieren,
- sehr viele
konkurrierende
Netzstrukturen,
- keine
Extrapolations-
möglichkeit, d.h.
gute Ergebnisse nur
bei Eingangsdaten
im Bereich der
Trainingsdaten
- Wissen im Netz
kaum
interpretierbar
- u.U. schwierige
Wissenserwerbsphase
- Optimierungsphase
z.T. langwierig
- ungewohnte
Denkweise
- Vorgehensweise bei
komplexen Prozessen
sehr aufwendig und
teuer
- Regelungsspezialisten
zur Erstellung der
Algorithmen und zu
deren Änderung nötig
- wenig Standard-
werkzeuge zur
Realisierung auf
Standardhardware, z.B.
SPS
+ wie bei Neuronalem Netz,
aber
+ bessere Interpretierbarkeit
des Wissens,
+ Wissen kann durch Lernen
sukzessive ergänzt werden
+ lernfähig und
anpassbar an sehr
komplexe
dynamische
Prozesse,
+ Nachtrainieren bei
Änderungen im
Prozess ist möglich
+ umgangssprachliche,
allgemeinverständliche
Formulierung der
Algorithmen,
+ einfache
Erweiterbarkeit der
Regelbasis
+ Integration des
Wissens mehrerer
Know-How-Träger
möglich
+ vertieftes
Prozessverständnis
aufgrund der
Prozessanalyse,
+ i.d.R. sehr gute
Regelungsergebnisse,
optimale Lösungen
möglich
+ Stabilitätsnachweise
möglich
Neuro-Fuzzy Neuronale Netze Fuzzy Control Klassische Methodik
SC
245 WS 17/18 Georg Frey
Ansätze zur Kombination von NN und Fuzzy
(A) Kooperative Neuro-Fuzzy-Systeme: Fuzzy-Systeme, die durch Neuronale Netze trainiert werden. Ein nachgeschaltetes Neuronales Netz kann z.B. lernen wie weit man einer Regel bei bestimmten Situationen vertrauen kann.
(B) Regelbasiertes Training eines normalen Neuronalen Netzes
(C) Hybride Neuro-Fuzzy-Systeme: normale neuronale Netze, die ”Fuzzy-Neuronen” (z.B. min-/max-Neuronen) und ”Fuzzy-Gewichte” benutzen. Die Struktur des Fuzzy-Systems lässt sich in der Netztopologie wieder erkennen.
(D) Neuronale Netze die mit Fuzzy-Lernmethoden trainiert werden. Es werden die Veränderungen der Gewichte zwischen den Neuronen bei jedem Lernschritt durch ein Fuzzy-System berechnet.
(E) topologische Konfiguration eines Neuronalen Netzes, mit mehr oder weniger komplexen Fuzzy-Systemen als Neuronen.
(F) Ein Mix aus klassischen Experten-Systemen und einem der obigen Ansätze.
• Wichtig sind die Ansätze A und B und C.
• Die anderen Klassen sind nicht so weit verbreitet.
SC
246 WS 17/18 Georg Frey
Kooperierende Neuro-Fuzzy-Systeme (2 von vielen Ansätzen)
Fein-Tuning eines Fuzzy-Controllers durch NN
• Einem Fuzzy-Controller wird ein NN nachgeschaltet
• Die Ausgaben des Fuzzy Systems werden sofort durch das Neuronale Netz nachbearbeitet.
• So kann man auf einem vorhandenen Basiswissen aufbauend (steckt im Fuzzy-System) ein nicht lineares System konstruieren, das sich dennoch an eine speziellere Gegebenheiten anpassen kann, die nicht durch das Basiswissen abgedeckt werden.
• Dieses ”Fein-Tunen” der Ausgabe übernimmt das Neuronale Netz. Welches Tuning bei welcher Eingabe erforderlich ist kann das Netz lernen.
• Das Fuzzy System muss keine defuzzyfizierte Ausgabe liefern, auch das kann das Neuronale Netz erledigen.
Vorverarbeitung der Eingangswerte eines Fuzzy-Controllers durch NN
• Einem Fuzzy-Controller wird ein NN vorgeschaltet
• Die Ausgaben des NN werden sofort durch den Fuzzy-Controller weiter bearbeitet.
• So werden Veränderungen in den Eingabedaten, die nicht mehr durch das Fuzzy-System verarbeitet werden können, vorher vom Neuronelen Netz ausgeglichen.
SC
247 WS 17/18 Georg Frey
Regelbasiertes Training eines NN
• NN können nur auf Basis von numerischen Daten trainiert werden
• Oft ist aber ein grobes Vorwissen über den Prozess in Form von Fuzzy-
Regeln vorhanden
• Lösung: Abbildung der linguistischen Regeln (qualitativ) auf
entsprechende Trainingsdatensätze (quantitativ)
Die linguistischen Terme werden auf Zahlen abgebildet (entsprechend der jeweiligen
ZGF)
Die Regeln werden dann durch die entsprechenden Werte beschrieben
• Beim Training interpoliert das Netz zwischen den Werten
• Beispiel:
Drei Variablen X1, X2 und Y mit Werten Klein Mittel Groß im Bereich [0, 1] werden
mit der Vorschrift (Klein = 0; Mittel = 0,5; Groß = 1) auf Zahlen abgebildet
Die Regel wenn X1=Klein Und X2 = Groß dann Y = Groß
Ergibt einen Datensatz X = (0 , 1); T = 1
SC
248 WS 17/18 Georg Frey
Hybride Neuro-Fuzzy-Systeme
• Abbildung eines Fuzzy-Controllers auf ein Neuronales Netz
• Beispiel:
1. Schicht: Input-Fuzzy-Sets
2. Schicht: Berechnung der Erfüllungsgrade der Regeln
3. Schicht: Output-Fuzzy-Sets
4. Schicht: Defuzzyfizierung
• Andere Varianten legen die Fuzzy-Sets in die Gewichte
• Training mit Daten
• Interpretation der gelernten Gewichte als Regeln (Gewichte zwischen
Schicht 1 und 2 bzw. zwischen 2 und 3)
SC
249 WS 17/18 Georg Frey
Hybride Neuro-Fuzzy-Systeme (Beispiel)
x1
x2
SC
250 WS 17/18 Georg Frey
Bsp.: Lastkurven-Prognose in elektrischen Energieversorgungsnetzen
Anwendungsbeispiel Lastprognose mit KNN
• Motivation
• Lastkurven-Analyse
• Prognose mit künstlichen neuronalen Netzen (KNN)
• Wavelettransformation
• Bewertung der Ergebnisse
• Zusammenfassung
SC
251 WS 17/18 Georg Frey
Motivation
Aufbau eines elektrischen Energieversorgungsnetzes
Kraftwerke Netz
(geringe Speicherkapazität)
Verbraucher
Steuerung
An/Aus
deterministisch, bekannt nicht deterministisch,
nur Vergangenheit bekannt
PI PO
SC
252 WS 17/18 Georg Frey
Motivation
• Lastkurven-Prognose spielt eine große Rolle im Betrieb von
Energieversorgungsnetzen
Energieerzeugung soll kosteneffizient sein
Elektrische Energie ist schwierig zu speichern
• Es sollte zu jedem Zeitpunkt nur soviel elektrische Energie erzeugt
werden wie auch benötigt wird
PI=PO
• Daher benötigt man auf aufgezeichneten Verbrauchsprofilen
basierende Prognose
Unterprognose führt zum nicht ausreichenden Vorhalten von Reservekapazität
Überprognose verursacht unnötige Reservekapazität
SC
253 WS 17/18 Georg Frey
Lastkurven-Analyse
• Netzlast vom 09.06.2003 bis 29.06.2003 (als drei einzelne Wochen) in der Regelzone RWE-Transportnetz-Strom
1. Von Montag bis Sonntag jeweils von 0 Uhr bis 24 Uhr
2. Angegeben sind 15-Minuten-Mittelwerte
3. 4*24=96 Messpunkte pro Tag; 96*7=672 Messpunkte pro
Woche
MW
SC
254 WS 17/18 Georg Frey
Prognose mit künstlichen neuronalen Netzen (KNN)
• Prognose-Ablauf Lastkurven-Normierung
Prognose Grundidee
KNN-Definition
• Struktur, Eingangsvektor, Ausgangsvektor, Aktivierungsfunktion
KNN-Training ( mit einer ganzen Woche (hier Woche 1))
• Backpropagation-Algorithmus
Lernrate
KNN-Anwendung (mit Woche 2 oder 3)
Ergebnis-Entnormierung
KNN
Modell
( 1, 2,... 8)L k k k ( 4)L k
SC
255 WS 17/18 Georg Frey
Prognose mit künstlichen neuronalen Netzen (KNN)
• Lastkurven-Normierung
MW
SC
256 WS 17/18 Georg Frey
Prognose mit künstlichen neuronalen Netzen (KNN)
KNN
Modell
( 1, 2,... 8)L k k k ( 4)L k
Drei-Schichten-Feed-Forward-Struktur
Prognose-Grundidee
1
2
......
8
L k
L k
L k
p 4a L k
Lastverlauf der letzten beiden Stunden
Last in einer Stunde
SC
257 WS 17/18 Georg Frey
Prognose mit künstlichen neuronalen Netzen (KNN)
• Vier-Schritt-Prognose-Ergebnis Training des KNN mit Woche1
Zielvektor(SimT): Lastkurve Woche3
Ausgangvektor(Y): Prognose von Woche3
SC
258 WS 17/18 Georg Frey
Prognose mit künstlichen neuronalen Netzen (KNN)
• An vielen Stellen ist der relative Fehler größer als 10%
Die Genauigkeit muss verbessert werden
Idee: Einbau von Wavelettransformation
Relativer Fehler
SC
259 WS 17/18 Georg Frey
Wavelettransformation
• Entwicklung der Wavelettransformation Fouriertransformation
Transformation von Zeit- in Frequenzbereich
Short-Time-Fouriertransformation
zusätzliche Information welche Frequenz in welchem Zeitraum auftritt
Kontinuierliche Wavelettranformstion
Transformation von Zeit in Frequenz-und Zeitbereich
Diskrete Wavelettransformation (DWT)
Realisierung in Computer
A Trous-Algorithmus der Wavelettransformation
• Verschiebungsinvariant
• gleiche Dantenlänge in den verschiedenen Frequenzanteilen
• geeignet für Echtzeitsysteme
f t F f
1 2
10
, ,...t t t t
t t t
f t F f F f
,f t F f
SC
260 WS 17/18 Georg Frey
Diskrete Wavelettransformation (DWT) (Implementierung)
• Analyse eines Signals
HP
TP
2
Hochpassfilter
Tiefpassfilter
Downsampling
x d1 a1 d2 a2 d3 a3
Abtastpunkte N N/2 N/2 N/4 N/4 N/8 N/8
Frequenzgang f<fs/2 fs/4<f<fs/2 f<fs/4 fs/8<f<fs/4 f<fs/8 fs/16<f<fs/8 f<fs/16
SC
261 WS 17/18 Georg Frey
Diskrete Wavelettransformation (DWT)
• Beispiel
SC
262 WS 17/18 Georg Frey
Diskrete Wavelettransformation (DWT)
• Synthese eines Signals
Upsampling
SC
263 WS 17/18 Georg Frey
Diskretewavelettransformation (DWT)
• Anforderung der DWT bei der Analyse des Echtzeitsystems
Lokalierung von Zeitpunkten in den verschiedenen Skalierungen
Verschiebungsinvarianz des Systems
Originalkurve
Verschieben
Wavelet-
transformation
Wavelet-
koeffizienten
Koeffizenten
verschieben
Wavelet-
transformation
Wavelet-
koeffizienten
SC
264 WS 17/18 Georg Frey
Á-Trous-Algorithmus der Wavelettransformation
d1
d2
d3
a3
• Eigenschaften des Á-Trous-Algorithmus
Verschiebungsinvarianz
gleiche Datenlänge aller Waveletkoeffizienten der verschiedenen Skalierungen
g[n] : Tiefpassfilter
h[n] : Hochpassfilter
SC
265 WS 17/18 Georg Frey
Wavelettransformation
• Beispiel des A-Trous-Algorithmus
Lastkurve Woche1 wird in 4 Schichten aufgespalten
a4: Approximations-Signal; d4,d3,d2,d1: Detail-Signale
a4 besitzt die größte Amplitude und die niedrigste Frequenz
d1 besitzt die kleinste Amplitude und die größte Frequenz
SC
266 WS 17/18 Georg Frey
Prognose : KNN + A-Trous
• Prognose-Ablauf mit KNN und A-Trous
Für jedes aufgespaltene Signal wird ein KNN Modell aufgebaut
Je mehr Schichten, desto höher die Genauigkeit der Synthese-Lastkurve
d1 wird für die Prognose als Rauschen betrachtet und vernachlässigt.
Aufgezeichnete
Lastkurven
a4
d4
d3
d2
d1
netA4
netD4
netD3
netD2
netD1
Prognostizierte
Lastkurve
Wavelet
Rück-
transformation
Ã-Trous
Wavelet
SC
267 WS 17/18 Georg Frey
Prognose : ANN + A Trous
• Vier-Schritt-Prognose-Ergebnis
Training mit Woche1
Zielvektor(SimT): Lastkurve Woche3
Ausgangvektor(Y): Prognose von Woche3
SC
268 WS 17/18 Georg Frey
Prognose : ANN + A-Trous
• An den meißten Stellen ist der relative Fehler kleiner als 2%
• Der Fehler ist nie größer als 6%
Im Vergleich zum KNN ohne A-Trous ist die Genauigkeit deutlich verbessert
Relativer Fehler
SC
269 WS 17/18 Georg Frey
Zusammenfassung und Lernkontrolle zur 9. Vorlesung
Grundlegende Anwendungen von NN in der AT kennen
Modellformen bei der Identifikation und deren Ziel
direkt
invers
Neuronale Netze mit anderen Ansätzen (speziell Fuzzy) vergleichen können
Daraus Gründe für Neuro-Fuzzy ableiten
Mögliche Arten der Kombination von NN mit Fuzzy kennen und deren Grundidee erläutern können
Einsatz von neuronalen Netzen zur Prognose wurde gezeigt
Neuronale Netze isoliert angewendet bringen keine zufrieden stellenden Ergebnisse bei der Lastkurvenprognose
Durch Kombination mit Wavelet-Transformation konnten Ergebnisse deutlich verbessert werden