Vous êtes sur la page 1sur 14

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

Simplexe

Dualit
e

Recherche operationnelle
Tentative de definition

Programmation lineaire et recherche


operationnelle

Ensemble de methodes (algorithmiques, mathematiques,


modelisation) afin de prendre des decisions optimales ou proches
de loptimum dans des probl`emes complexes, qui traitent de la
maximisation dun profit ou la minimisation dun co
ut.

Ioan Todinca

Comment aller le plus vite dOrl


eans `a Berlin, en voiture?

Ioan.Todinca@univ-orleans.fr
t
el. 02 38 41 72 93
bureau : en bas `
a gauche

Comment ordonnancer les t


aches dun projet en fonction de la

main duvre, tout en minimisant sa duree?

Comment investir ses 1000 euros d


economie de sorte `a

maximiser le profit obtenu apr`es deux ans?

1/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

2/56

Introduction

M
ethode graphique

Des probl`emes de RO que vous savez resoudre

Simplexe

Dualit
e

Programmation lineaire

Trouver un (plus court) chemin entre deux villes

Les probl`emes de programmation lineaire (PL) sont des probl`emes


doptimisation o`
u la fonction objectif et les contraintes sont toutes
lineaires.

plus courts chemins dans les graphes

Broadcast de co
ut minimum dans un reseau

arbres recouvrants de poids minimum.

Mod
elisation dun probl`eme reel

Envoi dun maximum dinformation dans un r


eseau

probl`eme du flot maximum.

Si lon constate que ce probl`


eme sexprime comme un PL, le

resoudre

3/56

4/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

Pourquoi un cours sur la programmation lineaire?

Simplexe

Plan du cours

Objectif : apprendre `a modeliser les probl`emes reels et `a resoudre


les programmes lineaires.

1. Introduction + une approche nave : la methode graphique

De nombreux probl`
emes reels peuvent etre exprimes comme

2. Lalgorithme du simplexe

des programmes lineaires.

3. Simplexe : comment eviter les pi`eges

Les programmes lin


eaires peuvent etre resolus efficacement

4. Dualite

par certains algorithmes.

5. Programmation lineaire en nombres entiers

Ce sont dexcellents exemples de questions pratiques dont la

resolution necessite une combinaison de methodes


algorithmiques, de mathematiques elementaires et de bon
sens.

Bibliographe : [V. Chvatal, Linear Programming]

5/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Dualit
e

Un exemple : le probl`eme

6/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Le meme exemple apr`es modelisation

Considerons un agriculteur qui poss`ede des terres, de superficie


egale `a H hectares, dans lesquelles il peut planter du ble et du
mas. Lagriculteur poss`ede une quantite E dengrais et I
dinsecticide. Le ble necessite une quantite Eb dengrais par
hectare et Ib dinsecticide par hectare. Les quantites
correspondantes pour le mas sont notees Em et Im .

maximiser
contraintes

Soit Pb le prix de vente du ble et Pm celui du mas. Si lon note


par xb et xm le nombre dhectares `a planter en ble et en mas,
comment exprimer le fait que lagriculteur souhaite maximiser son
gain, tout en restant dans les limites de ses ressources?

7/56

Pb xb + Pm xm
xb + xm H
xb 0
xm 0
Eb xb + Em xm E
Ib xb + Im xm I

(maximiser le revenu net)


(surface)
(engrais)
(insecticide)

8/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

Simplexe

Un autre exemple

Programme lineaire : definition

Vous disposez de 10000 euros que vous souhaitez investir. Votre


banque vous propose trois types dinvestissements. Pour
linvestissement A le rendement est de 9% et la somme maximum
que lon peut investir est de 4000 euros. Pour linvestissement B
on peut investir jusqu`a 5000 euros, avec un rendement de 4%.
Enfin le produit C a un rendement de 8% pour un montant
maximum de 5000 euros.

Variables r
eelles :

x1 , x2 , . . . , xn

