• Aucun résultat trouvé

Pseudo-optimisation : r´ eglage d´ ecoupl´ e

4.3 Etude de cas ´

5.1.4 Pseudo-optimisation : r´ eglage d´ ecoupl´ e

Les figures 5.4 et 5.5 pr´esentent respectivement les structures de pseudo-optimisation d´ecoupl´ee dans le cas sans et avec contraintes. Le d´ecoupleur id´eal statique D (Gagnon et al., 1998) est donn´e par

D = KN+T (5.34)

+

-

u(k)j Y(1:Hp)→y(Hp) MNy xNy(k) e(k+H^ p /k)j u(Hp-1)→U(0:Hp-1) y^N(k+Hp /k)j-1 r(k+Hp /k) - yS(k+Hp /k) ^ ^ YN(1:Hp )j ^ q-1 KI(q) D U(1:Hp)j ^ ^

Figure 5.4 – Pseudo-optimisation d´ecoupl´ee – Sim-MPC sans contrainte

KN i :=

(

KN w i si i ∈ A

KN y i si i 6∈ A

(5.35)

KN+ est la matrice pseudo-inverse de Moore-Penrose de KN et

T = diag (KN) In (5.36)

La matrice de gains d’int´egration KI est ensuite simplement obtenue `a partir de

KI = T+ (5.37)

o`u T+ est la matrice pseudo-inverse de Moore-Penrose de T .

En plus de l’ensemble A, il est n´ecessaire de d´efinir ´egalement B, un sous-ensemble de I, contenant les indices associ´es aux contraintes actives sur les variables manipul´ees tel que

B := {b ∈ I | b = i si ui(k)0 ne respecte pas une de ses limites} (5.38)

o`u ui(k)0 est le ie´el´ement de u(k)0, le vecteur de variables manipul´ees issu de la derni`ere

MNy MNw KI(q) Y(1:Hp)→y(Hp) W^N(1:Hp)j YN(1:Hp)j ^ xNy(k) xNw(k) W(1:Hp)→w(Hp ) Superviseur de contraintes r(k+Hp /k) - y^S(k+Hp /k) ^ e(k+H^ p /k)j D u(k)j q-1 q-1 q-1 yI(k)j u(Hp -1)→U(0:Hp -1) umin umax D KI ^ ^ ^ ^

Figure 5.5 – Pseudo-optimisation d´ecoupl´ee – Sim-MPC avec contraintes

De cette mani`ere,

ui(k)j :=

( uRi si i ∈ B

yIi(k)j si i 6∈ B

(5.39)

o`u yIi est le ie ´el´ement de yI, la sortie de l’int´egrateur, et

uRi:=

(

umin i si u(k)0 ≤ umin i

umax i si u(k)0 ≥ umax i

(5.40)

Enfin, il faut ´egalement d´efinir C, un troisi`eme sous-ensemble de I, contenant les indices associ´es aux contraintes actives sur les variations de commande tel que

C := {c ∈ I | c = i si ∆ui(k)0 ne respecte pas une de ses limites} (5.41)

o`u ∆ui(k)0 est le ie´el´ement de ∆u(k)0, le vecteur de variations de variables manipul´ees

Avec un r´eglage d´ecoupl´e pour la pseudo-optimisation, l’´etape 4 de l’algorithme de Sim-MPC s’´enonce de fa¸con formelle telle que :

4.1 Compteur d’it´erations de la simulation Initialiser le compteur j = 1.

4.2 Initialisation des ensembles de contraintes

Initialiser A = {}, B = {} et C = {}. Initialiser uR = {}.

Ces ensembles de contraintes actives seront utilis´es jusqu’`a ce que la simulation ait atteint un r´egime permanent.

4.3 Simulation

Simuler jusqu’`a la convergence la structure pr´esent´ee `a la figure 5.5. Plus pr´ecis´ement :

4.3.1 Initialiser le point de d´epart de la recherche u(k)j−1 = u(k − 1) et

xI(k)j−1 = xI(k − 1).

4.3.2 G´en´erer U (0 : Hp − 1)j `a partir de u(k)j−1 en utilisant le bloc

u(H − 1) −→ U (0 : Hp− 1).

4.3.3 Initialiser les conditions initiales de MN y et MN w : xN y(k)j = xN y(k)

et xN w(k)j = xN w(k).

4.3.4 Calculer les pr´edictions pour les mod`eles MN y et MN w, bYN(1 : Hp)j et

c

WN(1 : Hp)j, pour la s´equence de variables manipul´ees U (0 : Hp − 1)j

en utilisant (5.1), (5.2), (5.3) et (5.4).

4.3.5 Superviseur de contraintes

(i) Construire e(k + Hb p/k)j selon l’´equation (5.23).

(ii) Calculer KI et D selon A et en utilisant les ´equations (5.34), (5.35),

4.3.6 En suivant les ´etapes suivantes du diagramme, calculer u(k)j. La satu-

ration des ´el´ements de u(k)j doit se faire tel que sp´ecifi´e par l’´equation

(5.39), soit selon l’ensemble B et le vecteur uR(k), et non selon l’´etat

actuel de u(k)j. Comme pour la version d´ecentralis´ee, la r´etroaction de

u(k)j `a KI permet de mettre `a jour les ´etats de l’int´egrateur selon les

v´eritables valeurs — apr`es saturation — des variables manipul´ees (voir la section pr´ec´edente et les ´equations (5.27) et (5.29)).

4.3.7 Incr´ementer le compteur d’it´erations j = j + 1. 4.3.8 Test de convergence

Si la simulation a atteint un r´egime permanent, c.-`a-d. lorsque u(k)j

atteint une valeur constante, mettre un terme `a la simulation et poursuivre `a l’´etape suivante. Le mˆeme test de convergence que pour la structure d´ecentralis´ee peut ˆetre choisi (voir l’ingalit´e (5.30)).

Sinon, l’algorithme n’a pas encore converg´e. La simulation doit se poursuivre en utilisant les ensembles actuels de contraintes A, B et C. Reprendre `a l’´etape 4.3.1.

4.4 Contraintes sur les sorties auxiliaires

Si wbN i(k + Hp/k)j, un ´el´ement donn´e de wbN(k + Hp/k)j, ne respecte pas l’in´egalit´e (5.9), alors wRi(k)j est ajust´e selon l’´equation (5.24). L’ensemble

Aj est ´evalu´e en cons´equence.

4.5 Contraintes sur les commandes

Si ui(k)j, un ´el´ement donn´e de u(k)j, ne respecte pas l’in´egalit´e (5.10),

alors uRi(k)j est ajust´e selon l’´equation (5.39). L’ensemble Bj est ´evalu´e en

cons´equence.

4.6 Contraintes sur les variations de commande

∆u(k)j est calcul´e selon l’expression (5.31). Si ∆ui(k)j, un ´el´ement

donn´e de ∆u(k)j, ne respecte pas l’in´egalit´e (5.11), alors ui(k)j est ajust´e

4.7 Validation des ensembles de contraintes

4.7.1 Validation des contraintes sur w

Si Aj = A, la simulation a ´et´e r´ealis´ee avec le bon ensemble de

contraintes. Poursuivre `a l’´etape suivante.

Sinon, le r´egime permanent n’est pas valide puisque l’ensemble de contraintes utilis´e pour la simulation (A) est diff´erent de l’ensemble de contraintes r´eel (Aj). R´einitialiser A = Aj, B = Bj et C = Cj, et

reprendre `a l’´etape 4.3.1 pour poursuivre la pseudo-optimisation avec les nouveaux ensembles de contraintes.

4.7.2 Validation des contraintes sur u

Si Bj = B, la simulation a ´et´e r´ealis´ee avec le bon ensemble de

contraintes. Poursuivre `a l’´etape suivante.

Sinon, le r´egime permanent n’est pas valide puisque l’ensemble de contraintes utilis´e pour la simulation (B) est diff´erent de l’ensemble de contraintes r´eel (Bj). R´einitialiser A = Aj, B = Bj et C = Cj, et

reprendre `a l’´etape 4.3.1 pour poursuivre la pseudo-optimisation avec les nouveaux ensembles de contraintes.

4.7.3 Validation des contraintes sur ∆u

Si Cj = C, la simulation a ´et´e r´ealis´ee avec le bon ensemble de

contraintes. Mettre un terme `a la boucle de pseudo-optimisation et aller `

a l’´etape 5 de la section5.1.2.

Sinon, le r´egime permanent n’est pas valide puisque l’ensemble de contraintes utilis´e pour la simulation (C) est diff´erent de l’ensemble de contraintes r´eel (Cj). R´einitialiser A = Aj, B = Bj et C = Cj, et

reprendre `a l’´etape 4.3.1 pour poursuivre la pseudo-optimisation avec les nouveaux ensembles de contraintes.

Il est `a noter que le caract`ere d´ecentralis´e ou d´ecoupl´e de la r´esolution du probl`eme de contrˆole en boucle ouverte 5.1 ne modifie pas fondamentalement le fonctionnement du contrˆoleur bas´e sur la simulation r´esultant.

Le principal avantage de la structure de pseudo-optimisation d´ecoupl´ee par rapport `a celle d´ecentralis´ee est son r´eglage simple et direct (voir les ´equations (5.34), (5.35), (5.36) et (5.37)). Par contre, sa principale limite est son manque de flexibilit´e sur le choix de l’horizon de pr´ediction. En effet, comme le r´eglage est obtenu au moyen de la matrice de gains statiques, Hp devrait ˆetre choisi de mani`ere `a couvrir approximativement le

temps n´ecessaire au syst`eme pour atteindre le r´egime permanent.

Les ´etapes de validation du r´egime permanent atteint peuvent en th´eorie entraˆıner une oscillation de la solution entre deux ensembles donn´es de contraintes sans jamais pouvoir converger. Ce probl`eme n’a toutefois jamais ´et´e observ´e en pratique.

Dans le cas d´ecentralis´e, seules les contraintes sur les sorties secondaires pourraient en- traˆıner une telle instabilit´e de la pseudo-optimisation. La probabilit´e de ne pas converger est donc restreinte.

La structure d´ecoupl´ee requi`ere quant `a elle des r´einitialisations autant sur les sorties secondaires que sur les variables manipul´ees. Cependant, d`es qu’une variable manipul´ee atteint une de ses limites, cette contrainte demeure active jusqu’`a l’atteinte d’un r´egime permanent valide. Les oscillations entre plusieurs ensembles contraints impliquant les variables manipul´ees ne peuvent donc se produire. Dans le pire des cas, la solution atteinte sera compl`etement contrainte par rapport aux variables manipul´ees (l’ensemble B est r´einitialis´e pour la p´eriode de contrˆole suivante).

Enfin, si le probl`eme se pose en pratique, il s’agit d’un cas de contrˆolabilit´e fonction- nelle (Skogestad & Postlethwaite, 2005), c’est-`a-dire que certaines configurations de proc´ed´e contraint ne peuvent ˆetre r´ealisables (impossible d’atteindre les consignes). Le syst`eme est alors repr´esent´e par une matrice de gains singuli`ere. Dans une telle situa- tion, un v´eritable algorithme d’optimisation rencontrerait des difficult´es similaires qui se solderait par un cas d’infaisabilit´e.

En r´esum´e, la Sim-MPC peut ˆetre vue comme un cas particulier de commande pr´edictive o`u :

• un horizon de contrˆole unitaire (Hc= 1) est utilis´e,

• le syst`eme principal (u − y) doit ˆetre carr´e (u(k) ∈Rn et y(k) ∈Rn),

• seul le dernier ´el´ement du vecteur de pr´edictions est consid´er´e dans le crit`ere, et

• les variables manipul´ees sont obtenues en consid´erant deux cas possibles pour chacun des trios u − y − w :

♦ y devrait atteindre sa consigne ;

♦ y ne devrait pas atteindre sa consigne parce qu’une contrainte est activ´ee.

Ceci signifie que le contrˆoleur essaie de respecter les consignes tant que les contraintes sont respect´ees. Cette fa¸con de faire permet de chercher une solution, g´en´eralement sous-optimale, sur un ensemble restreint de variables manipul´ees U∗ ⊆ U o`u

U := {u ∈b Rm | umin ≤u ≤ ub max} (5.42)

repr´esente l’ensemble des valeurs de u admissibles. Il s’agit donc d’une simplification du probl`eme d’optimisation qui puise son sens dans le fait que l’optimum se trouve fr´equemment `a un sommet, c.-`a-d. `a la rencontre de deux ou plusieurs contraintes. La simplification consiste `a ne pas consid´erer les situations de compromis o`u plusieurs variables manipul´ees sont sollicit´ees pour permettre le respect d’une contrainte tout en maintenant la valeur du crit`ere aussi basse que possible. En effet, le respect des contraintes est assur´e selon l’appariement, ceci limitant ´evidemment la possibilit´e d’at- teindre un v´eritable minimum, mais offrant tout de mˆeme une solution convenable et utilisable en pratique.

L’annexe D pr´esente les fichiers Matlab utilis´es pour la mise au point d’un contrˆoleur bas´e sur la simulation.