• Nenhum resultado encontrado

Partie III Stratégies de planification wLAN 146

6.2 Algorithme multiobjectif

CHAPITRE 6. HEURISTIQUES DE PLANIFICATION

CHAPITRE 6. HEURISTIQUES DE PLANIFICATION

les solutions non-dominées obtenues par toutes les k recherches tabou. Voici le macro- algorithme qui présente une itération de recherche de l’heuristique implantée :

A l’itération i :

1- Pour chaque solution S~ck du front courant Fc(i) :

a− Calcul du voisinage de position de la solution V(S~ck);

b− Sélection de l’ensemble PR(V(S~c)k) des solutions non-dominées de rang R≤Rmax de l’ensemble V(S~ck);

c− Ajout de PR(V(S~c)k) dans le front optimal FP P ;

d− Sélection aléatoire d’une des solutions de PR(V(S~c)k) et ajout dans le nouveau front courant Fc(i+ 1)

2- Suppression des solutions dominées de rang R >0 du front optimal FP P; 3- Mise à jour de la liste tabou pour chaque solution du nouveau

front courant Fc(i+ 1).

Fig.6.12 – Macro-algorithme de l’heuristique multiobjectif.

Calcul du nouveau front de recherche courant Fc(i+ 1).

Le voisinage de chacune des K solutions du front courant est déterminé comme dans l’algorithme tabou mono-objectif (cf.algorithme de construction d’un voisinage de position p.176). Pour chaque construction du voisinage d’une solution S~ck, l’ensemble PR(V(S~c)k) des solutions non-dominées de rang inférieur ou égal à R est extrait. PR(V(S~c)k) peut s’assimiler à une bande de Pareto qui contient toutes les solutions de rang intérieur àR.

Les ensemblesPR(V(S~c)k), k∈[1..K]issus desKsolutions sont utilisés pour constituer le nouveau front de recherche courantFc(i+1).Fc(i+1)est construit en ajoutant une solution de chaque ensemblePR(V(S~c)k), k∈[1..K]. Ces solutions sont sélectionnées aléatoirement selon une loi de probabilité uniformément répartie.

Il est possible, dans une évolution de l’heuristique, d’introduire d’autres critères de choix. On pourrait par exemple guider la recherche de chaque solution vers un compromis fixé à l’avance. Par exemple, choisir une solution qui s’approche le plus d’une direction fixée au lancement de l’algorithme. Cette approche revient à une agrégation des critères mais elle a l’avantage de définir la direction optimale sans avoir à choisir des coefficients de pondération qui sont biaisés par la recherche.

Obtention du front de Pareto optimal FP P.

Le front optimal est obtenu après avoir uni tous les ensembles PR(V(S~c)k), k ∈ [1..K] issus des voisinages des solutions courantes au front optimal de l’itération précédente :

FP P(i+ 1) =FP P(i)∪ PR(V(S~c)k), k∈[1..K]

Comme l’union de ces ensembles présente des solution dominées, il faut supprimer ces solutions à la fin de l’itération pour ne garder que les solution non-dominées de rang 0. La taille de cet ensemble n’est pas bornée.

CHAPITRE 6. HEURISTIQUES DE PLANIFICATION

La mémoire tabou.

Une liste tabou par solution du front de recherche est créée, soitKlistes tabou. Quand une nouvelle solutionS~ck(i+ 1)du front de recherche est sélectionnée, la liste tabou numéro kstocke l’AP qui a vu ses caractéristiques modifiées. C’est exactement la même liste tabou que celle utilisée dans l’algorithme tabou mono-objectif présenté en page 177.

Pour connaître à tout moment l’origine d’une solution, on stocke dans chaque solution S~ du voisinageV(Fc(i))l’indice kde la solution du front de recherche qui l’a générée. De ce fait, au moment de la construction du voisinage d’une solution courante S~ck, seules les solutions qui ne présentent pas d’AP appartenant à la liste tabou ksont stockées. La taille de chaque liste tabou est dynamique et réévaluée à chaque itération.

L’originalité de cet algorithme réside dans la construction d’un front de recherche qui sélectionne des solutions qui ne sont pas forcément optimales, mais qui ne sont pas mau- vaises non plus. De plus, l’ajout d’une mémoire tabou par solution permet de mieux explorer l’espace des solutions et de prendre l’historique de la recherche en compte.

Sélection d’un sous-ensemble significatif du front de Pareto pratique FP P. La taille du front de Pareto obtenu à la fin de la recherche est bien plus importante que le nombre de solutions que l’on souhaite obtenir pour un choix a posteriori. De plus, un certain nombre de solutions du front sont très proches les unes des autres. Il est nécessaire de faire ressortir une solution d’un groupe de solutions semblables. Pour cela, nous avons utilisé une fonctions de calcul des niches(sharing) qui permet de privilégier le choix d’une solution qui présente une densité de voisins élevée.

