• Aucun résultat trouvé

2 Probl` eme aux deux bouts

N/A
N/A
Protected

Academic year: 2022

Partager "2 Probl` eme aux deux bouts"

Copied!
5
0
0

Texte intégral

(1)

TP1: R´ esolution des probl` emes de contrˆ ole optimal

M´ ethode de tir simple

Olivier Cots & Joseph Gergaud

1 Introduction

Nous allons dans ce TP voir une m´ethode de r´esolution num´erique d’un probl`eme simple de contrˆole optimal utilisant la condition n´ecessaire de so- lution, c’est-`a-dire le principe du maximum de Pontriaguine.

Consid´erons le probl`eme simple de contrˆole optimal suivant :

(P0)









M inR2

0 u2(t)dt

˙

x(t) =−x(t) +u(t)

|u(t)| ≤1 x(0) =x0 = 0;

x(2) =xf = 0.5;

2 Probl` eme aux deux bouts

La condition n´ecessaire de solution (principe du maximum de Pontriaguine) nous conduit `a un syst`eme diff´erentiel `a deux ´equations et `a une condition initiale et une condition terminale ; en d’autre terme `a un probl`eme aux deux bouts (Two Points Boundary Value Problem)

(T P BV P0)









˙

x(t) =−x(t) +u(t)

˙

p(t) =p(t) u(t) =h(p(t)) x(0) =x0 = 0;

x(2) =xf = 0.5;

o`uu(t) =h(p(t)) est donn´e par la maximisation de l’Hamiltonien : M ax H(t, x(t), p(t), w) =−w2+ (−x(t) +w)p(t)

|w|≤1

(2)

Nous obtenons imm´ediatement ici

— u(t) = p(t)

2 si|p(t)|≤2

— u(t) =sign(p(t)) sinon

3 M´ ethode de tir

Posonsz(t) = (x(t), p(t)). R´esoudre le probl`eme (T P BV P0) est alors ´equivalent

`

a rechercher un z´ero de l’´equationS(y) = 0 o`u la fonctionS, qui sera appel´ee la fonction de tir associ´ee `a notre probl`eme, est d´efinie par

S:R −→ R

y 7−→ S(y) =z1(2, x0, y)−0.5,

avec z(., x0, y) solution du syst`eme `a valeur initiale (Initial Value Problem) (cf. la figure 1).

(IV P0)









˙

z1(t) =−z1(t) +u(t)

˙

z2(t) =z2(t) u(t) =h(z2(t)) z1(0) =x0= 0;

z2(0) =y.

0 0.5 1 1.5 2

−0.5 0 0.5 1 1.5

S(0.7)

t

x(t;0,0.7)

Figure1 –Valeur de la fonction de tir pour y = 0.7.

L’algorithme de r´esolution num´erique de ce probl`eme sera alors compl`etement d´efini si on se donne :

(3)

1. l’algorithme de r´esolution deS(y) = 0 ;

2. l’algorithme d’int´egration d’un syst`eme diff´erentiel `a valeur initial pour calculer la fonction de tir S.

4 Travail demand´ e

4.1 Interfaces

On respectera les interfaces suivantes :

— Deuxi`eme membre du probl`eme aux deux bouts

˙

z(t) =H(z(t))~

% Description

%

% Computes the Hamiltonian vector field associated to H.

%

%---

%

% Matlab Usage

% hv = hvfun(t, z, par)

%

% Inputs

%

% t - real = time

% z - real vector = state and costate

% par - real vector, parameters, par=[] if no parameters

%

% Outputs

%

% hv - real vector, hamiltonian vector field at time t

%

— Int´egration num´erique du syst`eme hamiltonien

˙

z(t) =H(z(t))~

% Description

%

% Computes the chronological exponential of the Hamiltonian vector field hv

% defined by h.

%---

%

% Matlab Usage

% [tout,exphv,flag ] = exphvfun(tspan, z0, options, par)

%

% Inputs

%

% tspan - real row vector of dimension 2, tspan = [t0 tf]

% z0 - real vector, initial flow

% options - options for the numerical integration

% par - real vector, parameters, par=[] if no parameters

%

% Outputs

%

% tout - real row vector, time at each integration step

% exphv - real matrix, exphv(:,i) : flow at tout(i)

% flag - integer, flag should be 1 (ODE integrator output)

(4)

— Fonction de tir :

%---

%

% Description

%

% Computes the shooting function

%

%

%---

%

% Matlab Usage

%

% s = sfun(y,options,par)

%

% Inputs

%

% y - real vector, shooting variable

% options - options for numerical integration

% par - real vector, par=[] if no parameters

%

% Outputs

%

% s - real vector, shooting value

%

%---

4.2 Travail demand´e

En utilisant Matlabet les fonctionsode45 etfsolve 1. (a) Visualiser z(.,0, y) pour y= 0 et 0.7.

(b) Quelle est la valeur de S(0) ? (c) V´erifier que S(0.7) = 0.2833.

2. Visualiser la fonction de tirS pour y∈[−3; 3] (cf.la figure 2).

3. R´esoudre l’´equation S(y) = 0. On prendra comme point de d´epart y(0) =−0.5 (la solution esty = 0.2759) ety(0)= 2 pour fsolve.

4. R´esoudre le probl`eme suivant :

(P1)













M inR2

0 u2(t)dt

˙

x1(t) =x2(t)

˙

x2(t) =u(t)

|u(t)| ≤1

x1(0) = 0;x2(0) = 0 x1(2) = 0.5;x2(2) = 0.

La solution esty= 3/2 3/2

et les ´etats, ´etats adjoints et contrˆole sont donn´es `a la figure 3.

(5)

−3 −2 −1 0 1 2 3

−1.4

−1.2

−1

−0.8

−0.6

−0.4

−0.2 0 0.2 0.4

p0 S(p0)

Fonction de tir associée au problème P0

Figure 2 –Fonction de tir S(y).

0 0.5 1 1.5 2

0 0.2 0.4 0.6 0.8

t x1(t)

0 0.5 1 1.5 2

0 0.1 0.2 0.3 0.4

t x2(t)

0 0.5 1 1.5 2

0 1 2 3

t p1(t)

0 0.5 1 1.5 2

−2

−1 0 1 2

t p2(t)

0 0.5 1 1.5 2

−1

−0.5 0 0.5 1

t

u(t)

Figure3 –Solution du probl`eme (P1).

Références

Documents relatifs

D´emontrez qu’on peut pivoter le petit cercle afin que les secteurs sur les deux cercles s’alignent et qu’au moins 100 secteurs sur le petit cercle se trouvent au-dessus des

En exhibant deux matrices diagonalisables dont la somme ne l’est pas (la question 1 de la partie 2 donne un exemple), on montre que D 2 n’est pas stable par somme, donc n’est pas

On en d´eduit que P admet une racine multiple si et seulement si les polynˆomes P et P ′ admettent une racine complexe commune c’est-`a-dire ne sont pas premiers entre eux ce

Par le thg´ eor` eme de convergence pour les suites mono- tones, il en r´ esulte que la suite u est convergentea. Elle converge n´ ecessairement vers un point fixe

Dans cette partie, (a n ) n∈ N d´ esigne une suite de

[r]

[r]

Il s’agit d’un sujet suppl´ ementaire pour votre travail personnel`. Il