Optimisation linéaire et
analyse post-optimal
2
Table des matières
2 Optimisation Linéaire 9
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Généralites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.1 dénition d'un programme linéaire : . . . . . . . . . . . . 9
2.2.2 Forme d'un Programme Linéaire (PL) : . . . . . . . . . . 10
2.3 La Rèsolution d'un Problème Linéaire . . . . . . . . . . . . . . . 11
2.3.1 La Rèsolution graphique : . . . . . . . . . . . . . . . . . 11
2.3.2 Rèsolution par la méthode du simlexe : . . . . . . . . . . 13
2.3.3 Méthode de deux phase : . . . . . . . . . . . . . . . . . . 18
3 Dualité 21
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2 Probléme dual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Construction du dual . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4 Thoéréme de dualité : . . . . . . . . . . . . . . . . . . . . . . . 23
3.5 Intérpretation économique de la dualité : . . . . . . . . . . . . . 24
4 Analyse post-optimale 25
4.1 introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2 Analyse de sensibélité sur les seconds membres bi . . . . . . . . 25
4.3 costitution de stock . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.4 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3
Introduction
La recherche operationnelle(RO) est la discipline des mathèmatique appliquées
qui traite des questions d'utilisation optimale des ressources dans l'industrie
et dans le secteur public . Le champ d'application de la RO s'est élangi á des
domaines comme l'economie, la nonce, le macreting et la planication d'en-
trepise. plus récemment , la RO á ètè utiliseé pour la gestion des systémes de
santé et d'èducation, pour la rèsolution de problémes environnementaux et dans
d'autres domaines d'intérêt public .
4
Chapitre 1
Introduction générale á
l'optimisation
l'optimisation repose toujours sur des modeles mathématique mais ces mo-
deles sont rarement des modules physique comlexes ils sont généralement simples
et partiels .
La modulisation designe la traduction des problémes réels en èquations mathé-
matique . Elle consiste en trois étapes :
5
Dénition d'un Fonction Objectif :
(appelles fonction coût ou fonction économique ) traduisant les préférences
du décideur exprimées sous la forme d'une fonction des variable identifées .
F onction objectif : min ou max de f (x)
Contarintes : g (x) = b , i = 1, ..., p
i i
(P) :
gi (x) ≤ b j , j = p + 1, ..., m
Contraintes de signe : xi ( ≥ , ≤ , ≶ ) 0, i = 1, ..., n
6
Ce probléme admet une solution optimale , oú la fonction objectif atteint la
meilleure valeur (maximum oú minimum ) tel que
x∈E / f (x∗ ) = minx∈E f (x) oú f (x∗ ) = maxx∈E f (x)
Exemple 1.4.1 Un restaurateur peut orir deux type d'assiette , des assiettes
qui coûtent 80 dh et qui contient 5 Sardines , 2 Merlan , 1Rougets , et des
assiettes qui coute 120dh et qui contient ,3 Sardines , 3 Merlan et 3 Rougets ,
sachant que le restaurateur dispose 30 Sardines , 24 Merlan et 18 Rougets .
Donner le Modêle mathématique qui permet de maximiniser le prot .
Les données du problème se traduit sous forme de tableaux suivant :
7
8
Chapitre 2
Optimisation Linéaire
2.1 Introduction
La programmation linéaire constitue l'origine de l'optimisation mathéma-
tique modérne . son étude á été menée par George Bernard Dantzig á partir de
1947 .
L'algorithme du simplexe , que nous présentons dans ce chapitre , est considéré
comme un des dix algorithmes les plus importants du 20 éme siécle c'est la pre-
miére fois qu'un problème avec contraintes d'inègalité á été résolu.
Dans ce chapitre , nous abordons d'étude direct de probléme.des problémes
de minimisation de fonction linéaire dans un domaine déni par des contraites
linèaires . par une suite d'observations de nature gèométrique ou encore âlgé-
brique nous déduisons les conditions d'optimalité de la programation linéaire .
2.2 Généralites
2.2.1 dénition d'un programme linéaire :
Un programme linéaire c'est un ensemble de
Pn n variable reèlls x1 ,..., xn , et
m contraintes j=1 ai,j xj (≤, ≥, =) bi pour i = 1, ..., m
et une fonction d'optimisation :
n
f :< →< P
X=(x1 ,...,xn ) → f(x1 ,...,xn )= ai jxj
Ce programme s'écrit sous la forme mathématique suivante :
P
M axP
(M in) z = cj xj
s/c ai,j xj (≤, =, ≥) bi i = 1, ...., m
xj (≤ , ≥ , ≶ ) 0 j = 1, ...., n
ou la forme matricielle :
j
M ax (M in) c X
s/c AX (≤, =, ≥) bi
X (≤ , ≥ , ≶ ) 0
9
ou :
x1
.
,→ x= . matrice unicolonne des variables .
.
xn
,→A= aij , i=1,...,n
j=1,...,n , Matrice des contraintes A ∈ Mm,n (<) .
b1
.
. Matrice de seconde membres .
,→ b=
.
bm
c1
.
. Matrice de coût .
,→ c=
.
cn
Pn
min(z
P
= j=1 cj xj )
(P) : s/c ai,j xj ≤ bi i = 1, .., m
xj ≥ 0 j = 1, ..., n
forme standard :
Un programme linéaire est sous la forme standard lorsque toutes ses contraintes
sont des égalités et toutes ses variables sont non- négatives :
Pn
M ax(z
P
= j=1 cj xj )
(P) : s/c ai,j xj = bi i = 1, ...., m
xj ≥ 0j = 1, ...., n
10
• Un contraite ≥ peut être remlacés par une contraintes ≤
• On considére les signes des variables x1 , ..., xn :
,→ si xi ≤ 0 on a xi = −xi ≥ 0 .
− −
,→ si xi ∈ < on dècompose : xi = x+ +
i − xi avec xi , xi ≥ 0 .
0
• α ≤ β ⇔ α + γ = β avec γ ≥ 0 appelé variable d ecart
De meme si α ≥ β ⇔ α − γ = β avec γ ≥ 0
Remarque 2.2.2 Pour tout modèle d'optimisation linéaire , une seuls des trois
optims suivantes peut suvenir :
1) Il existe au moins ume solution optimale , soit une innité.
2) Le problème est non-réailisable : Il n'est pas possible de satisfaire toutes les
contraintes , (i.e Le polyédre formé par les contraintes est vide ) .
3) Le problème est non-borné : Il n'a pas de valeur optimale nie .
1.png
• soit E un polyédre de <n ( E 6= φ ) x ∈ E est appelé sommet de E
si ∀ A,B ∈ E , x ∈ [AB] ⇒ X = A ou X = B
• soit f : <n → <, et soit α ∈ < : L'ensemble { x ∈ <n / f (x)= α } = Dα
est appelé un isovaleure de f
cette méthode de résolution n'est applicable que dans le cas ou il n'y a que
deux variables .
On considére dans cette partie un probléme linéaire dans <2 sous la forme :
11
minf (x, y) = c1 x + c2 y
s/c : a1,1 x + a1,2 y ≤ b1
am,1 x + am,2 y ≤ bm ; m contraintes de type ≤
x, y ≥ 0
(
a1,1 x + a1,2 y ≤ b1
E = { (x,y) ∈ <2 / }
am,1 x + am,2 y ≤ b2
M aximiser Z = 3x1 + 5x2
s/c : x1 ≤4
2x2 ≤ 12
3x + 2x 2 ≤ 18
1
x1 , x2 ≥ 0
12
Figure 1.1 :Résolution graphique
13
rang(A)= m car les m équation sont indépendantes .
M x M + N xN = b
d'ou
M xM = −N xN + b
d'ou
xM = −M −1 N XN + M −1 b
Dénition 2.3.3
( solution de base )
xM
une solution x= avec xM = −M −1 N XN + M −1 b est appelé solution de
xN
base si xN = 0.
14
→ calculer un sommet de poylédre E , x1
→ construire un nouveau sommet x / f (x2 ) < f (x1 )
2
t
M inf (x) = c x
(P) : s/c AX=b
x≥0
xM cM
avec x= ; c=
xN cN
−1
on a xM = −M N XN + M −1 b
f (x) = ct x = ctM xM + ctN
= f0 +£N xN = f0 + cm+1 xm + 1 + cm+2 xm + 2 + ... + cn xn
0 0
nous avons bien f (X ) = f0 (car X est solution de base admissible .)
T est d'optimalité de X0 :
si ∃ cj < 0 ∀j ∈ m + 1, ..., n alors une augmentation de xj ( xj > 0 ) va diminuer
0
la fonction objectif donc la solution axtuelle X n'est pas optimale .
Propriétés 2.3.2 S'il existe plusieurs coûts negatifs cj < 0 alors nous pouvons
prendre celui qui à la valeur absolue plus grande (Critère de Dntzig ) .
15
OLL1.png
Exemple 2.3.2
M aximiniser (f (x) = −x1 + x2 )
s/c −2x1 + x2 ≤ 1
(P) : x1 + 3x2 ≤ 10
x1 ≤ 4
x1 , x2 , x3 ≥ 0
16
x4 , x5 , x3 Variable d'écarts :
f ∗ (x) = x1 + x2 + 0x3 + x0x4 + 0x5
Tableau du simlexe :
x1 x2 x3 x4 x5
1 −1 0 0 0 f ∗ (x)
x3 −2 1 1 0 0 1
x4 1 3 0 1 0 10
x5 1 0 0 0 1 4
x3 = 1
Solution de Base : x4 = 10
x5 = 4
T est d'optimalité : Le coût associé a x2 hors base est (< 0) la solution ac-
tuelle est non-optimale . construction d'une nouvelle solution de base admissible
x2 entre de la base
x3 sorte de la base
Pivotage :
L1 7→ L1 = LP iv
L 7→ L + L
0 0 P iv
L2 →
7 L2 − 3LP iv
L3 7→ L3
x1 x2 x3 x4 x5
−1 0 1 0 0 f ∗ (x) + 1
x2 −2 1 1 0 0 1
x4 7 0 −3 1 0 7
x5 1 0 0 0 1 4
x2 = 1
Solution en base X2 : x4 = 7
x5 = 4
hors base x1 = x3 = 0
f ∗ (x2 ) + 1 = 0 ⇒ f ∗ (x2 ) = −1
Test d'optimalite : le coût associé á x1 (hors-base) est <0 , donc x∗ est non-
optimale
x1 entre de la base
x4 sort de la base
Pivotage :
17
7→ 17 L2 = LP iv
L2
L
0 7 L0 + LP iv
→
L1 7→ L1 + 2LP iv
L3 7→ L3 − LP iv
x1 x2 x3 x4 x5
0 0 4
7
1
7 0 f ∗ (x) + 2
1 2
x2 0 1 7 7 0 3
−3 1
x1 1 0 7 7 0 1
3 −1
x5 0 0 7 7 1 3
x2 = 3
Solution X3 : x1 = 1
x5 = 3
18
x∗1
.
∗
soit X = . solution optimale de (Paux ).
∗
xn
x∗n+1
∗
• si W(X ) 6= 0 ( la variabl articielle xn+1 6= 0 ).
⇒ Le probléme (P) n'a pas de solution .
• si W(X ∗ ) = 0 ( la variabl articielle xn+1 = 0 ).
⇒ X ∗ est solution de base admissible de (P).
∗
phases 2 si W(X ) = 0, dans ce cas on supprime la colonne des des variables
x∗1
.
X ∗‘=
∗
articielle et la ligne de W(X ). puis on résoud (P) avec . comme
.
x∗n
solution de base admissible par le simplexe .
19
20
Chapitre 3
Dualité
3.1 Introduction
Au chapitre précédent ,on appris à résoudre des problémes de programma-
tion linéaira à l'aide de méthode du simlexe .tout fois ,la résolution du probléme
simplexe n'est que le point de départ de tout recherche opérationnelle basé sur
un normatif linéaire . ce modéle est une représentation simpliée de la réalité .
la solution optimale du modéle n'est pas néssairement la solution du probléme
réel . il faut donc étaudier la solution obtenue en détail avant de l'implanter .
mais avant de pouvoir entrer dans le cour du sujet , il faut examiner un aspect
important de la programmation linéaire : la Dualité
Probléme primal :
t
M ax z = c x
(P) : s/c AX ≤ b
x≥0
probléme dual :
t
M ax w = b y
(P') : s/c At y ≥ c
y≥0
21
,→ Le sens de l'optimisation est inversé c-ã-d un probléme de maximisation
dans (P) devient un probléme de minimisation dans (P').
Les variables de décision restent positives ou nulles .
,→ le vecteur lignes des coecients de la fonction economique de (P') est la
transposée du vecteur colonne des constantes secondes membres des contraintes
principales de (P).
,→ Le vecteure colonne des constantes secondes membres des contraintes prin-
cipales de (P') est la transposéne vecteur lignes des coecients de la fonction
economique de (P) .
,→ La matrices des contarintes principales de (P') est la transposée e la matrice
des contraintes principales de (P) . dans ces contraintes on inverse le sens des
inégalités du primal au dual .
,→ Les variables de décision et d'ecart des deux programmes linéaire doivent
être-notéses par des lettres diérentes an d'èviter toute confusion .
Tableau de correspandance :
min max
Primal Dual
Variable ≥0 Contrainte ≤0
Variable ≷0 Contrainte =0
Variable ≤ 0 Contrainte ≥ 0
Contrainte ≤ 0 Variable ≤ 0
Contrainte = 0 Variable ≷ 0
Contrainte ≥ 0 Variable ≥ 0
Exemple :
0
M ax z = 3x1 + x2 − 2x3
M ax z = 10y1 + 7y2 + 8y3
s/c x1 + 2x2 ≥ 10 s/c y1 + 3y2 + y3 = 3
Primal : 3x1 − x2 + x3 = 7 ⇒ Dual : 2y1 − y2 ≥ 1
x1 + 3x3 ≤ 8 y2 + 3y3 ≤ −2
x1 ≥ 0; x2 ≥ 0; x3 ≥ 0 y1 ≤ 0; y2 ≷ 0; y3 ≥ 0
+ iverser uniquement les opérateurs (= ou/et ≷)
+ inverse tous les opérteurs des contraintes .
M ax z = x1 + 3x2 − 2x3
M ax z 0 = 12y1 + 8y2 − 10y3
s/c x1 + 2x2 ≥ 12 s/c y1 + 2y2 + 2y3 ≤ 1
Primal : 2x1 − 3x2 + x3 = 8 ⇒ Dual : 2y1 − 3y2 = 3
2x1 + 2x3 ≤ −10 y2 + 2y3 ≤ −2
x1 ≥ 0; x2 ≷ 0; x3 ≥ 0 y1 ≥ 0; y2 ≷ 0; y3 ≤ 0
+ inverse tous les opérteurs des contraintes .
+ iverser uniquement les opérqteurs (= ou/et ≷)
22
3.4 Thoéréme de dualité :
On considére les pronlème suivants :
t
M ax z(x) = C X
Minw(y) = bt Y
le primal (P) : s/c AX ≤ b le dual (P') : s/c At Y ≥ c
X≥0 Y ≥0
Théorème 3.4.1 ( Dualité faible ) Soit X une solution admissible pour (P) et
Y une solution admissible pour (P') , alors z(X) ≤ w(Y ) .
Preuve 3.4.1 t
On a X ≥ 0 , AX ≤ b , Y ≥ 0 et A Y ≥ c
z(X) = C t X ≤ (At Y )t X = Y t AX ≤ Y t b = w(Y )
−X solution admissible pour (P)
Corollaire 3.4.1 Si −Y solution admissible pour (P') Alors , X et Y
−z(x) = w(y)
sont des solutions optimale resp de (P) et (P') .
Théorème 3.4.2 : ( Dualité forte ) Si le probléme (P) admet une solution ad-
∗
missible (X ) alors le probléme dual (P') admet lui aussi une solution optimale
Y ∗ et ona z(X ∗ ) = w(Y ∗ ) .
23
,→ le problème est non admissible .
• cela donne 9 combinaisons pour le primal et le dual .
• par les theoréme de duâlité , certaines d'entre elles impossibles .
t t
M aximiser z = c x
Minimiser w(y) = b Y
0
(P) : s/c AX ≤ b et son dual l(P ) s/c At Y ≥ c
x≥0 Y ≥0
A=(ai,j ) i= 1,.....,n
j= 1,.....,m
24
Chapitre 4
Analyse post-optimale
4.1 introduction
Etant donné un probléme d'optimisation linéaire :
t
M ax z = c x
(P) : s/c AX ≤ b
x≥0
nous allons etudier la sensibilité de la solution optimale par rapport aux donnés
du probléme. Autremment dit ,comment varie la solution ou encore la fonc-
tion objective si l'on modie une entrée du vecteur C ou b ou encore la matrice
A. L'analyse de sensibilité est anssi connue sous le nom d'analyse post-optimale .
Dénition 4.1.1 une solution de base optimale est dite stable si l'ensemble des
variable de base à l'optimum ne changent pas, méme si les valeurs d ces variable
be base sont modiées .
Dénition 4.1.2 Par dénition on appelle cout marginale d'un bien l'augmen-
tation minimale de dépenses par rapport à la solution optimale ,qui résulterait
de l'utilisation d'une unité suppléémentaire de ce bien ,lorsque le probléme posé
consiste à produire des biens au moindre cout .
Remarque 4.1.1 les coux marginaux sont donc les eets nets associés aux
variable d'écarts,puisque ce sont des variables qui déterminent les excédentes
(ou les insusonts ) de biens .
M in ( z = c1 x1 + c2 x2 + ..... + cn xn )
(P) : s/c ai,1 x1 + ai,2 x2 + ..... + ai,n xn ≤ bi + ∆bi i = 1, ...., n
xj ≥ 0 j = 1, ...., m
25
A sa matrice de rang m () on s'intéresse à la modication d'un seul ceocient
de b c-à-d b'= b + ∆br er .
Soit B=1,.....,m une base réalisable et X∗ la solution optimale relative à la base
AB obtenu par résolution avec la méthode de simplexe .
∗ −1
A l' optimum on a XB = AB b ≥ 0
En remplace b par b' :
∗ −1 −1
XB = AB b'= AB (b + ∆br er )
b1 0
. .
−1
=AB ( . + ∆br )
. .
bm 0
0
.
−1 −1
=AB b + AB ∆br ≥ 0 (∗)
.
0
β1,r
.
−1
ieme
Notons . la r colonne de AB
.
βm,r
bi = A−1B b i
l'equation (∗) bi + βi,r ∆br ≥ 0 i=1,.....,m
,→ pour tout i telque βi,r > 0
bi + βi,r ∆br ≥ 0 ⇒ βi,r ∆br ≥ -bi
⇒ ∆br ≥ β−b i
i,r
−bi −bi
max1≤i≤m { βi,r , βi,r > 0 } ≤ ∆br ≤ min1≤i≤m { βi,r , βi,r < 0 }
t
M ax z(x) = C X
Min w(y) = bt Y
le primal (P) : s/c AX ≤ b le dual (P') : s/c At Y ≥ c
X≥0 Y ≥0
26
siX ∗ et Y ∗ sont respectivement des solution optimal de (P) et (P') .
∗
soit Z l'optimale de (P) et (P') .
alors d'aprés le théoréme de dualité forte on a :
∂Z ∗
D'ou la relation
∂bi = yi
cette relation donne le taux de variation de la fonction objectif par rapport aux
paramétrés bi .
Deux cas ce présentent lors d'une variation de bi :
Théorème 4.3.1 ∗
si (P) admet une solution optimale non dégénérée (XB > 0)
alors ∃ε> 0 tel que si | ∆bi | ≤ 0 , i=1,....,m
Le probléme linéaire perturbé :
M axP
( z = ct X)
n 0
(P ) :
s/c j=1 ai,j xj ≤ b = bi + ∆bi i = 1, ...., m
X≥0
Pm
Z ∗‘ =Z
∗
+ j=1 yi∗ ∆bi
4.4 Application
Considerons le PL
M aximiser z = 3x1 + 5x2
s/c : x1 ≤4
2x2 ≤ 12
3x1 + 2x2 ≤ 18
x1 , x2 ≥ 0
27
x1 x2 x3 x4 x5
0 0 0 2
3 1 f ∗ (x) − 36
1 −1
x3 0 0 1 3 3 2
1
x2 0 1 0 2 0 6
−1 1
x1 1 0 0 3 3 2
Modication de b1
x0∗ = x∗ =(2,6)
z 0∗ = z ∗ = 36
28
va changer On a donc déterminé le domaine de validité de y1∗ . Il s'agit de l'in-
tervalle :
b1 ∈ [ 2 ,+∞ b
Modication de b2
29
Modication de b3
30