Fonction objectif lin


eaire, `a optimiser (min ou max) :

z = c1 x1 + c2 x2 + + cn xn

Contraintes lin
eaires (egalites ou inegalites) :

a11 x1 + a12 x2 + + a1n xn b1


a21 x1 + a22 x2 + + a2n xn b2

am1 x1 + am2 x2 + + amn xn = bm

1. Exprimer ce probl`eme comme un PL. Donner la solution


optimale.
2. La banque change davis. Si vous souhaitez faire un
investissement (A, B ou C) il faut y mettre la somme exacte
(respectivement 4000, 5000, et 5000 euros). Mettre `a jour
votre mod`ele ; est-ce toujours un PL?

Solution : toute affectation des variables qui respecte les


contraintes
Solution optimale : solution qui optimise (maximise ou minimise)
la fonction objectif.
9/56

Introduction

M
ethode graphique

Dualit
e

Simplexe

Dualit
e

10/56

Introduction

M
ethode graphique

La methode graphique

Simplexe

Dualit
e

La methode graphique

Idee : representer graphiquement les contraintes et visualiser


lensemble des solutions. Identifier une solution optimale.

Variables : x et y (ou x1 et x2 ).
Lensemble de points qui satisfont une
equation (egalite)

Exemple :

lineaire forme une droite.

max
contraintes :

x1
2x1
x1
2x1
x1

Les points qui satisfont une in


egalite lineaire forment un

+ x2
+ x2 14
2x2 8
x2 10

0
x2
0

demi-plan.

Lensemble des solutions dun ensemble de contraintes :

polygone convexe.

Solution optimale (si elle existe) : sommet du polygone.

11/56

12/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

Trois variables ou plus

Simplexe

Questions

Variables : x1 , . . . , xn

Donner un exemple de programme lin


eaire qui na pas de

Lensemble de points qui satisfont une


equation (egalite)

solution.

lineaire forme un hyperplan.

Proposer un PL qui a des solutions, mais pas de solution

Les points qui satisfont une in


egalite lineaire forment un

optimale.

demi-espace.

Proposer un PL qui a plusieurs solutions optimales.

Lensemble des solutions dun ensemble de contraintes :

Essayer de r
esoudre par la methode graphique le syst`eme

poly`edre convexe.

suivant :

Solution optimale (si elle existe) : sommet du poly`


edre.

objectif :
contraintes :

Limites : precision ; maximum 3 variables.


Si vous arrivez `a visualiser un PL avec 4 variables ou plus... pensez
`a consulter un bon psy.

max 2x + y
x2 + y2 1
x 0, y 0

13/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Dualit
e

14/56

Introduction

Algorithme du simplexe

M
ethode graphique

Simplexe

Dualit
e

PL sous forme standard

[G. Dantzig, 1947]

max

n
X

cj xj

j=1

Algorithme de r
esolution de programmes lineaires
Facile `
a comprendre et `a implanter

contraintes :

Efficace en pratique, m
eme pour un nombre important de

n
X
j=1

variables et de contraintes

aij xj bi

xj 0

Efficacit
e au pire cas : on en reparlera, voir aussi cours

dalgorithmique.

i = 1, 2, . . . , m
j = 1, 2, . . . , n

Question : comment mettre un probl`eme quelconque sous forme


standard?

15/56

16/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

Simplexe : un exemple

Simplexe

Dualit
e

Variables decart
PL equivalent :

max
5x1
contraintes 2x1
4x1
3x1
x1 ,

+ 4x2
+ 3x2
+ x2
+ 4x2
x2 ,

+ 3x3
+ x3
+ 2x3
+ 2x3
x3

x4
x5
x6
z

5
11
8
0

= 5 2x1
= 11 4x1
= 8 3x1
=
5x1

3x2
x2
4x2
+ 4x2

x3
2x3
2x3
+ 3x3

max z, sous contraintes : x1 , x2 , x3 , x4 , x5 , x6 0


