Modélisation et commande neuronales d’une unité de régulation de niveau d’eau

30/09/2017
Publication e-STA e-STA 2005-4
OAI : oai:www.see.asso.fr:545:2005-4:19999
DOI : You do not have permission to access embedded form.

Résumé

Modélisation et commande neuronales d’une unité de régulation de niveau d’eau

Métriques

8
4
347.07 Ko
 application/pdf
bitcache://c043cfc693d9c8ad873bdbbf0214263187b2b945

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:2005-4/19999</identifier><creators><creator><creatorName>Abderrazak Chatti</creatorName></creator><creator><creatorName>Tarek Gallah</creatorName></creator><creator><creatorName>Imen Ayari</creatorName></creator></creators><titles>
            <title>Modélisation et commande neuronales d’une unité de régulation de niveau d’eau</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">Sat 17 Feb 2018</date>
	</dates>
        <alternateIdentifiers>
	    <alternateIdentifier alternateIdentifierType="bitstream">c043cfc693d9c8ad873bdbbf0214263187b2b945</alternateIdentifier>
	</alternateIdentifiers>
        <formats>
	    <format>application/pdf</format>
	</formats>
	<version>34013</version>
        <descriptions>
            <description descriptionType="Abstract"></description>
        </descriptions>
    </resource>
.

