Sunteți pe pagina 1din 9

Programmationlinaire

I.Exempleintroductif
nonc
Pour faire de lembouche bovine, un paysan dispose de deux poudres alimentaires P1 et P2 composes d'ingrdients
A, B et C.
Un sac de poudre P1 pse 900 g et contient 100 g d'ingrdients A, 200 g de B et 600 g de C.
Un sac de poudre P2 pse 600 g et contient 200 g de chacun des trois ingrdients.
Chaque jour, une vache doit consommer au moins 300 g de A, 500 g de B et 700 g de C. Les prix par kg de P1 et P2
sont respectivement 1200 F et 800 F.
Quelle dpense journalire minimale pour une vache le paysan doit-il envisager, de sorte que sa vache reoive une
nourriture suffisante ?

Modlisation
Quechercheton?
Leminimumdedpensepournourrirunevachesouscertainesconditions(=contraintes).
Ladpenseestunefonctionduncertainnombredlmentsinconnusappelsvariablesetdlmentsconnusqui
sontdesconstantes.
Leproblmeposest:chercherleminimumdelafonctiondpensetoutenrespectantlescontraintes.Cestun
problmedoptimisation.
Modliserleproblme,cest:
identifierlesvariables
exprimerladpenseenfonctiondesvariablesetdeslmentsconnus.
exprimerlescontraintesenfonctiondesvariablesetdeslmentsconnus.
Variables
x1=quantitachetedeP1enkg;x2=quantitachetedeP2enkg
Fonctiondpense
Z=1200*x1+800*x2
Contraintes
(1000/9)*x1+(1000/3)*x2300x1/9+x2/30,3
(2000/9)*x1+(1000/3)*x25002x1/9+x2/30,5
(6000/9)*x1+(1000/3)*x27002x1/3+x2/30,7
x10;x20x10;x20
Programmelinaire
FormecanoniqueFormestandard
MinZ=1200*x1+800*x2MinZ=1200*x1+800*x2
Sc:x1/9+x2/30,3Sc:x1/9+x2/3e1=0,3
2x1/9+x2/30,52x1/9+x2/3e2=0,5
2x1/3+x2/30,72x1/3+x2/3e3=0,7
x10;x20x10;x20;e10;e20;e30
e1,e2,e3sontdesvariablesdcart.
=y

Rsolutiongraphiquedelaformecanonique

Z=0

Posons:9X1=x1;9X2=x2
Do:MinZ=10800*X1+7200*X2
Sc:X1+3X22,7
2X1+3X24,5 A finir en tude
6X1+3X26,3
X10;X20 comme ci-contre

=x

II.Lamthodedusimplexe
Formegnraledunprogrammelinaire
Formestandard

j 1,...., n

ei 0

i 1,...., m

=f(x1,,xn)estlafonctionobjectif

1
=
j

xj
cj

lesxjsontlesvariablesdecommande;leseidesvariablesdcart
n

O:

ei

m
,
.
.
.
.
,
1
=
i

bi

j 1,...., n

j
xj
xj
,
ai

1
=
j

xj
cj

1
=
j

:
c
S

m
,
.
.
.
.
,
1
=
i

bi

1
=
j

j
xj
xj
,
ai

:
c
S

1
=
j

=
Z
x
a
M

xj
cj

=
Z
x
a
M

Formecanonique

Unesolutionralisableduprogrammelinaireestladonnedun(n+m)uplet(x1,,xn,e1,,em)quisatisfaitles
contraintes.Unesolutionoptimaleestunesolutionralisablequifournitloptimumdelafonctionobjectif.
Lorsquepourunesolutiondonneek=0,onditquellesaturelacontraintenkcorrespondante.

crituresmatricielles

A. X E

X 0

n
1

amn

b1

; B .

A'. X '

X ,E 0

x1
c1


.
.

e1
cn
' xn
; E . ; X ;
e1
0
e
m

.
.


e
0

m
b1
a11 .. a1n 10 . . 0

A ' . .. . 0 . 1 . 0 ; B .
a ..a 0 . . 0 1
b
m1 mn

=
'
C
:

x1

; X . ;

n
];

c .

