Planification et ordonnancement sous incertitudes Application à la gestion de projet Julien Bidot 6...

Post on 04-Apr-2015

112 views 1 download

Transcript of Planification et ordonnancement sous incertitudes Application à la gestion de projet Julien Bidot 6...

Planification et ordonnancement sous incertitudesPlanification et ordonnancement sous incertitudesApplication Application àà la gestion de projet la gestion de projet

Julien Bidot

6 juin 2003

2

Journée « Contraintes et R. O. »

PlanPlan

Planification de tâches et ordonnancement

Domaine d’application

Approches existantes

Notre approche :– prototype– modèle théorique

Conclusions et perspectives

3

Journée « Contraintes et R. O. »

Planification / Ordo. / AllocationPlanification / Ordo. / Allocation

Planification– 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.)

4

Journée « Contraintes et R. O. »

Domaine d’applicationDomaine 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

Journée « Contraintes et R. O. »

Domaine d’application (suite)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

Journée « Contraintes et R. O. »

Ordonnancement sans incertitudesOrdonnancement sans incertitudes

Environnement déterministe– Planif. / ordo. prédictifs (hors ligne)

Exécuter

Ordo.

Allouer des

ressources

Fixer lesdates

Cohérence ?

Contraintes temporelles et de

ressources satisfaites

Plan Planifier

Hors ligne

En ligne

Ordonnancement hors ligne (cohérent ?)

7

Journée « Contraintes et R. O. »

Prise en compte des incertitudes ?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)

8

Journée « Contraintes et R. O. »

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

Propriétés de la solutionPropriétés de la solution

Groupe « Flexibilité »Bulletin n°8 ROADéF 02

9

Journée « Contraintes et R. O. »

3. Approche proactive– Plan construit hors ligne en intégrant les connaissances sur les

incertitudes monotone

3 grandes familles d’approches en I. A.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

OPIS [Smith 94]

CASPER [Chien, Knight, Stechert & Rabideau 00]

2. Progression en horizon glissant– Planification en ligne à court terme, reprise au fur et à mesure

que l’exécution lève les incertitudes monotone

10

Journée « Contraintes et R. O. »

1. Réaction1. Réaction

temps

plan/ordo. en exécution

Evénement asynchrone OU de faible probabilité

réact.

interrompu

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

Journée « Contraintes et R. O. »

2. Progression (horizon glissant)2. Progression (horizon glissant)

temps

plan/ordo. en exécution

Evénementsynchrone prévu

intégrer et propager

poursuite du plan/ordo.

Plus de temps pour décider peut être optimal localement

ne doit pas être trop fréquent...

Besoin en mémoire faible

12

Journée « Contraintes et R. O. »

3. Proaction3. Proaction

3.a. Recouvrement maximalPlan prédictif unique calculé pour couvrir le maximum de casCas extrêmes : techniques réactives

3.b. Construction d’un plan/ordonnancement flexibleCertaines décisions d’ordonnancement laissées en suspend par ex. activités « flottantes » ou branches conditionnelles

Just-In-Case Scheduling [Drummond, Bresina & Swanson 94]

Ordonnancement flou [Dubois, Fargier & Prade 93]

Slack-based Techniques [Davenport, Gefflot & Beck 01]

β-Robustness [Daniels & Carillo 97]

STNUs [Morris, Muscettola & Vidal 01]

13

Journée « Contraintes et R. O. »

3.b. Flexibilité sur le temps3.b. Flexibilité sur le temps

tempsEvénement synchrone :- Fin d’une tâche observée

déterminer les prochaines actions

plan/ordo. en exécution

14

Journée « Contraintes et R. O. »

3.b. Flexibilité sur le temps3.b. Flexibilité sur le temps

tempsEvé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

Journée « Contraintes et R. O. »

plan/ordo. en exécutionbranche 2

branche 1

3.b. Flexibilité sur les activités3.b. Flexibilité sur les activités

tempsEvénement synchrone :- fin d’une activité- récolte d’informations

Correspondance del’observation avecles prochaines actions

Pas de décision à prendre en ligneBesoin en mémoire élevéTemps de calcul hors ligne prohibitif

16

Journée « Contraintes et R. O. »

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

PrototypePrototype

17

Journée « Contraintes et R. O. »

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 sicritère de réordonnancement vérifié

plusieurs critères de réordonnancement possibles

technique appropriée si dynamique du système physiquesous-jacent pas trop rapide

Première version testée : non monotonePremière version testée : non monotone

18

Journée « Contraintes et R. O. »

contexte 1 :Ordonnancementcomplet indicatif courant

contexte 2

t12 : critère de réordonnancement vérifié

i2

Première version testée (suite)Première version testée (suite)

19

Journée « Contraintes et R. O. »

Comparaisons des valeurs estimées et indicatives

Première version testée (suite)Première version testée (suite)

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/σ

20

Journée « Contraintes et R. O. »

Résultats avec la11Résultats avec la11

21

Journée « Contraintes et R. O. »

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-jacentrelativement rapide

Deuxième version : monotoneDeuxième version : monotone

22

Journée « Contraintes et R. O. »

contexte 1 :Ordonnancementpartiel courant

contexte 2

t12 : critère de progression vérifié

i2

Deuxième version (suite)Deuxième version (suite)

23

Journée « Contraintes et R. O. »

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

Notre modèle théorique Notre modèle théorique

24

Journée « Contraintes et R. O. »

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

Notre modèle théorique (suite)Notre modèle théorique (suite)

25

Journée « Contraintes et R. O. »

Notre modèle théorique (suite)Notre modèle théorique (suite)

contexte 1

contexte 3

t13 : 0.1

t12 : 0.6

contexte 2

i1

i2

i3

contexte 4i4

t14 : 0.3i1’

contexte 5i5

t1’5 : 0.15

26

Journée « Contraintes et R. O. »

Notre modèle théorique (suite)Notre modèle théorique (suite)

contexte 1

contexte 2t12 : 0.2

i2

Approche purement réactive

27

Journée « Contraintes et R. O. »

Notre modèle théorique (suite)Notre modèle théorique (suite)

contexte 1

contexte 3

i1

i3

t13 : 0.000002

Approche par recouvrement maximal

contexte 2

t12 : 0.00001

i2

28

Journée « Contraintes et R. O. »

contexte 1

Approche conditionnelle pure

t12 : 0.6

contexte 2i1 i2

contexte 3

i3

t13 : 0.2

i3’

Notre modèle théorique (suite)Notre modèle théorique (suite)

29

Journée « Contraintes et R. O. »

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

Notre approcheNotre approche

30

Journée « Contraintes et R. O. »

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

Conclusions et perspectivesConclusions et perspectives