• Aucun résultat trouvé

4.3.1 Définition et concepts

Les algorithmes génétiques sont des méthodes stochastiques d’optimisation inspirées de la gé-nétique classique. Ce sont des algorithmes d’exploration fondés sur les mécanismes de la sélection naturelle et de la génétique. Ils utilisent à la fois les principes de la survie des structures les mieux adaptées, et les échanges d’informations aléatoires, parfois guidés, pour former un algorithme d’ex-ploration qui possède certaines des caractéristiques de l’exd’ex-ploration humaine. Ils ont été développés par John Holland à l’université du Michigan [50].

Ces algorithmes utilisent lathéorie de Darwin sur l’évolution des espèces. Elle repose sur trois prin-cipes : le principe de variation, le principe d’adaptation et le principe d’hérédité.

— Leprincipe de variation:

Chaque individu au sein d’une population est unique. Ces différences, plus ou moins impor-tantes, vont être décisives dans le processus de sélection.

— Leprincipe d’adaptation:

Les individus les plus adaptés à leur environnement atteignent plus facilement l’âge adulte.

Ceux ayant une meilleure capacité de survie pourront donc se reproduire davantage.

— Leprincipe d’hérédité:

Les caractéristiques des individus doivent être héréditaires pour pouvoir être transmises à leur descendance. Ce mécanisme permettra de faire évoluer l’espèce pour partager les caractéris-tiques avantageuses à sa survie.

On retrouve alors des concepts semblables à ceux de la biologie, tels que :

— Génotypeouchromosome:

Encore appelé individu, c’est le codage sous forme de gêne, d’une solution potentielle à un problème d’optimisation.

— Gène:

C’est un élément ou une caractéristique d’un chromosome.

— Phénotype:

C’est la valeur d’une solution potentielle, i.e. son image par la fonction-objectif.

— Lasélection:

C’est le choix des individus les mieux adaptés afin d’avoir une population de solutions la plus proche de converger vers l’optimum global.

Cet opérateur est l’application du principe d’adaptation de la théorie de Darwin.

— Lecroisement:

Encore appeléenjambementou crossing-over, c’est le mélange par la reproduction des parti-cularités des individus choisis.

Celui-ci permet le brassage génétique de la population et l’application du principe d’hérédité de la théorie de Darwin.

— Lamutation:

C’est une altération aléatoire des particularités d’un individu, selon un facteur de mutation. Ce facteur est la probabilité qu’une mutation soit effectuée sur un individu.

Cet opérateur est l’application du principe de variation de la théorie de Darwin et permet, par la même occasion, d’éviter une convergence prématurée de l’algorithme vers un extremum local.

L’algorithme 5 donne le speudocode de l’algorithme génétique classique.

Algorithme 5Un algorithme génétique Initialisation de la population

Evaluation des fonctions objectif Calcul de l’efficacité

pouri=1àMaxIterfaire Sélection aléatoire

Sélection proportionnelle à l’efficacité Croisement

Mutation

Evaluation des fonctions objectif Calcul de l’efficacité

fin pour

Le fonctionnement d’un algorithme génétique traitant un problème d’optimisation multi-objectif est présenté à la figure 4.1.

FIGURE4.1 – Fonctionnement d’un AG pour un POM

Avec :

1 - Initialisation de la population.

2a - Evaluation de l’efficacité des individus de la population.

2b - Transformation vecteur/efficacité.

3 - Croisement.

4 - Mutation.

5 - Sélection.

Pour le traitement des POM, deux familles de méthodes sont envisageables :

— Lesméthodes non agrégatives:

Dans ces méthodes, il n’y a pas fusion des différentes fonctions objectif pour se ramener à un problème d’optimisation mono-objectif. On peut citer le VEGA (Vector Evaluated Genetic Algorithm).

— Lesméthodes agrégatives:

Le but de ces méthodes est de se ramener à un problème d’optimisation mono-objectif en utilisant une fonction objectif équivalente.

