• Aucun résultat trouvé

Chapitre III : Méthodes multi- variables pour l’estim ation de la concentration de gaz à l’aide

III.4 Présentation des algorithmes d’optimisation

Nous avons étudié différents algorithmes d’optimisation pour sélectionner les hyper-paramètres de la régression SVM. La figure III-4 illustre la procédure suivie dans le processus d’optimisation des hyper-paramètres de la SVM. Pour chaque itération, l’algorithme SVM reçoit les valeurs des hyper-paramètres fournies par l’algorithme d’optimisation, et puis il calcule la moyenne de l’erreur quadratique moyenne des 10 partitions, que nous appelons moyenne RMSE. Tant que le critère d’arrêt n’est pas atteint, l’algorithme SVM renvoie la valeur de la moyenne RMSE à l’algorithme d’optimisation pour adapter les valeurs des hyper-paramètres.

83

Dans la partie qui suit, nous allons tout d’abord décrire le principe de chacun des quatre algorithmes d’optimisation étudiés pour ensuite présenter les résultats de la comparaison de leur performance. Notons également que le terme fonction objectif utilisé généralement dans l’optimisation signifie la fonction ou la grandeur que l’on cherche à minimiser. Dans notre cas la fonction objectif est la moyenne des RMSE des 10 validations croisées.

Figure III- 4Schéma global de la procédure d’optimisation de la SVM.

III.4.1 Algorithme génétique

Les algorithmes génétiques (AG) imitent l'évolution et la sélection naturelle afin de résoudre les problèmes d'optimisation [Weile et Michielssen 1997]. Les AG sélectionnent les individus les plus aptes à survivre parmi une population au cours d'une génération. Chaque individu représente un point dans un espace de recherche et correspond à une solution possible. Les individus de la population sont ensuite amenés à subir un processus d'évolution. Les AG sont basés sur une analogie avec la structure génétique et le comportement des chromosomes au sein d'une population d'individus en utilisant les fondements suivants.

Les individus qui réussissent le mieux dans chaque compétition produiront plus de progéniture que ceux qui ont de mauvais résultats.Les gènes des bons individus se propagent dans toute la population, de sorte que deux bons parents produiront parfois des descendants meilleurs que

84

l'un ou l'autre des parents. Ainsi les générations successives deviendront plus adaptées à leur environnement. Après la génération d'une population initiale de manière aléatoire, l'algorithme évolue à travers trois opérations :

1) Sélection : l’AG sélectionne les meilleurs individus (combinaison des hyper-paramètres dans notre cas) qui donnent les minimums de la fonction objectif, et transmet leurs gènes à la génération suivante.

2) Croisement : un croisement est effectué entre les chromosomes des individus sélectionnés au hasard avec une probabilité définie, pour créer deux nouveaux descendants susceptibles d’être meilleurs que leurs parents. Ces nouveaux individus sont introduits dans la prochaine génération de la population.

3) Mutation : une mutation avec une faible probabilité va permettre de maintenir la diversité au sein de la population et d’éviter une convergence prématurée. La mutation consiste alors à changer un bit au hasard dans le chromosome d’un individu.

Le schéma de la figure III-5 illustre le principe de fonction de cet algorithme.

Figure III- 5Schéma global de la procédure d’optimisation de la SVM par l’algorithme

85

III.4.2 Recuit simulé

Le recuit simulé est un algorithme d’optimisation qui simule le comportement des métaux dans le processus du recuit utilisé dans la métallurgie [Kirkpatrick et al. 1983]. Le but du processus du recuit est d’atteindre un état d’équilibre thermodynamique où l’énergie est minimale. Dans l’algorithme de recuit simulé la fonction objectif est représentée par l’énergie du système. L’algorithme de recuit simulé utilise un paramètre fictif de température qui subit une modification selon le programme de refroidissement afin de diminuer la fonction objectif. Le critère « Metropolis » permet de prendre la décision d’accepter ou de refuser la nouvelle solution de la manière suivante :

Si cette modification fait diminuer la fonction objectif (ou l’énergie du système), elle est directement acceptée ; sinon, elle n'est acceptée qu'avec une probabilité égale à 𝑒𝑥𝑝(∆𝐸/𝑇) (où

∆𝐸 est la différence de l’énergie de la solution actuelle et celle de la nouvelle solution, et 𝑇

représente la température).

L’algorithme de recuit simulé contient les 5 étapes essentielles suivantes : 1) fixer la température de départ 𝑇 = 𝑇0 et la solution initiale 𝑥0 ;

2) comparer la solution actuelle et la solution générée dans le voisinage de la solution actuelle selon le critère de Metropolis ;

3) répéter l’étape 2 jusqu'à ce que la condition d’arrêt soit satisfaite ;

4) diminuer la température selon le programme de refroidissement comme par exemple :

𝑻𝒊+𝟏 = 𝜶𝑻𝒊 avec(𝛼 < 1) (III-24)

5) répéter les étapes 2 à 4 jusqu'à ce que le système soit gelé. On peut constater trois phases dans l’algorithme de recuit simulé.

• La température choisie au début est très grande, ce qui permet d’accepter plusieurs solutions, même celles qui ont une énergie supérieure à la solution principale.

• Quand la température baisse, l'algorithme accepte de temps en temps des solutions qui augmentent l’énergie, ce qui peut permettre d’échapper à un minima local.

• Dans la troisième phase la température baisse nettement, ce qui entraîne à refuser la quasi-totalité des solutions qui augmentent l'énergie, et la méthode de recuit simulé devient un algorithme d’optimisation avec une amélioration itérative classique.

86

