Vous êtes sur la page 1sur 31

Programmation linéaire

Année 2020/2021
Guettiche Mourad
I Programmation linéaire
La programmation mathématique est la transcription d’ un
problème pratique depuis son expression verbale en terme
mathématique et cherchant sa solution optimale.

La solution optimale est celle qui minimise ou maximise une


fonction qui à le sens économique d’un cout ou d’un profit
et qui dépend linéairement de variable à déterminer.
I Programmation linéaire
Si les contraintes imposées à ce problème présentent une
dépendance linéaire vis-à-vis les variable du problème on dit
qu’il s’agit de la programmation linéaire.

Un programme linéaire est donc un problème qui consiste à


minimiser ou maximiser une fonction linéaire (fonction
objective, but, fonction économique,...) sous des contraintes
linéaires (équations ou inéquations linéaires).
I Programmation linéaire
La programmation linéaire a été introduite pour la première fois par Leonid
Kantorovich en 1939.

Il a développé les premiers problèmes de programmation linéaire qui ont été


utilisés par l'armée pendant la Seconde Guerre mondiale afin de réduire les
dépenses.

La méthode était un secret en raison de son utilisation dans les stratégies de


temps de guerre.
II Historique
En 1947, George B. Dantzig a publié la
méthode simplexe tandis que John von
Neuman a développé la théorie de la dualité.

Cet algorithme (l’algorithme simplexe) a été


implémenté sur les premiers ordinateurs.
II Historique
Après la Seconde Guerre mondiale, de nombreuses
industries ont commencé à adopter la programmation
linéaire pour l’ optimisation de leurs plans de fabrication .

Au milieu des années 80, l’Indien KARMARKAR a proposé


une nouvelle méthode créée dans les laboratoires BELL qui
permettait de résoudre de très gros problèmes linéaires, par
une démarche intérieure au polyèdre.
II. Expression mathématique d’un PL
Fonction objective ou économique en générale soumise à un
certain nombre de contrainte sous forme d’ équations
linéaires.

Z = c1x1+c2x2+…+cnxn.

c1,c2,…,cn: sont appelés les coefficients de la


fonction objective.
II. Expression mathématique d’un PL
Les contraintes peuvent se décomposer sous la
forme d’égalités ou d’inégalités regroupées en
tenant compte de leur sens.
II. Expression mathématique d’un PL
Les coefficients aij sont appelés les coefficients des
contraintes.
Les variables xj sont appelés les variables de
décision.
les coefficients aij , bi, cj constituant les données des problème(Input).
La solution du problème de PL consiste à déterminer les valeurs des
xj(outputs) qui optimise la fonction objective.
II. Expression mathématique d’un PL

x1≥0, x2≥0,…,xn≥0.

Ces conditions sont appelées les contraintes de non-


négativités des variables de décision.
III. Formulation mathématique d’un
PL
• Identifier les variables de décision du problème donné.
Etape 1 :

• Identifier les contraintes du problème et les exprimer par un système d’équation


Etape 2 et/ou d’inéquation linéaires par rapport aux variables de décision.

• Identifier la fonction objective et la présenter sous une forme linéaire par rapport
Etape 3. aux variables de décision
III. Formulation mathématique d’un
PL
Une usine fabrique deux produits A et B à partir d’une matière
première C. Pour le produit A il faut trois unités de C. Pour le
produit B il faut quatre unités de C.
On dispose de 15 unités de C.
Le prix de vente du produit A par unité est de 15 dinars et celui
du produit B est de 10 dinars.
III. Formulation mathématique d’un
PL
Etape1: Définition des variables
x1 : nombre d’unités du produit A à fabriquer,
x2 : nombre d’unités du produit B à fabriquer,
x1, x2 ≥0.
Etape2: Ecriture des contraintes
3x1 : est le nombre d’unité de C pour la fabrication de x1 produit A,
4x2 : est le nombre d’unité de C pour la fabrication de x2 produit B,
Alors, on doit avoir 3x1+4x2≤15.
III. Formulation mathématique d’un
PL
 Etape3: La fonction objective :
Max z= 15x1+10x2

Sujette à :
IV Résolution des programmes linéaire
Résoudre un programme linéaire (PL) signifie qu’il faut
déterminer les valeurs numériques que doivent prendre les
variables de décision qui maximisent ou minimisent la
fonction objective, en respectant les contraintes du problème.

Deux méthodes seront utilisées:


