Vous êtes sur la page 1sur 59

Partie 1 : Programmation Linéaire

Chapitre 1 : Introduction à la programmation linéaire


Chapitre 2 : Résolution d’un programme linéaire : méthode de simplexe
Chapitre 3 : Dualité et analyse de sensibilité dans la programmation
linéaire

EMG-RO-2023 1
Introduction à la RO
• Méthodologie de la RO
(1) Identification du problème

(2) Collecte des données

(3) Modélisation (Formulation


mathématique)

(4) Vérification du modèle

(5) Recherche des solutions

(6) Présentation des solutions

(7) Implémentation et
EMG-RO-2023 2
recommandations
Partie 1
Programmation Linéaire

EMG-RO-2023 3
Chapitre 1
Introduction à la
programmation linéaire

EMG-RO-2023 4
Chapitre 1 : Introduction à la PL

• La programmation linéaire = méthode permettant d’optimiser, c'est-à-dire


rendre le plus grand ou le plus petit possible, une fonction linéaire, cela sous
certaines contraintes définies par des inégalités.

• Les exemples habituels d’optimisation sont la recherche d’un bénéfice maximal


ou d’un coût minimal.

• Remarque : C’est grâce à cette méthode que les problèmes de ravitaillement


étaient résolus pendant la seconde guerre mondiale.

EMG-RO-2023 5
La programmation linéaire traite de manière générale d'un problème
d'allocation de ressources limitées parmi des activités concurrentes
et ce d'une façon optimale.

La programmation linéaire emploie un modèle mathématique qui


décrit le problème réel.

L'adjectif "linéaire" indique que toutes les fonctions mathématiques


de ce modèle sont linéaires tandis que le terme "programmation"
signifie essentiellement planification.

EMG-RO-2023 6
Chapitre 1 : Introduction à la PL

• Exemple
Une compagnie est spécialisée dans la production de deux types de produits : des
climatiseurs et des ventilateurs. Les deux produits nécessitent un certain nombre
d’heures de main d’œuvre. Le tableau suivant donne les informations nécessaires
sur les deux produits, c’est-à-dire les nombres d’heures machine et d’heures main
d’œuvre nécessaires à la fabrication d’une unité de chacun de ces produits, ainsi que
le profit généré par la production d’une unité de ce produit. Le tableau nous donne
aussi le nombre total d’heures machines et d’heures main d’œuvre disponibles.

Heures Main d’œuvre Profit


machine
Climatiseur 2 h/unité 3 h/unité 25 DT/unité
Ventilateur 2 h/unité 1 h/unité 15 DT/unité
Total disponible 240 h 140 h
EMG-RO-2023 7
Chapitre 1 : Introduction à la PL

I. Formulation du programme linéaire


a) Variables de décision : doivent complètement décrire les décisions à
prendre.
La compagnie veut décider du nombre de climatiseurs et du nombre
de ventilateurs à produire pour maximiser le profit. Ceci nous amène à
choisir les deux variables de décision suivantes :
x1 = nombre de climatiseurs
x2 = nombre de ventilateurs

EMG-RO-2023 8
Chapitre 1 : Introduction à la PL
b) Contraintes du modèle : La limitation des ressources contraint l’entreprise
de la manière suivante :
1) Contraintes heure machine 2x1 + 2x2 ≤ 240
2) Contrainte main d’œuvre 3x1 + x2 ≤ 140
3) Contraintes de non-négativité (exprimant que les niveaux d’activité ne
peuvent être négatifs) x1 ≥ 0, x2 ≥ 0

Modèle complet : x1 = nbre de climatiseurs, x2 = nbre de ventilateurs


Max Z = 25 x1 + 15 x2
s.c. 2x1 + 2x2 ≤ 240
3x1 + x2 ≤ 140
x1 ≥ 0, x2 ≥ 0
s.c = sous contraintes
EMG-RO-2023 9
Chapitre 1 : Introduction à la PL

c) Fonction objectif : dans n’importe quel programme linéaire, le responsable


de décision veut maximiser (en général, le revenu ou profit) ou minimiser
(en général le coût) une fonction des variables de décisions. Cette
fonction est appelée “ fonction objectif ”.
L’objectif de l’entreprise est de déterminer le programme de production
qui maximisera son profit (Z=profit). La fonction objectif s’écrit alors:
Max Z = 25x1 + 15x2

Modèle complet : x1 = nbre de climatiseurs, x2 = nbre de ventilateurs


