WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Recalage d'images medicales multimodales par evolution differentielle adaptative


par Elaggoune ABLA
Université Mentouri de Constantine STIC - Master Informatique 2012
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Chapitre 3 :

«If evolution really works, how come mothers only have two hands? »

Milton Berle

1. Chapitre 3 Évolution différentielle

38

Introduction

Évolution Différentielle (ED) est une heuristique de recherche introduite par Storn et Price en 1997. C'est un algorithme d'optimisation globale simple mais très efficace. Et qui fut initialement créé pour résoudre des problèmes continus. L'ED est aussi devenu un outil puissant pour résoudre les problèmes d'optimisation qui se posent dans les applications financières (pour l'ajustement des modèles sophistiqués et pour effectuer la sélection du modèle) [Ardia, Boudt, 2011] et dans les applications en temps réelle [Draa, 2011].

Dans ce qui suit, nous expliquons l'algorithme à évolution différentielle, nous donnons ses principes, ses variantes, ses avantages et ses limites.

2. Principe de l'évolution différentielle

Évolution différentielle a été conçue comme une méthode de recherche parallèle, directe, et stochastique. L'idée générale de cet algorithme est basée sur l'utilisation d'une nouvelle stratégie de mutation. Elle consiste à ajouter la différence vectorielle pondérée entre deux individus à un autre. Ensuite, une opération de croisement entre l'individu mutant et l'individu correspondant de la population aura lieux. Finalement, une sélection gloutonne entre ces deux, le père et le fils, va décider lequel des deux, ayant la meilleure fitness, survivra dans la prochaine génération [Draa, 2011].

Dans sa version de base il existe trois paramètres : la taille de la population NP, le taux de croisement CR et le facteur de différence F.

Les individus (solutions) sont représentés par des vecteurs M-dimensionnels de valeurs réelles, où M est le nombre des paramètres à optimiser et NP est la taille de la population. Un algorithme à évolution différentielle peut être présenté comme suit [Ston, price, 1997] :

2.1. Mutation différentielle

Une opération de mutation consiste à créer un nouvel individu fils correspondant à un individu père à partir de trois autres individus choisis aléatoirement selon l'équation (3.1) [Ston, price, 1997] :

, #177;1 = 1, #177; ( 2, 3, ) (3.1)

Où : i, r1, r2, r3 {1,...... NP} sont des entiers mutuellement différents, et F est un facteur

constant réel positif servant à contrôler la variation différentielle ( 2, 3, ).

Chapitre 3 Évolution différentielle

Le principe de cette mutation est illustré dans la figure 3.1.

2.2 Croisement différentielle

Le croisement est introduit en vue d'augmenter la diversité de la population, il combine l'individu mutant obtenu par l'opération de mutation avec l'individu cible pour générer

un individu d'essai selon l'équation (3.2) [Ston, price, 1997] :

, 0,1 > (0, ) . (3.2)

39

,

Où : (0, 1) est un nombre aléatoire entre 0 et 1, et CR [0, 1] est le taux de croisement.

L'ajout de la condition 0, . permet d'éviter de créer des clones en s'assurant que les

nouvelles solutions aient au moins une composante issue du vecteur mutant [Mathieu, 2008].

Figure 3.1 Mutation différentielle [Dutech, 2010].

Ce croisement (développé par Stone et Price) est appelé croisement binomial. Il existe un autre type de croisement fréquemment utilisé dans des variantes plus récentes de l'ED que celle de Storn et Price, c'est le croisement exponentiel. Dans ce type de croisement, à partir d'une position choisie aléatoirement, T composants successifs de l'individu mutant, sont transmis à l'individu d'essai [Draa, 2011], comme le montre la figure 3.2.

Chapitre 3 Évolution différentielle

40

2.3 Sélection

Pour la sélection, toutes les solutions dans la population ont la même chance d'être sélectionnées comme des parents, selon la fonction d'adaptation. La sélection entre l'individu cible et l'individu d'essai, va décider lequel des deux individus survivra dans la prochaine génération, selon la qualité de leurs finesses, comme indiqué dans l'équation suivante [Ston, price, 1997 ; Draa, 2011 ; Neggaz et Benyettou] :

X= , < ( )

> ( ) (3.3)

,

Figure 3.2 Croisement différentiel : a) croisement binomial, b) croisement exponentiel
[Purcina, Saramago, 2008].

2.4Critère d'arrêts

Le critère d'arrêt d'un AED est généralement l'un des suivants :

a) Temps écoulé : L'algorithme s'arrête s'il n'y a pas un changement de la fonction fitness d'une population pour un nombre de génération spécifié [Kajee-Bagdadi, 2007].