Solution initiale : x1 = x2 = x3 = 0, x4 = 5, x5 = 11, x6 = 8 ;
z = 0.
Si on augmente x1 , ca augmente z!

17/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

18/56

Introduction

M
ethode graphique

Augmenter x1

Dualit
e

Nouveau dictionnaire

x1 =
x5 =
x6 =

1. De combien ?
x1 52 car x4 = 5 2x1 3x2 x3 0.
2. Nouvelle solution ?
x1 = 12 , x2 = x3 = x4 = 0, x5 = 1, x6 =

Simplexe

1
2

;z=

25
2 .

3. Reformuler le syst`eme afin dexprimer les variables x1 , x5 , x6 en


fonction de x2 , x3 , x4 .
x1 = 52 23 x2 12 x3 21 x4

Augmenter qui?
x3

19/56

5
2

1 +
1
2 +
25
2

3
2 x2
5x2
1
2 x2

1
2 x3

7
2 x2

De combien?
x3 = 1 (x6 = . . . )

1
2 x3

+
+

1
2 x4
2x4
3
2 x4

1
2 x3

5
4 x4

Quobtient-on?
`a droite : x2 , x3 , x6

20/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

Nouveau dictionnaire (et de trois...)

Simplexe

Dualit
e

Algorithme du simplexe : cas general


Entree :
n
X

max
x3
x1
x5
z

= 1
= 2
= 1
= 13

+ x2
2x2
+ 5x2
3x2

+ 3x4 2x6
2x4 + x6
+ 2x4
x4 x6

cj xj

j=1

contraintes :

n
X

aij xj bi

i = 1, 2, . . . , m

j=1

xj 0

Solution actuelle : x2 = x4 = x6 = 0, x1 = 2, x3 = 1, x5 = 1 ;
objectif : z = 13

j = 1, 2, . . . , n

On introduit m variables d
ecart :

Peut-on faire mieux ? Non car x2 , x4 , x6 0 et donc z 13


xn+i = bi

n
X

aij xj

(i = 1 . . . , m)

j=1

La i`
eme contrainte devient xn+i 0.
21/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Premier dictionnaire
xn+i
z

= bi
=

n
X

n
X

aij xj

(i = 1, . . . , m)

M
ethode graphique

x4
x5
x6
z

cj xj

j=1

(k = 1, . . . n + m)

Simplexe

Dualit
e

= 5 2x1
= 11 4x1
= 8 3x1
=
5x1

3x2
x2
4x2
+ 4x2

x3
2x3
2x3
+ 3x3

Dictionaire faisable : en mettant `


a 0 toutes les variables des

membres droits, on obtient une solution du PL

Dictionnaires : equivalents au PL dorigine

On suppose que notre premier dictionnaire est faisable


Nous verrons plus tard comment faire pour que ce soit

n + m + 1 variables x1 , . . . , xn+m et z

toujours le cas

m
equations lineaires de type xk = . . .
tous les membres droits ont les m
emes n variables

Variables de gauche (sauf z) : variables de base x4 , x5 , x6


Variables de droite : variables hors base x1 , x2 , x3

objectif : max z sous contraintes ci-dessus plus

xk 0

Introduction

Dictionnaires : un peu de vocabulaire

j=1

max z, sous contraintes : xk 0

22/56

(k = 1, . . . n + m)

23/56

24/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

Vers une meilleure solution


x4
x5
x6
z

= 5 2x1
= 11 4x1
= 8 3x1
=
5x1

3x2
x2
4x2
+ 4x2

M
ethode graphique

x3
2x3
2x3
+ 3x3

Initialisation : introduire les variables decart et calculer un


premier dictionnaire faisable ; mettre `a 0 les variables hors base

Simplexe

tantque il existe une variable hors base xk ayant un coeff positif


dans lexpression de z faire
soit xl = la contrainte la plus contraignante pour

augmenter xk

pivoter afin de sortir xl de la base en y faisant rentrer xk

retourner la solution courante

25/56

Dualit
e

26/56

Introduction

M
ethode graphique

Simplexe : un deuxi`eme exemple

