Vous êtes sur la page 1sur 94

CHAPITRE 1

Formulation d’un programme linéaire (PL)

I. Introduction

L’importance de l’optimisation et la nécessité d’un outil simple pour modéliser des problèmes de décision que soit économique, militaire ou autres on fait de la programmation linéaire un des champs de recherche les plus actifs au milieu du siècle précédent. Les premiers travaux 1 (1947) sont celle de George B. Dantzig et ses associés du département des forces de l’air des Etats Unis d’Amérique.

Les problèmes de programmations linéaires sont généralement liés à des problèmes d’allocations de ressources limitées, de la meilleure façon possible, afin de maximiser un profit ou de minimiser un coût. Le terme meilleur fait référence à la possibilité d’avoir un ensemble de décisions possibles qui réalisent la même satisfaction ou le même profit. Ces décisions sont en général le résultat d’un problème mathématique.

1 De nombreux mathématiciens, parmis eux le Russe L. V. Kantorovich, se sont penchés sur le problème de programmation linéaire avant 1947.

1

II. Les conditions de formulation d’un PL

La programmation linéaire comme étant un modèle admet des hypothèses (des conditions) que le décideur doit valider avant de pouvoir les utiliser pour modéliser son problème. Ces hypothèses sont 2 :

1. Les variables de décision du problème sont positives

2. Le critère de sélection de la meilleure décision est décrit par une fonction linéaire de ces variables, c’est à dire, que la fonction ne peut pas contenir par exemple un produit croisé de deux de ces variables. La fonction qui représente le critère de sélection est dite fonction objectif (ou fonction économique).

3. Les restrictions relatives aux variables de décision (exemple: limitations des ressources) peuvent être exprimées par un ensemble d’équations linéaires. Ces équations forment l’ensemble des contraintes.

4. Les paramètres du problème en dehors des variables de décisions ont une valeur connue avec certitude

III. Les étapes de formulation d’un PL :

Généralement il y a trois étapes à suivre pour pouvoir construire le modèle d'un programme linéaire :

1. Identifier les variables du problème à valeur non connues (variable de

décision) et les représenter sous forme symbolique (exp. x 1 , y 1 ).

2. Identifier les restrictions (les contraintes) du problème et les exprimer par un système d’équations linéaires.

3. Identifier l’objectif ou le critère de sélection et le représenter sous une forme linéaire en fonction des variables de décision. Spécifier si le critère de sélection est à maximiser ou à minimiser.

IV. Présentation Théorique

Un programme linéaire consiste à trouver le maximum ou le minimum d’une forme linéaire dite fonction objectif en satisfaisant certaines équations et inégalités dites contraintes. En langage mathématique, on décrira de tels modèles de la manière suivante :

Soient N variables de décision x 1 , x 2 ,…, x n, l’hypothèse que les variables de

décision sont positives implique que

x

1

0,

x

2

0,

,

x

N

0 .

2 Ces hypothèses résument celles qui ont été donné par G. B. Dantzig : La proportionnalité, La non-négativité, l’additivité et la linéarité de la fonction objectif

2

La fonction objectif est une forme linéaire en fonction des variables de décision de type

z = c x

1

1

+ c

2

x

2

+ + c

N

x

N

où les coefficients c 1 ,…,c N doivent avoir une valeur bien déterminée (avec certitude) et peuvent être positifs, négatifs ou nuls. Par exemple le coefficient c i peut représenter un profit unitaire lié à la production d’une unité supplémentaire du bien x i, ainsi la valeur de z est le profit total lié à la production des différents biens en quantités égales à

x

1

,

x

2

,

x

,

N

.

Supposons que ces variables de décision doivent vérifier un système d’équations linéaires définis par M inégalités

a

a x

x

11

21

1

1

a

M

1

x

+

+

a

a

x

12

2

22

x

2

+

+

+

a

1

N

x

N

+

a

2

N

x

N

b

1

b

2

1

+

a

M

2

x

2

+

+

a

MN

x

N

b

M

où les coefficients a 1M ,…, a MN et b 1 ,…, b M doivent avoir une valeur bien déterminée (avec certitude) et peuvent être positifs, négatifs ou nuls. Le paramètre b j représente la quantité de matière première disponible dont le bien x i utilise une quantité égale à a ij x i .

En suivant les étapes de formulation ci-dessus, on peut représenter le PL comme suit :

Max

s c

.

c x

1

1

a

a

11 x

1

21 x

1

+

c

+ a

+ +

2

x

2

+

12

a

22

x

2

x

2

+

+

c

N x

a

N

+

+

1

N

x

N

a

2

N

x

N

a

x

+ 2

M

1

