Title: Optimisation de l
1Optimisation de lordonnancement dans un milieu
prévisionnel incertain
Djamel BERKOUNE ATER INSA de Toulouse Département
Génie Électrique et Informatique Laboratoire
dArchitecture et Analyses des Systèmes LAAS -
CNRS
2Aspects de recherche
Activités menées jusquà présent dans deux
aspects de la planification
Planification et Ordonnancement dans le milieu
Hospitalier
Ordonnancement de production
LAGIS EC Lille GEMTEX ENSAIT/
Roubaix Prof. B. Rabenasolo Dr. K. Mesghouni
GIPSA-Lab (Ex-LAG) Prof. P. Ladet Projet
région Rhône Alpes (HRP3) Hôpitaux en Réseaux
Prévoir, Partager et Piloter
3Plan
- Introduction générale
- Choix des outils de résolution
- Problème dinsertion des demandes
prévisionnelles - Bornes inférieures du makespan et du coût de
production - Approches dordonnancement multicritères
- Ré-ordonnancement en cas de pannes
- Insertion durgences dans un hôpital
- Conclusion perspectives
4Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Introduction Ordonnancement
- Résolution dun problème dOrdonnancement
- organiser une réalisation dun ensemble
dopérations élémentaires (tâches) - exploiter les capacités des machines disponibles
- respecter certaines contraintes, présentant le
maximum defficacité - Eléments principaux dun problème
dordonnancement - les tâches, les gammes, les ressources
(renouvelable, non renouvelable), les
contraintes, la (les) fonction(s) critère(s).
5Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Introduction Ordonnancement
- Problème considéré
- problème dordonnancement Job-Shop Flexible
(FJSP) NP-difficile - espace de recherche hautement combinatoire
- Deux difficultés
- affectation des opérations sur les machines
appropriées. - calcul des dates de début en tenant compte des
contraintes - Objectif
- Allouer les machines aux opérations dans le
but doptimiser les critères considérés - Deux approches dordonnancement
- Statique
- Dynamique
6Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Introduction Ordonnancement
- Objectif
- prise en compte de la notion dincertitude
- satisfaire les demandes urgentes
- Tâche Développer des méthodes de résolution
- ordonnancement des jobs fermes
- insertion des demandes prévisionnelles
- réordonnancement à temps réel
7Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Introduction Méthodes de résolution
- Méthodes de résolution
- Méthodes exactes
- branch and bound, programmation linéaire
- temps dexécution considérable (croit
exponentiellement avec la taille du problème) - Méthodes approchées
- heuristiques, métaheuristiques (recuit simulé,
algorithmes génétiques) - solution proche de loptimale
- temps de calcul raisonnable
8Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Introduction Méthodes de résolution
- Nos méthodes de résolution
- Ordonnancement des jobs fermes
- demandes certaines (outil algorithme génétique)
- Insertion des demandes prévisionnelles
- demandes en cours de négociation
- tâches de maintenances
- demandes urgentes
- Réordonnancement
- demandes fermes arrivant en moment de la
production.
9Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Outils de résolution Les algorithmes génétiques
Génération de la population initiale
Génération de la population initiale
Évaluation
Évaluation
Sélection
Sélection
Croisement, Mutation
Évaluation des chromosomes générés
Évaluation des chromosomes générés
Construction de la nouvelle génération
Construction de la nouvelle génération
non
Meilleurs solutions
10Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Les Algorithmes génétiques Codage
- Codage
- Inclure toutes les informations particulières
- N machine, N gamme
- Le chromosome est une liste d'opérations
affectées chacune à une machine avec une date de
début d'exécution Oij (Mk, tijk) - Exemple
-
11Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Les Algorithmes génétiques Croisement
- Croisement
- Croisement Ligne
Parent 1
Parent 1
12Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Les Algorithmes génétiques Croisement
- Croisement
- Croisement Colonne
Parent 1
Parent 1
13Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Les Algorithmes génétiques Mutation
Mutation
Parent
(M3,5)
(M4,7)
(M1,1)
(M3,7)
(M5,0)
(M2,2)
Enfant
14Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes dinsertion
- Notre objectif
- Ordonnancement des demandes réelles (fermes)
algorithmes génétiques - - minimisation du Cmax (priorité) et du coût
de production
- Insertion des demandes prévisionnelles et
urgentes
Cmax4, Coût 65
Cmax4, Coût 57
15Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes dinsertion
- Coût de Production
- Coût de fabrication Fj
- Coût de pénalité du job j
- Coût de stockage des jobs
- Coût de stockage du job ferme j
- Coût de stockage du job prévisionnel j
Coût de lancement
Coût de stockage
Coût de pénalité
Matière première
Coût de réalisation
Pj Cpj Tj.
16Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes dinsertion proposées
Méthode 1 Insertion Simple Insertion des
opérations dans les disponibilités machines
existantes Méthode 2 Insertion avec
élargissement des disponibilités Insertion
des opérations dans les disponibilités machines
existantes et élargissement de ces
dernières si nécessaire. Méthode 3 Création des
disponibilités machines Insertion des
demandes urgentes Méthode 4 Réordonnancement
complet Refaire un ordonnancement à temps
réel si une demande ferme arrive pendant la
production
17Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes dinsertion illustration de nos
méthodes
Exemple 4 Jobs (2 fermes, 2 prévisionnels) et 3
machines
Coût liées aux jobs
Coût de stockage 2/ut Coût de pénalité
2/ut Date de livraison des jobs fermes 12
Coût liées aux machines
Dates de livraisons possible 9 10 11 12 13 14 15 16 17
Probabilités de livraison () 5 10 10 5 5 20 15 15 15
Durées opératoires des opérations sur lensemble
des machines
Les probabilités de livraison et de stockage
18Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes dinsertion Exemple
ordonnancement des jobs fermes avec les AGs
Méthode 2 Elargir les disponibilités
Insertion avec élargissement des
disponibilités,
si nécessaire
Méthode 1 Insertion simple Insertion dans les
disponibilités machines sans modifier la solution
initiale
Cmax4 Coût 68 Taux58,34
O23
O23
O13
O33
O33
O24
O24
O34
O34
O32
Cmax6 Coût 101.50 Taux83,34
Cmax7 Coût 105.70 Taux66,67
19Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes dinsertion Exemple
Méthode 3 Création des disponibilités Insertion
de la commande urgente et en décalant tout les
opérations nécessaire à droite
Job 3 urgent à t1
A partir de la solution précédente
O34
O 24
O21
O11
O13
O21
O11
O13
O32
O14
O14
O23
O32
O22
O31
O22
O22
O12
O33
O22
O12
O31
Cmax5 Coût 95.60 Taux93,34
Cmax7 Coût 105.70 Taux66,67
20Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes dinsertion Méthode de réodonnancement
J3 demande ferme à t1
A partir de la solution précédente
O13
O21
O34
O13
O21
O11
O24
O 24
O23
O23
O23
Ré-ordo heuristique ECT Insertion des
opérations dans les disponibilités où elles se
terminent le plutôt possible
O32
Ré-ordo AGs Optimisation complète avec
lensemble des jobs fermes
O33
O31
O31
O22
O33
O22
O22
Cmax7 Coût 105.70Taux66,67
Cmax6 Coût92.60 Taux88.89
Cmax5 Coût 95.60 Taux93,34
21Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes dinsertion récapitulation
Optimisation du Cmax avec les Algorithmes
Génétiques
Optimisation du Cmax avec les Algorithmes
Génétiques
Méthodes dinsertion
Méthodes dinsertion
1
1
Insertion dans les disponibilités machines
22Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Applications méthodes dinsertion
Temps CPU
(n, n) Ordonnancement des jobs fermes avec AGs Ordonnancement des jobs fermes avec AGs Ordonnancement des jobs fermes avec AGs Ordonnancement des jobs fermes avec AGs Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Insertion des jobs prévisionnels Ordonnancement complet des jobs avec AGs Ordonnancement complet des jobs avec AGs Ordonnancement complet des jobs avec AGs Ordonnancement complet des jobs avec AGs
(n, n) Ordonnancement des jobs fermes avec AGs Ordonnancement des jobs fermes avec AGs Ordonnancement des jobs fermes avec AGs Ordonnancement des jobs fermes avec AGs Méthode1 Méthode1 Méthode1 Méthode1 Méthode 2 Méthode 2 Méthode 2 Méthode 2 Méthode 3 Méthode 3 Méthode 3 Méthode 3 Ordonnancement complet des jobs avec AGs Ordonnancement complet des jobs avec AGs Ordonnancement complet des jobs avec AGs Ordonnancement complet des jobs avec AGs
(n, n) Cmax Profit Ratio CPU Cmax Profit Ratio CPU Cmax Profit Ratio CPU Cmax Profit Ratio CPU Cmax Profit Ratio CPU
(10, 3) 7 121 77,15 69 9 167,8 79,85 1 8 175,9 81,25 1 9 183,5 71,11 1 7 165,90 87,15 86
(10, 7) 7 113 75,72 69 10 244,4 78 1 10 246,4 78 1 10 261,3 76 1 9 286,4 92,22 107
(9, 8) 7 86 74,30 62 11 260,2 74,55 1 14 285,3 64,3 1 11 272,9 74,55 1 9 277 92,22 105
(8, 5) 7 69 62,30 56 9 158,4 70,00 1 11 169,7 60,90 1 9 177,1 71,11 1 7 165,90 87,15 86
(16, 3) 9 278 83,33 114 11 341,1 76,36 1 10 337,7 88 1 11 344,9 76,36 1 10 344,2 93 121
(6, 8) 6 34 51,7 19 10 185,1 69 1 11 193,5 67,7 1 10 203,5 70 1 9 216 82,22 47
(n1, N-n-1) Réordonnancement des jobs fermes Réordonnancement des jobs fermes Réordonnancement des jobs fermes Réordonnancement des jobs fermes Réordonnancement des jobs fermes Réordonnancement des jobs fermes Réordonnancement des jobs fermes Réordonnancement des jobs fermes
(n1, N-n-1) AGs AGs AGs AGs ECT ECT ECT ECT
(n1, N-n-1) Cmax Profit Ratio CPU Cmax Profit Ratio CPU
(10,1 3-1) 7 120 77,15 77 9 128 58,9 1
(101, 7-1) 7 108 80 77 9 128 58,9 1
(91, 8-1) 7 149 74,29 71 9 114 55,55 1
(81, 5-1) 7 73 74,30 66 9 77 48,90 1
(161, 3-1) 9 297 91,11 118 10 285 73 1
(61, 8-1) 6 60 70 24 7 59 50 1
Taille de la population ? 350, 500 Nombre de
générations ? 6000, 12000
23Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Bornes inférieures
- Objectif
- proposer une solution proche de loptimale
- Difficulté
- pas dinformation sur la solution optimale
problème NP- difficile - Solution
- calcul des bornes inférieures pour comparer les
valeurs réelles des critères aux bornes
correspondantes.
24Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Bornes inférieures Cmax des demandes fermes
Bornes inférieures du makespan des jobs
fermes Proposition 1 gij la plus petite
durée opératoire de lopération Oij Proposition 2
JgtM Conclusion
25Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Bornes inférieures Cmax des demandes
prévisionnelles
Borne inférieure du makespan des jobs
prévisionnels
- les petites durées opératoires sont
- 1j 2 0 -0 2
- g2j 2 2 -2 2
- g3j 1 4 (22) 1
26Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Bornes inférieures Coût de production
Borne inférieure du coût des jobs fermes
Coût de réalisation
Matière première
Coût de lancement
wk Coefficient d'utilisation de la machine
k, wk 1,0 wkLk Coût de lancement de la
machine k
Borne inférieure du coût des jobs prévisionnels
Coût de réalisation
Matière première
Coût de production des jobs fermes sans
relancement
27Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Applications bornes inférieures
Exemples
nnM Ordonnancement des jobs fermes Ordonnancement des jobs fermes Ordonnancement des jobs fermes Insertion des jobs prévisionnels avec Méthode 1 Insertion des jobs prévisionnels avec Méthode 1 Insertion des jobs prévisionnels avec Méthode 1 Insertion des jobs prévisionnels avec Méthode 2 Insertion des jobs prévisionnels avec Méthode 2 Insertion des jobs prévisionnels avec Méthode 2
nnM Cmax Cmax Cmax Cmax Cmax Cmax
10510 7 7 8 9 8 8
12710 7 7 8 10 8 10
729 5 6 9 9 8 9
2728 13 16 18 18 17 18
10310 7 7 9 9 9 11
2096 15 16 21 22 20 22
20710 8 9 12 13 11 13
22510 9 11 12 14 12 14
Dans le cas général, le petit écart quon peut
avoir est dû à la difficulté de loptimisation
qui prend en compte différents critères non
homogènes tels que les contraintes de précédence
et de disponibilité des machines.
28Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Optimisation multicritère
- Problèmes dordonnancement multicritères
- prise en compte de plusieurs critères
- atelier de production
- quantité de produits
- les délais de livraisons et le coût de
production - Objectif
- générer une variété de solutions
Pareto-optimales
29Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Optimisation multicritère
- Un PMO peut être défini de la manière suivante
- F(x) (f1(x),f2(x),,fL(x))
- Où F(x) est le vecteur des critères à optimiser,
Lgt1 est le nombre de fonctions objectifs. - Méthodes existantes
- Méthodes de compromis transforme le problème
(PMO) - en un problème uni-objectif
- La démarche est
- choisir un objectif à minimiser en priorité
- choisir un vecteur de contraintes initiales
- transformer les autres objectifs en
- contraintes dinégalité
-
lte
30Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes de résolution Optimisation multicritère
Méthode dordre lexicographique les
contraintes dinégalité relaxées min f1(x) en
priorité min f2(x) avec f1 optimisée
X1
X2
31Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes de résolution
- - Méthodes dagrégation transforme le problème
PMO en PUO avec poids, qui revient à combiner les
différentes fonctions coût. - F(x) ?lifi (x) x?C li ?01, et ?li1
- Différents poids fournissent
- solutions supportées solutions qui ne sont pas
dominées - solutions non supportées sont dominées par
certaines combinaisons de solutions supportées
32Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes proposées
- Agrégation avec direction de recherche dynamique
- est utilisée pour aider le décideur quand il ne
peut pas donner une préférence particulière de
quelques fonctions objectifs - Les démarches
- - calculer les bornes inférieures pour chaque
objectif - - soit la moyenne des solutions de la
iieme fonction objectif à la kieme itération - Pk Population des solutions à la kiéme
itération
33Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes proposées
- Lévaluation de la qualité des solutions se fait
en utilisant les fonctions dappartenance des
différentes valeurs des critères
Pour résoudre le problème des valeurs des
fonctions qui peuvent appartenir à différents
intervalles, on utilise la fonction suivante
fH la plus grande valeur de la fonction
objectif fi(x).
34Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthodes proposées
La fonction d'évaluation globale est la suivante
Avec µi(fi(x)) est la valeur normalisée de la
fonction objectif fi(x).
P1
Pk
PTr
Pk1
Méthode dagrégation avec direction de recherche
dynamique
35Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Applications multicritères
- Méthode dordre lexicographique
- Minimiser le Cmax en priorité
Coût
Solution Correspondante
Meilleure Solution
Cmax
meilleure solution avant Insertion Cmax7,
Coût93,
Solution correspondante après insertion
Cmax13, Coût174,40
36Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Applications
- Minimiser le Coût en priorité
Coût
Solution correspondante
Meilleure Solution
Cmax
Meilleure solution avant insertion Cmax12,
Coût54,
Solution correspondante après insertion
Cmax16, Coût157,90
37Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Applications
- Méthode dagrégation avec direction de recherche
dynamique
Coût
Coût
Coût
Coût
Cmax
Cmax
Cmax
Cmax
6 jobs et 6 Machines
10 jobs et 7 Machines
6 jobs et 4 Machines
19 jobs et 15 Machines
Avec la méthode d'agrégation dynamique l'ensemble
de solutions se rapproche du point d'intersection
des bornes inférieures des critères considérés
38Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Méthode de sélection
- Sujet Méthode de sélection dune solution qui
sera la meilleure - après insertion des demandes prévisionnelles
- Développer une méthode de sélection Meilleure
solution des demandes - prévisionnelles
- Générer un ensemble de solution des demandes
fermes - Sélection dune solution qui sera la meilleure
solution pour les - demandes prévisionnelles
- a Disponibilités machines / moyenne des
durées opératoires des - demandes prévisionnelles
Valeur du rapport a gt 60 80 des solutions
sont les meilleures
39Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Cas de panne de machines
- Sujet Réordonnancement en cas de panne de
machines - Réordonnancement en cas de panne respectant
les contraintes de - précédence et de
disponibilités - Arrête la production en respectant les contrainte
de non préemption - Réordonnancement avec les AGs de lensemble des
tâches restante sur - lensemble de machines restante en
bon fonctionnement
O13
O31
O11
O13
O13
O31
O22
O23
O22
O33
O33
O33
O32
O21
O12
O21
O32
O13
O13
O13
M3 en panne à t1
40Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Urgence dans un hôpital
- Sujet planification et ordo dans un bloc
opératoire insertion durgences. - Affectation des patients à des Box de soins en
minimisant le Cmax (satisfaction - de maximum de patients dans la journée
de travail), puis laffectation des - patients juste après aux salles de
réveil. - Urgence insertion dans la salle qui se libère
le plutôt, et décalage des - patients affectés initialement jusquà la fin
de lurgence - Dépassement des heures régulières réaffectation
des patients à dautres - salles où il se termine le plutôt possible pour
minimiser les charges, sinon, reporter au - au lendemain.
41Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Conclusion
- Prise en compte de la notion dincertitude
- Développer une approche de résolution
- Les algorithmes génétiques
- Minimisation du critère
- Développer des approches dinsertion
- Demandes prévisionnelles
- Minimiser les inactivités
- Minimiser le critère
- Urgence (production, hospitalisation)
42Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Conclusion
- Bornes inferieures
- Mesurer lefficacité des solutions
- Méthodes de résolutions des PMO
- Ordre lexicographique
- Sélection dune solution
- Agrégation avec recherche de direction dynamique
43Conclusion
Introduction
Outil
Insertion
Approches
Bornes
Multicritères
Perspectives
- Application des méthodes dinsertion dans les
réseaux de transport (plan de marche
prévisionnel) - Insertion des demandes prévisionnelles avec les
algorithmes génétiques - Optimisation conjointe ordonnancement de
production-maintenance préventive
prises en compte des contraintes de productivité
en planification de la maintenance préventive.
prises en compte des tâches de maintenance comme
des contraintes temporelles dans des modèles
dordonnancement
44Merci de votre attention