max
contraintes

5x1
x1
x1
2x1
2x1
x1 ,

+ 5x2 + 3x3
+ 3x2 + x3
+ 3x3
x2 + 2x3
+ 3x2 x3
x2 ,
x3

Dualit
e

Algorithme du simplexe

1. Solution courante : variables hors base `a 0


2. Trouver une variable hors base xk dont le coefficient dans
lexpression de z soit strictement positif.
3. Sil nen existe pas, la solution courante est optimale!
4. Trouver la contrainte la plus forte pour laugmentation de xk ;
soit xl = cette contrainte.
5. Augmenter xk jusqu`a ce que lon ait xl = 0.
6. Exprimer xk en fonction de xl et des autres variables hors base.
7. Mettre `a jour le dictionnaire, en faisant rentrer xk dans la
nouvelle base et en sortant xl .

Introduction

Simplexe

Simplexe

Dualit
e

Mise sous forme standard


min
x1 + 2x2
contraintes x1 + x2 =
10
x1 x2 10
x1

3
2
4
2
0

min z

P
P

max z

ai xP
i =b
P
ai xi b et
ai xi b
ai xP
i b
ai xi b

pas de contrainte x 0

on remplace x par x + x , avec x + , x 0

27/56

28/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

Simplexe : les pi`eges

Simplexe

Dualit
e

Iteration

Choix de la variable qui entre dans la base.


Choix de la variable qui sort de la base.

1. Difficulte `a trouver une solution initiale

Et si aucune contrainte ne limite laugmentation de la variable


hors base?

2. Iteration : peut-on toujours augmenter strictement lobjectif?


3. Terminaison, complexite.

Peut-on toujours augmenter strictement lobjectif?


Non. Il se peut que lon ait une variable hors base avec coefficient
positif dans z, mais quelle ne puisse etre augmentee `a cause dune
contrainte.

29/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

30/56

Introduction

M
ethode graphique

Dictionnaires degeneres

Simplexe

Dualit
e

Terminaison
Lemme
Si deux dictionnaires ont les memes variables de base, ils sont
identiques.

Une ou plusieurs variables de base ont une valeur nulle.

Theor`eme

On ne peut augmenter aucune variable hors base.

Lalgorithme du simplexe termine sur une solution optimale, ou


alors il boucle.

On fait neanmoins un changement de base.


La valeur de lobjectif naugmente pas
... mais ca devrait aller mieux dans quelques etapes.

Les cas de bouclage sont tr`


es rares.
Le bouclage est facile `
a detecter.
Il existe des solutions simples pour
eviter le bouclage, par

exemple en choisissant `a chaque iteration comme variables


sortante et entrante celles dindice minimum.

31/56

32/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

Complexite : nombre diterations

M
ethode graphique

Simplexe

Dualit
e

Initialisation : premier dictionnaire non faisable

Dans la pratique :
Le nombre dit
erations est proportionnel au nombre de

Trouver un autre dictionnaire faisable.

contraintes initiales (typiquement entre 3m/2 et 3m).

Ou prouver que le probl`


eme na pas de solution!

Croit tr`
es peu avec le nombre n de variables initiales.

La methode du simplexe `a deux phases : dune pierre deux coups.

En theorie (au pire cas) :

Introduction dun probl`


eme auxiliaire.

Il existe des exemples qui n


ecessitent 2n iterations [Klee,

En le r
esolvant, nous trouverons un dictionnaire faisable du

Minty 1972].

probl`eme initial ou bien nous saurons que notre probl`eme na


pas de solution.

Nombre

de dictionnaires : autant que de bases possibles, donc

n+m
.
m

