Вы находитесь на странице: 1из 72

Académie Med VI Aviation

Civile

Recherche Opérationnelle

Pr. Karam ALLALI


Par K. Allali
Programmation linéaire
PL
problème d’optimisation consistant à
maximiser (ou minimiser) une fonction objectif
linéaire
de n variables de décision
soumises à un ensemble de contraintes
exprimées sous forme d’équations ou
d’inéquations linéaires
La terminologie est due à George B. Dantzig,
inventeur de l’algorithme du simplexe (1947)

Par K. Allali
Caractéristiques de la PL

•Décisions (Variables décisionnelles)


Qu’est-ce qu’on cherche à établir?
•Contraintes
Viennent définir l’ernsemble des
solutions possibles.
•Objectif
Maximisation - Minimisation

Par K. Allali
Forme générale d’un problème
d’optimisation
MAX (ou MIN): f0(X1, X2, …, Xn)

Sujet à: f1(X1, X2, …, Xn) <= b1


:
fk(X1, X2, …, Xn) >= bk
:
fm(X1, X2, …, Xn) = bm

Si toutes les fonctions sont linéaires, le problème


en est un de programmation linéaire.

Par K. Allali
Forme générale d’un problème en
programmation linéaire

MAX (ou MIN): c1X1 + c2X2 + … + cnXn

Sujet à: a11X1 + a12X2 + … + a1nXn <= b1


:
ak1X1 + ak2X2 + … + aknXn <= bk
:
am1X1 + am2X2 + … + amnXn = bm

Par K. Allali
Propriétés d’un modèle de
programmation linéaire

•Linéarité
Équations polynômiales de degré 1

a 1X + a 2 X + … + a n X
1
1
1
2
1
n

•Indivisibilité & continuité


Domaine des variables ℜ

Par K. Allali
Propriétés d’un modèle de
programmation linéaire (Suite)

•Séparabilité & additivité


c1X1 + c2X2 + … + cnXn

•Fonction objectif unique


Min coût, Max profit, …

•Données considérées certaines

Par K. Allali
Exemple

Equipement inc. produit deux types de


chargeuses: A et B

A B
Pompes 1 1
M-O 9 heures 6 heures
Tuyaux 12 m 16 m
Profit unitaire $350 $300

Il y a 200 pompes, 1566 heures en M-O, et


2880 mètres de tuyaux disponibles.
Par K. Allali
5 Étapes pour la formulation du
problème LP

Comprendre le problème.

2. Identifier les variables décisionnelles.


X1 = nbre de chargeuses A produites
X2 = nbre de chargeuses B produites

3. Définir la fonction objectif en une combinaison


linéaire de variables décisionnelles.
MAX: 350X1 + 300X2
Par K. Allali
5 Étapes pour la formulation du
problème LP (Suite)

4. Définir les contraintes en une combinaison


linéaire de variables décisionnelles.
1X1 + 1X2 <= 200 } pompes
9X1 + 6X2 <= 1566 } M.-O.
12X1 + 16X2 <= 2880 } tuyaux

5. Identifier limites supérieures ou inférieures sur les


variables décisionnelles.
X1 >= 0
X2 >= 0
Par K. Allali
Sommaire du modèle LP
Equipement inc.

MAX: 350X1 + 300X2

S.T.: 1X1 + 1X2 <= 200


9X1 + 6X2 <= 1566
12X1 + 16X2 <= 2880
X1 >= 0
X2 >= 0

Par K. Allali
Résoudre un problème PL:
Une approche intuitive

Idée: Chaque chargeuse A (X1) génère le profit


unitaire le plus élevé (350$), faisons-en le plus
possible!

Combien en fabriquer?

Posons X2 = 0
1ère contrainte : 1X1 <= 200
2è contrainte : 9X1 <=1566 ou X1 <=174
3è contrainte : 12X1 <= 2880 ou X1 <= 240

Par K. Allali
Résoudre un problème PL:
Une approche intuitive (Suite)

Si X2=0, la valeur maximale de X1 est 174 et le


profit total est:

(350$ * 174) + (300$ * 0) = 60 900$

C’est une solution possible mais est-elle optimale?