b) L'obtention de la qualité requise de la fonction d'adaptation [Draa, 2011].

c) Nombre maximal de génération : L'algorithme s'arrête quand le nombre maximal de génération est atteint [Kajee-Bagdadi, 2007].

Chapitre 3 Évolution différentielle

Le principe général du fonctionnement d'un algorithme à évolution différentielle est présenté par l'algorithme suivant :

Algorithme 3.1 Évolution différentielle (ED)

,

Début

G 1

Choisir NP, F et CR

PG initialiser la population aléatoirement

Tant que (le critère d'arrêt n'est pas atteint) Faire Pour (chaque individu , de PG) Faire

Choisir les parents auxiliaires , , , et

Créer l'individu enfant

,

en utilisant la mutation et le

Croisement différentiels

Appliquer la sélection + + Meilleur(
Fin Pour

G G+ 1

Fin tant que Fin

,

, , )

DE/rand to best /1:

, = , + , , ) + ( 1, 2, . (3.4)

41

3. Variantes pour l'évolution différentielle

L'algorithme à évolution différentielle est connu sous la forme DE/x/y/z, où la variable x est le vecteur de base pour la mutation. La sélection de ce vecteur est purement aléatoire (rand), mais il existe également deux autres versions permettant de favoriser le meilleur vecteur (best), (rand-to-best). La variable y détermine le nombre de vecteurs de différences utilisés dans la mutation de x. La variable z est le mode de croisement utilisé, exponentiel (exp) ou binomial (bin).

Les variantes d'AEDs diffèrent généralement entre eux par le type de mutation utilisé qui permet être résumés dans les équations suivants [Ston, price, 1997 ; Neggaz et Benyettou] :

DE/rand/1 :

= 3, + 2, . (3.4)

, 1,

DE/best /1 : , = , + 2, . (3.4)

1,

DE/rand/2 :
DE/best /2 :

= 1, + 3, ) + ( 4, 5, . (3.4)

, 2,

= , + 2, ) + ( 3, 4, . (3.4)

, 1,

Chapitre 3 Évolution différentielle

Où :

,

42

: Individu de la génération courante G.

x : ensemble de population et F : constante de mutation [0,2].

, , 1, , 2, , 3, , 4, ,, sont aléatoirement choisis dans la génération courante.

4. Avantages et limites de l'évolution différentielle

4.1 Avantages de l'évolution différentielle

On peut citer les avantages d'évolution différentielle dans les points suivants [Das et Suganthan, 2011 ; Draa, 2011 ; Karaboga, Okdem, 2004] :

- L'ED est plus simple à implémenter qu'autres approches évolutionnaires. Pour cette raison est le plus utilisé par les non-informaticiens.

- Trouver le minimum global réel quel que soit les valeurs de paramètres initiales et convergence rapide.

- On peut contrôler AED sans difficultés car il possède un nombre de paramètres de contrôles limité (CR, F et NP dans la version de base).

- La complexité spatiale de l'ED est réduite, quand on la compare à d'autres algorithmes performants célèbres tels que le CMA-ES. Cette caractéristique permet d'étendre l'ED pour résoudre des problèmes d'optimisation de grandes dimensions.

- Malgré sa simplicité, l'évolution différentielle offre des performances remarquablement meilleures que celles offertes par plusieurs autres approches d'optimisation, notamment les AEs et le PSO.

4.2 Limites de l'évolution différentielle

Malgré son efficacité et sa robustesse, l'ED souffre principalement des limites

suivantes [Draa, 2011] :

- Comme tous autres algorithmes d'optimisation, la performance d'AED est très

sensibles des valeurs des paramètres F, CR et NP.

- le choix des paramètres est très dépendant du problème à résoudre.

- Le problème de convergence prématurée.

- Comme tout autre AE, la performance d'un AED se détériore avec la croissance de

la dimension de l'espace de recherche.

Chapitre 3 Évolution différentielle

43

? Dans, l'évolution différentielle, le concept de voisinage, concept clé dans les stratégies d'évolution est manquant.

5. Conclusion

Dans ce chapitre on a présenté l'évolution différentielle : ses principes, son comportement général, quelques variantes de l'évolution différentielle ont été abordées, ainsi que ses avantages et ses limites.

Dans le chapitre suivant, nous présenterons deux nouveaux algorithmes à évolution différentielle pour le recalage d'images, à savoir : un algorithme différentiel linéairement adaptatif et un algorithme différentiel périodiquement adaptatif.

précédent sommaire suivant






La Quadrature du Net

Ligue des droits de l'homme