x

1

1

0,

x

a

2

M

x

0,

2

+

,

+

x

a

N

MN

0

x

b

1

b

2

N

b

N

V. Exemples de formulations

Limité au départ aux problèmes industriels et militaires, de nos jours plusieurs problèmes de divers domaines sont représentés ou approximés par des modèles de PL. L’utilisation de ces techniques de modélisation s’est renforcée encore après avoir construit des algorithmes et des logiciels capables de résoudre de plus larges problèmes avec autant de variables de décision que de contraintes.

La tâche de formulation demande généralement une certaine expertise et connaissance du problème pour pouvoir relever facilement les différentes composantes du problème et ainsi donner un programme qui modélise au mieux

3

la situation réelle. Dans ce qui suit, on présentera quelques exemples de formulation en programme linéaire liés à différents problèmes de décision :

Exemple 1 : Problème d’agriculture 3

Un agriculteur veut allouer 150 hectares de surface irrigable entre culture de tomates et celles de piments. Il dispose de 480 heures de main d’œuvre et de 440 m 3 d’eau. Un hectare de tomates demande 1 heure de main d’œuvre, 4 m 3 d’eau et donne un bénéfice net de 100 dinars. Un hectare de piments demande 4 heures de main d’œuvre, 2 m 3 d’eau et donne un bénéfice net de 200 dinars.

Le bureau du périmètre irrigué veut protéger le prix des tomates et ne lui permet pas de cultiver plus de 90 hectares de tomates. Quelle est la meilleure allocation de ses ressources ?

Formulation du problème en un PL :

Etape 1 : Identification des variables de décision. Les deux activités que l’agriculteur doit déterminer sont les surfaces à allouer pour la culture de tomates et de piments :

x 1 : la surface allouée à la culture des tomates

 

x 2 : la surface allouée à la culture des piments

On

vérifie

bien

que

les

variables

de

décision

x 1

et

x 2

sont

positives :

x

1

0,

x

2

0

.

Etape 2 : Identification des contraintes. Dans ce problème les contraintes représentent la disponibilité des facteurs de production :

Terrain : l’agriculteur dispose de 150 hectares de terrain, ainsi la contrainte

liée à la limitation de la surface de terrain est

x

1

+ x

2

150

Eau : la culture d’un hectare de tomates demande 4 m 3 d’eau et celle d’un

hectare de piments demande 2m 3 mais l’agriculteur ne dispose que de 440m 3 . La contrainte qui exprime les limitations des ressources en eau est

4

x

1

+

2

x

2

440

.

Main d’œuvre : Les 480 heures de main d’œuvre seront départager (pas

nécessairement en totalité) ente la culture des tomates et celles des piments. Sachant qu’un hectare de tomates demande une heure de main d’œuvre et un hectare de piments demande 4 heures de main d’œuvre alors la contrainte

représentant les limitations des ressources humaines est

x

1

+

4

x

2

3 Exemple du cours du Prof. Mohamed Saleh Hannachi

4

480

Les limitations du bureau du périmètre irrigué : Ces limitations exigent que

l’agriculteur ne cultive pas plus de 90 hectares de tomates. La contrainte qui

représente cette restriction est

x

1

90 .

Etape 3 : Identification de la fonction objectif. La fonction objectif consiste à

maximiser le profit apporté par la culture de tomates et de piments. Les contributions respectives 100 et 200, des deux variables de décision x1 et x2 sont proportionnelles à leur valeur. La fonction objectif est donc

z =

100

x

1

+

200

x

2

.

Le programme linéaire qui modélise le problème d’agriculture est :

Max

s c

.

.

100

x

1

4 x

x

x

x

1

1

1

x

+

1

+ 200

x

2

2

x

+

1

+

4

x

2

2

0 ,

x

2

x

2

150

440

480

90

0

Exemple 2 : Problème de médecine 4

Un spécialiste en médecine a fabriqué un médicament (des pilules) pour guérir les sujets atteints d’un rhume. Ces pilules sont fabriquées selon deux formats :

Petite taille : elle contient 2 grains d’aspirine, 5 grains de bicarbonate et 1 grain de codéine.

Grande taille : elle contient 1 grain d’aspirine, 8 grains de bicarbonate et 6

grains de codéine. Pour guérir la maladie, le sujet a besoin de 12 grains d’aspirine, 74 grains de bicarbonate et 24 grains de codéine. Déterminer le nombre de pilules minimales à prescrire au sujet pour qu’il soit guérit.

Formulation du problème en un PL :

Le problème de médecine présente certaines ressemblances avec le problème de l’agriculture, dans les deux cas c’est un problème d’allocation de ressources. Les variables de décision qui représentent des valeurs inconnues par le décideur qui est dans ce cas le spécialiste en médecine sont :