Non!
Par K. Allali
Résolution problème PL:
Une approche graphique
•Les contraintes d’un problème PL définissent la
région de faisabilité.

•Le meilleur point dans la zone de faisabilité


correspond à la solution optimale.

•Pour des problèmes à deux variables, il est facile


de tracer la zone de faisabilité et de trouver la
solution optimale.

Par K. Allali
X2 Tracé de la première contrainte
250

(0, 200)
200
Contrainte des pompes
X1 + X2 = 200
150

100

50
(200, 0)
0
0 50 100 150 200 250 X1

Par K. Allali
X2 Tracé de la deuxième contrainte
(0, 261)
250
Contrainte de main-d’oeuvre

200 9X1 + 6X2 = 1566

150

100

50

(174, 0)
0
0 50 100 150 200 250 X1

Par K. Allali
X2 Tracé de la troisième contrainte
250
(0, 180)

200

150
Contrainte des tuyaux
12X1 + 16X2 = 2880
100

Zone de faisabilité
50

(240, 0)
0
0 50 100 150 200 250 X1

Par K. Allali
Tracé d’une droite de la fonction
X2 objectif
250

200

(0, 116.67) Fonction objectif


150
350X1 + 300X2 = 35000

100

50 (100, 0)

0
0 50 100 150 200 250 X1

Par K. Allali
Un deuxième tracé de la fonction
X2 objectif
250

(0, 175) Fonction objectif


200
350X1 + 300X2 = 35000

Fonction objectif
150
350X1 + 300X2 = 52500

100

(150, 0)
50

0
0 50 100 150 200 250 X1

Par K. Allali
X2
Tracé de la solution optimale
250

Fonction objectif
200
350X1 + 300X2 = 35000

150
Solution optimale

100
Fonction objectif
350X1 + 300X2 = 52500
50

0
0 50 100 150 200 250 X1

Par K. Allali
Calcul de la solution optimale
La solution optimale se trouve à l’intersection des
contraintes de pompes et de m-o.

Où:
X1 + X2 = 200 (1)
9X1 + 6X2 = 1566 (2)

De (1) nous avons:


X2 = 200 -X1 (3)

Par K. Allali
Calcul de la solution optimale (Suite)

En substituant (3) pour X2 dans (2) nous avons:

9X1 + 6 (200 -X1) = 1566


ce qui fait X1 = 122

La solution optimale est :

X1 = 122
X2 = 200-X1=78

Profit total = (350$*122) + (300$*78) = 66 100$


Par K. Allali
Situations spéciales avec problèmes PL

Plusieurs anomalies peuvent survenir:


Solutions optimales multiples
Contraintes redondantes
Problème non-contraint (“Unbounded
Solutions”)
Infaisable

Par K. Allali
Exemple de solutions optimales
X2 multiples
250
Tracé de la fonction objectif
200 450X1 + 300X2 = 78300

150

100

Solutions optimales
50 équivalentes

0
0 50 100 150 200 250 X1

Par K. Allali
Exemple d’une contrainte redondante
X2
250
Contrainte des tuyaux

200
Contrainte des pompes

150

Contrainte de la M-O
100

Zone de faisabilité
50

0
0 50 100 150 200 250 X1

Par K. Allali
Exemple d’une solution
X2
“unbounded”
1000 Fonction objectif
X1 + X2 = 600 -X1 + 2X2 = 400

800
Fonction objectif
X1 + X2 = 800

600

400

200

X1 + X2 = 400
0
0 200 400 600 800 1000 X1

Par K. Allali
X2 Exemple d’infaisabilité
250

200 X1 + X2 = 200

Zone de
faisabilité de la
150 deuxième
contrainte

100
Zone de
faisabilité de la
première
50
contrainte
X1 + X2 = 150
0
0 50 100 150 200 250 X1

Par K. Allali
Programmation linéaire
(Problème de la diète)
Le problème de la diète: on veut établir un menu journalier au
moindre coût, tout en satisfaisant les besoins alimentaires
suivants:
Énergie :2000 calories
Protéines : 55 g
calcium : 800 mg

Portio Energie Proteine Calcium Prix par portion


