Vous êtes sur la page 1sur 31

RECHERCHE

OPERATIONNELLE
3ème année Sciences du Management

ECH-CHEBANY MOHAMED
2022-2023
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Introduction
En ce dernier quart du vingtième siècle, le développement des techniques quantitatives
de gestion et de ce que certains ont appelé la révolution informatique peuvent être considérées
comme des faits fondamentaux, qui prolongent et accentuent la révolution industrielle du dix-
neuvième siècle. Ces faits sont des éléments essentiels de la mutation vers la société
« postindustrielle » que connaissent actuellement les pays les plus avancés économiquement.

Dans la société « postindustrielle » les activités dominantes sont des « industries de


matière grise », c’est-à-dire des activités de recherche fondamentale ou appliquée, d’ingénierie,
de « design industriel », d’organisation administrative, d’éducation. Ces activités ne sont plus,
de nos jours, l’apanage des sociétés multinationales : elles représentent la réalité quotidienne
de nombreuses cellules de la vie sociale et économique des pays industrialisés, les petites et
moyennes entreprises (PME) en particulier. Dans un tel contexte, la question de savoir si
certaines techniques modernes de gestion, telles que la recherche opérationnelle et
l’informatique, ne représentent qu’un épiphénomène, ou au contraire un facteur permanent de
première grandeur doit être considérée comme dépassée, la pratique industrielle nous en
fournissant une réponse éclatante.

Pour les cadres d’entreprises, les conséquences d’un tel état de fait apparaissent
clairement : les techniques scientifiques de gestion, hier domaine réservé de quelques
spécialistes, doivent faire partie des instruments de travail actuels des gestionnaires et pour ceux
d’entre eux qui considèrent cette perspective comme un diner forcé avec le diable, il faut
préparer une très longue et solide cuiller.

A ses origines, la recherche opérationnelle se proposait de répondre aux besoins militaires


de la guerre de 1939-1945. Il s’agissait alors de résoudre des problèmes tels que la composition
du convoi maritime optimal (différents vaisseaux de guerre et cargos), compte tenu des
éventualités des attaques ennemies, ou encore de trouver la meilleure implantation des radars
et des systèmes de défense antiaérienne, etc.

A partir de 1950, les techniques de recherche opérationnelle se sont développées,


parallèlement à l’informatique, recherche opérationnelle et informatique se nourrissant chacune
de la croissance de l’autre, afin de faire face aux besoins de la conquête spatiale (par exemple
la méthode PERT créée à l’occasion des lancements Polaris), et plus encore aux besoins de la
gestion moderne. Si nous considérons les objectifs de la recherche opérationnelle, nous pouvons
la définir comme un ensemble de méthodes et d’algorithmes, s’appuyant sur la théorie
mathématique et statistique, afin de permettre la recherche des solutions optimales de
problèmes (économiques, industriels, militaires), caractérisés par un ensemble de variables dont
on connait les valeurs possibles, et par un ensemble de conditions à satisfaire.

En effet, dès lors qu’il s’agit de gérer une organisation d’une certaine taille, les décisions
que doivent prendre les dirigeants, c’est-à-dire le nombre de paramètres dont ils doivent fixer
la valeur, peuvent être de l’ordre de la centaine, voir du millier (ce sont par exemple les
décisions concernant les niveaux des prix, les budgets de publicité, les investissements, la
gestion du personnel, etc.). Or, lorsque le nombre de paramètres croît en progression

1
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

arithmétique, le nombre de combinaisons de ces paramètres croît en progression géométrique.


Ainsi, pour quelques dizaines de paramètres, le nombre de combinaisons peut être de l’ordre
du milliard. Il en résulte que la prise de décisions se fondant sur des méthodes empiriques ne
peut être que vouée à l’échec. Les méthodes de recherche opérationnelle aident à cette prise de
décisions en permettant d’arriver aux solutions optimales (compte tenu des critères fixés par le
décideur), sans avoir recours à une exploration systématiques de toutes les combinaisons.
Toutefois ces méthodes nécessitent la mise en œuvre de calculs qui seraient souvent
inextricables sans l’utilisation de l’ordinateur. Actuellement, les constructeurs d’ordinateurs et
les sociétés de service informatiques disposent de logiciels nombreux, qui comprennent, en
particulier, les programmes des principales méthodes de recherche opérationnelle.

Ainsi les cadres des entreprises peuvent-ils appliquer ces méthodes à leurs problèmes,
dans des conditions financières qui les mettent à la portée de la plupart des PME (la connexion
à un réseau d’ordinateurs, en temps partagé, nécessite un budget minimum de l’ordre du millier
de francs). Les facilités financières et techniques d’utilisation des programmes de recherche
opérationnelle représentent aujourd’hui une chance de développement de la gestion
scientifique, et aussi, paradoxalement, un risque majeur. En effet, il est parfois possible
d’utiliser la recherche opérationnelle en choisissant la « technique de la boîte noire », c’est-à-
dire en se contentant d’introduire en ordinateur les données de son problème, et de recueillir les
résultats, sans se soucier de la manière dont ils ont été obtenus ; mais cette attitude ne permet
aucune réelle fiabilité. Il paraît donc indispensable que les cadre gestionnaires aient réellement
assimilé le principe des méthodes mises en œuvre afin de les utiliser à bon escient. Toutefois
cette exigence ne doit pas servir de prétexte à certains abus encore fréquents qui conduisent à
encombrer la présentation des méthodes de recherche opérationnelle, de développements
mathématiques, et de notations certes utiles à certains chercheurs, mais qui les compliquent
notablement et les rendent inadaptées aux problèmes rencontrés en gestion.

Mais le souci d’être en permanence à la portée du lecteur, nous a poussé à adopter une
démarche simple et pédagogique dans ce polycopie, en précisant les étapes du raisonnement et
en les illustrant de nombreux exemples, tout en évitant tout développement non indispensable.

2
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Chapitre I : La programmation linéaire

1) Définition mathématique d’un programme linéaire :

On appelle un problème de programmation linéaire tout problème dans lequel il s’agit


d’optimiser (maximiser ou minimiser) une fonction linéaire de plusieurs variables dite
fonction objective ou économique sous un système de contraintes linéaires.

Un programme linéaire comporte 𝑛 variables non négatives, 𝑚 contraintes d’égalité


ou d’inégalité (inégalité d’infériorité (≤) ou/et inégalités de supériorité (≥)), et la fonction
objective a optimiser.

Un programme linéaire est présenté sous la formulation mathématique suivante :


𝑛
Max ou Min 𝒁 = ∑ 𝑐𝑗 𝑥𝑗 = 𝑐1 𝑥1 + 𝑐2 𝑥2 + 𝑐3 𝑥3 + ⋯ + 𝑐𝑛 𝑥𝑛 (fonction objective)
𝑗=1

Sous contraintes :

𝑎11 𝑥1 + 𝑎12 𝑥2 + 𝑎13 𝑥3 + ⋯ + 𝑎1𝑛 𝑥𝑛 ≤ 𝑏1


