Combinatoire et Convexité - ENSTA Paris
Transcript of Combinatoire et Convexité - ENSTA Paris
Combinatoire & ConvexitéCombinatoire & Convexité
Benoît [email protected]
Bouygues e-Labhttp://www.e-lab.bouygues.com
CombinatoireCombinatoire ??• Optimisation Combinatoire
– Recherche d’une structure discrète (configuration)– Minimisant ou maximisant un critère– Un plus court chemin, un flot, une affectation– Une séquence de décisions optimales– Une tournée de longueur minimale, une coloration– Un ordonnancement de tâches au plus tôt …
• Théorie de la complexité– On conjecture (P != NP ?)
• Qu’il est des problèmes « difficiles » (NP-complets)• On connaît des problèmes faciles (polynomiaux)
– La vie (industrielle) est un filon de problèmes • Difficiles, avec des sous-parties faciles• Et il faut faire avec (ingénierie de l’optimisation)
ConvexitéConvexité ??• Depuis les années 50 [1947, Dantzig]
– On sait « bien » résoudre des « programmes » linéaires– Algorithme du Simplexe (dans Rn)– Minimisant une fonction linéaire des variables– Sous des contraintes linéaires des variables– D’égalité, d’inégalité ou « de boîte »
• Depuis les années 80 [1979, Shor et al.]– On sait que la programmation linéaire est « facile » – En pratique on sait résoudre des PL à +eurs dizaines de
millions de variables, par Simplexe ou points intérieurs• Mais la programmation linéaire en nombres
entiers (x dans {0,1} au lieu de [0,1])– reste NP-difficile (10aines de variables explose)
Convexité Convexité & & Combinatoire Combinatoire • Depuis les années 70 (Flot)
– On sait que certains problèmes combinatoires– S’expriment exactement comme des PL– D’autres s’approchent « par en dessous » (min)– Par des PL, parfois de très grande taille (généralisés)
• Un courant en combinatoire– Relâcher jusqu’au PL– Approximer, éventuellement renforcer (coupes)– Brancher (énumération implicite, Branch & Bound)
• Un autre courant : convexifier– Méthodes de décomposition
• Par les prix : relaxation Lagrangienne• Par les variables : décomposition de Benders
Maintenance d’un réseau Maintenance d’un réseau routierroutier
• Mise en concession de réseaux routiers en Angleterre • Comme pour les hôpitaux, les collèges, les ministères• Plusieurs centaines de millions de livres / ville / 25 ans
• Pour des villes de +200000 habitants • > 500km de réseau, divisé en + de 1000 sections
• Sous contraintes de Qualité de Service• Niveau moyen du réseau (pénalités globales)• Pénalités locales si seuil d’alerte atteint; HandBack
• Comment planifier les opérations « préventives » sur 25 ans• À moindre coût• Et dans le « Best Value Management »
Détails de l’engagementDétails de l’engagement• Chaque section de route (>1000) est notée selon
3 indices : Structurel, adhérence, visuel. Etat(s) • Les routes s’usent par le trafic et les
interventions externes (tranchées, intempéries) • Aucune route ne doit tomber sous un seuil donné• La moyenne des sommes pondérées des 3
indices donne le niveau moyen du réseau• Un objectif de QoS est donné par la ville pour
chacune des 25 années• Des contraintes de répartition des opérations
évitent le blocus de la ville• Le concessionnaire doit minimiser ses coûts
d’intervention (passer le moins de fois possible)
Localement, pour Localement, pour Abbey Abbey RoadRoad• Comment trouver la stratégie optimale de
réparation ?• Mettre le moins de piquets possibles pour que la hauteur
sous plafond de la tente soit supérieur à 1m80• Les indices sont autant d’états• Le vieillissement fait changer d’état• Mais un traitement permet de rajeunir
• Modélisation– Identification de jeux d’opérations « recommandées »
• 1 stratégie = ensemble d’opérations• Ex: Béton + enrobé + coulis
– Optimiser revient à choisir• l’ordonnancement des opérations valide le moins coûteux
AA
F
A
E
D
C
B
Pas de temps 1
F
A
E
D
C
B
F
A
E
D
C
B
F
A
E
D
B
F
A
E
D
C
B
F
A
D
C
B
F
A
E
D
C
Pas de temps N
B
Coût optimal = PCC
Résolution (Résolution (AbbeyAbbey road)road)• Par programmation linéaire
– Ytd : décision « d » prise au pas t ?– Xt : état de la route au pas de temps t
– Min Σ Ctd . Ytd• Sc transitions (équations d’état)
– X t+1 < a Xt + M Y td– X t+1 > b Y td
• État initial X0 = 9/20• Boîtes X dans {4,20}, Y dans {0,1}
• Par flot = plus court chemin• Par récurrence (programmation dynamique)
– X t-1 = min (C td + X t) :::: valeurs de Bellman
AA
F
A
E
D
C
B
Pas de temps 1
F
A
E
D
C
B
F
A
E
D
C
B
F
A
E
D
B
F
A
E
D
C
B
F
A
D
C
B
F
A
E
D
C
Pas de temps N
R(A,i,F) = coût du plus court chemin passant en i à F
Se calcule en deux passes (A/R)
B
F
Vu Vu du réseaudu réseau• Contrainte de niveau moyen de « vétusté »
� Σ Lr Xrt > Σ Lr 12
• Contrainte de « blocus »– Pour éviter des années noires ou blanches– On limite les opérations par an
Pour tout t : Σ P rd Yrtd < Qt
Σ P rd Yrtd > Bt
• Avec objectif de coût minimal des opérations
– Min Σ Crtd . Yr
td
Résolution (globale)Résolution (globale)• Par programmation linéaire ? non
– En nombre entier (matrice non uni-modulaire)– Avec des millions de variables
• Par flot ? non– Ce n’est plus un flot mais un multi-commodity flot– Plus dur que Voyageur de Commerce– En fait les deux nons sont presque équivalents
• Par programmation dynamique ? non– Explosion des états à 3 ou 4 routes
• Relâchons lagrangiennement les contraintes couplantes …
Relaxation Relaxation LagrangienneLagrangienne
P(X,Y) : Min f(Y) = Min Σ Crtd . Yr
td
s.c.– équations d’états (x,y) (locales)– boîtes (x,y) (locales)
– Σ Lr Xrt > Σ Lr 12 λt
– Σ P rd Yrtd < Qt µt
Fonction duale de LagrangeFonction duale de Lagrange
{ }{ } { }
∑∑∑∑∑
∈
∈∈
++−+=
Roadsr
t
rtrtrtd
t
rtdt
ttt
tt
XYrpourétatsdéquationslesvérifientYX
XDYCqlw
20,4,1,0',
~~min
),( µλµλ
– Problème dual D(X,Y,λ,µ):– Maximiser w(λ,µ) pour λ et µ dans R+n
– Offre une borne inférieure : w* par dualité faible
– « facile » à obtenir, car concave non diff.– Sous-gradient en tout point (vecteur viol)
Du dual au primalDu dual au primal• En général NP-difficile
– w(λ∗,µ∗) ne donne pas X,Y globalement faisable pour P– Atteindre w(λ∗,µ∗) peut être lent. Faisceaux, ACCPM– Il faut alors
• Soit développer une heuristique lagrangienne• Soit énumérer implicitement• Ou les deux
• En général : écart de dualité– Peut être très faible (si |r| grand), voire nul.– Peut être réduit
• Adjonctions de Coupes• Apport de Propriétés combinatoires
– Est meilleur que celui du PL global continu
RésuméRésumé
RelaxationLagrangienne
Prog.Dyn.
Enumération(consistence)
Stratégiede recherche
TSPTSP
Propagation
Prog.Par Contrainte
Convexe Non diff.
Algorithmique
Autres applicationsAutres applications• Voyageur de commerce (Karp 1972)• Maintenance coordonnée d’équipements
– Avions (Air France), Grues (Bouygues), Bus (RATP)– Arrêt de centrales électriques (Unit Commitment,
EDF)
• Rotations d’équipes– Centres d’appels et 35h00 (Bouygues Télécom)– Personnel navigant (Sabre)
• Routage dans les réseaux– Multi commodity flow (France Télécom)– Connectique minimale (Steiner, Ensta)
• Tournées synchronisées– Tournois sportifs (Georgia Tech, Bouygues)
ConclusionConclusion• En planification de production
– Dimension combinatoire intrinsèque– Non « polynomial » très généralement– Approchable souvent « par en dessous »– Trop souvent bâclé « par au dessus » (années 80)– Intérêt des modèles « sensibles »– Intérêt des approches « garantes »
• L’avenir– Joindre le dimensionnement et l’opérationnel– Gagner
• En taille : tournoi ligue de Base Ball US• En réactivité : graffitis de Korrigan• En stochasticité : TF1
– Eduquer, évangéliser