n (calories) (g) (mg) (cent)
Gruau 28 g 110 4 2 3
poulet 100 g 205 32 12 24
Oeufs 2 gros 160 13 54 13
Lait 237 cl 160 8 285 9
Tarte 170 g 420 4 22 20
agneaux et 260 g 260 14 80 19
fèves
Par K. Allali
Programmation linéaire
(Problème de la diète)

Un exemple de menu: 10 portions de agneau pour un coût total


de 1.90$. Un peu dur sur l’estomac!
On va donc imposer des contraintes sur le nombre de portions:
Gruau : Pas plus de 4 portions par jour
Poulet : Pas plus de 3 portions par jour
Œufs : Pas plus de 2 portions
Lait : Pas plus de 8 portions
Tarte : Pas plus de 2 portions
agneau : Pas plus de 2 portions

À partir de ces données, il est possible de créer un nouveau


menu: 8 portions de lait et 2 portions de tarte répondent aux
besoins alimentaires pour seulement 1.12$ Est-ce qu’il existe
d’autres combinaisons plus avantageuses?

Par K. Allali
Programmation linéaire
(Problème de la diète)

Les variables de décision: x1…x6 représentent le nombre de


portions des 6 types d’aliments.
Les contraintes:
0 ≤ x1 ≤ 4
0 ≤ x2 ≤ 3
0 ≤ x3 ≤ 2
0 ≤ x4 ≤ 8
0 ≤ x5 ≤ 2
0 ≤ x6 ≤ 2
110x1 + 205x2+160x3+160x4+420x5+260x6 ≥ 2000
4x1 + 32x2+13x3+8x4+4x5+14x6 ≥ 55
2x1 + 12x2+54x3+285x4+22x5+80x6 ≥ 800
L’objectif : minimiser le coût du menu:
3x1 + 24x2+13x3+9x4+20x5+19x6

Par K. Allali
Programmation linéaire
(Problème de la diète)
•Les variables de décision: x1…x6 représentent le nombre de portions des 6
types d’aliments.
•Les contraintes:
–0 ≤ x1 ≤ 4
–0 ≤ x2 ≤ 3
–0 ≤ x3 ≤ 2
–0 ≤ x4 ≤ 8
–0 ≤ x5 ≤ 2
–0 ≤ x6 ≤ 2
–110x1 + 205x2+160x3+160x4+420x5+260x6 ≥ 2000
–4x1 + 32x2+13x3+8x4+4x5+14x6 ≥ 55
–2x1 + 12x2+54x3+285x4+22x5+80x6 ≥ 800
•L’objectif : minimiser le coût du menu:
–3x1 + 24x2+13x3+9x4+20x5+19x6
Par K. Allali
Programmation linéaire
(Problème du politicien)
Vous voulez gagner une élection. Votre compté à 3 types de
secteurs:
urbain : 100,000 personnes
banlieue : 200,000 personnes
agricole : 50,000 personnes
Pour avoir le plein pouvoir, vous devez remporter une majorité
de votes dans les 3 régions.
Dans votre programme électoral, vous avez 4 priorités. Votre
équipe a estimé le nombre de votes qu’apporte un
investissement de 1,000$ pour chacune de ces priorités et dans
chacun des secteurs de votre compté.
stratégie urbain banlieue agricole

construire des routes -2 5 3


contrôle des armes à feu 8 2 -5
subvention aux fermes 0 0 10
taxe sur l’essence 10 0 -2
Par K. Allali
Programmation linéaire
(Problème du politicien)

Votre tâche consiste à estimer le montant minimum


d’argent à dépenser pour remporter une majorité de
vote dans chacun des secteurs.
Variables de décision:
x1 : nombre de milliers de $ en publicité pour la construction
de routes,
x2 : nombre de milliers de $ en publicité pour le contrôle des
armes à feu,
x3 : nombre de milliers de $ en publicité pour les subventions
aux fermes,
x4 : nombre de milliers de $ en publicité pour l’utilisation de
la taxe sur l’essence dans l’amélioration des transports en
commun.

Par K. Allali
Programmation linéaire
(Problème du politicien)

Formellement
Minimiser x1+x2+x3+x4

