TD4 Corr

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 6

Cours MAP434 : Contrôle de modèles dynamiques

Séance 4, 14 mai 2018

Le système linéaire-quadratique

Exercice I. Contrôle de la vitesse avec critère quadratique

Soit T > 0 xé. On considère le système de contrôle linéaire dans R (d = k = 1)


ẋu (t) = u(t), ∀t ∈ [0,T ], xu (0) = x0 ,

avec x 0 ∈R donné, et on veut minimiser le critère


Z T
1
J(u) = (xu (t)2 + u(t)2 )dt.
2 0

Déterminer la trajectoire optimale, le contrôle optimal et la valeur minimale atteinte


par le critère.
Question 1.

Correction: Il s'agit d'un problème linéaire-quadratique (LQ) avec cible ξ(t) ≡ 0, i.e., en re-
prenant les notations du cours, on a bien ẋ (t) = Ax (t) + Bu(t) et J(u) = R (u(t) Ru(t) + 1 T †

x (t) Qx (t)) dt + x (T ) Dx (T ) avec A = 0, B = 1, R = 1, Q = 1 et D = 0. D'après le cours


u u 2 0
† 1 †

(théorème 4.5), le contrôle optimal est donné par u(t) = −R B p(t) = −p(t), et on obtient
u u 2 u u
−1 †

alors les équations suivantes pour l'état et l'état adjoint :


ẋ(t) = u(t) = −p(t), ṗ(t) = −x(t), x(0) = 0, p(T ) = 0,

d'où ẍ(t) = x(t), et on trouve facilement la solution la solution sous la forme


x(t) = x0 cosh(t) − p(0) sinh(t),
p(t) = −x0 sinh(t) + p(0) cosh(t),
u(t) = x0 sinh(t) − p(0) cosh(t).

Il reste à déterminer p(0). Pour cela, on utilise le fait que p(T ) = 0. Il vient 0 = p(T ) =
−x sinh(T ) + p(0) cosh(T ). Ainsi, p(0) = x tanh(T ). Finalement,
0 0

x(t) = x0 cosh(T )−1 cosh(T − t),


p(t) = x0 cosh(T )−1 sinh(T − t),
u(t) = x0 cosh(T )−1 sinh(t − T ).

La valeur minimale du croitère est


Z T
1 x20
J(u) = (cosh(T − t)2 + sinh(T − t)2 ) dt
2 cosh(T )2 0
1 x20 1 1
= sinh(2T ) = x20 tanh(T ).
2 cosh(T )2 2 2

1
Résoudre l'equation de Riccati, écrire le contrôle optimal comme un feedback et
déterminer (à nouveau) la valeur minimale atteinte par le critère.
Question 2.

L'équation de Riccati associée au problème LQ déni par les matrices A, B, R, Q


est (cf. le théorème 4.15 du poly)
Correction:

Ṗ (t) = −A† P (t) − P (t)A + P (t)BR−1 B † P (t) − Q, ∀t ∈ [0,T ], P (T ) = D.

La solution de cette équation permet de calculer :


 l'état adjoint déni par p(t) = P (t)x(t) ;
 le contrôle optimal comme un feedback : u(t) = −R −1
B † P (t)x(t) ;
 la valeur minimale du critère J(u) = x P (0)x . 1 †

Dans notre cas, P (t) est à valeurs scalaires et on a 2 0 0

Ṗ (t) = P (t)2 − 1, ∀t ∈ [0,T ], P (T ) = 0.

On obtient 
1 + P (t)

log = 2(T − t),
1 − P (t)
d'où e2T − e2t
P (t) = = tanh(T − t).
e2T + e2t
On en déduit le contrôle optimal sous forme de feedback :
e2T − e2t
u(t) = − x(t),
e2T + e2t
et la valeur minimale atteinte par le critère
1 2 e2T − 1 1
J(u) = x = x20 tanh(T ),
2 0 e2T + 1 2
qui correspond bien à la réponse trouvée à la question précédente.

Exercice II. Contrôle de l'accélération avec critère non-linéaire

On considère un véhicule se déplaçant en ligne droite suivant le système


ẍu (t) = u(t), ∀t ∈ [0,T ], xu (0) = ẋu (0) = 0.

En posant X u = (xu , ẋu ) , on obtient


   
0 1 0
Ẋu = Xu + u = AXu + Bu, Xu (0) = 0.
0 0 1
On cherche à maximiser la position d'arrivée au temps T , tout en minimisant l'énergie fournie.
Cela nous amène à considérer le critère suivant sur l'espace de Hilbert V = L ([0,T ]; R) : 2

Z T
1
J(u) = u(t)2 dt − f (xu (T )),
2 0

2
où f est une fonction de classe C , concave et croissante.
1

Question 1. Pourquoi a-t-on existence et unicité du contrôle optimal? On le notera u.


On a vu en cours que l'application u 7→ R u(t) dt est 1-convexe sur V . Par 1 T 2

ailleurs, l'application u 7→ x (T ) est linéaire, si bien que par concavité de la fonction f , l'ap-
Correction:
2 0