1.
1
c a
[
=

A
a
m1

C t .X C 't .X '

=
C
:

c1

.
c
n
,...,

Formestandard

A.X

=
Z
x :
a c
M S

C t.X

=
Z
x :
a c
M S

Formecanonique

Aestlamatricedusystmedescontraintes:

a 1 1 x 1 + ...+ a 1 j x j + ...+ a 1 n x n + 1 e 1 + 0 e 2 + ...+ 0 e i + ...+ 0 e m = b 1


...................................................................................................
a i1 x 1 + ...+ a ij x j + ...+ a in x n + 0 e 1 + ...+ 0 e i-1 + 1 e i + 0 e i+ 1 + ...+ 0 e m = b i

...................................................................................................
a 1 1 x 1 + ...+ a 1 j x j + ...+ a 1 n x n + 0 e 1 + ...+ 0 e i + ...+ 0 e m -1 + 1 e m = b m

Exemple1
nonc
Dansunpaysendveloppementunoprateurdagrobusinessveutmettreenvaleurunezonede900hectareso
deuxculturessontprioripossibles:lemasetlecoton.
Lesdonnesrelativescesdeuxculturessontlessuivantes:

Rendementenquintauxlhectare
Prixdeventeparquintal2
Mainduvrencessaire(ennombredouvriers)pourunhectare
Fraisdexploitation(salairesnoncompris)pourunhectare
Eauncessairepourirriguerunhectarependant1an
Salaireannueldunepersonne

Mas
75
60
1
3500
14000m3
500

Coton
25
60
2
300
6000m3
500

Lesdisponibilitsdesdiffrentsfacteursdeproductionsontlessuivants:
terre:900hectares
mainduvre:1200ouvriersagricoles
eau:14000000m3/an
Onseproposedansunpremiertempsdedterminerlessurfacesquiserontconsacreschacunedesculturesdans
lobjectifderendremaximumlebnficedeloprateur.
Modlisation

, x2 0

+e 2

+e3

0
0
0
4
1

x1 + x 2 e1

0
0
2
1

e
l
e b
l
i
b
n
i
n
o
o p
p i
s
s d
e i
l
d
u
b
i
e
a
n
r
e
o v
'
p u d
s e
i
o i
t
d
'
t
e d n
c i
n a
a a
u
f
r
m q
u
s
0
0 0
0 0 0
0 2 4
9 1 1

500x1 200x 2 +0e1+0e 2 +0e 3


0
0
9

x 2x 2x 1
2 6
+ +
=
1
x
x1
Z
4
1
x :
a c
M S

500x1 200x 2
x1 + x 2

Formestandard

x 2x 2
2 6
+ +
=
1
1
x
x 1x
Z
4
1
x :
a c
M S

Formecanonique

, x 2 ,e1,e 2 ,e3 0

Afaire:1.crireleprogrammesousformematricielle.2.Faireunersolutiongraphique

Lamthodedusimplexe(oudeDantzig)
Lamthodedersolutionditedusimplexesappliquelaformestandard.Onmontrequelensembledessolutions
ralisablesestunpolydreconvexeappelsimplexe.
Solutionsdebaseralisables
Unesolutiondebaseralisableestunesolutionquinepeuttrecombinaisonlinairedautressolutions.Les
solutionsdebaseralisablescorrespondentauxsommetsdusimplexe.Lalgorithmedusimplexeconsiste,partant
dunesolutiondebaseralisableinitiale,parcourirparchangementsdebasesuccessifsadquatsparcourirles
sommetsdusimplexejusquatteindrelesommetquidonnelasolutionoptimum.
Variablesdebaseethorsbase
Unchangementdebaseentraneunemodificationdelexpressiondelafonctionobjectifenfonctiondesvariables
decommandeetdesvariablesdcart.
Pourtoutesolutiondebase,lesvariablesdebasesontcellesquiontunevaleurnonnulle,etlesvariableshorsbase
sontcellesquiontunevaleurnulle.

1
2

FictifinspirdelouvragedeC.GOUJETetC.NICOLASMATHEMATIQUESAPPLIQUEES,EditionsMASSON1981
Onpeutconsidrerquelunitest102francs

Changementdebase
Lechangementdebaseconsisteremplacerunvecteurdebaseparunvecteurhorsbase(etviceversa)endeux
temps:
choixdelavariablehorsbasefaireentrerdanslabase
choixdelavariabledebasefairesortirdelabase
Testdoptimalit
Enexaminantdanslexpressiondelafonctionobjectiflescoefficientsdesvariablesdebase,onvoitsilestencore
possibleounondamliorerlasolutionenfaisantsortirunevariabledelabase.
Algorithme
Dbut
Dfinirunesolutioninitialedebaseralisableetvaluerlafonctionobjectif
Tantqueamliorationpossible

Choisirlavariableentrerdanslabase

Choisirlavariablesortirdelabase

Procderauchangementdebase

valuerlafonctionobjectif
Fintantque
crirelesvaleursdesvariablesetdelafonctionobjectif(lasolution?)
Fin
Remarques
Silalgorithmeboucleindfiniment,alorsilnyapasdesolution(loptimumestlinfini).
Ilpeutarriverquilyaituneinfinitdesolutions(optimumatteintpouruneinfinitdevaleursdesvariablesde
base):onditquilyadgnrescence.Cestlecaspourdeuxvariablesdecommandelorsqueladroitereprsentant
lafonctionobjectifestparallleunedroitereprsentantunecontrainte(unctdupolygoneconvexe).

=
Z
x :
a c
M S

e2
e3
x1

+e3

0
0
0
4
1

+e 2

e1 - x1 - x 2

0
0
2
1

0
0
9

x1 + x 2 e1

, x 2 ,e1,e 2 ,e3 0

0
0
9
+

1000x1 1200x 2 +0e1+0e 2 +0e 3

1000x1 1200x 2 +0e1+0e 2 +0e 3

0
0
0
0 4
0 1
2
1 +
+ x2
6
x2
2 -1
x
- 4
1
x 1-

x 2x 2
2 6
+ +
=
1
1
x
x 1x
Z
4
1
x :
a c
M S

Application
Considronsleproblmeprcdent,avecunobjectiflgrementdiffrent:ilsagitmaintenantdemaximiserle
revenuproduit(salaires+bnfice).Lenouveauprogrammelinairescrit:

, x 2 ,e1,e 2 ,e3 0

0
0
9
+

Soitlasolutiondebaseinitiale(0,0,900,1200,14000)aveclavaleur0pourlafonctionobjectif;onapour
variablesdebasee1=900;e2=1200;e3=14000etpourvariableshorsbasex1=x2=0.
Itrationn1:
Amliorationpossiblecarilsuffitquex1oux20.
Variableentrerdanslabase:x2entrecarcestluiquiferaleplusaugmenterZ(coefficientc2maximum).
Rgle:danslafonctionobjectifexprimeenfonctiondesvariableshorsbase,lavariablehorsbaseaffectedu
plusgrandcoefficientpositifseraslectionnepourentrerdanslabase.

Variablesortirdelabase(doncrendrenulle):e2carcestlaseulepossibilitcompatibleavectoutesles
contraintes.
Eneffet,sachantquelavariablehorsbasex1aunevaleurnulleona:

x 2 900 / 1
0 e1 - x 2

14000 / 6

x 2 1200 / 2
x

0 e3

0
0 0
0 0
2 4
1 1
+ +
2
x x2
2 6
- -

0 e2

=
Z
x :
a c
M S

Lavariablesortirestcellequisannuleaveclavaleurminimaledurapport(deuximemembre)/(coefficiendex2),
cestdiree2.Donce2=x1=0etx2=x1/2e2/2+600.Dolanouvellesolutiondebase:(0,600,300,0,10400)qui
donneZ=600*1200=720000.
Leprogrammescrit:

400x1 - 600e 2 +720 000

e1 x1/2 + e 2 /2 + 300

x 2 x1/2 - e 2 /2 + 600
x1

e3 11x1 + 3e 2 + 10400
, x 2 ,e1,e 2 ,e3 0

=
Z

Zpeutencoretreaugmentecarlavariablehorsbasex1auncoefficientpositif.
Itrationn2:
Variableentrerdanslabase:x1
Variablesortirdelabase:onaffectex1lavaleurMin(300*2,600*2,10400/11)=600quiannulee1.Donce1sort
delabaseetx1=2e1+e2+600;x2=e1e2+300;e3=22e18e2+3800.Dolanouvellesolutiondebase:(600,
300,0,0,3800)quidonneZ=400*600+720000=960000
Lafonctionobjectifscrit:
800e1- 200e 2 + 960 000
OnnepeutplusaugmenterZenfaisantrentrerunevariablehorsbasedanslabasecarilsonttousuncoefficient
ngatif.
Rgle: Dans le cas de la recherche dun maximum, si tous les coefficients de la fonction objectif exprime en

fonctiondesvariableshorsbase,sontngatifsounuls,lasolutiontrouveestoptimale.

x 2x 2
2 6
+ +
=
1
1
x
x 1x
Z
4
1
x :
a c
M S

Techniquedestableaux
Ilestpluspratiquededroulerlalgorithmeenprsentantchaqueitrationleslmentsdansuntableau.Pource
fairepartonsdelaformestandarddenotreprogrammelinaireaveclasolutiondebaseox1etx2sonthorsbase,
e1,e2,e3danslabase.

+e3

0
0
0
4
1

+e 2

0
0
2
1

x1 + x 2 e1

0
0
9

1000x1 1200x 2 +0e1+0e 2 +0e 3

, x 2 ,e1,e 2 ,e3 0

Ondresseletableausuivant:
Hors Base

Variables
hors base

Base
e1
e2
e3

x1

x2

1
1
14

1
2
6

Fonction objectif
1000 1200
Ct

e1

e2

e3

bi

1
0
0

0
1
0

0
0
1

900
1200
14000

Quotient
qi

Itrationn1:
(1)Onregardelescoefficientsdesvariableshorsbasesurladernireligne(lignedeZ).Onmarquelacolonneose
trouvelecoefficientpositifleplusfort,soitr;lavariabledecettecolonneentredanslabase;icicestx2.
5

(2)Pourchaqueligneioncalculelequotientqi=bi/aik.Onmarquelaligneduquotientpositifleplusfaible,soits;la
variabledecettelignesortdelabase;iciceste2.(Voirtableauciaprs).

H.B.

x1
x2
e1 e2 e3
bi
qi
Base

e1
1
1
1
0
0
900
900

e2
1
2
0
1
0
1200
600

e3
14
6
0
0
1
14000 2333,3

Ct 1000 1200 0
0
0
0
Z

(3)Lintersectionasrdelacolonneetdelalignemarquesestappelepivot.Icilepivotest2.
x2remplacee2danslabase
Lalignedupivotestdiviseparlepivot
Lerestedelacolonnedupivotestmis0;lacolonnedesqiestvide
PourtouteslesautrescellulessaufcellequicontientlavaleurdeZ(intersectioncolonnebietdernireligne),
nouvellevaleur:aij=aij(air.asj)/asroasrestlepivot.Icis=r=2.
NouvellevaleurdeZ:z=z+(bs.Cr)/asr
Doletableaucidessous:

H.B.
x1
x2
e1
e2
e3
bi
qi
Base
e1
x2
e3
Ct

1/2
1/2
11

0
1
0

1
0
0

-1/2
1/2
-3

0
0
1

400

-600

300
600
10400

720000 Z

Itrationn2:

H.B.
Base

x1

x2

e1

e2

e3

bi

qi

e1
x2
e3

1/2
1/2
11

0
1
0

1
0
0

-1/2
1/2
-3

0
0
1

300
600
10400

600
1200
945,45

400

-600

720000 Z

(1)x1entredanslabasecarc1=400>0
(2)e1sortdelabasecarq1=600estlepluspetitquotient
(3)Lepivotesta11=1/2;onobtientletableausuivant:

H.B.
Base

x1

x2

e1

e2

e3

bi

x1
x2
e3

1
0
0

0
1
0

2
-1
-22

-1
1
8

0
0
1

600
300
3800

-800

-200

Ct

qi

960000 Z

Touslescoefficientsdeladernirelignesontngatifs.Lasolutionoptimaleestdonc(600,300,0,0,3800).Zvaut
960000.

III.Programmedual
Dfinition
Soitleprogrammelinairesuivant,appelprogrammeprimal:
t
Max Z = C .X sous les contraintes A.X B ; X 0
Onappelleprogrammedualleprogrammesuivant:
t
t
Min Y = B .U sous les contraintes A .U C ; U 0

Exemple
Programmeprimal

Programmedual

=
Y
:
n c
i
M S

a
m
e
d
a
h
1
'
d
e
r
u
t
l
u
c
a
l
e
u
q

n
o
t
o
c
e
d
a
h
1
'
d
e
r
u
t
l
u
c
a
l
e
u
q

u1

, x2 0

6u3

e
l
b
a
t
n
e
r
s
u
l
p
n
o
i
t
a
r

p
o
0
0
2
1

e
l
b
a
t
n
e
r
s
u
l
p
n
o
i
t
a
r

p
o
0
0
0
1

0
0 0
0 0 0
0 2 4
9 1 1

x1 + x 2

u2
2
+
u1

x 2x 2x 1
2 6
+ +
=
x 1x 1
Z
4
1
x :
a c
M S

900u1 1200u2 +14000u3


u1 + u2 14u3

1000x1 1200x 2

,u2 ,u3 0

Interprtationdudual
Fonctionobjectif
Onveututilisertouteslesressourcesdisponibles(terre,mainduvre,eau),enattribuantchaqueunitde
ressourceunevaleurdterminer(u1,u2,u3).Parexemplelesprixdelocationdelaterre,delamainduvreetde
leau.
Contraintes
Lesvaleursattribuesdoiventtretellesquecelarapportepourunhaaumoinsautantquelaculturedunhade
masetquelaculturedunhectaredecoton.
Problme
Onchercheleminimumdelavaleurtotalesouslescontraintesprcdentes.

t
Rgle:Sileprogrammeprimalscrit:Max Z (ou Min Z) = C .X sous les contraintes A.X B (ou A.X B)
Leprogrammedualestdfinipar:
Unefonctionobjectif
DontlescoefficientssontleslmentsdeB

minimisersicelleduprimalestmaximiser(etinversement)

Descontraintes

DontlescoefficientscorrespondentauxcolonnesdeA

DontlessecondsmembressontleslmentsdeC

Dontlesensestopposceluidescontraintesduprimal

Proprits(sansdmonstration)
noncs
1.Silundesdeuxprogrammes(primaloudualadmetunesolutionoptimale,lautreenadmetgalementune.Le
maximumdelunestgalauminimumdelautre.

2.Soituilavariabledualeassocieunecontrainteduprimaldelaforme: ai1x1 ... ain x n bi


Lavaleurdeuiloptimumestgalelaugmentation(ouladiminution)delafonctionobjectifquepermettraitle
desserrementdelacontrainteduneunit(desserrement=augmentationdebiduneunit).
Enparticulier,silacontraintenestpassatureloptimum,laugmentationdebiduneunitnemodifiepasla
fonctionobjectifetdonclavariabledualeassociecettecontrainteestnulle.
7

Applicationlexemple
Solutionoptimaleduprimal:(600,300,0,0,3800)quidonneZ=960000.
Ilyaunexcdentdeau,etlacontrainteassocieladisponibilitdeleaunestpassature.Lavariabledualeu3
associecettecontrainteestdoncnulleloptimum.
Dautrepartlescontraintesdudualsontassociesdesvariablesnonnullesduprimal,ellessontdoncsatures,ce
quiimpliquequloptimum:

u1 u2 1000
u1 800

Y=900.800+1 200.200=960 000

2u

1
200
u

200
2
1
2
Celasignifiequelonpeut,pourgagnerplusaccepterdepayer800pourunhectaresupplmentairedeterreet200
pourunouvriersupplmentaire.Ceraisonnementrestemarginal.Eneffetsilonaugmentaitdebeaucouplenombre
dhectaresdeterre,legainnaugmenteraitpasde800foisautantcaronneseraitplusloptimum,etcestleauqui
risqueraitdemanquer.

IV.Introductiondevariablesartificielles
Soitleprogrammelinairesuivantsousformescanoniqueetstandard.

Max Z 21x1 36 x2

Max Z 21x1 36 x2 0e1 0e2 0e3

Sc

Sc
x1 x2

6140

x1 1,5 x2 6600
x1 x2

x1 x2 e1

6140

x1 1,5 x2 e2

6600

1900

x1 x2

x1, x2 0

e3 1900

x1, x2 , e1, e2 , e3 0

Ilnestpasvidentdetrouverunesolutioninitialedebase.
Lasolutionx1=x2=0neconvientpascarcelaimpliquee3ngatif(=1900)alorsquetouteslesvariablessont
positives.
Pourlevercettedifficultonintroduitaupremiermembredescontraintesdetypedesvariablespositives
supplmentairesditeartificiellesavecuncoefficient1.Ellesontaussiintroduitesdanslafonctionobjectifavecun
coefficienttrsgrandenvaleurabsolue,positif(M)sionrechercheunminimum,ngatif(M)sionrechercheun
maximum.DansnotrecascestM.
Max Z 21x1 36 x2 0e1 0e2 0e3 Ma1

Sc
x1 x2 e1

6140

x1 1,5 x2 e2

6600

x1 x2

e3 a1 1900

x1, x2 , e1, e2 , e3 , a1 0
Nb:a1tantunevariableartificielle,elledevratrenullepourlasolutionoptimale.
Lafonctionconomiqueenfonctiondesvariableshorsbasescrit: (21 M )x1 (36 M ) x2 Me3 1900M

H.B.
Base
e1
e2
a1
Ct

x1

x2

e1

e2

e3

a1

1
1
1
21+M

1
1,5
1
36+M

1
0
0
0

0
1
0
0

0
0
1
M

0
0
1
0

bi

qi

6140
6140
6600
4400
1900
1900
1900M Z

x2entredanslabase,a1sortdelabase.
8

H.B.
Base
e1
e2
x2
Ct

x1

x2

e1

e2

e3

a1

bi

qi

0
0,5
1
15

0
0
1
0

1
0
0
0

0
1
0
0

1
1,5
1
36

1
1,5
1
36M

4240
3750
1900
68400

4240
2500
1900
Z

bi

qi

e3entredanslabase,e2sortdelabase:

H.B.
Base
e1
e3
x2
Ct

x1

x2

e1

e2

e3

a1

1/3
1/3
2/3
3

0
0
1
0

1
0
0
0

2/3
2/3
2/3
24

0
1
0
0

0
1
0
M

1740

2500

4400

158400 Z

Touslescoefficientsdevariableshorsbasesontngatifs,lasolutionestoptimale:x1=0,x2=4400
Remarques
1.Apparitiondunzrodanslacolonnebi:onleremplaceparinfinimentpetitpourslectionnerlavariable
sortante.
2.Contraintesousformedgalit:pasdevariabledcart,maisonintroduitunevariableartificielle.

V.Recherchedunminimum
Fonctionobjectif
LesvariablesartificiellesontdanslafonctionobjectifuncoefficientMinfinimentgrandpositifpuisquilsagitdun
problmedeminimisation

Changementdebase
Lavariableentranteestslectionnesuivantlecritre:coefficientleplusngatifdanslexpressiondelafonction
objectif.
Lavariablesortanteestslectionnesuivantlecritre:pluspetitquotientpositif

Exercice
UneentreprisededistributiondisposededeuxmagasinsAetB;ellesapprovisionneauprsdedeuxusinesde
conservesU1etU2.
Lacapacitdeproductiondechaqueusineparmoisestde400caissespourU1et600caissespourU2.Les
demandesmensuellessadressantauxmagasinssontaumoinsde550caissespourAet350caissespourB.
Ondisposeenoutredescotsdetransportenmilliersdefrancsparcaisse:

Magasins
A
B
Usines
U1

U2

10

Dterminerleplandapprovisionnementoptimal,cestdirelenombredecaissesquelentreprisedoitcommander
auxusinespourrendrelecotdutransportleplusfaiblepossible.