Programmation Linéaire
Programmation Linéaire
Programmation Linéaire
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 + 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
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
+
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:
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
, 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
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.
Applicationlexemple
Solutionoptimaleduprimal:(600,300,0,0,3800)quidonneZ=960000.
Ilyaunexcdentdeau,etlacontrainteassocieladisponibilitdeleaunestpassature.Lavariabledualeu3
associecettecontrainteestdoncnulleloptimum.
Dautrepartlescontraintesdudualsontassociesdesvariablesnonnullesduprimal,ellessontdoncsatures,ce
quiimpliquequloptimum:
u1 u2 1000
u1 800
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
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.