Poly MLA2010
Poly MLA2010
Poly MLA2010
Recherche Opérationnelle
MODELES DE LOCALISATION
ET APPLICATIONS
Marie-Christine Costa
1
I
INTRODUCTION
D IS C R E T E C O N T IN U E
E N T IE R S 0 -1 CONVEXE NON
CONVEXE
L IN E A IR E NON
L IN E A IR E
L IN E A IR E NON
L IN E A IR E
SO U S SO US
C O N T R A IN T E S C O N T R A IN T E S
LIN E A IR E S N O N LIN E A IR E S Q U A D R A T IQ U E DEGRE > 2
SAN S SO U S SO U S
C O N T R A IN T E S C O N T R A IN T E S C O N T R A IN T E S
LIN E A IR E S N O N LIN E A IR E S 4
MODÈLES ÉTUDIÉS
PROGRAMMATION LINÉAIRE OU QUADRATIQUE
EN 0-1 SOUS CONTRAINTES LINÉAIRES
*AMÉLIORATION DE COMPLEXITÉ
Problèmes polynomiaux
7
OUTILS DE RESOLUTION
- REDUCTION DE LA FONCTION ECONOMIQUE
(calcul booléen, extraction de constantes,..)
B
- RELAXATION CONTINUE O
R
- RELAXATION LAGRANGIENNE N
E
- GENERATION DE COLONNES
I
- METHODES DE DECOMPOSITION N
F
- METHODE DE COUPES
S
- PROCEDURE ARBORESCENTE solution optimale O
L
- HEURISTIQUE Recuit Simulé, Tabou, spécifiques,... U
- LOGICIEL GENERALISTE T
I
- ALGORITHMES e-APPROCHES O
N 8
Résolution d'un problème de RO "DIFFICILE"
minimisation
Heuristique
9
Résolution d'un problème de RO "DIFFICILE"
minimisation
bornes S* solutions
B S
Programmation garantie
Heuristique
mathématique
10
LA LOCALISATION SIMPLE
Données
- listes des sites (équipements)
- emplacements et demandes des clients
But
- déterminer le nombre et les lieux des équipements
- les rattachement des "clients" aux équipements
de façon à minimiser
les coûts d'installation des équipements
+ les coûts du "service" équipements vers clients
11
Où installer les entrepôts?
Clients 12
Où installer les entrepôts?
14
Une application réelle
Orange télécom
2
Entrepôts NRA
=
1
équipements SR
=
sous-
0
répartiteurs
Clients
Données
- listes des objets à placer et "trafic" inter-objets
- listes des sites (hétérogènes) et liaisons inter-sites
But
- placer les objets sur les sites
de façon à minimiser
les coûts d'installation des objets
+ les coûts du "trafic" inter-sites
16
Placement de tâches sur des processeurs
DONNEES P1 P2 T T
1 2
T T
6 3
P4 P3 T T
5 4
P1 P2
UNE SOLUTION
T T T
6 1 5
P P
3 4
T T T
2 4 3
17
LE PARTITIONNEMENT
Données
- listes des objets à répartir
- "trafic" inter-objets
- nombre de groupes d'objets à former ou…
But
-répartir les objets dans des groupes
de façon à minimiser
les coûts du "trafic" inter-groupes
18
LE PARTITIONNEMENT
T T T
1 2 7
T
8
T T
6 3
T T
5 4
19
Modèles mathématiques
x: variables bivalentes (0 ou 1) i,j=1,..,N p,q=1,..,K
Localisation Placement Partitionnement
min min min
S j C_installj xjj S S
i p C_installipxip SS
i j>i C_trafij(Sqxiq xjq)
+ +
S S C_traf
i j ij xij SSip i'p' C_trafipi'p' xip xi'p'
i'>I p'≠p
Contraintes de capacités
S xiji ≤ nj "j S xipi ≤ np "p
ou ou
S Demi xij
i ≤ Capj S Volip xip
i ≤ Capp S Voliq xiq
i ≤ Capq
"j "p "q
21
Partie II
La localisation "simple"
22
1 MODELISATION
1.1 DONNEES
• n nombre total de sites (notés "site i" ou "i")
• fi coût d ’installation d’un équipement en i
• lij coût unitaire de la liaison de i vers j; lii=0
• Dj demande du site j
• bij bénéfice unitaire pour un produit fabriqué
en i et vendu à j (prix(j)-coûtdeprod(i))
• cij = Dj.lij coût du service total de j par i
24
1.3 LES MODELES MATHEMATIQUES
Modèle 1
Chercher l'ensemble I non vide qui minimise:
n n
z f i D j ( min l ij ) f i min cij
iI j 1 iI iI j 1 iI
25
Annexe 1
Fonction sur-modulaire (ou sous-modulaire)
minimiser n n n
z f i yi cij xij
s.c. i 1 i 1 j 1
n
xij 1 j (1)
i 1
xij yi i j (2)
minimiser n n n
z f i yi cij xij
s.c. i 1 i 1 j 1
n
xij 1 j (1)
i 1
n
xij yi i j ( 2) ou xij nyi i (2' )
j 1
Maximiser n n n
ij xij f i yi
i 1 j 1 i 1
30
Contraintes supplémentaires
• Problème p-médian
n
yi I p
i 1
• Notations complémentaires
t=1,..,T périodes sur lesquelles porte l'étude
fit coût d ’installation d’un équipement en i à la période t
uit coût d ’utilisation d’un équipement en i à la période t
cijt coût du service total de j par i à la période t
yit = 1 s’il y a un équipement en i à la période t; (= 0 sinon)
xijt = 1 si j est servi par i à la période t; (= 0 sinon)
On suppose que la situation à t=0 est connue (yit donnés i)
32
2 REGLES DE REDUCTION
K 0 sites i t.q. yi 0 K1 sites i t.q. yi 1
K 2 sites i t.q. yi non défini
• Règle 1
min sup(ckj cij ,0) f i alors yi 1
n
Si
j 1 kK K
1 2
k i
• Règle 2
n
Si k t.q. f i f k sup(ckj cij ,0) alors yi 0
j 1
33
3 COMPLEXITE DE PLS
34
4 RELAXATIONS
CONTINUES DE PLS
4.1 LES RELAXATIONS
• Relaxation forte
Modèle 2 xij yi i j (2)
35
• Relaxation faible
n
xij nyi i (2' )
Modèle 2'
j 1
solution optimale: pour tout i et tout j
xi* j 1 si
f i* fi
ci* j min cij
n i n
xi* j 0 sinon
1 n
yi* xi* j
n j 1
36
Annexe 2
Dualité lagrangienne et programmation linéaire
Soit (P), un programme linéaire en nombres entier (ou en 0-1)
• DUAL (Modèle 2)
n
Max v j ( 4 )
j 1
n
(DLS0) wij f i i ( 5)
j 1
v j wij cij i j (6)
wij 0 v j 0
38
Le dual peut s'écrire:
n
Max zd v j ( 4)
j 1
n
(DLS) sup(0, v j cij ) f i i (7)
j 1
v 0 j
j
Propriété:
zd * min (cij )
j i
39
• Dualité lagrangienne (contraintes(2)) (DLLS):
L max L(u )
*
u j 0 j
40
• Proposition
L(u) sous contraintes (3) et (0)
= zd(u) sous contraintes (7) u
• Corollaire
L* = zd*
41
Deux méthodes fondées sur la dualité à la
base des méthodes actuelles efficaces:
(Voir section 7)
42
5 HEURISTIQUES POUR PLS
5.1 Algorithme gourmand
garantie
46
• Garantie "a priori" maximisation
soit z R min ij f i alors
j i i
e 1 1
zG z * zR
e e
48
• Algorithme d'échanges généralisés min PLS
Sv solution voisine de S si
Sv= SU{k} ou Sv= S-{i} ou Sv= S-{i}U{k}
Début S0=solution initiale; S:=S0;
tant que Sv solution voisine de S telle que
z(Sv) < z(S) faire
S:= Sv;
fait;
fin;
49
• Maximisation
remplacer < par > dans les algos précédents
p
z d * z * p 1
1e 0,37
zd * z R p
50
zG : valeur obtenue par heuristique (max p-médian)
p
z * zG p 1
-gourmande 1e
z * zR p
z * zG p 1
-2-opt 1
z * zR 2 p 1 2
p
z * zG p 1
-gourmande+2-opt 1e
z * zR p
51
5.3 fonctions sous-modulaires
• Excellents résultats
53
• Variations de la fonction de coût
r(j): site de rattachement de j dans la solution courante
r'(j): 2ième site équipé le plus proche de j
1 f a caj cr ( j ) j
j t.q. cr ( j ) j caj
- Suppression d'un équipement au site b
2 fb cr '( j ) j cbj
j t.q. r ( j ) b
-déplacement d'un équipement de b vers a
3 1 2
54
Annexe 3
Matrices Totalement Unimodulaires (TU)
Soit A matrice (m,n) d’entiers
55
Annexe 3 Suite
Matrices Totalement Unimodulaires (TU)
Soit A matrice (m,n) d’entiers
Théorème
56
Annexe 3 Suite
Reconnaissances des Matrices (TU)
Soit A matrice (m,n) d’entiers
57
6 LE POLYEDRE DE PLS
n
xij 1 j
i 1
0 xij yi 1 ij
Alors ij ij i
b x y k e T 1
B e inf
iI k jJ k iI k
60
• Etude du polytope Pn de PLS
facettes élémentaires:
(i) xij yi i j
(ii) xij 0 i j
(i) yi 1 i
notation: si 2 t l n
B tl (bijtl ) matrice de Clt colonnes et l lignes
vecteurs différents avec t 1 et l t 0
61
Théorème Cornuéjols et Thizy
l , t t.q. 2 t l n et Clt n;
I ' I et J ' J t.q. I ' l et J ' Clt
l'inégalité suivante définit une facette de Pn:
ij ij i
b tl
x y Cl t l 1
t
iI ' jJ ' iI '
62
Graphe associé: {sommets} {variables}
{arêtes}: { xij yi et xkj {xij t.q. ki}}
63
(i) r (G ' ) J '
(ii) G ' est connexe
(iii) i I ' , j J ' , l' arête yi , xij est critique
(iv) j , k J ' , une suite d' arête critique :
xij , xt j xt j , xt j .......xt
1 1 1 1 2 2 2 s 2 js 1
, xt s1 js1 xt s1 js , xkjs
(v) i, j t.q. xij N ' , (G ' ) (G" )
où G" est le sous - graphe induit par N 'xij
64
7 METHODES EXACTES
• Un problème polynomial
• Un algorithme en O(n2)
65
Théorème Barany, Edmonds et Wolsey
– programmation dynamique
– arbre → arborescence
69
Rappel (cf IV.2)
n n n
n
min z f i yi cij xij Max z d v j ( 4 )
i 1 i 1 j 1
j 1
n
1 xij 0 j (1)
n
f i sup(0, v j cij ) 0 i (7)
i 1
j 1
yi xij 0 i j ( 2 ) v 0 i
j
yi 0 i xij 0 ij
Solution duale: vj+ (au début v j min cij puis v j )
i
On note:
I ' i t.q. max 0, v j cij f i
j
I I ': I
i I ' t.q. pour un j, seul i vérifie c v ij
j
i I 't.q.pour un j t.q. (c v i I ) c
ij
j
i' j est minimal
71
Solution primale:
yi 1 i I ; yi 0 sinon;
j , xîj 1 ssi cîj min cij (on note î i ( j ))
iI
Propriétés:
(a) max 0,v
j cij f ii I
j
(b) j i I t.q. vj cij
Lemme z p z D
max 0, v j cij
j iI
i i ( j )
72
Procédure "Dual Ascent"
• Initialisation si j c kj ( j ) v j alors
j faire v j c1j (k ( j ) 1) j c kj ( j ) v j
i faire si fi k ( j) k ( j) 1
j faire k ( j ) 2 1
1 finsi
pour tout i I tq v j cij 0
• tant que 1 faire
faire si si j
0
pour j 1,.., n faire vj vj j
fait
j min ( si : v j cij 0)
iI fait
fait fin
73
Procédure Branch and bound
"Dual Adjustment"
choix d'un yi qui viole les
Principe: contraintes (9)
diminuer certains vj de • yi 0 ( fi )
façon à pouvoir en la solution en cours du dual reste
admissible
augmenter d'autres.
• yi 1
- une diminution doit permettre modifications simples de la
deux augmentations solution du dual sans changement
- le choix des vj se fait très de sa valeur
simplement
74
7.3 L'ALGORITHME DE CHRISTOFIDES
ET BEASLEY (Problème p-médian)
Principe:
• recherche d'une solution admissible par une
heuristique gourmande
• calcul d'une borne par relaxation
lagrangienne
• + méthode arborescente
75
Modèle utilisé: modèle 3 avec contraintes (2')
n n n n
Min dij xij s.c. xij 1 j (1) xij n xii i ( 2' )
i 1 j 1 i 1 j 1
n
xii p xij 0,1 ij
i 1
77
n
w( ) Min (dij j ) xij (d jj j ) j
iS K 0 jS K1 jK1 j 1
dij j
xij n xii i S K1
jS K1
dij j
n
xii p K1
iS K 0 K1
xij 0,1 ij; xii 0 et xij 0 i K 0j; xii 1 i K1 ;
en posant
i ( d ii i ) min( 0, d ij j ) i S K 0
jS K1
d ij j
j i
78
n
w( ) Min i xii j
iS K 0 j 1
n
xii p K1
iS K 0 K1
xii 0,1 i S K 0 ; xii 1 i K1 ;
79
Calcul des xij*:
80
Procédure arborescente
• Procédure classique séparation/évaluation
(Branch and bound)
• Séparation:
i tel que i Min k
kS*K1
81