Académique Documents
Professionnel Documents
Culture Documents
Travaux Pratique
Parté Théorique
1. Introduction de la logique floue :
La logique floue est une extension de la logique booléenne créée par Lotfi Zadeh en 1965
en se basant sur sa théorie mathématique des ensembles flous, qui est une généralisation de la
théorie des ensembles classiques. En introduisant la notion de degré dans la vérification d'une
condition, permettant ainsi à une condition d'être dans un autre état que vrai ou faux, la
logique floue confère une flexibilité très appréciable aux raisonnements qui l'utilisent, ce qui
rend possible la prise en compte des imprécisions et des incertitudes.
Un des intérêts de la logique floue pour formaliser le raisonnement humain est que les règles
sont énoncées en langage naturel. Voici par exemple quelques règles de conduite qu'un
conducteur suit, en supposant qu'il tienne à son permis :
Si le feu est rouge... si ma vitesse est élevée... et si le feu est proche... alors je freine fort.
Si le feu est rouge... si ma vitesse est faible... et si le feu est loin... alors je maintiens ma vitesse.
Si le feu est orange... si ma vitesse est moyenne... et si le feu est loin... alors je freine doucement.
Si le feu est vert... si ma vitesse est faible... et si le feu est proche... alors j'accélère.
Intuitivement, il semble donc que les variables d'entrée à l'instar de cet exemple sont appréciées par
le cerveau de manière approximative, correspondant ainsi au degré de vérification d'une condition de
la logique floue.
Afin d'exemplifier chacune des définitions, nous allons concevoir au fil de ce cours
d'introduction à la logique floue un système d'inférence flou concret dont l'objectif est de décider du
pourboire à donner à la fin d'un repas au restaurant en fonction de la qualité du service ainsi que de
la qualité de la nourriture.
2. Un Régulateur PI Floue:
Toujours dans le but d'illustrer le dossier sur le Logique Floue, cet article présente un second
et dernier exemple de système flou : le régulateur proportionnel intégrale flou (PI flou).
Le système flou sera assez basique et pourra être grandement améliorer le but étant avant tout de
comprendre comment mettre en place une régulation flou de type PI. En fin d'article,
1
TP de Module : Intelligence Artificielle
j'expliquerais comment étendre l'exemple à un régulateur plus complet de type PID. Par contre,
je n'ai pas fait de simulations, je vous laisse le soin de tester ce régulateur et d'effectuer les
réglages vous-même.
Si vous ne connaissez pas le principe des régulateurs PI ou PID pour asservir un système, je
vous conseille de faire une petite recherche sur le web ou de lire cet article qui explique le
fonctionnement d'un PID
Avec :
u(k) : la commande à l'instant k
Δu : la variation de la commande
c : la consigne à respecter
2
TP de Module : Intelligence Artificielle
Les données que l'on a en entrées sont l'erreur et la variation de l'erreur. Chacune de ses
entrées sera représentée par trois variables linguistiques.
(erreur_négative, erreur_nulle, erreur_positive,variation_erreur_négative, variation_erreur_nulle et var
iation_erreur_positive).
Les fonctions d'appartenances sont de simples triangles ou fonctions linéaires :
Ici, on devra fixer E et ΔE des fonctions d'appartenances par essais/erreurs en fonction du système.
Enfin, pour la sortie, on choisira trois variables linguistiques représentant la variation de la commande
(variation_commande_négative, variation_commande_nulle, variation_commande_positive).
Les fonctions d’appartenances sont représentées ci-dessous :
De même que pour les functions d'appartenances des variables linguistiques d'entrée, ΔU sera à
déterminer expérimentalement.
3
TP de Module : Intelligence Artificielle
Enfin, dernier cas. La réponse est égal à la consigne, mais elle tend à diminuer. Pour contrer
cela, il faut augmenter la commande. La variation de la commande sera positive.
Voilà. On a donc nos neuf règles prêtes à être utilisés !
SI erreur positive ET variation_errreur nulle ALORS variation_commande positive
4
TP de Module : Intelligence Artificielle
Parté Pratique
- But de Tp:
L’objectif de ce TP est de synthétiser à logique floue en utilisant le Toolbox fuzzy logique de
Matlab. Ce TP perment, en outre, de se familiariser avec les importantes possibilités de
simulation des systèmes dynamiques qu’offre ce logiciel.
On suppose que le système est linéaire et ayant une fonction de transfert M(s)=1Js+fr).
C’est un système de contrôle la vitesse de rotation d’un moteur électrique. La vitesse désirée est
de 10. On modélise le système avec SIMULINK.
Pour la régulaton d’un systéme pareil, on propose deux solutions:
1ercas : Régulation PI
On introduit le système dans une boucle de régulation avec correction proportionnel intégrale
dérivée PI, et ce avec les paramètres du système simulé:
Gain -k-= 1, gain1 -k-= 50 Lower saturation limite =5
5
TP de Module : Intelligence Artificielle
6
TP de Module : Intelligence Artificielle
7
TP de Module : Intelligence Artificielle
Après avoir définit les fonctions d'appartenance, on va implémenter les règles d'inférences, de telle
façon à réaliser un cahier des charges, par exemple si le système devient chaux le régulateur va
automatiquement abaisser la vitesse pour garder la consigne voulus cela va être traduit par la commande
suivante :
*Editeur de bases de règles :
A partir des 9 ensembles flous associés à la variation de la commande, la matrice d’inférence est
donnée comme suit :
8
TP de Module : Intelligence Artificielle
*Visualiseur de règles :
3.C'est une réponse qui atteint la consigne. En effet en variant les plages d'inférences on a augmenté
l'efficace du régulateur autour de cette consigne. On pourrait également modifier les règles
d'inférences ou les formes des fonctions d'appartenances utilisées, mais ceci suppose une maîtrise du
système à régule.
9
TP de Module : Intelligence Artificielle
Figeur 01: Schéma bloc d'un system de régulation de Vitesse à deux entrée
10
TP de Module : Intelligence Artificielle
. Nigatif Moyenne
· Egal Zéro
. Positif Moyenne
· Positife Grand.
11
TP de Module : Intelligence Artificielle
Figure 05 : fonction d'appartenance de l'erreur Figure 06: fonction d'appartenance de la dérivée de l'erreur
12
TP de Module : Intelligence Artificielle
Apres avoir compléter le paramétrage des blocs d'entrées et de sortie, on procède par
l'élaboration des règles logique qui répond au cahier des charges, et on les implémente dans le
bloc inférence
*Editeur de bases de règles :
25 ensembles flous associés à la variation de la commande, la matrice d’inférence est donnée comme
suit :
13
TP de Module : Intelligence Artificielle
*Visualiseur de règles :
14
TP de Module : Intelligence Artificielle
-Conclusion :
Les outils fournis par la logique floue permettent une modélisation des phénomènes pouvant en
un certain sens s'approcher du raisonnement humain. Le fait de dépasser le tout ou rien des
ordinateurs introduit une souplesse faisant la puissance des outils flous dans de nombreux
domaines.
Mais même s'ils bénéficièrent d'un effet de mode, les algorithmes flous ne sont pas
nécessairement les meilleurs.
Plus le système est complexe, plus les règles qui le régissent sont nombreuses et compliquées.
Il s'agit là d'un obstacle majeur au contrôle en temps réel.
Elle apporte des solutions à des problèmes compliqués ou difficilement modélisables et elle n'a
pas des méthodes générales de synthèses, alors il est nécessaire de varier à l'entrée et faire des
tests jusqu'à atteindre la consigne.
15