Title: Une mthode de gnration de colonnes base sur un algorithme central de plans coupants
1Une méthode de génération de colonnes basée sur
unalgorithme central de plans coupants
- Mathieu Trampont Orange Labs / CEDRIC
- Christian Destré Orange Labs
- Alain Faye CEDRIC
-
- 11/01/2010
2Plan
1
- Parallèle entre générations de colonnes et
méthode de plans coupants - Problèmes de convergence et de stabilisation
- L'algorithme ACCP de Betrò
- Comparaison sur un problème de localisation
2
3
4
3Vision du dual
- Le dual du problème maître est un programme
linéaire avec un très grand nombre de contraintes
- La génération de colonnes correspond dans le dual
à une méthode de plans coupants
4Vision du dual (2)
- Dans le dual, c'est l'ensemble des coupes qui est
restreint - Déroulement de la génération de colonnes
- La résolution du problème restreintdonne une
première solution - La résolution du sous-problèmefait apparaître de
nouvelles variables, donc de nouveaux plans - On continue jusqu'Ă ce qu'on nepuisse plus
rajouter de variablequi améliore la solution - La valeur obtenue est aussi lavaleur optimale du
dual
5Plan
1
- Parallèle entre générations de colonnes et
méthode de plans coupants - Problèmes de convergence et de stabilisation
- L'algorithme ACCP de Betrò
- Comparaison sur un problème de localisation
2
3
4
6Problèmes de stabilisation
- La convergence de la génération de colonnes vers
l'optimum de la relaxation continue peut parfois
prendre du temps - La vision du dual permet d'illustrer les
situations oĂą la convergence ralentit
u1
u1
u2...
u
7Stabilisation
- Objectifs
- Stabiliser la convergence de l'algorithme
- Diminuer les appels au sous-problème
- IdĂ©e trouver un meilleur point de sĂ©paration Ă
fournir au sous-problème - Méthodes proximales
- pénaliser les déplacements dans le dual
- méthode boxstep
- Méthode de stabilisation par point intérieur de
Rousseau et al. - s'attaque spécifiquement à la dégénérescence
8Plan
1
- Parallèle entre générations de colonnes et
méthode de plans coupants - Problèmes de convergence et de stabilisation
- L'algorithme ACCP de Betrò
- Principe
- Interprétation géométrique et déroulement
- Stabilisation et paramétrage
- Comparaison sur un problème de localisation
2
3
4
9L'Accelerated Central Cutting Plane
- Idée ElzingaMoore Chercher le centre de la
plus grande sphère contenue dans un polyèdre basé
sur les contraintes du dual auquel on ajoute une
borne inférieure - Le polyèdre doit être borné
- Ce problème se modélise par un programme linéaire
dont l'objectif est de maximiser le rayon s de la
sphère - Les contraintes sont issues de celles du dual
- On rajoute une contrainte issue d'une borne
inférieure
10L'Accelerated Central Cutting Plane
- Autre possibilité pour la borne inférieure
- Troisième possibilité
- Les coordonnées du centre de la sphère serviront
de point de séparation - Lorsqu'il ne viole aucune contrainte
- Mise à jour de la borne inférieure
- La taille du polyèdre diminue
11L'Accelerated Central Cutting Plane
- Autre possibilité pour la contrainte de borne
- Les coordonnées du centre de la sphère serviront
de point de séparation - Lorsqu'il ne viole aucune contrainte
- Mise à jour de la borne inférieure
- La taille du polyèdre diminue
12Accélération proposée par Betrò
- On utilise comme borne inférieure une combinaison
convexe entre une borne inférieure valide et une
borne supérieure - t a.UB (1- a).LB
- La borne inférieure utilisée n'est peut-être pas
valide - Lorsque que le centre de la sphère ne viole
aucune contrainte - t est bien une borne inférieure
- Si le problème de recherche de la sphère est
infaisable - t est en fait une borne supérieure
13Plan
1
- Parallèle entre générations de colonnes et
méthode de plans coupants - Problèmes de convergence et de stabilisation
- L'algorithme ACCP de Betrò
- Principe
- Interprétation géométrique et déroulement
- Améliorations et Stabilisation
- Comparaison sur un problème de localisation
2
3
4
14Interprétation géométrique
- Pour Elzinga-Moore
- Ici la borne inférieure vaut zéro et constitue
donc le "plancher" - Le centre de la sphère se trouve sur le plan de
la fonction objectif - La sphère est arrêtée par les contraintes du dual
et par la borne inférieure
Contrainte 1
r
?2
Plan de la fonction objectif du dual
Contrainte 2
Plan de la borne inférieure LB 0
u1
15Interprétation géométrique (2)
- Pour le polyèdre de Betrò
- La borne est ici fixée à une valeur LB
- On se place dans l'espace des variables duales
(sans le plan de la fonction objectif) - La sphère est arrêtée par les contraintes du dual
et par celle de la borne inférieure
Contrainte 1
u2
Contrainte de la borne inférieure a2.u2 a1.u1
LB
Contrainte 2
u1
16Interprétation géométrique (3)
- Autre polyèdre
- Ici aussi la borne inférieure est nulle et
constitue le "plancher" - La sphère touche obligatoirement le plan de
l'objectif et est arrêtée par les contraintes du
dual et la contrainte de la borne inférieure
Contrainte 1
r
u2
Plan de la fonction objectif du dual
Contrainte 2
Plan de la borne inférieure f 0
u1
17Accélérations proposées par Betrò
- DĂ©roulement de l'algorithme avec les
accélérations de Betrò - Départ
- LB 0
- UB c1 c2
- On utilise la borne inférieuret0 (LB UB) / 2
- Le centre ne viole aucune contrainte
- LB u20 u10
- t1 (LB UB) / 2
- Le centre viole une contrainte
- On rajoute la contrainte
- Le problème est infaisable
- UB t1
- t2 (LB UB) / 2
Contrainte rajoutée
u2
c2
u23
u21
u20
u10
u1
u11
u13
c1
18Plan
1
- Parallèle entre générations de colonnes et
méthode de plans coupants - Problèmes de convergence et de stabilisation
- L'algorithme ACCP de Betrò
- Principe
- Interprétation géométrique et déroulement
- Améliorations et Stabilisation
- Comparaison sur un problème de localisation
2
3
4
19Paramétrage et améliorations
- Les poids de LB et de UB dans la combinaison
convexe peuvent être ajustés - L'idée est de privilégier la borne la plus proche
de la valeur optimale - Faire évoluer les poids pendant le déroulement de
l'algorithme - Favoriser UB lorsque le centre de la sphère
estadmissible -
- Favoriser LB lorsque le problème est infaisable
-
- Il est possible de mettre Ă jour UB plus souvent
avec des solutions primales admissibles - À partir du problème de la sphère
- En résolvant le primal
LB
UB
t
20Stabiliser l'ACCP
- Les méthodes de boxstep ou de stabilisation par
point intérieur peuvent s'appliquer à l'ACCP - Pour le point intérieur adaptation très simple
- Attention pour le boxstep les contraintes de
boîte peuvent rendre le problème infaisable - Nécessité de discerner qui de la boîte ou de t
cause l'infaisabilité - Suppression temporaire des contraintes de boîte
- Si la boîte est responsable, on agrandit la boîte
21ACCP avec boxstep
- Reprenons l'exemple
- DĂ©part
- LB 0
- UB c1 c2
- Le problème est infaisable
- suppression de la boîte
- le problème est faisable
- augmentation de la boîte
- Aucune contrainte n'est violée
- mise Ă jour de LB et de t
- augmentation de la boîte
- Le centre viole une contrainte
- On rajoute la contrainte
- Le problème est infaisable
- suppression de la boîte
- le problème est infaisable
- mise Ă jour de UB et de t
u2
c2
u23
u21
u20
u10
u1
u11
u13
c1
22Plan
1
- Parallèle entre générations de colonnes et
méthode de plans coupants - Problèmes de convergence et de stabilisation
- L'algorithme ACCP de Betrò
- Comparaison sur un problème de localisation
2
3
4
23Problème de localisation de concentrateurs
- But du problème
- On connaît les coordonnées d'un élément central
et de clients - DĂ©terminer le nombre de concentrateurs et leurs
emplacements de façon à minimiser les coûts de
raccordement des clients au central - Modèle
- E est l'ensemble des clients et P(E) l'ensemble
des parties de E - zi vaut 1 si la partie i se voit attribuer un
SR, 0 sinon - bij vaut 1 si le client j est dans la partie i,
0 sinon - ci correspond au coût total d'attribution d'un
SR Ă la partie i
24Comparaison génération de colonnes classique et
ACCP
- Nous avons résolu la relaxation continue de notre
problème avec deux méthodes de génération de
colonnes - Utilisation dun boxstep et dune stabilisation
par point intérieur - Le paramétrage des méthodes de stabilisation est
identique - Les colonnes sont initialisées à partir de
solutions heuristiques - Les instances sont générées aléatoirement
- 2 séries de dix instances de tailles similaires
25Temps de calcul
- Bonne initialisation
- 10 instances de taille 500
- 10 instances de taille 725
- Initialisation plus légère
- 10 instances de taille 500
- Centrale 606,7 s
- Centrale 1099,5 s
- Centrale 874.9 s
- Classique 2050,9 s
- Classique 6020,1 s
- Classique 2218.1 s
26Évolution des bornes
27Références
- B. Betrò, An accelerated central cutting plane
algorithm for linear semi-infinite programming,
Mathematical Programming, Vol.101, 479-495, 2004. - L-M. Rousseau, M. Gendreau, D. Feillet, Interior
point stabilization for column generation,
Operations Research Letters, Vol. 35, 660-668,
2007 - J. Elzinga et T. G. Moore, A central cutting
plane algorithm for the convex programming
problem, Mathematical Programming, Vol.8,
134-145, 1975.
28Questions ?
29L'Accelerated Central Cutting Plane
- Attention si tau devient proche de la valeur
optimale trop rapidement, on perd la stabilité. - Betrò propose de perturber tlorsque plusieurs
coupes sont rajoutées successivement - t t
- t (1-Ăź).t Ăź.UB
- La politique de mise Ă jourde t doit ĂŞtre
choisiejudicieusement
u2
c2
u1
c1
Génération de colonnes 11/01/2010 p29
30RĂ©sultats
31RĂ©sultats avec une moins bonne initialisation
- Nombreux optimums locaux aléatoires heuristique
- Peu d'optimums locaux aléatoires
32Comparaison avec notre heuristique
- Une heuristique multi-phase a été développée pour
notre problème - La résolution de la relaxation continue nous
donne une borne inférieure