Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a...

11
I.INTRODUCTION Depuis que l’ordinateur existe, l’homme n’a cessé de le perfectionner pour qu’il soit le plus rapide et le plus performant, mais rien de cela ne serait possible sans la partie logiciel qui vient s’implanté sur ce support. Le logiciel de par son histoire a lui aussi fait un bon gigantesque récemment et encore plus ces dernières années. A l’aire ou les logiciels les plus rapide du marché ne peuvent plus résoudre certains problèmes (de part leur complexité), l’homme s’inspire de plus en plus de la nature qui l’entoure pour mettre en place des algorithmes simulant le comportement des animaux, leurs actions ou réactions vis-à-vis d’un problème et même les méthodes qu’ils utilisent pour y faire face ! Même si ces méthodes sont sujette à de nombreuses controverses de part leur non- exactitude, ils permettent de trouver facilement et rapidement la solution la plus approchée du l’optimale si ce dernier existe, et reste un moyen très efficace pour traitement de problèmes complexes pouvant prendre des années de calculs sans résultats. Dans ce sujet, nous allons faire la connaissance avec une de ces méthodes, celle-ci est dite « optimisation par essaims de particule » dont l’idée directrice est la

Transcript of Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a...

Page 1: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

I.INTRODUCTION

Depuis que l’ordinateur existe, l’homme n’a cessé de le perfectionner pour qu’il soit le plus rapide et le plus performant, mais rien de cela ne serait possible sans la partie logiciel qui vient s’implanté sur ce support. Le logiciel de par son histoire a lui aussi fait un bon gigantesque récemment et encore plus ces dernières années.

A l’aire ou les logiciels les plus rapide du marché ne peuvent plus résoudre certains problèmes (de part leur complexité), l’homme s’inspire de plus en plus de la nature qui l’entoure pour mettre en place des algorithmes simulant le comportement des animaux, leurs actions ou réactions vis-à-vis d’un problème et même les méthodes qu’ils utilisent pour y faire face !

Même si ces méthodes sont sujette à de nombreuses controverses de part leur non-exactitude, ils permettent de trouver facilement et rapidement la solution la plus approchée du l’optimale si ce dernier existe, et reste un moyen très efficace pour traitement de problèmes complexes pouvant prendre des années de calculs sans résultats.

Dans ce sujet, nous allons faire la connaissance avec une de ces méthodes, celle-ci est dite « optimisation par essaims de particule » dont l’idée directrice est la simulation du comportement collectif des oiseaux à l’intérieur d’une nuée. « Lorsque le soc de la charrue pénètre le sol pour la première fois en automne le champ est vide de tout goéland et quelques minutes après une nuée accompagne le tracteur. Au début du labour un oiseau découvre la source de nourriture et très rapidement un autre arrive et ainsi de suite. Que s’est-il passer ? C’est ce que nous allons comprendre dans ce sujet … »

Page 2: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

II.UN PEU D’HISTOIRE L'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité) et James Kennedy (socio-psychologue) en 1995. Au départ J. Kennedy et R. Eberhart cherchaient à simuler la capacité des oiseaux à voler de façon synchrone et leur aptitude à changer brusquement de direction tout en restant en une formation optimale. Le modèle qu’ils ont proposé à ensuite été étendu en un algorithme simple et efficace d’optimisation.

III.DEFINITIONSIII.1.Optimisation Par Essaims de Particule : L'optimisation1 par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization) est une technique utilisée pour explorer l'espace de recherche d'un problème quelconque pour trouver l'ensemble des paramètres qui maximise/minimise un objectif particulier. Cet objectif est atteint en suivant un algorithme dédié que l’on verra par la suite.

III.2.Notion de voisinage : Le voisinage constitue la structure du réseau social. Les particules à l’intérieur d’un voisinage communiquent entre-elles. En général, pour une nuée d’oiseaux, le voisinage suit trois types de topologies :

Topologie en étoile (Figure1 (a)) : le réseau social est complet, donc une communication complète et une attirance vers la meilleure particule.

Topologie en anneau (Figure1 (b)) : chaque particule communique avec n voisines immédiates. Chaque particule tend à se déplacer vers la meilleure dans son voisinage local.

