9. Zasada Maksimum Pontriagina

Poprzedni rozdział 8 dotyczył warunku wystarczającego (sufficient condition) istnienia sterowania optymalnego. Natomiast w tym rozdziale 9 sformułujemy warunek konieczny (necessary condition) dla optymalnego sterowania — zwany zasadą maksimum Pontriagina (Pontryagin Maximum Principle). Zasada ta pozwala wyznaczyć optymalne sterowania i optymalne trajektorie — por. przykłady 7.2, 7.3.

Analogia: Minimum funkcji z więzami (ograniczeniami, constraints).

Rozważamy gładkie funkcje h:DR1, gj:DR1, j=1,,l, l<n,

gdzie D jest niepustym obszarem w Rn. Badamy istnienie minimum funkcji h na hiperpowierzchni (hypersurface)

S=xRn:gx=0.

Jeżeli xD jest punktem, w którym h ma (lokalne) minimum na hiperpowierzchni S, to istnieją liczby (mnożniki Lagrange'a (Lagrange multipliers)) w=w1,w2,,wl, t.ż. xD, wRl jest rozwiązaniem n+l równań:

xjhx+k=1lwkxjgkx=0,j=1,,n
gkx=0,k=1,,l

czyli

gradxhx=-gradxwTgxgx=0,

zatem wektor gradxhx jest prostopadły do hiperpłaszczyzny stycznej do hiperpowierzchni S w punkcie x, czyli jest normalny do S w x.

W tym rozdziale nie zakładamy żadnych ograniczeń na sterowania, czyli Ω=Rm.

Rozpatrujemy najpierw zagadnienie Lagrange'a (L) dla ustalonego punktu końcowego (I) — por. rozdział 6. Zakładamy, że f0 jest ciągła względem x,u oraz różniczkowalna w sposób ciągły względem x.

Problem 9.1

Mamy zadane punkty x0,x1Rn, x0x1. Wśród dopuszczalnych sterowań uUm, o tej własności, że rozwiązanie x(t)=x(t;x0,u(.)) zagadnienia

x˙=fx,u,x0=x0,

przechodzi przez x1 dla t1>0, tzn. xt1=x1, znaleźć to, dla którego

Cu=0t1f0xt,utdt,

przyjmuje najmniejszą wartość.

Definicja 9.1

Sterowanie u, o którym mowa w zagadnieniu 9.1, nazywamy sterowaniem optymalnym (optimal control), a odpowiednią trajektorię x=xttrajektorią optymalną (optimal trajectory).

Zauważmy, że jeżeli sterowanie u=ut, 0tt1, prowadzi x0 do x1 z wartością Cu=J, to sterowanie u~=ut+τ, -τtt1-τ także prowadzi x0 do x1 z wartością Cu~=J. To pozwala przyjąć chwilę początkową, jako t=0.

Każdy kawałek trajektorii optymalnej jest też trajektorią optymalną:

Uwaga 9.1

Jeżeliu=ut, 0tt1, jest sterowaniem optymalnym prowadzącym x0 do x1, x(t)=x(t;x0,u(.)) — trajektorią optymalną oraz 0τ1τ2t1, to sterowanie uτ1,τ2 jest optymalnym sterowaniem prowadzącym xτ1 do xτ2 oraz xτ1,τ2 jest trajektorią optymalną.

Dowód: por. [36], str. 22; [31], str. 118.

Niech wartości Cu na odcinkach 0,τ0, τ0,τ1, τ1,t1 będą oznaczone przez J1, J2 i J3, odpowiednio. Wówczas wartość Cu na odcinku 0,t1, to J=J1+J2+J3. Jeżeli sterowanie uτ1,τ2 nie byłoby optymalne, to istniałoby sterowanie u~ prowadzące xτ0 do xτ1 z wartością Cu~=J2, gdzie J2<J2. Zatem istniałoby sterowanie prowadzące x0 do x1 z wartością J1+J2+J3<J, co jest sprzeczne z optymalnością sterowania u.

Dla zagadnienia Lagrange'a, zadanego sterowania u i odpowiedzi x określamy

x0t=0tf0xs,usds.

Jeżeli u jest pomyślne, to xt1=x1, dla pewnego t10 i odpowiedni koszt to x0t1. Gdy u jest optymalne, to x0t1 jest najmniejsze.

Określamy wektor n+1–wymiarowy xt=x0t,xTtT oraz

ft,x=f0,fTTt,x.

Zakładamy, że f oraz f0 są ciągłe względem x,u oraz różniczkowalne w sposób ciągły względem x.

Zagadnienie 9.1 można sformułować w następującej, równoważnej postaci:

Problem 9.2

Niech x0Rn oraz Π będzie prostą w Rn+1:

Π=y,x1TTRn+1:yR1,

gdzie x1Rn jest ustalonym punktem. Wśród sterowań uUm, o tej własności, że rozwiązanie x(t)=x(t;x0,u(.)) zagadnienia

x˙t=fxt,utp.w., (9.1)
x0=x0=0,x0TTRn+1,

przecina prostą Π, znaleźć to, dla którego punkt x1=x10,x1TT przecięcia z prostą Π ma najmniejszą współrzędną x10.

Podobnie jak w definicji 9.1:

Definicja 9.2

Sterowanie u, o którym mowa w zagadnieniu 9.2, nazywamy sterowaniem optymalnym (optimal control), a odpowiednią trajektorię x=xttrajektorią optymalną (optimal trajectory).

Wprowadzamy sprzężenie linearyzacji (adjoint to the linearization):

dla zadanego sterowania u i odpowiedzi x rozważamy n+1–wymiarowe zagadnienie zlinearyzowane

w˙t=-fxxt,utTwtp.w.; (9.2)

Rozwiązanie tego zagadnienia nazywa się rozszerzonym ko-stanem (extended costate; adjoint variable; Lagrange multiplier);

fxxt,ut jest macierzą Jacobiego f względem x,

fxxt,ut=fixj=0f0x1f0xn0f1x1f1xn...0fnx1fnxn

(w pierwszej kolumnie są same zera, gdyż żadna z fi nie zależy jawnie od x0).

Zlinearyzowane równanie opisuje ewolucję wektora stycznego wzdłuż krzywej wyznaczonej przez rozwiązanie zagadnienia wyjściowego. Sprzężone równanie zlinearyzowane opisuje ewolucję wektorów prostopadłych — leżących w n-wymiarowej hiperpłaszczyźnie.

Dla zadanego x,u, rozważamy ko-stan i rzeczywistą funkcję (Hamiltonian)

Hw,x,u=wTf=j=0nwjtfjxt,ut,

H nie zależy od x0, gdyż fj nie zależą od x0:

Hw,x,u=Hw,x,u.

Mamy

x˙=gradwHw,x,u=Hw0,Hw1,,HwnT,p.w. (9.3)
w˙=-gradxHw,x,u=-0,Hx1,,HxnT,p.w., (9.4)

gdzie równanie (9.3), to inny zapis równania (9.1), a równanie (9.4), to inny zapis równania (9.2). Zatem równanie (9.3), to wyjściowy układ RRZ. W układzie tym nie pojawia się ko–stan w.

Definicja 9.3
Mw,x=supvΩHw,x,v
Twierdzenie 9.1 (Zasada maksimum Pontriagina (Pontryagin Maximum Principle) dla zagadnienia ustalonego punktu końcowego (fixed–end–point) — (I))

Rozważamy rozszerzone zagadnienie sterowania

x˙j=wjHw,x,u,j=0,1,,n

z uUm. Jeżeli u jest optymalne na 0,t1 z odpowiedzią x, to istnieje absolutnie ciągła funkcja w spełniająca

w˙j=-xjHw,x,u,j=0,1,,n,p.w.na0,t1

z

  • (i) Hwt,xt,ut=Mwt,xt p.w. na 0,t1

  • (ii) Mwt,xt=0 na 0,t1

  • (iii) w0t=w000 oraz wt0 na 0,t1.

Dowód: [36], rozdział 2, §10–15; [31], str. 134–146; [19], str. 112–124; [6], str. 304–340.

Zasada określa warunek konieczny (necessary condition) sterowania optymalnego: jeżeli u jest optymalne dla zagadnienia (I), to istnieje para x,w, t.ż. dla p.k. t0,t1

x˙=gradwjHw,x,u,orazHw,x,v0,vΩ,

oraz równość jest osiągana dla v=ut — oczywiście może być również osiągana dla innych wartości v.

Równość w (i) (bez ,,p.w.”) zachodzi, w każdym punkcie prawostronnej, lub lewostronnej ciągłości sterowania u — por. [31], Lemma 1, str. 110.

Uwaga 9.2

Zasada maksimum Pontriagina dla swobodnego punktu końcowego — zagadnienie (III) — rozdział 6. Jeżeli czas końcowy t1>0 jest ustalony, a punkt końcowy x1 nie jest zadany, to twierdzenie 9.1 należy uzupełnić o warunek transwersalności (transversality condition) — por. (9.6):

wjt1=0,j=1,,n. (9.5)

Z twierdzenia 9.1 można wyprowadzić warunek konieczny dla sterowania czaso–optymalnego. Niech w=w1,wn. Mamy

f01,x0t=t

oraz

Hw,x,u=w0+H0w,x,u,gdzieH0w,x,u=j=1nwjfjx,u.

Wówczas mamy

xj=H0wj,wj=-H0xj,j=1,,n.

Niech

M0w,x=supvΩH0w,x,v.

Z zależności

H0w,x,u=Hw,x,u-w0

otrzymujemy

M0w,x=Mw,x-w0

a zatem

H0wt,xt,ut=M0wt,xt=-w00 .
Twierdzenie 9.2 (Zasada maksimum Pontriagina dla sterowania czaso-optymalnego)

Rozważamy zagadnienie

x˙j=wjH0w,x,u,j=1,,n

z uUm. Jeżeli u jest czaso–optymalne z odpowiedzią x, to istnieje absolutnie ciągła funkcja w spełniająca

w˙j=-xjH0w,x,u,j=1,,n,p.w.na0,t1

z

  • (i) H0wt,xt,ut=M0wt,xt p.w. na 0,t1

  • (ii) M0wt,xt=-w00 na 0,t1

  • (iii) wt0 na 0,t1.

Przykład 9.1 (wagon odrzutowy, [36], str. 29–34; [19], str. 36, [31], str. 109, 111)

Por. przyklad 1.2, 2.4, 7.2. Przykład ten jest powtórzeniem przykładu 7.2 ,,w języku” twierdzenia 9.1. Niech Ω=-1,1.

x=x0x1x2,x=x1x2,Cu=0t11dt=t1,
x˙0=1,x˙1=x2,x˙2=u,fx,u=1x2u,
fx=000001000,w=w0w1w2,
w˙0=w˙1=0,w˙2=-w1,
Hw,x,v=wTfx,v=w00+w01x2+w02-w01tv,

Z twierdzenia 9.1: jeżeli u jest czaso–optymalne, to istnieją liczby w0i, i=0,1,2, t.ż.

Hw,x,v0v-1,1,Hw,x,v=0p.w.dlav=ut,
Mw,x=sup-1v1Hw,x,v=w00+w01x2t+w02-w01t

a to jest osiągane jedynie dla

ut=signw02-w01t.

Funkcja liniowa w02-w01t jest albo tożsamościowo 0, albo zeruje się w co najwyżej jednym punkcie. Zatem każde czaso–optymalne sterowanie jest p.w. albo tożsamościowo 0, albo bang–bang. Nie może jednak być tożsamościowo 0, gdyż byłoby wtedy w01=w02=0 i mielibyśmy w000 (w nie może znikać), co by dawało H=w000, a zatem M=w000, co byłoby sprzeczne z twierdzeniem 9.1 (ii); por. przykład 7.2.

Rozważmy przypadek, gdy punkt końcowy x1 nie jest ustalony, lecz należy do zadanego zbioru S1, o którym zakładamy, że jest l–wymiarową gładką rozmaitością (manifold; por. [12], str. 64) w Rn, l<n — zagadnienie (II). Możemy sformułować następujące twierdzenie

Twierdzenie 9.3 (Zasada maksimum Pontriagina dla zagadnienia dla punktu końcowego z zadanej rozmaitości — (II))

Rozważamy rozszerzone zagadnienie sterowania

x˙j=wjHw,x,u,j=0,1,,n

z uUm. Jeżeli u jest optymalne na 0,t1 z odpowiedzią x, to istnieje absolutnie ciągła funkcja w spełniająca

w˙j=-xjHw,x,u,j=0,1,,n,p.w.na0,t1

z

  • (i) Hwt,xt,ut=Mwt,xt p.w. na 0,t1

  • (ii) Mwt,xt=0 na 0,t1

  • (iii) w0t=w000 oraz wt0 na 0,t1

oraz spełniony jest warunek transwersalności (transversality (transversal = orthogonal to the tangent space))

  • (iv) wektor wt1=w1t1,,wnt1T jest prostopadły do przestrzeni stycznej (tangent space) T1 do rozmaitości S1 w punkcie xt1:

    wTt1y=j=1nwjt1yj=0,yT1. (9.6)

Dowód: [36], rozdział 2, §16; [6], str. 306–344; [28], Chapter 5, [20], rozdziały 12 i 13.

Uwaga 9.3

W przypadku zagadnienia swobodnego punktu końcowego — (III) — warunek transwersalności (9.6) przyjmuje postać (9.5):

wt1=0 .
Przykład 9.2 (wagon odrzutowy, por. przykład 9.1, [36], str. 51-61; [31], str. 125)

Rozważamy układ równań z przykładu 9.1 z Ω=-1,1, jednakże cel określamy jako

T(t)S={[x1x2]R2,x1=0},

czyli jesteśmy zainteresowani osiągnięciem położenia x1=0 z dowolną prędkością x2R1.

Wektor styczny (w dowolnym punkcie 0,x2) do S ma postać

α=0α2,

gdzie α20. Warunek transwersalności przyjmuje więc postać

wTt1α=0, (9.7)

skąd w2t1=0. Ponieważ (por. przykład 9.1)

w2t=w02-w01t,

to z (9.7) wynika, że w2t na odcinku 0,t1 nie zmienia znaku. Zatem każde czaso–optymalne sterowanie jest stałe i równe albo -1, albo 1, bez przełączeń. Zatem przez każdy punkt początkowy x0 przechodzą tylko dwie trajektorie, które mogą być optymalne (dla u-1 i u1).

Jeżeli x01>0 i punkt początkowy leży powyżej dolnej części trajektorii przechodzącej przez 0, to jedynie trajektoria dla u-1 prowadzi do S. Natomiast, gdy x01>0 i punkt początkowy leży na, lub poniżej dolnej części trajektorii przechodzącej przez 0, to do celu prowadzi zarówno trajektoria z u-1, jak i u1. Mamy więc dwie trajektorie podlegające zasadzie maksimum. Można jednak pokazać (ćwiczenie), że czas dojścia do S w obu przypadkach jest różny i optymalnym sterowaniem jest u-1. Analogicznie dla x01<0 optymalnym sterowaniem jest u1. Można więc zsyntetyzować optymalne sterowanie (synthesize the optimal control) wprowadzając

vx1,x2=+1dlax1<0-1dlax1>0

i rozważając układ

x˙1=x2x˙2=vx1,x2

otrzymujac wszystkie optymalne trajektorie.

Analogia: Zagadnienie minimum rzeczywistej, gładkiej funkcji h na obszarze DRn.

Warunek konieczny (the necessary condition): Jeżeli punkt xD jest minimum funkcji h, to

xjhx=0,j=1,,n.

Wprowadzając gt=hx+tα, gdzie αRn, α=1, otrzymujemy

g0=j=1nxjhxαj=gradxhxTα=0 .

Mamy

g′′t=j,k=1n2xjxkhx+tααjαk

Warunkiem wystarczającym (sufficient condition) minimum jest

g′′0=j,k=12xjxkhxαjαk>0,

czyli macierz

2xjxkhxj,k=1,,n

jest dodatnio określona.

Treść automatycznie generowana z plików źródłowych LaTeXa za pomocą oprogramowania wykorzystującego LaTeXML.

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego.

Projekt współfinansowany przez Ministerstwo Nauki i Szkolnictwa Wyższego i przez Uniwersytet Warszawski.