x 1 : le nombre de pilules de petite taille à prescrire.

x 2 : le nombre de pilules de grande taille à prescrire.

On vérifie bien que les variables de décision x 1 et x 2 sont positives :

x

1

0,

x

2

0

.

Les contraintes imposées par le problème sur les valeurs possibles de x 1 et x 2

sont :

4 An introduction to linear programming and the theory of games, A. M. Glicksman

5

La prescription doit contenir des pilules avec au moins 12 grains d’aspirine. Sachant qu’une petite pilule contient 2 grains d’aspirine et qu’une grande

pilule contient un seul grain d’aspirine, on obtient la contrainte suivante :

2

x

1

+ x

2

12

.

De la même façon que pour l’aspirine, la prescription du spécialiste en médecine doit contenir au moins 74 grains de bicarbonate. Ainsi la contrainte

suivante doit être satisfaite : 5 8 74 .

x

1

+

x

2

Finalement la contrainte imposée par le fait que la prescription doit contenir

au moins 24 grains de codéine est

x

1

+

6

x

2

24

.

Etape 3 : Identification de la fonction objectif. On remarque qu’il y a plusieurs

couples de solutions ( , )

l’étape 2. La prescription doit contenir le minimum possible de pilules. Donc le critère de sélection de la quantité de pilules à prescrire est celle qui minimise le

nombre total des pilules

qui peuvent satisfaire les contraintes spécifiées à

x

1

x

2

z = x

1

+ x

2

.

Le programme linéaire qui modélise ce problème médical est donc le suivant :

Min

s c

.

.

+

x

2

1

x

1

x

+

2

x

2

5

x

1

+

8

x

2

x

x

1

1

6

0,

+

x

2

x

2

12

74

24

0

Exemple 3 : problème de production 5

Pour fabriquer deux produits P1 et P2 on doit effectuer des opérations sur trois machines M1, M2 et M3, successivement mais dans un ordre quelconque. Les temps unitaires d’exécution sont donnés par le tableau suivant :

 

M1

M2

M3

P1

11 mn

7 mn

6 mn

P2

9 mn

12 mn

16 mn

On supposera que les machines n’ont pas de temps d’inactivité. La disponibilité pour chaque machine sont :

165 heures (9900 minutes) pour la machine M1 ;

140 heures (8400 minutes) pour la machine M2 ;

160 heures (9600 minutes) pour la machine M3 .

Le produit P1 donne un profit unitaire de 900 dinars et le produit P2 un profit unitaire de 1000 dinars. Dans ces conditions, combien doit-on fabriquer mensuellement de produits P1 et P2 pour avoir un profit total maximum ?

5 Méthodes et modèles de la recherche opérationnelle, A. Kaufmann, pp 22-23

6

Formulation en un PL :

Les variables de décisions sont :

x 1 : le nombre d’unités du produit P1 à fabriquer

x 2 : le nombre d’unités du produit P2 à fabriquer

Les contraintes outre les contraintes de non-négativité sont :

11

x

x

1

x

1

1

9

12

16

+

+

+

x

2

x

2

x

2

9900

8400

9600

pour la machine M1

pour la machine M2

pour la machine M3

7

6

Le profit à maximiser est :

z = 900 x + 1000 x

1

2

Le programme linéaire résultant est :

Max

s c

.

.

900

x

1000

11

7

x

1

x

1

1

+

+

9

x

2

2

+

12

x

6

x

1

x

1

+

0,

16

x

x

2

2

0

x

2

9900

8400

9600

Exemple 4 : Problème d’alimentation 6

On se propose de réaliser une alimentation économique pour des bestiaux, qui contient obligatoirement 4 sortes de composants nutritifs, A, B, C et D. L’industrie alimentaire produit précisément deux aliments M et N qui contiennent ces composants : 1 Kg d’aliment M contient 100 g de A, 100 g de C, 200 g de D ; 1 Kg d’aliment N contient 100 g de B, 200 g de C, 100 g de D. Un animal doit consommer par jour au moins : 0.4 Kg de A ; 0.6 Kg de B ; 2 Kg de C ; 1.7 Kg de D. L’aliment M coûte 10 DT le Kg et N coûte 4 DT le Kg. Quelles quantités d’aliments M et N doit-on utiliser par jour et par animal pour réaliser l’alimentation la moins coûteuse ?

Formulation en un PL :

On peut résumer toutes les données du problème dans le tableau suivant

6 Méthodes et modèles de la recherche opérationnelle, A. Kaufmann, pp 24-25

7

 

