Télécharger la présentation
Publié parEverard Bailleul Modifié depuis plus de 10 années
1
Une méthode de grand voisinage pour le RCPSP
M. Palpant, C. Artigues, P. Michelon {mireille.palpant, christian.artigues, Laboratoire d’Informatique d’Avignon 339 chemin des Meinajariès BP 1228 84000 Avignon 27/09/02 M. Palpant, C. Artigues, P. Michelon 1
2
M. Palpant, C. Artigues, P. Michelon
Plan Aperçu général de la méthode Présentation du RCPSP Caractéristiques avancées de la méthode Résultats expérimentaux Conclusion et remarques 27/09/02 M. Palpant, C. Artigues, P. Michelon 2
3
M. Palpant, C. Artigues, P. Michelon
Introduction intégration de résolution exacte au sein d’un processus de recherche locale : procédés d’intensification et de diversification de la recherche grand voisinage (LNS) Mimausa [Mautor, Michelon] : affectation quadratique Forget&Extend [Caseau, Laburthe] : job-shop 27/09/02 M. Palpant, C. Artigues, P. Michelon 3
4
Schéma général d’exécution
Recherche d’une solution initiale ( heuristique ) Phase d’initialisation Sélection de p n variables libres Phase itérative Tests d’arrêt Génération et résolution exacte du problème réduit Reconstruction d’une solution complète Perturbation éventuelle Auto-ajustement de la valeur de p 27/09/02 M. Palpant, C. Artigues, P. Michelon 4
5
M. Palpant, C. Artigues, P. Michelon
Paramètres taille p du sous-problème temps maximum t_opt alloué à la résolution exacte du sous-problème perturbation au bout de nb_iter itérations sans amélioration de la solution courante nombre maximum d’itérations max_iter 27/09/02 M. Palpant, C. Artigues, P. Michelon 5
6
M. Palpant, C. Artigues, P. Michelon
RCPSP : données R : ensemble {0, …, m} de ressources capacité limitée Rk V : ensemble {0, …, n} de tâches durée pi consommation de rik unités de chaque ressource k durant l’exécution G = (V, E) : graphe modélisant les contraintes de précédence entre tâches 27/09/02 M. Palpant, C. Artigues, P. Michelon 6
7
M. Palpant, C. Artigues, P. Michelon
RCPSP : formulation RCPSP : min Cmax s - à : Cmax Si+pi i V Sj Si+pi (i, j) E (contraintes potentielles) rik Rk t = 1, …, T, k R (contraintes cumulatives) 27/09/02 M. Palpant, C. Artigues, P. Michelon 7
8
RCPSP : exemple 1 5 3 6 4 2 7 Un ordonnancement réalisable res1 3 1 2
1 2 4 5 6 7 8 3 {3, 0} {2, 0} {1, 0} {0, 1} {0, 0} 1 5 3 2 1 6 {0, 0} 5 10 15 17 res2 1 4 2 7 5 10 15 17 27/09/02 M. Palpant, C. Artigues, P. Michelon 8
9
Construction de la solution initiale (1)
procédure de forward-backward [Li, Willis] : alternance de passes avant et passes arrières d’une méthode constructive (SGS sériel) convergence rapide arrêt si obtention lors d’une passe avant et une passe arrière successives d’une même valeur de makespan 27/09/02 M. Palpant, C. Artigues, P. Michelon 9
10
Construction de la solution initiale (2)
passe avant : ordonnancement au plus tôt règle de priorité : première passe : minLFT autres passes : plus petite des dates de début données par la passe arrière précédente passe arrière : ordonnancement au plus tard plus grande des dates de fin calculées à partir des dates de début données par la passe avant précédente 27/09/02 M. Palpant, C. Artigues, P. Michelon 10
11
M. Palpant, C. Artigues, P. Michelon
Construction de la solution initiale : exemple 5 10 1 4 6 2 7 15 res1 res2 3 20 25 L = {7, 5, 6, 4, 3, 2, 1} 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
12
Construction de la solution initiale : exemple
7 6 5 4 3 2 1 Priorités croissantes 10 15 20 25 7 10 15 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
13
Construction de la solution initiale : exemple
7 6 5 4 3 2 1 Priorités croissantes 5 10 15 20 25 7 10 15 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
14
Construction de la solution initiale : exemple
7 6 5 4 3 2 1 Priorités croissantes 5 6 10 15 20 25 7 10 15 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
15
Construction de la solution initiale : exemple
7 6 5 4 3 2 1 Priorités croissantes 5 6 10 15 20 25 4 7 10 15 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
16
Construction de la solution initiale : exemple
7 6 5 4 3 2 1 Priorités croissantes 5 3 6 10 15 20 25 4 7 10 15 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
17
Construction de la solution initiale : exemple
7 6 5 4 3 2 1 Priorités croissantes 5 3 6 10 15 20 25 4 2 7 10 15 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
18
Construction de la solution initiale : exemple
7 6 5 4 3 2 1 Priorités croissantes 1 5 3 6 10 15 20 25 4 2 7 10 15 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
19
M. Palpant, C. Artigues, P. Michelon
Construction de la solution initiale : exemple 5 10 1 4 6 2 7 15 res1 res2 3 L = {4, 1, 5, 6, 2, 7, 3} 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
20
Construction de la solution initiale : exemple
4 5 10 1 4 6 2 7 15 res1 res2 3 1 5 6 2 7 3 Priorités croissantes 27/09/02 M. Palpant, C. Artigues, P. Michelon 11
21
M. Palpant, C. Artigues, P. Michelon
Sélection des tâches libres : méthode méthode par bloc : génération aléatoire d’une liste L d’indices sélection aléatoire d'une tâche de départ i itérativement : sélection dans l’ordre donné par L de toute tâche j telle que Sj Si+pi et Sj+pj Si sélection d'une nouvelle tâche i 27/09/02 M. Palpant, C. Artigues, P. Michelon 12
22
Sélection des tâches libres : exemple
L = {3, 1, 7, 2, 4, 5, 6}, p=3 5 10 1 4 6 2 7 15 res1 res2 3 20 25 tâche de départ 27/09/02 M. Palpant, C. Artigues, P. Michelon 13
23
M. Palpant, C. Artigues, P. Michelon
Sélection des tâches libres : remarque La liste aléatoire d’indices apporte de la diversité au processus de sélection tâche de départ 5 10 1 4 6 2 7 15 3 20 25 L = {3, 1, 7, 2, 4, 5, 6} L = {6, 7, 1, 4, 5, 3, 2} 27/09/02 M. Palpant, C. Artigues, P. Michelon 14
24
M. Palpant, C. Artigues, P. Michelon
Sélection des tâches libres : autres approches Efficacité croissante : aléatoire aléatoire - prédécesseurs dans le projet aléatoire - prédécesseurs dans l’ordonnancement aléatoire - tous prédécesseurs "bloc" 27/09/02 M. Palpant, C. Artigues, P. Michelon 15
25
Sous-problème : génération et résolution
recalage au plus tard des tâches fixes si possible détermination des capacités des ressources (variables au cours du temps) détermination des fenêtres d’exécution des tâches libérées résolution : utilisation de la bibliothèque ILOG Scheduler (PPC) 27/09/02 M. Palpant, C. Artigues, P. Michelon 16
26
M. Palpant, C. Artigues, P. Michelon
Sous-problème : formulation SubRCPSP : min sous les contraintes : +pi i de précédence (contraintes potentielles) : de limitation des ressources (contraintes cumulatives) : de fenêtre d’exécution : 27/09/02 M. Palpant, C. Artigues, P. Michelon 17
27
Contraintes de précédence
{3, 0} 5 {0, 1} 4 {3, 0} 4 2 8 3 6 {0, 1} {3, 0} {0, 0} 1 2 3 2 5 8 6 6 5 {0, 0} {2, 0} {0, 0} 4 7 6 5 {0, 1} {0, 1} 6 {1, 0} 27/09/02 M. Palpant, C. Artigues, P. Michelon 18
28
M. Palpant, C. Artigues, P. Michelon
Capacités variables des ressources 5 10 1 6 7 15 20 3 2 25 5 10 15 res1 res2 20 25 1 7 6 27/09/02 M. Palpant, C. Artigues, P. Michelon 19
29
M. Palpant, C. Artigues, P. Michelon
Fenêtres d’exécution des tâches 5 10 1 6 7 15 20 3 2 25 4 2 8 3 6 {0, 1} {3, 0} {0, 0} S0+p0 5 10 15 3 4 2 S5 S8 S1+p1 S2+p2 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 20
30
M. Palpant, C. Artigues, P. Michelon
Résolution 5 10 1 4 6 7 15 res1 res2 20 3 2 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 21
31
M. Palpant, C. Artigues, P. Michelon
Résolution 5 10 1 4 6 2 7 15 res1 res2 3 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 21
32
Reconstruction de la solution courante
mise à jour de la solution courante avec le résultat de l’optimisation application de l’heuristique de forward-backward : recalage au plus tôt amélioration éventuelle au cours des passes règle de priorité différente lors de la première passe (plus petite des dates de début de la solution courante) 27/09/02 M. Palpant, C. Artigues, P. Michelon 22
33
M. Palpant, C. Artigues, P. Michelon
Reconstruction de la solution courante 5 10 1 4 6 2 7 15 res1 res2 3 20 25 27/09/02 M. Palpant, C. Artigues, P. Michelon 23
34
M. Palpant, C. Artigues, P. Michelon
Reconstruction de la solution courante 5 10 1 4 6 2 7 15 res1 res2 3 20 27/09/02 M. Palpant, C. Artigues, P. Michelon 23
35
M. Palpant, C. Artigues, P. Michelon
Reconstruction de la solution courante res1 3 1 5 3 2 1 6 5 10 15 20 res2 1 4 2 7 5 10 15 20 27/09/02 M. Palpant, C. Artigues, P. Michelon 23
36
M. Palpant, C. Artigues, P. Michelon
Reconstruction de la solution courante res1 3 1 5 3 2 1 6 5 10 15 res2 1 4 2 7 5 10 15 27/09/02 M. Palpant, C. Artigues, P. Michelon 23
37
M. Palpant, C. Artigues, P. Michelon
Diversification reconstruction complète périodique d’une nouvelle solution (multi-start) utilisation de l’heuristique de forward-backward : règle de priorité différente lors de la première passe (choix aléatoire de la tâche à ordonnancer) 27/09/02 M. Palpant, C. Artigues, P. Michelon 24
38
M. Palpant, C. Artigues, P. Michelon
Réglage des paramètres p : valeur de départ relativement faible auto-ajustement toutes les 5 itérations t_opt = 0.5 seconde nb_iter = n max_iter = 10*n 27/09/02 M. Palpant, C. Artigues, P. Michelon 25
39
M. Palpant, C. Artigues, P. Michelon
Tests d’arrêt atteinte d’un nombre maximum d’itérations atteinte d’une borne inférieure triviale sous-problème de taille n résolu exactement 27/09/02 M. Palpant, C. Artigues, P. Michelon 26
40
Résultats expérimentaux : PPC
Dev_ Opt* LB Max_ dev Nb_ best Aver_ time J30 0,013 - 2,061 476 13,83 132 J60 0,166 10,807 3,061 420 42,09 225 J90 0,358 10,409 4,839 384 67,38 339 J120 1,459 32,716 7,692 238 238,90 607 * optimum pour J30 ou meilleure solution connue pour J60, J90 et J120 27/09/02 M. Palpant, C. Artigues, P. Michelon 27
41
Résultats expérimentaux : PL
Dev_ Opt* LB Max_ dev Nb_ best Aver_ time J30 0,078 - 3,175 457 165,04 1485 J60 0,629 11,480 7,071 371 397,39 2238 * optimum pour J30 ou meilleure solution connue pour J60 27/09/02 M. Palpant, C. Artigues, P. Michelon 28
42
Résultats expérimentaux
Algorithme Dev_opt (J30) Dev_LB (J60) Dev_LB (J90) Dev_LB (J120) Notre méthode 0.013 10.807 10.409 32.716 Valls et al. (2000) 0.056 11.455 11.123 34.533 Hartmann (1997) 0.25 11.89 - 36.74 Bouleimen, Lecocq (1998) 0.23 11.90 37.68 Kolish (1996) 1.29 13.23 38.75 27/09/02 M. Palpant, C. Artigues, P. Michelon 29
43
M. Palpant, C. Artigues, P. Michelon
Conclusions intérêts : méthode très simple et facile à implémenter résultats de qualité inconvénients : méthode relativement coûteuse en terme de temps d’exécution nécessité de trouver un processus de sélection du sous-problème efficace (problème dépendant) 27/09/02 M. Palpant, C. Artigues, P. Michelon 30
44
M. Palpant, C. Artigues, P. Michelon
Perspectives amélioration des résultats : nouvelles méthodes de génération de sous-problèmes : sélection déterministe, multi-fenêtrage… autres procédés de diversification tuning de la méthode exacte : edge-finding, Branch&Bound spécifiques… amélioration du temps d’exécution : parallélisation de l’algorithme résolution du sous-problème : glouton, modification de l’objectif… 27/09/02 M. Palpant, C. Artigues, P. Michelon 31
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.