plication u 7→ −f (x (T )) est convexe en u. La somme d'une application 1-convexe et d'une


u

application convexe étant 1-convexe, on en déduit que J est 1-convexe sur V . Enn, la fonction f
u

étant continue, on déduit facilement que la fonctionnelle J est continue. Le théorème 3.8 permet
de conclure à l'existence et unicité du minimiseur de J sur V .
On introduit l'état adjoint p = (p , p ) : [0,T ] → R tel que ṗ(t) = −A p(t) et 2 †

. Montrer que u(t) = p (t) pour tout t ∈ [0,T ].


Question 2. 1 2
p(T ) = (f 0 (Xu,1 (T )), 0) 2

On note ∇J(u) ∈ V le gradient du critère J en un contrôle u ∈ V . La proposition


3.10 nous dit que le contrôle optimal u est caractérisé par l'équation d'Euler ∇J(u) = 0. Pour
Correction:

calculer le gradient de J en u, nous considérons une perturbation du contrôle δv ∈ V . En posant


− X , on obtient par linéarité Ẏ (t) = AY (t) + Bδv(t), pour tout t ∈ [0,T ], et
Y (0) = 0. On a Y (t) = O(δv) uniformément sur [0,T ]. Par conséquent, il vient
Y =X
δv u+δv u δv δv
δv δv

Z T
1
J(u + δv) = (u(t) + δv(t))2 dt − f (Xu+δv,1 (T ))
2 0
Z T
= J(u) + u(t)δv(t)dt − f 0 (Xu,1 (T ))Yδv,1 (T ) + o(δv).
0

En introduisant l'état adjoint et comme Y δv (0) =0 , on constate que


Z T  
f 0 (Xu,1 (T ))Yδv,1 (T ) = p(T )† Yδv (T ) = ṗ(t)† Yδv (t) + p(t)† Ẏδv (t) dt
0
Z T Z T
= p(t)† (−AYδv (t) + Ẏδv (t))dt = p(t)† Bδv(t)dt.
0 0

On trouve donc
Z T
J(u + δv) = J(u) + (u(t) − B † p(t))† δv(t)dt + o(δv),
0

et le deuxième terme du membre de droite dénit bien une forme linéaire continue sur V . On
a donc ∇J(u) = u(t) − B p(t), ou encore en utilisant la forme de B, ∇J(u) = u(t) − p (t).

L'équation d'Euler implique nalement que u(t) = p (t) pour tout t ∈ [0,T ].
2
2

Dans le cas f (x) = x, trouver l'état adjoint, le contrôle optimal et la distance


parcourue par le véhicule.
Question 3.

Dans ce cas, on écrit ṗ (t) = 0, ṗ (t) = −p (t), p (T ) = 1, p (T ) = 0, d'où


p (t) = 1, p (t) = (T − t). Le contrôle optimal est d'après la question précédente égal à u(t) =
Correction: 1 2 1 1 2

p (t) = (T − t). La trajectoire optimale est donnée par ẍ (t) = (T − t), donc x (t) = T t /2 − t /6
1 2
2 3

si bien que la distance parcourue est x (T ) = T /3.


2 u u
3
u

3
Exercice III. Oscillateur harmonique

On considère le système de contrôle linéaire


ẍ(t) + x(t) = u(t), ∀t ∈ [0,T ], x(0) = x0 , ẋ(0) = v0 .

Ce système décrit le mouvement rectiligne d'un point matériel (de masse unité) sous l'action
d'une force de rappel, −x(t), et d'une force extérieure donnée par le contrôle, u(t).
Écrire le problème comme un système diérentiel d'ordre un (on notera X(t) =
(x(t), v(t)) le vecteur d'état). Ce système est-il contrôlable? Par la suite, il sera commode de
Question 1.

travailler en variables complexesR en posant z(t) = x(t) + iv(t) (i.e., on identie le plan (x, v) à
C). Vérier que z(t) = e z + ie u(s) ds où z = x + iv .
−it t i(s−t)
0 0 0 0 0

Correction: On obtient Ẋ(t) = AX(t) + Bu(t) avec


   
0 1 0
A= , B= .
−1 0 1

Pour la contrôlabilité, on utilise le critère de Kalman. La matrice


 
0 1
C = (B AB) =
1 0

est de rang 2, ce qui montre que le système est contrôlable. Enn, l'expression de z résulte de la
formule de Duhamel car on a ż(t) = −iz(t) + iu(t).
Pour la suite de l'exercice, on xe T = π. On souhaite minimiser dans V
le critère
Question 2. =
L2 ([0,T ]; R)
Z T
1  1
J(u) = u(t)2 dt + x(T )2 + v(T )2 .
2 2
Formuler ce problème sous forme de système LQ. A-t-on existence et unicité du contrôle optimal
0

u ∈ V ? On note p = (p , p ) l'état adjoint et on pose q(t) = p (t) + ip (t), ∀t ∈ [0,T ]. Exprimer


u (t) en fonction de q(t) et de q(t) (la barre désigne le complexe conjugué).
∗ x v x v

