• Aucun résultat trouvé

4.4 Coupes pour le mod`ele pr´eemptif sur les ensembles admissibles

4.5.2 Bornes inf´erieures constructives

Dans un premier temps, nous avons test´e les deux m´ethodes dans une approche constructive. Nous pr´esentons, dans cette section, une comparaison exp´erimentale des bornes ainsi obtenues : Partant d’une borne sup´erieure r´ealisable T , l’algorithme de filtrage PPC d´ecrit `a la section3.3.2

est invoqu´e pour resserrer les distances entre les activit´es et en particulier la distance b0(n+1) qui

correspond `a la borne inf´erieure du probl`eme calcul´ee par PPC. Si b0(n+1) = T , le probl`eme est

r´esolu, sinon la matrice des distances, l’ensemble des disjonctions, les matrices de shaving et les ensembles disjonctifs maximaux sont alors stock´es. Les deux premiers sont utilis´es pour pr´etraiter la relaxation lin´eaire du probl`eme. La relaxation lin´eaire est alors r´esolue de mani`ere it´erative par l’algorithme dual du simplexe, en ajoutant `a chaque it´eration l’ensemble des in´egalit´es valides qui coupent la solution fractionnaire courante, et en supprimant les in´egalit´es qui ne sont plus actives dans cette solution. La proc´edure s’arrˆete quand aucune am´elioration de la borne n’est apport´ee durant un certain nombre d’it´erations, quand aucune in´egalit´e n’est viol´ee `a une it´eration, ou encore quand la limite de temps de calcul est d´epass´ee.

Dans la table4.1, nous reportons les r´esultats exp´erimentaux sur les 264 instances KSD non- triviales `a 30 activit´es, c.-`a-d. les instances dont la valeur optimale n’est pas ´egale `a la borne du chemin critique (les contraintes de ressources sont actives). Les lignes 1 et 2 donnent les d´eviations ∆opt, moyenne et maximale, de la borne inf´erieure `a l’optimum (connu pour toutes les instances

KSD30). Les lignes 3 et 4 donnent les temps CPU, moyen et maximal. La ligne 5 donne le nombre d’instances pour lesquelles l’optimum est atteint et la ligne 6, le nombre d’instances pour lesquelles la borne de la programmation lin´eaire am´eliore la borne de la PPC. Chaque colonne correspond `a une borne inf´erieure calcul´ee par :

– colonnes 2 et 3 : la programmation par contrainte seule, sans shaving (filtrage local LCP) ou bien avec shaving (filtrage complet CCP) ;

– colonnes 4 et 5 : la relaxation continue de la formulation en temps discr´etis´e et contraintes de pr´ec´edence agr´eg´ees, pr´etrait´ee par filtrage local LCP+PL ou bien par filtrage complet CCP+PL ; – colonnes 6 et 7 : la mˆeme relaxation continue pr´etrait´ee par filtrage complet et augment´ee des coupes de cliques et des coupes de shaving agr´eg´ees CCP+ag. ou bien d´esagr´eg´ees CCP+d´esag.; – colonne 8 : la relaxation du programme lin´eaire en temps continu, pr´etrait´ee par filtrage

complet et augment´ee des coupes CCP+coupes.

Tab.4.1 – G´en´eration de coupes : bornes constructives sur les instances non triviales de KSD30

KSD30 PPC discret (agr´eg´e) continu

264 instances LCP CCP LCP+PL CCP+PL CCP+ag. CCP+d´esag. CCP+coupes

moy. ∆opt 5,8% 3,6% 5,3% 3,2% 3,1% 3,0% 3,2% max. ∆opt 33,7% 31,3% 25,0% 25,0% 21,8% 21,8% 29,7% CPU moy. (s.) 0,0 2,3 1,0 3,0 10,2 35,6 4,9 CPU max. (s.) 0,0 17,3 49,5 31,1 601 1296 37,6 # BInf=opt 95 155 96 157 159 160 160 # PL>PPC - - 24 17 35 42 47

Pour chacune de ces instances, T est la valeur optimale. En terme de qualit´e de la borne, les r´esultats sont tr`es bons pour les deux mod`eles, prouvant l’optimalit´e pour 160 instances parmi les 264. Compar´ee `a la formulation en temps continu, la formulation discr`ete avec les coupes obtient une d´eviation `a l’optimum l´eg`erement meilleure mais requiert aussi beaucoup plus de temps de calcul.