Contraintes
-2x1 + 8x2 + 0x3 + 10x4 ≥ 50
5x1 + 2x2 + 0x3 + 0x4 ≥ 100
3x1 - 5x2 + 10x3 - 2x4 ≥ 25
x1,x2,x3,x4 ≥ 0

Par K. Allali
Programmation linéaire
(Définitions)

Une solution est réalisable si elle satisfait toutes les contraintes.


Une solution est optimale si elle est réalisable et qu’elle maximise
l’objectif.
Forme standard:
n
maximiser ∑c x
j =1
j j

sous contraintes
n

∑a ij x j ≤ bi ∀i = 1,2,..., m
j=1

xj ≥ 0 ∀ j = 1,2,..., n

Par K. Allali
Méthode du simplexe

Un premier exemple:
maximiser 5x1 + 4x2 + 3x3
sous contraintes:
2x1 + 3x2 + x3 ≤ 5
4x1 + x2 + 2x3 ≤ 11
3x1 + 4x2 + 2x3 ≤ 8
x1,x2,x3 ≥ 0

Par K. Allali
Méthode du simplexe

Première étape: introduire des nouvelles variables:


x4 = 5 − 2 x1 − 3x2 − x3
x5 = 11 − 4 x1 − x2 − 2 x3
x6 = 8 − 3x1 − 4 x2 − 2 x3
z = 5 x1 + 4 x2 + 3 x3

Les variables x4, x5 et x6 sont appelées variables


d’écarts
On peut redéfinir le problème :
maximiser z sous contraintes : x1,x2,x3,x4,x5,x6 ≥ 0

Par K. Allali
Méthode du simplexe

La stratégie de la méthode du simplexe est


d’améliorer le résultat par des itérations successives.
Première solution réalisable:
x1= 0, x2 = 0, x3 = 0, x4 = 5,x5 = 11, x6 =8
z=0
Augmentons la valeur de x1 tout en laissant x2=x3=0:
x1=1 → z = 5 (x4 = 3, x5 = 7, x6 = 5)
x1=2 → z = 10 (x4 = 1, x5 = 3, x6 = 2)
x1=3 → z = 15 (x4 = x5 = x6 = -1)

Nouvelle solution (x1 = 5/2):


x1= 5/2, x2 = 0, x3 = 0, x4 = 0,x5 = 1, x6 = ½
z = 12.5

Par K. Allali
Méthode du simplexe
Nouveau système d’équations:
5 3 1 1
x1 = − x2 − x3 − x4
2 2 2 2
x5 = 1 + 5 x2 + 2 x4
1 3 1 3
x6 = − x2 − x3 − x4
2 2 2 2
25 7 1 5
z = − x2 + x3 − x4
2 2 2 2

Comme à l’itération précédente, nous voulons


augmenter la valeur de z. Remarquez que:
Si on augmente x2, la valeur de z diminue,
Si on augmente x4, la valeur de z diminue.

Par K. Allali
Méthode du simplexe
Nous allons donc augmenter la valeur de x3.
Le mieux que nous pouvons faire est x3 = 1:
x1= 2, x2 = 0, x3 = 1, x4 = 0,x5 = 1, x6 =0
z = 13
Nouveau système:
x3 = 1 + x2 + 3x4 − 2 x6
x1 = 2 − 2 x2 − 2 x4 + x6
x5 = 1 + 5 x2 + 2 x4
z = 13 − 3x2 − x4 − x6

Il est maintenant impossible d’augmenter une valeur sans diminuer la valeur de


z. Le problème est donc résolu.

Par K. Allali
Interprétation géométrique

Soit le problème suivant:


maximiser 3x1+5x2
sous contraintes:
x1 + x2 ≤ 4 x1+3x2≤6

x1 + 3x2 ≤ 6
x1,x2 ≥ 0

x11+x22≤4

Par K.ofAllali
Référence : A. Levitin, Introduction to the design and analysis Algorithms, Addison-Weslay,2006
Interprétation géométrique

=434−−
xxx114 == −x2x1x−− x+
x2 x
2 3 3 4

xxx452 ===261−

