Professional Documents
Culture Documents
Előadás
Előadás
9. előadás
E.-Nagy Marianna
Operációkutatás és Aktuáriustudományok Tanszék
Termelőhelyek: T1 , T2 , T3 , azaz m = 3.
Felvevőhelyek: F1 , F2 , F3 , F4 azaz n = 4.
Változók száma = m n = 3 · 4 = 12.
Feltételek (lineáris egyenletek) száma = m + n = 3 + 4 = 7.
Szállítási feladat: megengedett megoldások halmaza
Jelölje a szállítást az x = (x11 , x12 , x13 , x14 , x21 , . . . , x24 , x31 , . . . , x34 )T vektor.
Ekkor a szállítási feladat megengedett (lehetséges) megoldás halmaza a következő
P = {x ∈ R12 : A x = b, x ≥ 0}.
Feladat. P egy konvex politop, azaz egy korlátos, konvex poliéder.
Szállítási feladat: feltétel rendszer és a mátrix rangja
1 1 1 1 0 0 0 0 0 0 0 0 370
0 0 0 0 1 1 1 1 0 0 0 0 620
0 0 0 0 0 0 0 0 1 1 1 1 440
A= 1 0 0 0 1 0 0 0 1 0 0 0 b= 220
0 1 0 0 0 1 0 0 0 1 0 0
380
0 0 1 0 0 0 1 0 0 0 1 0 410
0 0 0 1 0 0 0 1 0 0 0 1 420
A x = b, x ≥ 0.
a11 , a12 , a13 , a14 , a21 , . . . , a24 , a31 , . . . , a34 ∈ R7 jelöli az A mátrix oszlopvektorait
és a(1) , a(2) , . . . , a(7) ∈ R12 pedig a sorvektorait. (Az a11 = e1 + e4 , illetve
általánosan aij = ei + e3+j .)
A mátrix rangja rang(A) ≤ min{7, 12} = 7. Sőt
Legyen adott
a szállítási feladat
A ∈ R7×12 mátrixa és a
b ∈ R7 kínálat/kereslet
vektora.
x11 = 220, x12 = 150, x22 = 230, x23 = 390, x33 = 20, x34 = 420,
Legyen adott
a szállítási feladat
A ∈ R7×12 mátrixa és a
b ∈ R7 kínálat/kereslet
vektora.
x12 = 370, x21 = 220, x23 = 400, x32 = 10, x33 = 10, x34 = 420,
m
X
keresleti feltételek: xij = fj bármely Fj felvevőhelyre
i=1
xij ≥ 0 bármely i, j
n
X m
X
célfüggvény: min cij xij
j=1 i=1
Primál szállítási feladat: mátrix alak
A primál szállítási feladat mátrixa:
A = (a11 , a12 , . . . , a1n , a21 , a22 , . . . , a2n , . . . , am1 , am2 , . . . , amn ),
ahol aij = ei + em+j ∈ Rm+n és a jobboldal
b = (t1 , t2 , . . . , tm , f1 , f2 , . . . , fn )T .
Bizonyítás. Egy változó pontosan egy kínálati és pontosan egy keresleti egyenletben
szerepel, ezekben az együtthatója 1, így az A mátrix első m sorának összegéből
kivonjuk, az utolsó n sorának az összegét, akkor az azonosan nulla vektort kapjuk.
Tehát rang(A) < m + n összefüggés adódik.
Másfelől az A mátrix alábbi m + n − 1 oszlopa lineárisan független:
a11 , a12 , . . . , a1n , a21 , a31 , . . . am 1 .
Jelölje x = (x11 , x12 , . . . , x1n , x21 , x22 , . . . , x2n , . . . , xm1 , xm2 , . . . , xmn )T a
primál szállítási feladat szállítás vektorát. Ekkor a feladat megengedett
megoldásainak a halmaza a következő:
P = {x ∈ Rmn : A x = b, x ≥ 0}.
0 ≤ xij ≤ min{ti , fj },
azaz minden változó korlátos, tehát a P halmaz is korlátos, azaz politop is.
A P halmaz nem üressége következik abból, hogy az Észak-Nyugat sarok
módszer kiegyensúlyozott feladat esetén, véges sok lépésben lehetséges
szállítást állít elő.
Kiegyensúlyozott szállítási feladat: megoldható!
Állítás. A kiegyensúlyozott szállítási feladatnak létezik megengedett
bázismegoldása.
Kiegyensúlyozott szállítási feladat: megoldható!
Állítás. A kiegyensúlyozott szállítási feladatnak létezik megengedett
bázismegoldása.
Bizonyítás. Alkalmazzuk az Észak-Nyugat sarok módszert. Be kell látnunk, hogy
(i) véges sok lépésben megengedett megoldást talál, és (ii) ez bázismegoldás is.
Az algoritmus minden lépése után vagy egy termelőhely kínálata fogy el, vagy egy
fogyasztóhely kereslete teljesül (esetleg mindkettő - ez a degenerált eset, kivéve az
utolsó cella esetén), azaz vagy egy kisebb méretű, kiegyensúlyozott szállítási
feladatunk marad, vagy az algoritmus leáll azzal, hogy minden feltétel teljesült.
Tehát legfeljebb m + n − 1 lépést tesz. Mivel a szállítási feladat kiegyensúlyozott,
így az utolsó lépésben, a (módosított) kínálat és kereslet értéke megegyezik, tehát
a szállítási feladat egy megenegedett megoldását állítottuk elő.
Az algoritmus minden lépésében legalább egy egyenlet teljesülését biztosítottuk egy
változó értékének a megválasztásával, azaz a b vektort legfeljebb m + n − 1
oszlopvektor nemnegatív lineáris kombinációjaként kifejeztük.
Kell: a kiválasztott változókhoz tartozó oszlopvektorok lineárisan függetlenek. Az
egymás után kiválasztott xij változók esetén az i és j indexek közül legalább az
egyik korábban még nem szerepelt, azaz az aij = ei + em+j előállításában szereplő
egységvektorok közül legalább az egyik még nem fordulhatott elő, vagyis a
korábban kiválasztott vektoroktól független az új aij vektor.
Kiegyensúlyozott szállítási feladat: megoldható!
j=1 i=1
ui + vj ≤ cij , ∀ i, j. (1)
xij = ti , i = 1, 2, . . . , m
j=1
m
X
xij = fj , j = 1, 2, . . . , n
i=1
n m
X X
min cij xij
j=1 i=1
Komplementaritási feltételek:
(cij − ui − vj ) xij = 0 i = 1, 2, . . . , m, j = 1, 2, . . . , n.
Hurkot keresünk...
Szállítási feladat: példa (folytatás)
Hurkot keresünk...
Szállítási feladat: példa (folytatás)
Hurkot keresünk...
Szállítási feladat: példa (folytatás)
Hurkot keresünk...
Szállítási feladat: példa (folytatás)
Hurkot keresünk...
Szállítási feladat: példa (folytatás)
Megvan a hurok!
Szállítási feladat: példa (folytatás)
Mennyit javíthatunk?
Meg kell őriznünk, a nemnegativitást: min{220, 230, 20} = 20.
Szállítási feladat: példa (folytatás)
Az új bázismegoldás.
Szállítási feladat: példa (folytatás)
Bland szabály:
Tekintsük az indexeket lexikografikus sorrendben
Pm Pn
Ha kisebb a kínálat, mint a kereslet: i=1 ti < j=1 fj
fiktív termelő bevezetése, innen a szállítás 0 költségű
; vannak olyan fogyasztók, akik igényét nem tudjuk teljesíteni
Pm Pn
Ha kisebb a kereslet, mint a kínálat: i=1 ti > j=1 fj
fiktív fogyasztó bevezetése, ide a szállítás 0 költségű
; vannak olyan termelők, akiknél raktáron marad áru
fiktív cellák a slack változóknak felelnek meg