finmatica ortems ecoles nationale dingenieurs de tarbes méta-heuristiques pour le paramétrage...
TRANSCRIPT
FiNMATICA ORTEMS
ECOLES NATIONALE D’INGENIEURS DE
TARBES
Méta-heuristiques pour le paramétrage Méta-heuristiques pour le paramétrage automatique d’un logiciel d’ordonnancement automatique d’un logiciel d’ordonnancement
industrielindustriel
El-Djillali TALBIDoctorant systèmes industriels
Journée Bermudes / Métaheuristiques7 février 2003
AgendaAgenda
• Introduction
• ORTEMS scheduler
• ORTEMS optimizer
• Approches d’optimisation
• Exemples
• Conclusions
• Perspectives
IntroductionIntroduction
Le problèmeLe problème
• Grand nombre de paramètres à régler
• Ordonnancement très sensible aux valeurs des paramètres
• Plusieurs objectifs
Comment sélectionner et régler les paramètres par rapport aux objectifs de la production
Indic. 2
Paramètres Indicateurs
Indic. 3
Indic. 1
Logiciel d ’ordonnancement
Param. 1
Param. 2
Param. 3
?
IntroductionIntroduction
ORTEMS schedulerORTEMS scheduler
• Paramètres52 paramètres prédéfinisà chaque paramètre on peut spécifier une valeur
différente par machinepossibilité de créer de nouveaux paramètres
• Indicateurs23 indicateurs de performance personalisables (par
période, par OF, par machine, ...).Possibilité de créer de nouveaux indicateurs
ORTEMS schedulerPa
ram
ètre
s Indicateurs
IntroductionIntroduction
ObjectifsObjectifs
• Concevoir et développer un environnement d’aide
:
à la sélection de paramètres pertinents à l’entrée
d’un système
au réglage de leurs valeurs de manière à optimiser
les indicateurs de performance à la sortie du
système
• Appliquer à des cas industriels réels
IntroductionIntroduction
ApprochesApproches
• Méthodes statistiquesplans d’expérienceanalyse de données
• Systèmes à base de connaissancesystèmes expertsextraction de connaissances à partir de donnéesréseaux de neurone
• Méthodes d ’optimisationmeta-heuristiquesméthodologie des surfaces de réponse
ORTEMS schedulerORTEMS scheduler
Construction du grapheinitial Encours
Graphe Courant
D.T. desNouveaux OF
Vide?
Partition du Graphe
Définition du ConflitNon- Critères d ’Ordonnancement
(choix de l’opération)- Critères de Placement
(choix de la machine)
Résolution du Conflit
Mise à Jour duGraphe
Oui
FIN
ORTEMS SchedulerORTEMS Scheduler
Résolution de conflit par Résolution de conflit par filtragefiltrage
Conflit d ’opérations (ou
de machines)
Choix
Critères d ’ordo (ou de placement)
ORTEMS SchedulerORTEMS Scheduler
Résolution de conflit par Résolution de conflit par
compromiscompromis
Conflit d ’opérations (ou
de machines)
Choix
i
ii CwMin
Critère d ’ordo (ou de placement)
Poids
• Sélectionner les critères à utiliser
• Déterminer les valeurs des poids
?
ORTEMS OPTIMIZERORTEMS OPTIMIZER ArchitectureArchitecture
APIs
Base de donnéestechnique
OptimizerBase de données
XML
SQL
XML/SOAP
XML/SOAP
XML/SOAP
OPTIMIZER(Java)
E-SCM Server(Java)
Profiler(Java)
ApplicationSever
Moteurd ’ordo.
ORTEMS OPTIMIZERORTEMS OPTIMIZER Optimisation en boîte Optimisation en boîte
noirenoire
Evaluer la fonctionobjectif
Valeurs des paramètres
Indicateurs
Moteur d ’ordo.
Recherche denouvelles solutionsORTEMS scheduler
Optimizer
ORTEMS optimizerORTEMS optimizer Fonction objectifFonction objectif
pi : poids
fi(x) : ième indicateur de performance
fi(xi0) : valeur initiale du ième indicateur
fi* : borne inférieur pour le ième indicateur
• Avantage: simplicité
• Inconvénients: difficulté de déterminer les valeurs des poids résultats dépendant de la méthode de normalisation utilisée
i iii
iiii
fxf
fxfpxf
*0
*
• Somme pondérée des indicateurs de performance de l’ordonnancement
ORTEMS OPTIMIZERORTEMS OPTIMIZER
EtapesEtapes
Début
Créer un nouveau réglage
Configuration et définition des objectifs
Algorithme d ’optimisati
on
Visualisation des
résultats
Validation
Fin
Charger un réglage
Sauvegarder le réglage
Moteur d ’ordonnancement
ORTEMS optimizerORTEMS optimizer
Solution
ORTEMS optimizerORTEMS optimizer Mode autonomeMode autonome
Collaborateur CollaborateurCollaborateur
BDT
Planificateur
Tâche de fond
OPTIMIZEROPTIMIZER
Enco
urs
Valeurs des paramètres
Valeurs des paramètres
Encours
Approches d ’optimisationApproches d ’optimisation
Principales difficultésPrincipales difficultés
• Problème multicritère
• Situation en boîte noire
• Fonctions objectifs coûteuses
• Grande dimentionalité
• Environnement dynamique
• Paramètres à valeurs continues
Approches d’optimisationApproches d’optimisation
• Se base sur l’utilisation de meta-heuristiques
Echantillonage aléatoire
Descente aléatoire (multistart, kangourou, …etc)
Recuit simulé
Algorithmes génétiques
Approches d’optimisationApproches d’optimisation
Sélection de paramètresSélection de paramètres
• Sélection à priori (avant optimisation)utilisation de l’expérience pour réduire l’espace des
paramètres
• Sélection à postériori (après optimisation)élimination des paramètres inutiles
• Sélection au cours de l’optimisationSélection aléatoire séquentielle (en arrière et en
avant)Sélection par échantillonage aléatoireSélection par opérateurs génétiques
Approches d’optimisationApproches d’optimisation
Descente aléatoire (1) Descente aléatoire (1)
• Descente aléatoire + selection aléatoire en arrièrecodage reeldeux opérateurs de mutation :
m1 : sélectioner d’un paramètre quelconque et changer sa valeur aléatoirement (Exchange and linear move)
m2 : éliminer un paramètre choisis aléatoirementChoix de la mutation à appliquer :
i : nombre de paramètres sélectionnés dans la solution c > 0, ts entier > 0
Appliquer une sélection aléatoire en arrière à la fin
sinon exp
0
2
it
c
tisi
iP
s
s
m
Approches d’optimisationApproches d’optimisation
Descente aléatoire (2) Descente aléatoire (2)
• Descente aléatoire + selection par échantillonage aléatoirecodage reelsolutions initiales sélectionnées par echantillonage
aléatoiresystème de voisinages :
Les paramètres sélectionnés sont les seuls à être changés à chaque descente aléatoire
kiik rxxxxN ,00 /
,* avec 1 kk rcr 1,0c Kk ...,,2,1et
Approches d’optimisationApproches d’optimisation
algorithmes génétiques (1) algorithmes génétiques (1)
• Codage réel
• Population initiale générée avec un nombre fixe de paramètres sélectionnés
• Deux opérateurs de mutation:changer aléatoirement les valeurs de paramètres
sélectionnésajouter et éliminer le même nombre de paramètres
• “recombination” discrête
• opérateur de sélection de solutions dans la population : ranking selection
Exemple 1Exemple 1
• Compagnie travaillant dans la soutraitance en industrie aérospatiale.
• 152 machines et 8557 opérations
• RCGA (40 taille population, 40 crossover, Pm 0.2, Nbre parm. Pop. init. 8)
• Nombre de paramètres dans la solution obtenus (450 itérations, 15 heures de calcul : PIII 660 mhz) : 9
• Après une sélection aléatoire en arrière : 3 paramètres ont été retenus.
Indicateur Poids Goal Valeurinitial
Aprèsoptimisation
Retard OF moyen 100% 0 jours 41 jours 21 jours
Makespan 10% 0 jours 600 jours 198 jours
Exemple 1Exemple 1
Nombre de paramètres sélectionnés
Fonction objectif pour la solution courante
Exemple 2Exemple 2
Indicateur Poids Goal Valeurinitial
Après deschangementsmanuels
Aprèsoptimisation
Retard moyen 100% 10 jours 45 jours 37 jours 18 jours
Retard troisièmequartile
100% 10 jours 76 jours 59 jours 34 jours
Makespan 30% 200 jours 560 jours 560 jours 372 jours
• Compagnie de parfums et arômes.
• 136 machines et 1329 opérations à ordonnancer.
• Nombre de paramètres sélectionnés 10 sur 52.
Exemple 2Exemple 2
Robustesse de la solutionRobustesse de la solution
Retard OF moyen
0
5
10
15
20
25
30
35
40
45
50
18/03/02 25/03/02 01/04/02 08/04/02 15/04/02
avant
solution18-03-02
ConclusionsConclusions
• Point positif :Résultats spectaculaires dans certains cas Intérêt d ’utiliser des méta-heuristiques pour
automatiser la configuration des logiciels d ’ordonnancement
• Limites :temps d ’ordo. doit être faible (pas plus d ’une
dizaine de minutes)Non robustesse de la solutionRésultats de l ’ordo limités dans beaucoup de
situations Indicateurs difficiles à spécifier dans certains cas
Perspectives (1)Perspectives (1)
• Application à d ’autres types de paramètres :action sur le planning (voie très prometteuse)paramètres du SRP…etc
• Sélection de paramètres :opérateurs génétiques permettant la sélectionpopulation based instance learningtests statistiques sur les solutions visitées fast random hill climbingméthode taboo
• Parallélisation de l ’optimisation.
Perspectives (2)Perspectives (2)
• Accélérer l ’ordonnancement ( ordo. rapide et ordo. Partiel).
• méthodologie des surfaces de réponses
• Pareto optimisation
• Robustesse de la solution