Dans la PPC, le shaving induit aussi un coˆut de calcul suppl´ementaire par rapport au filtrage local, mais il permet une am´elioration significative de la borne, qui se r´epercute dans les r´esultats de l’hybridation avec la PL.

Le b´en´efice des coupes pour les deux mod`eles lin´eaires, s’il apparaˆıt moins dans la d´eviation moyenne, est plus visible dans le nombre d’am´elioration apport´ees. En effet, parmi les 109 instances non r´esolues par le filtrage complet seul, les coupes du mod`ele en temps continu am´eliorent la borne pour 47 instances (car, sans les contraintes de ressources, la borne de la relaxation du mod`ele en temps continu est ´egale `a la borne PPC). Tandis que les coupes agr´eg´ees et d´esagr´eg´ees am´eliorent la borne de, respectivement, 18 et 25 instances parmi les 107 instances non r´esolues par le mod`ele en temps discr´etis´e pr´etrait´e par la PPC compl`ete.

L’int´erˆet de l’hybridation est aussi mis en valeur dans ces exp´erimentations puisque, en terme de d´eviation moyenne, la borne est bien meilleure pour les approches coop´eratives que pour la PL avec un simple filtrage local en pr´etraitement.

Nous avons aussi ´etablit une comparaison entre les deux mod`eles sur les 184 instances KSD non triviales avec 60 activit´es (table 4.2). Parmi celles-ci, certaines sont encore ouvertes. Nous avons donc pris pour T la meilleure borne sup´erieure connue `a ce jour et nous comparons nos bornes, non plus avec l’optimum, mais avec la valeur de la borne inf´erieure triviale du chemin critique LB0 (ligne 1). Ici, on consid`ere aussi une version r´eduite du shaving (RCP) o`u seules les paires d’activit´es en disjonction sont consid´er´ees. Enfin, le temps de calcul est limit´e `a 30 minutes.

Pour les instances `a 60 activit´es, la PPC est nettement moins performante. L’augmentation de la taille des probl`emes conf`ere un moins grand pouvoir de d´eduction au filtrage, ce qui se refl`ete sur les r´esultats du shaving et des coupes bas´ees sur la PPC. L’application d’un shaving r´eduit permet n´eanmoins d’am´eliorer la relaxation PPC de mani`ere ´equivalente au shaving complet mais

Tab.4.2 – G´en´eration de coupes : bornes constructives sur les instances non triviales de KSD60

KSD60 PPC discret (agr´eg´e) continu

184 instances LCP RCP CCP RCP+PL RCP+ag. RCP+d´esag. RCP+coupes

moy. ∆LB0 7,7% 9,5% 9,6% 17,5% 17,7% 17,7% 10,0%

CPU moy. (s.) 0,0 27,7 62,1 81,8 243 771 257

CPU max. (s.) 0,1 130,8 297 904 1800 1800 919

# BInf=opt 41 58 59 58 58 58 59

# PL>PPC - - - 57 62 64 51

pour un temps de calcul plus raisonnable.

Pour la formulation continue, bien que les coupes am´eliorent encore la borne PPC pour 51 instances, les r´esultats en moyenne ne sont pas r´eellement meilleurs. Au contraire, la r´esolution du mod`ele lin´eaire en temps discretis´e est particuli`erement efficace ici par rapport `a la PPC, mais l’impact des coupes est alors, assez faible sur la qualit´e de la borne, et plutˆot n´efaste pour le temps de calcul. En particulier et bien qu’elles se d´eclenchent, les coupes d´esagr´eg´ees, th´eoriquement meilleures que les coupes agr´eg´ees, n’aident pas ou peu `a resserrer davantage la relaxation lin´eaire, certainement aussi car leur nombre ralentit consid´erablement la proc´edure enti`ere.

N´eanmoins, ne serait-ce que par notre principe de pr´etraitement, le gain de l’approche hybride PPC/PL est encore soulign´e ici par rapport aux deux m´ethodes s´epar´ees. Nous am´eliorons par exemple les bornes pr´esent´ees dans [M¨ohring 2003] et bas´ees sur la formulation en temps discretis´e mais sans pr´etraitement.