La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

6 juin 2003 Planification et ordonnancement sous incertitudes Application à la gestion de projet Julien Bidot Ce travail se fait dans le cadre d’une thèse.

Présentations similaires


Présentation au sujet: "6 juin 2003 Planification et ordonnancement sous incertitudes Application à la gestion de projet Julien Bidot Ce travail se fait dans le cadre d’une thèse."— Transcription de la présentation:

1 6 juin 2003 Planification et ordonnancement sous incertitudes Application à la gestion de projet Julien Bidot Ce travail se fait dans le cadre d’une thèse Cifre entre le L. G. P. de l’ENI de Tarbes et la société ILOG. Mon directeur de thèse est Bernard Grabot du L. G. P. Equipe de projet (encadrement) : Philippe Laborie de ILOG, Chris Beck du Cork Constraint Computation Centre et Thierry Vidal du L. G. P.

2 Plan Planification de tâches et ordonnancement Domaine d’application
Approches existantes Notre approche : prototype modèle théorique Conclusions et perspectives

3 Planification / Ordo. / Allocation
choisir et organiser dans le temps les actions qui vont permettre à l’agent d’atteindre un but donné Ordonnancement placer dans le temps un ensemble d’activités connues que doit exécuter l’agent Allocation de ressources affecter une (des) ressource(s) à chaque activité, nécessaire(s) à son exécution (ex. : machine, opérateur, outil, carburant, etc.) Planification en I. A. Deux aspects à prendre en compte pour prendre des décisions : ressources et temps. Ordonnancement peut être vu comme un sous-problème de la planification. Allocation de ressources peut être vu comme un sous-problème d’ordonnancement.

4 Domaine d’application
Gestion de projets Ingénierie civile (construction de barrages) Bloc 1 Bloc 2 Bloc 3 Bloc 4 Bloc 10 Bloc 9 Bloc 8 Bloc 7 Bloc 6 Bloc 5 Bloc 12 Bloc 13 Bloc 14 Bloc 15 Bloc 21 Bloc 20 Bloc 19 Bloc 18 Bloc 24 Bloc 25 Bloc 26 Bloc 27 Bloc 28 Bloc 29 Bloc 11 Bloc 22 Bloc 23 Bloc 16 Bloc 17 Bloc 30 Blindage Lit de l’oued

5 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

6 Contraintes temporelles et de ressources satisfaites
Ordonnancement sans incertitudes Exécuter Ordo. Allouer des ressources Fixer les dates Cohérence ? Contraintes temporelles et de ressources satisfaites Plan Planifier Hors ligne En ligne Ordonnancement hors ligne (cohérent ?) Environnement déterministe Planif. / ordo. prédictifs (hors ligne) Modélisation théorique peu réaliste

7 Prise en compte des incertitudes ?
Environnement non-déterministe  processus d’ordonnancement 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 / ordonnancement peut être monotone (pas de remise en cause des décisions du plan courant) ou non-monotone (révisions opportunistes ou suite à une dégradation de la qualité du plan) Evénements synchrones : ne sont pas synchrones par rapport à l’horloge mais par rapport à une étape précise du plan ou à l’ordonnancement.

8 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 le temps, Flexibilité sur les ordres, Flexibilité sur les affectations, Flexibilité sur les activités 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 Groupe « Flexibilité » Bulletin n°8 ROADéF 02 Flexibilité sur les ordres = pour une ressource donnée plusieurs séquencements des activités sont possibles. Flexibilité sur les activités = pour effectuer une activité donnée plusieurs séquencements de tâches sont possibles. On peut accepter ou vouloir un certain degré de flexibilité d’un type donné. Un processus de résolution peut être robuste sans être stable. On ne violera pas les contraintes quoiqu’il arrive.

9 3 grandes familles d’approches en I. A.
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 OPIS [Smith 94] Progression en horizon glissant Planification en ligne à court terme, reprise au fur et à mesure que l’exécution lève les incertitudes  monotone CASPER [Chien, Knight, Stechert & Rabideau 00] Approche proactive Plan construit hors ligne en intégrant les connaissances sur les incertitudes  monotone Horizon glissant : on maintient une anticipation !

10 1. Réaction temps plan/ordo. en exécution interrompu réact.
Evénement asynchrone OU de faible probabilité temps plan/ordo. en exécution interrompu réact. nouveau plan/ordo. Besoin de décision très rapide  en général sous optimal localement ne doit pas être trop fréquent... Besoin en mémoire faible

11 2. Progression (horizon glissant)
Evénement synchrone prévu temps plan/ordo. en exécution intégrer et propager poursuite du plan/ordo. Construction de la solution petit à petit L’horizon sur lequel on travaille se décale au fur et à mesure de l’exécution de façon à ce que le nouvel horizon recouvre partiellement l’horizon précédent. On travaille sur des plans de recouvrement successifs. Plus de temps pour décider  peut être optimal localement ne doit pas être trop fréquent... Besoin en mémoire faible