Nous avons illustré le principe de l’algorithme de recuit simulé dans la figure III-6.

Figure III- 6Schéma global de la procédure d’optimisation de la SVM par l’algorithme

de recuit simulé.

III.4.3 Optimisation par essaims particulaires

L’algorithme d’optimisation par essaims particulaires (PSO) est introduit par James Kennedy et Russell Eberhart. Cet algorithme, inspiré du vol groupé d’oiseaux montre que ses individus harmonisent leurs mouvements en gardant une distance optimale entre eux, et suivent un mouvement global convergeant vers la destination finale [Bai 2010].

Chacune des particules a une position et une vitesse qui lui permet de se déplacer. Chaque particule tente de changer sa position selon sa meilleure position, sa position précédente ainsi que son meilleur voisin grâce à sa capacité de communiquer avec les autres particules afin de converger vers une particule optimale.

Avant de présenter l’algorithme il faut introduire les notions suivantes :

𝑥𝑖(𝑡) : la position d’une particule dans l’espace de recherche à l’instant 𝑡;

87

𝑥𝑝𝑏𝑒𝑠𝑡𝑖(𝑡) : la position de la meilleure solution par laquelle la particule est passée ;

𝑥𝑣𝑏𝑒𝑠𝑡𝑖(𝑡) : la position de la meilleure solution connue de son voisinage ;

𝑝𝑏𝑒𝑠𝑡𝑖 : la meilleure solution de la fonction objectif pour la particule ;

𝑣𝑏𝑒𝑠𝑡𝑖 : la meilleure solution globale connue.

A chaque instant l’algorithme évalue la meilleure position pour chaque particule. Si 𝑓(𝑥𝑖)> 𝑝𝑏𝑒𝑠𝑡𝑖 alors 𝑝𝑏𝑒𝑠𝑡𝑖 = 𝑓(𝑥𝑖) et 𝑥𝑝𝑏𝑒𝑠𝑡𝑖 = 𝑥𝑖

Si 𝑓(𝑥𝑖)> 𝑣𝑏𝑒𝑠𝑡𝑖 alors 𝑣𝑏𝑒𝑠𝑡𝑖= 𝑓(𝑥𝑖) et 𝑥𝑣𝑏𝑒𝑠𝑡𝑖 = 𝑥𝑖

A la fin de chaque itération la position et la vitesse de chaque particule sont modifiées comme suit :

𝒗𝒊 = 𝜳(𝒗𝒊+ 𝝆𝟏(𝒙𝒑𝒃𝒆𝒔𝒕𝒊− 𝒙𝒊) + 𝝆𝟐(𝒙𝒗𝒃𝒆𝒔𝒕𝒊− 𝒙𝒊)) (III-25)

𝒙𝒊 = 𝒙𝒊+ 𝒗𝒊 (III-26)

où Ψ, 𝜌1, 𝜌2 sont des variables aléatoires.

La figure III-7 résume l’algorithme d’optimisation par essaims particulaires.

Figure III- 7Schéma global de la procédure d’optimisation de la SVM par l’algorithme

88

III.4.4 Recherche directe GPS

Les méthodes de recherche directe sont des méthodes de résolution des problèmes d'optimisation qui ne nécessitent aucune information sur les dérivées de la fonction objectif, contrairement aux méthodes d'optimisation traditionnelles qui utilisent des informations sur la dérivée pour rechercher un point optimal. Un algorithme de recherche directe cherche un ensemble de points autour du point actuel, pour lesquels la valeur de la fonction objectif est inférieure à la valeur au point actuel. Ces méthodes sont très pratiques pour résoudre des problèmes pour lesquels la fonction objectif n'est pas différentiable. L’algorithme de recherche par motifs (GPS) est l’une de ces méthodes de recherche directe introduite et analysée par Torczon [Torczon 1997]. L'idée de base est d’effectuer une exploration dans les différentes directions pour une séquence d'itérations afin de diminuer la valeur de la fonction objectif. Par exemple, si le problème d’optimisation est écrit sous la forme :

min 𝑓(𝑥) avec 𝑥 ∈ ℜ𝑑

pour chaque itération 𝑘, l’algorithme évalue la fonction objectif 𝑓(𝑥) à des points autour de la solution courante 𝑥𝑘 dont le but est de trouver un point pour lequel la fonction objectif est plus faible que celle du point courant. Ces points se trouvent à un pas de longueur de ∆𝑘 suivant 2𝑑

directions (𝑑 étant le nombre de paramètres à optimiser). Nous avons utilisé ce type d’opérations de recherche, appelé « recherche par sonde locale », où son centre est le point courant. L’ensemble des points d’une sonde est alors défini par :

𝑃𝑘 = {𝑥𝑘± ∆𝑘𝐷𝑖, 𝑖 = 1, … … . 𝑑} 𝐷𝑖 étant la direction.

Une itération est considérée comme réussie si nous trouvons un point qui diminue la fonction objectif. Dans le cas contraire, c.-à-d. si aucun des points ne permet une diminution de la fonction objectif, l’itération est considérée comme itération échouée. Après chaque itération réussie, l'algorithme passe à la nouvelle solution et la taille du pas augmente pour aller rapidement vers une nouvelle solution. Dans le cas d’une itération échouée l’algorithme conserve la solution actuelle et diminue le pas pour évaluer des points plus proches de la solution actuelle. L’adaptation de la taille du pas se fait comme suit :

𝒌+𝟏= 𝝉∆𝒌 (III-27)

89

L’algorithme de recherche par motifs est présenté dans la figure III-8.

Figure III- 8Schéma global de la procédure d’optimisation de la SVM selon

l’algorithme de recherche par motifs.