• Aucun résultat trouvé

Chapitre III : Allocation de charges

III.1 Etat de l’art sur l’allocation de charges

Dans ce paragraphe, nous présentons deux problèmes d’optimisation combinatoire bien connus dans le domaine de la recherche opérationnelle (RO) et qui présentent des caractéristiques communes avec le problème d’allocation de charges sur les barres du réseau électrique embarqué :

 le problème d’affectation à trois dimensions [GIL87] ;  le problème du sac à dos [KEL04]

III.1.1 Problème d’affectation à trois dimensions

III.1.1.1 Analogies et différences avec le problème d’allocation de charges

Les problèmes d’affectation sont traités depuis une soixante d’années dans le domaine de la RO. Les problèmes les plus connus possèdent 2 dimensions, c’est-à-dire qu’ils consistent à assigner deux ensembles d’éléments. Ils sont généralement illustrés par un exemple consistant à assigner « 𝒯 » tâches à « 𝒜 » agents comme illustré par la Figure III-1. L’objectif est alors de minimiser le coût total induit par les affectations :

𝑚𝑖𝑛{ ∑𝒜𝑎=1∑𝒯𝑡=1𝑐𝑎,𝑡. 𝑥𝑎,𝑡 } Eq. III-1

Les contraintes du problème sont exprimées par :

∀ 𝑡 ∈ {1, … , 𝒯}, ∑𝒜𝑎=1𝑥𝑎,𝑡 = 1 Eq. III-2

∀ 𝑎 ∈ {1, … , 𝒜}, ∑𝒯𝑡=1𝑥𝑎,𝑡 = 1 Eq. III-3

Où le terme « 𝑥𝑎,𝑡 = 1 » si l’agent « 𝑎 » est affecté à la tâche « 𝑡 », « 𝑥𝑎,𝑡= 0 » sinon. Le terme « 𝑐𝑎,𝑡 » modélise le coût de cette affectation. Eq. III-2 exprime le fait que chaque tâche n’est affectée qu’à un unique agent. Eq. III-3 oblige chaque agent à être affecté à une seule tâche. Ces deux contraintes impliquent que « 𝒜 » et « 𝒯 » soient égaux.

Figure III-1 Solution pour un problème d’affectation (𝒯 = 4 ; 𝒜 = 4)

[PEN07] fournit un large panorama des nombreuses variantes appartenant aux problèmes d’affectation. Parmi elles, le problème d’affectation multidimensionnel [GIL88] est celui où il existe plus de 2 dimensions. Lorsqu’il en existe 3, on parle alors de problème d’affectation à 3 dimensions (3DAP pour : three-dimensional assignment problem). Un 3DAP est généralement illustré en ajoutant un troisième ensemble d’éléments à notre exemple précédent. Désormais, nous devons affecter ensemble : « 𝒯 » tâches, « 𝒜 » agents et

« ℳ » machines afin de minimiser un coût total. Dans [GIL88], le problème est formulé de la manière suivante :

𝑚𝑖𝑛{ ∑𝒜𝑎=1∑𝒯𝑡=1∑ℳ𝑚=1𝑐𝑎,𝑡,𝑚. 𝑥𝑎,𝑡,𝑚 } Eq. III-4

Les contraintes du problème sont exprimées par :

∀ 𝑚 ∈ {1, … , ℳ}, ∑𝒜𝑎=1∑𝒯𝑡=1𝑥𝑎,𝑡,𝑚 ≤ 1 Eq. III-5

∀ 𝑎 ∈ {1, … , 𝒜}, ∑𝒯𝑡=1∑ℳ𝑚=1𝑥𝑎,𝑡,𝑚≤ 1 Eq. III-6

∀ 𝑡 ∈ {1, … , 𝒯}, ∑𝒜𝑎=1∑ℳ𝑚=1𝑥𝑎,𝑡,𝑚 = 1 Eq. III-7

Où le terme « 𝑥𝑎,𝑡,𝑚= 1 » si l’agent « 𝑎 » est affecté à la tâche « 𝑡 » en utilisant la machine « 𝑚 », « 𝑥𝑎,𝑡,𝑚 = 0 » sinon. Le coût de cette affectation est donnée par « 𝑐𝑎,𝑡,𝑚 ». Eq. III-5 exprime le fait qu’une machine ne peut être utilisée qu’à une tâche. Eq. III-6 impose qu’un agent exécute au plus une seule tâche. Eq. III-7 s’assure que toutes les tâches soient assignées à un agent et une machine.

Figure III-2 Solution pour un problème 3DAP (𝒯 = 4 ; 𝒜 = 4 ; ℳ = 4)

