0% ont trouvé ce document utile (0 vote)
19 vues140 pages

Lecture Notes IA

Cour de intelligence artificielle

Transféré par

ilhamrahli3
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
19 vues140 pages

Lecture Notes IA

Cour de intelligence artificielle

Transféré par

ilhamrahli3
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Unité au Choix :

Commande
Intelligente

Pour M2 AII
Présenté par Mr Y.HIMOUR

Y.HIMOUR
• L'intelligence désigne communément le potentiel des capacités
mentales et cognitives d'un individu, animal ou humain, lui
permettant de résoudre un problème ou de s'adapter à son
environnement. Elle se résume souvent au cerveau.
Futura-science.com
• L'intelligence est l'ensemble des processus de pensée d'un être vivant
qui lui permettent de comprendre, d'apprendre ou de s'adapter à des
situations nouvelles.
Wikipedia.org

Y.HIMOUR
Plan du cours
• Généralités sur l’intelligence artificielle et le soft computing.
• La logique floue.
• Les réseaux de neurones.

Y.HIMOUR
Y.HIMOUR
1. Introduction
Le but de l’intelligence artificielle est de concevoir des systèmes
capables de reproduire le comportement humain dans ses activités de
raisonnement.
L’IA se fixe comme but, donc, la modélisation de l’intelligence prise
come phénomène (de même que la physique, la chimie ou la biologie
qui ont pour but de modéliser d’autres phénomènes).

Y.HIMOUR
En effet, il n’existe pas de consensus sur la définition de l’intelligence
artificielle, peut être car il n’y en a même pas pour le terme intelligence
qui reste jusqu’à présent une quantité abstraite et non mesurable. On
cite ici quelques-unes (ou tentatives de définition) qu’on peut trouver
dans la littérature de ce domaine :

Y.HIMOUR
• “L’étude des facultés mentales à l’aide des modèles de type
calculatoires” (Charniak et McDermott, 1985)
• “Discipline étudiant la possibilité de faire exécuter par l’ordinateur des
tâches pour lesquelles l’homme est aujourd’hui meilleur que la
machine” (Rich et Knight, 1990)
• “L’automatisation des activités associées au raisonnement humain,
telles que la d´décision, la résolution de problèmes, l’apprentissage,
...” (Bellman, 1978)
• “L’étude des mécanismes permettant à un agent de percevoir,
raisonner, et agir” (Winston, 1992)

Y.HIMOUR
Y.HIMOUR
2. Une courte histoire de l’IA *
• Gestation de l’IA (1943-1955)

Pendant cette période furent menés les premiers travaux qui peuvent
être considérés comme les débuts de l’intelligence artificielle (même si
le terme n’existait pas encore). On peut citer les travaux de McCulloch
et Pitts qui ont introduit en 1943 un modèle de neurones artificiels. Ce
fut aussi durant cette période que Turing publia son fameux article
dans lequel introduit le test de Turing.

(* Cette partie est extraite par Meghyn Bienvenu du livre Artificial Intelligence : A Modern Approach , de Stuart Russell et Peter Norvig.)
Y.HIMOUR
• Naissance d’IA (1956)
C’est durant cette année qu’un petit groupe d’informaticiens intéressés
par l’étude de l’intelligence se réunirent pour une conférence sur ce
thème. Cette conférence dura deux mois ( !), et permit de poser les
fondements de l’intelligence artificielle (nom qui fut choisi a l’issue de
cette conférence).

Y.HIMOUR
• Espoirs grandissants (1952-1969)
Ce fut une période très active pour le jeune domaine de l’IA. Un grand
nombre de programmes furent développés pour résoudre des
problèmes d’une grande diversité : Logic Theorist, Geometry Theorem
Prover, General Problem Solver, ANALOGY …etc

Y.HIMOUR
• Premières déceptions (1966-1973)
Il devint durant ces années de plus en plus évidentes que les
prédictions faites par les chercheurs en lA avaient été beaucoup trop
optimistes. Ce fut le cas par exemple pour la traduction automatique.
De grandes déceptions se produisirent également lorsque les
chercheurs en IA essayèrent d’appliquer leurs algorithmes aux
problèmes de grande taille, et découvrirent alors qu’ils ne
fonctionnaient pas, par manque de mémoire et de puissance de calcul.

Y.HIMOUR
• Systèmes Experts (1969-1979)
Le premier système expert, appelé DENDRAL, fut créé en 1969 pour la
tâche spécialisée consistant à d´déterminer la structure moléculaire
d’une molécule étant donnés sa formule et les résultats de sa
spectrométrie de masse.

Y.HIMOUR
• L’IA dans l’Industrie (1980-présent)
Au début des années 80, l’Enterprise DEC commença à utiliser un
système expert d’aide à la configuration de systèmes informatiques, ce
qui leur permit d’´économiser des dizaines de millions de dollars
chaque année. Beaucoup de grandes entreprises commencèrent alors à
s’intéresser à l’IA et à former leur propres équipes de recherche. Les
Etats-Unis et le Japon financèrent de gros projets en IA, et la Grande
Bretagne relança son programme de financement.

Y.HIMOUR
• Le retour des réseaux de neurones (1986-présent)
Au milieu des années 80, quatre groupes de chercheurs ont découvert
indépendamment la règle d’apprentissage “back-propagation” qui
permit le développement des réseaux de neurones capables
d’apprendre des fonctions très complexes, depuis, l’apprentissage
automatique est devenu l’un des domaines les plus actifs de l’IA, et a
été appliqué avec succès à de nombreux problèmes pratiques (comme
par exemple la fouille de données « data mining en anglais »).

Y.HIMOUR
• L’IA Moderne (1987-présent )
L’intelligence artificielle est devenue au fil du temps une matière
scientifique de plus en plus rigoureuse et formelle. La plupart des
approches ´étudiées aujourd’hui sont basées sur des théories
mathématiques ou des études expérimentales plutôt que sur
l’intuition, et sont appliquées plus souvent aux problèmes issus du
monde réel.

Y.HIMOUR
• Big data (2001-présent )
Les progrès remarquables de la puissance de calcul et la création du
World Wide Web ont facilité la création de très grands ensembles de
données, un phénomène parfois appelé « big data ». Ces ensembles de
données comprennent des milliards de mots de texte, des milliards
d'images et des milliards de heures de parole et de vidéo, ainsi que de
grandes quantités de données génomiques, de données de suivi de
véhicules, données de flux de clics, données de réseaux sociaux, etc.
Tout cela a conduit au développement d'algorithmes d'apprentissage
spécialement conçus pour tirer profit de très grands ensembles de
données.

Y.HIMOUR
• Deep learning (2011-présent )

Le terme deep learning fait référence à l'apprentissage automatique


utilisant plusieurs couches d'éléments informatiques simples et
ajustables. Ce n'est qu'en 2011 que les méthodes du deep learning ont
vraiment pris leur envol. Cela s'est produit d'abord dans la
reconnaissance vocale, puis dans la reconnaissance visuelle d'objets.