12 3. Proaction 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/ordonnancement flexible Certaines décisions d’ordonnancement laissées en suspend par ex. activités « flottantes » ou branches conditionnelles Recouvrement maximal : introduction des modélisations de l’incertitude sous forme probabiliste ou possibiliste Just-In-Case Scheduling [Drummond, Bresina & Swanson 94] Slack-based Techniques [Davenport, Gefflot & Beck 01] STNUs [Morris, Muscettola & Vidal 01]

13 3.b. Flexibilité sur le temps
Evénement synchrone : - Fin d’une tâche observée déterminer les prochaines actions plan/ordo. en exécution temps Actions = débuts des activités restant à exécuter Réseaux de contraintes temporelles (STNUs)

14 3.b. Flexibilité sur le temps
Evénement synchrone : - Fin d’une tâche observée déterminer les prochaines actions plan/ordo. en exécution Pas de décision à prendre en ligne Ajouter de la flexibilité peut restreindre l’optimalité locale... Besoin en mémoire faible

15 3.b. Flexibilité sur les activités
plan/ordo. en exécution branche 2 branche 1 Evénement synchrone : - fin d’une activité - récolte d’informations Correspondance de l’observation avec les prochaines actions temps MDP, automate dont les états sont ceux que peut prendre le système Plans conditionnels Pas de décision à prendre en ligne Besoin en mémoire élevé Temps de calcul hors ligne prohibitif

16 Prototype Job-shop avec durées imprécises des activités (distributions de probabilités connues) mises à jour en ligne des probabilités des dates et des durées par simulation de ce qui reste à exécuter contexte = tout ou partie de l’ordonnancement critère d’optimisation = makespan Approche par contraintes La complexité de la simulation est linéaire en nombre d’activités multiplié par le nombre d’échantillons.

17 Première version testée : non monotone
ordonnancement complet et flexible sur les temps calculé avec les durées moyennes et des techniques d’optimisation classiques = ensemble d’activités et de contraintes temporelles 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 pas trop rapide Les critères de réordonnancement peuvent être opportunistes ou non. Si une activité finit plus tôt que prévu on en profite pour optimiser l ’ordonnancement courant. Exécution des activités au plus tôt Durées du problème déterministe = durées moyennes du problème non-déterministe

18 Première version testée (suite)
contexte 2 contexte 1 : Ordonnancement complet indicatif courant t12 : critère de réordonnancement vérifié Technique réactive avec anticipation

19 Première version testée (suite)
Comparaisons des valeurs estimées et indicatives 3 critères de réordonnancement testés : par rapport au makespan M : Mest > Mind/σ makespan |Mest-Mind| > D/σ makespan absolu par rapport aux fins des activités : ∑A|endest-endind|/n > D/σ Les valeurs indicatives sont obtenues par l’ordonnancement indicatif calculé hors ligne puis recalculé à chaque réordonnancement. Les valeurs estimées sont obtenues par simulation. Sigma = facteur de sensibilité pour régler l’effort de calcul (nombre de réordonnancements) que l’on souhaite D = moyenne des durées moyennes n = nombre d’activités qu’il restait à finir d’exécuter et à exécuter lors du dernier réordonnancement

20 Résultats avec la11 La11 est une instance de problème de Job-shop avec 100 activités (20*5). Politique de décision = exécuter au plus tôt 3 critères ont été expérimentés avec 100 scénarios d’exécution différents pour un degré d’incertitude donné. A chaque observation du critère et/ou périodiquement (ici à chaque fin de tâche), simulations sont lancées pour mettre à jour les distributions de probabilités. ILOG Scheduler 5.3 est utilisé pour ordonnancer ou réordonnancer, 1 seconde CPU est allouée pour accomplir cette tâche. L’algorithme de recherche est chronologique, standard et fait du retour-arrière. Le facteur de sensibilité est utilisé pour pouvoir tracer les courbes. Point de vue pratique : Quel que soit le critère utilisé on obtient pour un effort de calcul élevé une solution environ 1,3% au-dessus de la solution optimale (= borne minimale de la qualité que l’on peut espérer obtenir) alors que sans réordonnancement on obtient une solution environ 8,7% au-dessus de la solution optimale. La prise en compte de l’incertitude sur les données du problème permet d’améliorer sensiblement la qualité de la solution en utilisant un critère pour réordonnancer pendant l’exécution. Les 2 critères opportunistes, basés sur les écarts absolus, sont plus « efficaces » que celui basé sur le dépassement du makespan indicatif pour un effort de calcul moyen. Un décroissement rapide du makespan est observé dès que l’on commence à réordonnancer (entre 1 et 5 réordonnancements), ensuite l’écart se creuse entre les différents critères pour un effort de calcul moyen. Point de vue théorique : Pour un effort de calcul important de combien peut-on espérer se rapprocher de la borne minimale ? On doit prouver que l’on ne peut pas atteindre cette borne minimale. Nous sommes en train d’expérimenter ces critères de réordonnancement sur d’autres instances de Job-shop.