+25xxx312−−−x334xx23
zz ===12 -x+235x−x2 22−x34 x3
3x1+5x2=14
3 x1+
14 3x1+5x2=12
x1+3x2≤6

Première solution
Deuxième
Troisième solution faisable:
faisable:
xxx1=x2=0
11=4,x
=3,x22=0
=1

x1+x2≤4
3x1+5x2=0

Par K. Allali
Interprétation géométrique

Théorème des points extrêmes:


Soit un problème de programmation
linéaire ayant une région bornée de x1+3x2≤6
solutions réalisables contenant au
moins une solution optimale, une de
ces solutions optimales se trouve
obligatoirement sur un point extrême.

x1+x2≤4

Par K. Allali
Méthode des tableaux
Le système suivant
x4 = 5 − 2 x1 − 3 x2 − x3
x5 = 11 − 4 x1 − x2 − 2 x3
x6 = 8 − 3 x1 − 4 x2 − 2 x3
z = 5 x1 + 4 x2 + 3x3

peut être écrit sous cette forme


2 x1 + 3 x2 + x3 + x4 =5
4 x1 + x2 + 2 x3 + x5 = 11
3 x1 + 4 x2 + 2 x3 + x6 = 8
− z + 5 x1 + 4 x2 + 3 x3 =0

Par K. Allali
Méthode des tableaux
Ce système peut être représenté par un
tableau (matrice):

2 3 1 1 0 0 5
4 1 2 0 1 0 11
3 4 2 0 0 1 8
5 4 3 0 0 0 0

Par K. Allali
Méthode des tableaux
Étape 1: Sélectionner le nombre le plus élevé de la
dernière ligne (on ne considère pas le nombre le plus à
droite puisqu’il représente la valeur de -z). La colonne
qui contient ce nombre devient la colonne pivot.

2 3 1 1 0 0 5
4 1 2 0 1 0 11
3 4 2 0 0 1 8
5 4 3 0 0 0 0

Par K. Allali
Méthode des tableaux
Étape 2: pour chaque nombre positif r de la colonne pivot, vérifier
le ratio s/r où s est le nombre le plus à droite sur la ligne du r. La
ligne avec le plus petit ratio r/s est la ligne pivot.

2 3 1 1 0 0 5
4 1 2 0 1 0 11
3 4 2 0 0 1 8
5 4 3 0 0 0 0

Par K. Allali
Méthode des tableaux
Étape 3: Diviser chacun des nombres de la ligne pivot
par le nombre pivot. Le nombre pivot est le nombre à
l’intersection de la colonne pivot et de la ligne pivot.

1 3/2 ½ ½ 0 0 5/2
4 1 2 0 1 0 11
3 4 2 0 0 1 8
5 4 3 0 0 0 0

Par K. Allali
Méthode des tableaux
Étape 4: Pour chacune des lignes restantes, soustraire
de chacun des nombres de la ligne un multiple du
nombre pivot de tel sorte que le nombre sur la
colonne pivot soit égal à 0.
1 3/2 ½ ½ 0 0 5/2
0 -5 0 -2 1 0 1
0 -1/2 1/2 -3/2 0 1 1/2
0 -7/2 1/2 -5/2 0 0 -25/2

Par K. Allali
Méthode des tableaux
On itère jusqu’à ce que tous les nombres de
la dernière ligne soient négatifs ou égalent
à 0.
1 2 0 2 0 -1 2
0 -5 0 -2 1 0 1
0 -1 1 -3 0 2 1

0 -3 0 -1 0 -1 -13

Par K. Allali
Un deuxième exemple
maximiser 5x1 + 5x2 + 3x3
sous contraintes x1 + 3x2 + x3 ≤ 3
-x1 + + 3x3 ≤ 2
2x1 x2 + 2x3 ≤ 4
2x1 - 3x2 - x3 ≤ 2
x1, x2, x3, ≥ 0

Par K. Allali
Exemple 2
Introduction des variables
d’écarts
x4 = 3 - x1 - 3x2 - x3
x5 = 2 + x1 - 3x3
x6 = 4 - 2x1 + x2 - 2x3
x7 = 2 - 2x1 - 3x2 + x3
z = 5x1 + 5x2 + 3x3