Comme le problème d’allocation de charges, 3DAP est composé de 3 ensembles : les agents, les tâches et les machines. Les charges électriques du problème d’allocation de charges peuvent être considérées comme les tâches, les barres comme les agents, les sources comme les machines et les puissances électriques comme les coûts. Cette similitude structurelle est mise en évidence par la Figure III-3. Le problème d’allocation de charges ressemble à 3DAP puisqu’il doit assigner des charges (tâches) à des barres (agents) et des

sources (machines) afin de minimiser une somme de puissances électriques (coûts). Enfin

chaque charge (tâche) doit être affectée à une seule barre (agent) et une seule source (machine) comme exprimée par Eq. III-7.

Malgré les similarités exprimées ci-dessus, il existe trois différences principales entre les 2 problèmes :

 la première distinction vient de la définition des contraintes puisque contrairement à Eq. III-5 et Eq. III-6, pour le problème d’allocation de charges, une source peut être connectée à plus d’une barre et une barre peut être allouée à plusieurs charges ;

 la deuxième différence vient de la définition des variables de décision. Pour 3DAP, les variables « 𝑥𝑎,𝑡,𝑚 » assignent des agents à une tâche et une machine alors que pour le problème d’allocation de charges, les affectations entre les sources et les barres sont déjà décidées (par l’intermédiaire des scénarii de reconfiguration). Les variables « 𝑥𝑐,𝑏 » affectent uniquement les charges aux barres ;

 la dernière différence est due à la présence des cas de charges. En effet, le problème d’allocation de charges peut être vu comme un 3DAP qui est répété sur « 𝒦 » cas de charges pour lesquels les affectations sont identiques mais où les coûts évoluent selon les cas de charges.

Le problème d’allocation de charges est un min-max problème puisque le dimensionnement d’une source est effectué avec la puissance maximale demandée. Par conséquent, il convient de citer le problème suivant : bottleneck three-dimensional assignment

problem [VAR90] qui est la forme min-max de 3DAP. Ce problème consiste à minimiser le

coût maximal induit par les affectations :

𝑚𝑖𝑛� max{ 𝑐𝑎,𝑡,𝑚. 𝑥𝑎,𝑡,𝑚} � Eq. III-8

Barre 1 Barre 2 Barre 3 Barre 4

Ch 1 Ch 2 Ch 3 Ch 4 VFG1 VFG2 VFG3 VFG4 Agent 1 100 120 Tâche 1 Tâche 2 Tâche 3 Tâche 4 130 75 Tâche t Agent a Agent 2 Agent 3 Agent 4 Machine 1 Machine m Machine 2 Machine 3 Machine 4 75 kW 120 kW 130 kW 100 kW Source Barre Charge

Figure III-3 Analogies entre le problème 3DAP et d’allocation de charges

III.1.1.2 Méthodes de résolution

Des méthodes exactes et heuristiques ont été proposées afin de résoudre le 3DAP. Les références [BAL91] [MAG94_1] utilisent une procédure basée sur la méthode d’évaluation et séparation (Branch and Bound) pour résoudre de manière exacte le 3DAP. Une méthode heuristique est présentée dans [CRA92]. Enfin des métaheuristiques sont utilisées afin de générer un jeu de bonnes solutions pour un temps de calcul raisonnable : la recherche tabou [MAG94_2], la méthode GRASP (Greedy Randomized Adaptative Search Procedure) [AIE05], l’algorithme génétique [HUA06] ou le recuit simulé [HAS02].

III.1.2 Problème du sac à dos

III.1.2.1 Analogies et différences avec le problème d’allocation de charges

Le deuxième problème de RO ayant des similarités avec le problème d’allocation de charges est le problème du sac à dos (KP pour : Knapsack Problem). Il consiste à assigner « 𝒩 » objets de poids et profits positifs à un sac ayant une capacité finie notée « 𝑐𝑝 ». L’objectif est de maximiser le profit mis dans le sac tout en n’excédant pas sa capacité :

𝑚𝑎𝑥� ∑𝒩𝑛=1𝑝𝑟𝑛. 𝑥𝑛 � Eq. III-9

La contrainte consistant à ne pas dépasser la capacité du sac est modélisée par :

∑𝒩𝑛=1𝑐𝑛. 𝑥𝑛 ≤𝑐𝑝 Eq. III-10

« 𝑥𝑛 = 1 » si l’objet « 𝑛 » est placé dans le sac, sinon « 𝑥𝑛 = 0 ». Le profit et le coût de l’objet « 𝑛 » sont désignés respectivement par « 𝑝𝑟𝑛 et 𝑐𝑛 ».

Figure III-4 Exemple d’un problème du sac à dos (𝒩 = 5 ; cp=15) (dessin : source Wikipedia)