Max Z = 25 x1 + 15 x2
s.c. 2x1 + 2x2 ≤ 240
3x1 + x2 ≤ 140
x1 ≥ 0, x2 ≥ 0
s.c = sous contraintes
EMG-RO-2023
EMG-RO-2023 10
10
Chapitre 1 : Introduction à la PL

• Domaine réalisable et solutions optimales : Ce sont deux concepts


fondamentaux associés avec un PL. Pour les définir, on va utiliser le terme point
(x1,x2), qui désigne une spécification de la valeur de chaque variable de
décision.

• Le domaine réalisable (DR) est l’ensemble de tous les points satisfaisant toutes
les contraintes du PL. Dans notre exemple, le point (20,40) (Z= 280) appartient
au DR. Ce point est dit réalisable.

• Pour un problème de maximisation (min), une solution optimale est un point du


DR qui donne la valeur la plus large (faible) de la fonction objective.

(20, 40) ≠ solution optimale car (10, 110) est réalisable et donne Z = 1900
meilleur profit que Z= 280
EMG-RO-2023 11
Chapitre 1 : Introduction à la PL

II. Résolution graphique


 Méthode de résolution d’un PL ne comportant que 2 variables
de décision

 Etapes à suivre
• Représenter les lignes des contraintes et l’ensemble du domaine réalisable
• Localiser la solution optimale
• Calculer la solution optimale

EMG-RO-2023 12
Chapitre 1 : Introduction à la PL

1ère étape : domaine réalisable


(PL) Max Z = 25 x1 + 15 x2
s.c. 2x1 + 2x2 ≤ 240
3x1 + x2 ≤ 140
x1 ≥ 0, x2 ≥ 0

Domaine réalisable

EMG-RO-2023 13
Chapitre 1 : Introduction à la PL

2ème étape : Recherche de la solution optimale


(PL) Max Z = 25 x1 + 15 x2

• La fonction objectif Z = 25x1 + 15x2 représente pour Z fixé (25x1 + 15x2 = cte) l’équation des
courbes de niveau (des droites de pente -5/3) qu’on appelle aussi ligne d’isoprofit ou isocoût.

• Maximiser Z revient à déplacer la ligne d’isoprofit dans la direction qui augmente la valeur de Z
(pour un pb de maximisation). La dernière ligne qui touche le DR définit la plus large valeur de
toutes les solutions réalisables, et contient la solution optimale

EMG-RO-2023 14
Chapitre 1 : Introduction à la PL
2ème étape : Recherche de la solution optimale (suite)

Solution optimale

{B} = D ∩ D’

D’

D EMG-RO-2023 15
Chapitre 1 : Introduction à la PL
3ème étape : Calcul de la solution optimale

Solution optimale
{B} = D ∩ D’ d’équations respectives:
2x1 + 2x2 = 240
3x1 + x2 = 140
Donc x1=10, x2=110 et Z*=1900

D’

D EMG-RO-2023 16
Autre exemple

EMG-RO-2023 17
EMG-RO-2023 18
Exemple simple

EMG-RO-2023 19
EMG-RO-2023 20
EMG-RO-2023 21
Graphique

EMG-RO-2023 22
EMG-RO-2023 23
Chapitre 1
Introduction à la PL
Théorème: Pour un PL donné, si un optimum existe, au moins un point
extrême est optimal.

Corollaire: Si PL admet un optimum unique, alors cet optimum doit être un


point extrême.

IV.Cas particuliers de PL
PL non borné
Max Z = x1 + 2x2
s.c. 7x1+2x2 ≥ 28
x1 + 6x2 ≥ 12
x1 ≥ 0, x2 ≥ 0

EMG-RO-2023 24
Chapitre 1
Introduction à la PL

14

Lignes d’isoprofit

2 12
x1+6x2 = 12
7x1+2x2 = 28

Si la fonction objectif est min z = x1 + 2x2 (18/5, 7/5) est optimal.


EMG-RO-2023 25
Chapitre 1
Introduction à la PL
PL a une infinité de solutions optimales
Max Z = x1 + 3x2
s.c. 2x1+6x2 ≤ 30 (1)
x1 ≤ 10 (2)
x2 ≤ 4 (3)
x1 ≥ 0, x2 ≥ 0

Tous les points appartenant


à [AB] sont optimaux