33/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Initialisation : le probl`eme auxiliaire


max

n
X

34/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Initialisation : exemple

cj xj

j=1

contraintes :

n
X

aij xj bi

j=1

xj 0

max
contraintes

i = 1, 2, . . . , m
j = 1, 2, . . . , n

devient :
min
contraintes :

x0
n
X
j=1

aij xj x0 bi

xj 0

x1
2x1
2x1
x1
x1 ,

x2
x2
3x2
+ x2
x2 ,

+ x3
+ 2x3
+ x3
2x3
x3

4
5
1

i = 1, 2, . . . , m
j = 0, 1, . . . , n
35/56

36/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

Simplexe : interpretation geometrique

M
ethode graphique

Simplexe

Dualit
e

Simpl`exe par les tableaux

Observer graphiquement l
evolution de lalgorithme du

simplexe sur cet exemple :


max
contraintes :

x1
2x1
x1
2x1
x1 ,

+ x2
+ x2
+ 2x2
x2
x2

max
contraintes :

14
8
10
0

x1
2x1
x1
2x1
x1 ,

+ x2
+ x2
+ 2x2
x2
x2

14
8
10
0

Une autre vision du m


eme algorithme

Chaque solution interm


ediaire du simplexe correspond `a un

Version tr`
es facilement implantable

sommet du poly`edre des contraintes.

Les d
eplacements dune solution `a la suivante se font le

long des aretes.

37/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Dun tableau `a lautre


2
1 1
1
2 0
2 1 0
1
1 0

0
1
0
0

0 14
0 8
1 10
0 0

2
1 1
1
2 0
2 1 0
1
1 0

0
1
0
0

0 14
0 8
1 10
0 0

Introduction

M
ethode graphique

Simplexe

Dualit
e

Tableaux : changement de base


2
1 1
1
2 0
2 1 0
1
1 0

0
1
0
0

0 14
0 8
1 10
0 0

Diviser la ligne pivot par le coefficient pivot (pivot := 1)


Annuler les autres coefficients de la colonne pivot :

Li := Li ri Lpivot

2
1 1
12
1 0
2 1 0
1
1 0

Choix de la colonne pivot : coefficient positif sur la derni`


ere

ligne. Sil nen existe pas, loptimum est atteint :


z = t[m + 1, n + m + 1].

Choix de la ligne pivot : celle qui minimise sri parmi toutes les
i
lignes avec ri positif (ri , resp. si sont les elements de la i`eme ligne
se trouvant sur la colonne pivot, resp. la derni`ere colonne.)

38/56

5
2
12
39/56

0
1
2 1
1
1
5
2

0 0 14
1
4
2 0
0 1 10
0 0 0

1 12 0 10
1
0
4
2 0
0
0 1 10
0
0 0 0

0 1 12

10

40/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

M
ethode graphique

... et on recommence
5
2
12
3
2
3
2

0
1
0
0

1 12
1
0
2
1
0
2
0 12

0 10
0
4
1 14
0 4

1 0
12 1
3
2 0
3
2 0

2
1
5 5
1
0
2
1
0
2
0 12

0
4
4
0
1 14
0 4

1 0
0 1
3
2 0
3
2 0

2
5
1
5

0
0

15
2
5
1
2
12

1
0
0
0

Introduction

2
0
5
1
1
5
0 53
0 35

51
2
5
1
5
51

Idee de base : associer au programme lineaire initial, appele primal,


un deuxi`eme programme lineaire appele le programme dual tel
que :
le dual a m variables (autant que de contraintes industrielles

dans le primal)

il a n contraintes industrielles (autant que de variables dans le

primal)

le dual est un probl`


eme de minimisation
pour toute solution du dual et toute solution du primal,

