c12
-
Upload
mateescu-alexandra-mihaela -
Category
Documents
-
view
2 -
download
0
description
Transcript of c12
-
Cercetari operationale
Barbacioru Iuliana Carmen
CURSUL 12
-
Cursul 12
2
-
Cuprins
2 Programare liniara 52.1 Modelul matematic al unei
probleme de programare liniara . . . . . . . . . . . . . . . . . . . . 62.2 Forme de prezentare a modelului matematic . . . . . . . . . . . . . 62.3 Clasicarea solutiilor unei probleme de
programare liniara. Proprietati . . . . . . . . . . . . . . . . . . . . 62.4 Metode pentru obtinerea unui program de baza si a unei baze
ortonormate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.5 Algoritmul simplex . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.6 Metode pentru obtinerea unui program de baza initial . . . . . . . 62.7 Dualitatea n programarea liniara . . . . . . . . . . . . . . . . . . . 62.8 Algoritmul simplex dual . . . . . . . . . . . . . . . . . . . . . . . . 62.9 Algoritmul simplex revizuit . . . . . . . . . . . . . . . . . . . . . . 62.10 Modele liniare de tip transport . . . . . . . . . . . . . . . . . . . . 6
2.10.1 Probleme standard de transport . . . . . . . . . . . . . . . 62.10.2 Generalizari ale problemei transporturilor . . . . . . . . . . 62.10.3 Probleme de transport cu capacitati limitate . . . . . . . . 72.10.4 Probleme de transport cu centre intermediare . . . . . . . . 15
Index 17
3
-
Cursul 12
4
-
5
-
Cursul 12
Capitolul 2
Programare liniara
2.1 Modelul matematic al uneiprobleme de programare liniara
2.2 Forme de prezentare a modelului matematic
2.3 Clasicarea solutiilor unei probleme deprogramare liniara. Proprietati
2.4 Metode pentru obtinerea unui program de bazasi a unei baze ortonormate
2.5 Algoritmul simplex
2.6 Metode pentru obtinerea unui program de bazainitial
2.7 Dualitatea n programarea liniara
2.8 Algoritmul simplex dual
2.9 Algoritmul simplex revizuit
2.10 Modele liniare de tip transport
2.10.1 Probleme standard de transport
2.10.2 Generalizari ale problemei transporturilor6
-
Cercetari Operationale Barbacioru Iuliana Carmen
2.10.3 Probleme de transport cu capacitati limitate
Fie ij cantitatea maxima dintr-un anumit produs care poate transportatape ruta (i; j). Modelul problemei de transport constrnsa sa respecte limitareacapacitatii rutelor este:
min
24Xi2M
Xj2N
cijxij
35 (10.14)Xj2N
xij = ai; i 2M (10.15)Xi2M
xij = bj ; j 2 N (10.16)
0 xij ij ; i 2M; j 2 N (10.17)
Problema (10.14)-(10.17) admite solutii daca sunt satisfacute conditiile:
ai 0; bj 0; ij 0;Xi2M
ai =Xj2N
bj (10.18)Xi2M
ij bj ; j 2 N (10.19)Xi2M
ij ai; i 2M (10.20)
Determinarea unei solutii realizabile de baza.
Pentru rezolvarea problemei de transport cu capacitati limitate se folosesc tabelede aceeasi forma cu cele utilizate n problemele standard de transport, dar necare celula a tabelului se nregistreaza si ij , cantitatea maxima de produsecare poate transportata pe ruta (i; j). Pentru determinarea solutiei initiale sealege cpq = min
(ij)fcijg si se atribuie variabilei xpq valoarea maxima compatibila cu
restrictiile, deci:xpq = min fap; bq; pqg
Daca pq < ap si pq < bq , variabila xpq nu este considerata variabila debaza.
Daca pq = ap < bq sau pq = bq < ap, xpq este variabila de baza. Deasemenea xpq apartine bazei daca min fap; bq; pqg este ap sau bq.
7
-
Cursul 12
Vectorul x determinat prin acest algoritm nu constituie totdeauna o solutie.Se poate ntmpla ca unele diponibilitati sa nu e complet epuizate si unele cererisa nu e integral satisfacute din cauza conditiilor xij ij .
Daca sunt satisfacute conditiile (10.18)-(10.20), problema admite solutii.
O solutie realizabila de baza se poate determina prin modicarea vectoruluix.
Pentru expunerea modului n care trebuie modicat x, sa admitem ca ndepozitul k a ramas neexpediata o cantitate de marfa K si ca n punctele deconsum h si l mai sunt necesare cantitatile H si L. Deoarece
Pi2M
ai =Pj2N
bj ,
vom avea H + L = K.Algoritmul pentru transformarea vectorului x ntr-o solutie realizabila de
baza consta n:
pasul 1 : se completeaza linia k cu o celula n care variabila este xk;0 = K sicoloanele h si l cu cte o celula cu x0;h = H;x0;l = L. Se nlocuiesc costurilecij prin dij = 0 si se atribuie celulelor adaugate costurile dk;0 = 1; d0;h =1; d0;l = 1 ;
pasul 2 : se calculeaza multiplicatorii simplex din sistemul de ecuatii:
uk = 1; vh = 1; vl = 1
ui + vj = dij pentru xij 2 B; i 6= k; j 6= h; l
pasul 3 : se cauta solutia pentru care suma:
= xk;0 + x0;h + x0;l
este minima.Daca min 6= 0 , problema (10.14)-(10.17) nu are solutii realizabile, decinu sunt satisfacute conditiile (10.18)-(10.20).Daca min = 0, solutia care s-a determinat este o solutie realizabila debaza pentru problema (10.14)-(10.17).Revenim la problema initiala, stergnd din tabel celulele adaugate sinlocuind dij prin cij .
8
-
Cercetari Operationale Barbacioru Iuliana Carmen
Criteriu de optimalitate.
Fie x solutia realizabila de baza obtinuta n pasul 3.Se calculeaza multiplicatorii simplex din sistemul:
cij = ui + vj pentru toti (ij) 2 B
si costurile comparative:
cij = cij (ui + vj)
Solutia este optima daca:
cij = 0 pentru toti 0 < xij < ijcij 0 pentru toti xij = 0 (10.21)cij 0 pentru toti xij = ij
adica daca toate costurile comparative asociate variabilelor cu valori nule suntnegative, iar cele asociate variabilelor care nu apartin bazei si au valori egalecu capacitatea maxima a rutei sunt nepozitive. Exemplele (2.10.1) si (2.10.2)sunt exemple de organizare optima a transporturilor n cazurile n care rutele aucapacitati limitate.O alta metoda de optimizare a transporturilor cu capacitati limitate, care va expusa ulterior, se bazeaza pe transformarea problemei ntr-o problema cu treiindici.
Exemplul 2.10.1 Se cere organizarea optima a transporturilor necesare aprovizionariicentrelor Cj ; j = 1; :::; 4 cu o marfa depozitata n punctele Di; i = 1; :::; 3, cunoscndca pe unele rute capacitatea de transport este limitata. n tabelul 10.20 numerelenscrise n coltul din dreapta sus a celulei (i; j) reprezinta capacitatea maxima atransportului pe ruta (i; j) : De exemplu, 13 = 100 nseamna ca din depozitulD1 nu pot expediate centrului C3 dect cel mult 100 de unitati. Daca unor ijnu li se atribuie nici o valoare, capacitatea de transport pe acea ruta este practic
9
-
Cursul 12
nelimitata. Daca o ruta (r; p) nu poate folosita, rp = 0:
Tabelul 10.20
C1 C2 C3 C4 aiui
D15010
5015
100 + ...
100 7
50 ...
505
2007
D2 1502006
100 10010
...100
12
...150 +
7500
0
D312 15
10010
508
10010
bjvj
1506
1508
3000
2005
Solutie: Se verica n primul rnd daca problema admite solutii realizabile,
adica daca3Pi=1ij bj si
4Pj=1
ij ai: n exemplul din tabelul 10.20, ecarelinie si coloana are cel putin un ij > M; M ind un numar pozitiv, arbitrar demare, deci este asigurata existenta solutiilor realizabile. Pentru obtinerea solutieiinitiale avem:
min cij = c14 = 5
x14 = min fa1; b4; 14g = min f200; 200; 50g = 50deci x14 nu este o variabila din baza. n continuare gasim:
mini6=1j 6=4
cij = c21 = 6;
x21 = 150
deci x14 apartine bazei.Pentru a marca deosebirea dintre variabilele cu valori nenule care apartin bazeisi cele care nu fac parte din baza, acestea din urma vor trecute n tabel cu cifrebarate. Cel mai mic cost din tabelul 10.20 n care s-a suprimat prima coloanaeste c13 = c24 = 7; deci x13 = 100 (nu apartine bazei) si x24 = 150 (apartinebazei). Eliminnd din tabel coloana a patra, gasim c22 = c33 = 10 si x22 = 100(nu apartine bazei), iar x33 = 100 (apartine bazei), c23 = 12; deci x23 = 100:Prin aceasta atribuire este satisfacuta integral cererea n C3; dar concomitenteste lichidat si disponibilul din D2: Aceasta situatie face ca solutia obtinuta sa e
10
-
Cercetari Operationale Barbacioru Iuliana Carmen
degenerata. ntr-adevar, dupa ultima atribuire, x13 = 50 se gaseste o solutie carecontine n baza cinci valori nenule, n timp ce dimensiunile tabelului cer o solutiecu sase variabile de baza. Deoarece att n linia a doua, ct si n coloana a treiavariabilele au valori diferite de zero, nu se poate aplica metoda perturbatiilorpentru completarea solutiei de baza si aceasta se completeaza transformnd unadin variabilele x13; x22 n variabila de baza. Vom alege pe x13 marcnd aceastadecizie prin bararea valorii ei. Se observa ca s-a ajuns la o solutie realizabila, decivom testa optimalitatea ei calculnd multiplicatorii simplex si costurile compar-ative. Atribuind lui v3 valoarea zero, ceilalti multiplicatori simplex se calculeazacu usurinta. Valorile lor au fost trecute n tabelul 10.20.Calculnd costurile comparative, le mentionam numai pe acelea care arata casolutia nu este optima. Astfel avem:
c14 = 5 (7 5) = 3 > 0; x14 ind la limita superioara,c32 = 15 (10 + 8) = 3 < 0; x23 = 0
deci solutia poate mbunatatita.Sa admitem ca vrem sa mbunatatim solutia micsornd valoarea variabilei x14: Ci-clul transferului cantitatilor transportate trebuie construit utiliznd numai vari-abile care apartin bazei. Acest ciclu, pentru exemplul studiat, este nscris ntabelul 10.20.
Tabelul 10.21
C1 C2 C3 C4Disponibil
aiui
D15010
5015
100 1007
50 505
2002
D2 1502006
100 10010
10012
1507
5000
D312 15
10010
508
1002
Necesarbjvj
1506
15017
30012
2007
Se observa ca nu poate lua dect valoarea zero, deoarece x13 este la limitasuperioara.Modicarea facuta astfel nu schimba planul transporturilor, iar din punct devedere matematic consta numai n transformarea variabilei x14 n variabila apartinnd
11
-
Cursul 12
bazei si a lui x13 n variabila la limita superioara.Costurile comparative asociate solutiei din tabelul 10.21 satisfac conditiile de op-timalitate, deci soluta este optima. Observnd ca c32 = 0 si x32 = 0; putemcauta o alta solutie optima care, evident, va conduce la aceeasi valoare a functieiobiectiv, dar din tabelul 10.21 se constata ca ciclul care trebuie format are unvrf de ordin par n x14, variabila a carei valoare este la limita superioara, deci nu poate lua dect valoarea zero.n concluzie problema admite o singura solutie optima.
Exemplul 2.10.2 Ne propunem sa rezolvam problema de transport cu capacitatilimitate pe unele rute, datele ind continute n tabelul 10.22.
Tabelul 10.22
C1 C2 C3 C4Disponibil
aiui
D1 5010
503 5 4
50
D26 5
70 1003
50 502
120
D3 1508100 100
130 30
450 100
3400
D45 6
1802
502
180
Necesarbjvj
200 150 300 100
Solutie: Construind solutia initiala n acest tabel, se ajunge la urmatoareasituatie: n depozitul D3 ramn 70 de unitati neexpediate, n timp ce C2 si C3sunt aprovizionate sub necesar, cu 50 si respectiv 20 de unitati.Pentru transporturile necesare se construieste tabelul 10.23, care se obtine dintabelul 10.22 adaugnd liniei a treia o celula cu variabila x3;0 si coloanelor doi sitrei celulele cu variabilele x0;2 si x0;3.Toate costurile cij ; i = f1; :::; 4g ; j = f1; :::; 4g se nlocuiesc prin dij = 0; i= f1; :::; 4g ; j = f1; :::; 4g iar costurile corespunzatoare celulelor adaugate suntd3;0 = d0;2 = d0;3 = 1.Folosind acest tabel se cauta
min fx3;0 + x0;2 + x0;3g
12
-
Cercetari Operationale Barbacioru Iuliana Carmen
n tabelul 10.23 s-au construit doua cicluri, din care rezulta ca, lund = 50; ' =20, se obtine min fx3;0 + x0;2 + x0;3g = 0.
Tabelul 10.23
C1 C2 C3 C4 aiui
50...1
20...1
D1 50-...
0
...2500 2
...
...0 0
501
D2......0 0
...70+'
100 0
250 '...
500
1201
D3 70--' 1
...150+
0100100 0
3030: : :0
...50 + ' 100
0400
1
D40 0
1800
500
1801
bjvj
2001
1501
3001
1001
Solutia din tabelul 10.24 este realizabila si este o solutie de baza daca una dinvariabilele la limita superioara este transformata n variabila de baza.
Tabelul 10.24
C1 C2 C3 C4 aiui
D1 8...
2
50 ...
503 15 14
502
D2 1......6
...
...5
90 1003
30 502
1201
D3
...200 ...
8
...
100 + 1001
30 304
70 1003
4000
D4 15 6180
2
502
1802
bjvj
2008
1501
3004
1003
13
-
Cursul 12
Vom considera ca x32 = 100 apartine bazei. Lund u3 = 0, se calculeazamultiplicatorii simplex si costurile comparative.S-au nscris n tabelul 10.24 numai costurile comparative care indica posibilitatilede mbunatatire a solutiei. Deoarece c1;1 = 8 , se ia x1;1 = dar, formnd ciclul,se observa ca = 0, deoarece valoarea variabilei x3;2 nu poate marita. Aceastaiteratie introduce n baza variabila x11 cu valoarea zero si transforma din nou pex32 n variabila la limita superioara.Solutia din tabelul 10.25 nu este optima i printr-o noua iteratie se obtine solutiadin tabelul 10.26 care satisface criteriul de optimalitate, deci nu mai poate mbunatatita.
Tabelul 10.25
C1 C2 C3 C4 aiui
D1 0 + 2
50 503 5 4
500
D2 16 35
90 1003
30 502
1205
D3 200 8
100 1001
30 304
70 + 1003
4006
D4 15 16180
2
502
1804
bjvj
2002
1503
3002
1003
Tabelul 10.26
C1 C2 C3 C4 aiui
D1 302
20 503 5 4
503
D26
305
90 1003
502
1205
D3 1708
100 1001
30 304
100 1003
4009
D45 6
1802
502
1804
bjvj
2001
1500
3002
1006
14
-
Cercetari Operationale Barbacioru Iuliana Carmen
2.10.4 Probleme de transport cu centre intermediare
Sub acest titlu se trateaza problemele n care marfurile produse n unitatile Pi;i = 1; :::;m sunt transportate n depozitele Dk; k = 1; :::; p, care au sarcina dea satisface cererile consumatorilor Bj ; j = 1; :::; n.Depozitele Dk sunt numite centre intermediare. Problema consta n deter-minarea planurilor de transport de la producator la depozite si de la depozite laconsumatori astfel nct cheltuielile de transport necesare aprovizionarii consuma-torilor sa e minime. Pentru formularea problemei folosim urmatoarele notatii:
ai; i 2M = f1; :::;mgproductia n Pi; dk; k 2 P = f1; :::; pgcapacitatea depozitului Dk; bj ; j 2 N = f1; :::; ngcererea consumatorului Bj ; xik; i 2M; k 2 P cantitatea transportata din Pi n Dk; ykj ; k 2 P; j 2 Ncantitatea transportata din Dk n Bj :
Cu aceste notatii, problema se scrie:
min
24Xi2M
Xk2P
cik xik +Xk2P
Xj2N
qkj ykj
35 (10.22)Xk2P
xik = ai; i 2M (10.23)Xi2M
xik = dk; k 2 P (10.24)Xj2N
ykj = dk; k 2 P (10.25)Xk2P
ykj = bj ; j 2 N (10.26)
xik 0; ykj 0; i 2M; k 2 P; j 2 N
daca s-au notat cu cik si qkj costurile de transport ale unei unitati de produsrespectiv din Pi n Dk si din Dk n Bj . Problema are solutii daca sunt satisfacuteconditiile:
ai 0; dk 0; bj 0;Xi2M
ai =Xk2P
dk =Xj2N
bj (10.27)
15
-
Cursul 12
Variabilele xik si ykj sunt independente, astfel, problema de transport cucentre intermediare se descompune n doua probleme succesive:
minXi2M
Xk2P
cik xik
pe multimea solutiilor nenegative a sistemului (10.23)-(10.24);
minXk2P
Xj2N
qkj ykj
pe multimea solutiilor nenegative a sistemului (10.25)-(10.26).
Exemplul 2.10.3 Productia de gru a opt gospodarii agricole dintr-o regiune sedepoziteaza n trei silozuri care vor alimenta doua mori. Se cere planul de repar-tizare a productiei gospodariilor n silozuri si planul de aprovizionare a morilorastfel nct costul total al transporturilor ntregii productii de gru la mori sa eminim.
Solutie: Datele numerice ale problemei sunt cele date n tabelele 10.27 si10.28.
Tabelul 10.27
GospodariiSilozuri
G1 G2 G3 G4 G5 G6 G7 G8
Capacit:
silozuri
{^n mii tone
S1 5 4 //// 3 2 6 //// //// 10
S2 3 2 4 5 //// //// 5 1 8
S3 //// //// 6 5 4 4 3 2 7,5
Produse(mii tone)
3 1,5 4 2 2,5 6 3,5 3
Tabelul 10.28
Silozurimori
S1 S2 S3Capacit:
mori
M1 6 5 7 15,5
M2 4 7 4 10Capacitate
siloz 10 8 7,5
16
-
Cercetari Operationale Barbacioru Iuliana Carmen
Patratele hasurate n tabelul 10.27 arata ca productia unor gospodarii nu poate transportata n anumite silozuri.De exemplu gospodariile G7 si G8 nu pot expedia gru n silozul S1.Numerele nscrise n patratele tabelelor reprezinta costul transportului a 1 000 tde la o sursa la o destinatie, unitatea monetara ind 10 000 lei.Fie xij ; i = 1; :::8; j = 1; 2; 3 variabilele care reprezinta cantitatile transportatedin Gi n Sj si yjk; j = 1; 2; 3; k = 1; 2 variabilele care reprezinta cantitatiletransportate din Sj n Mk.Modelul problemei este de forma (10.22)-(10.26), conditiile (10.27) sunt ndepli-nite si solutia se obtine rezolvnd cele doua probleme de transport ale carordate sunt continute n tabelele 10.27 si 10.28. Costurile asociate variabilelor caretrebuie sa ia valori nule n solutie indca transporturile pe acele rute nu suntngaduite se noteaza cu M , M ind un numar pozitiv arbitrar de mare.Solutia optima a problemei de transport gospodarii-silozuri este data n tabelul10.29, costul corespunzator ind C1 = 31; 5:Solutia optima a problemei de transport silozuri-mori se obtine foarte usor, costulminim ind C2 = 125. Costul minim de transport al ntregii productiii de grula mori este C = C1 + C2 = 216; 5.
Tabelul 10.29
G1 G2 G3 G4 G5 G6 G7 G8
S1 5 4 M 23
2;52
5;56
M M 10
S2 33
1;52
3;54 5 M M 5 1
8
S3M M
0;56 5 4
0;54
3;53
32
7,5
3 1,5 4 2 2,5 6 3,5 3
17
-
Index
Criteriude optimalitate, 9
Modeleliniare de tip transport, 6
Probleme de transportcu capacitati limitate, 7cu centre intermediare, 15
18
Programare liniaraModelul matematic al unei probleme de programare liniaraForme de prezentare a modelului matematicClasificarea solutiilor unei probleme de programare liniara. ProprietatiMetode pentru obtinerea unui program de baza si a unei baze ortonormateAlgoritmul simplexMetode pentru obtinerea unui program de baza initialDualitatea n programarea liniaraAlgoritmul simplex dualAlgoritmul simplex revizuitModele liniare de tip transportProbleme standard de transportGeneralizari ale problemei transporturilorProbleme de transport cu capacitati limitateProbleme de transport cu centre intermediare
Index