Y.HIMOUR
3. Le Soft Computing
Qu’est ce que le Soft
Computing ?
Le terme « soft
computing » a été proposé
par l’inventeur de la
logique floue Prof Lutfi
A.Zadeh qui le décrit
comme suit (Zadeh1994) :

)2017-1921( ‫لطفي علي عسكر زاده‬


Y.HIMOUR
“Soft computing is a collection of methodologies that aim to exploit the
tolerance for imprecision and uncertainty to achieve tractability,
robustness, and low solution cost. Its principal constituents are fuzzy
logic, neurocomputing, and probabilistic reasoning. Soft computing is
likely to play an increasingly important role in many application areas,
including software engineering. The role model for soft computing is
the human mind.”

Prof Lutfi A.Zadeh

Y.HIMOUR
selon le professeur Zadeh, le soft computing est une approche
émergente de l'informatique, qui est parallèle à la capacité
remarquable de l'esprit humain à raisonner et à apprendre dans un
environnement d'incertitude et d'imprécision.

Y.HIMOUR
En général, il s'agit d'une collection d'outils et de techniques
informatiques, partagée par des disciplines étroitement liées qui
incluent la logique floue, les réseaux neuronaux artificiels, les
algorithmes génétiques et certains aspects de l'apprentissage par
machine comme la programmation logique inductive. Ces outils sont
utilisés indépendamment et conjointement selon le type de domaine
d'applications.

Y.HIMOUR
Pour comparer entre le calcul classique et le soft computing (calcul souple), le tableau
suivant peut être utile (mais non exhaustif) :
Calcul classique Soft Computing
▪ A besoin d’un programme préalable → Peut apprendre son propre
programme (réseaux de neurones)
▪ Utilise une logique bivalente → Utilise une logique polyvalente
(Logique floue)
▪ Déterministe → Incorpore des éléments aléatoires
(Algorithmes génétiques)
▪ Traite les données exactes → Traite les donnée ambiguës
(Logique floue et réseaux de
neurones)
▪ Calcul séquentiel → Calcul parallèle (a,g et r,n)
▪ Des réponses précises → Des réponses approximatives
Y.HIMOUR
Domaines d’applications du soft computing

• Médecine : aide au diagnostic, …


• Télécoms : compression, routage, sécurité, …
• Industrie : supervision, Commande des systèmes, contrôle qualité, …
• Finance : prédiction, …
• Commerce : exploration de données, …
• Bio-informatique : analyse de séquences d’ADN,
• Biométrie : authentification par analyse d’iris, d’empreintes digitales, de
visages
• Reconnaissance de formes : parole, écriture, images, …
• Internet : classification et recherche d’informations
Y.HIMOUR
Y.HIMOUR
1. Intoduction
• La théorie de la logique floue a été introduite par Prof Lutfi Zadeh en
1965, pour étudier les systèmes qu’on ne peut pas décrire avec
précision. Elle est basée sur une approche qualitative plutôt que
quantitative.
• Globalement l’ambition de cette théorie et de calculer avec les mots
(Computing with words) plutôt que de calculer avec les nombres.
Cette théorie introduit alors la notion de variable linguistique qui
prend des valeurs linguistiques. Une valeur linguistique par exemple
« Petit », « Grand » ne sont pas précises, elles sont vaques (floues).

Y.HIMOUR
Un système flou (Modèle, Contrôleur …) est généralement composé de
règles floue du type :
• Si ( Condition1 sur variable linguistique 1 ) et si (Condition2 sur
variable linguistique 2) …………… alors conséquence
Exemple :
Si la température est élevée et Si l’humidité est élevée alors
l’environnement et malsain.

Y.HIMOUR
2. Ensemble floue
• Théorie Classique des ensembles 𝑈

• Soit 𝑈: l’univers du discours.


𝐴: un sous-ensemble de 𝑈.
On définit 𝜇𝐴 la fonction d’appartenance de l’ensemble 𝐴 comme suit :
∀𝑥 ∈𝑈 𝜇𝐴 𝑥 = 0 𝑠𝑖 𝑥 ∉ 𝐴 (𝑠𝑖 𝑥 𝑛′ 𝑒𝑠𝑡 𝑝𝑎𝑠 𝑛𝑜𝑖𝑟)
𝜇𝐴 𝑥 = 1 𝑠𝑖 𝑥 ∈ 𝐴 (𝑠𝑖 𝑥 𝑒𝑠𝑡 𝑛𝑜𝑖𝑟)
Y.HIMOUR
• Concept d’ensemble flou

• Si 𝜇𝐴 est la fonction d’appartenance de l’ensemble flou 𝐴, alors :


∀𝑥 ∈𝑈 𝜇𝐴 𝑥 ∈ [0; 1]
Si par exemple 𝜇𝐴 = 0.3, donc 𝑥 appartient à l’ensemble flou 𝐴 avec
un degré d’appartenance de 30% (valeur de vérité).
L’ensemble 𝐴 est alors totalement déterminé par sa fonction
d’appartenance.

Y.HIMOUR
• Dans cet exemple: L’image c’est l’univers de discours, la nuance de
gris est la variable linguistique, « Noir » « Gris » et « Blanc » sont les
valeurs linguistiques.

• Les ensembles floues sont les valeurs linguistiques déterminées par


des fonctions d’appartenance.

Y.HIMOUR
3.Les opérations sur les ensembles floues
Pour illustrer les différentes opérations sur les ensembles floues, on
prend l’exemple de l’univers de discours 𝑈 des tailles des personnes
[1.5,1.9](unité en mètre). On considère trois sous-ensemble floues de
taille Petite, Moyenne et Grande :
On met:
• 𝐴 est l’ensemble floue des
personnes de petite taille,
• 𝐵 est l’ensemble floue des
personnes de moyenne taille,

Y.HIMOUR
3.1 La réunion
• L’ensemble des personnes petites OU moyenne est un ensemble flou
de fonction d’appartenance :
𝜇𝐴∪𝐵 𝑥 = max 𝜇𝐴 𝑥 , 𝜇𝐵 𝑥 ∀𝑥 ∈ 𝑈

Y.HIMOUR
3.2 L’intersection
• L’ensemble des personnes petites ET moyennes est un ensemble flou
de fonction d’appartenance :
𝜇𝐴∩𝐵 𝑥 = min 𝜇𝐴 𝑥 , 𝜇𝐵 𝑥 ∀𝑥 ∈ 𝑈

Y.HIMOUR
3.3 Le complément
• L’ensemble des personnes NON petite est un ensemble flous de
fonction d’appartenance qui égale à (1 − 𝜇𝐴 (𝑥))

Y.HIMOUR
4.Modèle Flou
• Un modèle flou est une description des relations E/S d’un système à l’aide des
règles (phrases) qui ont souvent la forme :
• 𝐼𝑓 (𝐶𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 1) 𝑎𝑛𝑑 (𝐶𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛2) 𝑜𝑟 (𝐶𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛𝑠 3) … . . 𝑇ℎ𝑒𝑛 𝑐𝑜𝑛𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒
𝐴𝑛𝑡𝑒𝑐é𝑑𝑎𝑛𝑡 (𝑃𝑟é𝑚𝑖𝑠𝑠𝑒) 𝐶𝑜𝑛𝑠é𝑞𝑢𝑒𝑛𝑐𝑒
• Plus précisément un modèle flou est un ensemble de règles qu’on peut exprimer
comme étant une union de règles. Supposons qu’un modèle flou a 𝑛 règles
floues, 𝑅1 , 𝑅2 , 𝑅3 … 𝑅𝑛
• 𝑀𝑜𝑑è𝑙𝑒 𝑓𝑙𝑜𝑢 = 𝑢𝑛𝑖𝑜𝑛 𝑅1 , 𝑅2 , 𝑅3 … 𝑅𝑛
= 𝑅1 ∪ 𝑅2 ∪ 𝑅3 … 𝑅𝑛

Y.HIMOUR
• Un modèle flou remplace un modèle “classique” basé sur des
équations différentielles linéaires ou non linéaires et / ou algébriques
lorsque ce dernier n’est pas facile à obtenir, c’est un système à
inférence flou (Fuzzy inference system). On peut distinguer deux
formes de modèle flou.
• Entrées floues – Sorties floues
• Les entrées sont des variables linguistiques et aussi les sorties, il est
composé de plusieurs regles du type :
𝐼𝑓 𝑋1 𝑖𝑠 𝑠𝑚𝑎𝑙𝑙 𝑎𝑛𝑑 𝑋2 𝑖𝑠 𝐵𝑖𝑔 𝑎𝑛𝑑 𝑋3 𝑖𝑠 𝑠𝑚𝑎𝑙𝑙 … 𝑇ℎ𝑒𝑛 (𝑌 𝑖𝑠 𝑠𝑚𝑎𝑙𝑙)

Y.HIMOUR
• Entrée Numériques – Sorties Numériques
• Le modèle est toujours composé de règles floues sous forme de
relations entre variable floues. Les variables numériques de l’entrée
doivent être transformées en variables floues, c’est l’opération de
fuzzification. Et les variables floues de la sortie doivent être
transformées en variables numérique par la Défuzzification.
Deux types de modèles de cette catégorie sont les plus utilisés :

Y.HIMOUR
Le modèle flou de MAMDANI : Les règles sont du type :
• 𝐼𝑓 𝑋1 𝑖𝑠 𝑠𝑚𝑎𝑙𝑙 𝑎𝑛𝑑 𝑋2 𝑖𝑠 𝐵𝑖𝑔 𝑎𝑛𝑑 𝑋3 𝑖𝑠 𝑠𝑚𝑎𝑙𝑙 … 𝑇ℎ𝑒𝑛 (𝑌 𝑖𝑠 𝑠𝑚𝑎𝑙𝑙)
• (Les conditions et la conséquence sont exprimées par les variables
linguistiques)

Le modèle de Takagi-Sugeno : Les règle sont du type :


• 𝐼𝑓 𝑋1 𝑖𝑠 𝑠𝑚𝑎𝑙𝑙 𝑎𝑛𝑑 𝑋2 𝑖𝑠 𝐵𝑖𝑔 𝑎𝑛𝑑 𝑋3 𝑖𝑠 𝑠𝑚𝑎𝑙𝑙 … 𝑇ℎ𝑒𝑛 𝑦1
= 𝑓(𝑥1 , 𝑥2 , … )
• La conséquence d’une règle est numérique 𝑦1 ∈ ℝ, 𝑥1 , 𝑥2 . . ∈ ℝ,

Y.HIMOUR
III Système d’inférence flou pour la modélisation et
la commande des systèmes
III.1 Introduction
• Un système d’inférence flou ou plus simplement système flou est un
modèle flou par exemple du type Mamdani ou Takagi Sugeno.
• Les systèmes flous sont utilisés pour la modélisation et la commande
des systèmes qui ne peuvent pas être modélisés ou commandé par
les méthodes « mathématiques classiques ». Généralement pour la
modélisation des systèmes on préfère le modèle de Takagi-Sugéno.
• Un contrôleur à logique flou est un système d’inférence flou utilisé
pour la commande en boucle fermé.

Y.HIMOUR
III.2 Structure générale d’un système
d’inférence floue
Un système d’inférence flou avec Entrées/Sorties numériques
peut être décrit par le schéma suivant :

Défuzzification
Numérique
Fuzzification
Base de données
𝑥1 Numérique
y
Numérique
Logique de décision
𝑥2

Y.HIMOUR
III.2 Structure générale d’un système
d’inférence floue
1- La base de données
Contient les éléments constitutifs essentiels
• Les variables linguistiques : Le nombre des variables linguistiques des
entrées/sorties est égale au nombre de variables numériques
entrees/sorties
Si 𝑋1 est variable linguistique :
𝑋1 = {𝑥1 , 𝐴1 , 𝐴2 , … 𝐴𝑛 , 𝒰 , 𝑓𝑜𝑛𝑐𝑡𝑖𝑜𝑛 𝑑 ′ 𝑎𝑝𝑝𝑎𝑟𝑡𝑒𝑛𝑎𝑛𝑐𝑒}

Y.HIMOUR
III.2 Structure générale d’un système
d’inférence floue

Y.HIMOUR
III.2 Structure générale d’un système
d’inférence floue
2- La base des règles
• La base de règles donne l’ensembles des règles du système
d’inférence flou. Dans le cas du modèle Mamdani par exemple :
• 𝐼𝑓 𝑋1 𝑖𝑠 𝐴𝑖 𝑎𝑛𝑑 𝑋2 𝑖𝑠 𝐵𝑖 𝑡ℎ𝑒𝑛 (𝑌 𝑖𝑠 𝐶𝑘 )

𝑋2 /𝑋1 𝐴1 𝐴2 𝐴3
𝐵1 𝐶1 𝐶2 𝐶3
𝐵2 𝐶1 𝐶2 𝐶3
𝐵3 𝐶5 𝐶3 𝐶4
Y.HIMOUR
III.2 Structure générale d’un système
d’inférence floue
3- La fuzzification
• Permet de déterminer pour chaque valeur numérique son degré
d’appartenance aux différents ensembles flous (Valeurs linguistiques)

𝑥1 Numérique

Y.HIMOUR
III.2 Structure générale d’un système
d’inférence floue
4- La défuzzification
• La défuzzification permet de déterminer la valeur numérique de la
sortie à partir des données floues. La méthode de défuzzification la
plus utilisée est la règle du centre de gravité : 𝜇𝑝𝑒𝑡𝑖𝑡 (𝑦)

Défuzzification
σ𝑛
𝑖=1 𝜇𝐶𝑖 𝑦 ×𝑚𝑐𝑖 𝑦?
•𝑦= σ𝑛 𝜇𝑚𝑜𝑦𝑒𝑛 (𝑦)
𝑖=1 𝜇𝑐 𝑦
𝑖
𝜇𝑔𝑟𝑎𝑛𝑑 (𝑦)
• 𝐶𝑖 𝑖 = 1, 2, … . 𝑛 Valeurs linguistiques de 𝑦
• 𝑚𝑐𝑖 Support de l’ensemble flou 𝑐𝑖 , c'est-à-dire 𝜇𝑐𝑖 𝑚𝑐𝑖 = 1.

Y.HIMOUR
III.2 Structure générale d’un système
d’inférence floue
5-La logique de décision
• La logique de décision définie par le mécanisme d’inférence qui
permet d’interpréter une règle (une implication) et l’ensemble des
règles (agrégation) :
• Une règle s’écrit : 𝐼𝑓 𝑋1 𝑖𝑠 𝐴1 𝑎𝑛𝑑 𝑋2 𝑖𝑠 𝐵2 𝑡ℎ𝑒𝑛 (𝑌 𝑖𝑠 𝐶2 )
• Cette regèle est interprétée par un « and » flou et d’une façon
générale par une fonction de 0,1 → 0,1 , les fonctions les plus
utilisées sont le minimum et le produit, le résultat d’une règle noté
𝜇𝑅𝑖 est alors donnée par : 𝜇𝑅𝑖 = min 𝜇𝐴𝑖 𝑥1 , 𝜇𝐵𝑖 𝑥2 ou
𝜇𝑅𝑖 = 𝜇𝐴𝑖 𝑥1 × 𝜇𝐵𝑖 (𝑥2 )
Y.HIMOUR
III.2 Structure générale d’un système
d’inférence floue
• Une base de règles est constituer de plusieurs règles, Le résultat
d’action de l’ensemble des règles est calculé par une fonction 0,1
→ 0,1 , qui détermine les degrés d’appartenance
𝜇𝑐1 , 𝑦 , 𝜇𝑐2 𝑦 , 𝜇𝑐3 (𝑦) … . La fonction la plus utilisées est le
maximum, on a alors :
• 𝜇𝑐𝑖 𝑦 = max{𝜇𝑅𝑗 |𝑅𝑗 𝑎 𝑝𝑜𝑢𝑟 𝑐𝑜𝑛𝑠é𝑞𝑢𝑒𝑛𝑐𝑒 𝐶𝑖 }

Y.HIMOUR
Exemple d’un système d’inférence floue
1- Base de données :
𝑋1 = {𝑥1 , 𝑁é𝑔𝑎𝑡𝑖𝑣𝑒, 𝑍é𝑟𝑜, 𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒, , (−5, +5)}
• 𝐸𝑛𝑡𝑟é𝑒𝑠 ቊ
𝑋2 = {𝑥2 , 𝑁é𝑔𝑎𝑡𝑖𝑣𝑒, 𝑍é𝑟𝑜, 𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒, , (−4, +4)}
• 𝑆𝑜𝑟𝑡𝑖𝑒 𝑌 = {𝑦, 𝑁é𝑔𝑎𝑡𝑖𝑣𝑒, 𝑍𝑒𝑟𝑜, 𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒 , (−20, +20)}

Y.HIMOUR
-5 0 +5 -4 0 +4
Fonctions d’appartenance de la variable 𝑋1 Fonctions d’appartenance de la variable 𝑋2

-20
Fonctions 0
d’appartenance +20
de la variable 𝑋1

Y.HIMOUR
2-La base des règles
𝑆𝑖 (𝑋1 𝑒𝑠𝑡 𝑁) 𝑒𝑡 𝑋2 𝑒𝑠𝑡 𝑁 𝑎𝑙𝑜𝑟𝑠 𝑌 𝑒𝑠𝑡 𝑁
𝑆𝑖 (𝑋1 𝑒𝑠𝑡 𝑁) 𝑒𝑡 𝑋2 𝑒𝑠𝑡 𝑍 𝑎𝑙𝑜𝑟𝑠 𝑌 𝑒𝑠𝑡 𝑁
…………..
𝑋2 /𝑋1 𝑁 𝑍 𝑃

𝑁 𝑅1 = 𝑵 𝑅4 = 𝑵 𝑅7 = 𝒁

𝑍 𝑅2 = 𝑵 𝑅5 = 𝒁 𝑅8 = 𝑷

𝑃 𝑅3 = 𝒁 𝑅6 = 𝑷 𝑅9 = 𝑷
Y.HIMOUR
3- La logique de décision
• 𝑀𝑖𝑛 𝜇𝑖 (Pour les implications)
• 𝑀𝑎𝑥 (𝜇𝑛 𝑦 , 𝜇𝑧 𝑦 , 𝜇𝑝 𝑦 (pour l’agrégation)

Y.HIMOUR
𝜇𝑅1 = min 𝜇𝑁 (𝑥1 ), 𝜇𝑁 (𝑥2 )

𝜇𝑅2 = min 𝜇𝑁 (𝑥1 ), 𝜇𝑍 (𝑥2 )

𝜇𝑅3 = min 𝜇𝑁 (𝑥1 ), 𝜇𝑃 (𝑥2 )

𝜇𝑅4 = min 𝜇𝑍 (𝑥1 ), 𝜇𝑁 (𝑥2 ) 𝜇𝑁 (𝑦) = max⁡


(𝜇𝑅1 , 𝜇𝑅2 , 𝜇𝑅4 )

𝜇𝑍 (𝑦) = max⁡
(𝜇𝑅3 , 𝜇𝑅5 , 𝜇𝑅7 )
𝜇𝑅5 = min 𝜇𝑍 (𝑥1 ), 𝜇𝑍 (𝑥2 )
𝜇𝑃 (𝑦) = max⁡
(𝜇𝑅6 , 𝜇𝑅8 , 𝜇𝑅9 )
𝜇𝑅6 = min 𝜇𝑍 (𝑥1 ), 𝜇𝑃 (𝑥2 )

𝜇𝑅7 = min 𝜇𝑃 (𝑥1 ), 𝜇𝑁 (𝑥2 )

𝜇𝑅8 = min 𝜇𝑃 (𝑥1 ), 𝜇𝑍 (𝑥2 )

𝜇𝑅9 = min 𝜇𝑃 (𝑥1 ), 𝜇𝑃 (𝑥2 )

Y.HIMOUR
𝑥1 = +12
• 𝑠𝑖 ቊ calculer 𝑌 ?
𝑥2 = +5
• Solution de l’exemple
• 𝜇𝑁 𝑥1 = 0, 𝜇𝑍 𝑥1 = 0, 𝜇𝑃 𝑥1 = 1 ; 𝜇𝑁 𝑥2 = 0, 𝜇𝑍 𝑥2 =
0, 𝜇𝑃 𝑥2 = 1
• Pour les 𝑅𝑖 : 𝜇𝑅9 = 1 toutes les autres =0.
• 𝜇𝑝 𝑦 = 1 ; 𝜇𝑍 𝑦 = 0; 𝜇𝑁 𝑦 = 0
• Ce qui donne 𝑌 = 20 (Par substitution dans l’expression de Y)

Y.HIMOUR
Remarque:
• La logique de décision que nous venons de voir est appliquée au
modèle de Mamdani. Pour le modèle de Takagi-sugeno elle est un
peu différente, Les règle du modèle TS s’écrivent:
𝑅𝑖 ∶ 𝐼𝑓 𝑋1 𝑖𝑠 𝐴1 𝑎𝑛𝑑 𝑋2 𝑖𝑠 𝐵1 … … 𝑇ℎ𝑒𝑛 𝑦𝑖 = 𝑓(𝑥1 , 𝑥2 )
𝑋1 , 𝑋2 variables linguistiques
𝐴1 , 𝐵1 : 𝐸𝑛𝑠𝑒𝑚𝑏𝑙𝑒𝑠 𝑓𝑙𝑜𝑢𝑠 𝑒𝑡 𝑥1 , 𝑥2 𝑒𝑡 𝑦𝑖 ∈ ℝ
• L’interprétation de la règle 𝑅𝑖 est réalisée de la même façon que pour
le modèle de Mamdani,i.e : 𝜇𝑅𝑖 = 𝜇𝐴𝑖 𝑥𝑖 ⋀𝜇𝐵𝑖 𝑥2 … … ., ⋀: produit
ou minimum. La sortie 𝑌 est obtenue par la formule :
σ𝑟𝑖=1 𝜇𝑅𝑖 × 𝑦𝑖
𝑌=
σ𝑟𝑖=1 𝜇𝑅𝑖
Y.HIMOUR
Exemple de conception de contrôleur flou
La commande du niveau se fait par
manipulation du débit
d’alimentation à travers l’ouverture
est la fermeture de la vanne, le débit
de sorti (To Boiler) est incontrôlable
donc pris comme perturbation. Le
débit de sortie dépend du diamètre
du tuyau de sortie, qui est constant,
et de la pression dans le réservoir,
qui varie en fonction du niveau
d'eau. Par conséquent, le système a
des caractéristiques non linéaires
Y.HIMOUR
• Commençons alors la conception de notre contrôleur flou par le choix
des variables linguistiques, les valeurs linguistiques et de leurs
fonctions d’appartenance, on a choisit pour deux entrées:
• Entrée 1 :
L’erreur entre la valeur réelle du niveau et la consigne (𝑦𝑐 − 𝑦). Nous
allons l’appeler « Level ». Ici nous avons trois scénarios, le niveau
supérieur, inferieur ou égale à la consigne, donc trois valeur linguistique
peuvent être utilisées pour exprimer ces situations (respectivement) :
High, Okay , Low.

Y.HIMOUR
• Le choix des
fonctions
d’appartenance des
trois ensembles
flous s’est porté sur
la fonction
gaussienne avec un
étendu d’univers de
-1 à +1.

Y.HIMOUR
• Entrée 2 :
La variation du niveau (Dérivée par rapport au temps) pour pouvoir
connaitre si le niveau est en train d’augmenter, de diminuer ou il est
stable, on va l’appeler « rate », et on l’attribue les valeurs linguistiques :
Positive, Négative et None, qui veulent dire, respectivement: le niveau
s’augmente, le niveau se diminue, est le niveau est constant.

Y.HIMOUR
• On a choisi encore
pour des fonctions
d’appartenance
gaussiennes pour les
trois valeurs floues,
avec un univers qui
s’étend sur l’intervalle
[-0.1, 0.1]

Y.HIMOUR
• Sortie : c’est la commande qui va être appliquée à l’actionneur (la
vanne), c’est l’état de la vanne, ou plus précisément la vitesse
d’ouverture ou de la fermeture. On a opté pour 5 vitesse : Close fast,
Close slow, No change, Open slow, Open fast.
• Le choix des fonctions d’appartenance de ces valeurs linguistiques
s’est porté sur la fonction triangulaire pour chacune.

Y.HIMOUR
• En raison du diamètre du
tuyau de sortie, le réservoir
d'eau de ce système se vide
plus lentement qu'il ne se
remplit. Pour compenser ce
déséquilibre, les fonctions
d'appartenance close_slow
et open_slow ne sont pas
symétriques. Un contrôleur
PID ne supporte pas une
telle asymétrie.

Y.HIMOUR
La logique de décision:
Le système flou a cinq règles. Les trois premières règles ajustent la
vanne uniquement en fonction de l'erreur de niveau d'eau.

• Si le niveau d'eau est correct, laisser la vanne telle qu’elle est.


• Si le niveau d'eau est bas, ouvrez la vanne rapidement.
• Si le niveau d'eau est élevé, fermez la vanne rapidement.

Y.HIMOUR
Les deux autres règles ajustent la vanne en fonction du taux de
changement du niveau d'eau lorsque le niveau d'eau est proche du
point de consigne.

• Si le niveau d'eau est correct et augmente, fermez la vanne


lentement.
• Si le niveau d'eau est correct et diminue, ouvrez lentement la vanne.

Y.HIMOUR
Les règles de notre système flou sont donc 5 :

• ‘1. If (level is okay) then (valve is no_change) '


• '2. If (level is low) then (valve is open_fast) '
• '3. If (level is high) then (valve is close_fast) '
• '4. If (level is okay) and (rate is positive) then (valve is close_slow) '
• '5. If (level is okay) and (rate is negative) then (valve is open_slow) '

Y.HIMOUR
On utilise le “produit” pour les implication, et le “max » pour
l’agrégation.
La défuzzification se fait par la méthode du centre de gravité.

Y.HIMOUR
Les Réseaux de Neurones

Y.HIMOUR
Introduction
• Les réseaux de neurones artificiels font partie du « soft computing »,
ils sont une tentative de modélisation du fonctionnement du cerveau
humain pour exploiter ses propriétés d’apprentissage et de
reconnaissance.
• Depuis les 70s, les réseaux de neurones ont été appliqués avec succès
dans plusieurs domaines en particulier l’Automatique, le traitement
du signal et l’optimisation. Ceci est dû surtout aux propriétés
d’apprentissage, d’approximation et de leur simplicité.

Y.HIMOUR
• Plusieurs types de réseaux de neurone ont été proposée, nous allons
considérer dans ce cours les modèle RDN artificiels qui sont les plus
utilisés dans l’identification, la commande et l’optimisation.
• Dans tous les cas, un neurone artificiel est un opérateur
mathématique réalisant une fonction de ses entrées, Un RdNA est un
ensemble interconnecté, les types de RdN dépendent donc de
l’opérateur et de l’interconnexion.

Y.HIMOUR
Historique
Les débuts furent avec le neurone formel de Mac. Culloch et Pitts en
1943 qui simulait de façon très simplifiée le neurone biologique.
Le neurone artificiel effectue une somme pondérée de stimuli
provenant d’autres neurones. Si la somme des excitations est
supérieure à un seuil donné alors le neurone est activé, sinon il ne
transmet aucune information (de nature booléenne).
En parallèle, le neurophysicien Hebb établit le principe d’activation des
neurones (ayant un fondement biologique) qui stipule que :Si deux
neurones sont activés simultanément, alors la valeur des poids des
connexions entre ces neurones est augmentée, sinon les connexions
restent inchangées.

Y.HIMOUR
• En 1958, Rosenblatt développa le concept du perceptron pour expliquer et
modéliser les facultés de reconnaissance des formes du système visuel.
L’idée essentielle du perceptron est de considérer la rétine de l’œil comme
une matrice de capteurs. Les capteurs de cette matrice sont reliés à des
processus élémentaires intermédiaires qui réalisent des opérations
prédéterminées. Pour reconnaître des formes visuelles particulières, les
sorties de ces processus sont ensuite injectées à des systèmes à seuil non
linéaires, binaires en vue de la classification automatique.
• Vers le début des années 60, Widrow développa des concepts similaires
pour la résolution des problèmes de filtrage adaptatif du signal en mettant
au point l’Adaline et le Madaline. Il a démontré notamment que l’Adaline
était capable de séparer linéairement des classes dans l’espace à deux
dimensions.
Y.HIMOUR
• De son côté Minsky et d’autres chercheurs ont analysé, sous l’angle
mathématique, les performances du Perceptron et le trouvant
incapable de résoudre la séparation pour l’opération logique "Ou
exclusif” et qu’en conséquence ce modèle ne présente aucun intérêt.
• De plus, ils affirment que même si les perceptrons multicouches sont
capables de résoudre le fameux problème du " Ou exclusif", il n’existe
pas un mécanisme susceptible d’apprendre les poids de connexion
afin de minimiser l’erreur entre la sortie désirée et la sortie fournie
par un Perceptron multicouches.

Y.HIMOUR
• Entre 1969 et 1978, des chercheurs, dont Hopfield, ont cependant
persévéré dans l’étude des réseaux de neurones artificiels en
introduisant la notion d’énergie d’un ensemble de neurones
interconnectés en se basant sur la physique quantique des " Verres de
spin".
• La découverte, en 1985, de l’algorithme de rétro-propagation du
gradient énoncée par (Rumelhart et al) permit de lever toutes les
limitations énoncées par Minsky et Papert d’où le regain d’intérêt
pour les réseaux de neurones. En effet, cet algorithme reste le
modèle le plus étudié et le plus productif au niveau des applications
(reconnaissance de la parole, reconnaissances de forme vision
artificielle, aide à la décision…etc).
Y.HIMOUR
Les réseaux de neurones à base du
Perceptron
• Le neurone formel (Le Perceptron)
Il réalise une fonction de ses entrées comme présenté dans la
figure suivante:

Y.HIMOUR
• La première opération est donc une somme pondérée des entrées :
𝑛

𝑍 = ෍ 𝑥𝑖 𝑤𝑖
𝑖=1
𝑤𝑖 Poids des connexions (weights).
• La deuxième opération est une fonction linéaire / non linéaire de la
somme pondérée, appelée fonction d’activation. Parfois en introduit
un biais 𝑏 dans la première opération
𝑛

𝑍 = ෍ 𝑥𝑖 𝑤𝑖 + 𝑏
𝑖=1

Y.HIMOUR
La fonction d’activation
Peut prendre plusieurs formes :
• Pas de fonction d’activation 𝑓 𝑍 = 𝑍.
• Fonction échelon
Fonction Echelon
1
• Fonction sigmoid 𝑓 𝑥 = dont la dérivée est
1−𝑒 −𝑥
𝑓′ 𝑥 = 𝑓 𝑥 1 − 𝑓 𝑥

Y.HIMOUR Fonction Sigmoïd


Le réseau de neurones perceptron
• Etant donné le neurone formel, ainsi défini, un réseau de neurones
est un ensemble de neurones interconnectés, on distingue deux type
de réseaux de neurones.
• Réseaux de neurones statique.
• Réseaux de neurones dynamique

Y.HIMOUR
Réseaux statiques
• Un réseau statique (Feed Forward)
est un réseau ou les neurones
sont connectés sans retour. Un
réseau statique (FF) est composé
de couches successives de
neurones, les neurones de la
couche 𝑗 sont relies aux neurones
de la couche 𝑗 + 1 sans retour.

Y.HIMOUR
Réseaux dynamiques
• A l’opposé des réseaux non
bouclés (statiques), les réseaux
bouclés (dynamiques) sont le
siège de contre réaction
synchrone ou asynchrone en
fonction du temps.
• Ils sont particulièrement adaptés
pour construire des réseaux de
type Hopfield ou Boltzman avec
des procédures d’apprentissage
non supervisés. Ils sont
beaucoup plus difficiles à
manipuler que les réseaux
statiques. Y.HIMOUR
L’apprentissage des réseaux de neurones
Par analogie avec le fonctionnement du cerveau humain (puisque le
réseau de neurones artificiel est un modèle du cerveau, le réseau de
neurone sera utilisé pour apprendre un comportement. C’est le point
de vue connexionniste, par ailleurs il a été démontré
mathématiquement (1989) q’un réseau de neurone (MLP sigmoid) est
un « approximateur » universel, il peut approximer à un degré de
précision désiré n’importe quelle fonction non linéaire continue. Le
degré de précision dépend du nombre de couches cachés et du nombre
de neurones.

Y.HIMOUR
𝑦𝑑 (𝑡)

𝑥(𝑡) 𝑦(𝑡)

𝑒(𝑡)

Neural Network Learning

Y.HIMOUR
• L’apprentissage consiste à agir sur les poids 𝑤 jusqu'à obtenir le
comportement désiré, plus précisément si 𝑦𝑑 (𝑡) représente le
comportement désiré, et soit 𝑦(𝑡) la sortie du réseau, l’objectif de
l’apprentissage est d’obtenir le minimum de l’erreur entre 𝑦𝑑 (𝑡) et
𝑦(𝑡) quel que soit 𝑡 = 0, 𝑇.
2
• Mathématiquement min σ𝑇𝑡=0 𝑦𝑑 𝑡 − 𝑦 𝑡 , il s’agit alors de
trouver les poids 𝑤 qui minimise cet objectif.
• Pour cela on utilise l’algorithme de la rétro-propagation (Back
Propagation). On appelle ce type d’apprentissage où on a un objectif
défini à atteindre 𝑦𝑑 (𝑡) l’apprentissage supervisé.
Y.HIMOUR
Apprentissage supervisé
• Objectif : minimiser
1 𝑇 2
𝐽 𝑤 = σ𝑡=0 𝑦𝑑 𝑡 − 𝑦 𝑡
2
• 𝑦 𝑡 sortie du réseau de
neurone qui dépend des poids
𝑤.
• 𝐽(𝑤) est une fonction non
linéaire, c’est donc un
programme non linéaire sans
contraintes.

Y.HIMOUR
Algorithme Back Propagation du gradient
Pour trouver les poids optimaux on peut utiliser l’algorithme du
gradient aux pas 𝛼 fixe.
𝑥 𝑘 + 1 = 𝑥(𝑘) − 𝛼 𝛻𝑓(𝑥(𝑘))
Associé à la règle des chainages qui donnent l’algorithme Back
Propagation.
Considérons l’exemple une couche cachée et une couche de sortie, on
doit trouver comment mettre à jour les poids 𝑤 et 𝑣 en utilisant la Back
Propagation.

Y.HIMOUR
1

Y.HIMOUR
1 2 1
min 𝑦𝑑 𝑡 − 𝑦 𝑡 = 𝑒 𝑡 2
2 2
1 2 1 2
𝑑 𝑒 𝑡 𝑑 𝑒 𝑡
2 2 𝑑𝑦 𝑡
𝑣 𝑘+1 =𝑣 𝑘 −𝛼 =𝑣 𝑘 −𝛼 ×
𝑑𝑣 𝑑𝑦 𝑡 𝑑𝑣
Nous avons
1 2 1
𝑑 𝑒 𝑡 𝑑 𝑦 𝑡 − 𝑦 (𝑡) 2
2 2 𝑑
= = 𝑦 𝑡 − 𝑦𝑑 (𝑡)
𝑑𝑦 𝑡 𝑑𝑦 𝑡
et
𝑑𝑦 𝑡 𝑑𝑦(𝑡) 𝑑𝑍′
= ×
𝑑𝑣 𝑑𝑍′ 𝑑𝑣
Donc
𝑑𝑦(𝑡) 𝑑𝑍′
𝑣 𝑘 + 1 = 𝑣 𝑘 − 𝛼(𝑦 𝑡 − 𝑦𝑑 𝑡 ) ×
𝑑𝑍′ 𝑑𝑣
Y.HIMOUR
Pour le calcule de 𝑤 :

1 2
𝑑 𝑒 𝑡
2
𝑤 𝑘+1 =𝑤 𝑘 −𝛼
𝑑𝑤

1 2
𝑑 𝑒 𝑡
2 𝑑𝑦 𝑡 𝑑𝑍 ′ 𝑑𝑍 𝑑𝑥 ′
=𝑤 𝑘 −𝛼 × ′
× × ′×
𝑑𝑦 𝑡 𝑑𝑍 𝑑𝑍 𝑑𝑥 𝑑𝑤

Y.HIMOUR
Exemple (Modélisation par RN à partir de données entrées/sorties).
On a un ensemble de données obtenu à partir d’un système réel, et on
veut construire un modèle à base de Réseaux de neurones pour étudier
et prédire le comportement du système.
On va utiliser un réseau avec une couche d’entrée et une couche
cachée, dont la fonction d’activation pour chacune est 𝑓(·).
Soit le système à 3 entrée et une sortie
On doit préparer une base de donnée pour
faire l’apprentissage du réseau (N échantillons par exemple)

Y.HIMOUR
On présente le paquet de données autant de fois que
nécessaire. On a:

- 𝑋 ′ = 𝑊𝑋, 𝑍 = 𝑓 𝑋′ , 𝑍 ′ = 𝑉𝑍 ′
, 𝑦 = 𝑓(𝑍 ′ )

• 𝑧𝑗 = 𝑓 σ𝑛𝑖=1 𝑤𝑖𝑗 𝑥𝑖
𝑥𝑗 ′
• 𝑦 = 𝑓 σ𝑚
𝑗=1 𝑣𝑗 𝑧𝑗
𝑧𝑗 ′

Y.HIMOUR
• L’objectif est de minimiser la distance entre la sortie du réseau de neurone est celle du système :
1 2 1
• min J = min 𝑦𝑑 𝑡 − 𝑦 𝑡 = 𝑒 𝑡 2
2 2
𝑉 𝑘 + 1 = 𝑉 𝑘 − 𝛼𝛻𝐽
𝑑𝐽 𝑑𝑦 𝑑𝑧 ′
𝑣𝑗 (𝑘 + 1) = 𝑣𝑗 𝑘 − 𝛼 ×
𝑑𝑦 𝑑𝑧 ′ 𝑑𝑣
• On a:
1 2 1
𝑑 𝑒 𝑡 𝑑 𝑦 𝑡 − 𝑦𝑑 (𝑡) 2
𝑑𝐽 2 2
= = = 𝑦 𝑡 − 𝑦𝑑 (𝑡)
𝑑𝑦(𝑡) 𝑑𝑦 𝑡 𝑑𝑦 𝑡
• Et
𝑑𝑦 𝑑𝑓 𝑧 ′ 𝑑𝑧 ′
= , =𝑧
𝑑𝑧 ′ 𝑑𝑧 ′ 𝑑𝑣

• Ce qui donne
𝑑𝑓(𝑧𝑗 ′)
𝑣𝑗 𝑘 + 1 = 𝑣𝑗 𝑘 − 𝛼 𝑦 𝑘 − 𝑦𝑑 𝑘 𝑧
𝑑𝑧𝑗 ′ 𝑗

Y.HIMOUR
• Calcule de 𝑤𝑖𝑗

𝑊 𝑘 + 1 = 𝑊 𝑘 − 𝛼𝛻𝐽
1 2
𝑑 𝑒 𝑡
2𝑑𝑦 𝑡 𝑑𝑍 ′ 𝑑𝑍
=𝑊 𝑘 −𝛼 × × ×
𝑑𝑦 𝑡 𝑑𝑍′ 𝑑𝑍 𝑑𝑊
𝑑𝑓 𝑧𝑗′ 𝑑𝑧𝑗′ 𝑑𝑧
𝑤𝑖𝑗 𝑘 + 1 = 𝑤𝑖𝑗 𝑘 − 𝛼 𝑦 𝑘 − 𝑦𝑑 𝑘 × × ×
𝑑𝑧𝑗′ 𝑑𝑧𝑗 𝑑𝑤𝑖𝑗
On a 𝑑𝑧𝑗 𝑑𝑧𝑗 𝑑𝑥 ′ 𝑑𝑓 𝑥 ′
= ′× = ′
𝑥𝑖
𝑑𝑤𝑖𝑗 𝑑𝑥 𝑑𝑤𝑖𝑗 𝑑𝑥
𝑑𝑧𝑗′ 𝑑 𝑧𝑖 𝑣𝑗
= = 𝑣𝑗
𝑑𝑧𝑗 𝑑𝑧𝑗
• Donc :
𝑑𝑓 𝑧𝑗′ 𝑑𝑓 𝑥 ′
𝑤𝑖𝑗 𝑘 + 1 = 𝑤𝑖𝑗 𝑘 − 𝛼 𝑦 𝑘 − 𝑦𝑑 𝑘 × × 𝑣𝑗 × 𝑥𝑖
𝑑𝑧𝑗′ 𝑑𝑥 ′

Y.HIMOUR
• Ainsi dans l’apprentissage supervisé l’entrainement est réalisé sur des
exemple. Pour l’apprentissage non supervisé ce n’est pas le cas.
Apprentissage Non Supervisé
• Dans ce cas il n’y a pas d’exemple à suivre pour apprendre un
comportement (une fonction). Le réseau apprend par ses échecs et
ses réussites. Système de récompense et punition.
• La plupart des algorithmes utilisant ce type d’apprentissage réalisent
des opérations de classification. Ils permettent de cataloguer les
différentes entrées dans un certain nombre de classes fini. (HDP
Heuristic Dynamic Program)
Y.HIMOUR
V.Les R.d.N.A pour l’identification et la commande
des systèmes
• Les réseaux de neurones ont été appliqués dans plusieurs domaines,
cependant le plus grand nombre d’applications à été en automatique
pour la commande, l’identification, l’optimisation et la détection des
défauts… etc.
• Nous allons développer dans cette section les principales
caractéristiques de l’identification (approximation des fonctions) par
RdNA et de la commande des systèmes.

Y.HIMOUR
V.1 L’identification
• La procédure d’identification des systèmes consiste à établir un
modèle mathématique à partir de séries de mesures sur le système.
Selon les connaissances, à priori, sur le système, le problème
d'identification peut être approché de plusieurs manières différentes.
• Si l’identification est basée exclusivement sur les données mesurées,
en considérant qu’on ne connaît pas d’information sur la physique du
système, le modèle recherché est appelée modèle de conduite. Le
modèle de connaissance est utilisé suite à une connaissance physique
du système.

Y.HIMOUR
La procédure de base d’identification du système
Y.HIMOUR
V.1 L’identification (suite)
• Nous considérons l’identification dans le sens large : On a un système
S avec des entrées 𝑥1 … 𝑥𝑛 et une sorties (Sans perte de généralité). S
peut être n’importe quel système (machine, four, processus chimique
… etc).
• On dispose d’un ensemble d’information sur S représentées par des
données entrés/sorties
𝑥 𝑥 𝑥 𝑦
1 2 𝑛
ฐ ฐ ฐ ฐ
⋮ ⋮ … ⋮ ⋮

Y.HIMOUR
V.1 L’identification (suite)
• Ces informations représentent un exemple de comportement mais
pas tout le comportement. Notre objective est de construire un
réseau de neurone qui doit reproduire tout le comportement à partir
d’un apprentissage sur une partie de l’exemple de comportement,
ceci est possible d’après le théorème d’approximation universelle.
Pour atteindre l’objectif on divise les informations de l’exemple en
deux ou trois groupes :
• Groupe d’entrainement : Sert à l’apprentissage supervisé,
• Groupe de test/validation : Sert à vérifier la généralisation.

Y.HIMOUR
V.1 L’identification (suite)
Pour faire de l’identification par les RdNA, il faut prendre
convenablement les choix suivants :
1. Choix de la structure du réseau
• Nombre de couche caché
• Chois des fonctions d’activation
• Nombre de neurones par couche
2. Choix de l’algorithme de l’apprentissage (BP, …)
• Choix du pas d’apprentissage 𝛼 (learning rate), fixe ou variable.
• Choix de la tolérance 𝜀 pour la fin de l’entrainement.

Y.HIMOUR
V.1 L’identification (suite)
• Lorsque l’apprentissage est terminé on vérifie la généralisation en
donnant au réseau le groupe de test/validation et on calcule l’erreur
entre la sortie du système réel et celle du réseau de neurone,
• si l’erreur est proche de 𝜀 alors l’apprentissage est reussi,
• Si l’erreur est plus grande, alors il y a soit :
• Sous entrainement : Pas suffisant,
• Sur entrainement (over training) : l’erreur d’entrainement est trop petite, le
réseau s’est callé à l’exemple.

Y.HIMOUR
Structure des modèles non linéaires
Le réseau multicouche est capable d’apprendre des relations non linéaires à partir d’un
ensemble de données. Il est naturel donc de le choisir pour l’identification des systèmes
non linéaires. Ceci se résume au choix:
• des entrées du réseau.
• de l'architecture interne du réseau.
Une approche souvent utilisée est de réemployer les structures d’entrée des modèles
linéaires et de prendre comme architecture interne un réseau multicouche.
Cette approche présente plusieurs avantages:
• une extension naturelle des structures bien connues de modèles linéaires.
• une architecture interne qui peut être graduellement étendue si on veut modéliser des
relations non linéaires plus complexes.
• des décisions, sur la structure, exigées par l’utilisateur sont réduites à un niveau
raisonnable.
• elle est adéquate pour la conception des systèmes de commande.
Y.HIMOUR
NNFIR ET NNARX
Comme pour leurs équivalents
linéaires, les prédicteurs
sont toujours stables puisqu’ils
sont de pures relations algébriques
entre la prédiction et les mesures
antécédentes des entrées et sorties.

(a) (b)
Ceci est particulièrement
important dans le cas non linéaire
puisque la recherche de la stabilité Les structures des modèles NNFIR (a) et NNARX (b)
est plus complexe ici que dans les
systèmes linéaires.
Y.HIMOUR
NNARMAX
Pour les modèles NNARMAX il est plus
difficile d’analyser les propriétés de
stabilité. Il serait toutefois judicieux de
considérer la stabilité comme une
propriété locale. Il n'en demeure pas
moins qu’un modèle NNRMAX soit
stable dans certains régimes et instable
dans d’autres. Dans l'un ou l'autre cas, le
problème en pratique va dépendre du
comportement du système La structure du modèle NNARMAX

Y.HIMOUR
NNOE
u(t-d)

Quelques régressions dans


le modèle NNOE sont des u(t-d-m) Réseau de
neurones ŷ( t )
prédictions des sorties q-1 ŷ( t − 1)
antérieures et il est sujet aux
mêmes problèmes que la q-n ŷ( t − n )
structure NNARMAX.

La structure du modèle NNOE

Y.HIMOUR
V.2 Les RdNA pour la commande des
systèmes
La littérature scientifique fait mention de différentes architectures de
commande. Les plus simples se basent sur l’apprentissage d’un
contrôleur conventionnel déjà existant, d’autres opèrent un
apprentissage hors-ligne du modèle inverse du processus ou d’un
modèle de référence et enfin, d’autres travaillent complètement en
ligne.

Y.HIMOUR
V.2.1 Apprentissage d’un contrôleur conventionnel
Un réseau de neurones peut reproduire le comportement d’un
contrôleur conventionnel déjà existant (PI, PID, RST, ...) grâce à ses
facultés d’apprentissage et d’approximation. Il suffit de le soumettre à
un apprentissage hors ligne pendant une phase d’identification directe
en considérant que le contrôleur est lui-même un processus. La figure
II.7 montre le principe de l’identification directe d’un contrôleur
conventionnel.

Y.HIMOUR
Schéma d’identification directe d’un contrôleur conventionnel avec un
RNA

Y.HIMOUR
Le but de cette architecture n’est pas de perfectionner les
performances du contrôleur conventionnel déjà existant, mais de
s’affranchir des contraintes d’implémentations matérielles que peuvent
nécessiter certains régulateurs. La méthode de régulation de type RST
par exemple est reconnue pour ses bonnes performances en
commande mais elle pose de sérieux problèmes en integration
numérique.

Y.HIMOUR
V.2. 2commande par modèle inverse(Direct Inverse
Control ) :
• Pour établir le modèle inverse, deux techniques d’apprentissage
seront présentées : L’apprentissage général (méthode hors ligne) et
l’apprentissage spécial (en ligne).

Y.HIMOUR
q-2 RN

Modèle
q-1
Inverse
u(t) y(t+1
r(t+1) Système )

q-1

Figure Commande parY.HIMOUR


modèle inverse
Avantages :
• Simple à appliquer.
• Avec l’apprentissage spécialisé le contrôleur peut être optimisé pour
une trajectoire de référence bien spécifiée.
• Il est en principe évident d’appliquer un apprentissage spécialisé pour
les systèmes variant dans le temps.
Inconvénients :
• Ne s’applique pas pour les systèmes ayant des inverses instables.
• Absence d’options de réglage.
• Très grande sensibilité aux perturbations.
Y.HIMOUR
2.1.3Commande en boucle ouverte(feed-
forword control)+PID

Figure Schéma de commande par boucle ouverte+PID

Y.HIMOUR
Une loi de commande avec un modèle interne exige aussi bien un
modèle direct qu’un modèle inverse du système à commander.
Contrairement à la commande inverse, le retour n’est pas constitué
directement par la sortie du système, au lieu de ça, l’erreur entre la
sortie du système et la sortie du modèle est injectée en retour.
Sous des conditions idéales M = P et C = P −1 . nous avons:

u(t) = [r(t) – v(t)]


y t = q−d Fr(t) + [1 – q − d F] v(t)
• Le filtre passe bas, F, a un impact évident sur le comportement
du système en boucle fermée. Cet impact agit aussi bien sur le
comportement du modèle suiveur que sur l’aptitude de rejet de la
perturbation.

Y.HIMOUR
COMMANDE EN BOUCLE OUVERTE (feed forword
control) :
L’utilisation du retour pour assurer au système une bonne poursuite aux
variations de la référence n’est pas toujours une bonne issue. Une poursuite
rapide de la référence obtenue en boucle fermée présente généralement
l’inconvénient du correcteur qui devient sensible aux bruits.
Pour réaliser une poursuite satisfaisante de la référence sans retour il est
conseillé d’utiliser une commande en boucle ouverte gouvernée seulement
par la référence. La commande est alors composée de deux parties :
• 1. Une partie en boucle ouverte utilisée pour améliorer le problème de
poursuite
• 2. Une partie en boucle fermée utilisée pour stabiliser le système et
supprimer les effets des perturbations.

Y.HIMOUR
Schéma de commande par boucle ouverte

Y.HIMOUR
.5.1Exemple
Bras sans masse de
longueur L Masse
m Ѳp

Pendule inverse
1:N

Train
Moteur à
C.C d'engrenage

U
Tension de
commande
Figure 5.1 : pendule inverséY.HIMOUR
commandé par un moteur à c.c.
Courant Ia
Ra Arbre du
Couple moteur
Tension de commande U La moteur Tm
Vb ωm
fcme

If courant
Circuit
inducteur constant

Figure 5.2 schéma de principe d’un moteur à c.c

Y.HIMOUR
Y.HIMOUR
Fig5.3 Réponse du système à une entrée u(t)=1
4.5

3.5
Sortie y

2.5

1.5

0.5

Temps(s )
0
0 100 200 300 400 500 600 700 800 900 1000

Y.HIMOUR
5.2Elaboration du schéma de commande
Système

En Hors
ligne ligne

Générati Choix
Choix du
schéma de on de du RDN
commande données

Apprentissage

Poids Wi
Commande Commande Structure du
en boucle par modèle RDN
ouverte + PID inverse

Elaboration de la loi Figure 5.4 Organigramme


de commande Y.HIMOUR
5.3 Génération d’une base de données & apprentissage
Réponse du système

0 100 200 300 400 500 600 700 800 900 1000
temps
Entrée
1

0.8

0.6

0.4

0.2

0
0 100 200 300 400 500 600 700 800 900 1000
temps

Figure 5.5 Génération d’une base de données

Y.HIMOUR
Choix du réseau de neurones
▪Une couche d’entrée
▪Une couche cachée
▪Une couche de sortie
-Sept neurone dans la couche cachée
-Un neurone dans la couche de sortie
Evolution des poids W1k
0.5

-0.5

-1

-1.5
0 200 400 600 800 1000 1200
itérations
Evolution des poids W2
2

-1

-2

-3
0 200 400 600 800 1000 1200
itérations

Figure 5.6 Evolution des poids en phase d’apprentissage


Y.HIMOUR
Sortie du système et du modèle neuronal
5

0
0 100 200 300 400 500 600 700 800 900 1000
-5
Evolution de l'erreur Temps
x 10
1

0.5

-0.5

-1

-1.5
0 100 200 300 400 500 600 700 800 900 1000
Temps

Figure 5.7 Validation de l’apprentissage


Y.HIMOUR
Commande par modèle inverse 5.4
commande par modèle inverse
sortie y
4 référence r

0 100 200 300 400 500 600 700 800 900 1000
temps
commande u
4
2

0
-2

-4
-6

0 100 200 300 400 500 600 700 800 900 1000
temps

Figure 5.8 Commande Y.HIMOUR


par modèle inverse
Commande en boucle ouverte 5.5
10
sortie y
référence
5

-5
0 100 200 300 400 500 600 700 800 900 1000
Temps
Ubo
100
Ubf
Utot
50

-50

-100
0 100 200 300 400 500 600 700 800 900 1000

Temps

Figure 5.9 Commande du système avec la boucle ouverte + PID


Y.HIMOUR
Utilisation d’un filtre 5.6 :
Commande neuronale en B.O. +P.I.D.
10
sortie y
réference
5

-5

-10
0 100 200 300 400 500 600 700 800 900 1000
Temps
20 Ubo
Ubf
10
Utot

-10

-20
0 100 200 300 400 500 600 700 800 900 1000
Temps

Figure 5.10 Commande du système avec boucle ouverte, le PID + Filtre


Y.HIMOUR
Les systèmes neuro-flou

Y.HIMOUR
Introdution
Jusqu'aux années 90, les réseaux de neurones et la logique floue
apparaissaient comme des approches bien distinctes, ayant chacune leurs
avantages et leurs inconvénients et leurs domaines spécifiques.
Dans le domaine du contrôle des processus, la commande floue se prêtait
bien à un interfaçage avec un opérateur humain en raison de sa capacité à
traiter des termes linguistiques. Par contre, il subsistait toujours une certaine
part d'arbitraire dans le choix des fonctions d'appartenance et d'imprécision
dans l'écriture des règles qui conduisait à une solution qui peut être assez
loin de l'optimum.
D'un autre côté, les réseaux neuromimétiques (réseaux multicouches)
étaient tout indiqués dans les cas où l'on ne dispose que de données
numériques pour élaborer la commande. Ces réseaux apprenaient par
l'exemple en minimisant une fonction coût ce qui leur conférait de bonnes
qualités de généralisation. Par contre, il était très difficile d’y introduire de la
connaissance a priori car le contenu du réseau n'était pas interprétable
(boîte noire). Y.HIMOUR
La logique floue et les réseaux de neurones présentent des points
commun:
• Les deux méthodes, appliquées au contrôle, présentent de bonnes
qualités de robustesse et sont capables d'extrapolation et de
généralisation.
• Aucune des deux méthodes ne nécessite de modèle mathématique
du système à contrôler et elles peuvent donc toutes deux s'appliquer
à des systèmes nonlinéaires sans complications particulières.
L'idée est donc apparue tout naturellement au début des années 90 de
créer un système d'inférence floue optimisé, cherchant à utiliser les
méthodes d'apprentissage supervisé, comme par exemple la
rétropropagation du gradient, pour optimiser automatiquement
certains paramètres d'un système d'inférence floue.

Y.HIMOUR
Les systèmes ANFIS (Adaptive Neural-based
Fuzzy Inference Systems)
La méthode ANFIS est basée sur l'utilisation de réseaux multicouches
(adaptive networks) où chaque cellule réalise une fonction propre
respectant les paramètres qui lui ont été fournis.
Le réseau adaptatif ANFIS est un réseau multi-couches dont les
connexions ne sont pas pondérées, ou ont toutes un poids de 1. Les
nœuds sont de deux types différents selon leur fonctionnalité :
• Les nœuds carrés (adaptatifs) contiennent des paramètres,
• Les nœuds circulaires (fixes) n’ont pas de paramètres.

Y.HIMOUR
• Toutefois chaque nœud (carré ou circulaire) applique une
fonction sur ses signaux d’entrées. La sortie 𝑂𝑖𝑘 du noeud 𝑖 de
la couche 𝑘 (appelé noeud ( 𝑖, 𝑘 ) dépend des signaux
provenant de la couche 𝑘 − 1 et des paramètres du
nœud(𝑖, 𝑘) , c’est à dire,
𝑂𝑖𝑘 = 𝑓(𝑂𝑖𝑘−1 , … , 𝑂𝑛𝑘−1
𝑘−1
, 𝑎, 𝑏, 𝑐, … )
• où 𝑛𝑘−1 est le nombre de nœuds dans la couche 𝑘 − 1, et
𝑎, 𝑏, 𝑐,...sont les paramètres du nœud (𝑖, 𝑘). Pour un nœud
circulaire, ces paramètres n’existent pas.

Y.HIMOUR
Exemple d’un reseau ANFIS à deux entrées

Y.HIMOUR
• Couche 1 : Chaque nœud de cette couche est un nœud carré avec
une fonction : 𝑂𝑖1 = 𝜇𝐴 𝑖 (𝑥)
où 𝑥 est l’entrée du nœud 𝑖 , et 𝐴𝑖 le terme linguistique associé à sa
fonction. Donc le résultat que donne cette cellule représente le degré
avec lequel 𝑥 satisfait le qualificatif 𝐴𝑖 .
En d’autres termes, 𝑂𝑖1 (𝑥) est le degré d’appartenance de 𝑥 à 𝐴𝑖 . Les
paramètres d’un nœud de cette couche sont ceux de la fonction
d’appartenance correspondante. Généralement les fonctions
d'appartenance utilisées par la méthode ANFIS sont des gaussiennes ou
des fonctions cloches.

Y.HIMOUR
Couche 2 : Chaque nœud 𝑖 de cette couche est un nœud circulaire
appelé Π qui engendre en sortie le produit de ses entrées. Ce produit
représente le degré d’activation d’une règle :
𝑤𝑖 = µ𝐴 𝑖 𝑥1 . µ𝐵 𝑖 (𝑥2 ), 𝑖 = 1. . 2
Couche 3 : Chaque nœud de cette couche est un nœud circulaire
appelé N. Dans cette couche, les cellules calculent le rapport entre les
valeurs de vérité de chaque règle par rapport à la somme de toutes les
valeurs de vérité données par chaque règle. Elles estiment donc le
poids "normalisé" de chaque règle.

Y.HIMOUR
Couche 4 : Chaque nœud de cette couche est un nœud carré avec une
fonction réalisant le calcul :
𝑂𝑖4 = 𝑣𝑖 𝐹𝑖 = 𝑣𝑖 𝑥𝑖 𝑥1 + 𝑏𝑖 𝑥2 + 𝑐𝑖 , 𝑖 − 1 … 2
où 𝑣𝑖 est la sortie de la couche 3, et {𝑎𝑖 , 𝑏𝑖 , 𝑐𝑖 } est l’ensemble des
paramètres de sortie de la règle 𝑖.
Couche 5 : Le seul nœud de cette couche est un nœud circulaire qui
effectue la somme des signaux provenant de la couche 4, c’est à dire,
𝑂15 = 𝑦 = ෍ 𝑣𝑖 𝐹𝑖
𝑖
La généralisation du réseau à un système à 𝑛 entrées ne pose aucun
problème particulier. Le Nombre de nœuds de la couche 1 est toujours
égal au nombre total de termes linguistiques définis. Le Nombre de
nœuds des couches 2, 3 et 4 est toujours égal au nombre de règles
floues.

Y.HIMOUR
Exemple d’un ANFIS avec deux entrées et trois valeurs linguistique pour chaque entrée

Y.HIMOUR
L’apprentissage d’un système ANFIS
L’apprentissage à partir d’un ensemble de données concerne l’identification
des paramètres des prémi ses et des conséquences, la structure du réseau
étant fixée. L’algorithme d’apprentissage commence par construire un réseau
initial, en suite nous appliquons une méthode d’apprentissage par rétro-
propagation de l’erreur.
Dans l'architecture ANFIS, l'apprentissage est basé sur une méthode hybride
qui applique la méthode des moindres carrée combinée à la
rétropropagation du gradient tout au long de l'apprentissage. Les paramètres
des conclusions des règles qui sont linéaires par rapport à la sortie du
système d'inférence floue sont ajustés par la méthode des moindres carrées
dans le sens "forward" du réseau, puis vient l'ajustement des paramètres des
prémisses des règles par la méthode du gradient dans le sens ''backward" du
réseau, et ce, pour chaque itération de l'algorithme.
Y.HIMOUR
• L'identification des paramètres non-linéraires de la partie prémisse
des règles floues avec des fonctions d'appartenance de type
gaussienne définies par la relation:

• où 𝑐 est la moyenne, 𝑣 est l'inverse de la variance (cette dernière est


adoptée afin d'éviter la division par zéro lors de son adaptation)

Y.HIMOUR
Considérons l'ensemble des paramètres des prémisses caractérisé par
le vecteur 𝜃, et soit un ensemble de données entrée-sortie
( 𝑥( 𝑘 ), 𝑦𝑑 ( 𝑘 )). Notre objectif est de trouver les valeurs du vecteur 𝜃
pour que la sortie du système flou approche le mieux possible la sortie
désirée 𝑦𝑑 ( 𝑘 ) , en minimisant le critère :

L’algorithme de rétro-propagation est donné par:

avec λ est le gain d'apprentissage.

Y.HIMOUR
• Dans un système flou de type Sugeno, nous avons 𝜃 = 𝑐 𝑣 𝑇 , où
[𝑐, 𝑣] sont les paramètres des prémisses, nous avons donc:

• En utilisant l'expression de la sortie du système flou, il vient:

𝐼𝐶 𝑖𝑗 : est l'ensemble des indices (𝑙) des règles floues (𝑅𝑙 ) dont lesquelles
𝑗
apparaît l’ensemble flou 𝐴𝑖 .

Y.HIMOUR
• Pour une fonction d'appartenance gaussienne on a :

• Après calcul, il vient :

• Et de la même manièe :

Y.HIMOUR
Y.HIMOUR

Vous aimerez peut-être aussi