lobjectif du dual est superieur ou egal `a celui du primal

0
4
0
6
1
8
0 4

41/56

M
ethode graphique

max

Simplexe

Dualit
e

n
X

Introduction

M
ethode graphique

Preuve:
aij xj bi

xj 0

i = 1, 2, . . . , m
z

j = 1, 2, . . . , n

Dual :

min

bi y i

i=1

contraintes :

m
X
i=1

Dualit
e

Pour toute solution du primal et toute solution du dual, z,


lobjectif du primal, est inferieur ou egal `a w , lobjectif du dual.

cj xj

j=1

m
X

Simplexe

Theor`eme (Dualite faible)

j=1

contraintes :

42/56

0
4
0
6
1
8
0 10

Primal :
n
X

Dualit
e

Dualite

0
4
0
6
1 14
0 4

2
1
1 0
5 5
1
2
0 1
5
5
3
1
0 0 5
5
3
0 12
2 0

Simplexe

aij yi cj

yi 0

j = 1, 2, . . . , n
i = 1, 2, . . . , m

n
X
j=1
n
X

cj xj

contraintes dual :cj

m
X
(
aij yi )xj

j=1 i=1
m X
n
X

i=1 j=1
m
X

bi yi

aij xj )yi

m
X

aij yi

i=1

commutativite, associativite
contraintes primal :

n
X

aij xj bi

j=1

objectif dual

i=1

= w
43/56

44/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Introduction

Dualite et applications

cj xj =

j=1

Dualit
e

Si le primal a beaucoup de contraintes et moins de variables,

Si le primal a une solution optimale x1 , . . . , xn alors le dual a une


et, pour ces solutions, lobjectif du
solution optimale y1 , . . . , ym
primal est egal `a lobjectif du dual :
m
X

Simplexe

Applications du theor`eme de dualite

Theor`eme (Dualite)

n
X

M
ethode graphique

le simplexe sera plus efficace sur le probl`eme dual!

Le dernier dictionnaire du simplexe nous donnera

simultanement une solution optimale pour le primal et pour le


dual.

bi yi .

Certification : si lon a les solutions du primal du dual, on

verifie facilement leur optimalite.

i=1

Si lon a une solution du primal, on v


erifiera assez facilement

son optimalite!

Observation simple : le dual du dual est le primal. Donc le primal


a une solution optimale si et seulement si le dual a une solution
optimale.
Question : que peut-il se passer si le primal (ou le dual) na pas de
solution, ou si le probl`eme est non borne?

Interpr
etation economique : la solution optimale du dual nous

dira sil est interessant dinvestir plus pour augmenter


certaines ressources.

45/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

46/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Preuve du theor`eme de dualite


Dapr`es le premier dictionnaire

Soit
z = z +

n
X

c j xi +

j=1

m
X

c n+i xn+i

z=

i=1

et dapr`es le dernier
z = z +

n
X
j=1

1. est une solution admissible du dual ;


n
X

cj xj

j=1

lexpression de z dans le dernier dictionnaire obtenu par le simplexe.


On montre que
yi := c n+i

2. satisfait

n
X

c j xj +

m
X

c n+i xn+i

i=1

Par construction des dictionnaires, ces expressions sont egales pour


toute affectation des variables xi (meme les affectations qui ne
sont pas des solutions admissibles)

bi yi = z ,

i=1

cest donc une solution optimale du dual.


47/56

48/56

Introduction

M
ethode graphique

z=
=

n
X

c j xj +

j=1

= z +
= z +

n
X
j=1
n
X

c j xj
c j xj

= (z
=

m
X
i=1
m
X

Introduction

M
ethode graphique

yi xn+i

xn+i = bi
n
X

yi (bi

m
X

j=1

i=1

bi yi ) +

(z

yi = c n+i

c n+i xn+i

i=1
n
X

i=1

Dualit
e

dernier dico

i=1

j=1
m
X

n
X

m
X

Simplexe

n
X

m
X

bi yi ) +

i=1

m
X

comm., assoc.

aij yi )xj

i=1

j=1

En mettant xj := 0, j = 1, . . . , n on obtient

aij xj

bi yi = z ,

i=1

j=1

(c j +

Dualit
e

n
m
n
X
X
X
(c j +
aij yi )xj =
cj xj
j=1

j=1

aij xj )

Simplexe

donc

premier dico

w = z

(objectif primal = objectif dual).

cj xj

j=1

49/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Legalite secrit maintenant :


n
X
j=1

(c j +

m
X

aij yi )xj

i=1

n
X

Introduction

M
ethode graphique

Simplexe

Dualit
e

Comment interpreter la solution optimale du dual?


cj xj

Theor`eme (Ecarts complementaires)

