Nichtlineare modellprädiktive Regelung Sabine Böhm, Miriam Kießling Mathematisches Institut Universität Bayreuth 23. und 30. Mai 2006 / Seminar MPC, Bayreuth
Inhalt 1. Einleitung Einsatz von NMPC Unterschied zu LMPC Problemstellung 2. Lösung durch Linearisierung Lineare Variablentransformation Verwendung von multiplen linearen Modellen
Inhalt 1. Einleitung Einsatz von NMPC Unterschied zu LMPC Problemstellung 2. Lösung durch Linearisierung Lineare Variablentransformation Verwendung von multiplen linearen Modellen
Inhalt 1. Einleitung Einsatz von NMPC Unterschied zu LMPC Problemstellung 2. Lösung durch Linearisierung Lineare Variablentransformation Verwendung von multiplen linearen Modellen
Inhalt 1. Einleitung Einsatz von NMPC Unterschied zu LMPC Problemstellung 2. Lösung durch Linearisierung Lineare Variablentransformation Verwendung von multiplen linearen Modellen
Inhalt 1. Einleitung Einsatz von NMPC Unterschied zu LMPC Problemstellung 2. Lösung durch Linearisierung Lineare Variablentransformation Verwendung von multiplen linearen Modellen
Inhalt 1. Einleitung Einsatz von NMPC Unterschied zu LMPC Problemstellung 2. Lösung durch Linearisierung Lineare Variablentransformation Verwendung von multiplen linearen Modellen
Inhalt 1. Einleitung Einsatz von NMPC Unterschied zu LMPC Problemstellung 2. Lösung durch Linearisierung Lineare Variablentransformation Verwendung von multiplen linearen Modellen
3. Indirekte Lösung von NMPC Anwendung des Pontryaginsches Minimumprinzip (a) Hamilton-Funktion (b) Pontryaginsches Minimumprinzip (c) Lösung des Randwertproblems,single und multiple shooting (d) Variationsrechnung als Grundlage des PMP (e) Anwendungsbeispiel
3. Indirekte Lösung von NMPC Anwendung des Pontryaginsches Minimumprinzip (a) Hamilton-Funktion (b) Pontryaginsches Minimumprinzip (c) Lösung des Randwertproblems,single und multiple shooting (d) Variationsrechnung als Grundlage des PMP (e) Anwendungsbeispiel
3. Indirekte Lösung von NMPC Anwendung des Pontryaginsches Minimumprinzip (a) Hamilton-Funktion (b) Pontryaginsches Minimumprinzip (c) Lösung des Randwertproblems,single und multiple shooting (d) Variationsrechnung als Grundlage des PMP (e) Anwendungsbeispiel
3. Indirekte Lösung von NMPC Anwendung des Pontryaginsches Minimumprinzip (a) Hamilton-Funktion (b) Pontryaginsches Minimumprinzip (c) Lösung des Randwertproblems,single und multiple shooting (d) Variationsrechnung als Grundlage des PMP (e) Anwendungsbeispiel
3. Indirekte Lösung von NMPC Anwendung des Pontryaginsches Minimumprinzip (a) Hamilton-Funktion (b) Pontryaginsches Minimumprinzip (c) Lösung des Randwertproblems,single und multiple shooting (d) Variationsrechnung als Grundlage des PMP (e) Anwendungsbeispiel
3. Indirekte Lösung von NMPC Anwendung des Pontryaginsches Minimumprinzip (a) Hamilton-Funktion (b) Pontryaginsches Minimumprinzip (c) Lösung des Randwertproblems,single und multiple shooting (d) Variationsrechnung als Grundlage des PMP (e) Anwendungsbeispiel
3. Indirekte Lösung von NMPC Anwendung des Pontryaginsches Minimumprinzip (a) Hamilton-Funktion (b) Pontryaginsches Minimumprinzip (c) Lösung des Randwertproblems,single und multiple shooting (d) Variationsrechnung als Grundlage des PMP (e) Anwendungsbeispiel
3. Indirekte Lösung von NMPC Dynamische Programmierung nach Bellman 4. direct multiple shooting 5. Zustandsschätzung mittels Erweitertem Kalman-Filter 6. Anwendung auf Destillationskolonne
3. Indirekte Lösung von NMPC Dynamische Programmierung nach Bellman 4. direct multiple shooting 5. Zustandsschätzung mittels Erweitertem Kalman-Filter 6. Anwendung auf Destillationskolonne
3. Indirekte Lösung von NMPC Dynamische Programmierung nach Bellman 4. direct multiple shooting 5. Zustandsschätzung mittels Erweitertem Kalman-Filter 6. Anwendung auf Destillationskolonne
3. Indirekte Lösung von NMPC Dynamische Programmierung nach Bellman 4. direct multiple shooting 5. Zustandsschätzung mittels Erweitertem Kalman-Filter 6. Anwendung auf Destillationskolonne
3. Indirekte Lösung von NMPC Dynamische Programmierung nach Bellman 4. direct multiple shooting 5. Zustandsschätzung mittels Erweitertem Kalman-Filter 6. Anwendung auf Destillationskolonne
1. Einleitung
Einleitung Meistens verwendet man Linearisierung Warum dann nichtlineare prädiktive Regelung?
Einleitung Linearisierung ist nicht geeignet, bei starken Nichtlinearitäten im Betriebspunkt. bei zwar lokal nur schwach Nichtlinearitäten, aber weiten Arbeitsbereich. Hier Linearisierungen zu wenig genau (wegen z.b.: strengeren Umweltgesetzen und ökonomischen Gesichtspunkten)
Einleitung Linearisierung ist nicht geeignet, bei starken Nichtlinearitäten im Betriebspunkt. bei zwar lokal nur schwach Nichtlinearitäten, aber weiten Arbeitsbereich. Hier Linearisierungen zu wenig genau (wegen z.b.: strengeren Umweltgesetzen und ökonomischen Gesichtspunkten)
Beispiele Reinst-Destillationanlagen (Beispiel am Ende) Mehrprodukt-Polymerisationsanlagen Kraftwerkanlagen mit häufigen großen Lastenwechseln
Beispiele Reinst-Destillationanlagen (Beispiel am Ende) Mehrprodukt-Polymerisationsanlagen Kraftwerkanlagen mit häufigen großen Lastenwechseln
Beispiele Reinst-Destillationanlagen (Beispiel am Ende) Mehrprodukt-Polymerisationsanlagen Kraftwerkanlagen mit häufigen großen Lastenwechseln
Unterschied von NMPC zu linearer MPC Größerer Aufwand bei der Entwicklung des Prozessmodells Parameteridentifikation nichtlinearer dynamischer Systeme schwieriger größerer Aufwand zur Lösung von Optimierungsproblems (nichtkonvexes Problem) Stabilität, Optimalität und Robustheit viel komplizierter
Unterschied von NMPC zu linearer MPC Größerer Aufwand bei der Entwicklung des Prozessmodells Parameteridentifikation nichtlinearer dynamischer Systeme schwieriger größerer Aufwand zur Lösung von Optimierungsproblems (nichtkonvexes Problem) Stabilität, Optimalität und Robustheit viel komplizierter
Unterschied von NMPC zu linearer MPC Größerer Aufwand bei der Entwicklung des Prozessmodells Parameteridentifikation nichtlinearer dynamischer Systeme schwieriger größerer Aufwand zur Lösung von Optimierungsproblems (nichtkonvexes Problem) Stabilität, Optimalität und Robustheit viel komplizierter
Unterschied von NMPC zu linearer MPC Größerer Aufwand bei der Entwicklung des Prozessmodells Parameteridentifikation nichtlinearer dynamischer Systeme schwieriger größerer Aufwand zur Lösung von Optimierungsproblems (nichtkonvexes Problem) Stabilität, Optimalität und Robustheit viel komplizierter
Nichtkonvexes Problem Zur Lösung des Problems muss Konvexität gelten, da bei konvexen Programmen gilt: Jeder lokale Minimierer ist ein globaler Minimierer globale Lösung Problem: nichtlineare Systeme sind im Allg. nichtkonvex
Nichtkonvexes Problem
Einleitung Problem: ẋ(t) = f (x(t), u(t)) x(0) = x 0 y(t) = h(x(t), u(t)) mit den Eingängen und Zuständen: u(t) U R m x(t) X R n
Einleitung Problem: ẋ(t) = f (x(t), u(t)) x(0) = x 0 y(t) = h(x(t), u(t)) mit den Eingängen und Zuständen: u(t) U R m x(t) X R n
Einleitung Dabei er erfüllen U und X die folgenden Annahmen: (A1) U R m ist kompakt, X R n ist zusammenhängend und (0, 0) X U (A2) Das Vektorfeld f : R n R m R n ist stetig erfüllt f (0, 0) = 0 und ist lokal Lipschitz stetig in x. (A3) x 0 X 1, X 1 X und stückweise konstante Fkt. u( ) : [0, T P ] U hat ẋ(t) eine eind. stetige Lösg.
Einleitung Dabei er erfüllen U und X die folgenden Annahmen: (A1) U R m ist kompakt, X R n ist zusammenhängend und (0, 0) X U (A2) Das Vektorfeld f : R n R m R n ist stetig erfüllt f (0, 0) = 0 und ist lokal Lipschitz stetig in x. (A3) x 0 X 1, X 1 X und stückweise konstante Fkt. u( ) : [0, T P ] U hat ẋ(t) eine eind. stetige Lösg.
Einleitung Dabei er erfüllen U und X die folgenden Annahmen: (A1) U R m ist kompakt, X R n ist zusammenhängend und (0, 0) X U (A2) Das Vektorfeld f : R n R m R n ist stetig erfüllt f (0, 0) = 0 und ist lokal Lipschitz stetig in x. (A3) x 0 X 1, X 1 X und stückweise konstante Fkt. u( ) : [0, T P ] U hat ẋ(t) eine eind. stetige Lösg.
Einleitung mit min J(x(t), u( ); T p) u( ) J(x(t), u( ); T p ) := t+tp t f 0 (x(τ), u(τ))dτ) + g(x(t + T p )) unter den Nebenbedingungen: ẋ(τ) = f (x(τ), u(τ)), x(t) = x t u(τ) U, τ [t, t + T p ] x(τ) X τ [t, t + T p ] x(t + T p ) E Hierbei ist E die Endregion
Einleitung mit min J(x(t), u( ); T p) u( ) J(x(t), u( ); T p ) := t+tp t f 0 (x(τ), u(τ))dτ) + g(x(t + T p )) unter den Nebenbedingungen: ẋ(τ) = f (x(τ), u(τ)), x(t) = x t u(τ) U, τ [t, t + T p ] x(τ) X τ [t, t + T p ] x(t + T p ) E Hierbei ist E die Endregion
2. Lösung durch Verwendung von LMPC
Linearisierung durch Variablen-Transformation
Beispiel Gegeben: Generelles Vorgehen: ẋ(t) = dx dt = f (x, u) (1) dx = f (x, u) = c 1 f 1 (x) + c 2 f 2 (x, u) (2) dt Dann denkt man sich eine Transformation: z = g(x) (3)
Variablen-Transformation 2 Varianten zur Wahl von g( ): oder dz dt dz dt = az + bv (4) = a + bv (5)
Variablen-Transformation Durch die Ableitung von z = g(x) erhält man: dz dt = dz dx dx dt wenn man (2) in (6) einsetzt, ergibt sich: dz dt = c 1 f 1 (x) dz dx + c 2f 2 (x, u) dz dx Nun wählt man z = g(x) so, dass gilt: dz dx = z f 1 (x) = 1 f 1 (x) und zusätzlich f 2 (x, u) dz dx = v (9) dadurch (7) ˆ=(4) (7) ˆ=(5), wobei a = c 1 und b = c 2. (6) (7) (8)
Variablen-Transformation Durch die Ableitung von z = g(x) erhält man: dz dt = dz dx dx dt wenn man (2) in (6) einsetzt, ergibt sich: dz dt = c 1 f 1 (x) dz dx + c 2f 2 (x, u) dz dx Nun wählt man z = g(x) so, dass gilt: dz dx = z f 1 (x) = 1 f 1 (x) und zusätzlich f 2 (x, u) dz dx = v (9) dadurch (7) ˆ=(4) (7) ˆ=(5), wobei a = c 1 und b = c 2. (6) (7) (8)
Variablen-Transformation Durch Umformung von (8) erhält man: dz z = dx f 1 (x) dz = dx f 1 (x) oder ln z = dx f 1 (x) = z = exp[ dx f 1 (x) ] = dx f 1 (x) Durch einsetzen von Gleichung (8) in (9) und Umformung erhält man: f 2 (x, u) = vf 1(x) = vf 1 (x) (10) z
Variablen-Transformation Durch Umformung von (8) erhält man: dz z = dx f 1 (x) dz = dx f 1 (x) oder ln z = dx f 1 (x) = z = exp[ dx f 1 (x) ] = dx f 1 (x) Durch einsetzen von Gleichung (8) in (9) und Umformung erhält man: f 2 (x, u) = vf 1(x) = vf 1 (x) (10) z
Variablen-Transformation Die Gleichung (10) löst man dann nach u auf, um u = q(x, v) zu erhalten. Das Ergebnis ist ein lineares MPC.
LMPC mit multiplen linearen Modellen
LMPC mit multiplen, linearen Modellen Arbeitsbereich in n Teilbereiche untergliedert für jeden ein lineares Modell erstellt alle Modelle werden parallel zur Vorhersage der Regelgrößen y herangezogen die Vorhersagen der einzelnen Modelle gewichtet aufsummiert gewichteter Mittelwert ŷ = n i=1 α iŷ i
LMPC mit multiplen, linearen Modellen Arbeitsbereich in n Teilbereiche untergliedert für jeden ein lineares Modell erstellt alle Modelle werden parallel zur Vorhersage der Regelgrößen y herangezogen die Vorhersagen der einzelnen Modelle gewichtet aufsummiert gewichteter Mittelwert ŷ = n i=1 α iŷ i
LMPC mit multiplen, linearen Modellen Arbeitsbereich in n Teilbereiche untergliedert für jeden ein lineares Modell erstellt alle Modelle werden parallel zur Vorhersage der Regelgrößen y herangezogen die Vorhersagen der einzelnen Modelle gewichtet aufsummiert gewichteter Mittelwert ŷ = n i=1 α iŷ i
LMPC mit multiplen, linearen Modellen Arbeitsbereich in n Teilbereiche untergliedert für jeden ein lineares Modell erstellt alle Modelle werden parallel zur Vorhersage der Regelgrößen y herangezogen die Vorhersagen der einzelnen Modelle gewichtet aufsummiert gewichteter Mittelwert ŷ = n i=1 α iŷ i
LMPC mit multiplen, linearen Modellen Arbeitsbereich in n Teilbereiche untergliedert für jeden ein lineares Modell erstellt alle Modelle werden parallel zur Vorhersage der Regelgrößen y herangezogen die Vorhersagen der einzelnen Modelle gewichtet aufsummiert gewichteter Mittelwert ŷ = n i=1 α iŷ i
LMPC mit multiplen, linearen Modellen Berechnung der Gewichtsfaktoren α i α i [0, 1] αi = 1 Berechnung der α i : wobei p j,k = N m=1 α j,k = p j,k N m=1 p m,k exp( 1 2 ɛt j,k K ɛ j,k)p j,k 1 exp( 1 2 ɛt m,k K ɛ m,k)p m,k 1 und K eine Konvergenzmatrix und ɛ j,k = (y ŷ i )
LMPC mit multiplen, linearen Modellen Berechnung der Gewichtsfaktoren α i α i [0, 1] αi = 1 Berechnung der α i : wobei p j,k = N m=1 α j,k = p j,k N m=1 p m,k exp( 1 2 ɛt j,k K ɛ j,k)p j,k 1 exp( 1 2 ɛt m,k K ɛ m,k)p m,k 1 und K eine Konvergenzmatrix und ɛ j,k = (y ŷ i )
LMPC mit multiplen, linearen Modellen größte Herausforderung: Bestimmung der n Teilmodelle einfachste Zerlegungsmethode: Unterteilung des gesamten Arbeitsbereichs in ein gleichmäßiges mehrdimensionales Gitter
LMPC mit multiplen, linearen Modellen größte Herausforderung: Bestimmung der n Teilmodelle einfachste Zerlegungsmethode: Unterteilung des gesamten Arbeitsbereichs in ein gleichmäßiges mehrdimensionales Gitter
LMPC mit multiplen, linearen Modellen größte Herausforderung: Bestimmung der n Teilmodelle einfachste Zerlegungsmethode: Unterteilung des gesamten Arbeitsbereichs in ein gleichmäßiges mehrdimensionales Gitter
LMPC mit multiplen, linearen Modellen größte Herausforderung: Bestimmung der n Teilmodelle einfachste Zerlegungsmethode: Unterteilung des gesamten Arbeitsbereichs in ein gleichmäßiges mehrdimensionales Gitter
LMPC mit multiplen, linearen Modellen Nachteil: riesigen Zahl von Modellen zu identifizieren Alternative: z.b. LOLIMOT-Verfahren (Local Linear Model Tree) Sukzessive Teilung des Eingangsraums
LMPC mit multiplen, linearen Modellen Nachteil: riesigen Zahl von Modellen zu identifizieren Alternative: z.b. LOLIMOT-Verfahren (Local Linear Model Tree) Sukzessive Teilung des Eingangsraums
LMPC mit multiplen, linearen Modellen Nachteil: riesigen Zahl von Modellen zu identifizieren Alternative: z.b. LOLIMOT-Verfahren (Local Linear Model Tree) Sukzessive Teilung des Eingangsraums
LMPC mit multiplen, linearen Modellen Nachteil: riesigen Zahl von Modellen zu identifizieren Alternative: z.b. LOLIMOT-Verfahren (Local Linear Model Tree) Sukzessive Teilung des Eingangsraums
LMPC mit multiplen, linearen Modellen
LMPC mit multiplen, linearen Modellen
3. Indirekte Lösung von NMPC
Indirekte Lösung von NMPC Anwendung des MPC - Algorithmus auf nichtlineares System Problem: Zielfunktional und Nebenbedingungen nichtlinear
Indirekte Lösung von NMPC Anwendung des MPC - Algorithmus auf nichtlineares System Problem: Zielfunktional und Nebenbedingungen nichtlinear
3.1 Verwendung des Pontryaginschen Minimumprinzip
Lösung von NMPC mittels PMP
Lösung von NMPC mittels PMP
Lösung von NMPC mittels PMP
Lösung von NMPC mittels PMP
Lösung von NMPC mittels PMP
Optimaler Steuerprozess - Bolza-Form Definition Das Problem Minimiere J(x, u) = g(x(t 0 ), x(t f )) + unter den Nebenbedingungen heißt optimaler Steuerprozess tf t 0 ẋ(t) = f (x(t), u(t), t), ψ(x(t 0 ), x(t f )) = 0, u(t) U, t [t 0, t f ], f 0 (x(t), u(t), t)dt
Randbedingungen Definition: Sei r N, 0 r 2n. Die Bedingung ψ(x(t 0 ), x(t f )) = 0, für Anfangs- und Endzustand mit einer (bzgl. x(t 0 ) und x(t f )) stetig differenzierbaren Funktion ψ : R n R n R r wird eine allgemeine Randbedingung genannt.
Optimale Lösung Definition: Ein zulässiges Funktionenpaar (x, u ) zur Endzeit t f heißt optimale Lösung des optimalen Steuerprozesses, falls J(x, u ) J(x, u) für alle zulässigen Paare (x, u) zur Endzeit t f gilt.
Hamiltion-Funktion und adjungierte Variable Definition: Sei λ 0 R und λ R n. Dann heißt H(x, λ, u, t) := λ 0 f 0 (x, u, t) + λ T f (x, u, t) die Hamilton-Funktion zum Steuerprozess. λ wird adjungierte Variable zu x genannt
Pontryaginsches Minimumprinzip Für eine optimale Lösung (x, u ) existieren eine reelle Zahl λ 0 0, eine stetig und stückweise stetig differenzierbare Funktion λ : [t 0, t f ] R n, sowie ein Vektor ρ R r, so dass gelten: 1. (λ 0, λ T (t), ρ T ) 0, t [t 0, t f ]
Pontryaginsches Minimumprinzip Für eine optimale Lösung (x, u ) existieren eine reelle Zahl λ 0 0, eine stetig und stückweise stetig differenzierbare Funktion λ : [t 0, t f ] R n, sowie ein Vektor ρ R r, so dass gelten: 1. (λ 0, λ T (t), ρ T ) 0, t [t 0, t f ]
Pontryaginsches Minimumprinzip 2. An allen Stetigkeitsstellen t von u in [t 0, t f ] gelten: Minimumbedingung: H(x (t), λ(t), u (t), t) = min u U H(x (t), λ(t), u, t), Adjungierte Differentialgleichungen: λ T = x H(x (t), λ(t), u (t), t),
Pontryaginsches Minimumprinzip 2. An allen Stetigkeitsstellen t von u in [t 0, t f ] gelten: Minimumbedingung: H(x (t), λ(t), u (t), t) = min u U H(x (t), λ(t), u, t), Adjungierte Differentialgleichungen: λ T = x H(x (t), λ(t), u (t), t),
Pontryaginsches Minimumprinzip 2. An allen Stetigkeitsstellen t von u in [t 0, t f ] gelten: Minimumbedingung: H(x (t), λ(t), u (t), t) = min u U H(x (t), λ(t), u, t), Adjungierte Differentialgleichungen: λ T = x H(x (t), λ(t), u (t), t),
Pontryaginsches Minimumprinzip 3. Transversalitätsbedingung: λ(t 0 ) = x(t0 )(λ 0 g(x (t 0 ), x (t f )) + ρ T ψ(x (t 0 ), x (t f ))) T, λ(t f ) = x(tf )(λ 0 g(x (t 0 ), x (t f )) + ρ T ψ(x (t 0 ), x (t f ))) T,
Varitationsrechnung Vereinfachung: Zielfunktional besteht nur aus bestimmtem Integral Integrand nur von x(t) und zusätzlich von ẋ(t) abhängig keine Nebenbedingungen
Varitationsrechnung Vereinfachung: Zielfunktional besteht nur aus bestimmtem Integral Integrand nur von x(t) und zusätzlich von ẋ(t) abhängig keine Nebenbedingungen
Varitationsrechnung Vereinfachung: Zielfunktional besteht nur aus bestimmtem Integral Integrand nur von x(t) und zusätzlich von ẋ(t) abhängig keine Nebenbedingungen
Variationsrechnung Variationsproblem: J = tf t 0 f (t, x, ẋ(t))dt Gesucht ist diejenige Funktion x = x(t), welche die Randbedingungen x(t 0 ) = x 0 und x(t f ) = x f erfüllt und J minimiert.
Variationsrechnung
Variationsrechnung Vorgehensweise von Euler: Annahme: Lösung x = x (t) sei gefunden Konstruktion einer einparametrigen Schar von Vergleichskurven x(t) = x (t) + ɛ x(t), (11) ɛ 0 < ɛ < ɛ 0 (ɛ 0 > 0), x(t) beliebige Funktion mit x(t 0 ) = 0, x(t f ) = 0
Variationsrechnung Vorgehensweise von Euler: Annahme: Lösung x = x (t) sei gefunden Konstruktion einer einparametrigen Schar von Vergleichskurven x(t) = x (t) + ɛ x(t), (11) ɛ 0 < ɛ < ɛ 0 (ɛ 0 > 0), x(t) beliebige Funktion mit x(t 0 ) = 0, x(t f ) = 0
Variationsrechnung
Variationsrechnung eingesetzt ins Zielfunktional: J = tf t 0 f (t, x (t) + ɛ x(t), ẋ (t) + ɛ x(t))dt = F (ɛ) optimale Lösung x (t) ist für ɛ = 0 in der Vergleichskurvenschar enthalten F (ɛ) muss für ɛ = 0 Minimum haben [ ] df = 0 dɛ ɛ=0
Variationsrechnung eingesetzt ins Zielfunktional: J = tf t 0 f (t, x (t) + ɛ x(t), ẋ (t) + ɛ x(t))dt = F (ɛ) optimale Lösung x (t) ist für ɛ = 0 in der Vergleichskurvenschar enthalten F (ɛ) muss für ɛ = 0 Minimum haben [ ] df = 0 dɛ ɛ=0
Variationsrechnung Nach Differenzieren nach ɛ, Nullsetzen von ɛ, partieller Integration: J = tf t 0 [ f x d ( )] f x(t)dt = 0 dt ẋ soll für eine bis auf die Randwerte beliebige Funktion x(t) gelten es muss gelten: t [t 0, t f ]: f x d dt ( f ẋ ) = 0. (Euler - Lagrangesche Differentialgleichung)
Variationsrechnung Nach Differenzieren nach ɛ, Nullsetzen von ɛ, partieller Integration: J = tf t 0 [ f x d ( )] f x(t)dt = 0 dt ẋ soll für eine bis auf die Randwerte beliebige Funktion x(t) gelten es muss gelten: t [t 0, t f ]: f x d dt ( f ẋ ) = 0. (Euler - Lagrangesche Differentialgleichung)
Variationsrechnung Als allgemeine Lösung ergibt sich eine zweiparametrige Kurvenschar: x = x(t, c 1, c 2 ) c 1 und c 2 sind aus den Randbedingungen zu ermitteln: x(t 0, c 1, c 2 ) = x 0, x(t f, c 1, c 2 ) = x f
Variationsrechnung durch Eulersche Idee, eine einparametrige Vergleichskurvenschar einzuführen, Rückführung des Variationsproblem auf ein gewöhnliches Extremalproblem PMP Weiterentwicklung der Variationsrechnung
Variationsrechnung durch Eulersche Idee, eine einparametrige Vergleichskurvenschar einzuführen, Rückführung des Variationsproblem auf ein gewöhnliches Extremalproblem PMP Weiterentwicklung der Variationsrechnung
Pontryaginsches Minimumprinzip Ergebnis des PMP: u kann in Abhängigkeit von x, λ und t aus der Minimumbedingung bestimmt und dann für jedes t in das kanonische Differentialgleichungssystem eingesetzt werden 2-Punkt-Randwertproblem für 2n gewöhnliche Differentialgleichungen. Lösung des Randwertproblems mit numerischen Verfahren
Pontryaginsches Minimumprinzip Ergebnis des PMP: u kann in Abhängigkeit von x, λ und t aus der Minimumbedingung bestimmt und dann für jedes t in das kanonische Differentialgleichungssystem eingesetzt werden 2-Punkt-Randwertproblem für 2n gewöhnliche Differentialgleichungen. Lösung des Randwertproblems mit numerischen Verfahren
Pontryaginsches Minimumprinzip Ergebnis des PMP: u kann in Abhängigkeit von x, λ und t aus der Minimumbedingung bestimmt und dann für jedes t in das kanonische Differentialgleichungssystem eingesetzt werden 2-Punkt-Randwertproblem für 2n gewöhnliche Differentialgleichungen. Lösung des Randwertproblems mit numerischen Verfahren
Pontryaginsches Minimumprinzip Ergebnis des PMP: u kann in Abhängigkeit von x, λ und t aus der Minimumbedingung bestimmt und dann für jedes t in das kanonische Differentialgleichungssystem eingesetzt werden 2-Punkt-Randwertproblem für 2n gewöhnliche Differentialgleichungen. Lösung des Randwertproblems mit numerischen Verfahren
3.2 Verfahren zur Lösung des Randwertproblems
Einfach - Schießverfahren
Einfach - Schießverfahren Randwertproblem: ψ(x(t 0 ), x(t f )) = 0. ẋ = f (x, t), (12)
Einfach-Schießverfahren Bestimmung eines Anfangswertes s R n für das Anfangswertproblem ẋ = f (x, t), (13) x(t 0 ) = s, so dass die Lösung x(t) = x(t; s) die Randbedingungen (12) erfüllt.
Einfach-Schießverfahren Das heißt: ψ(x(t 0 ; s), x(t f ; s)) ψ(s, x(t f ; s)) = 0. Es ist eine Nullstelle der Funktion F(s) := ψ(s, x(t f ; s)) zu bestimmen.
Einfach-Schießverfahren Das heißt: ψ(x(t 0 ; s), x(t f ; s)) ψ(s, x(t f ; s)) = 0. Es ist eine Nullstelle der Funktion F(s) := ψ(s, x(t f ; s)) zu bestimmen.
Nullstellenbestimmung Newtonverfahren Newtonartige Verfahren
Nullstellenbestimmung Newtonverfahren Newtonartige Verfahren
Einfach-Schießverfahren Bestimmung von x(t f ; s) durch Lösen des Anfangswertproblems (13) in jedem Iterationsschritt Differenz der durch die Anfangsschätzung bestimmten Lösung in t f, d.h. x(t f ; s), und der bekannten Endbedingungen x(t f ) wird zu Null gerechnet
Einfach-Schießverfahren Bestimmung von x(t f ; s) durch Lösen des Anfangswertproblems (13) in jedem Iterationsschritt Differenz der durch die Anfangsschätzung bestimmten Lösung in t f, d.h. x(t f ; s), und der bekannten Endbedingungen x(t f ) wird zu Null gerechnet
Einfach - Schießverfahren
Lösung des Anfangswertproblems Einschrittverfahren (Polygonzugverfahren von Euler, Runge-Kutta Verfahren) Mehrschrittverfahren (Adams - Bashforth, Adams - Moulton) Extrapolationsverfahren Schrittweitensteuerung
Lösung des Anfangswertproblems Einschrittverfahren (Polygonzugverfahren von Euler, Runge-Kutta Verfahren) Mehrschrittverfahren (Adams - Bashforth, Adams - Moulton) Extrapolationsverfahren Schrittweitensteuerung
Lösung des Anfangswertproblems Einschrittverfahren (Polygonzugverfahren von Euler, Runge-Kutta Verfahren) Mehrschrittverfahren (Adams - Bashforth, Adams - Moulton) Extrapolationsverfahren Schrittweitensteuerung
Lösung des Anfangswertproblems Einschrittverfahren (Polygonzugverfahren von Euler, Runge-Kutta Verfahren) Mehrschrittverfahren (Adams - Bashforth, Adams - Moulton) Extrapolationsverfahren Schrittweitensteuerung
Einfach - Schießverfahren Problem: erhebliche Ungenauigkeiten, sofern x(t) = x(t; s) sehr empfindlich von s abhängt
Mehrzielmethode
Mehrfach - Schießverfahren Unterteilung von [t 0, t f ] Anwendung des Einfachschießverfahrens auf Teilintervalle für werden die Werte t 0 = t 1 < t 2... < t M = t f s k = x(t k ), k = 1,..., M 1 der exakten Lösung x(t) des Randwertproblems (12) gleichzeitig iterativ berechnet
Mehrfach - Schießverfahren Unterteilung von [t 0, t f ] Anwendung des Einfachschießverfahrens auf Teilintervalle für werden die Werte t 0 = t 1 < t 2... < t M = t f s k = x(t k ), k = 1,..., M 1 der exakten Lösung x(t) des Randwertproblems (12) gleichzeitig iterativ berechnet
Mehrfach - Schießverfahren Unterteilung von [t 0, t f ] Anwendung des Einfachschießverfahrens auf Teilintervalle für werden die Werte t 0 = t 1 < t 2... < t M = t f s k = x(t k ), k = 1,..., M 1 der exakten Lösung x(t) des Randwertproblems (12) gleichzeitig iterativ berechnet
Mehrfach - Schießverfahren x(t; t k, s k ) sei Lösung des Anfangswertproblems ẋ = f (x, t), (14) x(t k ) = s k (15)
Mehrfach-Schießverfahren Vektoren s k, k = 1,..., M 1 sind so zu bestimmen, dass die aus den x(t; t k, s) stückweise zusammengesetzte Funktion x(t) := x(t; t k, s k ) für t [t k, t k+1 [, k = 1,..., M 1, stetig ist und die Randbedingungen ψ(x(t 0 ), x(t f )) = 0 erfüllt.
Mehrfach - Schießverfahren
Mehrfach - Schießverfahren n(m 1) Bedingungen: x(t k+1 ; t k, s k ) = s k+1, k = 1,..., M 2, (Stetigkeit) ψ(s 1, x(t M ; t M 1, s M 1)) = 0, (Randbedingungen) für die n(m 1) unbekannten Komponenten s (j) k, j = 1,..., n, k = 1,..., M 1 der s k
Mehrfach - Schießverfahren Gleichungssystem: F 1 (s 1, s 2 ) F 2 (s 2, s 3 ) F (s) :=. := F M 2 (s M 2, s M 1 ) F M 1 (s 1, s M 1 ) = 0 x(t 2 ; t 1, s 1 ) s 2 x(t 3 ; t 2, s 2 ) s 3. x(t M 1 ; t M 2, s M 2 ) s M 1 ψ(s 1, x(t M ; t M 1, s M 1 ))
Verfahren zur Nullstellenbestimmung Newton Quasi - Newton Reduzierung des Rechenaufwands durch Verwendung von Broyden - Approximationen zur Bestimmung von F(s)
Verfahren zur Nullstellenbestimmung Newton Quasi - Newton Reduzierung des Rechenaufwands durch Verwendung von Broyden - Approximationen zur Bestimmung von F(s)
Verfahren zur Nullstellenbestimmung Newton Quasi - Newton Reduzierung des Rechenaufwands durch Verwendung von Broyden - Approximationen zur Bestimmung von F(s)
3.3 Anwendung des Pontryaginschen Minimumprinzip
Anwendung des Pontryaginschen Minimumprinzips Gegeben sei das folgende Problem: unter min N 1 j=0 tj+1 t j u(t)dt ẋ(t) = e x(t) x(t)u(t) = f (x(t), u(t)) x(t 0 ) = x 0 x(t f ) = x f 0 u(t) 4 t 0... t f
Anwendung des Pontryaginschen Minimumprinzips Gegeben sei das folgende Problem: unter min N 1 j=0 tj+1 t j u(t)dt ẋ(t) = e x(t) x(t)u(t) = f (x(t), u(t)) x(t 0 ) = x 0 x(t f ) = x f 0 u(t) 4 t 0... t f
Anwendung des Pontryaginschen Minimumprinzips Gegeben sei das folgende Problem: unter min N 1 j=0 tj+1 t j u(t)dt ẋ(t) = e x(t) x(t)u(t) = f (x(t), u(t)) x(t 0 ) = x 0 x(t f ) = x f 0 u(t) 4 t 0... t f
Anwendung des Pontryaginschen Minimumprinzips Gegeben sei das folgende Problem: unter min N 1 j=0 tj+1 t j u(t)dt ẋ(t) = e x(t) x(t)u(t) = f (x(t), u(t)) x(t 0 ) = x 0 x(t f ) = x f 0 u(t) 4 t 0... t f
Anwendung des Pontryaginschen Minimumprinzips Gegeben sei das folgende Problem: unter min N 1 j=0 tj+1 t j u(t)dt ẋ(t) = e x(t) x(t)u(t) = f (x(t), u(t)) x(t 0 ) = x 0 x(t f ) = x f 0 u(t) 4 t 0... t f
Anwendung des Pontryaginschen Minimumprinzips Gegeben sei das folgende Problem: unter min N 1 j=0 tj+1 t j u(t)dt ẋ(t) = e x(t) x(t)u(t) = f (x(t), u(t)) x(t 0 ) = x 0 x(t f ) = x f 0 u(t) 4 t 0... t f
Anwendung des Pontryaginschen Minimumprinzips Gegeben sei das folgende Problem: unter min N 1 j=0 tj+1 t j u(t)dt ẋ(t) = e x(t) x(t)u(t) = f (x(t), u(t)) x(t 0 ) = x 0 x(t f ) = x f 0 u(t) 4 t 0... t f
Bestimmung der Hamiltonfunktion Definition Hamiltonfunktion: H(x, λ, u, t) := λ 0 f 0 (x, u, t) + λ T f (x, u, t) Es gilt: H(x, λ, u, t) = λ(t)[e x(t) x(t)u(t)] + λ 0 u(t)
Bestimmung der Hamiltonfunktion Definition Hamiltonfunktion: H(x, λ, u, t) := λ 0 f 0 (x, u, t) + λ T f (x, u, t) Es gilt: H(x, λ, u, t) = λ(t)[e x(t) x(t)u(t)] + λ 0 u(t)
Minimumbedingung Definition Minimumbedingung: H(x (t), λ(t), u (t), t) = min u U H(x (t), λ(t), u, t) min u U λ(t)ex (t) λ(t)x (t)u(t) + λ 0 u(t) = min u U λ(t)ex (t) + u(t)[λ 0 λ(t)x (t)]
Minimumbedingung Definition Minimumbedingung: H(x (t), λ(t), u (t), t) = min u U H(x (t), λ(t), u, t) min u U λ(t)ex (t) λ(t)x (t)u(t) + λ 0 u(t) = min u U λ(t)ex (t) + u(t)[λ 0 λ(t)x (t)]
Minimumbedingung min u U λ(t)ex (t) + u(t)[λ 0 λ(t)x (t)] 1. Fall: λ 0 λ(t)x (t) > 0 Minimum für u(t) = 0 2. Fall: λ 0 λ(t)x (t) < 0 Minimum für u(t) = 4 3. Fall: λ 0 λ(t)x (t) = 0 singuläre Steuerung nur noch der 3.Fall ist zu untersuchen
Minimumbedingung min u U λ(t)ex (t) + u(t)[λ 0 λ(t)x (t)] 1. Fall: λ 0 λ(t)x (t) > 0 Minimum für u(t) = 0 2. Fall: λ 0 λ(t)x (t) < 0 Minimum für u(t) = 4 3. Fall: λ 0 λ(t)x (t) = 0 singuläre Steuerung nur noch der 3.Fall ist zu untersuchen
Minimumbedingung min u U λ(t)ex (t) + u(t)[λ 0 λ(t)x (t)] 1. Fall: λ 0 λ(t)x (t) > 0 Minimum für u(t) = 0 2. Fall: λ 0 λ(t)x (t) < 0 Minimum für u(t) = 4 3. Fall: λ 0 λ(t)x (t) = 0 singuläre Steuerung nur noch der 3.Fall ist zu untersuchen
Minimumbedingung min u U λ(t)ex (t) + u(t)[λ 0 λ(t)x (t)] 1. Fall: λ 0 λ(t)x (t) > 0 Minimum für u(t) = 0 2. Fall: λ 0 λ(t)x (t) < 0 Minimum für u(t) = 4 3. Fall: λ 0 λ(t)x (t) = 0 singuläre Steuerung nur noch der 3.Fall ist zu untersuchen
Adjungierte Differentialgleichung Definition Adjungierte Differentialgleichung: λ T = x H(x (t), λ(t), u (t), t) λ(t) = x H(x, λ, u ) = λ(t)e x (t) + λ(t)u (t)
Adjungierte Differentialgleichung Definition Adjungierte Differentialgleichung: λ T = x H(x (t), λ(t), u (t), t) λ(t) = x H(x, λ, u ) = λ(t)e x (t) + λ(t)u (t)
Singuläre Steuerung σ(t) := λ 0 λ(t)x (t) = 0 auf singulärem Intervall d dt σ(t) 0 d dt σ(t) = λ(t)x (t) λ(t)ẋ (t) = [λ(t)e x (t) λ(t)u (t)]x (t) λ(t)[e x (t) x (t)u (t)] = λ(t)e x (t) [x (t) 1] = 0
Singuläre Steuerung σ(t) := λ 0 λ(t)x (t) = 0 auf singulärem Intervall d dt σ(t) 0 d dt σ(t) = λ(t)x (t) λ(t)ẋ (t) = [λ(t)e x (t) λ(t)u (t)]x (t) λ(t)[e x (t) x (t)u (t)] = λ(t)e x (t) [x (t) 1] = 0
Singuläre Steuerung σ(t) := λ 0 λ(t)x (t) = 0 auf singulärem Intervall d dt σ(t) 0 d dt σ(t) = λ(t)x (t) λ(t)ẋ (t) = [λ(t)e x (t) λ(t)u (t)]x (t) λ(t)[e x (t) x (t)u (t)] = λ(t)e x (t) [x (t) 1] = 0
Singuläre Steuerung 1. 2. Für λ 0 = 1 : auf singulärem Intervall gilt: λ 0 λ(t)x (t) = 0 λ(t)x (t) = 1 λ(t)e x (t) [x (t) 1] = 0 x (t) 1 ẋ (t) 0 0 = ẋ (t) = e x (t) x (t)u (t) = e u (t) u (t) = e
Singuläre Steuerung 1. 2. Für λ 0 = 1 : auf singulärem Intervall gilt: λ 0 λ(t)x (t) = 0 λ(t)x (t) = 1 λ(t)e x (t) [x (t) 1] = 0 x (t) 1 ẋ (t) 0 0 = ẋ (t) = e x (t) x (t)u (t) = e u (t) u (t) = e