CIFA 2004 Commande prédictive non linéaire sous contraintes : une condition de faisabilité

30/09/2017
Publication e-STA e-STA 2004-4
OAI : oai:www.see.asso.fr:545:2004-4:20041
DOI :

Résumé

CIFA 2004 Commande prédictive non linéaire sous contraintes : une condition de faisabilité

Métriques

18
7
176 Ko
 application/pdf
bitcache://584cb14c18799bd9cf892dd6611f343428d85ce4

Licence

Creative Commons Aucune (Tous droits réservés)
<resource  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xmlns="http://datacite.org/schema/kernel-4"
                xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4/metadata.xsd">
        <identifier identifierType="DOI">10.23723/545:2004-4/20041</identifier><creators><creator><creatorName>Estelle Courtial</creatorName></creator><creator><creatorName>Youssoufi Touré</creatorName></creator><creator><creatorName>Pascal Dufour</creatorName></creator></creators><titles>
            <title>CIFA 2004 Commande prédictive non linéaire sous contraintes : une condition de faisabilité</title></titles>
        <publisher>SEE</publisher>
        <publicationYear>2017</publicationYear>
        <resourceType resourceTypeGeneral="Text">Text</resourceType><dates>
	    <date dateType="Created">Sat 30 Sep 2017</date>
	    <date dateType="Updated">Sat 30 Sep 2017</date>
            <date dateType="Submitted">Wed 19 Sep 2018</date>
	</dates>
        <alternateIdentifiers>
	    <alternateIdentifier alternateIdentifierType="bitstream">584cb14c18799bd9cf892dd6611f343428d85ce4</alternateIdentifier>
	</alternateIdentifiers>
        <formats>
	    <format>application/pdf</format>
	</formats>
	<version>34058</version>
        <descriptions>
            <description descriptionType="Abstract"></description>
        </descriptions>
    </resource>
.

