Sterowanie optymalne dla układów nieliniowych. Zasada

Transkrypt

Sterowanie optymalne dla układów nieliniowych. Zasada
Sterowanie optymalne dla ukladów nieliniowych.
Zasada optymalności Bellmana.
Problemy z czasem cia̧glym.
Podstawowy problem sterowania optymalnego dla ukladów nieliniowych z czasem cia̧glym
W podstawowym problemie sterowania optymalnego z czasem cia̧glym minimalizacji podlega calkowy wskaźnik jakości
Z t1
.
g(x(t), u(t), t)dt
G(x, u) =
t0
z uwzglȩdnieniem ograniczeń w postaci równania stanu procesu
ẋ(t) = f (x(t), u(t), t), t ∈ [t0 , t1 ]
z zadanym warunkiem pocza̧tkowym
x(t0 ) = x0
oraz ograniczeń w postaci dopuszczalnego chwilowego zakresu wartości sterowania
u(t) ∈ U, t ∈ [t0 , t1 ],
gdzie funkcje
g : Rn × Rm × R → R, f : Rn × Rm × R → Rn
sa̧, ogólnie biora̧c, nieliniowe.
Klasa sterowań dopuszczalnych w przedziale [t0 , t1 ] oznaczana jako U[t0 , t1 ]
jest zbiorem funkcji przedzialami cia̧glych o skończonej liczbie niecia̧glości
.
pierwszego rodzaju, tj. U[t0 , t1 ] = P C([t0 , t1 ], Rm ).
Niech trajektoria stanu ABCD bȩdzie trajektoria̧ optymalna̧ zwia̧zana̧ ze
stanem pocza̧tkowym x(0) = x0 i niech x(t̃) = x̃ bȩdzie stanem pośrednim
zwia̧zanym z punktem B trajektorii optymalnej.
Zasada optymalności Bellmana: Każdy końcowy odcinek BCD optymalnej trajektorii stanu ABCD zwia̧zanej ze stanem pocza̧tkowym x(0) jest
1
optymalna̧ trajektoria̧ stanu zwia̧zana̧ ze stanem pośrednim x(t̃).
Dowód: Przypuśćmy, że końcowy odcinek trajektorii BCD nie jest trajektoria̧ optymalna̧ dla pośredniego stanu pocza̧tkowego x(t̃). Wobec tego miȩdzy
punktami B i D istnieje inna trajektoria BC 0 D, która zapewnia mniejsza̧
wartość wskaźnika jakości niż trajektoria BCD. Wówczas la̧czna trajektoria
stanu ABC 0 D zapewnia lepsza̧ wartość wskaźnika jakości niż trajektoria stanu
ABCD, co jest sprzeczne z zalożeniem o optymalności trajektorii ABCD.
Równoważne sformulowania zasady optymalności:
• Każdy końcowy odcinek trajektorii optymalnej jest sam dla siebie trajektoria̧ optymalna̧.
• Strategia optymalna nie zależy od historii procesu i może być określona
wyla̧cznie na podstawie stanu procesu w danej chwili t. Trajektoria optymalna
wychodza̧ca z punktu B jest calkowicie określona przez jej stan pocza̧tkowy
x(t̃) i nie zależy od sterowania u(t) dla t < t̃.
• Jeśli dana jest trajektoria optymalna xo zapewniaja̧ca minimum funkcjonalu G(x, u) w przedziale [t0 , t1 ] i dane sa̧ chwile t̃, t̃˜ ∈ [t0 , t1 ], to trajektoria
˜ jest również trajektoria̧ optymalna̧ dla problemu
pośrednia xo (t) (t ∈ [t̃, t̃])
˜
minimalizacji funkcjonalu G(x, u) w przedziale [t̃, t̃].
Funkcja Bellmana i warunek optymalności procesu sterowania w
postaci równania Hamiltona-Jacobiego-Bellmana
Definiujemy funkcjȩ Bellmana (zwana̧ także funkcja̧ jakości optymalnej)
jako optymalna̧ wartość wskaźnika jakości na końcowym odcinku trajektorii
procesu [t, t1 ]
Z t1
.
S(x(t), t) = min
g(x(τ ), u(τ ), τ )dτ.
u∈U [t,t1 ]
t
Z zasady optymalności wynika zależność
Z t+∆t
.
S(x(t), t) = min
g(x(τ ), u(τ ), τ )dτ + S(x(t + ∆t), t + ∆t) (∗).
u∈U [t,t1 ]
t
• Zalożenie: funkcja jakości optymalnej S jest różniczkowalna wzglȩdem
stanu x i czasu t.
Rozpatrzymy przyrost czasu ∆t oraz odpowiadaja̧cy mu przyrost stanu
∆x i rozwiniemy w szereg Taylora wyrażenie S(x(t) + ∆x, t + ∆t) (∆x i ∆t
2
sa̧ ustalone, a jest zmiennym malym parametrem):
S(x(t) + ∆x, t + ∆t) = S(x(t), t) + Sx (x(t), t)∆x + St (x(t), t)∆t + o().
Dla malych wartości uzyskujemy
∆x = f (x(t), u(t), t)∆t + o(),
Z
t+∆t
g(x(τ ), u(τ ), τ )dτ = g(x(t), u(t), t)∆t + o().
t
Z zależności (*) wynika, że
S(x(t), t) =
min
g(x(t), u(t), t)∆t + S(x(t), t)+
u∈U [t,t+∆t]
Sx (x(t), t)f (x(t), u(t), t)∆t + St (x(t), t)∆t + o() .
Ponieważ S(x(t), t) i St (x(t), t) nie zależa̧ od sterowania (wyrażenia te sa̧
już zminimalizowane wzglledem sterowania w calym przedziale [t, t1 ]), wiȩc
możemy skrócić skladnik S(x(t), t) po lewej i prawej stronie równania i przesuna̧ć na lewa̧ stronȩ skladnik St (x(t), t)
−St (x(t), t)∆t =
min
g(x(t), u(t), t)∆t
u∈U [t,t+∆t]
+Sx (x(t), t)f (x(t), u(t), t)∆t + o() .
Dzielimy obydwie strony przez ∆t i przechodzimy z → 0 uzyskuja̧c
−St (x(t), t) = min g(x(t), u(t), t) + Sx (x(t), t)f (x(t), u(t), t) ,
u(t)∈U
przy czym
S(x(t1 ), t1 ) = 0.
Jest to tzw. równanie Hamiltona-Jacobiego-Bellmana (równanie HJB),
które stanowi warunek konieczny optymalności procesu sterowania.
Równanie to stanowi podstawȩ, na której określana jest
Metoda programowania dynamicznego dla problemów
optymalnego sterowania z czasem cia̧glym:
1. Z minimalizacji prawej strony równania HJB wyznacza siȩ sterowanie w
funkcji stanu x, pochodnej funkcji Bellmana Sx (x, t) i czasu t
uo (x, Sx (x, t), t),
przy czym wielkości x, Sx (x, t), t traktowane sa̧ jako parametry; realizacja tego punktu wymaga rozwia̧zania zadania optymalizacji funkcji wielu
zmiennych z ograniczeniami i z parametrami,
3
2. Funkcjȩ uo podstawia siȩ do równania HJB redukuja̧c je do, ogólnie
biora̧c, nieliniowego równania różniczkowego o pochodnych cza̧stkowych
rzȩdu pierwszego
−St (x, t) = g(x, uo (x, Sx (x, t), t), t) + Sx (x, t)f (x, uo (x, Sx (x, t), t), t)
z warunkiem granicznym
S(x, t1 ) = 0.
3. Rozwia̧zuje siȩ zredukowane równanie HJB (analitycznie lub numerycznie) określaja̧c w ten sposób sterowanie optymalne w ukladzie ze sprzȩżeniem
zwrotnym
.
uo (x, t) = uo (x, Sx (x, t), t).
Przyklad: Wyznaczyć proces sterowania minimalizuja̧cy wskaźnik jakości
Z 1
G(x, u) =
(x2 (t) + u2 (t))dt
0
z uwzglȩdnieniem modelu procesu
ẋ(t) = ax(t) + bu(t), t ∈ [0, 1],
x(0) = x0 ,
u(t) ∈ R.
Zapisujemy równanie HJB
−St (x, t) = min (x2 + u2 + Sx (x, t)(ax + bu)), S(x, 1) = 0.
u(t)∈R
Wyznaczamy sterowanie w funkcji pochodnej Sx
uo = −0.5bSx (x, t)
i uzyskujemy zredukowane równanie HJB
−St (x, t) = x2 − 0.25b2 (Sx (x, t))2 + Sx (x, t)ax, S(x, 1) = 0.
Rozwia̧zanie tego równania można określić metoda̧ rozdzielania zmiennych.
Przewidujemy rozwia̧zanie w postaci
S(x, t) = α(t)x2 .
4
Wstawiaja̧c przewidywana̧ postać rozwia̧zania do równania HJB uzyskujemy
−α̇(t)x2 = x2 − 0.25b2 (2α(t)x)2 + 2α(t)xx, α(1)x2 = 0.
Prowadzi to do nieliniowego równania różniczkowego o pochodnych zwyczajnych dla α(t)
−
dα(t)
= 1 − b2 α2 (t) + 2aα(t), t ∈ [0, 1], α(1) = 0,
dt
którego rozwia̧zanie daje siȩ określić po rozdzieleniu zmiennych α i t jako
√
√
√
α(t) = tgh (1 − t) a2 + b2 / a2 + b2 − a tgh (1 − t) a2 + b2 .
Tak wiȩc funkcja Bellmana wyrazi siȩwzorem
√
√
√
S(x, t) = tgh ((1 − t) a2 + b2 )x2 /( a2 + b2 − tgh( a2 + b2 (1 − t)),
a sterowanie optymalne w ukladzie zamkniȩtym przybierze postać
√
√
√
uo (x, t) = −tgh ((1 − t) a2 + b2 )x/( 2 − tgh( a2 + b2 (1 − t)).
Sterowanie optymalne uzyskane zostalo dla rozważanego przykladu w funkcji
nie tylko stanu i czasu, lecz także w funkcji parametrów a i b ukladu. Taka
postać sterowania optymalnego jest użyteczna dla jego adaptacji przy zmianie
wartości parametrów.
Dla trudniejszych przykladów zastosowanie równania HJB do określenia
sterowania optymalnego możliwe jest tylko przy użyciu metod numerycznych,
które wyznaczaja̧ aproksymacjȩ tego sterowania z dokladnościa̧ zależna̧ od wymiarowości problemu i od charakteru jego nieliniowości. W wielu przypadkach
dokladność uzyskanej w ten sposób aproksymacji sterowania optymalnego jest
zbyt niska i zachodzi potrzeba zastosowania innych, bardziej efektywnych metod.
5