• Aucun résultat trouvé

Étape d’optimisation locale aux modules

Cette première étape d’optimisation est réalisée indépendamment pour chaque module du sys- tème. Dans cette étape, on cherche à réduire l’espace des MAFs admissibles B`de chaque module M` , ` ∈ [1...m] en ne sélectionnant que les MAFs non-dominées selon les critères d’optimisation locaux définis au chapitre précédent. On rappelle que ces deux critères locaux sont :

– La charge du module Q`, calculée selon l’équation (4.1),

– La marge réseau moyenne des communications entrantes σM`, calculée selon la formule (4.3).

Cette optimisation préliminaire permet de réduire le nombre des MAFs candidates par module, et par conséquent le nombre d’allocations temporelles à traiter dans l’optimisation globale.

L’extraction des MAFs optimales par module est réalisée par une recherche exhaustive des so- lutions non-dominées au sens des critères Q`et σM`. En pratique, le nombre de MAFs candidates par module est limité et la recherche exhaustive tout à fait envisageable.

Le fait d’avoir choisi des critères de charge et de marge réseaux en moyenne, nous permet de décomposer le problème en une recherche multicritere avec les critères locaux, suivie d’une recherche globale avec les critères globaux. La preuve en est donnée dans ce qui suit.

Démonstration. Les critères de charge f1 et de marge réseaux f2 globaux d’une solution s ∈ S

peuvent être décomposés en critères locaux aux modules. Autrement dit, chaque critère global est une composition linéaire des critères locaux.

En effet, pour f1, le critère de la charge moyenne du système, f1 = m1 P

m

`=1Q`, avec Q` la charge moyenne du module M`. Si nous désirons minimiser uniquement le critère f1, il faudra

choisir la MAF de B` qui minimise Q`. Cette MAF est celle qui minimise également f1 car f1

est linéaire en Q`.

Il en est de même pour le critère f2. En effet, f2 est la moyenne des marges dans le réseau :

f2 = ndest1 Pi∈[1..ndest]σi, où ndest est le nombre de partitions destination totales du système IMA. Il faudra choisir la MAF de B` qui maximise σi. Cette MAF est celle qui maximise le critère f2 de part sa linéarité en σi également.

Le choix des meilleurs compromis locaux aux modules permet de restreindre l’espace des allocations possibles en ne gardant que les MAFs qui mènent aux meilleurs allocations candidates possibles.

5.3.1

Algorithme de recherche des solutions Pareto-optimales par mo-

dule

Le problème d’optimisation multicritere P’ est défini pour l’ensemble B` des MAFs admis- sibles d’un module M` . Il est formulé ici pour conjointement :

– Minimiser g1= Q`, la charge du module M`définie en (4.1), et,

– Maximiser g2= σM`, la marge réseau moyenne des périodes des partitions destination du module M`définie en (4.3).

Les notations g1et g2sont principalement utilisées dans cette partie pour clarifier les différentes

descriptions à venir.

L’algorithme de recherche locale est une recherche exhaustive. La méthode consiste à tester toutes les MAFs de B` afin de sélectionner les solutions non-dominées au sens de Pareto pour les critères g1 et g2. Les MAFs Pareto-optimales d’un module M` sont les solutions de rang 1 fournies par l’algorithme5.2appliqué à l’espace B`.

Considérons un module M` du système par exemple. Chaque M AF`,k ∈ B`, avec k ∈ [1..card(B`)], est évaluée par le calcul des métriques Q`et σM`. Dès qu’une MAF est dominée au sens de Pareto, elle est retirée de l’espace B`,`∈[1...m]Seules les solutions Pareto-optimales (c.-à-d.

de rang 1) sont conservées et permettront, dans l’étape d’optimisation globale, de construire des allocations temporelles pour le système complet.

Cette optimisation locale est intéressante car elle permet de réduire considérablement la taille de l’espace des allocations temporelles S issu du produit cartésien des B`,`∈[1..m]. Néanmoins, il est nécessaire de montrer que les MAFs qui ont été écartées localement ne peuvent faire partie d’une allocation temporelle Pareto-optimale. En d’autres termes, il faut s’assurer que l’optimisation locale ne réduit pas la qualité de la recherche globale réalisée par la suite. Nous montrons que c’est bien le cas dans la preuve qui suit. Cette preuve montre par l’absurde qu’une MAF dominée localement (sur un des modules) ne peut faire partie d’une allocation Pareto-optimale compte- tenu de la relation de linéarité qui lie les critères d’optimisation locaux (g1, g2) et globaux (f1,

f2).

Démonstration. Soit une solution MAFddominée localement sur le module M`. Il existe donc une MAF dans B` qui est meilleure que MAFdsur les deux critères :