CIFA 2004 Commande prédictive non linéaire sous contraintes : une condition de faisabilité Estelle Courtial1 , Pascal Dufour2 , Youssoufi Touré 3 1 Centre de Robotique, d’Electrotechnique et d’Automatique d’Amiens, EA 3699, 7 rue du moulin neuf, 80029 Amiens Cedex 1, France 2 LAGEP, Université Claude Bernard Lyon 1, UMR CNRS 5007, 43 Bd du 11 novembre 1918, 69622 Villeurbanne Cedex, France 3 Laboratoire de Vision et de Robotique, Université d’Orléans, UPRES EA 2078, 63 Av de Lattre de Tassigny, 18020 Bourges Cedex, France estelle.courtial@sc.u-picardie.fr, dufour@lagep.univ-lyon1.fr, ytoure@bourges.univ-orleans.fr http://cifa2004.ec-lille.fr Résumé— Pièce maitresse dans l’approche de commande prédictive non linéaire sous contraintes, l’algorithme d’op- timisation doit déterminer une commande satisfaisant les contraintes et ceci le plus rapidement possible en vue d’une application en temps réel. On montre ici le lien explicite entre la faisabilité de la commande prédictive et la conver- gence de l’algorithme d’optimisation. Une condition suffi- sante est proposée pour garantir la convergence de l’algo- rithme d’optimisation et de ce fait la faisabilité de la com- mande prédictive non linéaire sous contraintes. Une appli- cation en temps réel illustre cette approche. Mots-clés— Commande prédictive non linéaire, optimisation non linéaire sous contraintes. I. Introduction La commande prédictive linéaire a largement fait ses preuves à travers de nombreuses applications industrielles dans des domaines très divers tels que la pétrochimie, le génie des procédés, la papeterie, .....[6], [8], [10], [11]. Dans le cadre non linéaire et en présence de contraintes, beaucoup d’articles s’intéressent à l’étude de la stabilité, problème théorique inhérent à ce type de stratégie car la commande n’est alors plus explicite mais est le résultat d’une optimisation non linéaire sous contraintes. Une hy- pothèse très souvent rencontrée est qu’une solution au problème d’optimisation existe mais aucune garantie n’est donnée quant à la détermination de cette solution [6]. Vu l’importance de l’algorithme d’optimisation, véritable clé de voûte de l’approche, nous nous sommes intéressés au lien explicite entre la faisabilité de la commande prédictive et la convergence de l’algorithme. Afin de satisfaire les exi- gences de la commande en temps réel, nous avions étudié le problème de réduction du temps de calcul en ligne [2], [3], [4] par une stratégie apropriée. Nous proposons ici une ”robustification” d’un algorithme d’optimisation permet- tant de prendre en compte explicitement les contraintes et de garantir leur satisfaction à tout instant au travers d’un critère de faisabilité. La convergence de cet algorithme est garantie par une condition suffisante de qualification des contraintes traduisant la sensibilité des états contraints par rapport à la commande. Après un bref rappel de la stratégie de commande prédictive (section 2), on présente l’algorithme d’optimisa- tion modifié afin de tenir compte des exigences de la com- mande prédictive en temps réel (section 3). On démontre (section 4) sa convergence et on établit ainsi une condition suffisante de faisabilité de l’approche prédictive non linéaire sous contraintes. Un exemple d’illustration est donné. II. Commande prédictive non linéaire A. Formulation La commande prédictive (Model Predictive Control MPC), aussi appelée commande optimale sur horizon fini glissant, est une stratégie bien adaptée pour le contrôle de procédés non linéaires soumis à des contraintes sur les va- riables de commandes et/ou d’états. L’objectif de poursuite est formulé en un problème d’optimisation non linéaire sous contraintes. Il s’agit alors de minimiser un critère de perfor- mances, fonction de l’écart entre la trajectoire de référence et la sortie du procédé, sur un horizon fini de prédiction. Un des principaux avantages de cette approche réside dans la prise en compte explicite des contraintes dans la synthèse de la loi de commande. La structure de commande considérée ici est la structure de commande à modèle interne à laquelle on a ajouté un retour de sortie du modèle (figure 1). Le procédé est décrit par un modèle non linéaire discret : (Sm)  xm(k + 1) = fm(xm(k), u(k)) ym(k) = hm(xm(k)) (1) Bruits Modèle Procédé Filtre e(k) yd(k) u(k) ym(k) yp(k) ef (k) Loi de commande v(k) Fig. 1. Structure de commande par modèle interne. avec xm ∈ IRn , u ∈ IRm , ym ∈ IRp respectivement les vecteurs d’état, de commande et de sortie du modèle. Les fonctions fm : IRn × IRm → IRn et hm : IRn → IRp sont supposées continuement différentiables(on suppose m ≥ p). Dans une stratégie de commande prédictive associée à une structure de commande à modèle interne, l’objectif de poursuite de la trajectoire de référence v par la sortie du procédé yp revient à déterminer une séquence de com- mandes ũ = {u(k), u(k+1)..., u(k+Nc−1)} sur un horizon de commande Nc telle que l’écart entre la trajectoire désirée yd (consigne modifiée par le bouclage de l’erreur filtrée ef ) et la sortie prédite par le modèle ym soit minimal sur un horizon de prédiction Np. En effet, d’après le schéma de commande, on peut écrire : yd(k) = v(k) − ef (k). Pour k suffisamment grand devant la dynamique du filtre : lim k→∞ yd(k) = lim k→∞ (v(k) − e(k)) lim k→∞ yd(k) = lim k→∞ (v(k) − (yp(k) − ym(k))) lim k→∞ (yd(k) − ym(k)) = lim k→∞ (v(k) − yp(k)) Dans le cas multivariable, la formulation mathématique de ce problème s’écrit : min ũ { J(ũ) = k+Np X j=k+1 (yd(j)−ym(j))T Q (yd(j)−ym(j))} (2) yd(j) = v(j) − ef (j) (Sm)    xm(j + 1) = fm(xm(j), u(j)) ym(j) = hm(xm(j)) xm(k) est la condition initiale soumis aux contraintes sur les variables de commande (de type seuil et/ou vitesse) et d’états : umin ≤ u(j) ≤ umax (3) ∆umin ≤ u(j) − u(j − 1) ≤ ∆umax (4) xmin ≤ xm(j + 1) ≤ xmax (5) yd(j) : sortie désirée à l’instant j.Te ym(j) : sortie modèle à l’instant j.Te Np : horizon de prédiction fini Nc : horizon de commande (Nc ≤ Np) Q : matrice symétrique définie positive Te : période d’échantillonnage. Remarque : Un terme quadratique en la commande u est habituellement ajouté dans (2) pour éviter les saturations. Vu le traitement ici fait du problème contraint, cela est redondant avec les contraintes (3) et (4). B. La commande prédictive non linéaire et le temps réel Ce problème d’optimisation non linéaire sous contraintes doit être résolu à chaque période d’échantillonnage. Seule la première commande est effectivement appliquée au procédé. A l’instant d’échantillonnage suivant, l’informa- tion est mise à jour, l’horizon de prédiction fini glisse d’une période d’échantillonnage et la procédure (résolution du modèle non linéaire et du problème d’optimisation) est répétée. En temps réel, il faut ajouter le fait que la solu- tion, à toute itération et à chaque instant, doit satis- faire les contraintes du problème. Cela concerne surtout les contraintes dures qui ne doivent être violées à aucun moment. Ainsi, s’il n’y avait pas les considérations liées au temps réel (parce que le temps de calcul alloué est épuisé, on peut être amené à interrompre l’algorithme et la solu- tion doit vérifier les contraintes ”dures”), la résolution d’un problème d’optimisation non linéaire n’est pas extra- ordinaire. Mais pour satisfaire les exigences relatives aux contraintes ”dures”, il peut être nécessaire d’intervenir sur la méthode de résolution. L’objet de cette communication est de proposer une ro- bustification d’un algorithme, dans la classe des méthodes duales les plus simples, en fournissant une condition suffi- sante pouvant se traduire par un critère de faisabilité en ligne. Ce critère de faisabilité de la commande prédictive temps réel est déduit de la propriété de convergence globale de l’algorithme de Levenberg-Marquardt. III. Optimisation non linéaire sous contraintes pour une commande prédictive A. Préliminaires Les contraintes sur les variables de commande et d’états vues précédemment (éq. 3, 4, 5) peuvent s’écrire de manière plus compacte sous la forme (pour tout j ∈ IN) : gi1(ũ) = umin − u(j) ≤ 0 gi2(ũ) = u(j) − umax ≤ 0 gi3(ũ) = ∆umin − u(j) + u(j − 1) ≤ 0 gi4(ũ) = u(j) − u(j − 1) − ∆umax ≤ 0 gi5(ũ) = xmin − xm(j + 1) ≤ 0 gi6(ũ) = xm(j + 1) − xmax ≤ 0 Les indices i1, i2, i3, i4 ∈ {1, .., m}, i5, i6 ∈ {1, .., n}. Le problème d’optimisation (éq.(2) à (5)) s’écrit alors : (Pc)  MinũJ(ũ) gi(ũ) ≤ 0 i ∈ I = {1 à nbc } (6) où nbc est le nombre total de contraintes et ũ = {u(k+j) ∈ IRm , j = 0, 1, .., Nc − 1 et k = 0, 1, .... + ∞}. Soit K = {ũ tel que gi(ũ) ≤ 0 , i ∈ I }. Pour un minimum de régularité du problème (Pc) au sens de J.V Burke [1], Zangwill [12], on supposera que : - K est un ensemble fermé non vide de IRm.Nc , - dom(J) = {ũ tel que J(ũ) < ∞} est non vide, - En posant V (ũ) = inf{J(ũ) tel que ũ ∈ K}, on a : limũ→ũ0 V (ũ) − V (ũ0) kũ − ũ0k > −∞ pour tout ũ0 ∈ K et quel que soit ũ ∈ IRm.Nc . Alors le problème (Pc) est régulier au sens de J.V Burke et cela indépendamment de l’existence de solution optimale. Les méthodes de pénalités consistent à ramener le problème contraint (Pc) en un problème non contraint dont la solution converge vers la solution du problème initial. Dans cette catégorie de méthodes, les méthodes de pénalités intérieures présentent l’intérêt, en principe, de conserver les solutions à l’intérieur du domaine défini par les contraintes quelle que soit l’itération. On com- prend alors leur adéquation, de principe toujours, à la problématique temps réel de la commande prédictive. Le principe des méthodes de pénalités intérieures consiste à transformer le problème contraint en un problème pénalisé. Les contraintes sont prises en compte en introduisant un terme de pénalité dans la fonction coût. Ce terme de pénalité est composé d’un coefficient de pénalité variable p (p ≥ 0) et d’une fonction, appelée fonction barrière et notée B(ũ). Jint(ũ, p) = nbc X i=1 −p.( k+Np X j=k+1 B(ũ)) = nbc X i=1 −p.( k+Np X j=k+1 1 gi(ũ) ) La fonction barrière est définie sur l’intérieur de K, noté ◦ K (cad gi(ũ) < 0), et tend vers l’infini sur la frontière de K, notée ∂K (cad gi(ũ) = 0). Le critère à optimiser s’écrit alors : Jtot(ũ, p) = J(ũ) + Jint(ũ, p) (7) J(ũ) = k+Np X j=k+1 [yd(j) − ym(j)]T Q[yd(j) − ym(j)] (8) Cela conduit au problème pénalisé suivant : (Pp)  Min Jtot(ũ, p) ũ ∈ IRm.Nc (9) La régularité du problème (Pp) est équivalente à celle du problème contraint (Pc) sur ◦ K. En supposant que ◦ K est non vide (les contraintes ne sont pas contradictoires), le problème (Pp) a une solution puisque : - Jtot(ũ, p) est une fonction continue sur ◦ K en vertu de la continuité des fonctions du modèle (f et h) et de la fonction barrière B. - L’ensemble C = { ũ ∈ K / Jtot(ũ, p) ≤ η avec η > 0 } est un ensemble compact dont l’existence est assurée par le fait que les points de la frontière de K sont des points d’accumulation d’une suite de points intérieurs à K (K étant un ensemble fermé). L’intérêt de principe, cité plus haut pour la méthode des pénalités intérieures, est en général atténué par deux handicaps qui lui sont reconnus : - l’initialisation à l’intérieur du domaine des contraintes, - le mauvais conditionnement quand les solutions sont situées sur la frontière de ∂K. En ce qui concerne le premier point, on utilise en général dans le cas de la commande prédictive non linéaire, des modèles (et contraintes) physiques. Cela facilite d’autant l’initialisation qui devient triviale pour la commande et qui peut être résolue par une optimisation hors ligne si besoin, pour des contraintes sur les états. Pour le deuxième point, il faut noter que le principe même de la commande prédictive est sous-optimale au sens où la solution à l’instant courant est seulement recherchée meilleure qu’au pas précédent au cas où le temps de calcul est épuisé. B. L’algorithme d’optimisation de Levenberg-Marquardt modifié : condition suffisante de faisabilité en ligne Le problème pénalisé (Pp) peut être résolu par tout al- gorithme d’optimisation non contraint. Nous avons choisi l’algorithme de Levenberg-Marquardt pour ses propriétés de convergence globale, de robustesse et d’efficacité en op- timisation non linéaire sous contraintes [5], [7], [9]. Remarque : La convergence globale est le fait que l’algo- rithme converge vers un point satisfaisant une condition nécessaire d’optimalité quelle que soit l’initialisation. Elle n’implique pas la convergence vers un optimum global qui nécessiterait des conditions de convexité. La fonction Jtot est finie à l’intérieur et à l’extérieur du domaine K. Une solution meilleure et passagère peut donc être obtenue à l’extérieur de K. Quel que soit l’algorithme non contraint utilisé, il est nécessaire de tenir compte de ce fait [9]. Il faut donc modifier l’algorithme de Levenberg- Marquardt pour s’assurer que lors des déplacements suc- cessifs, la solution reste interne au domaine des contraintes. On rappelle l’algorithme de Levenberg-Marquardt à l’itération l : (ũl+1 − ũl ) = −(52 Jl tot + λIIRm.Nc )−1 .5Jl tot ou encore (ũl+1 − ũl ) = d(λl) avec λl ≥ 0. La modification concerne la ”longueur” du déplacement pour rester dans le domaine des contraintes. On introduit alors le paramètre θ ≥ 0 pour adpater le déplacement. (ũl+1 − ũl ) = θ.d(λl) avec λl ≥ 0 , θ ≥ 0 L’algorithme de Levenberg-Marquardt en temps réel est représenté figure 6. IV. Condition de faisabilité du problème d’optimisation Il s’agit maintenant de vérifier que l’algorithme de Levenberg-Marquardt ainsi modifié en tenant compte des contraintes garde sa propriété de convergence globale avec des points intérieurs au domaine des contraintes. Pour cela, on doit imposer aux déplacements successifs d’être selon des directions admissibles au sens des contraintes. Cela peut être obtenu par une condition structurelle sur la ”com- patibilité” des contraintes. Proposition 4.1 : Supposons que les fonctions des contraintes vérifient gi(ũ) soient C2 dans K. Si, pour les contraintes saturées indicées i ∈ Is, on a : ∇gi(ũ) linéairement indépendants (i ∈ Is) alors les solutions intermédiaires restent à l’intérieur du domaine des contraintes et l’algorithme modifié (fig 6) conserve la propriété de convergence globale. Preuve : Il faut rappeler que la condition principale de convergence globale d’un algorithme d’optimisation non linéaire sans contrainte est la propriété de fermeture de l’application multivoque générant l’ensemble des points, so- lutions ou non, à partir de l’algorithme itératif (théorème de Zangwill [7],[9]). Les solutions sont réalisables si elles sont dans le domaine des contraintes et si il existe un che- min admissible dans leur voisinage. Pour cela, on rappelle quelques définitions relatives l’ad- missibilité des points [7] : Un arc de courbe Γ sera dit admissible en u et sera défini par une fonction ϕ (IR+ → IRm ) conti- nuement différentiable du paramètre θ ≥ 0 : ϕ(θ) = [ϕ1(θ), ..., ϕm(θ)] et telle que : (a) ϕ(0) = u0 ; (b) pour θ > 0 suffisamment petit, ϕ(θ) ∈ K. On appelle direction admissible en u0 , tout vecteur y = dϕ dθ (0) = [ dϕ1 dθ (0), dϕ2 dθ (0)..., dϕm dθ (0)]T (10) tangent à l’arc de courbe ϕ(θ) admissible en u0 . L’algorithme de déplacement se résume à toute itération par le déplacement δũ : δũ = θ.d(λ) λ ≥ 0, θ ≥ 0 (11) (52 Jtot + λI)d(λ) = −5Jtot avec 5Jtot et 52 Jtot respec- tivement le gradient et le hessien approché de Jtot. Cette application qu’on note V peut s’écrire : V = Uθ ◦ Dλ (12) où Dλ définit la direction réalisable et Uθ définit le point futur intérieur au domaine des contraintes. Dans l’algorithme de Levenberg-Marquardt, λ est choisi de telle sorte que la matrice M−1 = 52 Jtot +λI soit définie positive : Dλ = d ◦ Λλ Λλ = {λ ≥ 0 tel que M−1 = 52 Jtot + λI soit définie po- sitive }. Cet ensemble existe sur tout compact de type : λ ∈ [−λmin a + ε] avec λmin (resp. λmax) la plus petite (resp. plus grande) valeur propre de 52 Jtot, a = max(|λmin|, |λmax|) et ε > 0. L’application Λλ est fermée en vertu du fait que c’est une application continue sur un compact. L’application d définie sur Λλ, produit de fonctions conti- nues, est donc une application continue sur un ensemble compact. L’application Dλ, compositions d’applications fermées, est fermée. il faut maintenant montrer que l’application Uθ est fermée. Uθ définit le nouveau point (0 ≤ α ≤ θ) : Uθ(ũ, d) = {z = ũ + αd ∈ C / Jtot(z) ≤ min Jtot(ũ + αd)} C étant le compact défini précédemment, le théorème de fermeture de Luenberger [7] garantit la fermeture de Uθ si l’ensemble des directions réalisables n’est pas vide. Soient ϕ(θ) un arc de courbe admissible en ũ et y = dϕ dθ (0) une direction admissible en ũ. Dλ engendre des directions réalisables revient à dire qu’en tout point il est possible de se déplacer à l’intérieur du domaine des contraintes en partant de ũ (i.e l’ensemble des directions admissibles n’est pas vide). - Pour les contraintes non saturées, c’est à dire telles que : gi(ũ) < 0 (i ∈ I − Is) ceci est le cas puisqu’il existe toujours un θ suffisam- ment petit tel que : gi(ϕ(θ)) ≤ 0 - Pour les contraintes saturées, c’est à dire telles que : gi(ũ) = 0 (i ∈ Is) il doit exister un θ suffisamment petit tel que gi(ϕ(θ)) ≤ 0. En utilisant le développement de Tay- lor de gi(ϕ(θ)) au voisinage de θ = 0 (ϕ(0) = ũ), on peut écrire : gi(ϕ(θ)) = gi(ũ) + θ.∇gT i (ũ) dϕ dθ (0) + θ.σ(θ) avec σ(θ) → 0 quand θ → 0. Une condition suffisante pour avoir gi(ϕ(θ)) ≤ 0 est l’indépendance des vecteurs ∇gi en ũ. En effet, dans ces conditions, il n’existe pas de λi tels que P λi∇gi(ũ) = 0 sans que les λi ne soient tous nuls ; et donc le théorème de Gordan (corollaire du théorème de Farkas-Minkowski [7]) s’applique : l’ensemble {y ∈ Rm.Nc / ∇gT i (ũ).y < 0} n’est pas vide. Ainsi, il existe un θ ≥ 0 tel que l’application Uθ est fermée et par suite l’application V = Uθ ◦ Dλ est fermée. En application du théorème de Zangwill, l’algorithme modifié conserve sa propriété de convergence globale. Les ũ appartiennent à l’ensemble compact C, la direction de descente d(λ) = −M.∇Jtot est telle que : d dθ [Jtot(ũ + θd(λ), p)]|θ→0 = ∇JT tot.d(λ) = − ∇JT tot.M.∇Jtot < 0 puisque M est définie positive. balance échantillon radiateur verre vitrocéramique panneau IR 12kW refroidissement support élévateur pyromètre volet mobile en acier Fig. 2. Procédé de séchage par infrarouge. V. Application : un exemple temps réel A. Test du critère de faisabilité La condition suffisante donnée dans la proposition (4.1), peut être vérifiée en étude préalable comme en temps réel, par des tests. - Pour les contraintes sur les commandes (éq. (3),(4)) de type saturation ou vitesse, la condition est auto- matiquement vérifiée pour des variables de commandes indépendantes. - Pour les contraintes sur les états (ou les sorties), le critère rejoint la condition de sensibilité de ces variables par rapport à la commande. En effet, la jacobienne ∂xm ∂u (j) pour x ∈ IRn , u ∈ IRm est certainement mal condi- tionnée si il existe une composante x0 mde xm telle que : ∂x0 m ∂u (j) ≡ 0 pour j = 0, 1, ... + ∞. Une condition suffisante pour garantir la condition donnée dans la proposition (4.1) pour les contraintes de type (5) est donc que : rang [ ∂xm(j) ∂u1(j) ∂xm(j) ∂u2(j) . . . ∂xm(j) ∂um(j) ] soit maximal. (13) Les contraintes min et max portant sur une commande ou un état ne peuvent jamais être saturées en même temps. B. Procédé de séchage de peinture Un procédé pilote permet de sécher par infrarouge, un film de peinture utilisant l’eau comme solvant à la place d’autres composés chimiques [2]. Il est représenté figure 2. Le film de peinture est caractérisé par sa température T(t), supposée uniforme dans l’épaisseur du film, et par l’humidité en base sèche χ(z, t), variable en fonction de l’épaisseur z de l’échantillon. L’écriture des bilans mas- siques et thermiques permet d’obtenir un modèle non linéaire d’équations aux dérivées partielles représentant le procédé :                                                  ∂χ ∂t = ∂ ∂z [Deff (χ, T)∂χ ∂z ] z ∈]0, esec[, t > 0 dT dt = − P5 i=1 Pi+Pabs ρCp(χ̄,T )ep+ρsCses ∀ z ∈ [0, esec], t > 0 avec Deff (χ, T) = D0exp ( −a χ ) exp ( −Ea RT ) (1+φχ)2 avec les conditions aux frontières : ∂χ ∂z = 0 for z = 0, t > 0 −Deff (χ, T)∂χ ∂z = ṁ(χmoy,T ) ρ pour z = esec, t > 0 et les conditions initiales : χ(z, 0) = χi , ∀ z ∈ [0, esec], T(0) = Ti. (14) Les expressions des différentes puissances mises en jeu (respectivement convection, radiation, évaporation et puis- sance absorbée par infrarouge) sont données ci-dessous [2] : P1 = hc(T − Th) , P2 = hc(T − Tb) P3 = σh(T4 − T4 h ) , P4 = αs σ(T4 − T4 b ) P5 = lv(T)ṁ(χmoy, T) , Pabs = αir(χmoy)ϕir Le flux infrarouge ϕir est la variable de commande et la sortie mesurée du procédé est la température. Ce modèle est discrétisé par la méthode des volumes finis afin d’obte- nir un modèle non linéaire en dimension finie. L’objectif de commande est de poursuivre une référence de température garantissant des conditions optimales de séchage. Ce profil assure un compromis entre temps de séchage et qualité finale afin d’éviter tout phénomène de bullage ou de fissuration sur le film de peinture. Ce procédé est soumis à des contraintes fonctionnelles sur les variables de commande (umax = 12 kW.m−2 , umin = 0 W.m−2 , ∆umax = +500 W.m−2 .s−1 , ∆umin = −500 W.m−2 .s−1 ) et à une contrainte sur l’humidité moyenne χ̄, grandeur liée à la variable d’état χ : χ̄min ≤ χ̄(t) = 1 esec Z esec 0 χ(z, t) dz ≤ χ̄max avec esec, l’épaisseur finale théorique de la couche de pein- ture sèche (χ̄min = 0.01Kg.Kg−1 , χ̄max = 0.4Kg.Kg−1 ). L’humidité n’étant pas mesurée en ligne, un observateur sur horizon glissant a été proposé [4]. Les résultats expérimentaux en temps réel montrent que, quelque soit l’horizon de prédiction Np, l’objectif de pour- suite est atteint (fig 3) et que les contraintes sont vérifiés sur les variables de commandes en amplitude (fig 4) et en vitesse (fig 5). La qualité de poursuite dépend du choix de Np qui influence aussi le temps de calcul. L’algorithme ef- fectue en moyenne 12 itérations (nécessitant la résolution du modèle et du problème d’optimisation non linéaire) en moins de 100ms (avec un CPU de 2.6GHz). VI. Conclusion Nous avons proposé une amélioration structurelle d’un algorithme d’optimisation afin de satisfaire les exigences de résolution en temps réel de la commande prédictive non linéaire sous contraintes. La convergence de cet algorithme 40 60 80 100 120 140 160 0 50 100 150 200 250 300 Temperature (Degre Celsius) Temps (secondes) Reference Np=3s Np=6s Np=12s Fig. 3. Poursuite de trajectoire pour différents Np. 0 2000 4000 6000 8000 10000 12000 14000 0 50 100 150 200 250 300 Flux (Watt.m-2) Temps (secondes) Np=3s Np=6s Np=12s Fig. 4. Amplitude de la commande obtenue pour différents Np. -400 -200 0 200 400 600 0 50 100 150 200 250 300 (Watt.m-2.s-1) Temps (secondes) Np=3s Fig. 5. Vitesse de la commande obtenue pour différents Np. est assurée par une condition suffisante sur les contraintes, traduisant leur compatibilité avec le problème posé. Cette condition constitue un test préalable à la faisabilité de la commande prédictive. L’algorithme utilisé n’est pas exclu- sif de sorte que n’importe quel algorithme présentant les mêmes qualités peut être étudié dans les mêmes conditions. Ceci confère à la démarche un aspect générique puisque la convergence de la méthode de résolution est nécessaire dans l’étude de la stabilité. En effet, la fonction coût est prise comme fonction de Lyapunov pour l’étude de la stabilité et cette fonction doit être décroissante. Références [1] J.V Burke, « Calmeness and exact penalization », SIAM Journal Control and optimization, vol 29(2), pp. 493-497, 1991. [2] P. Dufour, Y. Touré, D. Blanc, P. Laurent, « On nonlinear dis- tributed parameter model predictive control strategy : on-line cal- culation time reduction and application to an experimental drying Oui Oui Oui Oui Oui k = k + 1 λ = λ αλ Jl+1 tot ≤ Jl tot ? Non Oui Non Non Non Non Oui k = 0 λ = λ0 p = p0 Non Non Oui ũl = ũ0 ũl = ũl+1 (52 Jl tot + λI)d(λ) = −5Jl tot λ = λ/αλ Détermination de Jl tot, 5Jl tot, 52 Jl tot tcalcul ≤ αTe Te? ||5Jl tot|| ≤ ε? tcalcul ≤ αTe Te? ũl+1 = ũl + θd(λ) ||Jl+1 tot − Jl tot|| ≤ ε? tcalcul ≤ αTe Te? ||Jl+1 tot − Jl tot|| ≤ ε? Fig. 6. Algorithme d’optimisation modifié (αTe > 1, αλ > 1). process, Computers & Chemical Engineering, vol 27(11), pp. 1533- 1542, 2003. [3] P. Dufour, F. Couenne, Y. Touré, « Model predictive control of a catalytic reverse flow reactor », Special issue of IEEE Trans. on Control Syst. Technol. on Control of Industrial Spatially Distribu- ted Parameter Processes, vol 11(5), pp. 705-714, 2003. [4] P. Dufour, E. Courtial, Y. Touré , P. Laurent, « Trajectory tra- cking strategy for a nonlinear distributed parameter process », ECC’01, Porto, Portugal, 2001. [5] R. Fletcher, Practical methods of optimization, John Wiley and Sons, 1987. [6] D.Q Mayne, J.B Rawlings, C.V Rao, P.O.M Scokaert, « Constrai- ned model predictive control : stability and optimality » , Auto- matica, vol 36(6), pp. 789-814, 2000. [7] M. Minoux, Programmation mathématique, Dunod, Paris, France, 1983. [8] M. Morari, J.H Lee, « Model predictive control : past, present and future » , Comp. & Chem. Eng., vol 23(4-5),pp. 667-682, 1999. [9] E. Polak, Computational methods in optimization, Academic Press, NYC, 1971. [10] S.J Qin, T.A Badgwell, « A survey of industrial model predictive control technology », Control Eng. Pract., vol 11(7), pp. 733-764, 2003. [11] J.B Rawlings, « Tutorial overview of model predictive control », IEEE Control Systems, vol 20(3), pp. 38-52, 2000. [12] W.I Zangwill, « Nonlinear programming via penalty functions », Management Sciences, vol 13, pp. 344-358, 1967.