Modélisation et commande neuronales d’une unité de régulation de niveau d’eau Abderrazak CHATTI 1 , Tarek GALLAH 1 , Imen AYARI 1,2 1 LARA, Ecole Nationale d’Ingénieurs de Tunis,BP. 37, Le Belvédère ,1002 Tunis, Tunisie 2 LAGIS, Ecole Centrale de Lille, BP. 48, F 59651 Villeneuve d’Ascq Cedex, France abderrazak.chatti@insat.rnu.tn, tarek@gallah.zzn.com, ayari_i@voila.fr réservoirs r1 et r2, une vanne de vidange contrôlée manuellement, un capteur de niveau placé dans le réservoir r2, et une pompe de remplissage contrôlée automatiquement par ordinateur. Résumé Dans cet article, sont développées des commandes neuronales d’une unité de régulation de niveau d’eau. Les efficacités des approches correspondantes par commande par modèle interne et par commande par anticipation, sont comparées à celles d’une commande classique de type PI. H Qs Qe Pompe Vanne manuelle Réservoir r1 Réservoir r2 Mots clés : systèmes non linéaires, modélisation, réseaux de neurones artificiels, Commande par Modèle Interne (CMI), commande par anticipation, régulateur PI. 1. Introduction Fig. 1 Schéma synoptique du procédé réel étudié L’utilisation des réseaux de neurones artificiels, est une approche qui a pris ses origines dans l’étude du tissu nerveux. En fait, le fonctionnement d’un neurone artificiel s’effectue par analogie avec celui de la cellule nerveuse : le composant le plus élémentaire du cerveau des organismes vivants. Un réseau de neurones est constitué d’un ensemble de neurones artificiels interconnectés par des poids dont les valeurs influent sur le comportement de toute la structure. Les règles selon lesquelles l’opération d’ajustement des connexions s’effectue, caractérisent l’algorithme d’apprentissage ou de synthèse du réseau. C’est la propriété de traitement distribué et rapide de l’information, due à la structure massivement parallèle et à la capacité de reproduire des comportements arbitraires à partir d’exemples représentatifs qui font des réseaux neurones des outils intéressants pour la résolution de divers problèmes [1,2,3,4]. La pompe P aspire le liquide du réservoir r1 pour le transmettre vers le réservoir r2 avec un débit variant entre 0 et 2.3 l/mn. Selon le niveau du liquide H dans le réservoir r2, le moteur à courant continu, qui contrôle la pompe, reçoit une commande qui agit sur le débit d’entrée Qe. Le signal de commande de la pompe varie entre 0 et 12v ; la conversion analogique numérique de ce signal produit une valeur entre 0 et 255. Etude du procédé en boucle ouverte La figure 2 donne les réponses indicielles du procédé pour différents points de fonctionnement. Ces réponses laissent apparaître que le procédé peut être approché par un modèle de premier ordre. Le tableau 1 met en évidence les variations du gain instantané G et de la constante de temps du procédé. τ Tab. 1 Caractéristiques physiques du procédé Qe(l/mn) G τ (s) 2 97.5 184 1.84 89.67 164 1.45 79.31 84 Dans cet article, sont développées des approches de modélisation et de commande d’une unité pilote de régulation du niveau d’eau en utilisant les deux structures de commande neuronale suivantes: la commande par modèle interne et la commande par anticipation. Les résultats de leur mise en oeuvre sont comparés à ceux obtenus par l’application d’un régulateur PI classique. L’existence de plusieurs régimes de fonctionnement montre la nécessité de mettre en œuvre des techniques et des méthodes d’études adaptées à cette complexité. Les avantages et les inconvénients de telles stratégies de commande sont dégagés. 3. Modélisation neuronale du procédé 2. Description de l’unité de régulation du niveau d’eau étudiée L’utilisation des techniques d’apprentissage en commande des processus permet de surmonter des difficultés engendrées par les fortes non linéarités. Le grand intérêt porté aux réseaux de neurones pour la commande réside Le procédé pilote dont le schéma synoptique est donné sur la figure 1, comporte essentiellement deux [ ] (k) y y (k) J N k m ∑ − = =1 2 2 1 (1) ainsi dans leur capacité de modélisation des systèmes non linéaires par apprentissage. Selon la structure de commande utilisée, un modèle directe ou un modèle inverse du processus est nécessaire à déterminer. avec : N : le nombre d’exemples d’apprentissage, Après la détermination d’un modèle direct du procédé étudié, un modèle inverse est élaboré et utilisé dans les approches relatives à la commande par modèle interne et à la commande par anticipation [2,3,4]. k : le k-ième exemple, k =1,2,…,N , y(k) : la sortie désirée, ym(k): la sortie du modèle neuronal. Soit W1 la matrice des poids caractérisant la liaison entre les entrées et la couche cachée et W2 la matrice des poids entre la couche de sortie et la couche cachée. Le modèle neuronal est régi par l’équation suivante : ( ) ) ( ( ) ( 1 2 k E W g W h k ym = (2) avec : h : la fonction d’activation des neurones de la couche de sortie, Niveau (ml) g : la fonction d’activation des neurones de la couche cachée, E(k) : le vecteur d’entrée ou stimulus numéro k. En notant par : Ei(k) : le vecteur d’entrée de la couche de sortie, Ej(k) : le vecteur d’entrée de la couche cachée, Si (k) : le vecteur de sortie de la couche cachée. Nombre d’échantillons on a : Fig. 2 Réponses indicielles du procédé S(k) =g(W1.E(k)) L’actualisation des poids du réseau de neurones se fait comme suit : 3.1 Modèle neuronal direct du procédé Un modèle neuronal direct du procédé étudié est élaboré, dans ce qui suit, afin d’être utilisé pour la commande par modèle interne. W J W W ancien nouveau ∂ ∂ − = µ (3) La modélisation neuronale directe utilise un réseau d’anticipation réalisant une fonction non linéaire qui estime la sortie du processus à partir des anciennes valeurs de son entrée et de sa sortie. µ étant le pas d’apprentissage. Les variations de J en fonction des poids W1 et W2 sont déterminées à partir des relations suivantes : Le schéma d’apprentissage utilisé est donné dans la figure 3, avec : W ) k ( E . ) k ( E ) k ( y . ) k ( y J W J 2 i i m m 2 Ý Ý Ý Ý Ý Ý = Ý Ý u : l’entrée de commande, y : la sortie désirée, [ ] W (k) E . (k) E (k)) h(E . y(k) (k) y 2 i i i m Ý Ý Ý Ý - = (4) ym: la sortie du modèle neuronal, e : l’erreur d’apprentissage. [ ] . (k) E (k)) h(E . y (k) (k) y W J i i m 1 Ý Ý - = Ý Ý 1 . . W (k) j E (k) E (k)) g(E (k) i S (k) i E j j ∂ ∂ ∂ ∂ ∂ ∂ (5) La figure 4 donne l’erreur de généralisation entre la sortie du procédé réel et la sortie du modèle élaboré. Cette erreur étant faible avec une valeur absolue maximale de 0.015, le modèle obtenu est retenu pour servir dans la structure de commande. Fig. 3 Système d’apprentissage pour la modélisation neuronale d’un processus L’architecture utilisée est celle d’un réseau non bouclé à 2 entrées comportant une couche cachée de 10 neurones à fonction d’activation sigmoïde et une couche de sortie d’un neurone linéaire. 3.2 Modélisation neuronale inverse du procédé Le modèle neuronal inverse du processus réalisé par un réseau de neurones comporte 3 entrées, 10 neurones cachés à fonction d’activation sigmoïdale et un neurone de sortie linéaire. L’algorithme d’apprentissage utilisé est celui de la rétropropagation du gradient. L’algorithme d’apprentissage utilisé est celui de la rétropropagation du gradient visant à minimiser la fonction coût J suivante : Fig. 4 Variation de l’erreur de généralisation Le système à commander étant exprimé par la relation suivante : ( ) 1 ( ,..., ) ( , ) 1 ( ,..., ) ( ) 1 ( + − + − = + m k u k u n k y k y f k y (6) ) ( ) W (k) k u k u ) (k y k ) W(k- W (k) m ∂ ∂ ∂ + ∂ = ) ( ) ( 1 ) ( 2ε - - 1 y µ (12) où f est une fonction non linéaire, le modèle inverse du système s’écrit de façon théorique : ( ) 1 n ..., y(k ) , y(k) , 1 (k y f u (k) 1 + + = - , u(k (7) ) ) 1 1 + − − m k ) ,..., u( La validation du modèle inverse élaboré du procédé, en utilisant la méthode d’apprentissage spécialisé et l’algorithme de rétropropagation du gradient, produit une faible erreur de généralisation moyenne de valeur absolue inférieure à 0.02 ; ce qui montre l’intérêt de l’utilisation de ce modèle pour la commande. Ce modèle inverse est utilisé en commande en remplaçant la sortie du système y(k+1) par le signal de référence yc(k+1) comme suit : ( 1) + n - y(k ,..., y(k) , 1) + (k y f = (k) u c -1 (8) ) ) 1 1 + − − m k ) ,..., u( , u(k Toutefois, pour l’apprentissage du modèle inverse, la commande désirée ud(k) n’étant pas disponible, plusieurs méthodes d’apprentissage existent dont l’apprentissage spécialisé utilisé dans cette application, exploitant le modèle direct précédemment généré. Apprentissage spécialisé du modèle inverse Les paramètres du réseau, représentant le modèle inverse, sont déterminés en minimisant l’écart entre la commande appliquée au système et la sortie du réseau. En effet, l’écart entre la sortie du système et le signal de référence n’est pas forcement minimal. Une solution pour l’amélioration du fonctionnement consiste à conditionner le modèle inverse en se basant sur l’écart entre la consigne et la sortie du système, figure 5. Fig. 5 Apprentissage spécialisé du modèle neuronal inverse L’ajustement des paramètres du modèle neuronal inverse se fait en minimisant le critère quadratique suivant : ( 2 N 1 k 1 ) 1 ( ) 1 ( + − + = ∑ = k y k y J m c ) (9) ym étant la sortie mesurée du modèle neuronal. En utilisant une méthode du gradient, les paramètres du modèle inverse sont donnés par l’expression suivante : W(k) J ) W (k- W (k) ∂ ∂ = 1 - 1 µ (10) Le développement de l’équation (10) donne la relation (11), ( ) W (k) ) (k y k ) W (k- W (k) m ∂ + ∂ = 1 ) ( 2ε - - 1 y µ (11) Temps (échantillons) avec ( ) ) 1 ( ) 1 ( ) 1 ( + − + = + k y k y k m c y ε qui peut être réécrite sous la forme : 4. Commande neuronale du procédé Les modèles inverse et direct élaborés sont exploités dans deux structures de commande mises en œuvre pour la régulation du niveau d’eau : la commande par modèle interne et la commande par anticipation. 4.1 Commande classique par PI numérique Une commande classique par PI numérique est élaborée afin de comparer ultérieurement les résultats avec ceux relatifs aux commandes neuronales, figure 6. PI Processus Fig. 6 Commande par PI numérique d’un processus La loi de commande discrète est définie dans ce cas comme suit : [ ] [ ] ) 1 ( ) ( ) ( ) ( ) 1 ( ) ( − − − − + − = k y k y k k y k y k k u k u c i (14) Les paramètres du régulateur PI ont été déterminés par la méthode de Takahashi. La figure 7 donne les évolutions de la sortie réelle du procédé, de la consigne et du signal de commande pour et 1089 . 0 = i k 6186 . 4 = k et pour une période d’échantillonnage utilisée Tech=4s. Les résultats obtenus montre que la poursuite de la consigne de niveau est effectuée avec un temps de réponse relativement lent ; le signal de commande présente quand à lui des fluctuations aigues, succeptible de détériorer l’actionneur de la pompe. 4.2 Commande neuronale par modèle interne Cette structure utilise le modèle inverse comme système de commande et le modèle direct du processus comme modèle interne [1]. Le schéma de principe d’une telle commande est donné à la figure 8. 9. Calcul du vecteur d’entrée du modèle inverse (contrôleur), [e(k), ym(k-1), u(k-1)] Le modèle neuronal direct est noté par M, le contrôleur neuronal, qui est le modèle inverse, par C et le filtre introduisant une action stabilisante par F. La boucle de retour permet le rejet de perturbations non mesurées [2,3]. 10. Calcul de la loi de commande (sortie du contrôleur), u(k) 11. Application de la commande u(k) Temps (échantillons) Temps (échantillons) Niveau (ml) 12. k=k+1, retour à l’étape 2 La figure 9 donne les évolutions de la sortie réelle du procédé, de la consigne et du signal de commande. Les figures 7 et 9 montrent les performances de la commande neuronale par modèle interne ainsi que celles par PI, aussi bien au niveau de la rapidité qu’au niveau de la minimisation des fluctuations du signal de commande. (a) Nous envisageons dans la suite l’utilisation d’une commande par PI associée à une commande neuronale, d’une part pour annuler l’erreur statique et pour réaliser le suivi de la dynamique du système d’autre part ; cette commande est dite commande par anticipation. Processus Modèle Direct Modèle Inverse ym(k) û(k-1) Temps (écha tillons) n Temps (échantillons) Niveau (ml) (b) Fig. 7 Evolutions de la sortie y, de la consigne yc et du signal de commande u, généré par PI (a) Fig. 8 Structure d’une commande neuronale par modèle interne d’un processus (b) Fig. 9 Evolutions de la sortie y, de la consigne yc et du signal de commande u, généré par CMI L’algorithme de commande utilisé est le suivant : 4.3 Commande par anticipation 1. Initialisation du procédé, k=1, Tech=4s Cette structure de commande comporte deux contrôleurs placés en parallèle, qui sont le modèle inverse du système et un contrôleur PI classique. Le premier contrôleur sert à modéliser les dynamiques inverses du système. Il peut être entraîné pour calculer la valeur de la commande à l’instant courant, nécessaire pour le problème de régulation ou de poursuite. Le deuxième contrôleur sert pour compenser l’effet des perturbations et des incertitudes. La structure fonctionnelle de la stratégie de commande est donnée à la figure 10. 2. Initialisation de l’horloge 3. Acquisition de la sortie y(k) 4. Calcul du vecteur d’entrée du modèle, [ y(k-1), u(k-1)] 5. Calcul de la sortie du modèle direct ym(k) 6. Calcul de l’erreur ) ( ) ( ) ( k y k y k m − = ε Le signal de référence est appliqué à l’entrée du modèle inverse, celui-ci délivre à sa sortie une commande u1. La commande u2 issue du contrôleur PI, est fonction de l’écart entre le signal de référence yc et la sortie du système y. 7. Calcul de l’entrée du filtre, yc(k)- ε(k) 8. Calcul de la sortie du filtre de premier ordre e(k) La commande appliquée au système est donnée par : u (15) ) ( ) ( ) ( 2 1 k u k u k + = L’algorithme de commande utilisé est le suivant : Temps (échantillons) Temps (échantillons) Niveau (ml) 1. Initialisation du procédé, k=1, Tech=4s 2. Initialisation de l’horloge 3. Acquisition de la sortie, y(k) 4. Calcul de l’entrée du PI : e(k) = yc(k)- y(k) 5. Calcul de la sortie du PI : u1(k)=u1(k-1) + ki e(k) – kp (y(k)- y(k-1)) 6. Calcul du vecteur d’entrée du modèle inverse [ yc(k), y(k-1), u2(k-1)] 7. Calcul de la loi de commande : u(k) =u1(k) + u2(k) 8. Application de la commande u(k) 9. k=k+1, retour à l’étape 2 Fig. 10 Structure d’une commande par anticipation d’un processus Les résultats obtenus par la mise en oeuvre de la commande par anticipation sont donnés à la figure 11.La réponse obtenue par l’utilisation de cette commande est lente et présente peu de fluctuation au niveau de signal de commande et une erreur statique nulle, et ce sans filtre. 5. Conclusion Cet article illustre la mise en oeuvre sur un système non linéaire, tel q’une unité de régulation de niveau d’eau, de deux structures de commande neuronales : la commande par modèle interne basée sur l’utilisation d’un modèle neuronal inverse et direct, et la commande par anticipation basée sur la combinaison du modèle inverse et du PI classique; et ce en comparaison avec une commande classique par PI numérique. Les résultats de la commande par modèle interne ont donné les meilleures performances du point de vu temps de réponse et moindres fluctuations de la sortie; cependant, vu l’inexistence d’une méthode directe de détermination du gain du filtre, nous avons utilisé la commande par anticipation qui a présenté des résultats moins bons que la commande par modèle interne mais nettement meilleurs que ceux obtenus par PI classique. (a) y(k+1) yc(k+1) u1(k) Modèle Inverse u2(k) PI Processus (b) Fig. 11 Evolutions de la sortie y, de la consigne yc et du signal de commande u. 6. Références [1] I.Rivals, (1995), «Modélisation et commande de processus par réseaux de neurones; application au pilotage d’un véhicule autonome», Thèse de Doctorat, Université de Paris 6. [2] I.Rivals, L.Personnaz, G.Dreyfus and D.Canas, (1993), «Real-time control of an autonomous vehicle: a neural network approach to the path-following problem», 5th International Conference on Neural Networks and their Applications, pp.219-229, Nîmes. [3] S.Bel Hadj Ali, (2003), «Sur la commande par modèle interne de processus dynamiques», Thèse de Doctorat, Ecole Nationale d’Ingénieurs de Tunis, Tunis. [4] A.Yaich, (2002), «Sur la modélisation et la commande des systèmes en incluant les concepts des réseaux de neurones et de la logique floue», Thèse de Doctorat, Ecole Nationale d’Ingénieurs de Tunis, Tunis. [5] S.Chen, S.A.Billings and P.M.Grant, (1990), «Nonlinear system identification using neural networks», Int. J. Control, Vol.51, No 6, pp.1191-1214. [6] U.Anders and O.Korn, (1999), «Model selection in neural networks», Neural Networks, Vol.12, pp.309-323. [7] K.Hornik, M.Stinchcombe, H.White and P.Auer, (1994), «Degree of approximation results for feedforward networks approximating unknown mappings and their derivatives», Neural Computation ,Vol.6, pp. 1262-1275. [9] K.Ben Saad, (2005), «Modélisation et commande d’un moteur pas à pas tubulaire à réluctance variable et à quatre phases, Approches conventionnelles, par logique floue et par réseaux de neurones artificiels», Thèse de Doctorat, Ecole Nationale d’Ingénieurs de Tunis, Tunis. [10] A.Abdelkrim, (2005), «Contribution à la modélisation du processus d’écriture à la main par approches relevant du calcul évolutif», Thèse de Doctorat, Ecole Nationale d’Ingénieurs de Tunis, Tunis.