On peut citer : le MOGA (Multiple Objective Genetic Algorithm), le NSGA (Non dominated Sorting Genetic Algorithm), le NPGA (Niched Pareto G.A.), le WARGA (Weighted Average Ranking G.A.).

4.3.2 Présentation du NSGA II

Le NSGA II est une méthode Pareto élitiste, i.e. qu’elle utilise la notion de dominance de Pareto, et conserve les solutions Pareto-optimales pour une réintroduction dans de nouvelles populations.

Proposée par Deb et al. en 2002 [51], elle est moins complexe que le NSGA dont elle corrige les failles qui sont [52] :

— la complexité de calcul ;

— l’approche non-élitiste augmentant le risque de perdre des solutions potentiellement bonnes et par conséquent la convergence prématurée vers un optimum local se produit fréquemment ;

— la fonction desharingqui nécessite l’intervention humaine pour fixer certains paramètres.

Ainsi, les nouveautés apportées par le NSGA II sont :

— une méthode de tri rapide

Il s’agit de la notion de tri à base de non dominance, qui réduit la complexité de l’algorithme.

C’est une procédure de recherche des solutions non dominées suivant le principe de dominance de Pareto. Tout d’abord, un premier groupe d’individus est classé suivant ce concept et forme alors un front de solutions non dominées. Les individus de ce groupe sont alors exclus du reste de la population qui subit un autre classement. Ensuite un second groupe de solutions non dominées est trouvé et les membres de ce groupe sont à leur tour exclus de la population. Le

processus de classement se poursuit ainsi à chaque fois avec la population restante jusqu’à ce que toutes les solutions soient classées dans un groupe de solutions non dominées.

— la distance de crowding

Pour une solutioni on appelle« crowding distance »la distance moyenne entre les deux points (i−1) et (i+ 1) encastrant le plus large cuboïde contenant uniquement la solutioni.

La figure 4.2 illustre la distance de crowding.

FIGURE4.2 – Distance de crowding

Encore appeléedistance de surpeuplement, ladistance de crowdingpermet d’opérer le choix entre les individus d’un même front afin d’assurer une uniformité de dispersion des solutions sur le front. L’individu ayant la plus grande distance est sélectionné.

Le principal avantage de cette procédure est qu’elle ne fait pas intervenir de paramètres de réglage utilisé par les autres algorithmes.

— l’élitisme

C’est la conservation des solutions Pareto-optimales pour une éventuelle insertion dans de nou-velles populations.

Fonctionnement du NSGA II

Le NSGA II commence par la génération, de façon aléatoire, d’une population initialeP0 de tailleN.

Une fois générée, cette dernière sera triée à base de non dominance. Ainsi, chaque individu (solution) se fait attribuer une fitness factice égale à son niveau de non-dominance. Ensuite, sur la population initiale, seront appliquées les opérations génétiques (croisement et mutation), pour donner une popu-lation filleQ0de tailleN. Après, cette première procédure, une boucle commence. Tant que le critère

d’arrêt, i.e. le nombre de générations, n’est pas vérifié, les populations, parents et enfants, sont mélan-gées (Rt =Pt∪Qt), puis tirées à base de non dominance pour former différents fronts (F1,F2, ...,Fn).

Ensuite, une nouvelle population de parents,Pt+1, de tailleN est créée à base de fronts non-dominés.

À l’aide de l’opérateur de comparaison de distance de crowding (mesure de diversité), le dernier front admis dansPt+1est trié à base de crowding, ce qui assure une sélection élitiste. Après avoir crééPt+1

de tailleN, une population d’enfantsQt+1est générée en utilisant les opérateurs génétiques (sélection, recombinaison et mutation).

Ce fonctionnement est illustré à la figure 4.3.

FIGURE4.3 – Principe de fonctionnement du NSGA II

4.4 Revue de littérature sur la taille et le placement optimaux de