Nichtlineare modellpradiktiveRegelung
Seminararbeit
von
Sabine Bohm, Miriam Kießling
FAKULTAT FUR MATHEMATIK UND PHYSIK
MATHEMATISCHES INSTITUT
Datum: 23. und 30. Mai 2006 Betreuung:
Prof. Dr. L. Grune
Inhaltsverzeichnis
Tabellenverzeichnis I
Abbildungsverzeichnis III
1 Nichtlineare modellpradiktive Regelung 3
1.1 Einfuhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Variablen-Transformation . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.2 LMPC mit multiplen linearen Modellen . . . . . . . . . . . . . . . . . 7
1.2 Indirekte Losung von NMPC . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.1 Verwendung des Pontryaginschen Minimumprinzips . . . . . . . . . . 10
1.2.2 Verfahren zur Losung des Randwertproblems . . . . . . . . . . . . . . 11
1.2.3 Dynamische Programmierung nach Bellman . . . . . . . . . . . . . . 14
1.3 direct multiple shooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.4 Erweiterter Kalman - Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5 Anwendungen: Reinst-Destillationsanlage . . . . . . . . . . . . . . . . . . . . 17
I
Abbildungsverzeichnis
1.1 nichtkonvexes Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Linearisierung durch Variablen - Transformation . . . . . . . . . . . . . . . . 6
1.3 LMPC mit multiplen linearen Modellen . . . . . . . . . . . . . . . . . . . . . 8
1.4 LOLIMOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5 LOLIMOT-Baum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.6 Verwendung des PMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.7 single shooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.8 multiple shooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.9 Destillations-Kolonne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.10 PI-Regler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.11 Ziegler-Nichols, Wendetangentenverfahren . . . . . . . . . . . . . . . . . . . 19
1.12 NMPC-Regler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.13 Vergleich NMPC–PI bei Anderung der Zuflussrate . . . . . . . . . . . . . . . 22
1
Kapitel 1
Nichtlineare modellpradiktive
Regelung
1.1 Einfuhrung
Wahrend die lineare modellpradiktive Regelung in vielen Anwendungen zu tragen kommt, ist
die nichtlineare eher wenig vertreten. Zwar sind verfahrenstechnische Prozesse in der Regel
nichtlinear, viele konnen aber, ohne dass zu große Abweichungen entstehen, linearisiert und
durch lineare MPC, fur die es schon eine ausgereifte Theorie gibt, geregelt werden. Jedoch
ist das bei einigen Anwendungen nicht der Fall. Es konnen zu große Abweichungen von der
Praxis auftreten, so dass andere Losungswege in Betracht gezogen werden mussen. Dies ist
zum Beispiel bei Reinstdestilationsanlagen der Fall, bei denen in einer engen Umgebung
ihres Betriebspunktes eine starke lokale Nichtlinearitat auftritt. Aber auch bei Prozessen,
die lokal nur schwach nichtlinear sind, jedoch auf einem weiten Arbeitsbereich betrieben
werden sollen, ist es schwierig eine geeignete Linearisierung zu finden. (z.B. bei Mehrprodukt-
Polymerisationsanlagen, Krafterkanlagen mit haufigen großen Lastenwechseln) Unterschied
von NMPC zu linearer MPC:
• Großerer Aufwand bei der Entwicklung des Prozessmodells
• Parameteridentifikation nichtlinearer dynamischer Systeme schwieriger
• großerer Aufwand zur Losung von Optimierungsproblems (nichtkonvexes Problem)
• Stabilitat, Optimalitat und Robustheit viel komplizierter
3
4 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
Genauere Betrachtung des konvexen Problems:
Zur Losung des Problems muss Konvexitat gelten, da bei konvexen Programmen gilt:
Jeder lokale Minimierer ist ein globaler Minimierer
⇒ globale Losung
Problem: nichtlineare Systeme sind im Allg. nichtkonvex
Abbildung 1.1: nichtkonvexes Problem
Das zu losende Problem ist wie gewohnt in der Form eine DGL gegeben.
Definition 1.1 (DGL).
x(t) = f(x(t), u(t)), x(0) = x0 (1.1)
mit den Eingangs- und Zustanden:
u(t) ∈ U , ∀t ≥ 0 x(t) ∈ X , ∀t ≥ 0 (1.2)
wobei X ⊆ Rn die Menge der durchfuhrbaren Eingange und U ⊆ Rm die der durchfuhrbaren
Zustande ist. Dabei er erfullen diese die folgenden Annahmen:
A(1) U ⊆ Rm ist kompakt, X ⊆ Rnist zusammenhangend und (0, 0) ∈ X × UA(2) Das Vektorfeld f : Rn × Rm → Rn ist stetig erfullt f(0, 0) = 0 und ist lokal Lipschitz
1.1. EINFUHRUNG 5
stetig in x.
A(3) die Differenzialgleichung hat eine eindeutige stetige Losung fur jede Anfangsbedingung
in der Umgebung von Interesse und fur jede stuckweise stetige und rechtseitig stetige Funktion
u(·) : [0, TP ] → U .
Definition 1.2 (Minimierungsproblem).
minu(·)
J(x(t), u(·);Tp) (1.3)
mit
J(x(t), u(·);Tp) :=
∫ t+Tp
t
f0(x(τ), u(τ))dτ) (1.4)
finite Form → fur Stabilitat → infinite Form (Tp →∞)
(Bellman-Prinzip:
Durchfuhrbarkeit & Optimalitat in einem Berechnungsumlauf ⇒ Durchfuhrbarkeit & Opti-
malitat im nachsten aber in der Praxis infinite Form selten, da die Berechnung des open-loop
OPC zu langsam ist, fur die finite Form ware ein langer Horizont notig, um infiniten nach-
zuahmen.
(Bei kurzen Horizont konnen Losungen zu verschieden sein)
⇒ Quasi-Infinite-Horizont-NMPC mit
J(x(t), u(·);Tp) :=
∫ t+Tp
t
f0(x(τ), u(τ))dτ) + g(x(t+ Tp)) (1.5)
unter den Nebenbedingungen:
x(τ) = f(x(τ), u(τ)), x(t) = x(t)
u(τ) ∈ U , ∀τ ∈ [t, t+ Tp]
x(τ) ∈ X ∀τ ∈ [t, t+ Tp]
x(τ) ∈ EHierbei ist E die Endregion
1.1.1 Variablen-Transformation
Es ist moglich durch Anwendung nichtlinearer Transformationsbeziehungen auf die Regel-
und/oder Stellgroßen eine Linearisierung der Zusammenhangs zwischen diesen Großen zu
erzeugen.
Prinzip:
6 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
Abbildung 1.2: Linearisierung durch Variablen - Transformation
Dadurch erhalt man ein lineares”Ersatz“-System, fur welches ein linearer MPC-Regler ent-
wickelt werden kann. Hierbei wird g(•) in der Form eines Vorfilters gebraucht und auch zur
Transformation des Feedback verwendet. Aber es ist schwierig geeignete Transformations-
beziehungen g(•) und q(•) zu finden, außerdem sind sie meist nur auf einen bestimmten
Prozess anwendbar.
Man muss also diese immer neu entweder aus einem theoretischen Prozessmodel, durch Ex-
perimente oder Simulationsstudien entworfen werden. Hierbei ist vor allem Expertenwissen
gefragt. Die grundlegenden Ideen der Transformationsmethode werden nun im Folgenden an
einem nichtlinearen Modell gezeigt.
x(t) =dx
dt= f(x, u) (1.6)
wobei f irgendeine nichtlineare Funktion von x (die Zustandsvariable des Systems) und u
(die Eingangskontrollvariable) ist. Nun zerlegt man die Funktion, in einen Teil, der nur von
x abhangt, und den Rest.
dx
dt= f(x, u) = c1f1(x) + c2f2(x, u) (1.7)
Dann denkt man sich eine Transformation:
z = g(x) (1.8)
wobei g(·) so gewahlt wird, dass das Prozessmodell, welches mit den ursprunglichen Variablen
nichtlinear ist, nun entweder die Form
dz
dt= az + bv (1.9)
oderdz
dt= a+ bv (1.10)
1.1. EINFUHRUNG 7
hat, welche in z und v linear sind.
Durch die Ableitung von z = g(x) erhalt man:
dz
dt=dz
dx
dx
dt(1.11)
wenn man in diese Gleichung die Zerlegte Differenzialgleichung einsetzt, ergibt sich:
dz
dt= c1f1(x)
dz
dx+ c2f2(x, u)
dz
dx(1.12)
Nun wahlt man z = g(x) so, dass gilt:
dz
dx=
z
f1(x)(1.13)
wobei
f2(x, u)dz
dx= v (1.14)
nach Einsetzen von Gleichung (1.14) und (1.13) in (1.12) ist diese identisch mit (1.9), wobei
a = c1 und b = c2.
Durch Anwendung von Variation der Konstanten auf (1.14) erhalt man:
dz
z=
dx
f1(x)
oder
lnz =
∫dx
f1(x)
und schließlich
z = exp[
∫dx
f1(x)]
Durch Einsetzen von Gleichung (1.13) in (1.14) und Umformung erhalt man:
f2(x, u) =vf1(x)
z
wobei v nun die Kontrolle (also u) im Ersatz-System darstellt. (als alternative kann man
auch die nichtlineare Gleichung (1.12) zur linearen Gleichung (1.10) transformieren, wobei
hier dann z =∫
dxf1(x)
und f2(x, u) = vf1(x) gilt. Jeweils die letzte Gleichung lost man dann
nach u auf, um
u = q(x, v)
zu erhalten. Dadurch erhalt man ein lineares Problem, das durch MPC gelost werden kann.
1.1.2 LMPC mit multiplen linearen Modellen
Bei dieser Form der Regelung wird der gesamte Arbeitsbereich in n Teilbereiche untergliedert,
fur die jeweils ein lineares Prozessmodell identifiziert wird. Die folgende Abbildung zeigt das
Grundprinzip dieser Vorgehensweise:
8 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
Abbildung 1.3: LMPC mit multiplen linearen Modellen
Es werden alle Modelle parallel zur Vorhersage der Regelgroßen y herangezogen und die
Vorhersagen der einzelnen Modelle gewichtet aufsummiert. Daraus ergibt sich ein gewichteter
Mittelwert y =∑n
i=1 αiy, wobei die Gewichtsfaktoren αi rekursiv aus den Residuen εj,k =
(y − yi) ermittelt werden konnen, dabei sind αi ∈ [0, 1] und∑αi = 1. (Je großer αi, desto
besser beschreibt das i - te Teilmodell, die aktuell Verfahrensweise.)
αj,k =pj,k∑N
m=1 pm,k
wobei pj,k =exp(− 1
2εTj,kKεj,k)pj,k−1PN
m=1 exp(− 12εTm,kKεm,k)pm,k−1
,
dabei ist K die Konvergenzmatrix.
Die großte Herausforderung bei dieser Losungsmethode besteht in der Bestimmung der n
Teilmodelle und die geeignete Unterteilung des Arbeitsbereiches. Als einfachste Zerlegungs-
methode kann die Unterteilung des gesamten Arbeitsbereichs in ein gleichmaßiges mehrdi-
mensionales Gitter im Raum der Eingangsvariablen (umfasst Steuergroßen und bekannte
Storgroßen) gewahlt werden. Aus den Gitterpunkten wird daraus jeweils ein lineares Modell
identifiziert. Jedoch fuhrt dies zu einer riesigen Zahl von Modellen, die dann gefunden werden
mussen. Daher gibt es systematische Konstruktionsverfahren, die zu einer geringeren Zahl
von Modellen fuhren. Ein besonders effizientes ist das so genannte LOLIMOT-Verfahren
(Local Linear Model Tree), fur das auch eine Matlab-Toolbox existiert. Hierbei wird der
Eingangsraum sukzessive geteilt. Zuerst wird er gesamte Raum halbiert, dann der mit der
großten Kostenfunktion wieder in zwei Halften und so weiter...
1.2. INDIREKTE LOSUNG VON NMPC 9
Abbildung 1.4: LOLIMOT
Abbildung 1.5: LOLIMOT-Baum
1.2 Indirekte Losung von NMPC
Bei der indirekten Losung wird der MPC - Algorithmus direkt auf das nichtlineare System
angewandt. Als Problem erweist sich, dass hierbei dass nun ein nichtlineares Kostenfunktio-
nal unter nichtlinearen Nebenbedingungen minimiert werden muss. Durch die Anwendung
des Pontryaginschen Minimumprinzips oder durch Dynamische Programmierung wird dieses
trotzdem moglich.
10 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
1.2.1 Verwendung des Pontryaginschen Minimumprinzips
Abbildung 1.6: Verwendung des PMP
Definition 1.3 (Randbedingungen).
Sei r ∈ N, 0 ≤ r ≤ 2n. Die Bedingung
ψ(x(t0), x(tf )) = 0 (1.15)
fur Anfangs- und Endzustand mit einer (bezuglich x(t0) und x(tf )) stetigen differenzierbaren
Funktion ψ : Rn × Rn → Rr wird eine allgemeine Randbedingung genannt.
Definition 1.4 (Optimaler Steuerprozess in Bolza-Form).
Das Problem
Minimiere
J(x, u) = g(x(t0), x(tf )) +
∫ tf
t0
f0(x(t), u(t), t)dt
unter den Nebenbedingungen
x(t) = f(x(t), u(t), t),
ψ(x(t0), x(tf )) = 0,
u(t) ∈ U, t ∈ [t0, tf ],
heißt optimaler Steuerprozess
Definition 1.5 (optimale Losung).
Ein zulassiges Funktionenpaar (x∗, u∗) zur Endzeit tf heißt optimale Losung des optimalen
Steuerprozesses, falls J(x∗, u∗), falls
J(x∗, u∗) ≤ J(x, u)
fur alle zulassigen Paare (x, u) zur Endzeit tf gilt.
1.2. INDIREKTE LOSUNG VON NMPC 11
Definition 1.6 (Hamilton-Funktion und adjungierte Variable).
Sei λ0 ∈ R und λ ∈ Rn. Dann heißt
H(x, λ, u, t) := λ0f0(x, u, t) + λTf(x, u, t)
die Hamilton-Funktion zum Steuerprozess.
Der Spaltenvektor λ ∈ Rn wird adjugierte Variable zu x genannt.
Satz 1.7 (Pontyraginsches Minimumprinzip).
Fur eine optimale Losung (x∗, u∗) existieren eine reelle Zahl λ0 ≥ 0, eine stetig und stuckweise
stetig differenzierbare Funktion
λ : [t0, tf ] → Rn,
sowie ein Vektor ρ ∈ Rr, so dass gelten:
1.
(λ0, λT (t), ρT ) 6= 0, ∀ t ∈ [t0, tf ]
2. An allen Stetigkeitsstellen t von u∗ in [t0, tf ] gelten:
• Minimumbedingung:
H(x∗(t), λ(t), u∗(t), t) = minu∈U
H(x∗(t), λ(t), u, t),
• Adjungierte Differentialgleichungen:
λT = −∇xH(x∗(t), λ(t), u∗(t), t),
3. Transversalitatsbedingung:
λ(t0) = −∇x(t0)(λ0g(x∗(t0), x
∗(tf )) + ρTψ(x∗(t0), x∗(tf )))
T ,
λ(tf ) = ∇x(tf )(λ0g(x∗(t0), x
∗(tf )) + ρTψ(x∗(t0), x∗(tf )))
T ,
1.2.2 Verfahren zur Losung des Randwertproblems
Einfach - Schießverfahren
Gegeben sei das Randwertproblem
x(t) = f(x, t),
ψ(x(t0), x(tf )) = 0.(1.16)
12 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
Es wird ein Anfangswert s ∈ Rn fur das Anfangswertproblem
x = f(x, t),
x(t0) = s,(1.17)
bestimmt, so dass die Losung x(t) = x(t; s) den Randbedingungen genugt,
ψ(x(t0; s), x(tf ; s)) ≡ ψ(s, x(tf ; s)) = 0. (1.18)
Hierzu ist eine Nullstelle der Funktion
F (s) := ψ(s, x(tf ; s)) (1.19)
zu bestimmen.
Die Nullstellenbestimmung kann mit dem Newtonverfahren oder newtonahnlichen Verfahren
erfolgen.
x(tf , s) wird in jedem Iterationsschritt neu bestimmt. Die Differenz der durch die An-
fangsschatzung bestimmten Losung in tf d.h. x(tf , s) und der bekannten Endbedingung
x(tf ) wird zu 0 gerechnet.
Abbildung 1.7: single shooting
Das Anfangswertproblem kann durch folgende Verfahren gelost werden:
• Einschrittverfahren (Polygonzugverfahren von Euler, Runge-Kutta-Verfahren)
• Mehrschrittverfahren (Adams-Bashforth, Adams-Moulton)
• Extrapolationsverfahren
1.2. INDIREKTE LOSUNG VON NMPC 13
• Schrittweitensteuerung
Problematisch bei der Losung des Randwertproblems durch das Einfachschießverfahren ist
die Tatsache, dass erhebliche Ungenauigkeiten auftreten konnen, wenn x(t) = x(t; s) sehr
empfindlich von s abhangt.
Mehrfach - Schießverfahren
Um das Problem der von s empfindlich abhangenden Losung zu umgehen, wird dazu ubergangen
eine Unterteilung des Intervalls [t0, tf ] zu wahlen und auf diesen Teilintervallen das Einfach-
schießverfahren anzuwenden.
An mehreren Stellen
t0 = t1 < t1 < t2 < ... < tM = tf (1.20)
werden die Werte
sk = x(tk), k = 1, ...,M − 1, (1.21)
der exakten Losung x(t) des Randwertproblems gleichzeitig iterativ berechnet. x(t; tk, sk)
bezeichne dazu die Losung des Anfangswertproblems
x = f(x, t),
x(tk) = sk.(1.22)
Die Vektoren sk, k = 1, ...,M−1 sind so zu bestimmen, dass die aus den x(t; tk, s) stuckweise
zusammengesetzte Funktion
(1.23)
stetig ist und die Randbedingungen ψ(x(t0), x(tf )) = 0 erfullt.
Abbildung 1.8: multiple shooting
14 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
Man erhalt die folgenden n(M-1) Bedingungen
x(tk+1; tk, sk) = sk+1, k = 1, ...,M − 2,
ψ(s1, x(tM ; tM−1, sM−1)) = 0,(1.24)
fur die n(M − 1) unbekannten Komponenten s(j)k , j = 1, ..., n, k = 1, ...,M − 1, der sk,
sk = (s(1)k , s
(2)k , ..., s
(n)k )T (1.25)
Insgesamt gilt fur s = (s1, ..., sM−1)T das Gleichungssystem
F (s) :=
F1(s1, s2)
F2(s2, s3)...
FM−2(sM−2, sM−1)
FM−1(s1, sM−1)
:=
x(t2; t1, s1)− s2
x(t3; t2, s2)− s3...
x(tM−1; tM−2, sM−2)− sM−1
ψ(s1, x(tM ; tM−1, sM−1))
= 0
.
Folgende Verfahren konnen zur Losung dieses Gleichungssystems angewandt werden:
• Newton
• Quasi - Newton
• Reduzierung des Rechenaufwands durch Verwendung von Broyden - Approximationen
zur Bestimmung von ∇F (s)
1.2.3 Dynamische Programmierung nach Bellman
Die Grundlage der dynamischen Programmierung ist das Bellmansche Optimalitatsprinzip:
Satz 1.8 (Bellmansches Optimalitatsprinzip:).
Die Gesamtstrategie kann nur optimal sein, wenn jede Reststrategie optimal ist, egal von
welchem Zwischenzustand sie ausgeht.
Ausgehend von diesem Satz wird mittels der Bellmanschen Rekursionsformel ausgehend
von k das jeweils minimale Zielfunktional Ik(xk, uk) fur jeden Zwischenschritt bestimmt.
Nach dem Bellmanschen Optimalitatsprinzip ist daher das aus diesen zusammengesetzte
Zielfunktional J∗k (xk) minimal.
1.3. DIRECT MULTIPLE SHOOTING 15
Satz 1.9 (Bellmansche Rekursionsformel:).
J∗k (xk) = minuk
[Ik(xk, uk) + J∗
k+1 {gk(xk, uk)}], k = N − 1, ..., 1, 0 (1.26)
Im Gegensatz zum PMP kann die Dynamische Programmierung ohne weiteres auch ange-
wandt werden, wenn Zustandsbeschrankungen vorliegen. Das Pontryaginsche Minimumprin-
zip wird dann sehr kompliziert.
Außerdem wird direkt das optimale Steuerungsgesetz geliefert was beim PMP nicht der Fall
ist.
Jedoch wird bei der Implementierung der Dynamischen Programmierung sehr viel Speicher-
platz und Rechenzeit benotigt, weshalb sie auch momentan noch sehr wenig Anwendung
findet.
1.3 direct multiple shooting
Bei direkten Verfahren wird der optimale Steuerprozess durch eine Diskretisierung in ein
nichtlineares Optimierungsproblem uberfuhrt.
Beim direct multiple shooting wird:
1. der Pradiktionshorizont [t0, tf ] in N Teilintervalle unterteilt
2. fur jedes Teilintervall ein konstanter Wert ui angenommen
3. das DAE - System in N Abschnitte zerlegt
Man bekommt neue Variablen si fur die Anfangszustande jedes Teilintervalls und hat dann
folgende Gleichungen zu losen:
˙xi(τ) = f(xi(τ), ui) (1.27)
0 = g(xi(τ), ui)− αi(τ)g(si, ui) (1.28)
xi(τi) = si (1.29)
Die si werden als zusatzliche unabhangige Variblen aufgefasst.
⇒ minui,si
{J =
N−1∑i=0
Ji
}(1.30)
unter Nebenbedingungen
16 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
1.4 Erweiterter Kalman - Filter
Da nicht alle Zustandsgroßen messbar sein mussen, der MPC - Algorithmus jedoch fur die
Pradiktion diese benotigt, kann es sein, dass man Zustandsgroßen rekonstruieren muss. Dies
kann im nichtlinearen Fall mit dem erweiterten Kalman - Filter geschehen.
Definition 1.10 (Prozessmodell:).
˙x(t) = f(x(t), u(t)) + ξ(t) (1.31)
y(k) = g(x(k), u(k)) + ν(k) (1.32)
Definition 1.11 (Prazisionsmatrix:).
E{[x(t = 0)− ˆx(t = 0)
] [x(t = 0)− ˆx(t = 0)
]T}
= P (t = 0)
Filtergleichungen:
ˆx(k|k) = ˆx(k|k − 1) +K(k)[y(k)− g(ˆx(k|k − 1), u(k − 1))] (1.33)
K(k) = P (k|k − 1)HT (k)[H(k)P (k|k − 1)HT (k) +R
]−1(1.34)
P (k|k) = [I −K(k)H(k)]P (k|k − 1) (1.35)
mit H(k) = ∂g(x(k), u(k))/∂x(k)|x=ˆx(k|k−1)
Pradiktionsgleichungen:
ˆx(k + 1|k) = ˆx(k|k) +
∫ tk+1
tk
f(x(t), u(t))dt (1.36)
P (k + 1|k) = P (k|k) +
∫ tk+1
tk
[F (t)P (t|k) + P (t|k)F T (t) +Q
]dt (1.37)
mit F (t) = ∂f(x(t), u(k))/∂x(t)|x=ˆx(t|k)
1.5. ANWENDUNGEN: REINST-DESTILLATIONSANLAGE 17
1.5 Anwendungen: Reinst-Destillationsanlage
Im folgenden wird am Beispiel einer Reinst-Destillationsanlage die Anwendbarkeit NMPC
gezeigt. Das Ziel hierbei ist die Trennung von Gemisch aus Methanol und n-Propanol. Dafur
wird eine Destillationkolonne verwendet die aus 40 Boden besteht. Am Kolonnenboden wird
das Gemisch durch einen Verdampfer erhitzt. Der uberhitzte Dampf wird vollstandig in
einem wassergekuhlten Kondensierer kondensiert und bei genugender Reinheit abgefuhrt,
sonst in die Kolonne ruckgefuhrt.
Abbildung 1.9: Destillations-Kolonne
Wahrend des Experiments werden folgende Daten online gemessen und uberwacht:
Temperatur:
des Zufluss- und Ruckflussstromes, am Kondensierer, am Verdampfer und an jedem Boden
der Kolonne
Volumenflussrate:
des Zuflusses, des Ruckflusses, des Destillates, und des Bodenproduktes
und schließlich noch der Kolonneninnendruck.
Als steuerbare Storung verwendet man zwei Tank mit unterschiedlichen Gemischkonzentra-
tionen. Das Gemisch wird dann vorgeheizt am Zuflussboden zugefuhrt.
Prozesseingange fur Kontrollierung sind:
Q: Hitzezufuhr durch den elektrischen Verdampfer
Lvol: Ruckflussfließrate
die Reinheitskontrolle des Destillats (2 Moglichkeiten: Messungen am Destillat (online schlecht
moglich, da zu ungenau), Messung der Temperatur an den Boden (14 und 28)
Fur die Kolonne gelten, solange die molare Flussigkeitsmenge nl konstant ist, die folgende
Bedingungen:
18 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
0 = Ll+1 − Ll + Vl−1 − Vl + Fl (1.38)
0 = L1 − L0 − V0 (1.39)
0 = VN − LN−1 −D (1.40)
dabei bezeichnet L den Flussigkeitsfluß V den Volumenfluß des Dampfes und D den des
Destillates, l = 1, 2, ..., N sind die einzelnen Boden, l = 0 wird fur den Verdampfer und
l = N + 1 fur den Kondensierer gebraucht. Das Materialkomponenten Gleichgewicht ist:
nlxl,k = Ll+1xl+1,k − Llxl,k + Vl−1yl−1,k − Vlyl,k + FlxF,l,k (1.41)
n0x0,k = L1x1,k − L0x0,k − V0y0,k (1.42)
nN+1xN+1,k = VNyN,k − (LN−1 +D)xN+1,k (1.43)
Energie-Bilanz:
nlhLl = Ll+1h
Ll+1 − Llh
Ll + Vl−1h
Vl−1 − Vlh
Vl + Flh
LF,l
n0hL0 = L1h
L1 − L0h
L0 − V0h
V0 +Q−Qloss
xl und yl bezeichnen hierbei die Konzentrationen der Flussigkeit und des Dampfes, dabei
kann man hl (die Enthalpie) und yl durch algebraische Umformungen eliminieren.
Das resultierende Modell hat 42 Differentialgleichungen f und 122 algebraische Gleichungen
g:
x(t) = f(x(t), z(t), u(t), p)
0 = g(x(t), z(t), u(t), p)
wobei gilt:
u = (Lvol, Q)T : Kontrollvektor
z = (L1, ..., LN , V1, ..., VN , T0, ..., TN+1)T : algebr. Zustandsvektor
wobei p der Vektor aller Systemparameter ist.
1.5. ANWENDUNGEN: REINST-DESTILLATIONSANLAGE 19
Zwei Losungsmoglichkeiten:
(a) Traditionell mit PI-Reglern
(b) mit NMPC (Direct Multiple Shooting)
zu Fall (a)
Abbildung 1.10: PI-Regler
Ein PI-Regler ist enthalt mindestens ein Integrierglied und wird wegen seiner hohen stati-
onaren Genauigkeit gerne angewendet, ihr Nachteil: sie neigen zu relativ starken Uberschwingen.
Sie haben als Kontrollfunktion die Form:
u(t) = KP e(t) +KP
TI
∫ t
0
e(τ)dτ
dabei ist e(t) die Funktion des noch vorhandenen Fehlers (T 28ref − T 28 bzw. T 14
ref − T 14), KP
der Reglerproportionalbeiwert und TI eine Zeitkonstante. Diese Konstanten werden online
durch Ziegler-Nichols bestimmt:
Kp = 0, 45 · 2Ks
TTt
, TI = 3.33 · Tt
Abbildung 1.11: Ziegler-Nichols, Wendetangentenverfahren
20 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
zu Fall (b): Die erwunschten Zustande xs, zs und die dazugehorige Kontrolle us, wie auch
die Temperaturen sollen die folgenden Gleichungen erfullen:
f(xs, zs, us, p) = 0
g(xs, zs, us, p) = 0
T (zs)− Tref = 0
dabei gilt T (z) := (T14, T28)T
Diese drei Gleichungen werden in einem Vektor r zusammengefasst:
r(xs, zs, us, p) = 0
Das optimale Kontrollproblem lautet dann:
minu(·),x(·),p
∫ t0+Tp
t0
‖l(x(t), z(t), u(t), us, p)‖22dt (1.44)
dabei gilt:
l(x, z, u, us, p) :=
(T (z)− Tref
R(u− us)
)wobei R = diag(0.05◦Chl−1, 0.05◦CkW−1) mit den Anfangswertbedingungen:
x(t0) = x0
p = p0 = konstant
mit alle Zustands- und Kontroll-Ungleichheitsbedingungen, zusammengefasst zu:
c(x(t), z(t), u(t), p) ≥ 0
und den obigen Annahmen.
1.5. ANWENDUNGEN: REINST-DESTILLATIONSANLAGE 21
Abbildung 1.12: NMPC-Regler
Fur das Multiple-Shooting-Verfahren muss das DAE-System noch etwas modifiziert werden,
namlich:
xi(t) = f(xi(t), zi(t), qi, p)
0 = g(xi(t), zi(t), qi, p)− e−β
t−titi+1−ti g(sx
i , szi , qi, p)
xi(ti) = sxi , zi(ti) = sz
i
wobei qi die Kontrollparameter sind. β wurde hier eingefuhrt um ein besseres Verhalten zu
realisieren. Das zu losende Problem ist nun:
minξ
N−1∑i=0
∫ ti+1
ti
‖l(xi(t), zi(t), qi, us, p)‖22dt (1.45)
dabei ist us := qn−1 und ξ = (sx0 , ..., s
xN , s
z0, ..., s
zN−1, q0, ..., qN−2, xs, zs, us, p) ist der Vektor
der unbekannten. ausserdem gelten die Nebenbedingungen:
sx0 = x0, p = p0,
sxi+1 = xi(ti + 1; sx
i , szi , qi, p), i = 0, ..., N − 1
0 = g(sxi , s
zi , qi, p), i = 0, ..., N − 1
0 ≤ c(sxi , s
zi , qi, p), i = 0, ..., N − 1
r(xs, zs, us, p) = 0
Linearisierung zu einem quadratischen Programm (hierbei x0, p0 iterativ angepasst):
∆ξ = (∆sx0 , ...,∆s
xN ,∆s
z0, ...,∆s
zN−1,∆q0, ...,∆qN−2,∆xs,∆zs,∆us,∆p)
min∆ξ
N−1∑i=0
∫ ti+1
ti
‖li(t) + Li(t)(∆sxiT ,∆sz
iT ,∆qi
T ,∆usT ,∆pT )T‖2
2dt
22 KAPITEL 1. NICHTLINEARE MODELLPRADIKTIVE REGELUNG
unter den Nebenbedingungen:
∆sx0 = (x0)k+1, ∆p = (p0)k+1 − p,
∆sxi+1 = xi +Xi(∆s
xiT ,∆sz
iT ,∆qi
T ,∆pT )T , i = 0, ..., N − 1
0 = gi +Gzi ∆s
zi +Gi(∆s
xiT ,∆qi
T ,∆pT )T , i = 0, ..., N − 1
0 ≤ ci + Ci(∆sxiT ,∆sz
iT ,∆qi
T ,∆pT )T , i = 0, ..., N − 1
0 = r +R(∆xsT ,∆zs
T ,∆usT )T +Rp∆p
aus ∆ξk bestimmt man (q0)k+1 := (q0)k + (∆q0)k und ξk+1 = ξk + ∆ξk
Beim Vergleich der Reaktion der Regler auf eine Anderung der Zuflussrate sieht man, dass der
NMPC Regeler es schafft mindestens gleichwertige Ergebnisse zu realisieren und bei großen
Anderungen sogar schneller zuruckregelt als der PI-Regler, was vor allem auf der schnellere-
ren und genaueren Regelung beruht. Fazit: die Verwendung von NMPC statt alternativen
Methoden ist sinnvoll.
Abbildung 1.13: Vergleich NMPC–PI bei Anderung der Zuflussrate
1.5. ANWENDUNGEN: REINST-DESTILLATIONSANLAGE 23
Literatur:
Mayne: NMPC: Challenges and Opportunities, Progress in Systems and Control Theory,
Vol. 26, pp.23-44, 2000
Dittmar et al.: Modellbasierte pradiktive Regelung, Oldenburg Verlag Munchen Wien, 2004
Allgower et al.: Introduction to NMPC, 21st Benelux Meeting on Systems and Control,
Veldhoven, 2002
Fontes: A General Framework to design stabilizing NMPC, Systems and Control Letters,
Vol. 42(2), pp.127-143, 2001
Follinger: Optimale Regelung und Steuerung, Oldenburg Verlag Munchen Wien, 1994
Buskens: Skript zur Vorlesung Diskretisierungsverfahren
Ogunnaike, B. A., Ray, W.H.: Process Dynamics, Modeling and Control, Oxford University
Press 1994
Nelles O.:LOLIMOT-Lokale, lineare Modelle zur Identifikation nichtlinearer Systeme. Auto-
matisierungstechnik at 45(1997)H.4,S.163-174
B. Aufderheide, B. Wayne Bequette: Extension of dynamic matrix control to multiple models
Moritz Diehl, Ilknur Uslu, Rolf Findeisen: Real-Time Optimization for Large Scale Processes:
Nonlinear Model Predictive Control of a High Purity Distillation Column