Introduction
MTH8415S. Le Digabel, Polytechnique Montr´eal
H2020
Plan
1. Introduction
2. Exemples de probl`emes
3. Algorithmes
1. Introduction
2. Exemples de probl`emes 3. Algorithmes
Termes importants du cours
I Recherche op´erationnelle (RO) : Ensemble de techniques math´ematiques appliqu´ees `a la mod´elisation, l’optimisation et l’analyse d’un processus
I Mod´elisation I Optimisation :
I Continue I Lin´eaire(OL) I Non lin´eaire(ONL) I Combinatoire (OC) I Ennombres entiers(ONE)
I Th´eorie des Graphes:
I Cheminements optimaux I Flots.
Probl`
eme d’optimisation
L’optimisationest un domaine qui ´etudie les probl`emes de la forme min
x∈X{f (x) : x ∈ Ω}
o`u
I X est un ensemble de dimension n :
Les variables d’optimisation
I Ω ⊆ X est l’ensemble des solutions r´ealisables : Les contraintes
Mod`
ele d’optimisation
I Pour un probl`eme donn´e, l’expression de f , X et Ω permet d’obtenir un mod`ele d’optimisation
I Optimisation continue (OL et ONL) : X = Rn
I OC : X est un ensemblediscret
I ONE : X = Zn ou Nn ou {0, 1}n
I En th´eorie des graphes, il n’est pas forc´ement n´ecessaire d’exprimer un mod`ele d’optimisation. On se sert directement d’un graphepour repr´esenter le probl`eme
Mod`
ele d’optimisation (continue) non lin´
eaire
min x∈X =Rnf (x) s.c. g1(x) ≤ 0 g2(x) ≤ 0 . . . gm(x) ≤ 0 ` ≤ x ≤ uI f : Rn→ R diff´erentiable : Fonction objectif
I gi(x) ≤ 0, i ∈ {1, 2, . . . , m} : Contraintes
I gi : Rn→ R diff´erentiable, i ∈ {1, 2, . . . , m} : Membres de
gauche des contraintes
I `, u ∈ Rn:Bornes sur les variables x. Peuvent ˆetre ±∞ I Ω = {x ∈ Rn: gi(x) ≤ 0 ∀i ∈ {1, 2, . . . , m}, ` ≤ x ≤ u}
Mod`
ele d’optimisation lin´
eaire (forme standard)
max x∈Rn f (x) = n P j=1 cjxj s.c. n P j=1 aijxj ≤ bi i ∈ {1, 2, . . . , m} xj ≥ 0 j ∈ {1, 2, . . . , n}Peut ˆetre exprim´e de fa¸con matricielle : max x∈Rn f (x) = c >x s.c. Ax ≤ b x ≥ 0
Notes
I Fonction objectif (pas objective)
I Optimisation et pas programmation
I min et max sont ´equivalents
I Contraintes ´egalit´e (=) et contraintes in´egalit´e (≤ et ≥). On peut transformer des ´egalit´es en in´egalit´es et vice-versa
Optimisation combinatoire (OC)
L’ONE et la th´eorie des graphes sont de l’OC.I En th´eorie, une solution optimale peut ˆetre obtenue en ´
enum´erant toutes les solutions r´ealisables et en conservant la meilleure. En pratique, ce proc´ed´e est trop long.
I Pour les probl`emes faciles, une r´esolution exacte en un temps court est envisageable.
I Un grand nombre de probl`emes sont difficiles. Des solutions exactes sont envisageables, mais dans un d´elai acceptable, on se contentera de solutions approch´ees obtenues par des m´ethodes heuristiques.
Termes importants
I Optimumlocal vsglobal. I Algorithme exactvsheuristique.I En OL, on aura un optimum global.
I En ONL, la plupart du temps, un optimum local, et si le probl`eme est convexe, on aura un optimum global.
I En OC, on aura soit une solution exacte (=un optimum
global), soit un optimum local qui d´epend d’un voisinage, ou alors une solution heuristique.
Extensions
I Optimisation sans d´eriv´ees I Optimisation multiobjectifs I Optimisation multi-niveaux I Optimisation stochastique I Optimisation robuste I Optimisation conique . . .
1. Introduction
2. Exemples de probl`emes
3. Algorithmes 4. Documentation
Probl`
eme v.s. Instance
I Unprobl`emecorrespond au mod`ele min
x∈X{fa(x) : x ∈ Ωa}
dans lequel a est un ensemble deparam`etresnon d´etermin´e (c’est le cas g´en´eral)
I Uneinstance du probl`eme est une formulation du mod`ele dans laquelle aest d´etermin´e (c’est un cas particulier)
I En pratique, on con¸coit souvent des algorithmes pour des probl`emes, qu’on teste sur plusieurs instances
I On peut aussi s’int´eresser `a une seule instance ou a une famille d’instances particuli`eres. Dans ce cas on concevra une m´ethode plus sp´ecialis´ee
Voyageur de commerce (TSP)
Un voyageur de commerce doit visiter un certain nombre de villes, et chaque ville une et une seule fois. ´Etant donn´e des distances entre chaque paire de villes, il doit minimiser la distance totale parcourue
Probl`
eme d’affectation
I n tˆaches `a affecter `a n machines de telle sorte que chaque machine soit affect´ee `a une seule tˆache et chaque tˆache soit affect´ee `a une seule machine
I Le coˆut d’affecter la tˆache j `a la machine i est cij
I L’objectif est de minimiser la somme des coˆuts
I Ω est l’ensemble de toutes les affectations possibles des n tˆaches aux n machines. Il y en a n!
I Mod`ele en variables binaires : min x∈X={0,1}n2 f (x) = n X i=1 n X j=1 cijxij
sujet aux 2n contraintes
Pn
j=1xij = 1, i = 1, 2, . . . , n
Pn
i=1xij = 1, j = 1, 2, . . . , n
Liste non exhaustive de probl`
emes et applications
I OC (th´eorie des graphes et ONE) :I Coloration de graphes I Routage I Satisfaisabilit´e I Classification I Horaires I etc.
I ONL : G´enie chimique, g´enie industriel, g´enie m´ecanique, estimation de param`etres, apprentissage machine, etc. I OL : Applications dans quasiment tous les domaines
(transport, ´energie, planification, production, distribution, t´el´ecommunications, finance, etc.)
1. Introduction
2. Exemples de probl`emes
3. Algorithmes
Algorithme
Un algorithme est la description d’une s´equences d’instructions `a entreprendre afin de r´esoudre un probl`eme. Par exemple :
Il faut choisir un algorithme selon les exigences sur laqualit´e de la solutionet le temps de calcul. Ces objectifs sont souvent
contradictoires.
I Algorithmes exacts: garantissent une solution optimale globale mais peuvent ˆetre tr`es longs si le probl`eme est difficile.
I S´eparation et ´evaluation (branch and bound) pour l’ONE. I Le simplexe pour l’OL.
I Programmation dynamique.
I Algorithmes locaux : garantissent une solution locale.
I M´ethodes de descente (OC et ONL). I Gradient / Newton pour l’ONL.
I Heuristiques et m´etaheuristiques: tr`es peu de garanties sur la qualit´e de la solution, mais convergent rapidement.
I Algorithme glouton.
I Recherche tabou, `a voisinages variables (VNS). I Algorithmes g´en´etiques.
1. Introduction
2. Exemples de probl`emes 3. Algorithmes
Liste non exhaustive de r´
ef´
erences
I OL : V. Chv´atal, Linear programming, 1983
I OL et ONL : D.G. Luenberger et Y. Ye, Linear and Nonlinear Programming, 2016
I Graphes et r´eseaux : R.K. Ahuja, T.L. Magnanti, et J.B. Orlin, Network Flows : Theory, Algorithms, and Applications, 1993 I G´en´eral : D. de Werra, T.-M. Liebling, et J.-F. Hˆeche,