j=1

une solution
Soient x1 , . . . , xn une solution du primal et y1 , . . . , ym
du primal. Ces deux solutions sont simultanement optimales si et
seulement si

Pour prouver que les yi forment une solution du dual, remarquer


que
les coeffs de z dans le dernier dico sont 0 donc

1. pour tout j = 1, . . . , n,

yi 0 ;

m
X

Un prenant xj := 1 et xk := 0 pour tout k 6= j, 1 k n on a


m
X

50/56

aij yi = cj ou xj = 0 (ou les deux)

i=1

aij yi + c j = cj

2. et pour tout i = 1, . . . , m,

i=1

n
X

donc, puisque les c j sont negatifs ou nuls,


m
X
i=1

aij xj = bi ou yi = 0 (ou les deux)

j=1

aij yi cj .
51/56

52/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Rappel :
z

n
X
j=1
n
X

cj xj

contraintes dual :cj

aij xj )yi

i=1 j=1

m
X

n
X

si xj > 0 alors la j`
eme contrainte du dual est atteinte
m
X
(
aij yi = cj ) ;

aij xj bi

i=1

si la i`
eme contrainte du primal nest pas atteinte

objectif dual

m
X
(
aij xj < bi ) alors yi = 0.

i=1

= w

j=1

On a z = w ssi les deux inegalites deviennent des egalites :

Application : si lon nous propose une solution du primal, pour


verifier son optimalite il suffit de resoudre le syst`eme dequations
(de variables yi ) qui en decoule.

la j`
eme contrainte du dual est atteinte ou xj = 0 ;
la i`
eme contrainte du primal est atteinte ou yi = 0 ;
53/56

Introduction

M
ethode graphique

Simplexe

Dualit
e

Interpretation economique de la dualite

max

Primal
n
X
cj xj

min

j=1

contr :

Dualit
e

forment une solution du dual ;


y1 , . . . , ym

j=1

bi yi

Simplexe

Une solution x1 , . . . , xn du primal est optimale si et seulement si il


tels que :
existe des nombres y1 , . . . , ym

aij yi

commutativite, associativite
contraintes primal :

M
ethode graphique

Theor`eme (Ecarts complementaires version II)

i=1

m
X
(
aij yi )xj

j=1 i=1
m X
n
X

m
X

Introduction

n
X
j=1

contr :

M
ethode graphique

Dualit
e

Pour des valeurs ti suffisament faibles, le programme lineaire


Pn
max
j=1 cj xj

aij yi cj

contr. :

i=1

yi 0
xj 0
pour tout i = 1, . . . , m et tout j = 1, . . . , n.
z : profit (en euros).
xj : quantite du produit j.
bi : quantite de la ressource i.
cj : euros/unite du produit j.
aij : unites de ressource i / unite de produit j.
yi : euros/unite de ressource i.

Simplexe

Theor`eme

Dual
m
X
bi yi
m
X

Introduction

yi : profit obtenu par une unite supplementaire de ressource i.

i=1

aij xj bi

54/56

Pn

j=1 aij xj bi + ti
xj 0

i = 1, 2, . . . , m
j = 1, 2, . . . , n

a une solution optimale de valeur


z +

m
X

yi ti

i=1

est une
o`
u
est la valeur optimale du PL initial et y1 , . . . , ym
solution optimale de son dual.
55/56

56/56

Vous aimerez peut-être aussi