La méthode graphique
La méthode du simplexe
V. La méthode graphique
La méthode graphique est employée pour résoudre des problèmes
de programmation linéaires ayant deux variables de décision.

La méthode à des limites pour trois variables, elle devient


compliquée à présenter.

La méthode est impraticable pour plus de trois variable.


V.1 Résolution graphique d’un
problème linéaire
Résoudre un problème linéaire consiste à répondre aux questions suivantes :

• Y a-t-il une solution ?


Q1
• Comment délimiter l’ensemble des solutions réalisables ?
Q2

• Comment la déterminer si elle existe ?


Q3
V.1.1 Représentation graphique des contraintes 

Dans cette approche graphique , on commence par tracer les


droites qui représente les contraintes de type égalité et les
droites qui délimites les contraintes de type inégalité.

Par exemple, l’inégalité qui correspond à la contraintes de


non-négativité, x2 0, délimites le plan en deux demi-plans
par rapport à l’axe horizontal x1 : le plan supérieure et le
plan inférieure.
V.2.1 Visualisation de l’ensemble de solutions
réalisables 

x2
C

l’ensemble des solutions


réalisable

B
O x1
V.2.1 Visualisation de l’ensemble de
solutions réalisables 
La forme géométrique qui délimite l’ensemble des solutions réalisable est un
polyèdre convexe.

Les point extrêmes de ce polyèdre sont obtenu par l’intersection des droites
représentant les limites des contraintes du PL.

Propriété : L’ensemble des solutions réalisable d’un PL est un polyèdre


convexe, dont les arêtes sont obtenues par l’intersection des droites, plans ou
hyperplans représentant les contraintes du PL.
V.2. 3 Détermination graphique de la solution optimale

La détermination de la solution optimale d’un PL se


faite par un recensement des sommets du polyèdre
convexe délimitant l’ensemble des solutions
réalisable.
Ensuite, par évaluation et comparaison des valeurs de
la fonction objective en ces sommets, nous extrayons
la solution optimale.
Exemple :
Min Z = 3x1 + 4x2
10 x1+20x2≤9
x1+2x2≤6
X1≥0 ; X2≥0 
VI. Cas particulier
1 .
• Solution dégénéré.

2
• Solution non-bornée

3
• Solution multiple

4
• Pas de solution réalisable.
VI.1 Dégénérescence
Le problème de dégénérescence survient lorsqu’ au moins 3 contraintes
concourent en un même point.

En principe, un point extrême est le résultat de l’intersection de deux


contraintes.

le cas de dégénérescence engendre une certaine indétermination du fait qu’un


point extrême devient un point d’intersection de plus de deux contraintes.
Exemple:
Max Z= X1+ X2
Sous les contraintes
8 X1+ 4X 2≤ 32
4 X1+ 6X 2≤24
X1≤3
X1≥0 ; X2≥0 
VI.2 Solutions multiples
La solution optimale peut ne pas être unique comme illustré dans l’exemple suivant:
Max Z= 2X1+4X2
Sous les contraintes
6 X1+ 12 X2 ≤ 36
6X1+ 5X2 ≤ 30
X1 ≥0, X2 ≥0
IV.3. Solution non bornée
Une région réalisable non bornée est celle qu’au moins une des variables de décision
peut prendre des valeurs infinies.
Max Z= X1+X2
Sous les contraintes
X1- X2 ≤ 2
-X1+ X2 ≤ 2
X1 ≥0, X2 ≥0
IV.3. Pas de solution réalisable
Max Z= 10X1+3X2
Sous les contraintes
X1+ X2 ≤3
2 X1+ 3 X2 ≥ 6
X1 ≥0, X2 ≥0
VII. Discussion
Le raisonnement géométrique est toujours praticable pour n=2, à la rigueur
pour n=3. Cependant les problèmes industriels peuvent comporter des
milliers de variables voire davantage.

L’optimum, s’il existe, d’un programme linéaire est réalisé en un sommet du


polyèdre. Ceci pourrait conduire à énumérer les sommets du polyèdre.

Mais ce nombre croissant très vite avec m et n, l’énumération est


impraticable pour des problèmes de taille industrielle.
VII. Discussion
Mais pour n variables et m contraintes explicites il y
a C   mn!mn! ! sommets possibles
n
mn

pour un petit PL comportant m=20 contraintes et


n=30 variables il y a 4,7129.1013 sommets possibles 
VII. Discussion

Même en examinant un million de sommets par seconde, Il


faudrait un an et demi pour résoudre ce problème en ordinateur

Vous aimerez peut-être aussi