M

N

Quantités prescrites

A

0.1

0

0.4

B

0

0.1

0.6

C

0.1

0.2

2

D

0.2

0.1

1.7

Coût

10

4

 

Ce genre de tableau peut aider à mieux analyser le problème et ainsi formuler le programme linéaire correspondant. Les variables de décision sont

x M : la quantité d’aliments M à utiliser pour l’alimentation des deux bestiaux

x N : la quantité d’aliments N à utiliser pour l’alimentation des deux bestiaux

Les contraintes de non-négativité sont

Le choix de cette quantité est contraint à la présence dans l’alimentation du

composant

La fonction objectif est une fonction coût :

Le programme linéaire est un programme de minimisation :

x

1

0,

x

2

0.

A :

B :

C :

D :

0.1

0.1

0.1

0.2

x

1

x

2

x

1

x

1

0.4

0.6

+

0.2

+

0.1

x

2

x

2

2

x

1

x

2

4

6

x

1

+

2

x

2

2

x

1

+ x

20

1.7

2

17

z

= 10 x

1

+ 4 x

2

.

Min

s c

.

.

10

x

x

1

2

x

1

+

4

6

x

2

x

1

2

+

0,

+

1

x

1

4

x

x

x

2

2

x

2

2

20

17

0

Exemple 5 : Problème de mélange 7

Un industriel veut produire un alliage Z à 30% de plomb, 30% de zinc et 40% d’étain. Supposons qu’il puisse se procurer sur le marché des alliages A, B, C, D, E, F, G, H, I dont les compositions et les prix respectifs sont donnés dans le tableau suivant :

Compositions

A

B

C

D

E

F

G

H

I

Alliage à

des

alliages

fabriquer

(en %)

Plomb

10

10

40

60

30

30

30

50

20

30

Zinc

10

30

50

30

30

40

20

40

30

30

7 G. B. Dantzig applications et prolongements de la programmation linéaire pp :13-14

8

Etain

80

60

10

10

40

30

50

10

50

40

Coût au Kilo

4.1

4.3

5.8

6

7.6

7.5

7.3

6.9

7.3

 

Combien doit-il acheter de chaque alliages A, B, C, D, E, F, G, H et I pour obtenir au prix de revient minimum un 1 Kg de l’alliage Z ?

Formulation en un PL :

La décision à prendre : Combien acheter de chaque alliage A, B, …, I ? Les variables de décision sont :

x i : la quantité d’alliage i, i= A, B, …, I, à acheter.

On vérifie bien que les variables de décision x i , i= A, B, …, I, sont positives :

x

A

0,

x

B

0,

x

C

0,

x

D

0,

x

E

0,

x

F

0,

x

G

0,

x

H

0,

x

I

0

.

Les contraintes relatives au problème sont :

Equation de la conservation de la matière :

x

A

0,

x

B

0,

x

C

0,

x

D

0,

x

E

0,

x

F

0,

x

G

0,

x

H

0,

x

I

0

Equation de la satisfaction des proportions en Plomb :

x

A

+ 0.3

x

B

+ 0.5

x

C

+ 0.3

x

D

+ 0.3

x

E

+ 0.4

x

F

+ 0.2

x

G

+ 0.4

x

H

+ 0.3

x

I

= 0.3

Equation de la satisfaction des proportions en Zinc :

0.1

x

A

+ 0.3

x

B

+ 0.5

x

C

+ 0.3

x

D

+ 0.3

x

E

+ 0.4

x

F

+ 0.2

x

G

+ 0.4

x

H

+ 0.3

x

I

= 0.3

Equation de la satisfaction des proportions en Etain :

0.8

x

A

+ 0.6

x

B

+ 0.1

x

C

+ 0.1

x

D

+ 0.4

x

E

+ 0.3

x

F

+ 0.5

x

G

+ 0.1

x

H

+ 0.5

x

I

= 0.4

La fonction objectif dans cet exemple représente le coût d’achat des différents alliages A, B, C, D, E, F, G, H et I. Donc l’expression de la fonction objectif est la suivante :

z = 4.1 x

A

+ 4.3 x

B

+ 5.8 x

C

+ 6 x

D

+ 7.6 x

E

+ 7.5 x

F

+ 7.3 x

G

+ 6.9 x

H

+ 7.3 x

I

Le programme linéaire qui modélise ce problème mélange s'écrit :

Min

s c

.

.

4.1 x

x

A

A

+ 4.3

x

B

+

5.8

x

C

+

6

x

D

+

+

x

B

x

A

+

+

0.1

x

C

0.3

+

x

D

+

x

E

+

x

0.6

F

+

x

D

x

+