EMG-RO-2023 26
Chapitre 1
Introduction à la PL
PL non réalisable
Max Z = 3x1 + 2x2
s.c. x1+2x2 ≤ 2 (1)
2x1 + 4x2 ≥ 8 (2)
x1 ≥ 0, x2 ≥ 0

DR vide PL non réalisable

EMG-RO-2023 27
Problème du combinatoire

EMG-RO-2023 28
Chapitre 2
Résolution d’un programme
linéaire : méthode de simplexe

EMG-RO-2023 29
Chapitre 2
Méthode de simplexe
I. Introduction

• Dans le chapitre précédent, on a vu comment résoudre graphiquement un


PL à deux variables. Or la majorité des problèmes réels ont plusieurs
variables. D’où la nécessité d’avoir une méthode algébrique pour résoudre
des PLs ayant plus que 2 variables.

• La méthode de Simplexe est l’une des méthodes les plus anciennes


(Dantzig, 1947), et la plus utilisée jusqu’à nos jours, pour résoudre même
des problèmes de grandes tailles avec quelques milliers de variables et
quelques milliers de contraintes.

EMG-RO-2023 30
Formulation

• Fonction objectif
min f(x) max f(x)
• Contraintes
g(x)  cte g(x)  cte g(x) = cte
• Contraintes de bornes
lxu
• Contraintes de signe
x0

EMG-RO-2023 31
Formulation : règles

EMG-RO-2023 32
Mise en forme standard

Un PL peut avoir des contraintes d’égalité (=) et des contraintes d’inégalité ( ≥ et ≤


).

Avant l’application de Simplexe, le PL doit être converti en un PL équivalent où :


- toutes les contraintes sont des égalités,
- toutes les variables sont non négatives (≥ 0),
- le second membre est non négatif (AX ≤ b, b≥0).

Un tel PL est dit sous la forme standard.

EMG-RO-2023 33
Exemple

EMG-RO-2023 34
34
EMG-RO-2023 35
35
EMG-RO-2023 36
Mise sous forme standard de l’exemple

EMG-RO-2023 37
EMG-RO-2023 38
Forme standard

EMG-RO-2023 39
Méthode des tableaux

EMG-RO-2023 40
Choix de la variable entrante
Dans une solution de base réalisable (SBR) toutes les variables hors base
sont nulles (xe =0). Pour faire entrer xe, on augmente sa valeur, par
exemple de   0 (xe = xe + ) tout en maintenant à zéro toutes les autres
variables hors base.

1er critère de Dantzig : nous indique le choix de la variable entrante. Ce


dernier est basé sur la contribution éventuelle de xe à la fonction objectif.

Puisque z(x) = z(x) + . x   z(x)/ xj= j = taux de variation de z par


rapport xj.

Par conséquent on choisit la variable, xe, ayant le taux d’augmentation


maximal de z(x) (PL de max), c-à-d le j maximal :

xe est telle que e = max{ j , où j= m+1, …, n ; j > 0}

EMG-RO-2023 41
Choix de la variable sortante

• On en déduit la variable sortante xs telle que


• bs/as,e = min {bi/ai,e :  i = 1, …, m et ai,e > 0}

EMG-RO-2023 42
EMG-RO-2023 43
Algorithme du simplexe

• On part de la solution O (ne rien faire);


• Les i sont les ci;
• La variable xe qui entre dans la base est celle dont le delta est le plus
grand positif;
• La variable qui sort de la base est celle dont le bi/aie est le plus petit
positif;
• L’élément aie intersection de la ligne de la variable qui sort avec la
colonne de la variable qui rentre s’appelle le pivot.

EMG-RO-2023 44
Transformations

• Dans le nouveau tableau :


• Remplacer la variable qui sort par celle qui rentre;
• Diviser la ligne du pivot par le pivot;
• Compléter la colonne du pivot par des zéro;
• Transformer les lignes :
• Nouvelle ligne i = ancienne ligne i – aie x nouvelle ligne du pivot(on
retrouve les zéros inscrits dans la colonne du pivot);
• Nouvelle solution : variables de base égales aux second membre
correspondant et variables hors base nulles.
• i = produit scalaire de Ai par le vecteur des ci des var de base.

EMG-RO-2023 45
EMG-RO-2023 46
EMG-RO-2023 47
EMG-RO-2023 48
EMG-RO-2023 49
Cheminement de l’algorithme du
simplexe

