MPSI B Année 2019-2020. DS 8 le 24/04/20 26 avril 2020
Ce texte1 introduit l'algorithme du simplexe. Il s'agit de minimiser une fonction coût dans un ensemble convexe de solutions d'un système d'équations et d'inéquations.
La partie 0 ne contient pas de questions mais rassemble toutes les notations. Il est conseillé de la lire une première fois sans chercher à tout mémoriser puis d'y revenir pour trouver ce que représente une notation rencontrée plus loin.
Partie 0. Notations
Soitmetnentiers avec0< m < n. 1. Formes linéaires de Rn
La base canonique deRn est notéeE = (e1,· · · , en). On rappelle que
∀j∈J1, nK, ej = (0,· · · ,0, 1
indice|{z}j
,0,· · ·,0).
Soit(α1,· · · , αm)une famille de formes linéaires deRn dansR. On note
∀i∈J1, mK,∀j∈J1, nK: aij=αi(ej).
Lesaij dénissent une matriceA∈ Mmn(R). On introduit aussi l'intersection des noyaux S= kerα1∩ · · · ∩kerαm.
On introduit une autre forme linéaire notée γ de Rn dans R. Elle est appelée forme (ou fonction) coût.
On notecj=γ(ej)pour tousj∈J1, nKet on suppose ∀j∈J1, nK, cj>0. 2. Matrices colonnes
DansMm1(R)(leR-espace vectoriel des matrices colonnes àm lignes), on note
∀j∈J1, nK, vj =Cj(A) =
a1j a2j ...
amj
etb=
b1 b2 ...
bm
.
On suppose que(v1,· · ·, vn) engendreMm1(R) et queb6= 0Mm1(R) .
On noteX = (X1,· · · , Xm)la base canonique de l'espaceMm1(R)des matrices colonnes.
1d'après Combinatorial Optimization. ; C. H. Papadimitriou , K Steigliz ; Dover
3. Équations
On s'intéresse au système d'équations d'inconnuex= (x1,· · ·, xn)∈Rn :
α1(x) =b1
α2(x) =b2 ...
αm(x) =bm
⇔A
x1 x2 x3 ...
xn−1 xn
=b.
On noteS l'ensemble des solutions de ce système. Par dénitionS ⊂Rn.
On remarque queS= kerα1∩· · ·∩kerαmest l'ensemble des solutions du système homogène
∀i∈J1, mK, αi(x) = 0.
On noteS+=S ∩(R+)n l'ensemble des solutions positives :
∀x= (x1,· · ·, xn)∈Rn, x∈ S+⇔
(∀i∈J1, mK, αi(x) =b1
∀j ∈J1, nK, xj≥0 . Les éléments deS+ sont appelés des solutions acceptables.
On suppose queS+ est non vide.
4. Ensembles d'indices
Pour toutz= (z1,· · · , zn)∈Rn, on introduit des notations liées aux signes des valeurs : J+(z) ={j∈J1, nKtqzj >0}, n+(z) = Card(J+(z))
J−(z) ={j ∈J1, nKtqzj <0}, n−(z) = Card(J−(z)) J(z) ={j ∈J1, nKtqzj 6= 0}=J+(z)∪J−(z)
n(z) = Card(J(z)) =n+(z) +n−(z).
Ces ensembles d'indices (parties deJ1, nK) seront utilisées pour des solutionsx∈ Set pour des vecteursu∈S dans l'intersection des noyaux.
Pour toute partieJ deJ1, nK, on noteJ =J1, nK\J. Par exemple J(x) ={j∈J1, nKtqxj = 0}.
Cette création est mise à disposition selon le Contrat
Paternité-Partage des Conditions Initiales à l'Identique 2.0 France disponible en ligne http://creativecommons.org/licenses/by-sa/2.0/fr/
1 Rémy Nicolai S1908E
MPSI B Année 2019-2020. DS 8 le 24/04/20 26 avril 2020
Partie 1. Questions de cours
1. Questions de rangs.
a. Soiti∈J1, mKet x= (x1,· · ·, xn). Exprimerαi(x). Préciser MatE(1)(αi)où(1) désigne la base deRconsidéré comme unR-espace vectoriel.
b. Rappeler la dénition du rang des lignes deA, la dénition du rang des colonnes deA, la proposition liant ces deux notions et le principe de sa démonstration.
c. Montrer querg(A) =met que(α1,· · · , αm)est libre dansL(Rn,R). 2. Dimension deS.
a. Justier que l'on peut compléter(α1,· · ·, αm)en une base(α1,· · ·, αn)de(Rn)∗. b. Montrer queker(α1)∩· · ·∩ker(αn) ={0Rn}. On pourra considérer les applications
∀j∈J1, nK, (
Rn→R (x1,· · ·, xn)7→xj
.
c. On dénit des applicationsΦetΨ:
Φ : (
Rn→Rn
x7→(α1(x),· · ·, αn(x)), Ψ : (
Rn→Rm
x7→(α1(x),· · · , αm(x)). Montrer qu'elles sont surjectives. En déduiredimS=n−m.
3. Solutions.
a. Montrer queS ∩S=∅ et queγ(x)>0pour toutx∈ S+. b. Soitx0∈ S. Montrer que∀x∈Rn, x∈ S ⇔x−x0∈S.
On dit queS est un sous-espace ane deRn de directionS. c. Montrer que∀(x, y)∈ S+2,∀λ∈[0,1] : λx+ (1−λ)y∈ S+.
On dit queS+ est une partie convexe deRn. 4. Changement de base et matrice extraite.
SoitJ⊂J1, nKtelle que B= (vj, j∈J)soit une base deMm1(R). On note AJ =A
J1,mKJ ∈ Mm(R)la matrice extraite à partir de Aen ne considérant que les colonnes dont les indices sont dansJ.
a. Pourk∈J1, nK, que vautMatX(vk)? Montrer queAJ est inversible.
b. Montrer que
∀k∈J1, nK\J, MatB(vk) =AJ−1vk.
Partie 2. Étude locale
Soitx∈ S+,u∈S non nul etλ∈R. On étudie les conditions assurant quex+λu∈ S+. La gure ?? représente une partie convexe dans un plan qui permet de récupérer un peu d'intuition géométrique mais qui ne correspond pas à un véritableS+.
S+
x x+u u x+λu
une solution acceptable extr´emale
Fig. 1: Étude locale On noteI(x, u) ={λ∈Rtqx+λu∈ S+} et
m+(x, u) = min xj
uj
, j∈J+(u)
siJ+(u)6=∅, m−(x, u) = min
xj
|uj|, j∈J−(u)
siJ−(u)6=∅. Il est utile de remarquer que
J−(x) =∅, J(x) =J+(x)6=∅carx∈ S+(donc non nul), J(u) =J−(u)∪J+(u)6=∅ carunon nul.
1. Montrer que
m+(x, u)≥0, m+(x, u)>0⇔J+(u)⊂J(x), m−(x, u)≥0, m−(x, u)>0⇔J−(u)⊂J(x).
2. Montrer quex+λu∈ S pour toutλ∈R.
3. a. Montrer que
I(x, u) =
−m+(x, u), m−(x, u) siJ+(u)6=∅et J−(u)6=∅ −m+(x, u),+∞ siJ−(u) =∅
−∞, m−(x, u) siJ+(u) =∅
.
Cette création est mise à disposition selon le Contrat
Paternité-Partage des Conditions Initiales à l'Identique 2.0 France disponible en ligne http://creativecommons.org/licenses/by-sa/2.0/fr/
2 Rémy Nicolai S1908E
MPSI B Année 2019-2020. DS 8 le 24/04/20 26 avril 2020
b. Montrer que
(minI(x, u) = 0 ou maxI(x, u) = 0)⇔ ∃j∈J1, nKtq (uj6= 0 etxj= 0). On dit quex∈ S+ est une solution extrémale si et seulement si
∀u∈S\ {0Rn}, (minI(x, u) = 0ou maxI(x, u) = 0).
Géométriquement, on peut se convaincre qu'une solution acceptable extrémale correspond à un coin sur la gure ??. La partie suivante propose une caractérisation algébrique.
Partie 3. Noyau et relations entre colonnes
1. a. Soitunon nul dansS. Montrer que la famille (vj, j∈J(u))est liée.
b. SoitJ une partie deJ1, nKtelle que(vj, j∈J)liée. Montrer qu'il existeunon nul dansS avecJ(u)⊂J.
2. Caractérisation de l'extrémalité. Soitx∈ S+ une solution acceptable.
a. Soitunon nul dansS. Montrer que
(minI(x, u) = 0ou maxI(x, u) = 0) FAUX ⇔J(x)⊂J(u).
b. Montrer que
xnon extrémale ⇔S∩Vect(ej, j∈J(x))6={0Rn} ⇔(vj, j∈J(x)) liée. c. En déduire
xextrémale ⇔(vj, j∈J(x)) libre.
3. Soit x ∈ S+ extrémale. Montrer qu'il existe J ⊂ J1, nK telle que J(x) ⊂ J avec B= (vj, j∈J)base deMm1(R).2
Partie 4. Algorithme du simplexe
1. Soitx∈ S+non extrémale. On veut montrer
∃y∈ S+ telle queJ(y)(J(x)et γ(y)≤γ(x).
a. Montrer que
∃j ∈J(x),∃u= (u1,· · ·, un)∈S non nul tels queJ(u)⊂J(x)etuj= 1.
2Attention, sin(x)< m, il peut exister plusieurs partiesJ vériant ces conditions.
b. Montrer quem+(x, u)>0et m−(x, u)>0. Conclure en considérantI(x, u). 2. D'un extrème à l'autre.
Soitx∈ S+ extrémale avec J ⊂J1, nKtelle que
J(x)⊂J et B= (vj, j∈J) base deMm1(R).
Soitk∈J1, nK, k /∈J. On dénitu= (u1,· · · , un)∈Rn par :
ul= 0 sil /∈J∪ {k}
uk = 1
uj =−coordonnée de vk relative àvj dansB sij∈J .
a. Montrer queuest un élément non nul de S. b. Montrer que
J(u)⊂J(x)∪ {k}, J+(u)6=∅et m+(x, u) = 0, m−(x, u)>0 on le noteθ.
c. On posey=x+θu. Montrer quey est une solution acceptable extrémale.
3. Variation du coût. On garde les conditions et notations de la question précédente.
Montrer queγ(y)< γ(x)⇔γ(u)<0.
4. Optimalité. On garde les conditions et notations de la question 3.
Pour chaquek /∈J, comme leu∈S dépend dek, on le notesk. a. Montrer que sk, k∈J
est une base deS. Quelles sont les coordonnées de u= (u1,· · · , un)∈S dans cette base ?
b. On suppose queγ(sk)≥0 pour tous lesk∈J. Montrer que
∀y∈ S+, γ(x)≤γ(y).
5. Présenter le principe de l'algorithme du simplexe permettant de calculer unx∈ S+ tel que
γ(x) = min
γ(y), y∈ S+ . On s'attachera à justier la terminaison de l'algorithme.
Cette création est mise à disposition selon le Contrat
Paternité-Partage des Conditions Initiales à l'Identique 2.0 France disponible en ligne http://creativecommons.org/licenses/by-sa/2.0/fr/
3 Rémy Nicolai S1908E