Cette page vous affiche les différences entre la révision choisie et la version actuelle de la page.
robotics:logique_floue [2014/12/01 15:42] ldo [Valeurs et fonctions d'appartenance] |
robotics:logique_floue [2014/12/01 16:07] (Version actuelle) ldo [Moteur d'inférence] |
||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
==== Logique classique (Boole) ==== | ==== Logique classique (Boole) ==== | ||
==== Logique floue ==== | ==== Logique floue ==== | ||
+ | La logique floue s'utilise dans de nombreux domaines et particulièrement dans les cas où une modélisation mathématique du système ou du procédé est difficile. | ||
===== Définitions ===== | ===== Définitions ===== | ||
==== Variables linguistiques ==== | ==== Variables linguistiques ==== | ||
Une variable linguistique V est un terme utilisé lors de la description d’une situation ou d'un procédé tel que la température, la vitesse, l'age ... | Une variable linguistique V est un terme utilisé lors de la description d’une situation ou d'un procédé tel que la température, la vitesse, l'age ... | ||
- | Ces variables sont définies sur une plage des valeurs X (de -20 à 50°C, de 5 à 100 km/h, de 0 à 100 ans). | + | Ces variables sont définies sur une plage de valeurs X (de -20 à 50°C, de 5 à 100 km/h, de 0 à 100 ans). |
==== Valeurs linguistiques ==== | ==== Valeurs linguistiques ==== | ||
Ligne 31: | Ligne 31: | ||
===== Système flou ===== | ===== Système flou ===== | ||
- | Un système flou est composé de 3 étapes. | + | Un système flou est composé de 4 étapes. |
+ | |||
+ | ==== Définition des entrées et sorties ==== | ||
+ | La première étape est de définir pour le processus : | ||
+ | * les variables linguistiques d'entrée (température, vitesse...) | ||
+ | * les valeurs linguistiques d'entrée (chaud, froid, rapide, petit, grand...) et leurs fonctions d'inférences | ||
+ | * les variables linguistiques de sortie (tension, courant, position...) | ||
+ | * les valeurs linguistiques de sortie (grand, petit, ouvert, fermé...) | ||
+ | * les règles linguistiques | ||
==== Fuzzification ==== | ==== Fuzzification ==== | ||
- | La première opération consiste à « traduire » une entrée classique (mesure provenant d'un capteur) en valeur linguistique. | + | La deuxième étape consiste à « traduire » une entrée classique (mesure provenant d'un capteur) en valeur linguistique. |
On associe à chaque valeur son degré d'appartenance grâce aux fonctions d'appartenance correspondantes. | On associe à chaque valeur son degré d'appartenance grâce aux fonctions d'appartenance correspondantes. | ||
Par exemple, T° = 20° → froid = 5 %, tiède = 95 %, chaud = 0 % | Par exemple, T° = 20° → froid = 5 %, tiède = 95 %, chaud = 0 % | ||
==== Moteur d'inférence ==== | ==== Moteur d'inférence ==== | ||
- | La deuxième opération établit la relation entre les entrées et les sorties. On applique toutes les règles linguistiques pour obtenir les valeurs de sortie. | + | La troisième étape établit la relation entre les entrées et les sorties. On applique toutes les règles linguistiques pour obtenir les valeurs de sortie. |
=== Exemple === | === Exemple === | ||
Ligne 70: | Ligne 78: | ||
==== Défuzzification ==== | ==== Défuzzification ==== | ||
- | En sortie du moteur d'inférence, nous avons les valeurs linguistiques des variables de sortie. L'opération de défuzzification va permettre de "traduire" ces valeurs floues en valeurs nettes exploitables pour le système (tension, courant...). cette opération de l'inverse de l'opération de fuzzification. | + | En sortie du moteur d'inférence, nous avons les valeurs linguistiques des variables de sortie. L'opération de défuzzification va permettre de "traduire" ces valeurs floues en valeurs nettes exploitables pour le système (tension, courant...). Cette opération est l'inverse de l'opération de fuzzification. |
=== Méthodes de défuzzification === | === Méthodes de défuzzification === |