∃MAF∈ B` t.q g1(MAF) < g1(MAFd) ∧ g2(MAF) > g2(MAFd`) (5.5)

(Note : on rappelle que l’on cherche à minimiser g1 et à maximiser g2.)

Il est possible de construire deux allocations globales Sd et S, la premiere utilisant MAFdpour le module M` et la seconde utilisant MAFpour le module M`. On supposera que toutes les autres MAFs de Sdet Ssont identiques. Ainsi les allocations globales Sdet Sne diffèrent que

par le choix de la MAF du module M`.

Supposons maintenant que l’allocation globale Sd domine l’allocation globale Spour les

critères globaux f1et f2. Nous allons montrer par l’absurde que ceci n’est pas possible.

Si Sest dominée par Sd, la relation suivante doit être vérifiée pour être cohérent avec la première condition1 de la définition de la dominance (5.3) :

∀i ∈ [1, 2] : fi(Sd) ≤ fi(S∗) (5.6)

Nous savons par définition que f1= m1 P g1et f2=m1 P g2, où m est le nombre de modules du

système traité.

Si nous prenons la charge f1 à minimiser, nous avons :

f1(Sd) ≤ f1(S∗)

avec Sd= (M AF

1, M AF2, . . . , MAFd`, . . . , M AFm) et S= (M AF1, M AF2, . . . , MAF`, . . . , M AFm)

1. Note : on suppose dans cette définition que les fisont tous à minimiser. Il faut changer le sens de l’inégalité

Par définition de f1, on a : 1 m m X k=1 g1(M AFk) ≤ 1 m m X k=1 g1(M AFk)

Comme les MAFs des modules autres que le module M` sont identiques, on peut extraire l’éva- luation du module M`du reste de la sommation :

X k=1,k6=` g1(M AFk) + g1(MAFd`) ≤ X k=1,k6=` g1(M AFk) + g1(MAF`)

Il est possible de simplifier cette inégalité à :

g1(MAFd`) ≤ g1(MAF`) (5.7)

Par le même raisonnement de maximisation sur f2, nous obtenons aussi:

g2(MAFd`) ≥ g2(MAF`) (5.8)

La première condition (5.6) de la définition de dominance est vérifiée pour f1et f2. Il reste à

vérifier la seconde condition de cette définition de dominance (5.7). Si Sddomine S, nous avons

forcément1:

∃j ∈ [1, 2] : fj(Sd) < fj(S∗) (5.9)

Pour que cette inégalité soit vérifiée avec f1et f2, on a

– soit g1(MAFd`) < g1(MAF`), – soit g2(MAFd`) > g2(MAF`),

– soit g1(MAFd`) < g1(MAF`) et g2(MAFd`) > g2(MAF`).

Ceci ne peut être vrai que si MAFd` domine MAF`, ce qui est en contradiction avec l’hypothèse que MAF` domine MAFd

` réalisée en (5.5).

5.3.2

Prise en compte de la similarité des MAFs

Après optimisation locale, l’ensemble des solutions Pareto-optimales par module est relative- ment petit. Dans cet ensemble, on trouve néanmoins des MAFs différentes qui ont exactement les mêmes performances locales. Ces MAFs présentent donc la même charge et la même marge réseau moyenne. Les MAFs équivalentes sont présentes régulièrement car dans la construction des ensembles de MAFs admissibles, on peut créer, entre autres, des MAFs qui présentent des per- mutations des partitions qu’elles hébergent. Ces permutations n’ont pas d’impact sur les critères de performance définis ici.

Formellement, deux MAF, M AFi et M AFj, appartenant au même module M`, sont équiva- lentes (notation ∼) si et seulement si :

M AFi∼ M AFj⇔ Qi`= Q j `∧ σ i M` = σ j M` (5.10)

Un ensemble de MAFs X ⊂ B`d’un module M`est une classe d’équivalence X si les MAFs la composant admettent la relation d’équivalence ∼. Il peut exister plusieurs classes d’équivalence dans l’ensemble B`.

Afin de réduire l’ensemble des MAFs Pareto-optimales de B`, et ainsi réduire encore plus l’ensemble des allocation temporelles candidates S, nous procédons à une réduction de l’espace des MAFs Pareto-optimales en ne gardant qu’une seule MAF par classe d’équivalence X dans B`. Il est donc possible de ne garder qu’une MAF par classe d’équivalence et réduire ainsi les ensembles B`, ` ∈ [0...m]. Dans la suite nous gardons la notation B` pour désigner les MAFs candidates après application de l’optimisation multicritere locale et de la réduction par similarité des MAFs.