On obtient R = 1, Q = 0 (dans R ) et D = ( ). Comme R > 0, les résultats


2×2 10

du cours nous permettent d'armer l'existence et l'unicité du contrôle optimal u ∈ V . Enn,


Correction: 01

d'après le cours, le contrôle optimal est donné par u (t) = −R B p(t) = −p (t). D'où u (t) =

−1 †

− (q(t) − q(t)).
∗ v ∗
1
2i

Exprimer q(t) en fonction de t et de z(T ), puis la trajectoire optimale z(t) en


fonction de t, z , z(T ) et z(T ). En déduire z(T ) en fonction de z . Écrire l'équation de la
Question 3.

trajectoire optimale issue du point z = 1 et l'esquisser dans le plan (x, v).


0 0
0

D'après le cours, l'état adjoint p(t) est tel que ṗ(t) = −A p(t) = Ap(t) sur [0,T ] et †

p(T ) = X(T ). En utilisant la représentation complexe, on obtient q̇(t) = −iq(t) et q(T ) = z(T ),
Correction:

d'où
q(t) = e −i(t−T )
z(T ) = −e z(T ) car T = π.
−it

4
Concernant la trajectoire optimale, on a
Z t
z(t) = e−it z0 + iei(s−t) u∗ (s) ds
0
Z t
−it
= e z0 − 2i 1
iei(s−t) (q(s) − q(s)) ds
0
Z t
= e−it z0 − 2i
1
iei(s−t) (−e−is z(T ) + eis z(T )) ds
0
Z t
−it 1 −it 1 −it
= e z0 + 2 e tz(T ) − 2i e z(T ) ie2is ds
0
= e−it z0 + 21 e−it tz(T ) − 1
2 sin(t)z(T ).

En t = T = π, il vient 1
z(T ) = − π z0 .
1+ 2

Pour z 0 ,
= 1 z(T ) est réel et on obtient
1 + 12 (π − t) 1
2 sin(t)
z(t) = e−it 1 + ,
1 + 2π 1 + 12 π

ce qui donne comme trajectoire optimale


 
x(t) = (1 + 21 π)−1 cos(t)(1 + 12 (π − t)) + 1
2 sin(t) ,

v(t) = −(1 + 12 π)−1 sin(t)(1 + 12 (π − t)).

La trajectoire optimale est esquissée ci-dessous; noter que la vitesse v est minimale en t ∈ ]0, [ π

tel que tan(t ) = 2(1+ (π−t )) et que x s'annule en t ∈ ] , π[ tel que tan(t ) = −2(1+ (π−t )).
1 2
1 π 1
1 2 1 2 2 2 2 2

−(1 + 12 π)−1 1
x

Montrer que q(t) = a(t)z(t) + (c(t) + id(t))z(t) où a, c, d sont trois fonctions de


dans R à exprimer en fonction de α(t) = 1 + (π − t), β(t) = sin(t) et cos(t). En
Question 4.
1 1

déduire l'expression de la matrice P (t) ∈ R telle que p(t) = P (t)X(t) et écrire le contrôle
[0,T ] 2 2
2×2

optimal en boucle fermée. Écrire l'équation de Riccati satisfaite par P et en déduire les équations
diérentielles satisfaites par les fonctions a, c et d.
Correction: On exprime d'abord z(t) en fonction de z(T ) et de z(T ) :
z(t) = −e−it α(t)z(T ) − β(t)z(T ),

5
où on a posé comme suggéré α(t) = 1 + 1
2 (π − t) et β(t) = 1
2 sin(t) . En conjuguant, il vient
z(t) = −eit α(t)z(T ) − β(t)z(T ).

On élimine z(T ) et on obtient (on vérie que (α 2


,
− β 2 )(t) > 0 ∀t ∈ [0,T ] )
 
1
z(T ) = − eit α(t)z(t) + β(t)z(t) .
(α2 − β 2 )(t)

En reportant dans l'équation de l'état adjoint, on conclut que


 
1 −it
q(t) = α(t)z(t) − β(t)e z(t) ,
(α2 − β 2 )(t)

ce qui se récrit q(t) = a(t)z(t) + (c(t) + id(t))z(t) avec


α β 2β 2
a(t) = (t), c(t) = − cos(t) (t), d(t) = (t).
α2 − β2 α2 − β2 α2− β2

La matrice P (t) ∈ R est donc telle que


2×2

 
a+c d
P (t) = (t).
d a−c

On notera que cette matrice est bien symétrique. Le contrôle optimal en boucle fermée s'écrit
u∗ (t) = −d(t)x(t) − (a − c)(t)v(t).

Finalement, d'après le cours, l'équation de Riccati satisfaite par P est


Ṗ (t) = −A† P (t) − P (t)A + P (t)BR−1 B † P (t)
2d + d2
 
−2c + d(a − c)
= ,
−2c + d(a − c) −2d + (a − c)2

ce qui conduit aux équations diérentielles


ȧ = 21 (a − c)2 + 21 d2 ,
ċ = 2d + 12 d2 − 12 (a − c)2 ,
d˙ = −2c + d(a − c).

Vous aimerez peut-être aussi