0.3

x

D

+

x A x

+

x A

x

B

x

B

+

0.4

x

C

+

0.5

x

C

+

+

7.6

x

E

+

G

+

0.3

x

H

E

x

+

+

x

F

x

0.3

I

=

x

+

1

F

+

x

0.3

+

G

G

x

+

0.3

0.4

0

x

E

x

E

+

0.4

x

F

+

0.3

x

F

+

0.2

x

G

+

0.5

x

G

+

+

7.5

7.3

6.9

x

0.5

H

+

x

H

+

0.4

x

H

+

0.1

x

H

+

7.3

x

I

0.1

0.1

0.8

0.2

x

I

0.3

x

I

0.5

x

I

x

A

,

x

B

+ 0.6

x

B

,

C

,

x

D

,

+

x

0.1

,

E

x

x

C

F

x

+

G

,

0.1

x

x

,

H

D

x

I

+

Exemple 6 :

Sélection de Médias 8

=

0.3

=

0.3

=

0.4

Une entreprise désire effectuer une campagne publicitaire dans la télévision, la radio et les journaux pour un produit lancé récemment sur le marché. Le but de la campagne est d’attirer le maximum possible de clients. Les résultats d’une étude de marché sont donnés par le tableau suivant :

8 Operations research principles and practice, pp17-18

9

 

Télévision

Radio

Journaux

Locale

Par

satellite

Coût d’une publicité

 

40 DT

75 DT

30 DT

15 DT

Nombre de

client

400

900

500

200

potentiel par publicité

Nombre

de

client

300

400

200

100

potentiel

femme

par

publicité

Pour la campagne, on prévoit de ne pas payer plus que 800DT pour toute la campagne et on demande que ces objectifs soient atteints :

1. Au minimum 2000 femmes regardent, entendent ou lisent la publicité ;

2. La campagne publicitaire dans la télévision ne doit pas dépasser 500 DT ;

3. Au moins 3 spots publicitaires seront assurer par la télévision locale et au moins de deux spots par la télévision par satellite.

4. Le nombre des publicités dans la radio ou dans les journaux sont pour chacun entre 5 et 10.

Formulation en un PL :

Les variables de décision du problème sont

x 1 : le nombre de spots publicitaires dans la télévision locale

x 2 : le nombre de spots publicitaires dans la télévision par satellite

x 3 : le nombre de spots publicitaires dans la radio

x 4 : le nombre d’affiches publicitaires dans les journaux

Les contraintes de non-négativité sont vérifiées. Les contraintes du problème sont :

Coût total de la compagne publicitaire : 40

Nombre de clients femmes potentiels par publicité :

x

1

+

75

x

2

+

30

x

3

+

15

x

4

800

300

x

1

+

400

x

2

x

+

1

+

200

x

3

x

2

+

100

x

4

500 ,

x

1

2000

3

Contraintes de la télévision : 40 75

Contraintes sur le nombre de publicités dans la radio et dans les journaux

et

x

2

2

5

x

3

10

et 5

x

4

10

.

La fonction objectif à maximiser représente le nombre de clients potentiels par

publicité

Le programme linéaire résultant est :

z = 400 x + 900 x

1

2

+ 500 x + 200 x

3

4

.

10

Max

s c

.

.

CHAPITRE 2

400

x

40

1

30

x

1

x

1

+

+

75

900

x

2

+

40

x

2

40

x 1

x

1

+

75

x

2

x 2

500

+

x

+

2

30

x

3

+

x

15

3

+

x

4

+

20

x

3

+

10

x

4

200

x

800

4

2000

500

3

2

x

x

3

3

5

10

x

1

0,

x

2

0,

x

3

0,

x

x

4

4

x

4

5

0

10

Formulation d’un programme linéaire (PL)

I. Introduction

Après avoir illustrer par des exemples, comment un problème pratique peut être modélisé par un programme linéaire, l’étape qui va suivre sera certainement celle de la résolution de ce problème mathématique. La méthode graphique est l’une des premières méthodes utilisées à ce sujet.

Si on parle de résolution graphique alors on doit se limiter à une représentation à

deux variables et au plus à trois variables. Ceci indique que dans ce chapitre on examinera seulement les programmes linéaires à deux variables de décision.

II. Système d’axes

Une des conditions de la réussite de notre représentation graphique est le choix d'un système d’axes. Un mauvais choix peut rendre notre représentation non claire et imprécise.

peut rendre notre représentation non claire et imprécise. A cause des contraintes de non-négativité des variables

A cause des contraintes de non-négativité des variables de décision, nous nous

intéressons seulement au cadran positif (voir figure ci-dessus). Cette région s’appelle la région des solutions possibles du problème.

