• Aucun résultat trouvé

Chapitre 3 SYNTHÈSE DU TRAVAIL

3.4 Deuxième article : aectation de tâches

3.4.1 Modèle d'approximation

Pour dénir le modèle d'approximation utilisé pour aecter a priori les tâches avant d'aecter les activités, il est nécessaire de dénir de nouvelles notations. Soit J l'ensemble des tâches à eectuer. Chaque tâche j a une longueur `j, un coût de sous-

couverture cj et sa première période d'aectation doit appartenir au sous-ensemble

des relations de préséance entre des couples de tâches. Le sous-ensemble ¯Γ contient uniquement les relations de préséance forte.

Un bloc est une aectation potentielle, que ce soit pour une tâche ou une activité. Un bloc est ainsi caractérisé par un segment, par une période de début et par une longueur, en plus de l'activité ou de la tâche qui lui correspond. L'ensemble des blocs de tâche est noté B, le sous-ensemble des blocs associés à la tâche j est noté Bj. Les

blocs associés à la fois à la tâche j et au segment p appartiennent à Bj,p. Un bloc b

commence à la période sb et se termine à la période eb.

Dans ce modèle d'approximation, les contraintes de durées minimales et maximales de contribution ont été relaxées. Pour garantir cependant qu'il est toujours possible d'aecter des activités entre deux aectations de tâches dans un même segment, soit la deuxième tâche doit débuter quand la première se nit, soit le nombre de périodes entre la n de la première tâche et le début de la deuxième est supérieur à la plus petite durée minimale d'activités aectable au segment. Soit δmin

p la durée du plus court bloc

d'activité qui peut être aecté au segment p et soit P∗ l'ensemble des segments p pour

lesquels δmin

p ≥ 2. Aussi, si p ∈ P∗, alors aucun bloc de tâche ou d'activité ne doit

commencer à la i-ème période dans le segment p pour i = 2, 3, . . . , δmin

p − 1. Un tel

cas conduit à une irréalisabilité dans le processus d'aectation d'activités. La même remarque s'applique aussi à la n du segment. Tous les blocs ne répondant pas à ces critères de réalisabilité sont exclus de l'ensemble Bp pour tout p ∈ P∗. Ces trois

restrictions sur l'ensemble des blocs de tâche ne ltrent que des solutions irréalisables du point de vue des activités, mais ne les ltrent pas toutes.

La variable continue Ua,t sert à calculer la sous-couverture pour l'activité a à la

période t. La variable continue Xp,a,t représente la fraction d'activité a aectée à la

période t dans le segment p. Concernant les tâches, la variable booléenne Zj permet

de calculer la sous-couverture pour la tâche j, et pour chaque bloc b ∈ Bj, la variable

Yb indique si le bloc b fait partie de la solution ou non.

Minimiser U,X,Y,Z X j∈J cjZj +X a∈A X t∈T caUa,t (3.22)

sujet à X a∈Ap Xp,a,t+ X j∈J X b∈Bp,j κb,tYb = 1, ∀p ∈ P, t ∈ Tp (3.23) X p∈Pa

Xp,a,t+ Ua,t ≥ da,t, ∀a ∈ A, t ∈ T (3.24)

X b∈Bj Yb+ Zj = 1, ∀j ∈ J (3.25) (M + `j)Zj0 + X b∈Bj0 sbYb− MZj − X b∈Bj sbYb ≥ `j, ∀(j, j0)∈ Γ (3.26) Zj− Zj0 ≥ 0, ∀(j, j0)∈ ¯Γ (3.27) X j∈J X b∈Bp,j eb=t Yb+ X j∈J X b∈Bp,j sb∈[t+2,t+δminp ] Yb ≤ 1, ∀p ∈ P∗, t∈ Tp (3.28) 0≤ Xp,a,t≤ 1, ∀p ∈ P, a ∈ Ap, t∈ Tp (3.29) Ua,t ≥ 0, ∀a ∈ A, t ∈ T (3.30) Yb ∈ {0, 1}, ∀p ∈ P, j ∈ J, b ∈ Bp,j (3.31) Zj ∈ {0, 1}, ∀j ∈ J. (3.32)

La fonction objectif (3.22) ne concerne que la sous-couverture, que ce soit pour les activités ou les tâches. Les contraintes (3.23) assurent que les segments sont en- tièrement aectés. Les contraintes (3.24) servent au calcul approximatif de la sous- couverture d'activités tandis que les contraintes (3.25) servent au calcul de la sous- couverture des tâches. Le respect des relations de préséance est garanti par les con- traintes (3.26) pour les préséances faibles ainsi que par les contraintes (3.27) pour les relations de préséances fortes. Pour éliminer des aectations de tâches qui condui- raient à une irréalisabilité pendant l'aectation d'activités, les contraintes (3.28) em- pêchent l'aectation de deux tâches entre lesquelles il n'est pas possible d'aecter un bloc. Finalement, les contraintes (3.29)(3.32) précisent les domaines de dénition des variables.

Ce modèle est dur à résoudre à l'optimalité pour des instances d'une cinquantaine de tâches. Du moins, le solveur commercial utilisé connaissait souvent des dicultés pour trouver ne serait-ce qu'une solution réalisable. En eet, les contraintes de rela- tions de préséance sous cette forme sont très faciles à satisfaire d'un point de vue de

la relaxation linaire, mais les solutions fractionnaires obtenues durant l'arbre de bran- chement guident la recherche le plus souvent vers des solutions entières irréalisables. Nous avons essayé une autre forme de ces contraintes, n'utilisant pas de coecient à grande valeur, mais l'explosion du nombre de contraintes et le faible gain au niveau du gap d'intégrité nous ont incités à conserver les contraintes sous la forme présentée dans l'article.

Pour remédier à la mauvaise orientation de la recherche d'une solution en nombres entiers, nous avons conçu une heuristique dont le but était de condenser le domaine de recherche de l'arbre de branchement. Cette heuristique consiste à favoriser certaines variables de bloc par l'intermédiaire de la modication de leurs coûts. A chaque itération, la relaxation linéaire du modèle est obtenue par une méthode dite barrière. Pour chaque tâche, les variables de bloc de valeur fractionnaire se voient attribuer un bonus. Si la valeur d'une variable de bloc reste inchangée d'une itération à l'autre alors qu'elle a reçu un bonus, son coût est remis à zéro, ainsi que celui de toutes les autres variables de bloc associées à la même tâche. Après un certain nombre d'itérations ou si la proportion de variables à valeur fractionnaire descend en dessous d'un seuil, la procédure normale d'énumération implicite prend le relais en conservant les coûts des variables de bloc issus de la dernière itération. Cette heuristique est plus ecace que la procédure normale d'énumération implicite car elle réduit rapidement le nombre de variables à valeur fractionnaire dans la relaxation linéaire et dénit une instance, restreinte mollement à l'aide des coûts modiés, plus facile à résoudre.

Documents relatifs