+ All Categories
Home > Documents > Recherche Operationnelle Elements Cours DS

Recherche Operationnelle Elements Cours DS

Date post: 02-Jun-2018
Category:
Upload: ion-sirbu
View: 220 times
Download: 0 times
Share this document with a friend

of 115

Transcript
  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    1/115

    Facult Ordinateurs, Informatique et Microlectronique

    Filire Francophone Informatique

    Vasi le MORARU

    Recherche

    oprationnelle

    Elments de cours

    Chiinu

    U.T.M.2012

    UNIVERSITE

    TECHNIQUE

    DE MOLDOVA

    AGENCE

    UNIVERSITAIRE

    DE LA

    FRANCOPHONIE

    ally signed byary TUMson: I attest to theracy and integrityis document

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    2/115

    2

    n lucrare este tratatmetoda simplex n vederea utilizriiacesteia n determinarea soluiilor optime a problemelor deprogramare liniar, de programare n numere ntregi, deprogramare liniar-fracionar. Se prezint problema de transport ise abordeaz dualitatea n programarea liniar.

    Lucrarea reprezint o iniiere n cursul de Cercetrioperaionale, coninnd exemple i exerciii care s facilitezestudiul individual i este destinat studenilor din anul doi de laFacultatea Calculatoare, Informatic i Microelectronic,Filiera francofonInformatica.

    Autor: conf. univ., dr. Vasile Moraru

    Responsabil pentru ediie: conf. univ. Liviu Carcea

    Recenzeni: conf.univ., dr. Mihail Perebinoslector superior Daniela Istrati

    U.T.M., 2012

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    3/115

    3

    Avant- Propos

    Dans lindustrie, le commerce, ladministration,

    lconomie, la chimie, lnergie, le transport, les rseaux, danspresque tous les domaines de lactivit humaine apparaissent des

    problmes qui conduisent au choix une situation donne et ce

    choix doit tre fait dune telle manire quil soit assure la

    ralisation dun but bien dtermin. Les problmes de ce type sont

    nomms problmes de dcision. Un rle important dans lesproblmes de dcision le joue les problmes doptimisation qui

    consistent dans le calcul du maximum ou du minimum dune

    fonction donne de plusieurs variables lies entre elles par dune

    dentre toutes les possibilits daction dans des diffrentes

    relations. Un cas particulier des problmes doptimisation est laprogrammation linairequi inclue un systme dquations et (ou)

    inquations linaires, nommes restrictions du problme, aussi

    quune fonction linaire qui reprsente le but dsir, le but dsir

    par la valeur maximale ou minimale de celle-ci.

    Le problme de programmation linaire a t formulpourla premire fois en 1939 par Kantorovitch L.V. En 1947 Dantzig

    George a labor la mthode simplex de rsolution des problmes

    de programmation linaire. La mthode simplex consiste dans le

    parcours des sommets du polydre des solutions admissibles, en

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    4/115

    4

    sapprochant de la solution optimale, jusquau moment de sa

    atteinte dans un des sommets dupolydre.

    Dans louvrage on tudie la mthode simplex pour son

    utilisation pour la dtermination des solutions optimales des

    problmes de programmation linaire, de programmation des

    nombres entiers, de programmation linaire fractionnaire. On

    prsente le problme de transport et on aborde la dualit dans la

    programmation linaire. On discute la sensibilit de la solution et

    on indique les possibilits dutilisation du produit informatique

    QM pour la rsolution des problmes laide de lordinateur.

    Les mthodes doptimisation linaire sont inclues dans les

    programmes denseignement universitaire comme objet spar ou

    les compartiments des cours de Recherche Oprationnelle ou de

    Programmation Mathmatique. Les cours respectives sont lues

    aux tudiants des institutions denseignement suprieur avec un

    profil technique et conomique. Cest eux que cet ouvrage est

    adress aussi comme aux autres hommes qui veulent sinitier dans

    loptimisation linaire.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    5/115

    5

    Liste des notations

    R lensemble de nombres rels.

    nR lespace linaire ndimensionnel.

    kx suite des vecteurs: kx .

    x* la solution du problme: nRx* .

    ||x|| la norme du vecteur nRx . Un indice peutprciserla nature de cette norme.

    TA la transpose de la matriceA.

    1A linverse de la matriceA.

    I la matrice unit.

    yx, le produit scalaire des vecteursn

    Ryx,

    Px lensemble des lmentsxavec la propritP.

    xf le gradient de la fonctionf(x).

    xf2 la matrice Hesse de la fonctionf(x).

    x .0si0 xx

    x

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    6/115

    6

    1. NOTIONS CONCERNANT LES

    ENSEMBLES ET LES FONCTIONS

    CONVEXES

    1.1. Ensembles convexes

    Un ensemble M, M Rn, est appel ensemble convexe si

    pour tous deux points Mxx 21, , appartenant cet ensemble, le

    segment de droite qui les unit appartient de mme cet ensemble.Autrement dit, pour tout Mxx 21, a lieu

    Mxxz 21 1

    pour tout rel, 10 (fig.1.1).

    En particulier, lensemble vide, lensemble form dun seullment et tout lespace n dimensionnel Rn, sont des ensemblesconvexes. Dans la fig. 1.2 sont donns des exemples densembles

    2R qui ne sont pas convexes.On constate facilement que lintersection dune famille

    densembles convexes est un ensemble convexe.Soit RbaRxa n ,0,, . Lensemble

    x1

    5x( )

    M

    MM

    Fig. 1.1.Ensemble convexe Fig. 1.2. Exemples densemblesqui ne sont pas convexes

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    7/115

    7

    n

    i

    ii

    T bxaxbxax1

    forme un hyperplandeRn.

    Les demi-espacesdterminspar lhyperplan sont,bxaxS T

    .bxaxS T

    Evidemment, SS . Les ensembles S, et S sont

    convexes.

    SoitA une matrice de dimensions nm , nRx et mRb .

    Lensemblen

    j

    ijij mibxaxbAxxT1

    ,2,1,

    est appel tronon. Le tronon reprsente lintersection dunnombre fini de demi espaces

    ,,,2,11

    mibxaxSn

    j

    ijiji

    et, donc, est un ensemble convexe.

    Un tronon born est appelpolydre convexeoupolytope.Unpolydre planaire est un polygone.

    La combinaison linaire des lments miRx ni ,,2,1,

    de formem

    mxxx

    2

    2

    1

    1 o ,0i

    mi ,,2,1 et 121 m

    sappelle combinaison

    convexedes lments mxxx ,,, 21 .Thorme1.1. Un ensemble convexe contient toute

    combinaison convexe construite de ses lments.Dmonstration (par induction). Soit M un ensemble

    convexe,nRM . Il en rsulte que toute combinaison convexe,

    construite de deux lments de Mappartient M. Supposons que

    Mcontient toute combinaison de maximum 3,1 mm ,lmentsde M. Considrons la combinaison convexe

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    8/115

    8

    m

    mxxxz 2

    2

    1

    1, miMxi ,,2,1, telle que

    121 m . Evidemment, au moins pur un des indices

    1: ii . On peut considrer que 11 . Alors

    m

    mxxxy 3

    3

    2

    2, o miii ,3,2,

    1 1, est une

    combinaison convexe des lments mxxx ,...,32 , car i 0 et

    132 m . Conformment lhypothse inductive que

    My . Comme yxz 11

    1 1 et M est un ensemble

    convexe, il rsulte quez M,fait qui dmontre le thorme.Soit nRM un ensemble non vide et convexe. On dit que

    x Mest un point dextremum de lensembleMsil nexiste aucunzyMzy ,1,0,, tels que:

    zyx 1 .

    Autrement dit, le point dextremum x ne peut pas appartenir lintervalle (y,z)pour tous Mzy, .

    Nous montrons ici deux exemples de points dextremumdes ensembles convexes en

    2R . On note par E lensemble despoints dextremum de lensembleM.

    1. 1,12

    2

    2

    1

    2

    2

    2

    1 xxxExxxM .

    2. ,00,5,42 212121 , xxxxxxxM

    TTTTE 2,3,0,2,5,0,0,0 .

    Dans la fig.1.3 sont prsents ces deux ensembles pourlesquels est videnti lensemble des points dextremumE.

    Un hyperplan ou un demi-espace na pas de pointsdextremum.

    Un ensemble ferm et born en nR sappelle compacte.Tout ensemble convexe compact en

    nR possde des pointsdextremum. Si M est un ensemble convexe compacte en nR et un nombre fini de points dextremum, alors tout lment de

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    9/115

    9

    lensembleMpeut tre exprim comme une combinaison convexede ses points dextremum.

    Soit le trononbAxxT ,

    o nRx , Aest une matrice de dimension mRbnmnm ,, .

    Notons par A une sous matrice dordre nn de A. Supposons

    que 0det A . En ce cas, le systme dquations bxA , o b contient des lments de b, aprs une ventuelle rmunration,

    admet une solution unique x . Si Tx alorsx sappellesommetdu trononT.

    On vrifie immdiatement que le tronon T a au plus!!/! nmnmCnm sommets, qui sont ses points dextremum.

    Exemple:Soit le tronon Tdfini par:

    x2

    x1

    2

    x2

    x1

    5

    0

    2

    3

    0

    Fig. 1.3 Puncte extreme

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    10/115

    10

    .0

    0

    5

    ,42

    2

    1

    21

    21

    -x

    , -x

    ,xx

    xx

    o 2,4 nm . On aura les sommets (voir fig.1.3)

    0

    2 x,

    2

    3 x,

    5

    0 x,

    0

    04321x

    .0 x,42x

    ,5x,42x

    0,,5x

    ,0,0

    2

    21

    21

    21

    1

    21

    2

    1 xxx

    xx

    xx

    1.2. Fonctions convexes

    Soit M un ensemble convexe dansnR . La fonction f(x)

    dfinie sur lensembleMsappellefonction convexesi :yfxfyxf 11 (1.1)

    pour toutx,y M et tout 1,0 .Si lingalit (1) est stricte pour

    toutx,y M, x y et tout 1,0 , alors on dit que la fonction f(x)

    est une fonctionstrictement convexe.

    La fonction f(x)est appele concave(strictement concave)si la fonction -f(x)est convexe (strictement convexe).

    Sil existe R, 0, tel que pour tout x,y M et tout1,0 ,a lieu lingalit2

    2111 yxyfxfyxf , (1.2)

    on dit que la fonctionf(x)estfortement convexe, c..d. la fonction2

    22xxf est convexe.

    On constate que toute fonction fortement convexe est une

    fonction strictement convexe.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    11/115

    11

    Exemple 1. La fonction ,,2

    2Rxxxxxf n , est

    une fonction trs convexe. Pour cette fonction lingalit (1.2) setransforme en galit avec la constante 1:

    2

    2

    2

    2

    2

    2

    2

    2111 yxyxyx

    pour toutx,ynR et tout 1,0 .

    Exemple 2. Toute fonction linaire nRcxxcxf ,,, est une fonction convexe et en mme temps une fonction concave,parce que

    ).()1()())1(( yfxfyxf

    Soit la fonction f(x), nRx , qui admet les drivespartielles

    ix

    xf )(, .,1,2,,,

    2

    njixx

    xf

    ji

    Le vecteur, les lments duquel sont les drives partiellessappellegradientde la fonction xf . On le note pargrad f(x) ou

    xf ,ou xf : T

    nx

    xf

    x

    xf

    x

    xfxf ,,,

    21

    La matrice de dimensions nn

    2

    2

    2

    2

    1

    2

    12

    2

    2

    2

    2

    12

    2

    1

    2

    21

    2

    2

    1

    2

    2

    .................................................

    nnn

    n

    x

    xf

    xx

    xf

    xx

    xf

    xx

    xf

    x

    xf

    xx

    xf

    xx

    xf

    xx

    xf

    x

    xf

    xf

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    12/115

    12

    sappelle la matrice Hesse de la fonction xf ou la matrice

    hessienne. Elle est note aussi parH(x)ouf (x).Dans le cours danalyse mathmatique on dmontre que si

    la fonctionf(x)a les drives partielles du premier ordre continuessur

    nR , alors

    yyxfxfyxf , . (1.3)

    Si f(x) admet des drives partielles du deuxime ordrecontinues sur

    nR , alors

    22,

    2

    1, yyyxfyxfxfyxf . (1.4)

    Thorme 1.2. Soit f(x) une fonction qui admet des

    drives partielles du premier ordre continues sur nR . La fonctionf(x)est convexe si

    nRyxyxfxfyxf ,,, .

    La fonctionf(x)est strictement convexe si et seulement si

    0,,,, yRyxyxfxfyxf n .

    La fonctionf(x)est trs convexe si et seulement sinRyxyyxfxfyxf ,,

    2,

    2

    2.

    Autrement dit, le graphe de la fonction convexe

    (strictement convexe) est situplus haut (strictement au-dessus) delhyperplan tangent. Pour les fonctions trs connexes le graphe estsituplus haut dun certain parabolode (fig. 1.5)

    2

    2

    0si0,

    0si,

    xxfexfx

    xx

    xfn

    a) b) c)

    Fig.1.5. Types de convexit: a) fonction convexe;b) fonction strictement convexe; c) fonctionfortement convexe.

    Thorme 1.3.Si la fonctionf(x), x Rn,admet des drives

    partielles du deuxime ordre continues sur nR , la fonctionf(x)est

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    13/115

    13

    convexe si et seulement si la matrice Hesse xf2 ) est positive

    semidfinie pour tout nRx , c..d.nRyxyyxf ,,0,2 .

    Une condition ncessaire et suffisante pour que la fonction f(x)soitfortement convexe est: existent 0, mRm n , tels que

    nRyxymyyxf ,,,22

    . (1.5)

    Exemple 3.Soit 2Rx et la fonction:

    385 21212

    1 xxxxxxf .

    On a:

    01-

    1-2,

    8-

    52 2

    1

    21xf

    x

    xxxf .

    La matrice Hesse la matrice Hesse2f(x)est positive semidfinie

    et, donc, on peut affirmer que la fonction considre est convexe.Observons que la fonction de lexemple prcdent peut tre

    crite de la manire suivante:

    38-,521-

    1-2,2

    1

    2

    1

    2

    1

    21x

    x

    x

    xxxxf

    ou

    cxbxAxcxbAxxxf TT ,,2

    1

    2

    1,

    o xfA 2 , Tb 8,5 et 3c .De mme, on remarque que

    la somme des vecteursAx et breprsente le gradient xf .

    SoitAune matrice de dimensions nRbnn , etc R. La

    fonction xAxx ,2

    1est appele forme quadratique sur Rn. La

    fonction

    cxbxAxxf ,,2

    1 (1.6)

    sappelle fonction quadratique. On vrifie immdiatement que

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    14/115

    14

    nRx,yyAyybAxxfyxf ,,

    2

    1, . (1.7)

    Vue que2

    22, yAyAy , on a

    2,

    2

    1yyAy . Par

    consquent, on peut crireyybAxxfyxf ,

    et, conformment (1.3), le gradient de la fonction quadratiqueest:

    bAxxf .

    Maintenant de (1.4) et (1.7) rsulte que la matrice Hesse2f(x)dune fonction quadratique (1.6) est constante et identique

    la matriceA.Les fonctions quadratiques jouent un rle important dans

    les problmes doptimisation. Cela est expliqu par le faitquautour des points de minimum les fonctions ont uncomportement quadratique. De plus, le dveloppement dunefonction jusqu lapproximation du deuxime ordre donne une

    fonction quadratique.En ce qui suit nous montrerons que si la matrice A est

    positivement dfinie, alors la fonction quadratique (1.6) est trsconvexe. Soit 0,xAx pour 0,xRx

    n.

    Notons par

    1, zRzzS n .

    Lensemble S est ferm et born. Vue que la orme quadratique

    zAzzg ,21 est continue, existe z* S tel que g(z*) g(z)pour

    tout z S. Ayant lhypothse que la matrice A est positivementdfinie, on a:

    0**,2

    1* zAzzg .

    Evidemment, pour toutn

    ,0 Rxx , il rsulte que Sx

    xz et

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    15/115

    15

    22

    2

    ,2

    1x,

    2,

    2

    1xzAzx

    xx

    xA

    xxAx ,

    ce qui montre que la matrice Hesse Axf

    2

    satisfait lingalit(1.5)avecm=2 0.Il faut souligner que si la matrice Hesse est positivement

    dfinie:0,,0,

    2 yRx,yyyxf n , (1.8)

    on peut seulement affirmer que la fonction f(x) est strictementconvexe (mais non trs convexe). Autrement dit, les relations (1.5)et (1.8) ne sont pas quivalentes dans le cas des fonctions nonquadratiques. De plus, la condition (1.8) est seulement une

    condition suffisante pour une fonction quelconque (non

    quadratique) quelle soit strictement convexe.Exemple 4. Considrons dans lespace bidimensionnel

    2R la fonction strictement convexe (vrifiez cette affirmation!)dfinie par:

    4

    2

    4

    1 xxxf .

    On a :

    2

    2

    2

    12

    12x0

    012xxf

    La matrice Hesse xf2 ne satisfait pas la condition (1.8) dans

    le cas o Tx 0,0 .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    16/115

    16

    2. LA PROGRAMMATION LINEAIRE

    2.1. Problme gnral de programmation linaire

    Un problme gnral de programmation linaire consiste dterminer les rels nxxx ,,, 21 qui maximisent (ou minimisent)

    une fonction linaire

    nnxcxcxcf 2211

    et qui vrifie les ingalits et les galits linaires:

    ,

    K, kx

    bxa...xaxa

    .....................................................

    bxa...xaxa

    bxa...xaxa

    bxa...xaxa

    bxa...xaxa

    k

    snsnss

    rn,nr,r,r

    rnrnrr

    nn

    nn

    0

    ,

    ,

    ,

    2211

    11222111

    2211

    22222121

    11212111

    o njsibac iijj ,,2,1,,,2,1,,, sont des rels donns; K est

    un ensemble dindices de lensemble n,,2,1 En utilisant les notations matricielles:

    ,

    x

    x

    x

    , x

    b

    b

    b

    , b

    ... a aa

    .........................

    ... a aa

    ... a aa

    A

    nrrnrr

    n

    n

    2

    1

    2

    1

    21

    22221

    11211

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    17/115

    17

    ,

    c

    c

    c

    , c

    b

    b

    b

    b,

    a ...aa

    ...................................

    ... a aa

    ... a aa

    A

    ns

    r

    r

    s,ns,s

    ,nr,r,r

    ,nr,r,r

    2

    1

    2

    1

    21

    22212

    12111

    le problme gnral de programmation linaire peut tre crit de laforme :

    K., kx

    ,bxA

    b,Ax

    )((c,x)f(x)

    k 0

    minmax

    Faisons la notation:

    .K, k, xbxAb,AxRxT kn

    0

    Lensemble T est appel domaine des solutions admissibles duproblme. Le domaine des solutions admissibles est un ensemble

    convexe (voir 1.1). Les conditions 0, xbxAb,Ax k

    sont appeles restrictions ou contraintes du problme deprogrammation linaire. Les coefficients

    ija et les termes libres bi

    sont des valeurs constantes donnes.La fonction f(x) qui est maximise (ou minimise) est

    appele fonction objectif, ou fonction critre, ou fonction but, oufonction defficacit.

    Une solution admissible Tx* pour laquelle

    T, xf(x),f(x*) dans le cas du problme de maximum,ou T, xf(x),f(x*) dans le cas du problme deminimum, sappelle solution optimale du problme deprogrammation linaire.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    18/115

    18

    2.2.Exemples de problmes de programmation linaire

    2.2.1. Problme du menu optimalSupposons quon dispose de nproduits alimentaires (pain,

    fromage, sucre, etc.) qui contiennent m substances nutritives(vitamines, protines, etc.). Le problme du menu consiste dterminer les quantits de chaque produit qui doivent treutilises, de la faon que certaines demandes en substancesnutritives soient satisfaites et que le ncessaire biologique soitassur un cot minimal.

    Soit une unit du produit alimentaire icontienne aijunits

    de substance nutritive j. Supposons que le ncessaire delorganisme en substances nutritives jest bjet le cot dune unitdu produit alimentaire iest ci. Pour formuler mathmatiquement leproblme, notons par xi le nombre dunits de produitsalimentaires iqui seront utilises. Le problme du menu sera critsous la forme:

    min2211 xc...xcxcf(x) nn

    avec les contraintes

    ,

    .x, ....,, xx

    bxa...xaxa

    ............................................

    bxa...xaxa

    bxa...xaxa

    n

    mnmnmm

    nn

    nn

    00021

    2211

    22222121

    11212111

    La fonction linaire

    n

    i

    iixcxf1

    )( reprsente le cot total

    du menu, le minimum duquel est cherch. Les contraintes duproblme expriment les conditions dassurance des ncessits delorganisme en substances nutritives. Evidemment, les variablesxi,i = 1,2,, n,ont une certaine signification pour le problme dumenu seulement si elles sont non ngatives.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    19/115

    19

    On peut analyser et dautres critres, comme, par exemple,la maximisation de la quantit totale de calories ou la minimisationdu volume des produits alimentaires.

    Le problme du menu est un cas particulier dun problmedu mlange. Tout problme dans lequel on dsire que des quantitsxi, i = 1,2, , ndes produits avec certaines proprits soit faite unecombinaison qui contienne certains lments j, j=1,2,en quantitsbj, si on connat les quantits aijdes lmentsjcontenus dans uneunit de xi, avec une dpense minimale, sappelle problme dumlange (voir [3]).

    2.2.2. Problme de lutilisation optimale des ressourcesdisponibles

    Dans une entreprise on fait n types de produits notsP1, P2,, Pn qui ncessitent m types de ressources de matire premireR1, R2, , Rm, ayant la disposition biunits de miRi ,,2,1, .

    Pour une unit de produit Pi sont utilises aij units de Rj dematire premire. On connat encore que chaque unit de produit

    Pi apporte un bnfice gal ci lei. On demande de dterminercombien dunits de chaque produit sont ncessaires pour obtenirun bnfice maximal. Autrement dit, dterminer un plan de

    production optimal, c..d. un vecteur nRx tel quemax2211 xc...xcxcf(x) nn

    dans les contraintes suivantes:

    ,

    00021

    2211

    22222121

    11212111

    .x, ....,, xx

    bxa...xaxa

    .............................................

    bxa...xaxa

    bxa...xaxa

    n

    mnmnmm

    nn

    nn

    Ici nxxx ,, 21 reprsente respectivement la quantit dunits de

    P1, P2, , Pnfabriquespar lentreprise.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    20/115

    20

    2.2.3. Problme du transportConsidrons un certain produit qui est estoquen m centres

    de dpt mAAA ,,, 21 en quantits maaa ,,, 21 . Ce produit doit

    tre transport ncentres de distribution nBBB ,,, 21 en quantitsnbbb ,,, 21 . On connat le cot du transport dune unit de produit

    du centreAiau centreBi. On suppose quen

    nj

    i

    m

    i

    i ba1

    ,

    c..d. la rserve totale des dpts est gale la demande totale descentres de distribution. On demande de concevoir un plan optimal

    de transport (de dterminer les quantits xijde produit transportesde Ai Bj) tel que le cot total du transport soit minimum(minimal).

    Le cot du transport du centreAiau centreBiest cijxijunitsfinancires. Le cot total des transports sera:

    m

    i

    n

    jijijmnmnmmmm

    nnnn

    xcxcxcxc

    xcxcxcxcxcxcf

    1 12211

    22222221211112121111

    ....

    .........

    Les rcontraints de ce problme scrivent comme il suit:a)

    La quantit transporte du dptAivers les ncentres dedistribution doit tre gale avec le disponible deAi, c..d.

    ;,...,2,1,...21 miaxxx iinii

    b) la quantit transporte dans le centre de distribution Bide

    tous les centres de dpt est gale avec la quantit deproduit bjncessaire:

    ;,...,2,1,...21 njbxxx jmjjj

    c) les quantitsxijdoivent tre des grandeurs non ngatives.

    La formulation mathmatique du problme de transport peuttre reprsente de la manire:

    Dterminer la valeur minimum(minimale ou du minimum) dela fonction:

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    21/115

    21

    m

    i

    n

    j

    ijijxcf1 1

    .

    dans les contraintes:

    .,...,2,1,,...,2,1,0

    ,,...,2,1,

    ,,...,2,1,

    1

    1

    njmix

    njbx

    miax

    ij

    n

    j

    jij

    n

    j

    iij

    Dans le modle ci-dessus du problme de transport on a suppos

    que la conditionn

    nj

    i

    m

    i

    i ba1

    est satisfaite. Cette condition

    sappelle condition dquilibre. Dans le cas o la conditiondquilibre nest pas ralise, le problme sappelle problme nonquilibr, qui, en introduisant un centre fictif, peut tre rduit unproblme de transport quilibr.

    2.3. Forme dun problme de programmation linaire

    On dit que le problme de programmation linaire a laformestandardsilest de la forme:

    max),()( xcxf ,

    avec les contraintes:

    .0

    ,

    xbAx

    o: mnnn RbRxRcRx ,,, , A matrice de dimensions

    nmArangnm , . Donc, dans le problme deprogrammation linaire en forme standard le systme descontraintes est un systme dgalits et toutes les inconnues sontimposes les conditions de non ngativit.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    22/115

    22

    Tout problme de programmation linaire peut tre rduit la forme standard. Il est vident que:

    xfxfTxTx

    maxmin .

    En consquence, le problme de minimum se rduit au problmede maximum.

    Si 0, xbAx , on peut crire:

    ,0,0

    ,

    yx

    byAx

    o Tmyyyy ,,, 21 .

    Si0, xbAx

    , alors

    .0,0

    ,

    yx

    byAx

    Les variables myyy ,,, 21 sappellent variables de compensation

    ou variables cart. Il faut mentionner que les variables de

    compensation napparaissent pas dans la fonction objective.Si au moins pour une des variables xi il nest pas pose la

    condition de non-ngaivit, alors on peut la remplacer dans leproblme considr par iii vux , o ui et visont deux variables

    nouvelles, telles que 0,0 ii vu .

    Exemple.Soit le problme de programmation linairemin2)( 321 xxxxf

    avec les contraintes:

    .0,0

    ,13

    ,82

    21

    321

    321

    xx

    xxx

    xxx

    Transformons ce problme la forme standard.1.

    La minimisation de la fonctionfest quivalente samaximisation

    321 2)()( xxxxfxg .

    2.

    Substituons 543 xxx , o 0,0 54 xx .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    23/115

    23

    3. Introduisons les variables de compensation 06x et

    07

    x pour transformer les contraintes - inquations en

    contraintes - quations:

    .0,0

    ,13

    ,82

    76

    7321

    6321

    xx

    xxxx

    xxxx

    Donc, le problme considr se rduit au problme suivantde programmation linaire la forme standard:

    max2)( 5421 xxxxxg

    avec les contraintes:

    .,,,,,, ix

    ,xxxxx

    ,xxxxx

    i 7654210

    13

    82

    75421

    65421

    Une autre forme de prsentation des problmes deprogrammation linaire est la forme canonique. Si toutes lescontraintes sont des ingalits de mme sens et toutes lesinconnues sont non-ngatives, alors on dit que le problme deprogrammation linaire a laforme canonique:

    )(ouxcxf minmax),()(

    avec les contraintes:

    .0

    ,0ou

    ,0

    ,

    x

    Ax

    x

    bAx

    Il faut souligner que si le sens de lingalit est , lafonction objectif se maximise et pur la fonction objectif seminimise.

    Observons que toute contrainte de la forme:

    iinii baaxa ...211

    est quivalente un systme de deux restrictions:

    .

    ...

    ,...

    211

    211

    iinii

    iinii

    baaxa

    baaxa

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    24/115

    24

    Constaterons que tout problme de programmationlinaire peut tre rduit soit la forme standard, soit la forme

    canonique.

    2.4. Interprtation gomtrique des problmes deprogrammation linaire deux variables

    Considrons le problme de programmation linaire laforme canonique dans lespace bidimensionnel avec la fonctionobjectif

    2211 xcxcf et le systme des contraintes:

    Dessinons dans le systme cartsien de coordonnes 21Oxx lesdroites di, les quations desquelles sont:

    .,...,2,1,2211 mibxaxa iii

    Notons par T le domaine du plan pour lequel sont satisfaites les

    restrictions du problme considr de programmation linaire.Supposons que ce domaine est le polygone ABCDEF (voir fig.

    2.1). Selon 1.1, Test un polygone convexe (tronon).Pour rsoudre le problme de programmation linaire, il

    faut chercher les pointsM(x1, x2),appartenant lensemble T, pour

    lesquels la fonction objectif 2211 xcxcf prend la valeurmaximale.

    Reprsentons la droite d0 dquation 02211 xcxc . Cettedroite passe par lorigine est perpendiculaire au

    vecteurT

    ccn 21, . Le vecteur n est orient dans le sens croissantdes valeurs de la fonction f. Soit v une valeur arbitraire de la

    fonction objectif 2211 xcxcf . Alors lquation

    vxcxc 2211

    .0,0

    .............................

    ,

    ,

    21

    ,2211

    2222121

    1212111

    xx

    bxaxa

    bxaxa

    bxaxa

    mmm

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    25/115

    25

    reprsente une famille de droites parallles la droite d0; quand lagrandeur vvarie dans lintervalle , la droite vxcxc 2211 se dplace, restant perpendiculaire au vecteur n.

    Vu que 21,xxM doit appartenir lensemble T, il rsulte

    que le maximum de la fonction2211

    xcxcf satteint dans le

    sommetEdu T. En fait, le vecteur nmontre la direction o il fautdplacer la droite d, pour augmenter la valeur de la fonction

    objectif, parce que la fonction linaire 2211 xcxcf est croissantedans la direction de n. Alors la valeur maximale sobtient pour lescoordonnes du point E qui se trouvent lintersection des droites

    2d et 3d (voir la fig. 2.1).

    Sur la fig.2.1 on voit que le minimum de la fonction

    objectif satteint dans le sommetBdu polygone T. Si la droite 0d

    nest pas parallle avec aucune des cots du polygone des

    solutions admissibles, alors il nexiste quune seule solutionoptimale.

    E

    x

    n

    x

    A

    F

    D

    O C

    dm

    do

    x

    x

    O

    n

    Fig. 2.1Fig. 2.2

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    26/115

    26

    Dans le cas quand une des cots du polygone des solutionsadmissibles est parallle la droite 0d , alors le problme admet

    une infinit de solutions optimales qui seront reprsentes par les

    coordonnes de tous les points de cette cot.Une autre situation, qui peut apparatre dans le problme deprogrammation linaire, est quand la fonction objectif na pas demaximum (ou minimum) finit (voir la fig. 2.2). Cela se passe

    quand le tronon Tnest pas born.Exemple:Dterminer les valeurs de 1x et 2x telles que la

    fonction21 xxf soit maximale dans les conditions :

    .0,0

    ,3

    ,93

    ,2,42

    21

    2

    21

    21

    21

    xx

    x

    xx

    xxxx

    Pour a reprsentons graphiquement les droites:

    .0:

    ,3:

    ,93:

    ,2:

    ,42:

    210

    24

    213

    212

    211

    xxd

    xd

    xxd

    xxd

    xxd

    d1

    d4

    x2

    x1

    n

    d0

    o

    d3

    d2

    A

    B C

    D

    Fig .2.3

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    27/115

    27

    On obtient le polygone convexe ABCD. En donnant ladroite 0d dquation 021 xx un dplacement parallle avec

    elle-mme dans la direction n on obtient que les coordonnes de

    point C ralisent le maximum de la fonction linaire 21 xxf .On dtermine les coordonnes de ce point lintersection desdroites 3d et 4d :

    .3

    ,93

    2

    21

    x

    xx

    On a 3,2 *2*

    1xx et 532maxf .

    Il rsulte que la solution optimale dun problme deprogrammation linaire deux variables satteint dans un dessommets du tronon T. Ces sommets, vu dans 1.1, ne sont que lespoints extrmes de lensemble T. Ce phnomne est gnral:nimporte quelle solution optimale dun problme deprogrammation linaire avec un nombre quelconque de variableset de restrictions correspond un point extrme du tronon dessolutions admissibles.

    III. Mthode du Simplexe

    De faon comme on a constat dans le chapitre II, leproblme de programmation linaire, revient la dterminaisondes extrmes (sommeils) du polydre convexe et le choix dessommeils pour lesquels la fonction objectif prend une valeur

    optimale.La mthode du simplexe a t labore en 1949 de B. G.Dantzing et consiste en parcours des sommeils du polydreconvexe de telle faon que la fonction objectif de chaque foisprend la meilleure valeur dans le sens optimal que dans le sommeilantrieur. Quand lamlioration optimale de la fonction nest paspossible, on obtient une solution optimale. La mthode dusimplexe peut tre prsente sous diverses formes (voir, parexemple [1,2,3,5,6,9,11]). Dans tout les cas la mthode dusimplexe se dcompose en tapes suivantes:

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    28/115

    28

    - on dtermine la solution initiale de base;- par une procdure itrative on remplace la solution

    initiale de base, jusqu ce quon arrive la situationquand la valeur de la fonction objectif ne croit pas ou laconclusion que le problme nadmet pas un optimumfinit.

    La description de la mthode simplexe [9] est donne encontinuation. On considre le problme de programmation linairedonne sous forme standard:

    ,0

    ,

    max),(

    x

    bAx

    xcf

    (3.1)

    o ,),,,(,),,,(,),,,( 212121T

    n

    T

    n

    T

    n bbbbxxxxcccc et A

    est une matrice de dimensionne nm avec nm . Supposons queles lignes de la matrice A sont indpendantes linaires, donc

    mArang )( .

    3.1. Solution admissible de base

    Notons avecBla sous-matrice de la matriceAconstitu dem colonnes de faon que B soit une matrice non singulire

    )0(detB dordre mm et avec N la sous-matrice dordre)( mnm qui contienne les colonnes restes de A. Donc nous

    avons la dcomposition:

    NBA La matriceBsappelle matrice basique, etN- matrice non basique.

    De mme faon on spare les vecteurs cetx:

    N

    B

    N

    B

    c

    xx

    c

    cc ,

    oBc et Bx sont composs de tels m composants qui dterminent

    la dcomposition de la matrice A. Alors le systme bAx devient :

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    29/115

    29

    bNxBx NB

    Ce systme peut tre crit sous la forme

    NB NxbBx

    ou.

    11

    NB NxBbBx (3.2)

    Les composantes du vecteur Bx sappellent variables

    basiques(ou de base) mais les composantes du vecteur Nx tant

    appeles variables non basiques.On dit quun systme des quations de la forme (3.2) est un

    systme sous la forme explicite.La solution de ce systme donnepar

    0

    1

    N

    B

    x

    bBx

    sappellesolution de basedu systme .bAx Si 0

    1bB alors la solution de base vrifie les conditionsde non-ngativit :

    0)0(

    )0(

    N

    B

    x

    xx

    et sappelle solution de base admissible du problme deprogrammation linaire (3.1).

    Une solution de base admissible pour le problme (1)sappelle non dgnre, si le nombre des ses composantes non

    nulles est gal avec le nombre des quations du systme bAx ,cest--dire 01bB .On dmontre (vois, par exemple, [2,3]) que la solution de

    base admissible nest quun point extrme de lensemble

    0,, xbAxRxxT n

    et rciproquement.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    30/115

    30

    3.2. Critre doptimalisation

    Soit Bune matrice basique et respectivementT

    N

    T

    B

    T

    ccc .Alors la fonction objectif ),( xcf devient

    .)()(1111

    N

    T

    N

    T

    B

    T

    BN

    T

    NN

    T

    B

    N

    T

    NB

    T

    B

    N

    BT

    N

    T

    B

    T

    xcNBcbBcxcNxBbBc

    xcxcx

    xccxcf

    Le problme de programmation linaire (1) peut tre crit sous la

    forme

    .0,0

    ,

    max),)((),(11

    11

    BN

    NN

    NNB

    TT

    B

    xx

    NxBbBx

    xccBNbBcf

    (3.1)

    Cette forme sappelle forme explicite du problme deprogrammation linaire (3.1).

    Notons bB1

    et .)(1

    B

    T

    cB Alors la forme explicite peut tre crite en mode suivant

    .0,0

    ,

    max),(),(1

    BN

    NN

    NN

    T

    B

    xx

    NxBx

    xcNcf

    Le vecteurN

    T cN reprsente le critre

    doptimalisation, parce quil nous dit si la solution de baseadmissible est une solution optimale de la programmation linaire(1).

    Soit zj, (cN)jet (xN)j, j=1,2, . . .,n-m,les composantes des

    vecteursTNz et respectivement xN . On constate que si

    0)( jNjj cz , j=1,2, . . . ,n-m, le maximum de la fonction

    objectif

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    31/115

    31

    mnNmnNNB xxxcf )()()(),( 2211

    satteint pour 0Nx . Pour nimporte quelle autre solution

    admissible x au moins une composante 0)( jNx et au passage

    dune solution admissible de base lautre valeur de la fonctionobjectif devient plus petite.

    Cest--dire, si nous avons une solution de base admissible pourlaquelle

    ,,,2,1,0 mnjj

    alors elle est une solution optimale.

    Noterons par ,,,2,1, mnjaj la colonne qui lui

    correspond de la matriceN.On observe que ).,( jT

    jj aaz Sil

    existe j tel que 0j et le vecteur jj aB1 a toutes les

    composantes plus petites ou gales zro 0)(( ij pour

    ),,2,1 mj alors la fonction objectif f nest pas bornesuprieur dans lensemble des solutions admissibles. Vraiment, onvrifie immdiatement que pour tout 0, tTt , le vecteur

    N

    B

    x

    xx

    dfini par,,,2,1,,0)(,)(, mijixtxtx iNjNjB

    est de mme une solution admissible du problme deprogrammation linaire considr. En choisissant un tsuffisamment grand, on constate que le problme a des solutionsadmissibles non bornes ( 0, xbxA pour nimporte quel

    0t et x si t ), donc nadmetun maximum finit:

    jB tcxcf ),(),( pour t .

    Il est possible aussi et le cas suivant. Parmi les

    composantes du vecteur jj aB1

    (correspondant la

    diffrence 0j ) sont des grandeurs positives. Soit 0s

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    32/115

    32

    et 0)( is , o i est un nombre naturel, gal lun des nombres

    1,2, . . ., m. En ce cas sNx )( il ne peut pas prendre des valeurs

    arbitraires, parce que pour si nous avons 0)( iNx et

    sNsB xx )( mais sNsB xcf )(),( .

    De la condition dadmissibilit 0Bx rsulte

    ixis

    isN ,

    )()(

    En choisissant

    ks

    k

    is

    i

    ai

    sN

    s

    x

    )()(

    min)(

    0)(

    (3.4)

    nous obtiendrons une autre solution admissible avec

    0)(

    )(,0)(ks

    ksNsB xx

    On peut dmontrer (vois, par exemple, [2,3]) que cette solutiondistingue une solution de base admissible qui correspond unenouvelle matrice basiqueB . La matrice B sobtient de la matriceprcdente B par le remplacement de sa colonne k par levecteur sa . Pour la solution admissible de base obtenue, la valeur

    de la fonction objectif devient plus grande que la valeur dans la

    solution prcdente.Cette opration de passage dune solution admissible de

    base lautre sappelle pivotation ou itration simplexe, etllment 0)( ks sappelle pivot. A cette tape sexclue la

    variable sBx )( de l ensemble des variables de base, en

    introduisant au lieu delle la variable sNx )( . En ayant une nouvelle

    matrice basiqueB , nous obtenons une autre forme explicite du

    systme :bAx

    NB xNBbBx11

    )()( .

    Le choix (4) nous assure que la solution de base

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    33/115

    33

    0

    )(1bB

    x

    xx

    N

    B (3.5)

    est une solution de base admissible, cest--dire 0)( 1bB .Par consquent,sont possibles les cas suivants:

    1. Si ,,,2,1,0 mnjj alors la solution de base

    admissible donne par 0, NB xx est une solution

    optimale du problme (3.3).2.

    Sil existe un indice jtant que 0j et tous les lments

    de la colonne de jj aB1 sont plus petits ou gaux

    zro, alors le problme de programmation linaire (3.3)nadmetun maximum finit.

    3.

    Sil existe au moins un s pour lequel 0s et les

    vecteurs s ont les composantes positives, on va

    dterminer une nouvelle solution admissible de base laide de la formule (3.5).

    3.3. Algor i thme du simplexe

    En base de celles dmontres ci-dessus, dans section 3.2,lorganisation des calcules peut tre faite par des diffrentesfaons. Ainsi on obtient des diverses variantes de la mthode dusimplexe. Nous allons nous arrter sur lune delle [9]. Cette

    variante de lalgorithme du simplexe, dcrit plus haut, sutilisedans la majorit des programmes spciaux pour la rsolution desproblmes de programmation linaire laide des moyennestechniques de calcul. En pratique les problmes avec un caractreconcret ont un nombre, en gnral, suffisamment grand desvariables et des restrictions et peuvent tre rsolues seulement laide des machines de calcul.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    34/115

    34

    Soit un problme de programmation linaire sous la formeexplicite (3.3), ainsi on connat une matrice basique B tel que levecteur

    0

    1

    bBx

    est une solution de base admissible duproblmede programmationlinaire donne. Alors les pas de lalgorithme du simplexe sont lessuivants:

    Pas 1.On dtermine le vecteur

    B

    T cB 1)(

    Le calcul de ce vecteur est quivalent la rsolution du systmedes quations linaires

    B

    T CB 1)( .

    Pas 2. On calcule le produit scalaire

    ),( jj az

    et les diffrences

    jNjj cz )(

    pour mnj ,,2,1 . Ici ja est la colonnejde la matriceN.

    Pas 3. On tudie les signes des diffrences j .

    a) Si pour tous j, nous avons 0j , alors la solution de

    base disponible est une solution optimale. ARRET.

    b) Sil existe au moins un j pour lequel 0j , alors on

    calcule jsj

    min0

    et on passe au pas suivant.

    Pas 4. On dtermine le vecteur

    ss aB1 ,

    donc, on rsout le systme des quations linaires

    ss aB .

    Pas 5. On tudie les composantes du vecteur s .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    35/115

    35

    a) Si ,,,2,1,0)( miis alors le problme donn a la

    fonction objectif non borne suprieure sur lensemble des sessolutions admissibles. ARRET.

    b) En cas contraire on dtermine

    is

    i

    iks

    k

    is )(min

    )( 0)(

    et on passe aupas 6dalgorithme.Pas 6. On forme une nouvelle matrice basique B tel quau

    lieu de la colonne k de la matrice Bon crit la colonne sa de la

    matrice N et on calcule la solution de base admissible qui

    correspond la nouvelle matrice basique B , o

    ks

    ksNx

    )()( et 0)( sBx .

    On revient au premier pas de lalgorithme. Lalgorithme se rptejusquau moment quand sobtient une solution optimale (Pas 3) oustablit que la fonction objectif nest pas borne suprieur surlensemble des solutions admissibles (pas 5, a).

    Exemple.Utilisons lalgorithme du simplexe pour larsolution du problme de programmation linaire

    min12 xxg

    dans des contraintes suivantes:

    .0,0

    5

    22

    22

    21

    21

    21

    21

    xx

    xx

    xx

    xx

    Aupralable transformons ce problme la forme standard, ainsi:min21 xxf

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    36/115

    36

    .5,4,3,2,1,0

    ,5

    ,22

    ,22

    521

    421

    321

    ix

    xxx

    xxx

    xxx

    i

    La matrice du systme des quations est

    10011

    01021

    00112

    A

    et a le 3)(Arang .

    Choisissons

    11

    21

    12

    ,

    100

    010

    001

    NB ,

    parce que 01)det(B et donc B est une matrice basique.

    Soulignons le fait que 01 bbB . En tenant compte de a, onobtient

    .

    5

    2

    2

    ,

    0

    0

    0

    3

    2

    1

    x

    x

    x

    xc BB

    ,0

    0,

    1

    1

    2

    1

    x

    xxc NN

    1

    2

    1

    ,

    1

    1

    2

    21 .

    Pas 1.

    0

    0

    0

    0

    0

    0

    100

    010

    001

    )(1

    B

    T cB .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    37/115

    37

    Pas 2. .1)(,1)(,0 221121 NN cczz

    Pas 3. Ainsi 01 et donc la solution de base admissibleTx )5,2,2,0,0()1( nest pas optimale. Elle peut tre amliorepar

    le changement de la matrice basiqueB.Pas 4.

    .

    1

    1

    2

    1

    1

    2

    100

    010

    001

    1

    1

    1aB

    Pas 5.

    21

    2

    10)( )(1

    5,12min

    )(min

    1 i

    i

    i i

    .

    Pas 6.

    .

    01

    12

    01

    ,

    110

    010

    021

    NB

    La matrice B sobtient de laB,en remplaant la deuximecolonne par le vecteur 1a .

    On calcule

    ,01,

    00

    ,

    3

    2

    6

    ,

    110

    010

    021

    )(

    2

    4

    5

    1

    3

    1

    NN

    B

    cxxx

    x

    x

    x

    xB

    0

    1

    0

    ,

    1

    2

    1

    ,

    0

    1

    0

    21aacB

    et on revient au premier pas avec BB .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    38/115

    38

    Pas 1.

    .

    0

    1

    0

    0

    1

    0

    100

    112

    001

    )(1

    B

    T cB

    Pas 2.

    .101)(

    ,1)1(2)(

    ,1),(,2),(

    222

    111

    2211

    N

    N

    cz

    cz

    azaz

    Pas 3. Vu que 01 , la solution de base admissible

    Tx )3,0,6,0,2()2( nest pas la solution optimale.Pas 4.

    .

    3

    2

    3

    1

    2

    1

    110

    010

    021

    1

    1

    1 aB

    Pas 5. On calcule

    31

    3

    10)( )(3

    3

    )(min

    1i

    i

    i i

    .

    Pas 6. Au lieu de la troisime colonne de la matrice Boncrit le vecteur 1

    ,

    110

    210

    121

    B

    01

    10

    00

    N .

    On obtient des donnes

    3/13/10

    3/23/10

    111

    )(1B ,

    2

    1

    3

    1

    4

    9

    x

    x

    x

    xB ,

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    39/115

    39

    0

    0

    5

    4

    x

    xxN , ,

    0

    0Nc ,

    1

    1

    0

    Bc ,

    1

    0

    0

    1a ,

    0

    1

    0

    2a .

    En reprenant lalgorithme du simplexe avec BB nousavons

    Pas 1.

    3/1

    3/2

    0

    1

    1

    0

    3/13/21

    3/13/11

    001

    )( 1 BT cB .

    Pas 2.

    3

    1),( 11 az ,

    3

    2,22 az ,

    3

    10

    3

    1111 N

    cz ,

    3

    20

    3

    2)( 222 Ncz .

    Pas 3. Vu que 0,0 21 , la solution de base

    admissible obtenueTx )0,0,9,1,4()3( est optimale. Nous avons

    3)max(f pour 1,4 *2*

    1 xx et donc -3.min(g)

    Lobservation 1. Si en cours de lapplication de lalgorithme dusimplexe la solution de base admissible obtenue est dgnre(contient des composantes non nulles au moins que le nombre des

    restrictions), alors il est possible un cycle; on peut revenir unesolution de base trouve antrieurement. Soulignons le fait que ladgnration nimplique pas obligatoirement le cycle. Pourlloignement du cycle on procde dans un mode spcial (onapplique la technique de perturbation ou la mthodelexicographique; voir les travaux [5, 6, 13, 23, 28]). Quoique

    beaucoup de problmes pratiques sont dgnrs, peu delles sontcycliques. Dans la littrature de spcialit on connatdes exemplesdes cycles, mais elles sont construites avec difficult.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    40/115

    40

    Heureusement ce type de problme est rare en pratique. Voil unexemple dun probleme dgnr:

    .0,0

    ,0,6

    max25

    21

    21

    21

    212,1

    xx

    xxxx

    xxxxf

    Lobservation 2. Lalgorithme du simplexe assure laconvergence vers la solution optimale dans un nombre finit de pas.

    Vraiment, du fait quun problme de programmation linaire aseulement un nombre finit de solutions de base admissibles non

    dgnres aprs un nombre finit ditrations on va arriver soit une solution optimale, soit la conclusion que la fonction objectifnest pas borne suprieur sur lensemble des ses solutionsadmissibles.

    Lobservation 3. Au moment o jj ,0 rsulte que

    la fonction objectif ne peut pas crotre. Si pour une variable nonbasiquexknous avons 0k , alors au cas osur la colonne k

    est possible de choisir un pivot 0)( is dans le pas suivant

    nous obtiendrons une nouvelle solution optimale qui donne la

    mme valeur pour la fonction objectif. En faisant une combinaisonlinaire convexe des solutions optimales trouves, on obtientlensemble de toutes les solutions optimales.

    3.4. Tableaux simplexe

    Si le problme de programmation linaire nest pas grand,on peut organiser les calculs aprs lalgorithme du simplexe laide des tableaux appels tableaux simplexe.

    Soit donne un problme de programmation linaire laforme explicite (voir 3.2.):

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    41/115

    41

    ,0,0

    ,

    max,,

    1

    NB

    NB

    NN

    T

    B

    xx

    NxBx

    xcNcf

    o la matrice basiqueBest suppose gale avec la matrice unitI.Supposerons encore que les thermes libres mbbb ,...,, 21 sont non

    ngatifs. En ce cas mnmn aaab ,,,,0 2211 la

    solution admissible de base est11)( bxB , 22)( bxB , ...,

    mmB bx )( , 0)( 1Nx , 0)( 2Nx , ..., 0)( mnNx , et la

    fonction objectif a la valeur ),( Bcf . Avec ces donnes on peutconstruire le tableau suivant qui sappelle tableau simplexe:

    Variablesdebase

    1)( Bx

    2)( Bx

    mBx )( 1)( Nx

    SNx )(

    mnNx )(

    is

    i

    1)( Bx

    1b

    1 0

    011

    1s

    1mn

    kmn

    2)( Bx

    2b

    0 1

    0 21 2s

    2mn

    kBx )(

    kb

    0 0

    0k1

    ks

    kmn

    mBx )(

    mb

    1 0

    1

    m1

    ms

    mmn

    jj

    j

    cz

    0 0

    01 s

    mn

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    42/115

    42

    Chaque ligne de ce tableau correspond lquation, quireprsente les variables de base

    1

    )(B

    x , ...,mB

    x )( par rapport au

    variables1)( Nx , 2)( Nx , ..., mnNx )( . La dernire ligne correspond

    aux diffrencesjjj cz , o )( , jBj acz , ., ..., n-m,j 21

    Pour chaque colonne de la matrice basique nous aurons 0j .

    Si toutes les diffrences j sont non ngatives, la solution

    de base Bx sera une solution optimale. En cas contraire on choisit

    comme colonne pivot la colonne s de la variable non basique

    sNx )( pour laquelle s est la plus petite:

    jj

    sj 0(

    min .

    On tudie les composantes du vecteur s . Si 0is pour

    ,,...,2,1 mi alors leproblme de programmation linaire nadmet

    pas un maximum finit. Si le vecteur s a des composantes

    positives, alors on constitue le rapportisi

    )( , avec les i pour

    lesquels 0is

    . Nous choisirons comme llment pivotks

    (dans le tableau il est notks

    ) si

    is

    i

    iikS

    k

    s )(min

    )( 0)(

    La ligne ksappellera laligne pivot. Si la valeur minimaleest atteinte pour quelques indices k, alors on choisit lun deux.

    A cette tape sexclut la variablekB

    x de lensemble des

    variables de base, en introduisant au lieu delle la variablesN

    x et

    on passe au tableau suivant. Le passage dun tableau lautreconsiste en calculer des composantes des vecteurs qui ne font paspartie de la base et des diffrences correspondantes

    jNjj cz . Notons les lments du tableau suivant avec

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    43/115

    43

    .,,,''''

    jijifb Ces lment peuvent tre obtenus facilement

    aprs une rgle qui sappelle la rgle du rectangle: on forme unrectangle, en ayant un sommeil dans llment qui se calcule, et

    llment pivot qui est situ dans le sommeil diamtralementoppos.

    La nouvelle valeur de llment calcul sera gale auproduit entre la vieille valeur et llment pivot, duquel onsoustrait le produit des autres sommeils du rectangle, le rsultat estdivis au pivot:

    ks

    jski

    ji

    ks

    jskiksji

    ji

    ...'

    Les lments de la ligne pivot se divisent avec le coefficient ks mais pour les lments situs sur la colonne du pivot nous avons

    0'

    is pour ki et 1'

    ks.

    Exemple. Considrons le problme suivant deprogrammation linaire

    max3 321 xxxf

    avec les contraintes:

    3,2,1;0

    ,53

    ,224

    ,12

    31

    321

    321

    ix

    xx

    xxx

    xxx

    i

    En utilisant les variables de compensation ,0,0,0 654 xxx

    transformons le problme de programmation linaire la formestandard avec les termes libres non ngatifs :

    (ai)j (as)j

    (ai)k (as)k

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    44/115

    44

    .6,,2,1,0

    ,53

    ,224

    ,12

    max0003

    631

    5321

    4321

    654321

    ix

    xxx

    xxxx

    xxxx

    xxxxxxf

    i

    On observe que le systme des quations duproblme standard estexplicite par rapport aux inconnues ,, 54 xx et 6x . On peut crire

    donc le premier tableau simplexe:

    Dans ce tableau la dernire ligne contient deux diffrencesngatives: 012 et .033 Ce signifie que la solution

    initiale de base 0,5,2,1 321654 xxxxxx nest pas

    optimale.

    On choisit comme colonne pivot, la colonne forme descoefficients ,111

    1,13121

    de la variable non

    basique 3x , pour laquelle 33 est la plus petite. Elaborons les

    rapportsii 1

    / pour lesquels 1/:01111 i

    ,

    .5/313

    En consquence llment pivot sera 111

    . En

    appliquant la mthode dcrite plus haut nous obtiendrons lasuccession suivante de trois tableaux simplexe.

    Variablesde base 1x2x

    3x

    4x5x

    6x

    isi )/(

    4x 1 2 -1 1 1 0 01:1

    5x 2 -4 2 -1 0 1 0 -

    6x 5 3 0 1 0 0 1 1:5

    j 0 1 -1 3 0 0 0

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    45/115

    45

    Eta

    pe

    Variab

    les de

    base1x

    2x

    3x

    4x

    5x

    6x

    is

    i

    )(

    II

    3x

    1 2 -1 1 1 0 0

    5x

    3 -2

    1

    0 1 1 0 1

    3

    6x

    4 1 1 0 -1 0 1

    1

    4

    j

    3 7 -4 0 3 0 0

    III

    3x

    4 0 0 1 2 1 0 -

    2x

    3 -2 1 0 1 1 0 -

    6x

    1

    3

    0 0 -2

    -1

    1 3

    1

    j

    15 -1 0 0 7 4 0

    IV

    3x

    4 0 0 1 2 1 0

    2x

    11/3 0 1 0 -1/3 1/3 2/3

    1x

    1/3 1 0 0 -1/2 -1/3 1/3

    j

    46/3 0 0 0 19/3 11/3 1/3

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    46/115

    46

    Toutes les diffrences j du dernier tableau sont non

    ngatives, le fait qui attire lattention que lalgorithme du simplexeest arriv la dernire tape. En consquence, nous avons une

    solution optimale 4,3/11,3/1*

    3

    *

    2

    *

    1 xxx et une valeuroptimale de la fonction objective 3/46maxf .

    Observation.Sil existe plus dun rapport minimum

    is

    i

    airs

    r

    ks

    k

    is )(min

    )( 0)(

    alors on peut choisir comme lment pivot ks )( ou rs )( . En

    choisissant llment pivot ks )( obtiendrons 0)( rBx . Lasolution de base obtenue sera dgnre. En ce cas il est possibleque la valeur de la fonction objectif ne soit pas modifie en coursde quelques tapes successives et revenons lune des solutions debase admissibles par lesquelles nous avons dj pass. Cettesituation sappelle cyclique; lalgorithme du simplexe peut trecontinu jusqu linfini sans conduire aux solutions. Voil

    pourquoi on suppose la non-dgnration dans lapplication delalgorithme du simplexe. La finitude de lalgorithme du simplexeest assurepour les problmes de programmation linaire nondgnrs (ayant toutes les solutions de base non dgnrs).Soulignons encore une fois le fait que la dgnration (lexistenceau moins dune solution de base dgnre) nimplique pasobligatoirement le cycle. Quoique beaucoup de problmespratiques soient dgnrs, aucun na pas fait le cycle jusqu

    prsent et les exemples avec les cycles ont t construits avecdifficult. Dans le cas de dgnration onprocde dans un modespcial pour viter le phnomne du cycle, en utilisant soit latechnique de perturbation, soit la mthode lexicographique (voirpar exemple [2,6,9,11]).

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    47/115

    47

    3.5.Dterminaisonde la solution initiale de base

    Comme on a tablit dans le paragraphe 3.3, pour larsolution dun problme de programmation linaire on passe

    dune solution de base initiale et en utilisant lalgorithmesimplexe, on arrive une solution optimale. Pas chaque matrice Bde la dcomposition NBA nous assure que 01bBxB etpar consquent il faut continuer avec une autre matrice B. Lenombre des essais peut tre assez grand. Au plus, dans le casquand lensemble des solutions admissibles est vide alors nexistepas une matrice B qui nous pourra donner une solution de base

    admissible.Considrons un problme de programmation linaire sous

    la forme standard

    max),( xcf

    0

    ,

    x

    bAx (3.6)

    o A est une matrice de la dimension

    .,,, mnn RbRcRxnm Supposons que 0b ; en cas

    contraire nous pouvons multiplier la ligne i dans laquelle 0ib

    avec 1. Faisons une association avec le problme (3.6) leproblme suivant de programmation linaire

    min...21 myyyg

    0,0

    ,

    yx

    byAx (3.7)

    Les variables myyy ,...,, 21 sappellent variables artificielles. Le

    problme (3.7) a la forme explicite avec la matrice B=IoIest lamatrice lunit de dimension mm et avec la solution de base

    admissible 0,...,011 mm byby , 0...21 nxxx . Par

    consquent nous pouvons appliquer lalgorithme du simplexe pourla rsolution du problme (3.7).

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    48/115

    48

    Si le problme (3.7) a une solution optimale ),( ** yx et

    0)min(g , comme 0*iy , rsulte que tous 0*

    iy . Deux cas

    sont possibles [5, 6]:

    1). Aprs lapplication de lalgorithme du simplexe aucunedes variables artificielles myyy ,...,, 21 nest pas une variable

    basique. Alors, en loignant les variables artificielles et sescoefficients sobtient un tableau simplexe correspondant uneforme explicite du systme bAx dans lequel les thermes libressont non ngatifs.

    2). Dans le tableau simplexe final unes des variables

    artificielles myyy ,...,, 21 sont des variables basiques. Cest possiblesi le problme (3.6) est dgnr ou si mrArang )( . Si

    mArang )( et le problme (3.7) a dgnr, alors au lieu de la

    variable basique 0iy introduisons la variable non basique ix

    sans affecter la non-ngativit des thermes libres et la solutionoptimale pour le problme (3.7), parce que la solution de baseadmissible nouvellement obtenue est la mme que la solution

    prcdente. Dans le cas o mrArang )( , peuvent rester parmiles variables basiques 0iy , mais leurs lignes sont exclues du

    systme sans modification de lensemble des solutions admissiblespour le problme (3.6).

    Dans ce mode peuvent tre limins successivement parmiles variables basiques du tableau simplexe final toutes les variables

    artificielles, aprs quoi on peut continuer lalgorithme du simplexe

    avec la solution de base admissible *x pour le problme (3.6).Si 0)min(g , en ce cas au moins un 0*iy et, donc, le

    problme (3.6) na pas de solutions admissibles et donc aucunesolution optimale.

    Cette mthode sappelle encore mthode des deux phases.Une autre mthode est la mthode de la pnalisation, qui consisteen rsolution du problme suivant

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    49/115

    49

    m

    i

    iyMxcf1

    max),(

    0,0

    ,

    yx

    byAx

    (3.8)

    oMest un nombre rel suffisamment grand.Le problme (3.8) a une solution de base

    admissible 0ii by , mi ,...,2,1 ; nixi ,...,2,1,0 . Si aprs

    lapplicationde lalgorithme du simplexe le problme (3.8) a unesolution optimale ),( ** yx pour laquelle 0*y , alors *x est une

    solution optimale du problme (3.6). Dans le cas o 0*

    y leproblme (3.6) na pas de solutions admissibles. Si le problme(3.8) a la fonction objectivement non borne suprieur alors leproblme (3.6) na pas de solutions optimales (na pas de solutionsadmissibles ou la fonction objectif nest pas borne suprieur).

    IV. ualit en programmation linaire

    4.1.Problmes duals symtriques

    Soit un problme de programmation linaire sous forme

    0

    ,

    max),()(

    x

    bAx

    xcxf

    (P)

    o nRc , mRb , nRx et A est une matrice des dimensionsnm .

    Associons au problme (P) un autre problme deprogrammation linaire dfini par

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    50/115

    50

    0

    ,

    min),()(

    y

    cyA

    ybyg

    T (D)

    o mRy , etA, bet csont les donnes du problme (P).Etant donnes le problme (P), appel problme primal, le

    problme (D) sappellera le problme dual associ au problme(P).

    Exemple. Ecrivez le problme dual au problme:max432)( 4321 xxxxxf

    ,4,3,2,1,0

    ,52

    ,8645,4323

    4321

    4321

    4321

    ix

    xxxx

    xxxxxxxx

    i

    Nous avons le problme dualmin584)( 321 yyyyg

    .3,2,1,0

    ,46

    ,14

    ,352,223

    321

    321

    321

    321

    iy

    yyy

    yyy

    yyyyyy

    i

    Si on transforme le problme (D) dans un problme de

    minimum, en lcrivant sous la forme

    ,0

    ,

    max),()(

    y

    cyA

    ybyg

    T (D )

    et construisons le dual du problme (D ) alors le problme dualassoci celui-ci sera le problme (P). Nous pouvons dire que les

    problmes (P) et (D) constituent une paire des problmes duaux

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    51/115

    51

    lun lautre. Ces problmes (P), (D) sappellent encore duauxsymtriques.

    4.2. Thormes duales de la programmation linaire

    Entre les problmes primalet dual peuvent tre tablies desrelations qui sont plusieurs fois trs utiles aussi du point de vupratique que dupoint de vu thorique.

    Thorme 4.1.Soit x une solution admissible du problmeprimal P , et y une solution admissible du problme dual D .Alors a lieu la relation

    ygxf .Dmonstration. Supposons que 0,0 yx sont des

    solutions admissibles des problmes DP, . Multiplions

    bxA du P avec 0y et cyAT du D avec 0x . On

    obtient

    xAyxyAxc T ,,, ,

    xAyyxAyb ,,, ,do rsulte que xfyg et lethorme est dmontr.

    Thorme 4.2. Si *x est une solution admissible du

    problme P et *y est une solution admissible du problme D et a lieu

    *,*, xcyb

    alors *y et *x sont des solutions optimale du problme D et

    respectivement du problme P .Dmonstration. Soit *x une solution admissible du

    problme P . Du thorme 4.1 rsulte que pour chaque solution

    admissible y du problme D a lieu

    *,, xcyb

    et prenant en consideration que *,*, ybxc il suit

    ybyb ,*, .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    52/115

    52

    Donc *y est une solution optimale du problme D . En modeanalogue on montre que *x est une solution optimale du

    problme P . Le thorme est dmontr.

    Thorme 4.3 (Thorme de la dualit). Si le problmeprimal P a une solution optimale alors le problme dual D demme a une solution optimale mais les valeurs optimales desfonctions objectifs des ces deux problmes sont gales: minmax gf .

    Dmonstration.Supposons que le problme P admet unesolution optimale *x . Dans ce cas la solution *x peut treobtenue, En rsolvant laide de lalgorithme du simplexe le

    problme standard associ au problme P :max,0, sxxc

    ,bIxAx s 0,0 sxx

    o msmT RxR ,0,...,0,00

    etI est une matrice unit dordre

    m.

    Si on note avec B la sous-matrice de la matrice IA

    construite par deux colonnes pour lesquelles la solution optimalesera

    00*

    1* bBxx B

    alors 0,1

    jNjBjcaBc , o Bc est le vecteur constitude

    ces composantes du vecteur cqui correspondent aux inconnues *Bx

    du dernier tableau simplexe associau problme standard de plushaut.

    On peut crire quemnjcaBc

    jNjB,...,2,1,,

    1.

    Vu queTT

    B

    T

    B

    cBc 01 ,

    il rsulte

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    53/115

    53

    jBj

    T

    B caBc1

    etTTT

    B cIABc 01 .

    Si on note 1* Bcy TBT de la dernire relation rsulte

    TT cAy * et 0* IyT

    ou

    cyAT * et 0*y

    et donc *y est une solution admissible du problme dual D . Enplus on peut crire

    *,***, *1 xcxcxcbBcbyyb TBTBTBT .

    Mais *x est une solution admissible du problme P et *y est

    une solution admissible du problme D et alors en utilisant lethorme 4.1 on constate que

    *,*,, ybxcyb

    pour chaque solution admissible y, ainsi *y est une solution

    optimale du problme D .Le thorme est dmontr.

    Le problme primal P peut tre considr comme le dual

    du problme D et alors du thorme 4.3 il rsulte

    immdiatement aussi comme dans le cas o le problme dual D

    a une solution optimale suit que le problme primal P a demme une solution optimale et les valeurs optimales des fonctionsobjectifs sont gales.

    Thorme 4.4 (Thorme des cartes complmentaires).Pour que deux solutions admissibles *x et *y des problmes

    duaux P et respectivement D soient des solutions optimales il

    est ncessaire et suffisant que ces solutions vrifient les relations:0**, bAxy ,

    0**, cyAx T .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    54/115

    54

    Dmonstration.Ncessit. Soit *x et *y des solutions

    optimales du problme dual P et respectivement D . On peutcrire

    *,*, xcyb et **,**, xyAAxyT

    .Do

    0**,**, cyAxAxby T .

    Du fait que *,0*,0* Axbxy et cyAT * , de la relation

    den haut ilrsulte0**, Axby ,

    0**, cyAx T .

    Suffisance. Rciproquement, si *x est admissible pour leproblme primal, et *y pour le dual, du 0**, Axby et

    0**, cyAx T , nous avons **,**, AxyxyAT

    , il rsulte

    *,*, xcyb . Tant que *x est une solution optimale du

    problme primal P , et *y solution optimale du problme

    dual D . Donc le thorme est dmontr.

    4.3. Algor i thme simplexe dual

    Lapplication de lalgorithme du simplexe la rsolutiondu problme dual ne conduit pas un nouvel algorithme dersolution des problmes de programmation linaire, appellalgorithme du simplexe dual. Lalgorithme du simplexe dual

    construit une succession de solutions de base du problme primaltant que la premire solution de base admissible est une solutionoptimale du problme. Pour le commencement dcrirons leprocd de trouver une solution optimale laide de la mthodesimplexe, qui correspond la rsolution optimale du problmeprimal.

    Soit *x la solution optimale du problme primalmax,

    xcxf

    .0,xbAx

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    55/115

    55

    De la dmonstration du thorme de dualit (voir 4.2.) on dduitimmdiatement que le vecteur

    B

    T

    cBy1

    * est une solution optimale du problme dual

    min,ybyg

    ,cyAT 0y .

    En langage des tableaux simplexe a signifie que les coordonnesdu vecteur *y sont situes dans la dernire ligne du tableausimplexe qui correspond au vecteur unit.

    Exemple.Etant donn le problme primal:max2 321 xxxxf

    avec les contraintes:

    0,0,0

    ,232

    ,12

    1

    321

    321

    321

    xxx

    xxx

    xxx

    ,

    leproblme dual sera:min2 21 yyyg

    avec les contraintes:

    0,0

    ,23

    ,1221

    ,1

    21

    21

    21

    21

    yy

    yy

    yy

    yy

    On applique lalgorithme du simplexe au problme primaltransforme la forme standard et on obtient la succession suivantedes tableaux simplexe.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    56/115

    56

    EtapeVariablesde base 1

    x 2x 3x 4x 4x is

    i

    )(

    I

    4x 1 1 1/2 1 1 01:1

    5x 2 1 2 [3] 0 1 3:2

    j 0 -1 -1 -2 0 0

    II

    4x 1/3 [2/3] 1/6 0 1 -1/3 3:1

    4x 2/3 1/3 2/3 1 0 1/32

    j 4/3 -

    1/3

    1/2 0 0 2/3

    III

    4x 1/2 1 1/4 0 3/2 -1/2

    4x 1/2 0 7/12 1 -1/2 1/2

    j 3/2 0 7/12 0 1/2 1/2

    La solution optimale du problme primal est ,2/1*1x

    2/1,0*

    3

    *

    2 xx . Conformment au tels mentionn au-dessus, la

    solution optimale du problme dual se trouve dans la dernire

    ligne des tableaux simplexe: 2/1,2/1*2

    *1 yy . Pour les

    deux problmes, la fonction defficacit la valeur2/3minmax gf .

    Passons la description de lalgorithme du simplexe dual.Considrons un problme de programmation linaire en forme

    explicite (avec les notations prcdentes): il faut dterminer lavaleur maximale de la fonction

    mnNmnNNBxxxcxf

    2211,

    dans les contraintes suivantes

    mnNmnNNBxxxx

    2211,

    0,0 BN xx .

    On dit que le problme de programmation linaire estadmissible dual sil est en forme explicite et les diffrences

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    57/115

    57

    mn,...,, 21 sont ngatives. Dans le cas o la matrice de base

    B concide avec la matrice unit I, alors le problme est dualadmissible si les coefficients de la fonction objectif sont non-

    positifs.Supposons que 0j pour chaque mnj ,...,2,1 . La

    solution de base

    00

    Bxx

    sappellesolution admissible dualdu problme.Lalgorithme du simplexe dual est un algorithme simplexe

    appliqu au dualsans construire le problme dual. Cet algorithmeexcute cyclique la successions suivante de pas.

    Pas 1.Le choix de la ligne pivot p.

    On dtermine lindiceptant que

    ii

    pi

    min0

    .

    Dans le cas o ii ,0 , alors la solution de base disponible est

    une solution optimale du problme de programmation linaire.ARRET.Pas 2.Le choix de la colonne pivot.

    Dans la lignepon cherche des lments 0)( pj et on dtermine

    llment avec lindice qpour lequel

    pj

    j

    jpq

    q

    pj )(min

    )( 0)(

    et on dcide llimination parmi des composants de la solution debase de linconnuexpet son remplacement avec la variablexq.

    Si tous jpj ,0)( , alors le problme considr na pas

    de solutions admissibles.ARRET.

    Pas 3. On excute les transformations lmentairesncessaires dans le tableau simplexe associ au problme, avec lepivot

    pq, aprs les rgles de lalgorithme du simplexe et on

    revient aupas 1.

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    58/115

    58

    Exemple. Soit le problme de programmation linairemin3 321 xxx

    avec les contraintes

    3,2,1,0

    ,12

    ,03

    ,2,12

    32

    31

    21

    321

    ix

    xx

    xx

    xxxxx

    i

    En transformant ce problme la forme standard on obtient le

    problme de programmation linaire max3 321 xxxxf

    dans les contraintes

    .7,...,2,1,0,12

    ,03

    ,2

    ,12

    732

    631

    521

    4321

    ixxxx

    xxx

    xxx

    xxxx

    i

    Ce problme est sous la forme duale admissible et en luiappliquant lalgorithme du simplexe dual on obtient la successionsuivante des tableaux simplexe:

    Eta

    pe

    Variabl

    es de

    base1x 2x 3x 4x 5x 6x 7x

    min

    i

    I

    4x -1 -2 -1 1 1 0 0 0

    5x -2 [-1] 1 0 0 1 0 0 2

    6x 0 -3 0 -1 0 0 1 0

    7x -1 0 -1 -2 0 0 0 1

    j 0 1 3 1 0 0 0 0

    pjj/

    1

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    59/115

    59

    II

    4x 3 0 -3 1 1 -2 0 0

    1x 2 1 -1 0 0 -1 0 0

    6x 6 0 -3 -1 0 -3 1 0

    7x -1 0 -1 [-2] 0 0 0 1 1

    j -2 0 4 1 0 1 0 0

    pjj/ 4 1/2

    III

    4x 5/2 0 5/2 0 1 -2 0 1/2

    1x 2 1 -1 0 0 -1 0 0

    6x 13/2

    0 7/2 0 0 -3 1 -1/2

    3x 1/2 0 1/2 1 0 0 0 -1/2

    j -5/2 0 7/2 0 0 1 0 1/2

    Par consquent la solution optimale du problme considrest ,0,2 *2

    *

    1xx 2/1*3x et 2/5maxf . La solution optimale

    du problme dual est ,1,0 *2*

    1 yy 2/1*

    3y .

    Avant de finir ce compartiment, soulignons le fait que

    lalgorithme du simplexe ou lalgorithme du simplexe dual neconstitue pas les mthodes uniques de rsolution des problmes deprogrammation linaire. Avec les autres mthodes de rsolution onpeut faire connaissance dans les ouvrages [5, 6, 11, 13, 16, 17, 23,

    25, 28].

    Lalgorithme du simplexe a t cr en 1947 de GeorgeDantzing (S.U.A.) et aprs ce quon avait vu, consiste en parcourirdes sommeils du polydre des solutions admissibles, ensapprochant toujours de la solution optimale, jusquau momentquand elle est atteinte dans un sommeil du polydre. Dans lesannes 70 on a constat que dans certains cas lalgorithme dusimplexe fonctionne en temps non-polynomial (le temps de calcul

    nest pas une fonction polynomiale). En 1979 le savantL.G.Khachian a propos un algorithme appel mthode

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    60/115

    60

    dellipsode. Dans cet algorithme il est parcouru un ensemble finitdellipsodes, tant que le centre du dernier ellipsode correspondune solution optimale et son temps de calcul est polynomial. Plus

    tard, en 1984, par N. Karmarkar (le savant indien tablit aux tats-Unis d'Amrique) a t lanceune mthode originale de rsolutiondes problmes de programmation linaire, qui considrablementdpasse en rapidit les vieilles mthodes. La stratgie duKarmarkar consiste en reformulation du problme de chaque fois,tant quon obtient un ensemble finit de points situs dans le centredes polydres des solutions admissibles. Pour les dtails en ce quiconcerne les mthodes de Khachian et Karmarkar le lecteur doit

    voir la monographie [28], ainsi que louvragede Karmarkar N.A.New Polinomial-Time Algorithm for Linear Programming. BellAT&T Laboratories 1984, 38 p.

    V. Rsolution des problmes de transport

    5.1.Prliminaires

    Les premires applications de la mthode deprogrammation linaire en rsolution des problmes deplanification les ont constitus les problmes de transport. En4.2.2. a t expos le problme de transport comme un exemple de

    programmation linaire. Ces problmes se rencontrent trs souventen pratique avec loccasion de distribution des produits, de larpartition entre les divers consommateurs etc. On dit quunproblme doptimisation est unproblme de type transport, si sonmodel mathmatique peut tre prsent en mode suivant :dterminer la valeur minimale de la fonction

    m

    i

    n

    j

    ijijxcf

    1 1

    ,

    dans les conditions:

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    61/115

    61

    .

    ;,...,2,1;,...,2,1,0

    ;,...,2,1,

    ;,...,2,1,

    11

    1

    1

    n

    j

    j

    m

    i

    i

    ij

    j

    m

    i

    ij

    i

    n

    j

    ij

    ba

    njmix

    njbx

    miax

    Les donns du problme de transport peuvent tre prsents sousla forme suivante des tableaux appels matrice de transport:

    i

    j

    A

    B 1B 2B 1nB ia

    1A 11c

    12c

    nc1

    1a

    11x 12x nx1

    2A 21c

    22c

    nc22a

    21x 22x nx2

    mA 1mc

    2mc

    mnc

    ma

    1mx 2mx mnx

    jb 1b 2b

    nb T

    Dans le tableau par T est not la valeur commune desm

    i

    n

    j

    ji ba1 1

    . Cette condition sappelle condition dquilibre. Si

    elle nest pas ralise, alors on peut introduire un centre fictif et

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    62/115

    62

    rduire en ce mode le problme un problme de transportquilibr. Vraiment, soit

    m

    i

    n

    j

    ji ba1 1

    .

    Alors on introduit une ligne 1m avecm

    i

    i

    n

    j

    jm aba11

    1et 0,1 jmc pour .,...,2,1 nj

    Pour le casm

    i

    n

    j

    ji ba1 1

    ,

    on introduit une colonne 1n avecn

    j

    j

    m

    i

    in bab11

    1 et mic ni ,...,2,1,01, .

    Ainsi dans les deux situations on arrive la forme quilibre.Le problme de transport est un cas particulier de

    programmation linaire, qui peut tre rsolu par lalgorithme

    simplexe. Grce leur forme particulire, on peut faire larsolution par la mthode spciale. Ensuite nous montrerons unevariante dalgorithme simplexe appel mthode des potentielles.Avant de passer la description de cette mthode nousmontrerons le procd de dtermination de la solution initiale debase.

    5.2.Dtermination de la solution ini tiale de baseDans un problme de transport, le systme des quations

    des conditions avec m+n-1quations indpendantes. Vraiment, lenombre de restrictions est m+n. Rsoudrons chaque quation, encommenant avec la deuxime, du systme

    miax i

    n

    j

    ij ,...,2,1,1

    par rapport avec la variable 1ix :

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    63/115

    63

    .,...,3,2,2

    1 mixaxn

    j

    ijii

    En mode analogue rsoudrons chaque quation, en commenant

    avec la deuxime, du systme

    njbx j

    m

    i

    ij ,...,2,1,1

    ,

    par rapport la variable jx1 :

    .,...,3,2,2

    1 njxbxm

    i

    ijjj

    Des premires quations des systmes mentionns nous avonsn

    j

    jxax2

    1111 ,

    m

    i

    ixbx2

    1111

    oun

    j

    m

    i

    n

    j

    iji

    m

    i

    ijj xabxbax2 2 2

    1

    2

    111 ,

    do on dduit quem

    i

    i

    n

    j

    j abba2

    1

    2

    1 ,

    cest--dire on obtient la condition dquilibre.Par consquent, de la condition dquilibre rsulte que le

    systme des quations restrictions peut tre rsolu par rapportavec 1n-m variables. Donc une solution de base a au plus1n-m composantes 0ijx , les autres seront nulles. Si nous

    avons moins de 1n-m de composantes positives, la solution debase est dgnre.

    Pour la dtermination dune solution initiale de baseexceptant les mthodes connues de la programmation linaire, on

    connat aussi desmthodesspcifiques: le procd du coin Nord-Ouest, le procd de llment minimale (du tableau, de la ligne

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    64/115

    64

    ou de la colonne). Ces procds ne ncessite pas une thoriespciale et nous illustrerons avec leur application en cas de larsolution du problme concrte de transport avec trois centres deproduction

    21

    ,AA et3

    A dans lequel se trouvent les quantits 90t,

    70tet respectivement 50tet qui doivent tre transporten quatrecentres de consommation 321 ,, BBB et 4B en quantits 80t,

    60t, 40t et respectivement 30t. Le cot de transports des centres

    iA aux centres jB est prsent dans la matrice de transport.

    i

    j

    A

    B 1B 2B 3B 4B ia

    1A 2 1 3 2 90

    80 10 - -

    2A 2 3 3 1 70

    - 50 20 -

    3A 3 3 2 1 50

    - - 20 30

    jb

    80 60 40 30 210

    Le procd du coin Nord-Ouest de dtermination de lasolution initiale de base consiste en suivantes. Dans le carr, quisappelle encore caisse, (1,1) du coin Nord-Ouestde la matrice detransport on passe la valeur 80 gale avec le plus petit entre 1a et

    1b ainsi que )90,80min(11x . Vu que nous avons reparti la

    quantit de produit ncessaire dans la premire colonne sepassent ,021x 031x . Dans la matrice de transport, dans ces

    caisses crirons le symbole -. Les caisses dans lesquelles estpassce symbole sappellentles caisses libres.

    Ensuite, fixons lattention sur 12x du coin haut - gauche du

    tableau form par les colonnes 2B et 3B et procdons en mode

    analogue comme pour 11x , ainsi prenons

    1010,60min,min 11212 babx .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    65/115

    65

    Vu que la quantit entire 901a a t repartie aux

    centresB1etB2nous avons 0,0 1413 xx .

    Il nous reste un tableau form des lignes A2, A3 et des

    colonnes B2, B3 et B4. Pour ce tableau sapplique de nouveau leprocd dcrit:0,5070,50min 3222 xx .

    On passe 40,20min23x 0,20 24x .

    Enfin

    2020,50min33x , 3030,30min34x .

    La solution initiale de base est 8011x , 1012x , 5022x ,

    2023x , 2033x , 3034x .La valeur de la fonction defficacit

    est:

    4503012022035031018021f

    La dterminationde la solution initiale de base laide duprocd de llment minimale (du tableau, de la ligne ou de la

    colonne) est faite en mode semblable, sauf que chaque fois lesvaleurs ne se passent pas dans le coin nord-ouest, mais dans les

    caisses avec le cot minimal (du tableau, de la lignerespectivement colonne).

    Par exemple, en utilisant le procd dlment minimaldans la ligne en problme de transport prcdent, on obtient letableau suivant :

    i

    j

    A

    B 1B 2B 3B 4B ia

    1A 2 1 3 2 90

    30 60 - -

    2A 2 3 3 1 70

    40 - - 30

    3A 3 3 2 1 50

    10 - 40 -

    jb 80 60 40 30 210

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    66/115

    66

    On choisit dans chaque ligne llment ijc le plus petit et

    on le reparti dans la caisse correspondante la plus petite quantitparmi les quantits disponibles ia et tels ncessaires

    jiijj baxb ,min: . Dans la premire ligne llment le plus petitest 1

    12c . On destinera pour 6060,90min,min 2112 bax .

    Donc 022x , 032x . Dans A1 il reste encore 90-60-30t.

    Chercherons dans la valeur de jc1 immdiatement suprieur de

    12c . Cette valeur est donne par 21411 cc . On constate quon

    peut prendre arbitrairement nimporte quelle delles. Par exemple,si on choisit la caisse (1,1), alors destinerons pour

    11x la valeur 30

    gale 80,6090min .Ensuite on procde en mode similaire avec les autres lignes

    restes. On obtient la solution initiale de base suivante: 6012x ,

    4021x , 3024x , 1031x , 4033x . La valeur de la fonction

    devient: 3404021033014026013022f

    Le procd de llment minimal dans la colonne estsemblable au procd de llment minimal dans la ligne, mais lesvaleurs jiij bax ,min sont dtermines en base de la valeur

    minimale des lments ijc qui se trouvent dans chaque colonne.

    Le rsultat dapplication de ce procd mne la solution de baseinitiale montredans le tableau suivant:

    i

    j

    A

    B 1B 2B 3B 4B ia

    1A 2 1 3 2 90

    80 10 - -

    2A 2 3 3 1 70

    - 50 - 20

    3A 3 3 2 1 50

    - - 40 -

    jb 80 60 40 30 210

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    67/115

    67

    La valeur de la fonction defficacit est:4301014022015031018023f .

    Le procd de llment minimal du tableau consiste enrpartition des quantits aux destinataires aprs le critre dlment

    ijc minimal du tableau. Lapplication de ce procd donne une

    solution de base initiale qui concide avec celle obtenue par leprocd de llment minimal dans la ligne ou avec celle indiquedans le tableau suivant:

    i

    j

    AB 1B 2B 3B 4B ia

    1A 2 1 3 2 90

    30 60 - -

    2A 2 3 3 1 70

    50 - 20 -

    3A 3 3 2 1 50

    - - 20 30

    jb 80 60 40 30 210

    La valeur de la fonction defficacit sera :4= 2 30 + 1 60 + 2 50 + 3 20 + 2 20 + 1 30 = 350.

    Les solutions de base initiales obtenues par les quatre

    procds ne concide pas et350,430,340,450 4321 ffff .

    Les rsultats obtenus pour le problme considr nepeuvent pas constituer une conclusion en avantage dutilisationdun ou dautre procd dcrit.

    Observation:Dans lexemple suivant m = 3, n = 4. Par lesprocds prsentsplus haut nous avons obtenu m + n1 = 6desvaleurs strictement positives pour xij, et les autres m n(m + n 1) = 12 6 = 6 sont gales zro. On dmontre (voir, parexemple, [6]) que, en cas gnral, pour m centres de stockage et ncentres de destination laide des procds dcrits plus haut nous

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    68/115

    68

    pouvons dterminer au plus m + n 1 valeurs des inconnues xijstrictement plus grandes que zro. Ces variables sappellentvariables de base et dterminent une solution initiale de base. Decette solution initiale de base tabliepar lun des procds prvus,on peut passer une autre solution de base et ainsi de suite,jusquau moment o on obtient la solution optimale. Ensuitedcrirons la mthode appele mthode des potentiels qui est unevariante de lalgorithme simplexe.

    5.3. Mthode des potentiels

    Thorme 5.1. Soit njmixij ,2,1;,,2,1,*

    unesolution optimale du problme de transport. Achaque ligne ide lamatrice de transport il correspond un nombre *iu et chaque

    colonnej- un nombre *jv tant que sont satisfaites les relations:

    .,...,2,1;,...,2,1

    ,0pour

    ,0pour

    ***

    ***

    njmi

    xcvu

    xcvu

    ijijji

    ijijji

    Dmonstration. Le problme de transport peut treconsidr comme un problme dual du problme deprogrammation linaire suivante :

    n

    j

    jj

    m

    i

    ii vbuag11

    max

    avec les restrictions .,...,2,1;,...,2,1, njmicvu ijji

    Si njmivu ji ,,2,1;,,2,1,,**

    est une solution

    optimale du problme de plus haut alors, conformment authorme des cartes complmentaires (voir 4.2), la conditionncessaire et suffisante que, *ijx ,

    *

    iu et*

    jv soient optimales est

    donne par les relationsnjmixcvu ijijji ,,2,1;,2,1,0

    *** .

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    69/115

    69

    Du fait que ** et ji vu sont des solutions admissibles pour le

    problme dual suit quenjmicvu ijji ,,2,1;,2,1,0

    **

    les relations qui en ensemble avec les relations de plus hautdmontre le thorme.

    Les grandeurs uii vjsappellentpotentielsdes centresAietBj.

    Reprenons lexemple de 5.2 et analysons la solution initialede base obtenue par le procd du coin nord-ouest pour les casoptimal. Pour cela, au centre de consommation Bj , j=1,2,3,4 le

    potentielvj.

    i

    j

    A

    B 1B 2B 3B 4B ia

    1A 2 1 3 2 90

    80 10 - -

    2A 2 3 3 1 70

    - 50 20 -

    3A 3 3 2 1 50

    - - 20 30

    jb 80 60 40 30 210

    Conformment au thorme dmontrplus haut pour les caissesoccupes nous avons:

    .1

    ,2

    ,3

    ,3

    ,1

    ,2

    43

    33

    32

    22

    21

    11

    vu

    vu

    vu

    vu

    vu

    vu

  • 8/10/2019 Recherche Operationnelle Elements Cours DS

    70/115

    70

    Donc, pour dterminer les potentiels il faut rsoudre unsystme des six quations avec sept inconnues, qui ont une infinitde solutions. En prenant dans ce systme dquations, parexemple, 0

    1

    u , obtenons

    0,1,1,2,1,2 433221 vvuuvv

    Calculons les diffrences ui+ vj cijpour les caisses libres de lamatrice de transport:

    pour la caisse (1,3): 021331 cvu ;

    pour la caisse (1,4): 001441 cvu ;

    pour la caisse


Recommended