Topologie en rayon (Figure1 (c)) : une particule "centrale" est connectée à toutes les autres. Seule cette particule centrale ajuste sa position vers la meilleure, si cela provoque une amélioration l’information est propagée aux autres.

Figure 1 : différents types de topologie pour un essaim de particules.

Page 3: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

1 : L'optimisation est le mécanisme par lequel on trouve la valeur maximale ou minimale d'une fonction. Ce mécanisme est utilisé dans plusieurs domaines tels que: la physique, chimie, l'économie, et l’informatique…etc. où le but est de maximiser l'efficacité, la productivité et d'autre mesures.IV.L’ALGORITHME PSO Chaque particule représente une solution potentielle dans l’espace de recherche. La nouvelle position d’une particule est déterminée en fonction de sa propre valeur et celle de ses voisines. Soit x⃗ i ( t ) la position de la particule Pi au temps t, sa position est modifiée en ajoutant une vitesse v⃗i( t) à sa position courante :

x⃗ i ( t )= x⃗i ( t−1 )+ v⃗ i(t)

La vitesse de chaque particule est mise à jour suivant l'équation suivante:

v i(t+1)=ωv i(t)+c 1r 1[ x p i(t)−x i(t)]+c 2r 2[ g(t )−x i(t)]

vi(t) est la vitesse de particule i à l'instant t et x i(t) est la position de particule i à l'instant t, les paramètres w, c1, et c2 (0 ≤ w ≤ 1.2, 0 ≤ c1 ≤ 2, et 0 ≤ c2 ≤ 2) sont des coefficients constants fixés par l'utilisateur, r1 et r2 sont des nombres aléatoires tirés à chaque itération, g(t) est la meilleure solution trouvée jusqu'à l'instant t et xpi(t) est la meilleure solution trouvée par le particule i. C’est le vecteur vitesse qui dirige le processus de recherche et reflète la "sociabilité" des particules.Les variables et paramètres de l’algorithme   : N nombre de particulesx⃗ i ( t ) Position de la particule P iv⃗ivitesse de la particule P ipbest iMeilleure fitness obtenue pour la particule P ix⃗ pbest i Position de la particule P i pour la meilleure fitnessx⃗ gbest i Position de la particule ayant la meilleure fitness de toutesρ1 , ρ2valeurs aléatoires positivesInitialisations   : Initialiser aléatoirement la population.Traitement   : Répéter Pour i de 1 à N faire Si ¿) Alors pbest i←F ( x⃗ i) x⃗ pbest i← x⃗ i Fin Si Si ¿) Alors gbest i←F ( x⃗ i) x⃗ gbest i← x⃗ i Fin Si Fin Pour Pour i de 1 à N faire v⃗i←v⃗ i+ρ1¿ x⃗ i¿+ ρ2¿ x⃗ i¿

Page 4: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

x⃗ i←x⃗ i+ v⃗ i Fin PourJusqu’à ce que (le processus converge)

La variation de la vitesse est proportionnelle à l’éloignement d’une solution par rapport à la solution globale.Les variables aléatoires ρ1 et ρ2 peuvent être définies de la façon suivante :