Prenons l’exemple 2 relatif au problème de médecine. Le programme linéaire est

le suivant :

12

Min

s c

.

.

+

x

2

5

1

x

1

x

1

x

+

2

x

2

+

8

x

2

x

x

1

1

6

0,

+

x

2

x

2

12

74

24

0

Un bon choix se base sur une lecture des différents paramètres du programme linéaire. Dans notre cas, on ne peut qualifier de bon, le choix de 20 comme unité dans les deux axes. Pour l’exemple, on peut choisir le système d’axes suivant :

x 2 12 6 3 6 12 24
x
2
12
6
3
6
12
24

x 1

III. Représentation graphique des contraintes

Parmi les solutions possibles d’un problème, il y a ceux qui vont satisfaire toutes les contraintes du programme, appelés solutions réalisables, et ceux qui vont satisfaire une partie ou aucune de ces contraintes, appelés solutions non réalisables. Une représentation graphique des inégalités (des contraintes) va nous permettre de déterminer l’ensemble des solutions réalisables. Revenons à l’exemple 2 du problème de médecine.

Une des contraintes de ce problème est celle relative au grain d’aspirine :

2

x

1

+ x

2

12

.

L’ensemble des solutions qui vérifient cette inégalité est le même que celui qui

vérifie 2

x

1

+ x

2

=

12

et 2

x

1

+ x > 12 . 2 x 2 12 6 3 6 12 24
+ x
>
12
.
2
x 2
12
6
3
6 12
24

x 1

L’ensemble des solutions qui correspond à l’équation est l’ensemble des points

de la droite l définie par

. Cette droite admet une valeur de la pente

égale à –2 et intercepte l’axe des ordonnées en 12 (voir figure ci-dessus).

x

2

=

2

x

1

+

12

13

L’inégalité

x

2

=

2

x

1

+

12

2

x

1

+ x

2

correspond à un demi-plan limité par la droite

. Or cette droite divise le plan en deux demi-plans ouverts donc

>

12

quel est le demi-plan à choisir ?

x 2 12 1 6 3 6 12 24
x 2
12
1
6
3
6
12 24

x 1

Pour ce faire, il suffit de prendre un point de l’un des demi-plans (c’est à dire

n’appartenant pas à la droite

. Par exemple le point de coordonnées (0,0) ne vérifie pas l’inégalité

1 au-dessus de la droite est celui recherché

(voir figure ci-dessus). L’espace hachuré représente le demi-plan fermé des solutions qui vérifient la contrainte 2 12 . Si on fait de même pour les deux autres contraintes du problème (voir figures

3 relatifs aux

ci-dessous), on obtient les deux autres demi-plans

solutions vérifiant respectivement les contraintes 5 8 74

) et voir s’il vérifie l’inégalité

x

2

=

2

x

1

+

12

2

2

x

x

1

1

+ x

+ x

2

2

>

>

12

12

donc le demi-plan

x

1

+ x

2

>

2

et

et

x

1

+

x

2

x

1

+

6

x

2

24

.

3 2 9.25 6 4 3 x 1 6 12 24 6 14,8 24
3
2
9.25
6
4
3
x 1
6
12
24
6
14,8
24

x 1

Une solution possible du problème est dite réalisable si et seulement si elle vérifie toutes les contraintes, c’est à dire si elle appartient aux trois demi-plans relatifs à chaque contrainte du programme linéaire, en d’autre terme à

3 (voir figure). x 2 Ensemble des solutions 12 réalisables 3 6 12 24
3 (voir figure).
x 2
Ensemble des
solutions
12
réalisables
3
6
12
24

x 1

1

2

Définition : Un ensemble E non vide est dit convexe si et seulement si pour tout

élément x et y de E et pour tout

[0,1],

x + (1-

) y

E.

14

On peut vérifier facilement que chacun des demi-plans 1 , 2 , 3 est convexe en vérifiant que pour toute paire de points P 1 et P 2 , l’ensemble des points qui forment le segment [P 1 P 2 ] appartient au demi-plan.

Théorème : L’intersection d’ensembles convexes (non vide) est convexe.

Propositions : L’ensemble des solutions réalisables (non vide) est convexe.

IV. Représentation de la fonction objectif

Soit z la valeur de la fonction objectif du problème de médecine Pour z=0, la fonction objectif est représentée de la manière suivante :

z = x

1

x 2 12 3 6 24 x 1 + x = 0 2
x 2
12
3
6 24
x 1 + x
= 0
2

x 1

+ x

2

.

Pour z=6, c’est à dire que le nombre de pilules à prescrire est égale à 6 pilules. La fonction objectif est représentée comme suit :