EMG-RO-2023 50
Application 1
• Une entreprise d'assemblage d'automobiles rassemble des voitures et des
camions dans une usine divisée en deux ateliers. L'atelier I, où s'effectue le
travail d'assemblage et de montage, et l'atelier II où s'accomplissent toutes les
opérations de finissage. L'atelier I emploie 10 journées de travail par camion
et 4 journées par voiture. L'atelier II emploie 6 journées de travail
indifféremment un camion ou une voiture. En raison de limitations de
personnel et de machines, l'atelier I peut disposer de 252 journées de travail
par an et l'atelier II 189 journées. Si l'entreprise fait un profit de 450 F par
camion et de 300 F par voiture, combien doit-il produire de chaque type de
véhicules pour maximiser son profit ?

EMG-RO-2023 51
Résumé

Camions Voitures Resources (nbre


jours)

Atelier I 10 4 252
Atelier II 6 6 189
Profit unitaire(F) 450 300

EMG-RO-2023 52
Modélisation

• 1. variables de décision :
• Nc : nombre de camions;
• Nv : nombre de voitures.
• 2. contraintes :
• Atelier I : 10Nc + 4 Nv =< 252
• Atelier II : 6Nc + 6Nv =< 189
• Nc et Nv >= 0
• 3. fonction objectif : [Max] z = 450 Nc + 300 Nv

EMG-RO-2023 53
Application 2
• Un manufacturier produit des tables et des bureaux. Chaque table
requiert 2,5 heures pour l'assemblage, 3 heures pour le buffing et 1 heure
pour le grating. La production de chaque bureau exige 1 heure
d'assemblage, 3 heures de buffing et 2 heures de grating. La firme peut
utiliser tout au plus 20 heures pour l'assemblage, 30 heures pour le
buffing et 16 heures pour le grating par semaine. Son profit marginal est
de 30 $ par table et de 40 $ par bureau. Utiliser la méthode graphique
pour trouver la production qui maximise le profit hebdomadaire de la
firme.

EMG-RO-2023 54
Résumé

Tables Bureaux Ressources(heures)

Atelier I :Assemblage 2,5 1 20

Atelier II : Buffing 3 3 30

Atelier III : Grating 1 2 16

Profit unitaire($) 30 40

EMG-RO-2023 55
Modélisation

• 1. variables de décision :
• Nt : nombre de tables;
• Nb : nombre de bureaux.
• 2. contraintes :
• Atelier I : 2,5Nt + Nb =< 20
• Atelier II : 3Nt + 3Nb =< 30
• Atelier III : Nt + 2Nb =< 16
• Nt et Nb >= 0
• 3. fonction objectif : [Max] z = 30 Nt + 40 Nb

EMG-RO-2023 56
Application 3
• Une société produit deux types d'aciers. Le type 1 exige deux heures de
fusion, 4 heures de laminage et 10 heures de tranchée (coupure). Le type
II exige 5 heures de fusion, une heure de laminage et 5 heures de
tranchée. 40 heures sont utilisables pour la fusion, 20 heures pour le
laminage et 60 pour la tranchée. Le profit marginal est de 2400 $ pour le
type I et de 800 $ pour le type II. Déterminer la combinaison d'output qui
maximise le profit de la firme.

EMG-RO-2023 57
Résumé

Type I Type II Ressources (heures)

Fusion 2 5 40

Laminage 4 1 20

Tranchée 10 5 60

Profit ($) 2400 800

EMG-RO-2023 58
Forme standard des programmes suivants

• a) Maximiser Z = 4x1 + 3x2 - x3 + • c) Maximiser P = x + y


2x4 +6x5 • Sous les contraintes :
• S/C : 3x1 + x3 - x5 = 3 ;
• 2x1 + x2 - 3x4 = -12 ; • 2y - x + 1 ≥ 0,
• x2 + x3 + x5 = 4 • y - 2x + 5 ≥ 0 ;
• Avec xj ≥ 0 (j = 1, 2, 3, 4, 5)
• x ≥ 0 et y ≥ 0
• b) Minimiser Z = 4x1 + 2x2
• Soumises aux contraintes : • d) Maximiser Z = -x + 0,5y
• 4x1 + x2 ≥ 20,
• 2x1 + x2 ≥ 14 ; • Soumises aux contraintes :
• x1 + 6x2 ≥ 18 • -2y + x - 1 ≥ 0,
• et x1, x2 ≥ 0 • y-x-1≥0;

• x ≥ 0 et y ≥ 0

EMG-RO-2023 59

Vous aimerez peut-être aussi