Cours CA Chapitre II
Cours CA Chapitre II
II.1 Historique
[Link] 1 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
préalablement [14]. le modèle développé est très utilisé jusqu’ aujourd’hui pour la
résolution des problèmes d'optimisation.
1983 : La Machine de Boltzmann est introduite pour traiter de manière
satisfaisante les limitations recensées dans le cas du perceptron [15]. Cependent,
l’utilisation pratique s’avère difficile, la convergence de l’algorithme étant
extrêmement longue (les temps de calcul sont considérables).
1985 : La rétropropagation de gradient qui est le premier algorithme
d’apprentissage adapté aux réseaux de neurones multicouches est apparu. Cette
découverte a permet de réaliser une fonction non linéaire d’entrée/sortie sur un réseau
en la décomposant en une suite d’étapes linéairement séparables. Actuellement, les
réseaux multicouches et l’algortihme de rétropropagation de gradient est le modèle le
plus étudié et le plus productif au niveau des applications.
[Link] 2 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
d’Angströms (10- 9 m) entre l’axone du neurone afférent et les dendrites du neurone
efférent. On appelle la synapse : la jonction entre deux neurones (Figure II.1).
Selon les spécialistes des neurones biologiques (neurophysiologistes), les
différentes fonctions neuronales, y compris celle de la mémoire, sont stockées au niveau
des connexions (synapses) entre les neurones. En se basant sur cette théorie,
l’apprentissage consiste alors soit à établir de nouvelles connexions, soit à en modifier
des existantes. En effet, c’est ce genre de théorie qui a inspiré la plupart des
architectures de réseaux de neurones artificiels que nous trouverons actuellement dans
la littérature.
Comme nous l’avons décrit avant, les réseaux de neurones biologiques (le
cerveau) réalisent facilement des tâches intellectuelles assez difficiles, telles que la
reconnaissance de formes, le traitement du signal, l'apprentissage, la mémorisation, etc.
Malgré tous les progrès déployés en algorithmique et en informatique, les tâches
intellectuelles d’un être humain restent très avancées par rapport au machines. Si on
suppose que le comportement intelligent émerge de la structure et du comportement des
[Link] 3 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
éléments de base du cerveau, on peut avoir des capacités et des compétences similaires
en concevant des réseaux de neurones artificiels.
Les réseaux de neurones artificiels sont des réseaux fortement connectés de
processeurs élémentaires fonctionnant en parallèle. Chaque processeur élémentaire
calcule une sortie unique sur la base des informations qu'il reçoit. Toute structure
hiérarchique de réseaux est évidemment un réseau.
[Link] 4 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
Neurone biologique Neurone artificiel
Synapses Poids des connexions
Dendrites Signal d’entrée
Axones Signal de sortie
Somma (Noyau) Fonction d’activation
𝑠 = ∑ 𝑤𝑖 𝑥𝑖 ± 𝑏
𝑖=1
𝑠 = 𝑤1 𝑥1 + 𝑤2 𝑥2 + 𝑤3 𝑥3 + ⋯ ± 𝑏
Ou sous forme matricielle :
𝑠 = 𝑤𝑡𝑥 ± 𝑏
Avec
𝑥 = [𝑥1 , 𝑥2 , … , 𝑥𝑛 ]𝑡 ; 𝑤 = [𝑤1 , 𝑤2 , … , 𝑤𝑛 ]𝑡 .
La sortie 𝑠 correspond à une somme pondérée des poids et des entrées plus le
biais 𝑏 du neurone. Le résultat 𝑠 de la somme pondérée s’appelle le niveau
d’activation du neurone.
Le calcul de la sortie 𝑦 se fait avec l’équation suivante :
𝑦 = 𝑓(𝑠) = 𝑓(𝑤 𝑡 𝑥 ± 𝑏)
Où 𝑓 est la fonction d’activation du neurone.
[Link] 5 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
II.4.2 Fonction d'activation
[Link] 6 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
cependant, quelques rares architectures exigent des types des neurones spécieux. La
structure d’un réseau de neurones dépend de la tâche à effectue et le type
d’apprentissage. Un réseau de neurone artificiel est composé d’une ou de plusieurs
couches de neurones, de la couche des entrées jusqu’à la couche des sorties. Les réseaux
de neurones artificiels peuvent être classer en deux grands types de structures : les
réseaux de neurones non bouclés (acyclique) et les réseaux de neurones bouclés.
Les réseaux de neurones non bouclés sont destinés à la réalisation des fonctions
algébriques des entrées par la combinaison des fonctions réalisées par chacun de ses
neurones. La représentation graphique d’un réseau de neurones non bouclé est
schématisée par des nœuds qui représentent les neurones et des liens (flèches) qui
représentes les connexions. Le sens des flèches représente la circulation de
l’information depuis des entrées vers les sorties sans "retour en arrière » ; donc, le
graphe d’un réseau non bouclé doit être un graphe acyclique.
Il faut noter que le traitement des réseaux de neurones se fait par des calculateurs
(ordinateurs) et rarement par des circuits électroniques, donc, les termes ‘‘nœuds’’ et
‘‘connexions’’ sont des métaphores et non des dispositifs physiques. En réalité, les
termes ‘‘nœuds’’ et ‘‘connexions’’ issus des origines biologiques.
Le premier modèle est présenté en 1958 par Frank Rosenblatt sous le nom du
Perceptron avec la forme la plus simple des réseaux de neurones. Ce modèle, le
perceptron, est constitué de deux couches : une couche d’entrée et d’autre de sortie, le
résultat est donné par la couche de sortie selon les valeurs présentées en entrée.
Cette configuration simplifier du perceptron ne peut traiter que les problèmes
linéairement séparables, comme les fonctions logiques AND et OR par exemple.
Néanmoins, les problèmes qui ne sont pas linéairement séparables comme la fonction
logique XOR par exemple, la configuration monocouche ne peut pas les résoudre et on fait
appelle à une configuration plus complexe (monocouche) pour les traiter.
[Link] 7 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
Un perceptron à deux entrées dont les poids sont : W1 =1, W2= 1 et que la valeur
de seuil est S = -0.5 et puis -1.5, déterminez son comportement.
Sachant que les comportements du ET logique, OU logique et OU exclusif sont
rappelés dans le tableau suivant :
ET OU OU Exclusif
𝑒1 𝑒2 𝑥 𝑒1 𝑒2 𝑥 𝑒1 𝑒2 𝑥
0 0 0 0 0 0 0 0 0
0 1 0 0 1 1 0 1 1
1 0 0 1 0 1 1 0 1
1 1 1 1 1 1 1 1 0
Dans cette architecture les neurones sont arrangés par couche. Les neurones de
la même couche n’ont pas de connexion entre eux, les neurones de chaque couche ont
des connexions seulement avec les neurones de couches suivantes. Généralement, la
connexion d’un neurone d'une couche est avec tous les neurones de la couche suivante.
Donc, le sens de parcours de l'information (de l'activation) au sein d'un réseau est de
des neurones d'entrées, vers les neurones intermédiaires et puis les neurones de sortie.
L’ensemble des neurones d’entrés est appelé la couche d’entrée, et l’ensemble
des neurones de sortie est appelé la couche de sortie. Les neurones des couches
intermédiaires n'ayant aucune liaison avec l'extérieur et les couche sont nommées
couches cachées. Cette structure est appelée aussi perceptron multicouches.
La structure multicouche du réseau des neurones permet d’avoir les capacités
plus puissantes par rapport aux réseaux simples à une seule couche. Ce type de réseau
peut produire une approximation de la plupart des fonctions, avec une précision
[Link] 8 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
acceptable (cela peut requérir des couches cachées avec un grand nombre de neurones).
Sauf dans des rares cas, les réseaux de neurones artificiels exploitent deux ou trois
couches.
C’est une structure multicouche, où, chaque neurone a un nombre réduit des
relations avec les neurones de la couche suivante. Dans ce type, les connexions sont
moins nombreuses par rapport à un réseau multicouche classique (Figure II.6).
[Link] 9 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
II.5.4 Réseaux de neurones bouclés
Dans cette structure, les neurones d’une couche donnée peuvent avoir des
connexions non seulement avec les couches qui suivent, mais même avec les neurones
des couches qui précèdes. Les liaisons vers les couches précédentes permettent le retour
de l’information de n’importe quelle couche vers n’importe quelle couche précédente
y compris la couche d’entrée, ce qui rend la structure un réseau dynamique. Ce réseau
est régi par des équations différentielles et il est utilisé pour résoudre les problèmes de
l’identification des systèmes dynamiques, de la commande, de l’estimation, etc.
[Link] 10 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
II.5.5.2 Modèle de Kohonen
Les réseaux de neurones ont des propriétés très intéressantes, parmi les
propriétés notables et attirantes est la capacité d’apprendre. Cette capacité permet au
réseau de neurones d’améliorer ses performances et de se développer.
L'information que peut acquérir un réseau de neurones est représentée dans les poids
des connexions entre les neurones. L'apprentissage consiste à l’ajustement de ces poids pour
avoir un comportement désiré du réseau. Dans la littérature, il n’existe pas de définition
générale, exacte et universel de l’apprentissage, car ce concept concerne à trop de
notions distinctes qui dépendent du domaine que l’on adopte. Dans le domaine de
l’intelligence artificielle, on peut définir l’apprentissage par la phase du développement
d'un réseau de neurones durant laquelle le comportement du réseau est modifié jusqu'à
l'obtention du comportement désiré. Aussi, l’apprentissage peut être considérer comme
un processus dynamique et itératif permettant de modifier les paramètres d’un réseau
en réaction avec les stimuli qu’il reçoit de son environnement. Bien sûr, L'apprentissage
neuronal se fait sur la base des exemples de comportement. Le type d’apprentissage est
déterminé par la manière dont les changements de paramètre surviennent.
Dans tous les cas, l’apprentissage d’un réseau implique sa stimulation par son
environnement, et la réaction contre cette stimulation provoque des changements
[Link] 11 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
comportementaux, ce qui engendre une nouvelle réponse vis-à-vis de l’environnement.
De ce fait, le réseau apprendra et s’améliora.
[Link] 12 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
nouvelles données observées. Donc, c’est une procédure qui permet l’implémentation
en temps réel. Cependant, l'apprentissage en ligne est en lent mais est recommandé
avec des comportements variables.
L’apprentissage global est le processus qui met à jour la totalité des poids de
tous les neurones. Dans cette méthode, à chaque itération tous les poids sont ajustés.
L’apprentissage partiel (local) : dans cette méthode, à chaque itération
seulement certains poids sont modifiés.
[Link] 13 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
La méthode d’apprentissage par correction des erreurs consiste à minimiser un
indice de performance 𝐹 (indice de qualité) basé sur les valeurs d’erreur 𝑒𝑖 (𝑡), dans
l’objectif d’obtenir la sortie du réseau de neurones désirée. Parmi les critères de
performance les plus utilisés est l’erreur quadratique moyenne dont la forme :
𝑛
1 1
𝐹(𝑒(𝑡)) = ∑ 𝑒𝑖2 (𝑡) = 𝑒(𝑡)𝑇 𝑒(𝑡)
𝑛 𝑛
𝑖=1
Il faut noter que les paramètres à optimisés d'un réseau sont ses poids 𝑤(𝑡). Pour
minimiser 𝐹(𝑒(𝑡)) ≡ 𝐹(𝑤(𝑡)) ≡ 𝐹(𝑡) , la première étape consiste à générer
aléatoirement les poids initiaux ( 𝑡 = 0 ). Ensuite, la modification des poids se fait de
la manière suivante :
𝑤(𝑡 + 1) = 𝑤(𝑡) + 𝜂𝑋(𝑡)
Où 𝑋(𝑡) est le vecteur de direction qui désigne le sens de la recherche du
minimum et 𝜂 est une constante positive qui détermine la longueur du pas (la vitesse
d’apprentissage) dans le sens de recherche. L’amélioration des poids signifie que
𝐹(𝑡 + 1) < 𝐹(𝑡).
L’amélioration de la qualité de la fonction coût est déterminée par le vecteur de
direction 𝑋(𝑡). Ce dernier est déterminé par le gradient.
Si on applique le développement de Taylor sur l’équation de 𝐹(𝑡 + 1) on
obtient :
𝐹(𝑡 + 1) = 𝐹(𝑡) + ∇𝐹(𝑡)𝑇 ∆𝑤(𝑡)
Où ∇𝐹(𝑡) est le gradient de 𝐹 par rapport à ses variable (les poids 𝑤) au temps
𝑡, et ∆𝑤(𝑡) = 𝑤(𝑡 + 1) − 𝑤(𝑡). Pour que la condition 𝐹(𝑡 + 1) < 𝐹(𝑡) soit satisfait,
il faut que la condition suivante soit respectée :
∇𝐹(𝑡)𝑇 ∆𝑤(𝑡) = ∇𝐹(𝑡)𝑇 𝜂𝑋(𝑡) < 0
Quel que soit le vecteur de direction 𝑋(𝑡) qui satisfait l’inégalité de l’équation
précédente se dirige dans une direction qui diminue 𝐹. Cette direction est appelée une
direction de « descente ». Pour obtenir une descente, et puisque 𝜂 > 0, le vecteur 𝑋(𝑡)
doit être orienté vers le sens opposé au gradient pour obtenir un produit négatif, donc :
𝑋(𝑡) = −∇𝐹(𝑡)
D’où, la règle dite de « descente du gradient » est aboutie :
∆𝑤(𝑡) = 𝜂∇𝐹(𝑡)
[Link] 14 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
La règle de la correction des erreurs est utilisée souvent pour l’apprentissage de
réseaux de neurones artificiels. L’utilisation de cette règle ne peut être que dans un
contexte d’apprentissage supervisé.
La loi de Hebb (1949) (ou la règle de hebb) est une méthode d’apprentissage
qui s'applique aux connexions entre neurones. Elle est exprimée de la façon suivante :
"l’activation des cellules (neurones) simultanée engendre l’augmentation de la force
de connexion ".
Le tableau ci-dessous résume la règle, 𝑥𝑖 et 𝑥𝑗 sont respectivement les valeurs
d’activation des neurones 𝑖 et 𝑗, ∆𝑤𝑖𝑗 représente la modification du poids.
𝑥𝑖 𝑥𝑗 ∆𝑤𝑖𝑗
0 0 0
0 1 0
1 0 0
1 1 +
[Link] 15 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
II.6.5.3 Exemple : d'application de la règle de Hebb
Soit un neurone (Figure II.8) de comportement binaire avec deux entrées 𝑒1 et 𝑒2 (ces
entrée sont considérée comme neurones.
[Link] 16 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
d'apprentissage est alors terminé : toute la base d'apprentissage a été passée en revue
sans modification des poids.
[Link] 17 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
Calcul de l’erreur
𝒆 = 𝒚𝒅 − 𝒚𝒓
Calcul des ∆𝒋
∆𝒋 = 𝒆 ∗ 𝒅𝒆𝒓[𝑺𝒊𝒈(𝒚𝒋 )]
Non satisfait
Satisfait
Arrêter
[Link] 18 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
𝜹𝒋 = 𝑶𝒋 (1 − 𝑶𝒋 ) ∑ 𝜹𝒌 𝒘𝒌𝒋
𝑘
[Link] 19 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
𝒏𝑳 −𝟏
(𝑳)
𝑪 = ∑ (𝒂𝒋 − 𝒚𝒋 )𝟐
𝒋=𝟎
(𝑳) (𝑳) (𝑳−𝟏) (𝑳) (𝑳−𝟏) (𝑳) (𝑳−𝟏) (𝑳)
𝒛𝒋 = 𝒘𝒋𝟎 𝒂𝟎 + 𝒘𝒋𝟏 𝒂𝟏 + 𝒘𝒋𝟐 𝒂𝟐 + ⋯ 𝒃𝒋
(𝑳) (𝑳)
𝒂𝒋 = 𝝈(𝒛𝒋 )
(𝑳) (𝑳)
𝝏𝑪 𝝏𝒛𝒋 𝝏𝒂𝒋 𝝏𝑪
(𝑳)
= (𝑳) (𝑳) (𝑳)
𝝏𝒘𝒋𝒌 𝝏𝒘𝒋𝒌 𝝏𝒛𝒋 𝝏𝒂𝒋
𝒏𝑳 −𝟏 (𝑳) (𝑳)
𝝏𝑪 𝝏𝒛𝒋 𝝏𝒂𝒋 𝝏𝑪
(𝑳−𝟏)
= ∑ (𝑳−𝟏) (𝑳) (𝑳)
𝝏𝒂𝒌 𝒋=𝟎
𝝏𝒂𝒌 𝝏𝒛𝒋 𝝏𝒂𝒋
𝒏𝑳 −𝟏 (𝑳) (𝑳)
𝝏𝑪 𝝏𝒛𝒋 𝝏𝒂𝒋 𝝏𝑪
(𝑳−𝟏)
= ∑ (𝑳−𝟏) (𝑳) (𝑳)
𝝏𝒂𝒌 𝒋=𝟎
𝝏𝒂𝒌 𝝏𝒛𝒋 𝝏𝒂𝒋
𝒏𝑳+𝟏 −𝟏
𝝏𝑪 (𝑳+𝟏) ′ (𝑳+𝟏) 𝝏𝑪 (𝑳)
𝛁𝑪 = (𝑳)
= ∑ 𝒘𝒋𝒌 𝝈 (𝒛𝒋 ) (𝑳+𝟏)
= 𝟐(𝒂𝒋 − 𝒚𝒋 )
𝝏𝒂𝒋 𝒋=𝟎
𝝏𝒂𝒋
[Link] 20 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
En utilisant l’algorithme de rétropropagation du gradient, on va faire l’adaptation des
poids pour obtenir le cas: 𝑥1 = 1, 𝑥2 = 1, 𝑦 = 0
1
La fonction d’activation est la fonction sigmoide : 𝑔(𝑥) = 1−𝑒 −𝑥
[Link] 21 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
𝜃5 = 0.3 + 0.0127 = 𝟎. 𝟑𝟏𝟐𝟕
- Calcul de la nouvelle sortie :
[Link] 22 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
[Link] 24 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
[Link] 25 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
L’erreur entre la sortie du système et celle du modèle est utilisée à travers un
algorithme d’apprentissage pour ajuster les paramètres du modèle neuronal.
La structure série-parallèle est préférable par rapport à la structure parallèle, car
cette dernière connue des problèmes de convergence et de stabilité.
[Link] 26 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
Il est à relever que dans un contexte non-linéaire les méthodes classiques sus-
citées s'avèrent peu performantes. Pour résoudre ce problème, on s'est penché, ces
dernières années, sur les schémas de commande basés sur les réseaux de neurones. Ces
schémas doivent être appliqués pour les systèmes invariables dans le temps. Ils ne
doivent être utilisés que lorsque le réseau aura convergé. Quand la dynamique du
système en boucle fermée est jugée satisfaisante, l’adaptation doit être arrêtée.
Commande directe : Dans cette classe le régulateur est un réseau de neurones. Ceci
inclut les schémas de commande suivants :
[Link] 27 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
Linéarisation en boucle fermée.
Commande optimale.
Commande indirecte : Cette classe est toujours à base de modèles. L’idée est d’utiliser
un réseau de neurones pour modéliser le système à commander. Ce modèle est alors
utilisé dans une architecture de commande plus "conventionnel". Le modèle est entraîné
en avance, mais le régulateur est conçu en ligne. On peut citer comme exemples de
schémas de commande de ce type :
Dans ce qui suit, seulement quelques schémas de commande directe sont présentés.
[Link] 28 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
𝑁
𝑁)
1 𝑡
𝐽(𝜃, 𝑍 = ∑[𝑢(𝑡) − 𝑢̂ ( )]2
2𝑁 𝜃
𝑡=1
[Link] 29 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
𝑁
𝑁)
1
𝐽(𝜃, 𝑍 = ∑[𝑟(𝑡) − 𝑦(𝑡)]2
2𝑁
𝑡=1
Où on est sûr de réaliser notre objectif qui est de minimiser l’erreur entre la
référence r(t) et la sortie du système y(t). Malheureusement, la minimisation de ce
critère n’est pas facile à obtenir. En s’inspirant des méthodes d’apprentissage vues
précédemment, l’apprentissage du réseau peut se faire de façon itérative. On aura alors
le critère suivant :
𝑑𝑒 2 (𝑡)
𝜃̂(𝑡) = 𝜃̂(𝑡 − 1) − 𝜇
𝑑𝜃
et
𝑑𝑦(𝑡)
On applique la règle en chaîne, le Gradient peut être calculé par :
𝑑𝜃
𝑑𝑦(𝑡)
Il est clair que les Jacobiens du système sont nécessaires.
𝑑𝑢(𝑡−1)
Malheureusement ils sont inconnus, puisque le système est, lui-même, inconnu. Pour
[Link] 30 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
résoudre ce problème, on identifie le système à l’aide d’un modèle neuronal direct pour
obtenir les estimées des Jacobiens :
𝑑𝑦(𝑡) 𝑑𝑦̂(𝑡)
≈
𝑑𝑢(𝑡 − 1) 𝑑𝑢(𝑡 − 1)
𝑑𝑦̂(𝑡)
𝑒𝑢 (𝑡) = 𝑒(𝑡)
𝑑𝑢(𝑡 − 1)
L’algorithme de l’apprentissage spécial peut être décrit par les étapes suivantes :
𝐵 (𝑞 −1 )
𝑦𝑚 (𝑡) est la sortie d’un modèle de système en B.F. 𝑦𝑚 (𝑡) = 𝐴𝑚 (𝑞−1 ) 𝑟(𝑡) où
𝑚
les polynômes 𝐵𝑚 et 𝐴𝑚 sont choisis arbitrairement.
𝑑𝑦̂(𝑡)
3. Calculer l’erreur virtuelle 𝑒𝑢 (𝑡) = 𝑑𝑢(𝑡−1) 𝑒(𝑡) et actualiser les poids par la
rétropropagation (ou par la méthode de Gauss-Newton récursive).
4. Evaluer le modèle inverse pour calculer l’entrée de commande 𝑢(𝑡) et
l’appliquer au système.
5. Calculer la prédiction 𝑦̂(𝑡) et le Jacobien du modèle neuronal direct. Si la
méthode de Gauss-Newton est appliquée, déterminer aussi Ψ(𝑡 + 1).
6. Aller à l’étape 1.
[Link] 31 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
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. Ceci,
malheureusement, se produit qu’on on utilise une fréquence d’échantillonnage
élevée.
Problèmes avec les systèmes qui ne sont pas bien amortis (les modèles linéarisés
localement présenteront des zéros près du cercle unité).
Absence d’options de réglage.
Très grande sensibilité aux perturbations.
La commande par modèle interne est une variante de commande très liée à la
commande inverse directe. Il y a assez de conditions restrictives sur les caractéristiques
du système à commander ce qui limite de façon considérable l’application de cette
méthode.
Les limitations sont même plus restrictives que pour la commande inverse
directe. Cependant l’IMC possède certaines bonnes caractéristiques, [Link]. elle
compense des perturbations constantes.
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. Ces deux modèles sont créés en suivant
les étapes montrées dans la partie de l’identification et dans la section précédente. Le
principe de l’IMC est reporté par la Figure II.16.
[Link] 32 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
𝑞 −𝑑 𝐹𝐶𝑃 1 − 𝑞 −𝑑 𝐹𝐶𝑃
𝑦(𝑡) = 𝑟(𝑡) + 𝑣(𝑡)
1 + 𝑞 −𝑑 𝐹𝐶(𝑃 − 𝑀) 1 + 𝑞 −𝑑 𝐹𝐶(𝑃 − 𝑀)
𝑞 −𝑑 𝐹𝐶𝑃
𝑦(𝑡) = 𝑣(𝑡) + [𝑟(𝑡) − 𝑣(𝑡)]
1 + 𝑞 −𝑑 𝐹𝐶(𝑃 − 𝑀)
𝐹𝐶
Et 𝑢(𝑡) = 1+𝑞−𝑑 𝐹𝐶(𝑃−𝑀) [𝑟(𝑡) − 𝑣(𝑡)]
[Link] 33 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
Sous des conditions idéales 𝑀 = 𝑃 et 𝐶 = 𝑃 −1. Les deux expressions de
𝐹
dessus sont réduites à : 𝑢(𝑡) = 𝑃 [𝑟(𝑡) − 𝑣(𝑡)]
Ceci peut aussi être observé par la détermination du correcteur équivalent avec l’unité
en retour.
𝐹𝐶 𝐹𝐶
𝐶𝑒 (𝑞 −1 ) = =
1 − 𝑞 −1 𝐹𝐶𝑀 1 − 𝑞 −1 𝐹
Il est clair qu’en choisissant 𝐹 = 1, l’action Intégrale est obtenue si le temps de retard
est 𝑑 = 1.
Elle est généralement discutée dans un contexte continu qui sera d'ailleurs notre
point de départ. L’hypothèse fondamentale faite sur le système est que son modèle doit
être écrit dans la forme Canonique :
[Link] 34 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
𝑥̇ 1 (𝑡) 𝑥2 (𝑡)
𝑥̇ 2 (𝑡) 𝑥3 (𝑡)
. .
𝑥̇ (𝑡) = =
. .
. .
[𝑥̇ 𝑛 (𝑡)] [𝑓̃[𝑥(𝑡)] + 𝑔̃[𝑥(𝑡)]𝑢(𝑡)]
Où 𝑓̃ et 𝑔̃ sont des fonctions d’état non linéaires, t est maintenant le temps réel
et non un multiple de la période d’échantillonnage.
Le système peut être linéarisé en introduisant la commande suivante :
𝑤(𝑡)−𝑓̃ [𝑥(𝑡)]
𝑢(𝑡) = où 𝑔̃[𝑥(𝑡)] ≠ 0 (4.15)
𝑔̃[𝑥(𝑡)]
Si on a une connaissance complète sur les états, ou sur les mesures ou encore à
partir d’un observateur, un schéma de type placement de pôles est facilement réalisable.
Un choix de l’entrée de commande virtuelle w, comme référence avec une combinaison
linéaire des états donne un système en boucle fermée représenté par :
𝑥̇ 1 (𝑡) 0
𝑥̇ 2 (𝑡) 0 1 0 0 0
…
. 0 0 1 0 .
𝑥̇ (𝑡) = =[ ⋮ ⋱ ⋮ ] 𝑥(𝑡) + . 𝑟(𝑡)
.
. −𝑎 0 −𝑎1 … −𝑎𝑛−1 .
[𝑥̇ 𝑛 (𝑡)] [1]
𝑦(𝑡) = [1 0 . . . 0]𝑥(𝑡)
𝑓̃[𝑥(𝑡)] + 𝑔̃[𝑥(𝑡)]𝑢(𝑡)
1
Qui correspond à la fonction de transfert 𝐻𝐵𝐹 = 𝑠𝑛 +𝑎 𝑛−1 +⋯+𝑎
𝑛−1 𝑠 0
𝑛−1
Les coefficients {𝑎𝑖 } 𝑖=0 vont spécifier le polynôme caractéristique, c.-à-d. les
pôles du système en boucle fermée. La relation avec la commande avec placement de
pôles est alors évidente.
La discrétisation des systèmes non linéaires est une action assez compliquée du
moins si elle est réalisée par des approximations imparfaites. On suppose que le système
peut être modélisé par :
𝑦(𝑡) = 𝑓[ 𝑦(𝑡 – 1), … , 𝑦(𝑡 − 𝑛), 𝑢(𝑡 − 2), … , 𝑢(𝑡 − 𝑚)] + 𝑔[𝑦(𝑡 − 1), … 𝑦(𝑡 −
𝑛), 𝑢(𝑡 − 2), … 𝑢(𝑡 − 𝑚)]𝑢(𝑡 − 1) (4.18)
[Link] 35 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
Ce qui est équivalent à
𝑥̇ 1 (𝑡 + 1) 𝑥2 (𝑡 + 1)
𝑥̇ 2 (𝑡 + 1) 𝑥3 (𝑡 + 1)
. .
𝑥̇ (𝑡 + 1) = =
. .
. .
[𝑥̇ 𝑛 (𝑡 + 1)] [𝑓[. ] + 𝑔[. ]𝑢(𝑡)]
𝑦(𝑡) = 𝑥𝑛 (𝑡)
En supposant que les fonctions f et g sont connues, l’introduction de la
commande suivante pourra linéariser le système aux instants d’échantillonnage :
Dans le cas, où le système est inconnu, un modèle peut être obtenu à partir de
données en plaçant deux réseaux de neurones séparés qui approximent les fonctions
𝑓 et 𝑔.
𝑦̂(𝑡/𝜃) = 𝑓̂[ 𝑦(𝑡 – 1), … , 𝑦(𝑡 − 𝑛), 𝑢(𝑡 − 2), … , 𝑢(𝑡 − 𝑚), 𝜃𝑓 ] + 𝑔̂[𝑦(𝑡 −
1), … 𝑦(𝑡 − 𝑛), 𝑢(𝑡 − 2), … 𝑢(𝑡 − 𝑚), 𝜃𝑔 ]𝑢(𝑡 − 1)
[Link] 36 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
𝜕𝑓̂
Ψ𝑓 (𝑡, 𝜃𝑓 ) =
𝜕𝜃𝑓
𝜕𝑔̂
Ψ𝑔 (𝑡, 𝜃𝑔 ) =
𝜕𝜃𝑔
Ces dérivées sont calculées de la même manière comme pour les modèles
NNARX. La dérivée de la sortie du modèle est alors :
𝑡
𝜕𝑦̂(𝜃) Ψ𝑓 (𝑡, 𝜃𝑓 )
Ψ(𝑡, 𝜃) = =[ ]
𝜕𝜃 Ψ𝑔 (𝑡, 𝜃𝑔 )𝑢(𝑡 − 1)
Les schémas de commande, vus dans les sections précédentes, sont tous basés
sur le principe du retour. Les principales raisons pour l’utilisation d’un retour sont la
stabilisation des systèmes instables et la réduction de l’influence des perturbations et
incertitudes de modélisation.
[Link] 37 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
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 :
La plupart des systèmes industriels sont commandés aujourd’hui par des P.I.D.
Pour améliorer les performances du P.I.D on pourrait lui ajouter un correcteur basé sur
un réseau de neurones en boucle ouverte.
Il y a plusieurs manières d’implémenter le correcteur en boucle ouverte.
L’approche la plus évidente est d’utiliser un réseau dynamique en boucle ouverte qui
est un modèle inverse comme celui présenté dans la section (II).
Mais cette fois-ci on remplace les sorties du système par les valeurs correspondantes de
la référence.
[Link] 38 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
[Link] 39 [Link]@[Link]
École Supérieure en Génie Électrique et Énergétique d'Oran (ESGEE)
Commande avancée : chapitre I
de cette présentation que ces méthodes se prêtent bien à la réalisation de la commande
des modèles non linéaires, car ils peuvent approcher avec une précision arbitraire le
comportement de n’importe quel système statique ou dynamique.
[Link] 40 [Link]@[Link]