x 2 12 3 6 24 x + x = 6 1 2
x 2
12
3
6 24
x
+ x = 6
1
2

x 1

Chaque point du segment qui relie les points (6,0) à (0,6) représente des solutions qui engendrent une prescription avec 6 pilules des deux tailles. On peut tracer une infinité de droites qui représentent les différentes valeurs de la fonction objectif, toutes ces droites ont le même coefficient directeur (-1). Par suite elles sont parallèles entre elles. De plus on peut diminuer la valeur de z indéfiniment dans le sens indiqué dans la figure ci-dessous.

x 2 12 3 x 1 6 z = 6 z = 12 z =
x 2
12
3
x 1
6
z = 6
z = 12 z = 18

Le problème est de connaître qu’elle est la droite qui correspond à la valeur minimal de la fonction objectif ?

15

V. Recherche de la solution optimale

a. Résolution graphique Si nous retraçons l’ensemble des droites parallèles relatives à différentes valeurs de la fonction objectif sur la figure qui représente l’ensemble des solutions réalisables, on peut localiser la solution optimale. Elle correspond à la solution réalisable qui intercepte la droite à la plus petite valeur de z.

x 2 12 B 3 6 12 Z=10
x 2
12
B
3
6
12
Z=10

x 1

Dans notre exemple, la solution optimale est l’intersection des deux contraintes

. Une évaluation des coordonnées de ce point revient

à résoudre le système linéaire suivant :

2

x

1

+ x

2

12

et 5

x

1

+

8

x

2

74

2

x

5

x

1

1

+

+ x

8

2

x

2

=

=

1

7

2

Elle correspond d’après le graphique au point (2,8). Donc la prescription optimale est de 2 pilules de petite taille et 8 pilules de grande taille. Le nombre de pilules (la valeur de la fonction objectif) est égale à 10.

b. Résolution par énumération :

On remarque que la solution optimale du problème de médecine est un point extrême qui se trouve sur le bord de l’ensemble des solutions. Une telle solution est dite solution réalisable de base. On peut admettre le résultat suivant : « Si un programme linéaire admet une solution optimale alors il existe une solution réalisable de base pour laquelle la fonction objectif atteint la valeur optimale » Une méthode de résolution du programme linéaire consiste donc à déterminer les solutions réalisables de base (les points d’intersection des droites qui forment les contraintes) et à calculer pour chaque point la valeur de la fonction objectif. La solution du programme linéaire est la solution à qui on associe la valeur optimale de la fonction objectif.

16

x 2 12 A B 3 C D 6 12
x 2
12
A
B
3
C
D
6
12

x 1

Dans le problème de médecine, l’ensemble des solutions réalisables de base présente 4 points extrêmes A(0,12), B(2,8), C(23/11,126/11) et D(24,0). La valeur de la fonction objectif associée respectivement à A, B, C et D est 12, 10, 149/11 et 24. On vérifie bien que B est la solution optimale du problème avec une valeur optimale égale à 10.

VI. Exemples

Dans cette section on donne quelques exemples de résolution graphique de problèmes linéaires relatifs au
Dans cette section on donne quelques exemples de résolution graphique de problèmes linéaires relatifs au différents cas possibles :
Problème de maximisation
Max
100
x
+ 200
x
2
x 2
(2)
1
(4)
s
. c
.
x
+
x
150
(1)
1
2
A
B
4
x
+
2
x
440
(2)
1
2
110
x
+
4
x
480
(3)
C
1
2
(3)
x 1
90
(4)
Z=0
30
D (1)
0,
x
0
x 1
2
E
x 1
40
la solution optimale est B(40,110)
Problème avec solution non bornée Max - 2 x + 3 x 1 2 x
Problème avec solution non bornée
Max
- 2
x
+ 3
x
1
2
x 2
s
. c
.
x
5
(1)
1
(2)
2
x
3
x
6
(2)
1
2
0,
x
0
x 1
2
5
x 1
Z=0
(1)
On peut augmenter la valeur de la fonction objectif dans la direction des flèches
indéfiniment donc la solution est non bornée
17

Problème impossible

 

Min

3

x

1

+

2

x

2

x 2 (2) (1)
x 2 (2) (1)
x
2
(2)
(1)
x 2 (2) (1)
 

.

s c

.

x

1

+

2

x

2

2

(1)

 

2

x

1

+

4

x

2

8

(2)

x

1

0,

x

2

0

 

x

1

L’espace des solutions réalisables est vide, il est l’intersection des deux zones grises de la figure ci-dessus

Problème à solutions multiples

 

Max

x

1

 

+ 3

x