Cette fonction de calcul des niches ,m(i), est appliquée à chaque solutioni. Elle a été définie dans la partie 2.2.4 par l’équation 2.18, page 84. Elle est communément utilisée dans les algorithmes multicritères génériques pour pondérer l’évaluation d’une population et ainsi privilégier le choix de solutions espacées dans l’espace des fonctions. Les solutions qui présentent des valeurs élevées dem(i)peuvent être sélectionner pour représenter l’ensemble des solutions présentent dans une boule de rayon σshare.

La rayon de niche σshare est spécifié par la formule deDeb dans [137] comme suit :

σshare = 0.5

nq (6.2)

n=Nf est le nombre de critères du problème et q le nombre de solutions Pareto opti- males recherchées. Cette sélection est ici appliquée une fois que la recherche est terminée.

Néanmoins, elle pourrait être utilisée pour sélectionner les solutions du front de recherche courant FP P(i). Cette modification de l’heuristique de choix pourra être envisagée dans des travaux ultérieurs.

Calcul de la distance entre les solutions. Le critère de niche se base sur la dis- tance dans l’espace des fonctions entre une solution S~i et une solutionS~j. Cette distance normalisée d(S~i, ~Sj) admet l’expression suivante :

CHAPITRE 6. HEURISTIQUES DE PLANIFICATION

d(S~i, ~Sj) = v u u t

n

X

q=1

fq(i)−fq(j) max(fq)−min(fq)

2

(6.3) Nous avons également n = Nf, le nombre de critères et pour un front de Pareto de taille P :

max(fq) = max

l=1,..,Pfq(l) et min(fq) = min

l=1,..,Pfq(l)

Comme les distances sont normalisées, l’ensemble des évaluations des solutions du front est contenu dans une boule de rayon 1.

6.2.2 Résultats de la recherche multiobjectifs Evaluation des performances de l’algorithme.

D’après Colette et Siarry [103], les performances d’une méthode d’optimisation mul- tiobjectif sont mesurables en analysant la qualité du front de Pareto pratique obtenu. En effet, l’uniformité de la répartition des points du front est un paramètre important. Si la répartition des points est uniforme, il est aisé de choisir une alternative à une solution du front qui ne convient pas à l’installateur.

Des métriques ont été définies par Van Veldhuizen dans [138] pour quantifier les per- formances d’algorithmes multiobjectifs. Les métriques suivantes ont été utilisées sur un exemple pour présenter les performances de notre heuristique.

Le rapport d’erreur Ce rapport permet de mesurer la non convergence d’une méthode vers la surface de compromis. Il est défini comme suit :

E=

n

X

i=1

ei

n (6.4)

avec :

– n: le nombre d’éléments dans l’ensemble des solutions FP P.

– ei : une variable booléenne qui vaut 0 si la solution i appartient à la surface de compromis, 1 sinon.

Plus cette métrique est proche de 1, moins l’ensemble des solutions a convergé vers la surface de compromis.

La distance générationnelle. La distance générationnelle permet de mesurer à quelle distance de la surface de compromis se situe un ensemble de solutions. La définition de cette métrique est la suivante :

G=

n

X

i=1

dpi

!1/p

n (6.5)

CHAPITRE 6. HEURISTIQUES DE PLANIFICATION

En général, on choisit p=2. On a :

– n: le nombre d’éléments dans l’ensemble des solutions FP P.

– di : la distance entre la solutioniet la solution la plus proche appartenant à la surface de compromis FP T.

Application des métriques à un problème test. Le front de Pareto théorique FP T a été calculé pour l’environnement de test suivant :

Instance du problème de test :

Environnement de Test : CITI (cf. p. 153) Nombre M de sites candidats : 129

Nombre de blocs à couvrir : 174

Variables : Position

Nombre N d’APs : 3

Nombre Nf de critères : 2

Critères : Couverture à seuil progressif fslope pour 802.11g Interférences finterf avec h= 0

La figure suivante représente toutes les C1293 = 428536 solutions du problème dans l’espace des fonctions de coût. Les points rouges sont les solutions qui appartiennent à la surface de compromis. Ils sont au nombre de 18.

Fig. 6.13 – Evaluation des solutions et représentation des solutions du front de Pareto théorique FP T.

L’heuristique multiobjectif a été testée avec la même instance de problème. Le nombre de solutions du front courant a été fixé à K = 18 et le rang de Pareto maximal à R = 2.

Les APs de toutes les solutions du front initial de recherche sont positionnés aléatoirement.

Au bout de 21 itérations, le front de Pareto FP P est égal au front de Pareto théorique FP T représenté sur la figure précédente. Le rapport d’erreur pour FP P(21) vaut E = 0 et la distance générationnelle G = 0 puisque ce front est égal au front théorique. Il a fallu 21∗3,800s. = 87.4s. pour réaliser les 90558 évaluations de solutions pour obtenir