{ρ1=r1 c1

ρ2=r2 c2

r1 et r2 suivent une loi uniforme sur [0..1] et c1 et c2 sont constantes et représentent une accélération positive, avec c1+c2<¿ 4. Le critère de convergence peut être un nombre fixe d’itérations, suivant la fitness ou bien la variation lorsqu’elle tend vers 0.

On remarque qu’il y a Six paramètres qui rentrent en ligne de compte :

1. La dimension du problème.2. Le nombre de particules.3. Les valeurs des coefficientsρ.4. La taille du voisinage.5. La vitesse maximale.6. L’inertie.

La vitesse peut être limitée par une vitesse maximale V maxet une vitesse minimale V minpour éviter que les particules se déplacent trop rapidement ou trop lentement d’une région à une autre dans l’espace de recherche.Un facteur d’inertie Φ peut être appliqué à la vitesse Pour contrôler l’influence de celle-ci.

V.APPLICATION DE L’ALGORITHME PSO Nous allons dans ce titre appliquer la notion des essaims de particules dans un problème de maximisation, on va essayer de trouver le maximum global d’une fonction en appliquant la théorie des PSO. L’implémentation de ce projet à été réaliser à l’aide du logiciel DELPHI7 qui utilise comme langage de programmation le pascal orienté objet.

La fonction en question s’écrit de la forme :

exp−x−sin (10 x)

La courbe décrite par cette fonction est représentée dans la figure qui suit (Figure 2)

Page 5: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

Figure 2 : Représentation de la courbe : exp−x (1+sin (10x )).

Pour commencer, nous allons générer une population de particules réparties aléatoirement sur le graphe.

La courbe représente la fonction sous 20 points, et nous choisissant de prendre une population de 5 particules pour cette expérience.

Comme paramètres, r1 et r2 qui suivent une loi uniforme sur [0..1], et on a pris la valeur de 2 pour c1 et c2 (accélération positive maximale)

Le paramètre qui influx sur la vitesse est très important, celui-ci notéΦ et qui représente le facteur d’inertie comme dit précédemment a été fixé à 0.8 après plusieurs essais expérimentales.

La figure 3 montre la génération de la population et sa position sur le graphe.

Figure 3 : Représentation de la population de particules.

On remarque dès le début que la population se rapproche instinctivement vers la solution optimale globale comme montré dans la figure 4.

Page 6: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

Figure 4 : Représentation de la population de particules à l’itération 5. Plus on avance dans le nombre d’itérations plus les particules se rapprochent de l’optimale, et dès qu’une des particules l’a atteint les autres ne tardent pas a la suivre pour enfin la rejoindre dans l’optimum globale à la position 3 avec la valeur 1.03781… vers l’itération 180 comme montré dans la figure 5.

Figure 5 : Résultat de la l’algorithme PSO.

VI.AUTRE DOMAINES D’APPLICATIONS Dans ce projet, nous avons vu l’utilisation des PSO dans la recherche d’un optimum pour une fonction donné, mais cet algorithme qui est lui-même tiré de la notion qu’utilise les nuée d’oiseaux pour se déplacer s’étend encore bien loin. Citons quelques uns :

La restauration d’image qui est converti en un problème d’optimisation et qui, dans ce cas, présente une fonction coût et qui doit être optimisée. La solution qui donne la valeur optimale constitue l’image désirée.

Page 7: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

Recherche de minimas dans les émissions de champs magnétique. Le principe de la nuée d'oiseaux est un nouveau concept de

direction d'entreprise ; celui-ci place l'individu et les valeurs au centre de l'intérêt et intègre une attitude de direction.

COCLUSION

Les méta-heuristiques constituent une stratégie de résolution de plus en plus privilégiée. Une des particularités importantes des méta-heuristiques, réside dans l'absence d'hypothèses particulière sur la régularité de la fonction objective. Aucune hypothèse sur la continuité de cette fonction n'est requise, ses dérivées successives ne sont pas nécessaires, ce qui rend très vaste le domaine d'application.

L'optimisation par essaims de particules présente un fort potentiel d'application pratique, mais le choix de paramètres reste l'un des problèmes de l'optimisation par particules d'essaim, c'est très difficile de trouver des bons paramètres adaptés à la structure du problème.

Page 8: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

Les résultats obtenues par PSO sont très satisfaisant et confirment bien la validité de l’algorithme, sa simplicité d’implémentation lui donne un avantage conséquent, néanmoins par l’expérimentation, on a remarqué que la qualité des solutions ne peut être garantie même en augmentant le nombre d’itérations.

REFERENCESJerome Onwunalu, Louis J. Durlofsky, « Application of a particle swarm optimization algorithm for determining optimum well location and type », Smart Fields Meeting, 8 Avril 2009.

Maurice Clerc, « L’optimisation par essaim particulaire », 2003.

Antoine Dutot et Damien Olivier, « Optimisation par essaim de particules Application au problème des n-Reines », Laboratoire Informatique du Havre, Université du Havre, 25 rue Philippe Lebon, 76600 Le Havre.

Page 9: Web viewL'optimisation par Essaim de particule (OEP) ou bien (PSO Particle swarm optimization), a été inventée par Russel Eberhart (ingénieur en électricité

James Blondin, « Particle Swarm Optimization: A Tutorial », 4 Septembre 2009.