𝑎21 𝑥1 + 𝑎22 𝑥2 + 𝑎23 𝑥3 + ⋯ + 𝑎2𝑛 𝑥𝑛 ≤ 𝑏2
𝑎31 𝑥1 + 𝑎32 𝑥2 + 𝑎33 𝑥3 + ⋯ + 𝑎3𝑛 𝑥𝑛 ≤ 𝑏3
….
𝑎𝑚1 𝑥1 + 𝑎𝑚2 𝑥2 + 𝑎𝑚3 𝑥3 + ⋯ + 𝑎𝑚𝑛 𝑥𝑛 ≤ 𝑏𝑚
{ 𝑥1 , 𝑥2, 𝑥3 , … , 𝑥𝑛 ≥ 0

Avec :

𝒄𝒋 : Le coefficient de coût ou de profit correspondant à la variable 𝒙𝒋

𝑏𝑖 : le second membre correspondant à la contrainte 𝒊.

Un tel problème peut se présenter sous l’une des trois formes suivantes : forme
canonique, forme standard, forme générale ou « mixte » :

 Si toutes les contraintes représentent des inégalités au sens large, le programme est dit
sous forme canonique.
 Si toutes les contraintes représentent des égalités, le programme est dit sous forme
standard.
 Si certaines contraintes représentent des inégalités et d’autres représentent des égalités,
le programme est dit sous forme générale ou mixte.

3
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

En fait, quelle que soit la forme sous laquelle se présente le problème, on peut toujours
le ramener à la forme que l’on souhaite (1).

La forme canonique est plus pratique lorsqu’il s’agit d’interprétation graphique.

La forme standard permet une résolution aisée sous forme matricielle.

La plupart des problèmes économiques se présentent sous forme canonique.

2) La modélisation :
La modélisation est la première étape importante de la programmation linéaire. Il s’agit
de transformer le problème que l’on cherche à optimiser sous une formulation mathématique
composée d’une fonction objective à maximiser et un système de contraintes linéaires
(inéquations ou équations linéaires).

Exemple d’application :

Un industriel doit fabriquer trois biens A, B et C à l’aide de trois matières M, N et P. Le


tableau de fabrication soit le suivant :

A B C
M 1 3 2
N 3 2 1
P 1 1 4

Ce qui signifie qu’il faut 1 unité de M, 3 unités de N et 1 unité de P pour fabriquer un


bien A, de même, il faut 3 unités de M, 2 unités de N et 1 unité de P pour produire le bien B,
en fin, 2 unités de M, 1 unité de N et 4 unités de P pour fabriquer le bien C. Le stock de chacun
des matières est limité : 40 unités pour M, 45 unités pour N et 38 unités pour P. L’industriel
sait qu’il va gagner respectivement 10, 14 et 12 Um sur la vente des biens A, B et C. Formuler
le PL correspondant.

Solution :

L’objectif : Maximisation du profit.

Les inconnus du programme : Soit x1 la quantité à produire du bien A ;

Soit x2 la quantité à produire du bien B ;

Soit x3 la quantité à produire du bien C.

 Toute égalité peut se présenter par un système de deux inégalités :