21 Deuxième version : monotone
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 degré d’incertitude des dates distance temporelle entre l’instant courant et la fin de la fenêtre temporelle associée au sous-ensemble d’activités séquencé technique appropriée si dynamique du système physique sous-jacent relativement rapide

22 Deuxième version (suite)
contexte 2 contexte 1 : Ordonnancement partiel courant t12 : critère de progression vérifié Technique réactive

23 Notre modèle théorique
Automate temporisé états = contextes Contexte = ensemble de données associé à un algorithme d’exécution local - calculé a priori ou dynamiquement de façon réactive Le prototype présenté précédemment peut être intégré au modèle théorique. Un contexte est défini par rapport au type d’aléas pouvant survenir pendant son exécution. (Un contexte = une politique d’exécution) Cas de l’approche non monotone : ensemble de données = ordonnancement complet flexible algorithme d’exécution = exécuter les activités au plus tôt

24 Notre modèle théorique (suite)
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 en exécution = plan + contexte courant + instant courant Les transitions peuvent être associées à une valeur représentant la probabilité ou la possibilité qu’elle soit effectivement activée pendant l’exécution. Cette valeur est mise à jour pendant l’exécution. L’activation d’une transition est indépendante des activations des autres transitions. Les conditions sont liées aux contraintes dans le cas d’une modélisation par réseaux de contraintes. Elles peuvent être - temporelles : dépassement des bornes de fenêtres de temps ; - il n’y a plus de données à fournir à l’algorithme d’exécution (toutes les activités du contexte ont été exécutées) ; - les contraintes de ressources sont violées ; - l’expression un niveau de recouvrement trop faible. L’ensemble des contextes et des transitions développés à un instant t résout totalement (ou partiellement) le problème initial. Cet ensemble est mis à jour tout au long de l’exécution.

25 Notre modèle théorique (suite)
contexte 2 t12 : 0.6 i4 contexte 4 i1 contexte 1 t14 : 0.3 i1’ t1’5 : 0.15 i5 Exemples : t12 : probabilité que l’activité A2 finisse après l’activité A6 t14 : probabilité que la ressource R3 tombe en panne Problèmes de décision = calculer les contextes a priori l’exécution ou dynamiquement contexte 5 t13 : 0.1 i3 contexte 3

26 Notre modèle théorique (suite)
Approche purement réactive i2 contexte 2 t12 : 0.2 contexte 1

27 Notre modèle théorique (suite)
Approche par recouvrement maximal contexte 2 i2 i3 contexte 3 t12 : t13 : i1 contexte 1

28 Notre modèle théorique (suite)
Approche conditionnelle pure i3 i3’ contexte 3 t13 : 0.2 Approche flexible : chaque contexte développé est flexible. t12 : 0.6 i1 i2 contexte 1 contexte 2

29 Notre approche Intégration
Proactif : branches conditionnelles = transitions entre contextes précalculés En ligne : horizon glissant = développer uniquement les contextes à court terme et éventuellement les plus prometteurs à long terme Réactif : contextes calculés dynamiquement Objectif final de robustesse = respect garanti d’un niveau de service Autre objectif : proposer des métriques pour mesurer la qualité de la solution par rapport au degré d’incertitude des données du problème initial. Nous développons en parallèle le modèle et le prototype qui constitue une instance du modèle.

30 Conclusions et perspectives
Utilisation de techniques d’optimisation déterministes pour résoudre des problèmes stochastiques pouvant être très complexes 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 Extension du prototype pour tendre vers un prototype de la construction du mur de barrage en s’intéressant à l’allocation des ressources (unaires ou à états) et aux aléas associés (incertitude sur les capacités) ainsi qu’aux techniques proactives (flexibilités)  Intégration des différentes familles de techniques Comparaison avec des approches existantes Il reste à tester d’autres critères de réordonnancement et de voir les effets des paramètres (fréquence d’observation du critère, degré d’incertitude, algorithme de recherche utilisé, qualité, degré de flexibilité et de stabilité de la solution obtenue et temps alloué à la recherche).


Télécharger ppt "6 juin 2003 Planification et ordonnancement sous incertitudes Application à la gestion de projet Julien Bidot Ce travail se fait dans le cadre d’une thèse."

Présentations similaires


Annonces Google