Représentation par tableau

1 3 1 1 0 0 0 3
-1 0 3 0 1 0 0 2
2 -1 2 0 0 1 0 4
2 3 -1 0 0 0 1 2
5 5 3 0 0 0 0 0
Par K. Allali
Exemple 2
Itération 1
Étape 1:
1 3 1 1 0 0 0 3
-1 0 3 0 1 0 0 2
2 -1 2 0 0 1 0 4
2 3 -1 0 0 0 1 2
5 5 3 0 0 0 0 0

Par K. Allali
Exemple 2
Itération 1
Étape 2: s/r
1 3 1 1 0 0 0 3 3
-1 0 3 0 1 0 0 2 X
2 -1 2 0 0 1 0 4 2
2 3 -1 0 0 0 1 2 1
5 5 3 0 0 0 0 0

Par K. Allali
Exemple 2
Itération 1
Étape 3:
1 3 1 1 0 0 0 3
-1 0 3 0 1 0 0 2
2 -1 2 0 0 1 0 4
1 3/2 -1/2 0 0 0 1/2 1
5 5 3 0 0 0 0 0

Par K. Allali
Exemple 2
Itération 1
Étape 4:
0 3/2 3/2 1 0 0 -1/2 2
0 3/2 5/2 0 1 0 1/2 3
0 -4 3 0 0 1 -1 2
1 3/2 -1/2 0 0 0 1/2 1
0 -5/2 11/2 0 0 0 -5/2 -5

Il y a un nombre positif dans la dernière ligne:


il faut faire une autre itération

Par K. Allali
Exemple 2
Itération 2
Étape 1:
0 3/2 3/2 1 0 0 -1/2 2
0 3/2 5/2 0 1 0 1/2 3
0 -4 3 0 0 1 -1 2
1 3/2 -1/2 0 0 0 1/2 1
0 -5/2 11/2 0 0 0 -5/2 -5

Par K. Allali
Exemple 2
Itération 2
Étape 2: s/r
0 3/2 3/2 1 0 0 -1/2 2 4/3
0 3/2 5/2 0 1 0 1/2 3 6/5
0 -4 3 0 0 1 -1 2 2/3
1 3/2 -1/2 0 0 0 1/2 1 X
0 -5/2 11/2 0 0 0 -5/2 -5

Par K. Allali
Exemple 2
Itération 2
Étape 3:
0 3/2 3/2 1 0 0 -1/2 2
0 3/2 5/2 0 1 0 1/2 3
0 -4/3 1 0 0 1/3 -1/3 2/3
1 3/2 -1/2 0 0 0 1/2 1
0 -5/2 11/2 0 0 0 -5/2 -5

Par K. Allali
Exemple 2
Itération 2
Étape 4:
0 7/2 0 1 0 -1/2 0 1
0 29/6 0 0 1 -5/6 4/3 4/3
0 -4/3 1 0 0 1/3 -1/3 2/3
1 5/6 0 0 0 1/6 1/3 4/3
0 29/6 0 0 0 -11/6 -2/3 -26/3

Il y a un nombre positif dans la dernière ligne:


il faut faire une autre itération

Par K. Allali
Exemple 2
Itération 3
Étape 1:
0 7/2 0 1 0 -1/2 0 1
0 29/6 0 0 1 -5/6 4/3 4/3
0 -4/3 1 0 0 1/3 -1/3 2/3
1 5/6 0 0 0 1/6 1/3 4/3
0 29/6 0 0 0 -11/6 -2/3 -26/3

Par K. Allali
Exemple 2
Itération 3
Étape 2: s/r
0 7/2 0 1 0 -1/2 0 1 X
0 29/6 0 0 1 -5/6 4/3 4/3 24/87
0 -4/3 1 0 0 1/3 -1/3 2/3 X
1 5/6 0 0 0 1/6 1/3 4/3 8/5
0 29/6 0 0 0 -11/6 -2/3 -26/3