Parmi les variantes du KP, un problème se rapproche plus particulièrement du problème d’allocation de charges : le problème du sac à dos à multiple scénarii (KPM). Pour cette version du KP, les profits des objets « 𝑝𝑟𝑛𝑘 » varient selon « 𝒦 » scénarii ou configurations alors que la capacité du sac demeure identique « 𝑐𝑝 ». L’objectif est de remplir le sac afin de maximiser le plus petit des profits sur l’ensemble des scénarii :

𝑚𝑎𝑥� 𝑚𝑖𝑛𝑘=1…𝒦{∑𝒩𝑛=1𝑝𝑟𝑛𝑘. 𝑥𝑛} � Eq. III-11

Comme pour le KP, il faut toujours faire en sorte de ne pas dépasser la capacité du sac : ∀ 𝑘 ∈ 𝒦, ∑𝒩𝑛=1𝑐𝑛. 𝑥𝑛 ≤𝑐𝑝 Eq. III-12

Le KPM possède 2 principales similitudes avec le problème d’allocation de charges si nous considérons les charges comme les objets, l’association barre-source comme le sac, la

puissance électrique comme le profit et les cas de charge comme les scénarii. Premièrement,

le profit de chaque objet varie selon les scénarii alors que l’affectation des objets au sac est le même pour l’ensemble des scénarii. Deuxièmement, le KPM est un problème de type max- min (ou min-max) comme le problème d’allocation de charges puisque nous devons minimiser la puissance maximale vue par les sources.

Dans le problème d’allocation de charges, une source ne possède pas de contraintes de capacité. Ceci constitue la première différence entre les 2 problèmes puisque pour un KPM un sac possède une capacité donnée. En outre, toutes les charges électriques doivent être allouées afin d’être alimentées. Cette contrainte n’est pas appliquée pour le KPM où un objet peut être alloué à aucun sac. Enfin la dernière différence demeure dans le fait qu’il n’existe qu’une seule source (sac) alors que le réseau électrique est constitué de plusieurs sources. Alors, il convient de noter qu’il existe une autre variante de KP où il existe plusieurs sacs : le problème

du sac à dos à multiple sacs [LAL10]. Cependant pour ce sous-problème, les profits des

objets ne varient pas.

5 $

8 $

SCENARIO 1 SCENARIO 2

Figure III-5 Exemple d’un problème de sac à dos à multiple scénarii (𝒩 = 5, 𝒦 = 2, cp=15)

III.1.2.2 Les méthodes de résolution

En comparaison avec le KP, le KPM est peu traité dans la littérature. Les références [YU96] et [IID99] proposent des procédures basées sur la méthode de séparation et évaluation pour résoudre de manière exacte des KPMs de tailles limitées (par exemple 90 objets et 30 scénarii). Plus récemment, [TAN08] a introduit une méthode procédant en deux étapes pour résoudre le KPM. Premièrement, la taille du problème est réduite. Puis le problème résultant est résolu par la méthode de séparation et évaluation. La méthode est testée sur des problèmes possédant 1000 objets et 30 scénarii. Comme indiqué dans [SON12], les méthodes précédentes ne sont capables de résoudre que des problèmes de taille réduite pour une durée limitée (1 heure). Pour des problèmes de taille importante, ces méthodes ne parviennent pas à proposer de bonnes solutions en un temps raisonnable. Par conséquent, [SON12] introduit une heuristique « rapide » afin de trouver, en quelques minutes de calcul, de bonnes solutions pour des problèmes de grande taille (10000 objets et 100 scénarii). Pour résoudre ces problèmes de grandes tailles [SBI10] propose une heuristique basée sur deux étapes successives. La première propose une solution faisable. La seconde tente d’améliorer la solution à partir d’une méthode de voisinage inspirée par l’algorithme métaheuristique de recherche tabou.

III.1.3 Conclusion sur le positionnement du problème d’allocation de

charges

Des caractéristiques voisines à celles du problème d’allocation de charges sont identifiées dans plusieurs problèmes appartenant au domaine de la RO. Si nous utilisons les terminologies des problèmes présentés ci-avant, le problème d’allocation de charges peut être caractérisé par les marqueurs suivants : problème min-max d’affectation à 3 dimensions à multiple scénarii (en anglais : min-max multi-scenario three-dimensional assignment

problem).

Enfin, il apparaît dans cette étude bibliographique que les problèmes de taille importante ne peuvent pas être résolus de manière exacte. L’emploi de méthodes approchées à l’aide d’heuristiques ou de métaheuristiques est nécessaire pour obtenir des solutions de bonnes performances en un temps de calcul raisonnable (de l’ordre de l’heure).