République algérienne démocratique et populaire Ministère de l'enseignement supérieur et de la recherche scientifique Université des frères Mentouri Constantine Faculté des sciences de la Technologie Département d'électrotechnique TP N°6 : Commande par contrôleurs basés sur un réseau Neuro-flou adaptatif (ANFIS) Présenté par : Ghiri Siradj Eddine 1. Introduction au réseau (ANFIS) Les systèmes neuro-flous sont apparus de I ’association des réseaux de neurones et de la logique floue. La logique floue permet une spécification rapide des taches 4 accomplir 4 partir des connaissances symboliques disponibles. Le réglage précis du système obtenu et l’optimisation de ses différents paramètres reste néanmoins beaucoup dans de nombreux cas assez difficile. En revanche les modèles les plus courant des RNA n’autorisent pas l’incorporation de connaissance a priori mais permet de régler par apprentissage le comportement précis du système. Le principal type d'association entre les réseaux de neurones et les systèmes flous est le cas où un système d'inférence flou est mis sous la forme d'un réseau multicouche, dans lequel les poids correspondent aux paramètres du système d’inférences floue. 1.2 Architecture du réseau ANFIS Le système hybride ANFIS (Adaptive Network Basé Fuzzy Inférence System) proposé par Jang est un système d'inférence neuro-flou adaptatif. Il consiste à utiliser un réseau de neurone MLP a 5 couches dont chacune est destinée à la réalisation d’une étape d’un système d’inférence floue de type Takagi-Sugeno. Couche 1 : Chaque neurone calcule le degré d'appartenance d’un sous ensemble flou particulier par sa fonction de transfert (fuzzification). La seule restriction sur le choix de cette fonction est sa dérivabilité. En trouve dans la littérature, l’utilisation des fonctions gaussiennes dont les paramètres modifiables sont le centre et la pente de la gaussienne. Si x est l’entrée du nœud i, Ai est le terme linguistique associé à sa fonction, il représente donc le degré d’appartenance de x à Ai. Les paramètres d’un nœud de cette couche sont ceux de la fonction d’appartenance correspondante. Couche 2 : Elle sert à calculer le degré d'activation des prémisses. Chaque neurone dans cette couche reçoit les sorties des neurones précédents de fuzzification et calcule son activation. La conjonction des antécédents est réalisée avec l’opérateur produit. Couche 3 : Chaque neurone calcul le degré de vérité normalisé d’une règle floue donnée. La valeur obtenue représente la contribution de la règle floue au résultat final. Couche 4 : Chaque neurone f de cette couche est relié à un neurone de normalisation correspondant et aux entrées initiales du réseau. Il calcule le conséquent pondéré de la règle. (𝑓𝑖 = 𝑎𝑖 𝑥 + 𝑏𝑖 𝑦 + 𝑐𝑖 ) Couche 5 : Comprend un seul neurone qui fournit la sortie de ANFIS en calculant la somme des sorties de tous les neurones de sortie. 2. Partie simulation A. Regulation d’un MCC par un Correcteur Pi: A la sortie : Commentaire : Comme remarqué déjà précédemment, le correcteur PI au moment de perturbation il a fait la régulation de vitesse (reprendre a la vitesse initiale), avec les meilleur valeurs de Kp et Ki précisées. ➢ Maintenant on va inclure le PI dans un system ANFIS : On tape ‘anfisedit’ et on ajoute nos données erreur et command, Les résultats sont presque identiques a ceux de la simulation précédente. Après qu’on choisie 5 couches et le nombre de epochs 20 le training nous donne le résultat suivant : Comme petite remarque on voit que l’erreur diminue de façon normale chaque epoch. ➢ L’étape suivante on doit simuler le même bloc mais en remplaçant maintenant le contrôleur PI par un Fuzzy contrôler et importer le ficher ANFIS enregistré précédemment : Sur fuzzy contrôler on voise couches et les résultats changent a chaque fois qu’on change les inputs. On enlève la partie de dérivée au début et on fait la simulation, les valeurs des gains après plusieurs essais sont 0.009 et 3.5 (sont pas idéals). La simulation nous donne : Remarque : Après la perturbation, la vitesse n’est pas régulée comme le cas de régulation PI, ça veut dire il y a une correction de la vitesse mais le résultat n’était pas bon. ➢ Pour un deuxième essai, on va maintenant faire exactement les mêmes étapes, mais cette fois on branche l’intégrateur (la dérivé). CAS 1 ‘quelque essai de précision des gains. Remarque : On va d’abord choisir les mêmes valeurs précédentes des gains (0.009 et 2.7) qui ne sont pas vraiment idéales • Sur ANFIS on fais les mêmes étapes mais avec une architecture ANFIS de 2 imputes de 5 couches Sur fuzzy contrôler : Fig. représentation des deux imputs dans la surface d’un contrôleur flue. • Les résultats obtenus (ANFIS + SCOPE simulation) sont : Comme petite remarque on voit que l’erreur diminue rapidement par rapport a celle de l’essai précèdent jusqu’a la 8eme epoch. Fig.a résultats de Fuzzy contrôler avant ANFIS Fig.b résultats de Fuzzy contrôler après ANFIS Remarque Les deux courbes présentées (avant et après), sont égales, on remarque que la vitesse toujours n’est pas vraiment corrigée c’est a cause des valeurs des gains qui étaient pas vraiment bien précises. CAS 2 avec des valeurs idéals des gains ‘Ken et Ku’ Remarque : On va choisir cette fois les valeurs des gains idéals après plusieurs essais 0.017 et 500 de 3eme tp, ces valeurs donnent la minimisions d’erreur max, mais comme remarqué dans tp3 la vitesse n’est jamais reprise à sa valeur initiale. • Sur ANFIS on fais les mêmes étapes mais avec une architecture ANFIS de 2 imputes de 5 couches • Sur Fuzzy contrôler : La surface : Les résultats obtenus sont : Remarque On voit que l’erreur est presque éliminée à partir de la 3eme epoch, et continue avec la même valeur jusqu’a la fin. Fig.c résultats de Fuzzy contrôler avant ANFIS Fig.d résultats de Fuzzy contrôler après ANFIS Remarque : En comparant des courbes, on a vu que sont presque identiques, c’est par ce que les résultats du 3eme TP déjà sont idéales (l’erreur très minimalisée) a cause de plusieurs essais de choix des gains 0.017 et 500, alors automatiquement après l’utilisation de ANFIS on obtient les mêmes résultats (élimination de perturbation). Conclusion Après avoir faire deux essais (sans et avec la partie de dérivée), on conclue que les résultats avec partie dérivée donnent des résultats meilleurs car on a vu les erreurs diminue d’une façon plus rapide que dans le premier essai. Conclusion générale Dans ce TP on a fait une commande par un contrôleur (ANFIS) avec PI, et avec Fuzzy contrôler et on a vu qu’il est capable d’éliminer les erreurs rapidement si on utilise une partie dérivée avec un fuzzy contrôler et une architecture de 2 inputs et 5 couches. Après tous ces essais, on conclue que la commande par ANFIS, RNA, LF, ou bien PI d’un mcc donne une régulation de la vitesse au moment des perturbations, et comme expliqué déjà dans les TP précédents, le correcteur PI restera la meilleure méthode de régulation de la vitesse de MCC, par ce que la vitesse est régulée à sa valeur initial (avant la perturbation) mais : Si on veut, on peut dans les autres méthodes approcher ces résultats à ceux de la méthode PI. Pour plus d’explication ; dans la méthode (ANFIS + Fuzzy contrôler), on a ajouté une partie dérivée, plus des plusieurs essais des gains. Après un certain temps on obtient des résultats très proches a ceux de la régulation PI (Ken et Ku idéals) comme fais dans CAS 2 (voire Fig.c et Fig.d).