2

 
x 2 (2) (1) A (3) B 10 Z=0
x 2 (2) (1) A (3) B 10
x
2
(2)
(1)
A
(3)
B
10

Z=0

 

s

.

c

.

2

x

1

+

6

x

2

30

(1)

 

x

1

10

(2)

x

2

4

(3)

x 1 0,

x

2

0

 

x

1

 
 

L’ensemble des points décrit par le segment [AB] représente les solutions optimales du problème linéaire

 

Problème de dégénerescence

 

Max

x

1

+

x

2

x 2 (2) (1) B (3) A O C Z=0 x
x 2 (2) (1) B (3) A O C Z=0
x 2
(2)
(1)
B
(3)
A
O
C
Z=0

x

 

s

.

c

.

3

x

1

+

2

x

2

40

(1)

 

x 1

10

 

(2)

x

2

5

(3)

x 1 x

0,

2

 

0

 

1

 

La solution optimale B(10,5) est dite dégénérée si trois contraintes concourent en ce point.

18

VII. Analyse de sensibilité

Une analyse de sensibilité se résume à la recherche des intervalles de variations possibles des paramètres du programme linéaire sans que la solution optimale ne soit modifiée.

Question : De combien peut-on faire varier la quantité de codéine dans le problème de médecine sans changer la solution optimale.

Réponse :

x 2 12 B 3 6 12 Z=10
x 2
12
B
3
6
12
Z=10

x 1

On peut changer la valeur du second membre de la troisième contrainte jusqu'à ce que la droite de coefficient directeur –1/6 touche le point optimal (2,8). C’est à dire qu’on peut varier le second membre de la troisième contrainte de 24 jusqu'à 50 sans changer la solution optimale.

Question : De combien peut-on faire varier le profit engendré par la culture d’un hectare de tomates, dans le problème de l'agriculture, sans changer la solution optimale ?

Réponse :

x 2 (2) (4) A B 110 C (3) Z=0 30 D (1) E 40
x 2
(2)
(4)
A
B
110
C
(3)
Z=0
30
D
(1)
E
40

x 1

Soit la variation du profit engendré par la culture d’un hectare de tomate. La

fonction objectif est égale à

La solution demeure optimale si la pente de la fonction objectif reste toujours comprise entre la pente de la contrainte (1) et (3). Ceci est équivalent à dire que :

(100 + ) x

1

+ 200 x

2

1

200

1

50

100

100 +

4

On peut vérifier aussi que si :

< 50 alors la solution optimale est A

19

= 50 alors le problème est à solutions multiples : [AB]

50 < < 100 alors la solution optimale est B

= 100 alors le problème est à solutions multiples : [BC]

100 < < 300 alors la solution optimale est C

= 300 alors le problème est à solutions multiples : [CD]

> 300 alors la solution optimale est D

CHAPITRE 3

La Méthode de Simplexe

I. Introduction

On a présenté dans le chapitre précédent une procédure graphique pour résoudre un programme linéaire à deux variables. Par contre, dans la plupart des

20

problèmes réels, on a plus que deux variables à déterminer. Une procédure algébrique pour résoudre les programmes linéaires avec plus que deux variables fera l’objet de ce chapitre. C'est la méthode de simplexe.

Une implémentation de cette procédure à permis de résoudre des programmes avec un peu plus de quelques milliers de variables. Le programme Lindo qu’on présentera dans le chapitre 7 (en version pour étudiant) supporte au plus 200 variables et 100 contraintes.

Dans ce chapitre la méthode de simplexe est présentée pour les problèmes

Max

s c

.

t

x

A x

c

b

X 0

et en utilisant le problème de l’agriculteur :

Max

s c

.

.

100

x

1

4 x

x

x

x

1

1

1

x

+

1

+ 200

x

2

2

x

+

1

+

4

0 ,

x

2

2

x

2

x

2

150

440

480

90

0

II. Mise sous forme standard

La mise sous forme standard consiste à introduire des variables supplémentaires (une pour chaque contrainte) de manière a réécrire les inégalités ( ) sous la forme d'égalités. Chacune de ces variables représente le nombre de ressources non utilisés. On les appelle variable d'écart. La forme standard s'écrit donc :

Max

s c

c

t

x

A x

S

+

.

X

0 ,

S

b

0

Max

s c

.

c x

1

1

a

a

x

11 1

x

21 1

+

c

+

+

2

x

2

a

12

+

x

2

+

+

c

N

x

+

a

1

N

N

x

N

+

S

1

a

22

x

2

+

+

a

2

N

x

N

+

S

=

b

2

=

1

b

a

x x

1

x

1

+

a

2

x

2

M

M

1