pso overview v2

Upload: mohammed-lamsalli

Post on 06-Jul-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 PSO Overview v2

    1/4

    Optimisation par essaim particulaireGuillaume CALAS

    [email protected]

    Spécialisation Sciences Cognitives et Informatique Avancée14-16 rue Voltaire,

    94270 Le Kremlin-Bicêtre,France

     Mots clés: optimisation, métaheuristiques, essaim de particules, essaim particulaire, OEP,  particule swarm optimisation,PSO.

    Résumé

    L’apparition des algorithmes évolutionistes à fait l’effet d’une bombe dans les domaines de la résolution

    de problèmes complexes, et spécialement dans l’optimisation de fonction avec contraintes. L’optimisationpar essaim de particules se présente comme une alternative aux algorithmes génétiques et aux colonies defourmis pour l’optimisation de fonctions non-linéaires.

    Ce document a pour objet de présenter succinctement l’origine de cette méthode avant d’aborder sa miseen œuvre et les réglages de ses paramètres.

    Table des matières

    1 Introduction   1

    2 Applications   1

    3 Présentation de la méthode   13.1 Principe   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.2 Formalisation   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.3 Configuration de la méthode   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    3.3.1 Nombre de particules  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.3.2 Topologie du voisinage  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.3.3 Coefficients de confiance  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.3.4 Vitesse maximale et coefficient de constriction   . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.3.5 Facteur d’inertie   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.3.6 Initialisation de l’essaim   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33.3.7 Critères d’arrêt   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    3.4 Algorithme de synthèse  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    mailto:[email protected]:[email protected]

  • 8/18/2019 PSO Overview v2

    2/4

    Optimisation par essaim particulaire   [SCI A] EPITA 2009

    1 Introduction

    L’optimisation par essaim de particules (Particle SwarmOptimization (PSO) dans la langue de SHAKESPEARE) estune méthode d’optimisation stochastique, pour les fonc-tions non-linéaires, basée sur la reproduction d’un compor-tement social et développée par le Dr. E BERHART et le Dr.KENNEDY [4, 2] en 1995.

    L’origine de cette méthode vient des observations faiteslors des simulations informatiques de vols groupés d’oi-seaux et de bancs de poissons de REYNOLD [5], H EPPNERet GRENANDER   [3]. Ces simulations ont mis en valeurla capacité des individus d’un groupe en mouvement àconserver une distance optimale entre eux et à suivre unmouvement global par rapport aux mouvements locaux deleur voisinage.

    D’autre part, ces simulations ont également révélél’importance du mimétisme dans la compétition qui opposeles individus à la recherche de la nourriture. En effet,les individus sont à la recherche de sources de nourriturequi sont dispersés de façon aléatoire dans un espace derecherche, et dès lors qu’un individu localise une sourcede nourriture, les autres individus vont alors chercher à lereproduire.

    Ce comportement social basé sur l’analyse de l’en-vironnement et du voisinage constitue alors une méthodede recherche d’optimum par l’observation des tendances

    des individus voisins. Chaque individu cherche à optimiserses chances en suivant une tendance qu’il modère par sespropres vécus.

    2 Applications

    Les essaims de particules sont essentiellement utilisés afinde trouver l’optimum de fonctions non-linaires. Pour cetteraison, cette méthode est utile pour optimiser l’entraîne-ment des réseaux de neurones.

    3 Présentation de la méthode3.1 Principe

    L’optimisation par essaim de particules repose sur un en-semble d’individus originellement disposés de façon aléa-toire et homogène, que nous appelerons dès lors des parti-cules, qui se déplacent dans l’hyper-espace de recherche etconsituent, chacune, une solution potentielle.

    Chaque particule dispose d’une mémoire concernant sameilleure solution visitée ainsi que la capacité de communi-quer avec les particules constituant son entourage. À partir

    de ces informations, la particule va suivre une tendancefaite, d’une part, de sa volonté à retourner vers sa solution

    optimale, et d’autre part, de son mimétisme par rapport auxsolutions trouvées dans son voisinage.

    À partir d’optimums locaux et empiriques, l’ensembledes particules va, normalement, converger vers la solution

    optimale globale du problème traité.

    3.2 Formalisation

    Un essaim de particule est caractérisé par :

    a)   le nombre de particules de l’essaim, noté nb (3.3.1) ;

    b)   la vitesse maximale   d’une particule, notée  −→v  max(3.3.4) ;

    c)  la topologie et la taille du voisinage d’une particulequi définissent son réseau social (3.3.2).

    d)   l’inertie d’une particule, notée  Ψ (3.3.5) ;e)   les coefficients de confiance, notés ρ1 et ρ2, qui pon-

    dèrent le comportement conservateur (ie. la tendanceà retourner vers la meilleure solution visitée) et lepanurgisme (ie. la tendance à suivre le voisinage)(3.3.3).

    Une particule est caractérisée, à l’instant t , par :

    •   −→ x  i (t ) : sa position dans l’espace de recherche ;

    •   −→v  i (t ) : sa vitesse;

    •   −→ x   pbest i   : la position de la meilleure solution parlaquelle elle est passée ;

    •   −→ x  vbest i  : la position de la meilleure solution connuede son voisinage;

    •   pbest i : la valeur de fitness de sa meilleure solution ;

    •   vbest i  : la valeur de  fitness de la meilleure solutionconnu du voisinage ;

    Algorithme 1 version simpliste (sans voisinage)ENTRÉES:   0 <  ρ    pbest i alors

     pbest i = F (−→ x   i)

    −→ x   pbest i =

    −→ x   i

    fin si−→v   i =

    −→v   i +ρ(−→ x   pbest i −

    −→ x   i)−→ x   i =

    −→ x   i +

    −→v   i

    fin pour jusqu’à (un des critères de convergence est atteint)

    EPITA, 14-16 rue Voltaire, 94270 Le Kremlin-Bicêtre, France 1

  • 8/18/2019 PSO Overview v2

    3/4

    Optimisation par essaim particulaire   [SCI A] EPITA 2009

    3.3 Configuration de la méthode

    3.3.1 Nombre de particules

    La quantité de particules allouées à la résolution du pro-

    blème dépend essentiellement de deux paramètres : la taillede l’espace de recherche et le rapport entre les capacités decalcul de la machine et le temps maximum de recherche.Il n’y a pas de règle pour déterminer ce paramètre, fairede nombreux essais permet de se doter de l’expériencenécessaire à l’appréhension de ce paramètre.

    3.3.2 Topologie du voisinage

    La topologie du voisinage défini avec qui chacune desparticules va pouvoir communiquer. Il existe de nombreusescombinaisons dont les suivantes sont les plus utilisées :

    a)   topologie en étoile   : chaque particule est reliée àtoutes les autres, ie. l’optimum du voisinage estl’optimum global ;

    b)   topologie en anneau : chaque particule est reliée àn particules (en général,  n = 3), c’est la topologie laplus utilisée ;

    c)   topologie en rayon : les particules ne communiquentqu’avec une seule particule centrale ;

    FIGURE  1 – (a) anneau (avec   n =  2), (b) rayon, (c)étoile.Sous licence Creative Common Attribution ShareAlike 2.5.

    Le voisinage géographique auquel nous sommes ame-nés à penser en premier lieu n’est pas nécessairementpertinent car, d’une part, il s’agirait d’un voisinage troplocal, et d’autre part car la sociabilisation des particules tend

    à rendre tout voisinage social en voisinage géographique.Enfin, c’est un voisinage très lourd en terme de calculs carnécessitant de recalculer le voisinage de chaque particule àchaque itération.

    3.3.3 Coefficients de confiance

    Les variables de confiance pondères les tendances de laparticule à vouloir suivre son intinct de conservation ou sonpanurgisme. Les variables aléatoires  ρ1 et  ρ2 peuvent êtredéfinies de la façon suivante :

    ρ1 = r 1.c1ρ2 = r 2.c2

    où r 1 et r 2 suivent une loi uniforme sur [0..1] et c1 et c2 sontdes constantes positives déterminées de façon empirique etsuivant la relation c1 + c2 ≤ 4.

    3.3.4 Vitesse maximale et coefficient de constric-tion

    Afin d’éviter que les particules ne se déplacent trop rapi-dement dans l’espace de recherche, passant éventuellementà côté de l’optimum, il peut être nécessaire de fixer unevitesse maximale (notée

     −→V  m ax) pour améliorer la conver-

    gence de l’algorithme.

    Cependant, on peut s’en passer si on utilise un coeffi-cient de constriction  κ  — introduit par Maurice CLERC [1]— et qui permet de resserrer l’hyper-espace de recherche.

    L’équation de la vitesse devient alors :

    κ  = 1−1ρ

    +

     |ρ2−4ρ|

    2

    avec ρ = ρ1 +ρ2  > 4.

    −→v   i(t ) =   κ .(−→v   i(t −1)

    +   ρ1.(−→ x   pbest i −

    −→ x  i (t ))

    +   ρ2.(−→ x  vbest i −

    −→ x   i(t )))

    Les études de SHI  et EBERHART indiquent que l’utili-sation d’un coefficient de constriction donne généralement

    un meilleur taux de convergence sans avoir à fixer de vitessemaximale. Cependant, dans certains cas, le coefficient deconstriction seul ne permet pas la convergence vers lasolution optimale pour un nombre d’itérations donné. Pourrésoudre ce problème, il peut être intéressant de fixer−→v   max =

    −→ x   max en plus du coefficient de constriction, ce qui,selon les études de SHI  et EBERHART, permet d’améliorerles performances globales de l’algorithme.

    3.3.5 Facteur d’inertie

    Le facteur d’intertie  Ψ  — introduit par SHI  et EBERHART

    — permet de définir la capacité d’exploration de chaqueparticule en vue d’améliorer la converge de la méthode.Une grande valeur de  Ψ  (> 1) est synonyme d’une grandeamplitude de mouvement et donc,   in fine, d’explorationglobale.   A contrario, une faible valeur de   Ψ   (

  • 8/18/2019 PSO Overview v2

    4/4

    Optimisation par essaim particulaire   [SCI A] EPITA 2009

    La taille du facteur d’inertie influence directement lataille de l’hyper-espace exploré et aucune valeur de  Ψ nepeut garantir la convergence vers la solution optimale.

    Les études menées par S HI et EBERHART indiquent une

    meilleure convergences pour Ψ ∈ [0.8,1.2]. Au delà de 1.2,l’algorithme tend à avoir certaines difficultées à converger.

    Enfin, il est également possible de faire diminuer lefacteur d’inertie au cours du temps, un peu à la manière de latempérature dans un algorithme de recuit simulé (Simulated 

     Annealing). De bons résultats ont été trouvés pour unevaleur décroissant linéairement de 0.9 à 0.4.

    Pour de plus amples informations sur le réglage de ce

     paramètre, veuillez vous référer à la thèse de   VAN DEN

    BERGH[6 ].

    3.3.6 Initialisation de l’essaim

    La position des particules ainsi que leur vitesse initialedoivent être initialisés aléatoirement selon une loi uniformesur   [0..1]. Cependant, en ce qui concerne la position desparticules, il est préférable d’utiliser un générateur de sé-quence de SOBOL qui est plus pertinent dans la dispositionhomogène des particules dans un espace de dimension  n.

    3.3.7 Critères d’arrêt

    Comme indiqué précédemment, la convergence vers la

    solution optimale globale n’est pas garantie dans tous lescas de figure même si les expériences dénotent la grandeperformance de la méthode. De ce fait, il est fortementconseillé de doté l’algorithme d’une porte de sortie en défi-nissant un nombre maximum d’itération (que nous noteronsnbIter max).

    L’algorithme doit alors s’exécuter tant que l’un descritères de convergence suivant n’a pas été atteint :

    •   nbIter max a été atteint ;

    • la variation de la vitesse est proche de 0 ;

    • le fitness de la solution est suffisant.

    3.4 Algorithme de synthèse

    Algorithme 2 version simpliste (avec voisinage)répéter

    pour i = 1 jusqu’à nb fairesi F (−→ x   i) >  pbest i alors

     pbest i = F (−→ x   i)−→ x   pbest i =

    −→ x   i

    fin sisi F (−→ x   i) >  vbest i alors

    vbest i =  F (−→ x   i)

    −→ x   vbest i =−→ x   i

    fin sifin pourpour i = 1 to nb faire−→v   i =  κ (

    −→v   i +ρ1(−→ x   pbest i −

    −→ x   i) +ρ2(−→ x   vbest i −

    −→ x   i))

    −→ x   i = −→ x   i +−→v   ifin pour

     jusqu’à (un des critères de convergence est atteint)

    Références

    [1] Maurice Clerc and James Kennedy. The particleswarm - explosion, stability, and convergence ina multidimensional complex space. IEEE Trans.Evolutionary Computation, 6(1) :58–73, 2002.

    [2] Russell C. Eberhart, Yuhui Shi, and James Kennedy.Swarm Intelligence. The Morgan Kaufmann Seriesin Artificial Intelligence. Morgan Kaufmann, SanFrancisco, CA, USA, 2001.

    [3] F. Heppner and U. Grenander. A stochastic nonlinearodel for coordinated bird flocks. AAAS Publication,Washington, DC, 1990.

    [4] Riccardo Poli, James Kennedy, and Tim Blackwell.Particle swarm optimization. Swarm Intelligence,1(1) :33–57, 2007.

    [5] Craig W. Reynolds. Flocks, herds, and schools : A

    distributed behavioral model. Computer Graphics,21(4) :25–34, 1987.

    [6] F. van den Bergh. An Analysis of Particle SwarmOptimizers. PhD thesis, Department of ComputerScience, University of Pretoria, November 2002.

    EPITA, 14-16 rue Voltaire, 94270 Le Kremlin-Bicêtre, France 3