Cours sur Programmation Linéaire et Jeux
Cours sur Programmation Linéaire et Jeux
1. Version 01 : Ces notes de cours pour la quatrième année, sont conçues à partir de références
données dans la présentation du programme cf fichier nommé Programme R.O..
C’est un document en amélioration avec des compléments et ajouts d’autres chapitres. Les chapitres
sur la dualité et analyse de la sensibilité sont en cours de réalisation avec le LaTex. Le chapitre sur la
théorie des jeux est incomplet ( cf le cours dispensé pour les parties manquantes). Nous nous excusons
des coquilles qui n’ont pas pu être enlevées dans cette version.
TABLE DES MATIÈRES
1 Programmation Linéaire 1
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Introduction à l’algorithme du simplexe . . . . . . . . . . . . . . . . . . 9
ii
L ISTE DES TABLEAUX
iii
TABLE DES FIGURES
iv
HAPITRE
1
C
P ROGRAMMATION L INÉAIRE
1.1 Introduction
y = e1 + e2 + · · · + e n
Si l’on suppose, en outre, que chacun des effets élémentaires en est proportionnel à
sa cause xi , on peut écrire :
y = a1 x1 + a2 x2 + · · · + a n x n (1.1)
1
Chapitre 1. Programmation Linéaire 2
Si on suppose que :
y1 ≤ b1 , y2 ≤ b2 , · · · , yn ≤ bn
Exemple 2 min(z = x2 − x1 )
2x1 − x2 ≥ −2
x −x ≤2
1 2
x1 + x2 ≤ 5
x ,x ≥ 0
1 2
Théorème 1 : L’ensemble des solutions réalisable d’un programme linéaire détermine dans
l’espace de décision 1 un ensemble convexe (appelé domaine réalisable) qui est :
– Soit l’ensemble vide
– Soi un ensemble polyédrique convexe non borné
1. espace des variables structurelles (les x j sont les variables structurelles)
Chapitre 1. Programmation Linéaire 4
Théorème 2 S’il existe au moins une solution optimale (finie), il existe au moins une solu-
tion optimale, qui est un sommet du domaine réalisable.
Dans le cas où il n’ya que deux (ou trois) variables, il est possible de représenter graphique-
ment l’ensemble des solutions réalisables et d’enduire la (les) solution(s) (s’il existe au moins
une), compte tenue des théorème rappelés ci-dessus.
L’espace de décision est le plan ( x1 , x2 ). La solution optimale est donc F = (6, 8), z vaut
30
Exemple 4 min(z = x2 − x1 )
2x1 − x2 ≥ −2
x − 2x ≤ −8
1 2
x1 + x2 ≤ 5
x1 , x2 ≥ 0
Chapitre 1. Programmation Linéaire 5
2x1 − x2 = − 2
C
x1 − x2 = − 2 x1 − x2 = 5
D B
max z = +∞
Chapitre 1. Programmation Linéaire 6
Exemple 7 min(z = x2 − x1 )
2x1 − x2 ≥ −2
x −x ≤2
1 2
x1 + x2 ≤ 5
x ,x ≥ 0
1 2
Exemple 8 min(z = x2 − x1 )
2x1 − x2 ≥ 14
x − 2x ≤ −8
1 2
x1 + x2 ≤ 5
x ,x ≥ 0
1 2
S=∅
Exemple 9 Une entreprise a la faculté de fabriquer sur une machine donnée, travaillant 45
heures par semaines, trois produits différents P1 , P2 , P3 . L’article P1 laisse un profit net de
400F, l’article P2 de 12F et, enfin, l’article P3 de 3F. Les rendements de la machine sont
respectivement pour les trois produits, et dans le même ordre : 50, 25 et 75 articles par heures.
On sait, d’autre part, grâce à une étude de marché, que les possibilités de vente ne dépassent
pas : 1000 objets P1, 500 objets P2 et 1500 objets P3, par semaine. On se pose le problème de
repartir la capacité de production entre les 3 produits, de manière à maximiser le profit.
Chapitre 1. Programmation Linéaire 7
Formes Algébriques
x1 quantité de l’objet P1
x2 quantité de l’objet P2
x3 quantité de l’objet P3
que nous à fabriquer pour obtenir un profit maximal. Les quantités des articles P1, P2, P3
ne doivent pas depasser respectivement : 1000, 500, 1500 par semaine, on a donc :
1. x1 ≤ 1000
2. x2 ≤ 500
3. x3 ≤ 1500
50 objets de P1 −→ 1h
x1
x1 objets de P1 −→ h
50
x2
x2 objets de P2 −→ h
25
Chapitre 1. Programmation Linéaire 8
x3
x3 objets de P3 −→ h
75
Or la somme des temps de fabrications ne dépasse 45h, disponibilité totale de la ma-
[Link] aura donc
x1 x x
+ 2 + 3 ≤ 45
50 25 75
Soit
3x1 + 6x2 + 2x3 ≤ 6750 (1.2)
1), 2), 3) et 4) sont les contraintes exprimées par l’énoncé. Il y’a 3 contraintes cachées :
x1 , x2 , x3 ont un sens physique précis : ce sont des nombres d’objets dont la fabrication
est envisagée ; donc
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0
Objet du problème : choisir x1 , x2 , x3 tels que le profit soit maximal. Le profit n’est
autre que :
4x1 + 12x2 + 3x3
Signification géométrique
Difficultés de généralisation
peuvent être écrites sous forme .... en introduisant des variables appelées variables
d’écart.
x1 + x4 = 1000
x + x = 500
2 5
x3 + x6 = 1500
3x + 2x + 2x + x = 6750
1 2 3 7
Ces variables d’écart ont ici un sens physique : ce sont respectivement les différences
entre les quantités limités et les quantités fabriquées des produits P1, P2, P3 en ce qui
1
concerne x4 , x5 , x6 , le temps inutilisé (en ) à la fabrication, pour ce qui est x7 .
150
=⇒ x4 ≥ 0, x5 ≥ 0, x6 ≥ 0 et x7 ≥ 0
(I) admet une solution évidente : x4 = 1000, x5 = 500, x6 = 1500, x7 = 6750, qui
consiste à ne rien fabriquer i.e x1 = x2 = x3 = 0.
Dans ce cas le profit z = 4x1 + 12x2 + 3x3 est évidemment nul. Le point représentatif
de cette solution dans à trois dimension est O = (0, 0, 0)
Chapitre 1. Programmation Linéaire 10
x
1
x2
1 0 0 1 0 0 0
1000
x
3
0 1 0 0 1 0 0 500
( I ) ⇐⇒ x =
4
0 0 0 0 0 1 0 1500
x
5
3 6 2 0 0 0 1 6750
x6
x7
(~e1 , ~e2 , ~e3 , ~e4 ) forme une base orthonormée d’un espace vectoriel de dimension 4, R4
(~
e1 est unitaire).
Observation
En plus les variables principales et les variables d’écart doivent toujours être posi-
tives ou nulles.
Questions : Comment on fait pour progresser ? Comment choisir les vecteurs qui
entrent dans la bases et ceux qui en sortent ?
Méthodes
Exemple 10 ∆1 = 4 ∆7 = 0
xi
z0 = z + ∆, z étant l’ancienne valeur
xij j
xi
xk0 = xk − xkj , xk étant l’ancienne valeur
xij
Chapitre 1. Programmation Linéaire 13
0 xil
xkl = xkl − xkj , (k 6= i ) xkl étant l’ancienne valeur
xij
xil
xil0 = , (k = i ) xil étant l’ancienne valeur
xij
Dans ces conditions comme à chaque pas, on que z0 ≥ z, il faudra prendre ∆ j positif
( xxi sera positif, car xi > 0 comme élément du second membre et xij sera pris positif).
ij
Pour déterminer la colonne A j qui doit entrer dans la base, on choisit celle qui
∂z
compose le ∆ j positif le plus grand i.e l’expression marginale la plus élevée max
j ∂xij
Exemple 11
z = 4x1 + 12x2 + 3x3
∂z ∂z ∂z
=4 = 12 =3
∂x1 ∂x2 ∂x3
=⇒ A2 qui entre das la base
xi x
xkj ≥ 0 =⇒ ≤ i
xij xkj
xi
Donc xk0 ≥ 0 si on prend, parmi les quotients obtenus pour toutes les valeurs i, le
xij
plus petit positif d’entre eux.
Pour determiner la colonne Ai qui doit sortir de la base, on choisit celle d’indice
x
i, tel que i soit le plus petit positif ( l’indice j ayant été déterminer par l’application
xij
du premier critère). L’optimum sera atteint dès que le premier critère ne sera plus
applicable i.e lorsque tous les ∆ j relatifs aux variables hors base seront négatifs, ceux
relatifs aux variables de base étant nuls.
x5 x5
z = z+ ∆2 xk0 = xk − xkl
x52 x52
0 x5l
xkl = xkl − xk2 ( k 6 = 5)
x52
0 x5 x5
x5l = ∆2 etx50 =
x52 x52
xij (ici x52 ) qui joue un rôle fondamental est appelé élément distingué ou pivot de la
transformation.
i A1 A2 A3 A4 A5 A6 A7 A0
4 1 0 0 1 0 0 0 1000 L1
5 0 1 0 0 1 0 0 500 L2
6 0 0 1 0 0 1 0 1500 L3
7 3 6 2 0 0 0 1 3750 L40
z 4 12 3 0 0 0 0 0 L5
4 1 0 0 1 0 0 0 1000 L1
2 0 1 0 0 1 0 0 500 L2
6 0 0 1 0 0 1 0 1500 L3
7 3 0 2 0 -6 0 1 3750 L40 = L4 − 6L2
z 4 0 3 0 -12 0 0 -6000 L50 = L5 − 12L2
1 1 0 0 1 0 0 0 1000 L1
2 0 1 0 0 1 0 0 500 L2
6 0 0 1 0 0 1 0 1500 L3
7 0 0 2 -3 -6 0 1 750 L4 ” = L4 − 3L1
7 0 0 1 - 32 -3 0 1 375 L4 ”
z 0 0 3 -4 -12 0 0 -10000 L5 ” = L50 − 4L1
1 1 0 0 1 0 0 0 1000 L1
2 0 1 0 0 1 0 0 500 L2
6 0 0 0 3
2 3 1 - 21 1125 L30 = L3 − L4 ”
3 0 0 1 - 32 -3 0 1
2 375 L4 ”
000
z 4 12 3 0 0 0 0 -11125 L5 = L5 ” − 3L4 ”
1 1 0 0 0 -2 - 23 1
3 250 L10 = − L3 ” + L1
2 0 1 0 0 1 0 0 500 L2
4 0 0 0 1 2 2
3 - 31 750 L3 ” = 23 L30
000
3 0 0 1 0 0 1 0 1500 L4 = L4 ” + 23 L3 ”
z 0 0 0 0 -4 - 13 − 34 -11500 L5IV = L5 ” −
3L4 ”
Chapitre 1. Programmation Linéaire 16
Arrêt de l’algorithme.
maxz = 11500
Exemple 13 Une entreprise fabrique deux biens B1 et B2 en utilisant trois facteurs de pro-
duction : du travail T (dont l’unité de mesure est l’heure), une machine M (dont l’utilisation
est mesurée en heures et une matière première, P, (en tonnes). La quantités de ces ressources
nécessaires à la fabrication d’un unité de Bi (i = 1, 2) sont données par le tableau suivant
HAPITRE
2
C
D UALITÉ EN P ROGRAMMATION
LINÉAIRE
17
HAPITRE
3
C
P ROGRAMMATION LINÉAIRE
PARAMÉTRIQUE : A NALYSE DE LA
SENSIBILITÉ
18
HAPITRE
4
C
J EUX À DEUX PERSONNES ET À SOMME
NULLE
Définition 1 Les jeux sont conduits selon des règles déterminées. A l’issue d’un jeu, chaque
participant obtient un gain ou une perte.
une perte = gain exprimé en valeurs négatives.
Nous considérons dans ce chapitre les jeux à deux personnes.
19
Chapitre 4. Jeux à deux personnes et à somme nulle 20
Définition 2 Un jeu est dit à somme nulle si les les intérêts des joueurs sont directement
opposés (le gain d’un des joueurs est égal à la perte de l’autre).
Certains jeux sont liés au hasard (coup au but, donne des cartes). Pour formaliser les
modèles de tels jeux, on introduit en plus des coups personnes, des coups aléatoire.
Dans ce cas ona que des coups aléatoire, on attribue une distribution de probabilité
des résultats possibles.
L’un des facteurs décisifs qui determinent le comportement des joueurs est l’informa-
tion dont disposent l’une et l’autre partie sur sa position et celle de l’adversaire ainsi
que sur le comportement passé des participants.
Il ya :
– Des jeux à information complète, ex : jeux de wuré, yooké
– Des jeux à information complète, ex : certaines compétition économique entre
deux entreprises, jeux de cartes (dominos)
Remarque 4 On peut représenter graphiquement les règles du jeu, la succession des coups
personnels et aléatoire et les résultats sous la forme de ce que l’on appelle une arborescence :
ceci s’appelle la forme developpée du jeu.
Mais l’abondance des classes de jeux développés rend très difficile l’édification d’un théorie
unique d’exploration et de résolution des jeux
Définition 3 On appelle stratégie d’un jeu un système de règle qui déterminent de façon
univoque le comportement d’un joueur à chaque coup en fonction de la situation définie par
la marche du jeu.
Remarque 5 La notion de stratégie permet de ... les jeux les plus développés à une forme type
unique, dit forme normal du jeu.
Un joueur ayant choisi une stratégie peut ne pas participer au jeu. Une personne neutre peut
conduire le jeu suivant les instruction qu’il a données.
Définition 4 On appelle stratégie pure d’un joueur, chacune des stratégies déterminées que
peut choisir un joueur.
Chapitre 4. Jeux à deux personnes et à somme nulle 21
Définition 5 Lorsque le jeu est à deux personnes, sa forme normale est dite rectangulaire.
Un jeu rectangulaire, à nombre fini de stratégies pures est dit matriciel.
Dans ce qui suit nous ne considérons que les jeux matriciels à somme nulle.
Soit A un joueur disposant de m stratégies 1er joueur.
Soit B un joueur disposant de n stratégies 2eme joueur.
On admet de plus que si A choisit le ieme stratégie et B la jeme , le gain de A (et donc la
perte de B) est aij .
M = ( aij ) est appelé la matrice de paiement ou matrice de gain.
1≤i≤m
1≤j≤n
La tâche de la théorie des jeux consiste à élaborer des principes qui déterminent le
comportement des joueurs dans chaque situation de conflit concrète.
Il y’a des jeux dans lesquels chacun des participants peut choisir une stratégie pure,
comportement lui assurant certain gain indépendamment de la conduite de l’adver-
saire et tel que les gains assurés des joueurs ne different que par le signe.
Si A choisit la stratégie i0 et B j0 , alors le gain de A est ai0 j0 et celui de B − ai0 j0 .
Si A choisit io et B refuse de choisir j0 , le gain de A ne peut qu’augmenter.
Donc quand B choisit j0 , il empêche A de gagner plus que ai0 j0 . Ainsi
On dit que dans de tels jeux les stratégies pures sont optimales.
Définition 6 Un couple de nombre (i0 , j0 ) qui correspond à des stratégies optimales des
joueurs est appelé point-selle de la matrice de paiement et le nombre ai0 j0 la textbfvaleur
du jeu.
Chapitre 4. Jeux à deux personnes et à somme nulle 22
Remarque 7 La matrice (de paiement) ou de gains peut avoir plusieurs point-selles qui tous
déterminent une valeur unique du jeu.
Proposition 1 Un jeu a une solution en stratégie pure si l’on peut dégager dans la matrice
de paiement une élément ai0 j0 qui verifie la relation 4.1 ∀i, j
Remarque 8 Dans les jeux avec point selle, chaque joueur peut s’assurer dans chaque partie
indépendamment du comportement de l’adversaire, une situation dite d’équilibre i.e une si-
tuation qu’il est naturelle de considerer comme résultant d’un comportement intelligent des
adversaires.
Exemple 15 Soient deux personnes A et B préoccupées par un jeu dont la règle s’exprime
B
I II II
par le tableau ci-dessous : 1 1 0 -2
A 2 2 1 2
3 -1 -1 0
A chaque coup, chacun des joueurs doit choisir indépendamment de l’autre une des
stratégies pures à sa disposition.
A peut choisir de jouer les stratégies 1, 2 ou 3.
B peut choisir de jouer les stratégies I, II ou III.
1ier cas
Si A joue la ligne 1 :
A gagne un jeton si B joue dans la colonne I.
B ni gain ni perte si B joue II.
A perd 2 jetons si B joue III.
2e cas
A joue la ligne 2 :
A gagne 2 jetons si B joue I.
A gagne 1 jetons si B joue I I.
A gagne 2 jetons si B joue I I I.
Chapitre 4. Jeux à deux personnes et à somme nulle 23
3e cas
A joue la ligne 3 :
A gagne 1 jetons si B joue I.
A gagne 1 jetons si B joue I I.
A ni gain ni perte si B joue I I I.
La situation est évidemment tout l’inverse pour B.
1ier cas
Si B joue I :
B perd un jeton si A joue la ligne 1.
B perd 2 jetons si A joue la ligne 2.
B gagne 1 jeton si A joue la ligne 3
Et ainsi de suite.....
M1 est la matrice des gains de A (ou matrice des pertes de B). C’est un jeu à 2 per-
sonnes à somme nulle cas chaque adversaire gagne ce que l’autre perd.
4.1.1 Observations
A n’a pas intêret à jouer les lignes 1, ou 3 ; s’il pire la ligne 1, il ne peut esperer
gagner qu’un jeton mais risque d’en perdre 2, s’il joue la ligne 3, il ne peut esperer
aucun gain.
S’il joue la ligne 2, il est assuré de gagner au moins un jeton quelle que soit la décision
de B.
Dans ces conditions, B, se rendant compte que son adversaire doit nécessairement
jouer la stratégie 2, emploira de son côté, la stratégie II i.e limitera sa perte à un jeton
par coup.
La valeur du jeu (gain de A ou perte de B à chaque coup) est 1.
j = I, I I, I I I
a1I I ≤ 1 = a2I I ≤ a2j
i = 1, 2, 3
Chapitre 4. Jeux à deux personnes et à somme nulle 24
q1 q2 q3 q4
I II II IV
p1 a11 a12 a13 a14
A p2 a21 a22 a23 a24
p3 a31 a32 a33 a34
On suppose maintenant que dans M2 , a32 est un point selle (nous le supposerons
unique).
Imaginons que A et B ne se soient pas rendu compte que cet élément est point selle
i.e le plus petit sur la ligne et le plus grand dans la colonne.
A et B auront tendance à jouer :
– A : lignes 1, 2 et 3 avec des fréquences p1 , p2 , p3
– B : colonnes I, I I, I I I, IV avec des fréquences q1 , q2 , q3 , q4
de manière à obtenir le plus grand gain possible, et , le second, la plus petite perte.
Supposons que A cherche à determiner les fréquences p1 , p2 , p3 , p4 de ses choix, s’il
s’exprime ces fréquences en fraction de l’unité on a :
p1 + p2 + p3 = 1 p1 , p2 , p3 geq0
B joue I I I, A obtiendra :
a13 p1 + a23 p2 + a33 p3
Il est probable que B jouera lui même les colonnes avec les fréquences q1 , q2 , q3 , et q4
telles que
q1 + q2 + q3 + q4 = 1
q1 = 1, q2 = q3 = q4 = 0
q1 = 1, q2 = 1, q3 = q4 = 0
ou
q1 = q2 = 0, q3 = 1q4 = 0
q1 = q2 = q3 = 0, q4 = 1
on a alors :
a11 p1 + a21 p2 + a31 p3 ≥ g
a p + a22 p2 + a32 p3 ≥ g
12 1
(I) a13 p1 + a23 p2 + a33 p3 ≥ g
a14 p1 + a24 p2 + a34 p3 ≥ g
p1 + p2 + p3 = 1
Dans le cas (q1 = q2 = q3 = q4 = 1)
Comme a32 est un point selle on a :
i = 1, 2, 3
a12 ≤ a32 ≤ a3j
j = 1, 2, 3, 4
Chapitre 4. Jeux à deux personnes et à somme nulle 26
avec
α31 , α32 , α33 , α34 , α12 , α22 > 0
donc I devient :
a11 p1 + a21 p2 + ( a31 + α31 ) p3 ≥ g
( a − α12 ) p1 + ( a32 − α22 ) p2 + a32 p3 ≥ g
32
(I0) a13 p1 + a23 p2 + ( a32 − α33 ) p3 ≥ g
a14 p1 + a24 p2 + ( a32 + α34 ) p3 ≥ g
p1 + p2 + p3 = 1
La 2e inégalité ⇐⇒
a11 q1 + ( a32 − α12 )q2 + a13 q3 + a14 q4 ≥ g
a21 q1 + ( a32 − α22 )q2 + a23 q3 + a24 q4 ≥ g
⇐⇒
( a32 + α31 )q1 + a32 q2 + ( a32 + α33 )q3 + ( a32 + α34 )q4 ≥ g (3)
q1 + q2 + q3 + q4 = 1
Chapitre 4. Jeux à deux personnes et à somme nulle 27
p3 = 1; q2 = 1
q1 = q3 = q4 = p1 = p2 = 0
Remarque 9 On voit que dans un jeu à point selle, la propriété se généralise évidemment il
faut prendre pk = 1 et ql = 1 si le point selle est à l’intersection de la keme ligne et de la l eme
colonne.
Remarque 10 Le comportement des deux personnes jouant le jeu dont la règle est résumée
par M1 peut être aussi examiné d’un point de vue rudimentaire, en supposant seulement que
ces joueurs sont, tous deux intelligents et prudents
– pour l1 : -2
– pour l2 : 1
– pour l3 : -1
et à choisir la stratégue qui correspond au maximum de ces gains = maxmin soit la
ligne 2 ou stratégie 2.
B quant à lui est amené, par un raisonnemen symétrique à determiner la perte maxi-
male colonne par colonne i.e stratégie pure par stratégie pure.
– col I c’est 2
– col II c’est 1
Chapitre 4. Jeux à deux personnes et à somme nulle 28
Cette inégalité devient une égalité si et seulement si le jeu possède un point selle en stratégies
pures.
Dans un jeu où le choix de chacun des joueurs est limité à des stratégies pures le gain
assuré du premier joueur qui montre naturellement le choix de l’adversaire est égal à
minmax ( aij ).
Le 2e joueur, tout en ignorant le choix de l’adversaire peut l’empêcher de gagner plus
de minmax ( aij ).
Donc g A est compris entre :
Si A obtient une information sur les intentions de l’adversaire, son gain assuré de-
vient :
minmax ( aij )
Chapitre 4. Jeux à deux personnes et à somme nulle 29
alors
σ = minmax ( aij ) − maxmin( aij )
et
m n
∑ ui = 1; ∑ w j = 1
1 1
Une stratégie pure peut être définie comme une stratégie mixte dont toutes les com-
posantes sont nulles sauf une.
=⇒ Les stratégies pures des deux adversaires s’écrivent sous la forme des vecteurs
unitaires.
INACHEVE : A COMPLETER. Désolé