Académique Documents
Professionnel Documents
Culture Documents
PresentationROCostaBillaut PDF
PresentationROCostaBillaut PDF
l'optimisation combinatoire:
prsentation,
mthodes
secteurs dapplication,
2
I.
Recherche Oprationnelle
et
Graphes
3
Dfinition
4
Dfinition
Objectif de la RO : faire de la recherche
scientifique oprationnelle utilisable sur
le terrain des oprations laide des
outils de linformatique.
5
Dfinition
"Optimiser sous contraintes"
depuis la reine
Didon
Claude Berge
8
GRAPHES NON ORIENTS
a e G3
G2=(X2,U2)
b A3={[a,e], [b,f],
f [e,f], [d,f],...}
noeuds
c
X2 = {sommets}
chane de a d
g d [a,e],[e,f],[f,d]
U2 = {artes} =
{[a,e],[a,b],
[a,c],[b,e],..}
9
GRAPHES ORIENTS
X1 = {sommets}
a f = {a,b,c,d,e,f}
U1 = {arcs}
b e
c U1 X1xX1
d
U1 =
{(a,f),(a,b),(b,c),..}
G1 = (X1 , U1)
10
UTILISATIONS des GRAPHES en RO
Rsolution de problmes
plus court chemin
flot maximal
11
Sens Int erdit
Circuler
G
H
E D
A
B C
F
G H D
B C
A
G
F
12
Cheminer
Critre 1: le temps
Critre 2 : le cot
Calcul du chemin de
temps (ou cot)
minimal
13
Cheminer
Chemin
trouv
facilement
par un
algorithme
de
graphe
14
Router
capacits
9
3
10
flots
13
13
15
16
Un peu dHistoire
La ville de Koeninsberg est traverse par la
Pregel, qui coule de part et dautre de lle de
Kneiphof, et possde sept ponts.
17
Euler (1736) : Peut-on se promener
dans la ville en traversant chaque
pont une et une seule fois ?
b c
18
Chane eulrienne : passer une
fois et une seule par chaque arte
du graphe
b c
19
Thorme d'Euler
"On peut se "promener" dans le graphe en
passant une fois et une seule par chaque
arte si et seulement si le nombre de
sommets extrmits d'un nombre impair
d'artes est 0 ou 2."
20
Peut-on se promener dans la ville en traversant
chaque pont une et une seule fois ?
NON !
3
a
3 b c3
d
5
21
En ajoutant un pont:
OUI !
4
a
3 b c4
Dpart
d
5 arrive
22
W.R. Hamilton (1850) "Peut-on se
"promener" dans un graphe en passant une
fois et une seule par chaque sommet ?"
23
Existence d'une chane
hamiltonienne dans un graphe
a
a
b c b c
d d
OUI ! NON !
25
Approche de la thorie de
la complexit
Thorie dveloppe la fin du 20me
sicle (S. Cook 1970 et L. Levin 1973)
J. Edmonds, R Karp, 26
Une notion importante : lalgorithme
Enumration (idiot)
nombre dtapes born par c.n!
Slection (bte)
nombre dtapes born par a.n.(n-1)/2 = O(n2)
Fusion (malin)
nombre dtapes born par b.n.logn = O(nlogn)
28
Un tout petit peu de combinatoire
1 tape se droule en 10-6 seconde
Le nombre d'tapes est de l'ordre de:
Log(n) n n2 2n n!
29
Algorithme
Un algorithme dont les donnes en entre
sont de taille n et dont le nombre dtapes
est born par
30
Des problmes qui se ressemblent
et pourtant...
un problme "facile"
existe t'il une chane eulrienne dans G ?
et
un problme "difficile"
existe t'il une chane hamiltonienne dans G ?
31
Complexit
Attention!
Nous donnons ici une
rponse INTUITIVE
Mais si le graphe
est grand,
Carlos ne pourra
pas savoir si
cette chane
existe
34
Exemple si Carlos sait qu'il existe une
chane hamiltonienne dans un graphe
donn, il peut facilement vous en convaincre
Mais si le graphe
est grand,
Carlos et
Cest la nuance entre vrifier ne pourra
trouver pas savoir si
cette
Facile vrifier nest paschane
existe
synonyme de facile trouver .
35
Classe P
Un problme de NP est "facile"
(polynomial) si on peut le rsoudre par
un algorithme "efficace"
(temps polynomial en fonction de la
taille de linstance)
Exemples
L'existence d'une chane eulrienne
dans un graphe
Vrifier qu'un nombre n'est pas premier
36
Un problme est "difficile" si les seules
mthodes connues pour le rsoudre
exigent un temps de calcul exponentiel
en fonction de la taille de linstance
Exemples
L'existence d'une chane hamiltonienne
dans un graphe
37
Classe NP-C
38
NP
? ?
?
?
NP-C P
40
Pour montrer qu'un problme P est
NP-complet, on choisit un problme dj
connu pour tre NP-complet, soit Pnc , et on
montre que Pnc peut se "transformer" en P.
? ?
?
?
Pnc
P
NP-C P
Si on savait rsoudre facilement P on saurait rsoudre
aussi Pnc; or on ne sait pas rsoudre Pnc
P est donc srement difficile rsoudre 42
Les problmes sont classs de faon
incrmentale: la classe d'un nouveau
problme est dduite de la classe d'un ancien
problme.
43
Le problme SAT
"satisfiabilit" d'une expression logique
Exemple
(xVyVz) (xVyVt) (yVzVt) (xVzVt)
x est vrai ou faux x vrai x faux
Peut-on affecter des valeurs vrai ou faux
aux variables de telle faon que
l'expression soit vraie ?
Exemple
une solution: x=vrai y=faux t=vrai z=vrai
44
Le thorme de Cook
Stephen Cook
a class le
problme SAT
comme NP-complet
45
Clay Mathematics Institute, Cambridge,
Massachusetts 02138 USA
46
Voulez-vous gagner 1 000 000 $ ?
Prix Clay
? ? NP
?
?
?
P
?
NP-C ?
?
fa
NP-Difficiles cil
Problmes es
?
d'optimisation 48
III.
Rsoudre un problme de
recherche oprationnelle
49
RESOUDRE UN PROBLEME DE RO
L'OPTIMISATION COMBINATOIRE
50
La RO vise rsoudre certains problmes
par des mthodes scientifiques laide des
ordinateurs.
52
Difficiles
53
Rsolution d'un problme de RO
"FACILE"
Solution optimale
trouve par un algorithme
polynomial
54
Chemin le plus court
d'un sommet vers tous les autres
8
b c 2
2
2 3
a d
6 4
e
Algorithme de Dijkstra
1959
(longueurs positives)
55
2 7
10
8
b c
2 2
0
8
2 3
a d
4
6
e
46 Complexit O(m+nlogn)
m arcs, n sommets
56
Rsolution d'un problme de RO
"FACILE"
Attention:
si l'instance est trs "grande"
mme un algorithme polynomial
peut tre impraticable
57
Bonne complexit O(log n) ou O(n) ou O(n log n)
n3
n2
nlogn
n
logn
La localisation d'entrepts
59
O installer les entrepts?
Clients 60
Combien faut-il crer
d'entrepts et o faut-il les
installer de faon servir tous
les clients pour un cot* total
minimal?
=
1
quipements SR
=
sous-
0
rpartiteurs
Clients
64
Rsolution d'un problme de RO
"DIFFICILE"
Instances de petite taille (min)
choix: equip choix: pas
en Sa d'equip en Sa
{Solutions} BOinf BOsup
A chaque tape i:
choix: equip
en Sb {Sol1} B1inf B1supchoix: pas {Sol2} B2inf B2sup
d'equip en Sb
S* solutions
Heuristique
67
Rsolution d'un problme de RO "DIFFICILE"
Instances de grande taille (min)
bornes S* solutions
B S
Programmation garantie
Heuristique
mathmatique
68
Solution approche - Mtaheuristiques
Recuit simul
Tabou
Alorithme gntique
Colonies de fourmis
Etc.
69
Mtaheuristiques: localisation
Le Recuit simul
71
Localisation Modle mathmatique
VARIABLES
72
Localisation Modle mathmatique
n n n
minimiser z f i yi cij xij
i 1 i 1 j 1
sous contraintes
n
xij 1 j (1)
i 1
xij yi i j (2)
73
Localisation Relaxation "continue"
n n n
minimiser z f i yi cij xij
i 1 i 1 j 1
sous contraintes
n
xij 1 j (1)
i 1
xij yi i j (2)
74
Localisation Relaxation "continue"
n n n
minimiser z f i yi cij xij
i 1 i 1 j 1
sous contraintes
n
xij 1 j (1)
i 1
xij yi i j (2)
0 yi 1 i 0 xij 1 ij
75
Calcul de bornes entier et continu
Programmation linaire (Min)
bornes S* solutions
Programmation B S
mathmatique garantie
Heuristique
Solution du PL continu
77
Calcul de bornes
Programmation mathmatique
Programmation quadratique
Programmation semi-dfinie
78
Programme linaire Simple
Maximisation
Rsoudre :
x2
Max z=2x1+x2
s.c. x1 8 (1)
x2 5 (2) x1=19/4, x2=5 z=58/4
5
x1+x2 6 (3)
4x1+x2 24 (4) x1
8
x1 0, x2 0
Approche gomtrique
79
Programmation linaire
Minimiser (ou Maximiser) z=cx
s.c. Ax < b Cx >d Dx=e x0
83
Plusieurs "critres"
3,3
2,6 2 4 2,5 (7,14)
(11,9)
1 2,5 3,3 5 l1(i,j), l2(i,j)
7,1 i j
6,1 3
L2
3,3 (9,19)
2,6 2 4 2,5
1 2,5 3,3 5 (13,2) L1
7,1
6,1 3
Plusieurs "critres"
* Souvent difficile
* Dominance de certaines
solutions
* Optimum de Pareto
86
IV
Domaines d'applications
87
A.
Planifier,
ordonnancer.
88
Ordonnancement de chantier
89
Ordonnancement d'atelier
Ordonnancer
les passages
sur les
machines
90
Emploi du temps
Planifier n cours en le minimum de temps,
certains cours ne pouvant avoir lieu en parallle
(partage des ressources: classe ou prof).
1 2 3
Un exemple
8 4
Un cours =
un prof+une classe 7 6 5
91
c'est un problme de coloration
lorsque tous les cours ont la mme dure
Colorer un graphe
=
attribuer une couleur chaque sommet sans que
deux sommets voisins aient la mme couleur
92
c'est un problme de coloration
lorsque tous les cours ont la mme dure
1 2 3
Salle 3 1 2
Salle 2 3 5 4 8 4
Salle 1 6 7 8
t 7 6 5
Un exemple
Obtenir un bon emploi du temps: un problme trs difficile 93
Planification des centre dappels
(Bouygues Tlcom)
Charges salariales = 70% des cots de lentreprise.
6 millions de clients
2500 tlconseillers de clientle (TC)
7 sites, 33 activits
70000 appels par jour
Cot annuel > 100 M
94
Problmatique annualisation du temps de travail
Donnes
courbe de demande
contrats des TC (droits)
Objectif
affecter au mieux les
jours de cong aux TC
Contraintes
rpondre la demande
respecter les contrats
95
B.
Stocker,
grer.
96
Gestion de la production,
des stocks et de la maintenance
Suivi de production
Respect des dlais
Gain de temps
Respect du client
Meilleure comptitivit
Organisation du travail
rsistance aux alas
97
C.
Transporter
98
Transport, logistique
Optimisation des
tournes de vhicules,
distribution
Relations fournisseurs /
clients
Organisation des
centres logistique.
99
Transport, logistique
Le ramassage
scolaire
100
D.
Emballer,
ranger.
101
Le problme
Plusieurs Botes
Plusieurs objets
Comment mettre les objets dans les Botes en
utilisant le moins possible de Botes ?
102
o est le problme ?
Algorithme :
On les met au hasard et voil !
8 8
9
5 6 2
6 7
4
4
1 2 1 5
3
7 3 9
Plusieurs objets
103
Ide meilleure ?
Algorithme :
Classer les objets du plus grand au plus
petit
Remplir chaque Bote avec le prochain plus
grand objet possible dans la liste.
104
2
4
9
6
1 8
3 5 7
23 8
4
7 Plusieurs objets
6
1 2 7 8 9
5 9 5 6 4
Quatre Botes , pas mieux!
1 2 3
Trois Botes
105
Passons en 3D
objets
boite quasi idale
trop grande !
106
Le problme
Problmes de chargement
de bateaux (2 degrs de
libert, objets similaires)
avec des conteneurs.
107
E.
Router,
relier.
108
Rseau de mobilophonie
Web
109
Scuriser les liaisons
Amliorer la qualit du service
Rduire le diamtre du graphe
110
Calculer le diamtre dun graphe:
.un problme facile
Matrice des plus courts chemins
Algorithme en O(n3)
MAIS
111
Router Calcul ditinraires
en fonction du traffic :
Donnes actualises
toutes les 5 minutes
Informations ncessaires
en temps rel
Temps disponible pour
calculer un itinraire :
1/10me de seconde
112
Calcul ditinraires
Prcalculs ditinraires
stockables impossible
Approximation de la
longueur des chemins
113
F.
Soigner,
grer les hopitaux
114
Imagerie mdicale
Tomographie
reconstitution dimages
partir dinformations
fragmentaires, estimation
dun corps partir de ses
projections
Tomographie discrte
image constitue de pixels
Reconstruction dune
matrice binaire partir de
ses projections en ligne et
en colonne
Existence de la matrice ?
Reconstruction de la
matrice ?
Unicit de la solution ?
115
Lutte contre le cancer
116
ADN
Oligonuclotides
courtes squences dADN ou
ARN (20 paires de bases, i.e.
association Adnine (A),
Thymine (T), Guanine (G),
Cytosine (C).
Reconstruction de chanes dADN
connues partiellement
Entre : un ensemble doligo
(mots dun alphabet {A,T,G,C})
Reconstruire la squence ADN
dorigine.
Difficults diffrentes selon
que lentre contient ou non
des erreurs, selon les parties
non connues,
117
Gestion des ressources hospitalires
Ressources critiques =
blocs opratoires.
Planification de lutilisation
des blocs opratoires
Planification des horaires du
personnel (infirmires, etc.)
Gestion de la Supply Chain
hospitalire (strilisation, )
118
G.
Le domaine
spatial
119
Constellation de satellites
Objectif:
couvrir un territoire
moindre cot
Dterminer
Le nombre de
satellites lancer
Leurs orbites
120
I.
La Finance
121
122
H.
L'environnement
et le
dveloppement
durable
123
Gestion des ressources
Gestion de la fort
Gestion de l'eau
124
Les enjeux dveloppement durable
Dveloppement en Afrique
Favoriser une culture scientifique
dans la prise de dcision
Intervention de la RO tous les
niveaux
Gouvernements
Administrations publiques
Industries
ONG
Domaines abords :
Gestion des ressources en eau,
industries manufacturires
transport (approvisionnement)
finance
nergie
environnement
urgence humanitaire
126
I.
L'energie
127
Energie
Design et planification des centrales
Localisation des sites
Organisation de la production
Politique des prix
..
Energie
CONCLUSION
Les enjeux de la RO
130
Les progrs
avances thoriques sur les
algorithmes de
programmation linaire
avances thoriques sur les
algorithmes de
programmation linaire en
nombres entiers
enfin, ordinateurs plus
rapides.
1 an de calcul, en 1980 =
quelques secondes en 2008 !
Domaine Politique
Meilleures dcisions stratgiques
Environnement
Meilleure gestion des ressources
Sant
132
Intrts de la RO-AD
133
Apports
Exemples:
gain annuel de $3 millions pour une entreprise
amricaine de rparation de vhicules (Interfaces vol. 36 (5),
oct. 2006, pp. 407-419).
134
Entreprises trs concernes par la
SNCF RO
+
Air France
Eurodcision
Gaz de France
Artlys
EDF
Rostudel
Air Liquide
Orange
Bouygues
CNES Et les PME ??
Powernext
135
La Recherche oprationnelle
136
Le Monde Informatique n1110, 14 avril 2006, page 34, Anne-Marie Rouzer
137
Un autre expos.
Optimisation multicritre
Aide la dcision
Optimisation stochastique
Dcision dans l'incertain
Optimisation globale
Programmation par contraintes
138