Par K. Allali
Exemple 2
Itération 3
Étape 3:
0 7/2 0 1 0 -1/2 0 1
0 1 0 0 6/29 -5/29 8/29 8/29
0 -4/3 1 0 0 1/3 -1/3 2/3
1 5/6 0 0 0 1/6 1/3 4/3
0 29/6 0 0 0 -11/6 -2/3 -26/3

Par K. Allali
Exemple 2
Itération 3
Étape 4:
0 7/2 0 1 0 -1/2 0 1
0 1 0 0 6/29 -5/29 8/29 8/29
0 0 1 0 8/29 3/29 1/29 30/29
1 0 0 0 -5/29 9/29 -28/29 32/29
0 0 0 0 -1 -1 -2 -10

Solution optimale: x1 = 32/29, x2 = 8/29, x3 = 30/29


z = 10

Par K. Allali
Convertir un problème linéaire
sous la forme standard.
Rappel:
n
maximiser ∑c x
j =1
j j

sous contraintes
n

∑a ij x j ≤ bi ∀i = 1,2,..., m
j=1

xj ≥ 0 ∀ j = 1,2,..., n

Si le problème à résoudre n’est pas sous cette


forme, il faut le transformer avant d’appliquer
l’algorithme du simplexe.
Par K. Allali
Convertir un problème linéaire
sous la forme standard.
4 possibilités:
1. L’objectif est une minimisation au lieu
d’une maximisation.
2. Certaines variables n’ont pas de
contrainte de non négativité.
3. Certaines contraintes sont des égalités.
4. Certaines contraintes sont des inégalités
de type « plus grand que » au lieu de
« plus petit que ».

Par K. Allali
Convertir un problème linéaire
sous la forme standard.
Un exemple:

minimiser -2x1 + 3x2


sous contraintes x1 + x2 = 7
x1 - 2x2 ≤ 4
x1 ≥ 0

Par K. Allali
Convertir un problème linéaire
sous la forme standard.
1. Il est demandé de minimiser au lieu de
maximiser.

Solution : Inverser les signes de la fonction


objectif:
maximiser 2x1 - 3x2
sous contraintes x1 + x2 = 7
x1 - 2x2 ≤ 4
x1 ≥ 0

Par K. Allali
Convertir un problème linéaire
sous la forme standard.
1. Certaines variables n’ont pas de contrainte de non
négativité.

Solution : On remplace chacune des variables xj qui n’a


pas de contrainte de non négativité par xj’ – xj’’ et on
ajoute les contraintes de non négativité pour les deux
nouvelles variables.
maximiser 2x1 - 3x2’ + 3x2’’
sous contraintes x1 + x2’ - x2’’ = 7
x1 - 2x2’ + 2x2’’ ≤ 4
x1, x2’, x2’’ ≥ 0

Par K. Allali
Convertir un problème linéaire
sous la forme standard.
1. Certaines contraintes sont des égalités

Solution : Si on a la contrainte x = y, cette égalité peut


être représenté par les deux inégalités x≥y et x≤y.

maximiser 2x1 - 3x2’ + 3x2’’


sous contraintes x1 + x2’ - x2’’ ≤ 7
x1 + x2’ - x2’’ ≥ 7
x1 - 2x2’ + 2x2’’ ≤ 4
x1, x2’, x2’’ ≥ 0

Par K. Allali
Convertir un problème linéaire
sous la forme standard.
1. Certaines contraintes sont des inégalités de type « plus
grand que » au lieu de « plus petit que »

Solution : on peut convertir l’inégalité en multipliant la


contrainte par -1.

maximiser 2x1 - 3x2’ + 3x2’’


sous contraintes x1 + x2’ - x2’’ ≤ 7
-x1 - x2’ + x2’’ ≤ -7
x1 - 2x2’ + 2x2’’ ≤ 4
x1, x2’, x2’’ ≥ 0

Par K. Allali
Convertir un problème linéaire
sous la forme standard.
Il est maintenant possible de résoudre le problème
par la méthode du simplexe.

maximiser 2x1 - 3x2 + 3x3


sous contraintes x1 + x2 - x3 ≤ 7
-x1 - x2 + x3 ≤ -7
x1 - 2x2 + 2x3 ≤ 4
x1, x2, x3 ≥ 0

Par K. Allali

Вам также может понравиться