550 likes | 701 Views
Méthodes prédictive et proactive pour un problème de gestion de projet sous contraintes de ressources humaines Laure-Emmanuelle Drezet. 27 janvier 2005. Plan. Problématique Approche prédictive Heuristiques basées sur des règles de priorité Méthode Tabou Expérimentations
E N D
Méthodes prédictive et proactive pour un problème de gestion de projet sous contraintes de ressources humainesLaure-Emmanuelle Drezet 27 janvier 2005
Plan • Problématique • Approche prédictive • Heuristiques basées sur des règles de priorité • Méthode Tabou • Expérimentations • Approche proactive • Problématique et mesure de robustesse • Heuristiques basées sur des règles de priorité • Méthode Tabou • Expérimentations • Conclusions et perspectives GOThA - 27 janvier 2006
Problématique : Projet • Eskape est une SSII (Société de service et d’ingénierie informatique) • Fonctionne en mode projet (ex: développement d’application logicielle) • Le système fonctionne en discontinu (pas de travail les nuits et les Week-ends) GOThA - 27 janvier 2006
Problématique : Projet • Les projets sont découpés en activités, qui utilisent un seul type de ressources : les ressources humaines • Les activités sont reliées par des contraintes de précédence. GOThA - 27 janvier 2006
Problématique : Projet et ressources • Des contraintes légales doivent être respectées par l’emploi du temps de la personne i: • Ampi : amplitude maximale d’une journée de travail • Nmini et Nmaxi : durée minimale et maximale d’une journée de travail • Une limite est fixée sur le nombre maximal de changements d’activité par jour pour chaque employé GOThA - 27 janvier 2006
Problématique : activités du projet • Chaque activité j du projet possède: • Une durée pj • Une date de début au plus tôt rj • Une date de fin au plus tard dj • Deux profils de consommation de ressources bminjt et bmaxjt GOThA - 27 janvier 2006
Problématique : besoins en compétences • Un besoin en compétences est formulé comme un nombre minimal et maximal de personnes présentes capables de réaliser une activité donnée. • Des besoins en compétences doivent être satisfaits: • Contrats de maintenance, • Sécurité • … GOThA - 27 janvier 2006
Problématique : contraintes • Contraintes « process » : • Besoins des activités (minimaux et maximaux) • Relations de précédence • Compétences des employés • Contraintes « humaines » : • Contraintes légales • Besoins en compétences GOThA - 27 janvier 2006
Problématique : Différentes phases • Tous les mois ou toutes les quinzaines, le planificateur calcule un planning prévisionnel • Mais, malgré tous les efforts pris pour sa construction, il est quasiment impossible que ce planning prévisionnel puisse être appliqué sans modifications => Approches prédictive et proactive GOThA - 27 janvier 2006
Prédictif, proactif et réactif • Dans l’approche prédictive, un ordonnancement prévisionnel est construit • Qualité • Dans l’approche proactive, un ordonnancement prévisionnel est construit en tenant compte d’informations sur les aléas qui peuvent se produire durant sa mise en œuvre • Robustesse GOThA - 27 janvier 2006
Plan • Problématique • Approche prédictive • Heuristiques basées sur des règles de priorité • Méthode Tabou • Expérimentations • Approche proactive • Problématique et mesure de robustesse • Heuristiques basées sur des règles de priorité • Méthode Tabou • Expérimentations • Conclusions et perspectives GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Description du problème • Les plannings prévisionnels des employés sont construits en utilisant les activités d’un projet • L’horizon de planification : la quinzaine/ le mois • L’objectif : minimiser le retard maximal algébrique du projet GOThA - 27 janvier 2006
A1 r1=0 p1=4 d1=5 A2 r2=2 p2=3 d2=6 A3 r3=2 p3=2 d3=6 A4 r4=4 p4=4 d4=9 • Approche prédictive> Heuristiques basées sur des règles de priorité Exemple • 4 employés 1 journée= 6 per • Un projet (4 activités) • Contraintes de personnel • Graphe du projet Besoins en compétences A4 1 2 3 4 5 6 7 8 Lmax= max(-1,-1,2,1)=2 GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Méthode heuristique à règle de priorité • Minimisation du nombre de contraintes violées (contraintes « humaines ») et du Lmax • Les contraintes « process » sont toujours respectées • Nous avons évalué différentes règles de priorité et deux schémas d’heuristiques différents GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Algorithme général (1) U est l’ensemble des activités éligibles Tant queU n’est pas vide faire Pour chaque activité i de Ufaire FinPour FinTantque GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Algorithme général (1) U est l’ensemble des activités éligibles Tant queU n’est pas vide faire Pour chaque activité i de Ufaire P est la liste triée (Wp) des personnes compétentes pour réaliser i Générer un sous-ensemble A des affectations possibles pour i, en respectant les besoins minimaux de i(|A|≤ n) Calculer le retard de i avec chaque affectation de A Besti est la “meilleure” affectation de i FinPour FinTantque GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Algorithme général (1) U est l’ensemble des activités éligibles Tant queU n’est pas vide faire Pour chaque activité i de Ufaire P est la liste triée (Wp) des personnes compétentes pour réaliser i Générer un sous-ensemble A des affectations possibles pour i, en respectant les besoins minimaux de i(|A|≤ n) Calculer le retard de i avec chaque affectation de A Besti est la “meilleure” affectation de i FinPour Ordonnancer l’activité i* avec le plus petit Besti* Mettre à jour U FinTantque O( Nact2 (Nemp log(Nemp) + n2)) GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Algorithme général (2) U est l’ensemble des activités éligibles Tant queU n’est pas vide faire Trier U selon une règle de priorité (Wu), i est la première activité de U P est la liste triée(Wp) des personnes compétentes pour réaliser i Générer un sous-ensemble A des affectations possibles pour i, en respectant les besoins minimaux de i(|A|≤ n) Calculer le retard de i avec chaque affectation de A Besti est la “meilleure” affectation de i Ordonnancer l’activité i selon l’affectation Besti Mettre à jour U FinTantque O( Nact (log(Nact)+Nemp log(Nemp) + n2)) GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Tri de l’ensemble des activités éligibles • EDD (Earliest Due Date) : les activités sont triées dans l’ordre croissant de leurs dates dues • MINSLACK : les activités sont triées dans l’ordre croissant de leurs marges GOThA - 27 janvier 2006
A1 r1=0 p1=4 d1=5 A2 r2=2 p2=3 d2=6 • Approche prédictive> Heuristiques basées sur des règles de priorité Tri de l’ensemble des activités éligibles • TOTREQ (Total Requirement) : les activités sont triées dans l’ordre décroissant de leurs besoins minimaux totaux TOTREQ1=6 =>A1<A2 dans U TOTREQ2=3 GOThA - 27 janvier 2006
NBSUCC1=2 NBSUCC2=3 => A2<A1 dans U • Approche prédictive> Heuristiques basées sur des règles de priorité Tri de l’ensemble des activités éligibles • NBSUCC (Number of Successors): les activités sont triées dans l’ordre décroissant de leur nombre de successeurs transitifs GOThA - 27 janvier 2006
MAXTAIL1=2 MAXTAIL2=max(2;4)=4 => A2<A1 dans U • Approche prédictive> Heuristiques basées sur des règles de priorité Tri de l’ensemble des activités éligibles • MAXTAIL : les activités sont triées dans l’ordre décroissant du plus long chemin de l’activité jusqu’au puits • RANDOM, NBACT (Numéro des activités) GOThA - 27 janvier 2006
MinSkill (Minimum Number of Skills): les employés sont triés dans l’ordre croissant de leur nombre de compétences MinSkill1=2 MinSkill2=3MinSkill3=2MinSkill4=4 =>Pour A4 : P=(E1,E2,E4) • Approche prédictive> Heuristiques basées sur des règles de priorité Tri de l’ensemble des personnes candidates GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Tri de l’ensemble des personnes candidates • MaxSkillReq (Maximal Skill Requirement) : les employés sont triés dans l’ordre décroissant du nombre de besoins en compétences qui peuvent être couverts par leur présence GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Tri de l’ensemble des personnes candidates • Earliest ou FAM (First Available Machine) : les employés sont triés dans l’ordre de leur date de disponibilité au plus tôt. Les trous dans les plannings ne sont pas pris en compte • Earliest Hole : déclinaison de Earliest avec prise en compte des trous de plannings • EarliestHoleLegal : déclinaison de Earliest, pour laquelle le respect des contraintes légales est également pris en compte GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Exemples Earliest EarliestHole EarliestHoleLegal GOThA - 27 janvier 2006
Approche prédictive> Heuristiques basées sur des règles de priorité Procédure d’affectation • La liste triée P est utilisée pour générer n affectations pour chaque activité sélectionnée • Deux types d’affectation : Par Etage Unitaire GOThA - 27 janvier 2006
Approche prédictive> Méthode Tabou Amélioration des résultats : méthode Tabou • Pour améliorer les résultats des heuristiques : méthode Tabou • La solution initiale est fournie par une heuristique basée sur des règles de priorité • Approche lexicographique : nombre de contraintes « humaines » violées / Lmax • Une solution = matrice d’affectation GOThA - 27 janvier 2006
Approche prédictive> Méthode Tabou Amélioration des résultats : méthode Tabou • Mouvements autorisés : • Changement de l’affectation d’une personne pendant une période de temps • Swap de deux personnes pendant une période de temps • Décalage à gauche ou à droite d’une activité • Swap de deux activités GOThA - 27 janvier 2006
Approche prédictive> Méthode Tabou Amélioration des résultats : méthode Tabou • Les voisins, qui ne respectent pas les contraintes de précédence ou les contraintes de compétences, ne sont pas générés. • A chaque itération, un nombre maximal Nv de voisins est généré • La Liste Tabou est composée des mouvements effectués • Les mouvements sont tabous pendant un nombre d’itérations fixé GOThA - 27 janvier 2006
Approche prédictive> Expérimentations Expérimentations • Générateur d’instances • Tests des heuristiques • Tests de la méthode Tabou GOThA - 27 janvier 2006
Approche prédictive> Expérimentations Génération des instances pour le prédictif • Les fichiers sont extraits de la PSPLIB pour le RCPSP [Kolisch et Sprecher, 1996] et sont adaptés à notre problème • Le personnel est homogène : chacun sait faire 70% des activités • Les journées sont découpées en 12 périodes de temps • La durée travaillée par jour minimale de chaque employé est égale à 0. • La durée travaillée par jour maximale de chaque employé est comprise entre 7 et 10. • L’amplitude maximale journalière est comprise entre 7 et 12. • Le nombre de changements maximal d’activités est compris entre 4 et 12. GOThA - 27 janvier 2006
Approche prédictive> Expérimentations Résultats des heuristiques prédictives • Résultats de tests préliminaires : • La règle MINSLACK est la plus efficace • Le second schéma d’algorithme est plus efficace que le premier • Huit heuristiques sont évaluées : H8 = lancement multiple de H7, avec toutes les règles de priorité Wu GOThA - 27 janvier 2006
Approche prédictive> Expérimentations Résultat des heuristiques prédictives Ces résultats moyens sont obtenus sur 110 instances de la PSPLIB adaptée (ensemble J60) Nombre de contraintes violables ≈15 000 Heuristique Nb de contraintes violées Lmax Min Moy Max Min Moy Max H1 55 427,98 845 86 180,41 277 H2 55 427,63 845 86 180,35 277 H3 99 488,35 1029 44 140,81 252 H4 139 602,14 1069 0 79,30 194 H5 21 364,13 1566 8 109,52 272 H6 293 876,64 1915 0 69,94 188 H7 30 399,23 1516 5 104,13 272 H8 30 264,21 955 0 93,96 251 GOThA - 27 janvier 2006
Approche prédictive> Expérimentations Paramétrage Tabou prédictive • Paramètres de la méthode Tabou prédictive: • Durée maximale d’exécution : 5 minutes • Nombre maximal de voisins générés à chaque itération : 50 • Nombre d’itérations avant diversification : 30 • Nombre d’itérations maximal : 400 • Ces paramètres sont fixés grâce à des expérimentations préliminaires (meilleurs résultats, stabilité des solutions…) GOThA - 27 janvier 2006
Approche prédictive> Expérimentations Résultat de la méthode Tabou prédictive Heuristique Nb de contraintes violées Lmax Init Final Gain Init Final Gain H1 427,98 199,32 56,50% 180,41 172,36 4,69% H2 427,98 199,55 56,40% 180,35 172,18 4,77% H3 488,35 236,07 55,09% 140,81 128,04 2,22% H4 602,14 430,41 31,40% 79,30 79,13 0,31% H5 364,13 169,69 47,65% 109,52 108,98 0,69% H6 876,64 649,01 28,47% 69,94 69,92 0,03% H7 399,23 198,91 47,49% 104,13 103,48 0,63% H8 264,21 150,88 42,11% 93,96 93,44 0,52% • Conclusions expérimentales: • Il vaut mieux ne pas utiliser de diversification • L’exploration peut se réduire aux seuls voisins qui respectent les contraintes légales GOThA - 27 janvier 2006
Plan • Problématique • Approche prédictive • Heuristiques basées sur des règles de priorité • Méthode Tabou • Expérimentations • Approche proactive • Problématique et mesure de robustesse • Heuristiques basées sur des règles de priorité • Méthode Tabou • Expérimentations • Conclusions et perspectives GOThA - 27 janvier 2006
Approche proactive> Présentation du problème et mesure de robustesse Description du problème • Les plannings prévisionnels des employés sont construits en utilisant les activités d’un projet • On dispose d’informations sur les aléas qui peuvent se produire durant l’ordonnancement du projet • On veut en tenir compte dans la planification du projet • L’horizon de planification : la quinzaine/ le mois • L’objectif : maximiser la robustesse de l’ordonnancement GOThA - 27 janvier 2006
Approche proactive> Présentation du problème et mesure de robustesse Aléas considérés • Des aléas peuvent survenir: • Indisponibilité d’un employé • Travail sur un autre projet • Déplacement • Modification de la durée d’une activité • Allongement de sa durée • Création de nouveaux besoins de l’activité sur les périodes d’exécution ajoutées GOThA - 27 janvier 2006
Approche proactive> Présentation du problème et mesure de robustesse Mesure de robustesse sur les personnes • A chaque personne i, on associe : • Une probabilité d’indisponibilité : pindi • Une durée maximale d’indisponibilité : dindi • Chaque personne i, a une charge de travail chargei • La mesure de robustesse (à maximiser) d’un ordonnancement S sur les personnes rSP est égale à : GOThA - 27 janvier 2006
Approche proactive> Présentation du problème et mesure de robustesse Mesure de robustesse sur les personnes rsp = min((-4-2)0,3;(-2-2)0,5)= -2 rsp = min((-2-2)0,3;(-4-2)0,5)= -3 GOThA - 27 janvier 2006
Approche proactive> Présentation du problème et mesure de robustesse Mesure de robustesse sur les activités • A chaque activité j, on associe: • Une probabilité d’allongement : pallj • Une durée maximale d’allongement: dallj • Chaque activité j, a une marge margej • La mesure de robustesse (à maximiser) d’un ordonnancement S sur les activités, rSA, est égale à : GOThA - 27 janvier 2006
Approche proactive> Présentation du problème et mesure de robustesse Mesure de robustesse globale • La mesure de robustesse d’un ordonnancement S est définie par : (1-a) rSA + a rSP • Usuellement, la robustesse doit être maximisée • Nous allons plutôt chercher à minimiser : rS =-(1-a) rSA – a rSP GOThA - 27 janvier 2006
Approche proactive> Heuristique basée sur des règles de priorité Règles de priorité robustes • Nouvelle règle de priorité pour les activités : • ROBACT : Les activités sont triées dans l’ordre décroissant de : (margej – dallj) pallj • Nouvelle règle de priorité pour les employés: • RobEmp : Les employés sont triés dans l’ordre décroissant de : -(chargei + dindi) pindi GOThA - 27 janvier 2006
Approche proactive> Méthode Tabou Amélioration des résultats : méthode Tabou • Inspirée de la méthode Tabou prédictive • L’évaluation de la qualité de la solution ne tient plus compte du retard, mais de la robustesse. • Approche lexicographique : nombre de contraintes « humaines » violées / Robustesse GOThA - 27 janvier 2006
Approche proactive> Expérimentations Expérimentations • Les instances utilisées sont générées selon les mêmes principes que les instances « prédictives » • pindiÎ [0,0.5] • dindiÎ [1,36] • palljÎ [0,0.5] • dalljÎ [1,pj] GOThA - 27 janvier 2006
Approche proactive> Expérimentations Résultats des heuristiques proactives • 24 heuristiques ont été évaluées qui font intervenir la robustesse : • pour le tri des activités seulement (catégorie 2) • pour le tri des employés seulement (catégorie 3) • pour le tri des employés et des activités (catégorie 4) • Comparées avec des heuristiques prédictives (catégorie 1) GOThA - 27 janvier 2006
Approche proactive> Expérimentations Résultat des heuristiques proactives Ces résultats sont obtenus sur 480 instances de la PSPLIB adaptée (ensemble J60), pour chaque catégorie d’heuristiques Seules les 2 meilleures heuristiques (pour le nombre de contraintes violées) de chaque catégorie sont retenues Heuristique Nb de cont. violées Lmax rs Catégorie 1 : qualité H8 233,3 74,2 26,91 H5 285,34 80,9 25,68 Catégorie 2 : robustesse / qualité H8 186,34 87,61 26,21 H5 322,34 100,05 25,99 Catégorie 3 : qualité / robustesse H8 192,96 77,7 24,64 H5 279,29 86,64 24,79 Catégorie 4 : robustesse H8 190,87 77,95 24,64 H5 315,82 96,43 25,10 GOThA - 27 janvier 2006
Approche proactive> Expérimentations Résultat de la méthode Tabou proactive Heuristique Nb cont. Violées Lmax rS Init Final Gain Init Final Gain Init Final Gain H8 (qualité/robustesse) 192,96 92,07 53,70% 77,70 77,19 0,53% 24,64 23,43 5,01% H8 (robustesse) 190,87 93,36 53,04% 77,95 77,51 0,41% 24,64 23,55 4,52% • Paramètres de la méthode Tabou proactive: • Durée maximale d’exécution : 5 minutes • Nombre maximal de voisins générés à chaque itération : 50 • Nombre d’itérations avant augmentation du voisinage : 30 • Nombre d’itérations maximal : 400 GOThA - 27 janvier 2006
Approche proactive> Expérimentations Comparaison Prédictif/Proactif Approche Nb de cont. violées Lmax rS Init Final Gain Init Final Gain Init Final Gain Prédictive 270,91 124,43 55,19% 85,94 85,33 0,57% 28,75 28,30 1,40% Proactive 247,59 128,10 50,37% 88,94 88,55 0,24% 26,25 25,19 4,03% Ces résultats sont obtenus sur les 110 instances de la PSPLIB adaptée (ensemble J60) Les solutions initiales de la méthode Tabou proactive proviennent de H8 (robustesse) Les solutions initiales de la méthode Tabou prédictive proviennent de H8 (qualité) GOThA - 27 janvier 2006