Toulouse, 14 mai 2003 Planification et ordonnancement sous incertitudes Application à la gestion de projet Julien Bidot
Plan Séminaire au LAAS Planification de tâches et ordonnancement Domaine d application Approches existantes Notre approche Conclusions et perspectives 2
Séminaire au LAAS Planif.. / Alloc. / Ordo. Planification choisir et placer dans le temps les actions qui vont permettre à l agent d atteindre un but donné Allocation de ressources affecter une (des) ressource(s) à chaque activité, nécessaire(s) à son exécution (ex. : machine, opérateur, outil, carburant, etc.) Ordonnancement placer dans le temps un ensemble d activités connues que doit exécuter l agent 3
Domaine d application Séminaire au LAAS Gestion de projets Ingénierie civile (construction de barrages) Bloc 23 Bloc 22 Bloc 11 Bloc 24 Bloc 25 Bloc 26 Bloc 27 Bloc 28 Bloc 29 Bloc 21 Bloc 20 Bloc 19 Bloc 18 Blindage Bloc 12 Bloc 13 Bloc 14 Bloc 15 Bloc 10 Bloc 9 Bloc 8 Bloc 7 Bloc 6 Bloc 5 Bloc 1 Bloc 2 Bloc 3 Bloc 4 Bloc 30 Bloc 17 Bloc 16 Lit de l oued 4
Séminaire au LAAS Domaine d application (suite) Incertitudes : découverte de mauvaises conditions géologiques retard du fournisseur occurrence des crues (statistiques) Coûts : achats ou locations (matière ou machines), salaires pénalités de retard But : assurer un coût max. inférieur à une borne 5
Séminaire au LAAS Ordo. sans incertitudes Environnement statique déterministe Planif. / ordo. prédictifs (hors ligne) Cohérence? Contraintes temporelles et de ressources satisfaites Ordonnancement hors ligne Planifier par ex. Plan Allouer des ress. Séquencer les activités Fixer les débuts Ordo. Hors ligne En ligne Exécuter 6
Séminaire au LAAS Prise en compte des incertitudes? Environnement non-déterministe dynamique! Les incertitudes peuvent être temporelles, sur les ressources, sur l état du monde Les événements incertains (aléas) peuvent être synchrones (fin d une activité de durée incertaine, événements attendus à une date incertaine) ou asynchrones (peuvent survenir à tout instant ) La génération du plan / ordo. peut être monotone (pas de remise en cause du plan courant) ou non-monotone (révisions opportunistes ou suite à une dégradation de la qualité du plan) 7
Séminaire au LAAS Propriétés de la solution Tentatives de définitions communes R. O. / I. A Plan/Ordo. flexible = des choix sont laissés, l arbitrage se faisant en ligne Flexibilité sur les temps, Flexibilité sur les ordres, Flexibilité sur les affectations, Flexibilité sur les activités Groupe «Flexibilité» Bulletin n 8 ROADéF 02 Plan/Ordo. stable = le plan/ordo. prédit hors ligne s exécutera en ligne avec un minimum de modifications Plan/Ordo. robuste = quoiqu il arrive, garantie de la «qualité» de la solution qui sera effectivement exécutée 8
Séminaire au LAAS 3 grandes familles d approches en I. A. 1. Approche réactive (événements non anticipés) Plan prédit hors ligne, mais remis en cause en ligne non monotone Simple règle d exécution (dispatching) monotone 2. Progression en horizon glissant Planif. en ligne à court terme, reprise au fur et à mesure que l exécution lève les incertitudes monotone 3. Approche proactive OPIS [Smith 94] CASPER [Chien, Knight, Stechert & Rabideau 00] Plan construit hors ligne en intégrant les connaissances sur les incertitudes monotone 9
Séminaire au LAAS 1. Réaction plan/ordo. exécuté interrompu réact. nouveau plan/ordo. Evénement asynchrone OU de faible probabilité temps Besoin de décision très rapide en général sous optimal ne doit pas être trop fréquent... Besoin en mémoire faible 10
Séminaire au LAAS 2. Progression (horizon glissant) plan/ordo. exécuté intégrer et propager poursuite du plan/ordo. Evénement synchrone prévu temps Plus de temps pour décider peut être optimal ne doit pas être trop fréquent... Besoin en mémoire faible 11
3. Proaction Séminaire au LAAS 3.a Recouvrement maximal Plan prédictif unique calculé pour couvrir le maximum de cas Cas extrêmes : techniques réactives Ordonnancement flou [Dubois, Fargier & Prade 93] ß-Robustness [Daniels & Carillo 97] 3.b Construction d un plan/ordo. flexible Certaines décisions d ordonnancement laissées en suspend par ex. activités «flottantes» ou branches conditionnelles Just-In-Case Scheduling [Drummond, Bresina & Swanson 94] Slack-based Techniques [Davenport, Gefflot & Beck 01] STNUs [Morris, Muscettola & Vidal 01] 12
3.b Flexibilité sur le temps Séminaire au LAAS plan/ordo. exécuté déterminer les prochaines actions Evénement synchrone : - Fin d une tâche observée temps 13
Séminaire au LAAS 3.b Flexibilité sur le temps plan/ordo. exécuté déterminer les prochaines actions Evénement synchrone : - Fin d une tâche observée temps Décision rapide + à des instants prédéterminés Ajouter de la flexibilité peut restreindre l optimalité... Besoin en mémoire faible 14
3.b Flexibilité sur les activités Séminaire au LAAS plan/ordo. exécuté branche 1 branche 2 Correspondance de l observation avec les prochaines actions Evénement synchrone : - fin d une activité - récolte d informations temps Décision rapide + à des instants prédéterminés Optimal Besoin en mémoire élevé 15
Séminaire au LAAS Notre approche Contexte = réseau de contraintes associé à une politique d exécution et un algorithme d exécution local = étape du plan - calculé a priori ou dynamiquement de façon réactive 16
Notre approche (suite) Séminaire au LAAS Transition = passage d un contexte source vers un contexte cible - activée de façon synchrone ou asynchrone dès la satisfaction des conditions associées synchrone = d un instant du contexte source vers un instant du contexte cible asynchrone = du contexte source vers un instant du contexte cible Plan = {contextes, transitions} Plan exécuté = Plan + contexte courant + instant courant 17
Notre approche (suite) Séminaire au LAAS i2 contexte 2 contexte 1 i1 i1 t12 : 0.45 i4 contexte 4 t14 : 0.4 t1 5 : 0.15 i5 contexte 5 t13 : 0.1 i3 contexte 3 18
Notre approche (suite) Séminaire au LAAS Approche purement réactive t12 : 0.2 i2 contexte 2 contexte 1 19
Notre approche (suite) Séminaire au LAAS Approche purement progressive t12 : 1.0 t2 3 : 1.0 i1 i2 i2 i3 i3 contexte 1 contexte 2 contexte 3 20
Notre approche (suite) Séminaire au LAAS Approche par recouvrement maximal contexte 2 i2 t12 : 0.1 t13 : 0.2 i1 contexte 1 i3 contexte 3 21
Notre approche (suite) Séminaire au LAAS Approche conditionnelle pure t1 3 : 0.4 i3 i3 contexte 3 i3 t12 : 0.6 i1 i1 i2 i2 contexte 1 contexte 2 i2 22
Séminaire au LAAS Notre approche (suite) Intégration Proactif : branches conditionnelles = transitions entre «contextes» En ligne : horizon glissant = développer uniquement les contextes à court terme + les plus prometteurs à long terme Réactif : contextes construits dynamiquement Objectif final de robustesse = respect garanti d un niveau de service 23
Prototype(s) Séminaire au LAAS Job-shop avec durées imprécises des activités (distributions de probabilités) mises à jour en ligne des probabilités par simulation de ce qui reste à exécuter contexte = tout ou partie de l ordonnancement critère d optimisation = makespan 24
Séminaire au LAAS Premier prototype testé : non monotone contexte = ordonnancement complet partie de l ordo. non exécutée remise en cause si critère de réordonnancement vérifié plusieurs critères de réordonnancement possibles technique appropriée si dynamique du système physique sous-jacent relativement lente 25
Séminaire au LAAS t12 : 0.2 i2 contexte 2 contexte 1 26
Séminaire au LAAS Premier prototype testé (suite) Comparaisons des valeurs estimées et indicatives 3 critères de réordonnancement testés : par rapport au makespan M : M est > M ind /s M est -M ind > D/s par rapport aux fins des activités :? end est -end ind /n > D/s 27
Résultats avec la11 Séminaire au LAAS 28
Prochain prototype : monotone Séminaire au LAAS contexte = un sous-ensemble d activités sélectionné, ordonnancé et incorporé au plan courant Jamais remis en cause intégration progressive (en horizon glissant) des contextes de façon asynchrone par rapport à l exécution critère de progression basé sur le degré d incertitude des données technique appropriée si dynamique du système physique sous-jacent relativement rapide 29
Séminaire au LAAS i1 t12 : 1.0 i2 t2 3 : 1.0 i2 contexte 1 contexte 2 i3 i3 contexte 3 30
Conclusions et perspectives Séminaire au LAAS Résultats pratiques prometteurs (qualité) pour la technique non monotone Expérimentations supplémentaires (nombreux paramètres et autres instances) Implémentation et expérimentation de l approche monotone avec horizon glissant Prototypes avec techniques proactives (flexibilités) Intégration des différentes techniques Comparaison avec d autres techniques existantes 31