𝛼 ≤𝑏
𝛼=𝑏⇔{
−𝛼 ≤ −𝑏
 Toute inégalité peut se présenter par une égalité en introduisant une variable d’écart : 𝛼 ≤ 𝑏 ⇔ α + c =
b avec c ≥ 0 c variable d’écart.

4
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

La fonction objective : Max Z = 10x1 + 14x2 + 12x3

Les contraintes :

𝑥1 + 3𝑥2 + 2𝑥3 ≤ 40 𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑑𝑒 𝑠𝑡𝑜𝑐𝑘 𝑑𝑒 𝑙𝑎 𝑚𝑎𝑡𝑖è𝑟𝑒 𝑝𝑟𝑒𝑚𝑖è𝑟𝑒 𝑀


3𝑥1 + 2𝑥2 + 𝑥3 ≤ 45 𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑑𝑒 𝑠𝑡𝑜𝑐𝑘 𝑑𝑒 𝑙𝑎 𝑚𝑎𝑡𝑖è𝑟𝑒 𝑝𝑟𝑒𝑚𝑖è𝑟𝑒 𝑁
{
𝑥1 + 𝑥2 + 4𝑥3 ≤ 38 𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑑𝑒 𝑠𝑡𝑜𝑐𝑘 𝑑𝑒 𝑙𝑎 𝑚𝑎𝑡𝑖è𝑟𝑒 𝑝𝑟𝑒𝑚𝑖è𝑟𝑒 𝑃
𝑥1 ≥ 0; 𝑥2 ≥ 0; 𝑥3 ≥ 0 contraintes de non négativité

Exercices :

Exercice 1 :

Une entreprise fabrique des électrophones et des postes de télévision en noir et blanc. 140
ouvriers travaillent à la fabrication. Le prix de revient, pièces et main d’œuvre, d’un poste de
TV est de 400 DH. Il n’est que de 300 DH pour un électrophone. Les services comptables de
l’entreprise donnent la consigne de ne pas dépasser par semaine la somme de 240 000 DH,
pièces et main d’œuvre. Chaque ouvrier travaille 40 heures par semaine. Les chefs de service
estiment qu’il faut 10 heures de main d’œuvre pour fabriquer un électrophone et 5 heures
seulement pour fabriquer un poste de TV. Les services commerciaux ne peuvent vendre plus
de 480 postes de TV et 480 électrophones par semaine. Les prix de ventes sont tels que
l’entreprise, tous frais payés, fait un bénéfice de 240 DH par poste de TV et de 160 DH par
électrophone. Formuler le PL correspondant (à ne pas résoudre).

Solution de l’exercice 1 :

L’objectif : Maximisation du bénéfice de l’entreprise

Les inconnus du programme : Soit x1 la quantité des électrophones à produire.

Soit x2 la quantité des postes de TV à produire.

La fonction objective : Max Z = 160x1 + 240x2

Les contraintes :

400𝑥1 + 300𝑥2 ≤ 240 000 contrainte de budget


10𝑥1 + 5𝑥2 ≤ 5 600 (140 ∗ 40) contrainte de main d′oeuvre
𝑥1 ≤ 480, 𝑥2 ≤ 480 contrainte commerciale
{ 𝑥1 ≥ 0; 𝑥2 ≥ 0 contrainte de non négativité

Exercice 2 :

Un artisan fabrique des objets A et des objets B. La réalisation d’un objet A demande
30 DH de matière première et 125 DH de main d’œuvre. La réalisation d’un objet B demande
70 DH de matière première et 75 DH de mains d’œuvres. Les profits réalisés sont de 54 DH par

5
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

objets A, et de 45 DH par objet B. On note x le nombre d’objets A fabriqués, et y le nombre


d’objets B fabriqués, en une journée. La dépense journalière en matière première ne doit pas
dépasser 560 DH. La dépense journalière en main-d’œuvre ne doit pas dépasser 1250 DH.
Formuler le PL correspondant (à ne pas résoudre).

Solution de l’exercice 2
L’objectif : Maximisation du profit
Les inconnus du programme : Soit x la quantité de A à produire.

Soit y la quantité de B à produire.

La fonction objective : Max Z = 54x + 45y

Les contraintes :

30𝑥 + 70𝑦 ≤ 560 𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑚𝑎𝑡𝑖è𝑟𝑒 𝑝𝑟𝑒𝑚𝑖è𝑟𝑒


{ 125𝑥 + 75𝑦 ≤ 1 250 𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑚𝑎𝑖𝑛 𝑑 ′ 𝑜𝑒𝑢𝑣𝑟𝑒
𝑥 ≥ 0; 𝑦 ≥ 0 𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑑𝑒 𝑛𝑜𝑛 𝑛é𝑔𝑎𝑡𝑖𝑣𝑖𝑡é

Exercice 3 :

Une entreprise à la possibilité de fabriquer, sur une machine donnée travaillant au plus 45h
par semaine, trois produits différents : A, B et C. L’article A laisse un profit net de 4 dh, l’article
B de 12 DH et enfin, l’article C de 3 DH. Les rendements de la machine sont respectivement
pour les trois produits (pris dans le même ordre), de 50, 25 et 75 articles par heure. On sait
d’autre part, grâce à une étude de marché, que les possibilités de vente ne dépassent pas 1000
objets A, 500 objets B et 1500 objets C par semaine. Comment peut-on répartir la capacité de
production entre les trois produits de la manière la plus rentable possible ? Formuler le PL
correspondant (à ne pas résoudre).

Solution de l’exercice 3 :

L’objectif : Maximisation du profit

Les inconnus du programme : Soit x la quantité de A à produire.

Soit y la quantité de B à produire.

Soit z la quantité de C à produire.

Fonction objective : Max Z = 4x + 12y + 3z

Les contraintes :

1 1 1
𝑥 + 25 𝑦 + 𝑧 ≤ 45 𝐂𝐨𝐧𝐭𝐫𝐚𝐢𝐧𝐭𝐞 𝐝𝐞𝐬 𝐡𝐞𝐮𝐫𝐞𝐬 𝐝’𝐮𝐭𝐢𝐥𝐢𝐬𝐚𝐭𝐢𝐨𝐧 𝐝𝐞𝐬 𝐦𝐚𝐜𝐡𝐢𝐧𝐞𝐬
50 75
{ 𝑥 ≤ 1 000, 𝑦 ≤ 500, 𝑧 ≤ 1 500 𝐜𝐨𝐧𝐭𝐫𝐚𝐢𝐧𝐭𝐞 𝐜𝐨𝐦𝐦𝐞𝐫𝐜𝐢𝐚𝐥𝐞
𝑥 ≥ 0; 𝑦 ≥ 0; 𝑧 ≥ 0 𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑑𝑒 𝑛𝑜𝑛 𝑛é𝑔𝑎𝑡𝑖𝑣𝑖𝑡é

6
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

3) Résolution d’un programme linéaire :

Dans ce cours nous allons aborder deux méthodes de la résolution d’un programme
linéaire :

- Méthode graphique : la méthode graphique est valable seulement pour les programmes
linéaires avec un nombre d’inconnus qui ne dépasse pas 3 variables (sur le plan pratique
seulement 2 variables)
- Méthode du simplexe : traite des programmes linéaires comportant plusieurs variables
et plusieurs contraintes (parfois des milliers de variables et de contraintes).

3.1) La méthode graphique :

La démarche de la résolution d’un programme linéaire par la méthode graphique suit


trois principales étapes :

1ère étape : La détermination du programme admissible (l’ensemble des solutions


possibles pour le système des contraintes) ;

2ème étape : La détermination du programme de base (les meilleures solutions parmi


celles du programme admissible). Le programme de base est représenté par les
sommets du polyèdre représentant le programme admissible ;

3ème étape : La détermination de la solution optimale (la meilleure solution parmi les
solutions du programme de base). La solution optimale est la solution du programme de
base qui optimise la fonction objective Z.

La solution d’un problème de programmation linéaire lorsqu’il existe est unique et


nécessairement l’une des solutions du programme de base.

Exercice 4 :

Résoudre le programme linéaire suivant :

Max Z = 5x1 + 7x2

Sous les contraintes :

𝑥1 + 2𝑥2 ≤ 12
𝑥 + 𝑥2 ≤ 7
{ 1
3𝑥1 + 2𝑥2 ≤ 18
𝑥1 ≥ 0; 𝑥2 ≥ 0

Solution de l’exercice 4 :

Tout d’abord, on trace les droites ∆1, ∆2 et ∆3 représentant les trois inégalités du
système.

7
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

 Δ1 = 𝑥1 + 2𝑥2 = 12

Si 𝑥1 = 0 𝑥2 = 6 𝑑𝑜𝑛𝑐 𝑃1 (06)

Si 𝑥2 = 0 𝑥1 = 12 𝑑𝑜𝑛𝑐 𝑃2 (12
0
)

 Δ2 = 𝑥1 + 𝑥2 = 7

Si 𝑥1 = 0 𝑥2 = 7 𝑑𝑜𝑛𝑐 𝑃1 (07)

Si 𝑥2 = 0 𝑥1 = 7 𝑑𝑜𝑛𝑐 𝑃2 (70)

 Δ3 = 3𝑥1 + 2𝑥2 = 18

Si 𝑥1 = 0 𝑥2 = 9 𝑑𝑜𝑛𝑐 𝑃1 (09)

Si 𝑥2 = 0 𝑥1 = 6 𝑑𝑜𝑛𝑐 𝑃2 (60)

Graphique 1 : Représentation graphique des inéquations des contraintes

Détermination du programme admissible : La surface du polygone en rouge dans le


graphique 1.

Détermination du programme de base : les sommets du polygone en rouge. Il s’agit des


points : 𝐴(06), 𝐵(25), 𝐶(43) 𝑒𝑡 𝐷(60).

Recherche de la solution optimale : On remplace les valeurs de chaque point du programme


de base dans la fonction objective Z et on choisit la solution qui optimise cette dernière.

8
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

0
𝐴 ( ) ⇒ 𝑍 = (5 ∗ 0) + (7 ∗ 6) = 42
6
2
𝐵 ( ) ⇒ 𝑍 = (5 ∗ 2) + (7 ∗ 5) = 45
5
4
𝐶 ( ) ⇒ 𝑍 = (5 ∗ 4) + (7 ∗ 3) = 41
3
6
𝐷 ( ) ⇒ 𝑍 = (5 ∗ 6) + (7 ∗ 0) = 30
0
La solution optimale est B : x1 = 2 , x2 = 5 et Z = 45

Exercice 5 :

Minimiser : Z = 50x1 + 40 x2

Sous les contraintes :

5𝑥1 + 3𝑥2 ≤ 900


3𝑥 + 5𝑥2 ≤ 900
{ 1
𝑥1 + 𝑥2 ≤ 200
𝑥1 ≥ 0 ; 𝑥2 ≥ 0

Solution l’exercice 5 :

Tout d’abord, on trace les droites ∆1 , ∆2 et ∆3 représentant les trois inégalités du


système.

 Δ1 : 5𝑥1 + 3𝑥2 = 900


0
Si 𝑥1 = 0 𝑥2 = 300 𝑑𝑜𝑛𝑐 𝑃1 (300)

Si 𝑥2 = 0 𝑥1 = 180 donc 𝑃2 (180


0
)

 Δ2 : 3𝑥1 + 5𝑥2 = 900


0
Si 𝑥1 = 0 𝑥2 = 180 𝑑𝑜𝑛𝑐 𝑃1 (180)

Si 𝑥2 = 0 𝑥1 = 300 donc 𝑃2 (300


0
)

 Δ3 : 𝑥1 + 𝑥2 = 200
0
Si 𝑥1 = 0 𝑥2 = 200 𝑑𝑜𝑛𝑐 𝑃1 (200 )

Si 𝑥2 = 0 𝑥1 = 200 𝑑𝑜𝑛𝑐 𝑃2 (200


0
)

9
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Graphique 2 : Représentation graphique des inéquations des contraintes

Détermination du programme admissible : La surface du polygone en rouge dans le


graphique 2.

Détermination du programme de base : les sommets du polygone en rouge. Il s’agit des


0 50
points : 𝐴(180), 𝐵(150 ), 𝐶(150
50
) 𝑒𝑡 𝐷(180
0
).

Recherche de la solution optimale : On remplace les valeurs de chaque point du programme


de base dans la fonction objective Z et on choisit la solution qui optimise cette dernière.
0
𝐴(180) ⇒ 𝑍 = (50 ∗ 0) + (40 ∗ 180) = 7200

50
𝐵(150) ⇒ 𝑍 = (50 ∗ 50) + (40 ∗ 150) = 8500

𝐶(150
50
) ⇒ 𝑍 = (50 ∗ 150) + (40 ∗ 50) = 9500

𝐷(180
0
) ⇒ 𝑍 = (50 ∗ 180) + (40 ∗ 0) = 9000

La solution optimale est A : x1 = 0 , x2 = 180 et Z = 7200

10
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

3.2 La notion de la dualité :

a) Rappel sur l’écriture matricielle d’un programme linéaire :

Soit le programme linéaire suivant :

Max Z = 10x1 + 14x2 + 12x3

Sous les contraintes :


𝑥1 + 3𝑥2 + 2𝑥3 ≤ 40
3𝑥 + 2𝑥2 + 𝑥3 ≤ 45
{ 1
𝑥1 + 𝑥2 + 4𝑥3 ≤ 38
𝑥1 ≥ 0; 𝑥2 ≥ 0; 𝑥3 ≥ 0
Soient :

[C] = (10 14 12) la matrice coefficients de la fonction objective.

40
[B] = (45) la matrice colonne des seconds membres
38
x1
[X] = (x2 ) la matrice des inconnus du programme (variables)
x3

1 3 2
[A] = (3 2 1) la matrice des coefficients des contraintes
1 1 4
L’écriture matricielle du programme sera sous la forme suivante :
x1
Max Z = [C]. [x] ⇒ Max Z = (10 14 12) (x2 )
x3

1 3 2 x1 40
(3 2 x
1) ( 2 ) ≤ (45)
[A][X] ≤ [B] 1 1 4 x3 38
Sous contraintes { ⇒ x1
[X] ≥ 0
(x 2 ) ≥ 0
{ x3

11
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

b) construction d’un programme dual :

Pour tout programme dit primal, on associe un autre programme dit dual dont tous les éléments
sont dérivés du programme primal.

 Le dual d’un problème de maximisation est un problème de minimisation et inversement.


 Les coefficients du primal sont des secondes membres des contraintes du dual et
inversement.
 Le sens des inégalités dans le dual est l’inverse du sens des inégalités du primal.
 Les sens des inégalités de non négativité des variables est le même dans les deux
problèmes (x ≥ 0 ; y ≥0).
 A chaque contrainte primale correspond une variable dual réelle.
 A chaque variable primale réelle correspond une contrainte duale.

Programme primal Programme dual


Max Z = [C]. [x] Min Z’ = [B]T.[Y]
Sous contraintes : Sous contraintes :
[𝐴][𝑋] ≤ [𝐵] [𝐴]𝑇 [𝑌] ≥ [𝐶]𝑇
{ {
[𝑋] ≥ 0 [𝑌] ≥ 0

Avec :

Z’ : la fonction objective du programme dual.

[𝐵]𝑇 : la transposée de la matrice [𝐵]

[𝐴]𝑇 : la transposée de la matrice [𝐴]


[𝐶]𝑇 : la transposée de la matrice [C]

Exemple :

Programme primal Programme dual


Max Z = 10x1 + 14x2 + 12x3 Min Z’ = 40y1 + 45y2 + 38y3

1 3 2 1 3 1
Sous contraintes : [𝐴] = (3 2 1) ⇒ [𝐴]𝑇 = (3 2 1)
𝑥1 + 3𝑥2 + 2𝑥3 ≤ 40 1 1 4 2 1 4
3𝑥 + 2𝑥2 + 𝑥3 ≤ 45
{ 1 Sous contraintes :
𝑥1 + 𝑥2 + 4𝑥3 ≤ 38 𝑦1 + 3𝑦2 + 𝑦3 ≥ 10
𝑥1 ≥ 0; 𝑥2 ≥ 0; 𝑥3 ≥ 0 3𝑦1 + 2𝑦2 + 𝑦3 ≥ 14
{
2𝑦1 + 𝑦2 + 4𝑦3 ≥ 12
𝑦1 ≥ 0 ; 𝑦2 ≥ 0 ; 𝑦3 ≥ 0

12
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

b) Résolution d’un programme linaire par la dualité :

Trois théorèmes permettent de résoudre un programme linéaire primal en utilisant son


programme dual :

 Théorème 1 : si le dual admet une solution optimale, le primal admet une solution
optimale et inversement.
 Théorème 2 : la valeur optimale de la fonction économique duale Z’ est identique à la
valeur optimale de la fonction économique primale Z.
 Théorème 3 : si pour une solution optimale d’un programme linéaire, une solution n’est
pas saturée, alors la valeur optimale de la variable primale correspondante est nulle.

Exercice 6 :

En utilisant la notion de dualité, résoudre le programme linéaire suivant :

Min Z = 12y1 + 7y2 + 18y3

Sous les contraintes :

𝑦1 + 𝑦2 + 3𝑦3 ≥ 5
{ 2𝑦1 + 𝑦2 + 2𝑦3 ≥ 7
𝑦1 ≥ 0 ; 𝑦2 ≥ 0 ; 𝑦3 ≥ 0

Solution l’exercice 6 :

1ère étape : Détermination du programme dual.

Programme primal Programme dual


Max Z’ = 5x1 +7x2
Min Z = 12y1 + 7y2 + 18y3
1 2
[𝐴] = (1 1 3
) ⇒ [𝐴]𝑇 = (1 1)
Sous les contraintes : 2 1 2
3 2
𝑦1 + 𝑦2 + 3𝑦3 ≥ 5
{ 2𝑦1 + 𝑦2 + 2𝑦3 ≥ 7 Sous contraintes :
𝑦1 ≥ 0 ; 𝑦2 ≥ 0 ; 𝑦3 ≥ 0 𝑥1 + 2𝑥2 ≤ 12
𝑥 + 𝑥2 ≤ 7
{ 1
3𝑥1 + 2𝑥2 ≤ 18
𝑥1 ≥ 0 ; 𝑥2 ≥ 0

2ème étape : Résolution du programme dual.

 Théorème 1 : si le dual admet une solution optimale, le primal admet une solution
optimale et inversement.
D’après l’exercice 4, le programme dual à une solution optimale (x1 = 2 et x2 = 5) donc
le programme primale à également une solution optimale.

13
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

 Théorème 2 : la valeur optimale de la fonction économique duale Z’ est identique à la


valeur optimale de la fonction économique primale Z.

Z’ = 45 ce qui implique que Z = 45

3ème étape : Saturation des contraintes.

 Théorème 3 : si pour une solution optimale d’un programme linéaire, une solution
n’est pas saturée, alors la valeur optimale de la variable primale correspondante est
nulle.

A chaque contrainte du duale est associée une variable du programme primale (𝑦1 , 𝑦2 𝑒𝑡𝑦3 )
qui sera nulle si la contrainte correspondante n’est pas saturée.

𝑥1 + 2𝑥2 ≤ 12 ⇒ 2 + 2. (5) = 12 (contrainte saturée) => 𝑦1 =?


𝑥1 + 𝑥2 ≤ 7 ⇒ 2 + 5 = 7 (contrainte saturée) => 𝑦2 =?
3𝑥1 + 2𝑥2 ≤ 18 ⇒ 3. (2) + 2. (5) = 16 (contrainte non saturée) donc 𝑦3 = 0
{ 𝑥1 ≥ 0 ; 𝑥2 ≥ 0

4ème étape : Résolution du programme primal après la suppression des variables qui
correspondent aux contraintes non saturées. Il s’agit dans cet exercice de la variable𝑦3 .

𝑦1 + 𝑦2 = 5
{ ⇒ donc la solution optimale est : y1 = 2 ; y2 = 3 ; y3 = 0
2𝑦1 + 𝑦2 = 7

Vérification : en remplaçant dans Z : 12 (2) + 7 (3) + 18 (0) = 45 (Z = Z’).

Exercice 7 :

Un athlète souhaite participer dans les jeux olympiques, son médecin lui recommande de
consommer des quantités en vitamines et en protéines chaque jour, selon le médecin le corps
d’un athlète doit disposer, au minimum et chaque jour de 15g de vitamines et 10g de protéine.
Le médecin préconise aussi de consommer les fruits (F1, F2 et F3) dans lesquels la présence
des vitamines et protéines est abondante.
Le coût d’achat d’une caisse de 10kg du fruit F1 coûte 240dh, le coût d’achat d’un panier de
20kg du fruit F2 coûte 900dh et il faut dépenser 30 dh pour acheter 1kg du fruit F3.
La présence des vitamines et protéines en g dans 1kg des fruits est donnée dans le tableau
suivant :

F1 F2 F3
Vitamine 1 2 1
Protéine 2 1 3
L’athlète vous demande de l’aider afin qu’il sait son besoin journalier des fruits F1, F2 et F3.

14
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Travail à faire :
1- Donner le programme linéaire pour résoudre ce problème.
2- Donner son dual.
3- Résoudre le programme dual par la méthode graphique.
4- En déduire la solution du programme primal.

Solution de l’exercice 7 :

1- La formulation du programme linéaire correspondant :


Objectif : Minimisation du coût d’achat des fruits

Les inconnus du programme : Soit F1 la quantité du fruit F1 à consommer ;

Soit F2 la quantité du fruit F2 à consommer ;

Soit F3 la quantité du fruit F3 à consommer.

La fonction objective : Min Z = 24𝐹1 + 45𝐹2 + 30𝐹3

Les contraintes :

1𝐹1 + 2𝐹2 + 1𝐹3 ≥ 15 (𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑑𝑒𝑠 𝑣𝑖𝑡𝑎𝑚𝑖𝑛𝑒𝑠)


{ 1 + 1𝐹2 + 3𝐹3 ≥ 10 (𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒𝑠 𝑑𝑒𝑠 𝑝𝑟𝑜𝑡é𝑖𝑛𝑒𝑠)
2𝐹
𝐹1, 𝐹2 , 𝐹3 ≥ 0 (𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒𝑠 𝑑𝑒 𝑛𝑜𝑛 𝑛é𝑔𝑎𝑡𝑖𝑣𝑖𝑡é)

2- Le programme dual :

Programme primal Programme dual


Max Z’ = 15x1 +10x2
Min Z = 24𝐹1 + 45𝐹2 + 30𝐹3
1 2
[𝐴] = (1 2 1
) ⇒ [𝐴]𝑇 = (2 1)
Sous contraintes : 2 1 3
1 3

1𝐹1 + 2𝐹2 + 1𝐹3 ≥ 15 Sous contraintes :


{ 2𝐹1 + 1𝐹2 + 3𝐹3 ≥ 10 𝑥1 + 2𝑥2 ≤ 24
𝐹1, 𝐹2 , 𝐹3 ≥ 0 2𝑥 + 𝑥2 ≤ 45
{ 1
𝑥1 + 3𝑥2 ≤ 30
𝑥1 ≥ 0 ; 𝑥2 ≥ 0

3- Résolution du programme dual par la méthode graphique.


Tout d’abord, on trace les droites ∆1, ∆2 et ∆3 représentant les trois inégalités du
système.

 Δ1 = 𝑥1 + 2𝑥2 = 24
0
Si 𝑥1 = 0 𝑥2 = 12 𝑑𝑜𝑛𝑐 𝑃1 (12)

15
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Si 𝑥2 = 0 𝑥1 = 24 𝑑𝑜𝑛𝑐 𝑃2 (24
0
)

 Δ2 = 2𝑥1 + 𝑥2 = 45
0
Si 𝑥1 = 0 𝑥2 = 45 𝑑𝑜𝑛𝑐 𝑃1 (45)

Si 𝑥2 = 0 𝑥1 = 22,5 𝑑𝑜𝑛𝑐 𝑃2 (22,5


0
)

 Δ3 = 𝑥1 + 3𝑥2 = 30
0
Si 𝑥1 = 0 𝑥2 = 10 𝑑𝑜𝑛𝑐 𝑃1 (10)

Si 𝑥2 = 0 𝑥1 = 30 𝑑𝑜𝑛𝑐 𝑃2 (30
0
)

Graphique 3 : Représentation graphique des contraintes

Détermination du programme admissible : La surface du polygone en bleu dans le graphique


3.

Détermination du programme de base : les sommets du polygone en rouge. Il s’agit des


0
points : 𝐴(10) , 𝐵(12
6
), 𝐶(22
1
) 𝑒𝑡 𝐷(22,5
0
).

Recherche de la solution optimale : On remplace les valeurs de chaque point du programme


de base dans la fonction objective Z et on choisit la solution qui optimise cette dernière.
0
𝐴(10) ⇒ 𝑍′ = (15 ∗ 0) + (10 ∗ 10) = 100

𝐵(12
6
) ⇒ 𝑍′ = (15 ∗ 12) + (10 ∗ 6) = 240

16
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

𝐶(22
1
) ⇒ 𝑍′ = (15 ∗ 22) + (10 ∗ 1) = 340

𝐷(22,5
0
) ⇒ 𝑍′ = (15 ∗ 22,5) + (10 ∗ 0) = 337,5

La solution optimale est C : x1 = 22 , x2 = 1 et Z’ = 340

4- la solution du programme primal déduite à partir de la solution du programme dual :

 Théorème 1 : si le dual admet une solution optimale, le primal admet une solution
optimale et inversement.

D’après la question 3, le programme dual à une solution optimale (x1 = 22 et x2 = 1) donc


le programme primale à également une solution optimale.

 Théorème 2 : la valeur optimale de la fonction économique duale Z’ est identique à la


valeur optimale de la fonction économique primale Z.

Z’ = 340 ce qui implique que Z = 340

Saturation des contraintes :

 Théorème 3 : si pour une solution optimale d’un programme linéaire, une solution
n’est pas saturée, alors la valeur optimale de la variable primale correspondante est
nulle.

A chaque contrainte du duale est associée une variable du programme primale (𝐹1 , 𝐹2 𝑒𝑡𝐹3 )
qui sera nulle si la contrainte correspondante n’est pas saturée.

𝑥1 + 2𝑥2 ≤ 24 ⇒ 22 + 2 = 24 (contrainte saturée) 𝐹1 =?


2𝑥1 + 𝑥2 ≤ 45 ⇒ 22 ∗ 2 + 1 = 45 (contrainte saturée)𝐹2 =?
{
𝑥1 + 3𝑥2 ≤ 30 ⇒ 22 + 3 = 25 (contrainte non saturée) donc 𝐹3 = 0
𝑥1 ≥ 0 ; 𝑥2 ≥ 0

On résout le programme primal après la suppression des variables qui correspondent aux
contraintes non saturées. Il s’agit dans cet exercice de la variable 𝐹3.

𝐹1 + 2𝐹2 = 15
{ ⇒ donc la solution optimale est : 𝐹1 = 1,66 ; 𝐹2 = 6,66 ; 𝐹3 = 0
2𝐹1 + 𝐹2 = 10

Donc, pour ce sportif il est recommandé de consommer 1,66 kg du fruitF1 , de 6,66kg du fruit
F2 et de renoncer à la consommation du fruit F3 .

Exercice ;
Soit le programme linéaire suivant :

17
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

𝑀𝑖𝑛 (𝑅) = 5𝑎 + 20𝑏 + 10𝑐


Avec les contraintes suivantes :
𝑎 + 10𝑏 + 2𝑐 ≥ 1
{ 𝑎 + 5𝑏 + 3𝑐 ≥ 2
𝑎 ≥ 0 ; 𝑏 ≥ 0 𝑒𝑡 𝑐 ≥ 0
Travail à faire :
1- Donner le dual de ce programme linéaire.
2- Résoudre le programme dual par la méthode graphique.
3- En déduire la solution du programme primal.

Correction :
1- Modèle dual :
𝑀𝑎𝑥 𝑍 = 𝑥 + 2𝑦
𝑥+𝑦 ≤5
10𝑥 + 5𝑦 ≤ 20
{
2𝑥 + 3𝑦 ≤ 10
𝑥, 𝑦 ≥ 0

2- Résolution du modèle dual :

Programme de base : A(0 ; 3,333) ; B(0.5 ; 3) ; C(2 ; 0)

18
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Solution optimale :

Pour A : Z = 6.666

Pour B : Z = 6.5

Pour C : Z=2

Donc la solution optimale est x = 0 et y = 3,333

3- Déduction de la solution du programme primal :

Saturation des contraintes :

𝑥 + 𝑦 ≤ 5 ⇒ 0 + 3.333 = 3.333 ≤ 5 (𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑛𝑜𝑛 𝑠𝑎𝑡𝑢𝑟é𝑒) 𝑑𝑜𝑛𝑐 𝑎 = 0


10𝑥 + 5𝑦 ≤ 20 ⇒ 10 ∗ 0 + 5 ∗ 3.333 = 16,65 ≤ 20 (𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑛𝑜𝑛 𝑠𝑎𝑡𝑢𝑟é𝑒) 𝑑𝑜𝑛𝑐 𝑏 = 0
2𝑥 + 3𝑦 ≤ 10 ⇒ 2 ∗ 0 + 3 ∗ 3.333 = 9.999 ≈ 10 (𝑐𝑜𝑛𝑡𝑟𝑎𝑖𝑛𝑡𝑒 𝑠𝑎𝑡𝑢𝑟é𝑒) 𝑑𝑜𝑛𝑐 𝑐 =?
{ 𝑥, 𝑦 ≥ 0

Le programme primal devient : Min (R) = 10 c

2𝑐 ≥ 1 𝟏 𝟐
{ ⇒𝒄= 𝒐𝒖 𝒄=
3𝑐 ≥ 2 𝟐 𝟑

Solution optimale :
𝟏 𝟏
Pour 𝒄 = 𝑹 = 𝟏𝟎 ∗ = 𝟓
𝟐 𝟐

𝟐 𝟐
Pour 𝒄 = 𝑹 = 𝟏𝟎 ∗ = 𝟔, 𝟔𝟔
𝟑 𝟑

𝟏
Donc le Min de R est assuré par le point 𝒄 =
𝟐

19
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Chapitre II : Résolution du programme linéaire par la méthode du simplexe :

Lorsque le nombre de variables est supérieur ou égal à 3 ( 𝑛 ≥ 3), la méthode graphique ne


peut pas s'appliquer.
Georges Dantzig a mis au point un algorithme capable de résoudre les problèmes de
programmation linéaire en quelques itérations. Cette méthode est connue sous le nom de la
méthode du simplexe ou méthode du pivot. Nous présenterons les principes de cette méthode
sur un exemple simple :
𝑀𝑎𝑥 𝑍 = 3𝑥1 + 5𝑥2
Sous contraintes :
𝑥1 + 2𝑥2 ≤ 10 000
2𝑥 + 3𝑥2 ≤ 12 000
{ 1
𝑥1 + 4𝑥2 ≤ 15 000
𝑥1 𝑒𝑡 𝑥2 ≥ 0

1) On transforme les inégalités en égalité en introduisant des variables d'écart.

Le système des contraintes devient :

𝑥1 + 2𝑥2 + 𝑥3 = 10 000
2𝑥 + 3𝑥2 + 𝑥4 = 12 000
{ 1
𝑥1 + 4𝑥2 + 𝑥5 = 15 000
𝑥1 𝑒𝑡 𝑥2 ≥ 0
La fonction objective devient :
𝑀𝑎𝑥 𝑍 = 3𝑥1 + 5𝑥2 + 0𝑥3 +0𝑥4 +0𝑥5

Les variables 𝑥1 𝑒𝑡 𝑥2 sont appelés variables de décision ou variables hors base.


Les variables 𝑥3 , 𝑥4 𝑒𝑡 𝑥5 sont dites variables d’écarts ou variables de base.

Le programme linéaire peut s’écrire ainsi avec toutes les variables du système
(variables de décision et variables d’écarts), de la façon suivante :

𝑀𝑎𝑥 𝑍 = 3𝑥1 + 5𝑥2 + 0𝑥3 +0𝑥4 +0𝑥5


Sous contraintes :
𝑥1 + 2𝑥2 + 𝑥3 + 0𝑥4 + 0𝑥5 = 10 000
2𝑥1 + 3𝑥2 + 0 𝑥3 + 𝑥4 + 0𝑥5 = 12 000
{
𝑥1 + 4𝑥2 + 0 𝑥3 + 0𝑥4 + 𝑥5 = 15 000
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 𝑒𝑡 𝑥5 ≥ 0

2) On construit le tableau du simplexe :

On construit un tableau à deux dimensions, où le nombre de colonnes est égal au nombre de


variables (les variables de décision plus les variables d'écart) dans le système plus une
colonne de solution. Le nombre de lignes est égale au nombre d'équation dans le système sans
considération des contraintes de positivité.

20
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 3 5 0 0 0 0
𝑥3 0 1 2 1 0 0 10 000
𝑥4 0 2 3 0 1 0 12 000
𝑥5 0 1 4 0 0 1 15 000

3) On cherche la colonne pivot, la ligne pivot et l’élément pivot.

- La colonne pivot correspond à colonne du coefficient le plus élevé dans la fonction


objective (ou économique) lorsqu’il s’agit d’un programme de maximisation.
Cependant, dans un programme de minimisation on choisit la plus petite valeur des
coefficients de la fonction objective. Dans notre exemple, il s’agit d’un programme de
maximisation, le coefficient le plus élevé de la fonction objective est égale à 5. Ce qui
correspond à la colonne 𝑥2 . La variable entrante est donc 𝑥2 .

- La ligne pivot correspond à la ligne qui contient le minimum du rapport de chaque


solution sur l’élément correspondant dans la colonne pivot :
Ainsi, on divise chaque solution sur l’élément de la colonne pivot, on aura :

10 000
= 5 000
2
12 000
= 4 000
3
15 000
= 3 750
4

Donc, la valeur la plus petite est 3750 ce qui correspond à la dernière ligne du tableau
qui sera la ligne pivot.
3750 est la plus grande valeur que l’on peut attribuer à 𝑥2 .

N.B. : Dans le cas où le coefficient dans la colonne entrante et négatif au infini, on ne


le compte pas dans le calcul du minimum. En cadre alors la ligne ou le minimum se
produit.

- L’élément pivot correspond alors au coefficient qui se trouve à l’intersection de la


ligne pivot et de la colonne pivot. Donc, dans notre exemple il est égal à 4.

21
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

4) On reconstruit le tableau du simplexe. On commence d'abord par construire la nouvelle


ligne pivot qui se calcule de la manière suivante :

Nouvelle ligne pivot = Ancienne ligne pivot / élément pivot

2ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z
𝑥3
𝑥4
𝑥2 0/4 1/4 4/4 0/4 0/4 1/4 15 000/4

On calcule les autres lignes (z compris) par la formule suivante :


Nouvelle ligne = Ligne actuelle – Elément de sa colonne pivot × Nouvelle ligne pivot

Exemple pour la 3ème ligne :


z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z
𝑥3
𝑥4 0-3×0 2-3×0.25 3-3×1 0-3×0 1-3×0 0-3×0.25 12 000-3×3750
𝑥2 0 0.25 1 0 0 0.25 3750

22
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

De la même manière, on applique le même calcul pour le reste des lignes (z compris)

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 1.75 0 0 0 -1.25 -18750
𝑥3 0 0.5 0 1 0 -0.5 2500
𝑥4 0 1.25 0 0 1 -0.75 750
𝑥2 0 0.25 1 0 0 0.25 3750

On vérifie tous les coefficients de la ligne z. S’ils sont négatifs où nuls on s’arrête et donc la
solution optimale est trouvée, sinon on continue. Dans notre cas le coefficient de 𝑥1 est
positifs (1.75) ce qui implique de continuer vers une autre itération.

3ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 1.75 0 0 0 -1.25 -18750
2500/0.5=5 000
𝑥3 0 0.5 0 1 0 -0.5 2500
750/1.25=600
𝑥4 0 1.25 0 0 1 -0.75 750
3750/0.25=15 000
𝑥2 0 0.25 1 0 0 0.25 3750

La colonne pivot correspond à la colonne 𝑥1 ;

La ligne pivot correspond à la ligne 𝑥4 ;

L’élément pivot est égal à 1.25.

En reconstruit un nouveau tableau en poursuivant le même calcul que pour la 2ème itération.

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 0 0 0 -1.4 -0.2 -19800
𝑥3 0 0 0 1 -0.4 -0.2 2200
𝑥1 0 1 0 0 0.8 -0.6 600
𝑥2 0 0 1 0 -0.2 0.4 3600

Tous les coefficients de z sont devenus négatifs ou nuls donc on s’arrête et la solution
optimale est trouvée :

𝑥1 = 600

𝑥2 = 3600

𝑧 = 19800

23
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Exemple II :

Résoudre le programme linéaire suivant par la méthode des tableaux du simplexe :

𝑀𝑎𝑥 𝑍 = 240𝑥1 + 160𝑥2


Sous contraintes :
𝑥1 + 2𝑥2 ≤ 150
{4𝑥1 + 2𝑥2 ≤ 400
𝑥1 , 𝑥2 ≥ 0

1) On transforme les inégalités en égalité en introduisant des variables d'écart.

Le programme linéaire peut s’écrire ainsi avec toutes les variables du système
(variables de décision et variables d’écarts), de la façon suivante :

𝑀𝑎𝑥 𝑍 = 240𝑥1 + 160𝑥2 + 0𝑥3 +0𝑥4 +0𝑥5


Sous contraintes :
𝑥1 + 2𝑥2 + 𝑥3 + 0𝑥4 = 150
{4𝑥1 + 2𝑥2 + 0 𝑥3 + 𝑥4 = 400
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 𝑒𝑡 𝑥5 ≥ 0

2) On construit le tableau du simplexe :

z 𝑥1 𝑥2 𝑥3 𝑥4 solution
z -1 240 160 0 0 0
𝑥3 0 1 2 1 0 150
𝑥4 0 4 2 0 1 400

3) On cherche la colonne pivot, la ligne pivot et l’élément pivot.

- Dans notre exemple, le coefficient le plus élevé de la fonction objective est égale à
240. La colonne pivot correspond à la colonne 𝑥1 . La variable entrante est donc 𝑥1 .

- La ligne pivot correspond à la ligne qui contient le minimum du rapport de chaque


solution sur l’élément correspondant dans la colonne pivot :
Ainsi, on divise chaque solution sur l’élément de la colonne pivot, on aura :

150
= 150
1
400
= 100
4

Donc, la valeur la plus petite est 100 ce qui correspond à la dernière ligne du tableau
qui sera la ligne pivot.
100 est la plus grande valeur que l’on peut attribuer à 𝑥1 .

24
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

- L’élément pivot correspond alors au coefficient qui se trouve à l’intersection de la


ligne pivot et de la colonne pivot. Donc, dans notre exemple il est égal à 3.

1ère itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 solution
z -1 240 160 0 0 0
𝑥3 0 1 2 1 0 150 150/1=150
𝑥4 0 4 2 0 1 400 400/4=100

4) On reconstruit le tableau du simplexe. On commence d'abord par construire la nouvelle


ligne pivot qui se calcule de la manière suivante :

Nouvelle ligne pivot = Ancienne ligne pivot / élément pivot

2ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 solution
z
𝑥3
𝑥1 0 1 0.5 0 0.25 100

On calcule les autres lignes (z compris) par la formule suivante :


Nouvelle ligne = Ligne actuelle – Elément de sa colonne pivot × Nouvelle ligne pivot

Exemple pour la 4ème ligne :


z 𝑥1 𝑥2 𝑥3 𝑥4 solution
z
𝑥3 0-1*0 1-1*1 2-1*0.5 1-1*0 0-1*0.25 150-1*100
𝑥1 0 1 0.5 0 0.25 100

De la même manière, on applique le même calcul pour le reste des lignes (z compris)

z 𝑥1 𝑥2 𝑥3 𝑥4 solution
z -1 0 40 0 -60 -24000
𝑥3 0 0 1.5 1 -0.25 50
𝑥1 0 1 0.5 0 0.25 100

25
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

On vérifie tous les coefficients de la ligne z. S’ils sont négatifs ou nuls on s’arrête et donc la
solution optimale est trouvée, sinon on continue. Dans notre cas le coefficient de 𝑥2 est
positifs (40) ce qui implique de continuer vers une autre itération.

3ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 solution
z -1 0 40 0 -60 -24000
𝑥3 0 0 1.5 1 -0.25 50 50/1.5=33.33
𝑥1 0 1 0.5 0 0.25 100 100/0.5=200

La colonne pivot correspond à la colonne 𝑥2 ;

La ligne pivot correspond à la ligne 𝑥3 ;

L’élément pivot est égal à 1.5.

En reconstruit un nouveau tableau en poursuivant le même calcul que pour la 2ème itération.

z 𝑥1 𝑥2 𝑥3 𝑥4 solution
z -1 0 0 -26.66 -53.33 -25333.33
𝑥2 0 0 1 0.66 -0.16 33.33
𝑥1 0 1 0 -0.33 0.33 83.33

Tous les coefficients de z sont devenus négatifs ou nuls donc on s’arrête et la solution
optimale est trouvée :

𝑥1 = 83.33

𝑥2 =33.33

𝑧 = 25333.33

Exercice III :

Résoudre le programme linéaire suivant :

𝑀𝑖𝑛 𝑍 = 150𝑥1 +440𝑥2 + 480𝑥3 + 90𝑥4

Sous contraintes :

𝑥1 + 4𝑥2 + 𝑥3 + 𝑥4 ≥ 100
{ 𝑥1 + 2𝑥2 + 4𝑥3 ≥ 200
𝑥1 , 𝑥2 , 𝑥3 𝑒𝑡 𝑥4 ≥ 0

26
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

Le programme devient avec l’ajout des variables d’écart :

𝑀𝑖𝑛 𝑍 = 150𝑥1 +440𝑥2 + 480𝑥3 + 90𝑥4 − 0𝑥5 − 0𝑥6

Sous contraintes :

𝑥1 + 4𝑥2 + 𝑥3 + 𝑥4 − 𝑥5 − 0𝑥6 = 100


{𝑥1 + 2𝑥2 + 4𝑥3 + 0𝑥4 − 0𝑥5 − 𝑥6 = 200
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 𝑒𝑡 𝑥6 ≥ 0

On construit le tableau du simplexe :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 𝑥6 solution
z -1 150 440 480 90 0 0 0
𝑥2 0 1 4 1 1 -1 0 100
𝑥1 0 1 2 4 0 0 -1 200

Puisqu’il s’agit d’un programme de minimisation, la colonne pivot correspondra au coefficient


le plus bas de la fonction objective. Dans notre exemple il s’agit de la colonne 𝑥4 qui a le
coefficient le plus faible égal 90.

La ligne pivot correspondra toujours à la ligne qui contient le minimum du rapport de chaque
solution sur l’élément correspondant dans la colonne pivot.

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 𝑥6 solution
z -1 150 440 480 90 0 0 0
𝑥5 0 1 4 1 1 -1 0 100 100/1=100
𝑥6 0 1 2 4 0 0 -1 200 200/0= ∞

1ère itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 𝑥6 solution
z -1 60 80 390 0 90 0 -9 000
𝑥4 0 1 4 1 1 -1 0 100 100/1=100
𝑥6 0 1 2 4 0 0 -1 200 200/2=100

2ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 𝑥6 solution
z -1 0 -160 330 -60 150 0 -15000
𝑥1 0 1 4 1 1 -1 0 100 100/1=100
𝑥6 0 0 -2 3 -1 1 -1 100 100/3=33,33

27
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

3ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 𝑥6 solution
z -1 0 -60 0 -50 -40 -110 -26000
𝑥1 0 1 4,66667 0 1,33333 -1,33333 0,33333 66,6667
𝑥3 0 0 -0,6667 1 -0,3333 0,33333 -0,33333 33,3333

Tous les coefficients de z sont devenus négatifs ou nuls donc on s’arrête et la solution
optimale est trouvée :

𝑥1 = 66.67

𝑥3 =33.33

𝑥2 = 𝑥4 = 0

𝑧 =26 000

Exercice IV :

Résoudre le programme linéaire suivant :

𝑀𝑎𝑥 𝑍 = 4𝑥1 +6𝑥2 + 3𝑥3

Sous contraintes :

𝑥1 + 6𝑥2 + 2𝑥3 ≤ 24
{ 𝑥1 + 3𝑥2 − 2𝑥3 ≤ 9
𝑥1 , 𝑥2 𝑒𝑡 𝑥3 ≥ 0

Le programme devient avec l’ajout des variables d’écart :

𝑀𝑎𝑥 𝑍 = 4𝑥1 + 6𝑥2 + 3𝑥3 + 0𝑥4 + 0𝑥5

Sous contraintes :

𝑥1 + 6𝑥2 + 2𝑥3 + 𝑥4 + 0𝑥5 = 24


{ 𝑥1 + 3𝑥2 − 2𝑥3 + 0𝑥4 + 𝑥5 = 9
𝑥1 , 𝑥2, 𝑥3 𝑒𝑡 𝑥4 ≥ 0

On construit le tableau du simplexe :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 4 6 3 0 0 0
𝑥4 0 1 6 2 1 0 24
𝑥5 0 1 3 -2 0 1 9

28
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

1ère itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 4 6 3 0 0 0
𝑥4 0 1 6 2 1 0 24 24/6 = 4
𝑥5 0 1 3 -2 0 1 9 9/3 = 3

2ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 2 0 7 0 -2 -18
𝑥4 0 -1 0 6 1 -2 6 6/6 = 1
𝑥2 0 0,33 1 -0,67 0 0,33 3 3/-0.67 = -4.5

3ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 3.17 0 0 -1.17 0.33 -25
𝑥3 0 -0.17 0 1 0.17 -0.33 1 1/-0.17 = -6
𝑥2 0 0.22 1 -0.01 0.11 0.11 3.66 3.66/0.22=16.39

4ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 0 -14.39 0.10 -2.75 -1.25 -77.72
𝑥3 0 0 0.77 1 0.25 -0.25 3.83 3.83/1=3.83
𝑥1 0 1 4.54 -0.03 0.50 0.51 16.63 16.63/-0.03= -
554.33

5ème itération :

z 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 solution
z -1 0 -14.47 0 -2.78 -1.26 -78.10
𝑥3 0 0 0.77 1 0.25 -0.25 3.83
𝑥2 0 1 4.56 0 0.51 0.50 16.74

La solution optimale :

𝑥1 = 0

𝑥2 = 16.74

𝑥3 = 3.83

29
ECH-CHEBANY Mohamed Recherche Opérationnelle Université Privée de Marrakech

𝑧 = 78.10

30

Vous aimerez peut-être aussi