A szállítási feladat klasszikus megfogalmazása a következő. Adott n számú F 1. mennyiségűhomogén termékkel rendelkeznek, valamint m számú R 1



Hasonló dokumentumok
Periodikus figyelésű készletezési modell megoldása általános feltételek mellett

Példák ekvivalencia relációra (TÉTELként kell tudni ezeket zárthelyin, vizsgán):

Méréselmélet: 5. előadás,

KOMBINATORIKA ELŐADÁS osztatlan matematika tanár hallgatók számára. Szita formula

Ciklikusan változó igényűkészletezési modell megoldása dinamikus programozással

Az entrópia statisztikus értelmezése

Egy negyedrendű rekurzív sorozatcsaládról

Az elektromos kölcsönhatás

Töréskép optimalizálás Elmélet, megvalósítás, alkalmazás

Operációkutatás. 4. konzultáció: Szállítási feladat. A feladat LP modellje

IDA ELŐADÁS I. Bolgár Bence október 17.

Support Vector Machines

S Z Á L L Í T Á S I F E L A D A T

11. Előadás. 11. előadás Bevezetés a lineáris programozásba

Békefi Zoltán. Közlekedési létesítmények élettartamra vonatkozó hatékonyság vizsgálati módszereinek fejlesztése. PhD Disszertáció

Statisztikai próbák. Ugyanazon problémára sokszor megvan mindkét eljárás.

4 2 lapultsági együttható =

Philosophiae Doctores. A sorozatban megjelent kötetek listája a kötet végén található

8. Programozási tételek felsoroló típusokra

Hipotézis vizsgálatok. Egy példa. Hipotézisek. A megfigyelt változó eloszlása Kérdés: Hatásos a lázcsillapító gyógyszer?

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2018/

Egyes logisztikai feladatok megoldása lineáris programozás segítségével. - bútorgyári termelési probléma - szállítási probléma

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2017/

Statisztika I. 3. előadás. Előadó: Dr. Ertsey Imre

A bankközi jutalék (MIF) elő- és utóélete a bankkártyapiacon. A bankközi jutalék létező és nem létező versenyhatásai a Visa és a Mastercard ügyek

Elosztott rendszerek játékelméleti elemzése: tervezés és öszönzés. Toka László

Egész számok. pozitív egész számok: 1; 2; 3; 4;... negatív egész számok: 1; 2; 3; 4;...

Relációk. Vázlat. Példák direkt szorzatra

A korlátozás programozás alapjai

d(f(x), f(y)) q d(x, y), ahol 0 q < 1.

Vázlat. Relációk. Példák direkt szorzatra

Logisztikai költségek

Dr. Ratkó István. Matematikai módszerek orvosi alkalmazásai Magyar Tudomány Napja. Gábor Dénes Főiskola

MEZŐGAZDASÁGI TERMÉKEK FELVÁSÁRLÁSI FOLYAMATÁNAK SZIMULÁCIÓJA, KÜLÖNÖS TEKINTETTEL A CUKORRÉPÁRA OTKA

Fuzzy rendszerek. A fuzzy halmaz és a fuzzy logika

Sorozatok I. Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma)

Tömegközlekedési rendszer tervezéséhez alkalmazható, forgalom-megosztást előrebecslő modell Déska Viktória - Szöllősy Zsolt - Dr. Csiszár Csaba 1.

Forgácsolási paraméterek mûvelet szintû optimalizálása

The original laser distance meter. The original laser distance meter

DÖNTÉSTÁMOGATÓ MÓDSZEREK segédlet I. rész

KÖZLEKEDÉSI ALAPISMERETEK (KÖZLEKEDÉS-ÜZEMVITEL)

1.5.1 Büntető-függvényes módszerek: SUMT, belső, külső büntetőfüggvény

Algoritmusok és adatszerkezetek gyakorlat 09 Rendezések

1/ gyakorlat. Lineáris Programozási feladatok megoldása szimplex módszerrel. Pécsi Tudományegyetem PTI

A 2015/2016. tanévi Országos Középiskolai Tanulmányi Verseny döntő forduló MATEMATIKA III. KATEGÓRIA (a speciális tanterv szerint haladó gimnazisták)

GAZDASÁGI ÉS NATURÁLIS CÉLFÜGGVÉNYEK KOMBINÁLT ALKALMAZÁSA EGY EGYSZERŰ LOGISZTIKAI PÉLDÁN

LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL

Darupályák ellenőrző mérése

I. A közlekedési hálózatok jellemzői II. A közlekedési szükségletek jellemzői III. Analitikus forgalom-előrebecslési modell

Gráfelméleti megközelítés rendszerek strukturális modellezésére (A holográfia elv kiterjesztése általános rendszerekre) Bevezetés

METROLÓGIA ÉS HIBASZÁMíTÁS

Elektrokémia 03. Cellareakció potenciálja, elektródreakció potenciálja, Nernst-egyenlet. Láng Győző

Balogh Edina Árapasztó tározók működésének kockázatalapú elemzése PhD értekezés Témavezető: Dr. Koncsos László egyetemi tanár

15. LINEÁRIS EGYENLETRENDSZEREK

OSZTHATÓSÁG. Osztók és többszörösök : a 3 többszörösei : a 4 többszörösei Ahol mindkét jel megtalálható a 12 többszöröseit találjuk.

A sokaság/minta eloszlásának jellemzése

s n s x A m és az átlag Standard hiba A m becslése Információ tartalom Átlag Konfidencia intervallum Pont becslés Intervallum becslés

Leica DISTOTMD510. X310 The original laser distance meter. The original laser distance meter

A multikritériumos elemzés célja, alkalmazási területe, adat-transzformációs eljárások, az osztályozási eljárások lényege

Döntéstámogató módszerek segédlet

M. 33. Határozza meg az összes olyan kétjegyű szám összegét, amelyek 4-gyel osztva maradékul 3-at adnak!

KOVÁCS BÉLA, MATEMATIKA I.

ALGORITMUSOK, ALGORITMUS-LEÍRÓ ESZKÖZÖK

1. fogalom. Add meg az összeadásban szereplő számok elnevezéseit! Milyen tulajdonságai vannak az összeadásnak? Hogyan ellenőrizzük az összeadást?

,...,q 3N és 3N impulzuskoordinátával: p 1,

Gyakorló feladatok Alkalmazott Operációkutatás vizsgára. További. 1. Oldja meg grafikusan az alábbi feladatokat mindhárom célfüggvény esetén!

Műszaki folyamatok közgazdasági elemzése. Kevert stratégiák és evolúciós játékok

KÖZBESZERZÉSI ADATBÁZIS

Függvények Megoldások

Mechanizmusok vegyes dinamikájának elemzése

Regresszió. Fő cél: jóslás Történhet:

1.Tartalomjegyzék 1. 1.Tartalomjegyzék

1/ gyakorlat. Lineáris Programozási feladatok megoldása szimplex módszerrel. Pécsi Tudományegyetem PTI

5.1. A szállítás fontosabb jellemzői Hoover-féle egyik alapkő: a szállítási/közlekedési költségek minimalizálása transzferálható inputok és outputok

Hely és elmozdulás - meghatározás távolságméréssel

Összegzés a 92/2011.(XII.30.) NFM rendelet 9. melléklete alapján

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI EMELT SZINT Trigonometria

Adatsorok jellegadó értékei

Egyenáramú szervomotor modellezése

Az R halmazt a valós számok halmazának nevezzük, ha teljesíti az alábbi 3 axiómacsoport axiómáit.

/11 Változtatások joga fenntartva. Kezelési útmutató. UltraGas kondenzációs gázkazán. Az energia megőrzése környezetünk védelme

10. Koordinátageometria

Dualitás Dualitási tételek Általános LP feladat Komplementáris lazaság 2017/ Szegedi Tudományegyetem Informatikai Intézet

I. Egyenlet fogalma, algebrai megoldása

Trigonometria Megoldások. 1) Igazolja, hogy ha egy háromszög szögeire érvényes az alábbi összefüggés: sin : sin = cos + : cos +, ( ) ( )

1. Oldja meg grafikusan az alábbi feladatokat mindhárom célfüggvény esetén! a, x 1 + x 2 2 2x 1 + x 2 6 x 1 + x 2 1. x 1 0, x 2 0

Biostatisztika e-book Dr. Dinya Elek

Frank András MATROIDELMÉLET május 20.

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI EMELT SZINT Exponenciális és Logaritmikus kifejezések

A gabonavertikum komplex beruházás-elemzés módszertani fejlesztése OTKA: Részletes zárójelentés Témavezető: Dr. Ertsey Imre

A szállítási feladat. Készítette: Dr. Ábrahám István

Miskolci Egyetem Gépészmérnöki és Informatikai Kar Alkalmazott Informatikai Tanszék

Numerikus módszerek 1.

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Függvények

A dualitás elve. Készítette: Dr. Ábrahám István

Szárítás során kialakuló hővezetés számítása Excel VBA makróval

PhD értekezés. Gyarmati József

A Ga-Bi OLVADÉK TERMODINAMIKAI OPTIMALIZÁLÁSA

Egyenletek, egyenlőtlenségek VII.

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I.

Átírás:

Dr. BenkőJános A szállítás feladat 4. A SZÁLLÍTÁSI FELADAT A szállítás feladat klasszkus megfogalmazása a következő. Adott n számú, F 2,..., F n feladó, akk f 1, f 2,..., f n mennységűhomogén termékkel rendelkeznek, valamnt m számú,,..., R m megrendelő, akk r 1, r 2,..., r m mennységet gényelnek a szóban forgó termékből. Jelentse c azt a falagos szállítás költséget, amelybe az egységny termék szállítása kerül, ha azt az -edk feladótól a -edk megrendelőhöz szállítuk. A cél a megrendelők gényét úgy kelégíten, hogy a szállítás összes költsége mnmáls legyen. Ha x az -edk feladótól a -edk megrendelőhöz szállítandó mennységet elent, akkor a feladatot a következőformában írhatuk fel: (4.1) x ( = 1,...,n) ( = 1,...,m), (4.2) x f, (4.3) x r, (4.4) f r, (4.5) c x z mn. A modell felírása után tekntsük a feltételek elentését: Az (4.1) feltétel azt elent, hogy a szállítás egyrányú a feladóktól a megrendelők felé. A (4.2) feltétel szernt a feladók készletét el kell szállítan. A (4.3) feltételben kkötük, hogy a megrendelők gényét k kell elégíten. A (4.4) feltétel értelmében a feladók készlete egyenlőa megrendelők gényével. Az (4.5) lneárs függvényben fogalmazzuk meg a célt. (Az összes szállítás költség akkor mnmáls, ha a falagos költségek és a szállított mennységek szorzatanak összege mnmáls.) A gyakorlatban az alapmodell (4.4) feltétele rtkán telesül, azaz a f r. Ilyenkor a (4.2) és (4.3) feltételekben az egyenletek helyett csak egyenlőtlenségek követelhetők meg: ha a f r, akkor x f, ha a f r, akkor x r.

Ezek a formák fktív feladó vagy megrendelőbektatásával könnyen vsszavezethetők az alapmodellre. A létezőés a fktív feladók, lletve megrendelők vszonylatához c értékűfalagos költséget rendelünk, a (4.4) feltételt pedg a úgy bztosítuk, hogy a fktív feladót r f készlettel, a fktív megrendelőt f r génnyel szerepeltetük. A gyakorlat problémák megoldása során előfordulhat olyan kkötés s, hogy bzonyos feladók nem szállíthatnak bzonyos megrendelőknek. Ezeket a korlátozásokat az alapmodell változtatása nélkül úgy vehetük fgyelembe, hogy a tltott relácókhoz c falagos költséget rendelünk. A gyakorlatban a tltott relácók költsége: c, ahol sokkal nagyobb, mnt a több c elem. Az -mel elölt mennységet szokás tltótarfának nevezn. A tltótarfát alkalmazzuk akkor s, amkor a feladók készlete nagyobb, mnt a megrendelők génye, és valamely feladónál nem maradhat készlet. Ezt bztosan úgy érhetük el, hogy a ktüntetett feladó nem szállíthat a fktív megrendelőnek. Fordított esetben, amkor a megrendelők génye a nagyobb, és valamely megrendelőgénye elsőbbséget élvez, akkor a fktív feladó nem szállíthat az elsőbbséget élvezőmegrendelőnek. A tltótarfa alkalmazásának lehetőséget a gyakorlat problémák megfogalmazásakor részletesen bemutatuk. Feltétlen említést érdemel, hogy a klasszkus formában, az anyagmozgatásban használatos kfeezésekkel megfogalmazott modell nagyon sokoldalúan alkalmazható más problémák megoldására s. Ezért talán helyesebb az rodalomban kevésbé elteredt elosztás feladat elnevezés, a megtévesztőszállítás feladat helyett. Említést érdemel az elosztás feladatoknak a hozzárendelés feladat néven smert csoporta, amkor s t =r =1 mnden,-re és n=m. Ilyen feladat megoldása merül fel akkor, amkor n számú különbözőanyagmozgatás műveletet kell hozzárendeln n számú, különbözőműszak paraméterrel ellemezhető géphez, és a munka elvégzésére fordított a költség mnmalzálása a cél. A c falagos szállítás költséget eddg hallgatólagosan állandónak tekntettük. A gyakorlatban azonban előfordulhat, hogy c az x lneárs vagy kvadratkus függvénye. Ilyen ellegűfeladatokkal nem foglalkozunk, de megemlítük, hogy ezek megoldására s hatékony algortmusok állnak rendelkezésre [41]. Végül megegyezzük, a modell maxmumfeladatok megoldására s alkalmas. A cél megfordítását úgy érhetük el, hogy a c falagos költségelemeket 1-gyel szorozzuk. A szállítás feladat megoldására több heursztkus és egzakt eredményt szolgáltató módszert smerünk. A közelítőmódszerek egyrészt az optmumhoz közel bázsmegoldást adnak az egzakt elárásokhoz, másrészt kéz számolás esetén kevesebb munkával szolgáltatnak a gyakorlat számára elfogadható eredményt. Ezért mndkét területről bemutatunk algortmusokat. Ezeket a közérthetőség kedvéért egy példa megoldásával párhuzamosan smertetük. 2

4.1. A Vogel-Korda-féle elárás A heursztkus elárások közül az egyk leghatékonyabb és az egyk legsmertebb a Vogel-Korda-féle módszer. A módszer bemutatásához tekntsük a következőpéldát. Legyen a feladók száma n=3, a készletük f =[5,4,3]. A megrendelők száma m=4, gényük r =[4,1, 6,1]. A falagos szállítás költségek mátrxa: 6 4 1 5 C = 2 1 3 8 1 2 1 1 Az elsőlépés a költségmátrx redukálása. Ha a mátrx mndegyk sorának elemeből levonuk a sorban található legksebb elemet, mad az így kapott mátrx mndegyk oszlopának elemeből levonuk az oszlopban található legksebb elemet, akkor olyan költségmátrxhoz utunk, amelyhez ugyanazon optmáls megoldás tartozk, mnt az eredethez. Legyen p az -edk sor, q pedg a -edk oszlop legksebb eleme, azaz p mn{ c 1, 2,..., m}, q mn{ c p 1, 2,..., n}, akkor a redukált mátrx eleme: c c p q. Ezt helyettesítsük az (4.5) célfüggvénybe: z ( c p q ) x z c x p x q x z c x p ( x ) q ( x ) Felhasználva a (2) és (3) összefüggéseket a (4.6) z c x p f q r. Ezzel z célfüggvényt az x -től függőés attól független részekre bontottuk, és a redukcóra vonatkozó állításunkat bzonyítottuk. Íruk fel ezek után a példánkat táblázatos formában, mad hatsuk végre a redukcót. f 6 4 1 5 5 F 2 2 1 3 8 4 F 3 1 2 1 1 3 r 4 1 6 1 3

f 5 3 4 5 F 2 1 2 7 4 F 3 1 3 r 4 1 6 1 A következőlépés a költségelemek rangsorolása az ún. dfferencák alapán. A dfferencákat úgy számíthatuk k, hogy mnden oszlopban és sorban vesszük a mnmáls elemek különbségét. A sorokban: Az oszlopokban: 3 =3, 1 =1, =. 1 =1, 1 =1, =, 4 =4. Ha az előzőtáblázatunkat kegészítük a dfferencákkal, akkor a következőtáblázatot nyerük: f 5 3 4 5 3 F 2 1 2 7 4 1 F 3 1 3 r 4 1 6 1 1 1 4 A dfferencák alapán dönthetünk arról, hogy melyk sorban lletve oszlopban kezdük a programozást. Azt a sort, lletve oszlopot részesítük előnyben, amelykhez a legnagyobb dfferenca tartozk. Esetünkben ez egyértelműen a 4. oszlop. Ha a dfferencák halmazában nncs egyértelműen maxmáls elem, akkor a legnagyobb dfferencákhoz tartozó sorok lletve oszlopok közül szabadon választhatunk. A kválasztott sor vagy oszlop mnmáls elemére a lehetőlegnagyobb mennységet programozzuk. Azt a sort, lletve oszlopot elhagyuk, ahol a készlet -ra csökken, és úra kszámítuk a dfferencákat. A leírt elárást ezt követően addg folytatuk, amíg az összes feladó készletét, lletve megrendelőgényét szét nem osztottuk. Az elárás lépéset a következőtáblázatokban nyomon követhetük. f 5 3 4 5 3 F 2 1 2 7 4 1 F 3 1 1 2 r 4 1 6 1 1 4 4

f 5 3 5 3 F 2 1 2 4 1 F 3 1 2 r 4 1 1 1 1 f F 2 1 2 4 1 F 3 1 1 1 r 4 1 1 1 2 f F 2 1 1 3 1 F 3 1 1 1 r 4 1 1 A megoldás: f F 2 1 3 F 3 1 r 1 x 13 =5, x 21 =3, x 22 =1, x 31 =1, x 33 =1, x 34 =1. A célfüggvény értéke: z =1*5+2*3+1*1+1*1+1*1+1*1=15, am, mnt később látn foguk, az optmáls megoldás s. Természetesen nagyobb volumenűfeladatoknál ez nem mndg következk be, csupán abban lehetünk bztosak, hogy az optmumhoz közel megoldást kapunk. 4.1. példa: Olduk meg a következőszállítás feladatokat a Vogel- Korda módszerrel: 1 2 6 6 3 5 1 9 3 2 7 6 9 5 4 5 4 5

2 4 1 3 5 6 1 6 2 11 1 6 4.2. A korlátozás és szétválasztás módszerének alkalmazása Az optmumszámítás területén az elmúlt évtzedekben előtérbe kerültek az ún. kombnatorkus módszerek. Ezek közé sorolható a korlátozás és szétválasztás. A továbbakban ennek gyakorlat alkalmazását mutatuk be a szállítás feladaton. vel a szállítás probléma mnmumfeladat, a korlátozás tevékenységnél alsó korlátot állapítunk meg, a szétválasztásnál pedg a legksebb alsó korlátot vesszük fgyelembe [11]. Az összes megoldások halmazára alsó becslést úgy nyerünk, hogy az előzőpontban bemutatott módon redukáluk a C költségmátrxot. A (4.6) alapán könnyű belátn, hogy a redukcó nagysága: a célfüggvényben: p f q r, z c x p f q r bekövetkezett változásokat mutata. Az s belátható, hogy a c matt a redukcó mértékénél ksebb értékűmegoldás nem található, ezért az összes megoldások halmazához alsó korlátként a összeget rendelük. z p f q r c elemre kszá- Szétválasztás krtérumnak tekntsük az összes mított r mn ( c k 1, 2,..., 1, 1,..., m) f ( c k 1, 2,..., 1, 1,..., n) r k k összegek halmazából a maxmálsat, azaz a szétválasztás krtérum R r max. Ez gyakorlatlag azt elent, valamenny c elemre megvzsgáluk, hogy mlyen mértékben növekedne a z célfüggvény, ha a vzsgált helyet tartalmazó megoldásokat kzárnánk a megoldások halmazából, mad ezek közül azt választuk, amelynek a kzárása a legnagyobb célfüggvény növekedést eredményez. aga az elárás nagyon egyszerű, az R -nek megfelelőc = helyére c =-t írunk, am R redukcót tesz lehetővé. előtt azonban ezt megtennénk, megvzsgáluk, hogy mlyen mértékben növekedne a célfüggvény akkor, ha a kválasztott -vszonylatra a lehetőlegnagyobb mennységet programoznánk. Ezt úgy hatuk végre, hogy a kválasztott helyre a lehetőlegnagyobb mennységet programozzuk, mad azt a sort vagy oszlopot, ahol -ra csökkent a készlet, elhagyuk. Ezt követően redukáluk a maradék költségmátrxot. Az így elérhetőredukcó: R p f q r, 6

ost már eldönthetük, hogy a szétválasztás krtérum alapán kválasztott vszonylat kzárása (x =), vagy bevonása (x >) kedvezőbb-e számunkra. Így gyakorlatlag az összes megoldások halmazát kettéválasztuk. Az elsőbe tartoznak azok, amelyek nem tartalmazzák, a másodkba pedg azok, amelyek tartalmazzák az -vszonylatot. Ha az R R, akkor az helyet tartalmazó megoldásokat kzáruk. A c = lesz, redukáluk a költségmátrxot, és kszámítuk az ú mátrxhoz tartozó alsó korlátot: z 1 z R. Ha az R R, akkor az vszonylatra programozunk. Elhagyuk azt a sort vagy oszlopot, ahol -ra csökkent a készlet, redukáluk a költségmátrxot, és kszámítuk az ú mátrxhoz tartozó alsó korlátot: z 1 z R. Ezt követően a leírtakat addg smételük, amíg az összes készletet el nem osztuk. A továbbakban alkalmazzuk az elárást az előzőpontban megsmert példa megoldására. Redukáluk a költségmátrxot: f 6 4 1 5 5 F 2 2 1 3 8 4 F 3 1 2 1 1 3 r 4 1 6 1 f 5 3 4 5 F 2 1 2 7 4 F 3 1 3 r 4 1 6 1 A redukcó mértéke, amely egyben az alsó korlát s: z =1*5+1*4+1*3=12. Határozzuk meg a szétválasztás krtérumot! r 13 =3*5+=15 r 22 =1*4+1*1=5 r 31 =+1*4=4 r 33 =+= r 34 =+4*1=4 R =max{r }=3 =15 Az 1-3 vszonylat kzárása tehát 15-nel növel a célfüggvény értékét. ost nézzük meg, hogy az 1-3-vszonylat bevonása mlyen növekedést eredményez. Az 1-3 helyre programozható maxmáls mennység 5 egység, így az elsősor készlete -ra csökken, ezért az elsősort elhagyuk, és redukáluk a megmaradó C 1 költségmátrxot. A lépések a táblázatokban követhetők. 7

f 5 3 5 4 F 2 1 2 7 4 F 3 1 3 r 4 1 1 1 Az elérhetőredukcó: f F 2 1 2 7 4 F 3 1 3 r 4 1 1 1 3. vel az R13 R, az x 13 13 =5, a C 1 mátrxot bontuk tovább, a hozzá tartozó alsó korlát z1 z R 13 12. Ezután a C 1 költségmátrxhoz tartozó szétválasztás krtérumot határozzuk meg: r 22 =1*4+1*1=5 r 31 =+1*4=4 r 33 =+2*1=2 r 34 =+7*1=7 R =max{r }=4 =7 A tovább lépéseket kommentár nélkül közölük. f F 2 1 2 7 4 F 3 1 1 2 r 4 1 1 A f F 2 1 2 4 F 3 1 2 r 4 1 1 4, R R, x 34 34 34 1 z2 z 1 R 34 12. C 2 mátrxhoz tartozó szétválasztás krtérum: 8

r 22 =1*4+1*1=5 r 31 =+1*4=4 r 33 =+2*1=2 R =max{r }=2 =5 f F 2 1 1 2 3 F 3 1 2 r 4 1 A f F 2 1 3 F 3 2 r 4 1 R 3, R R, x 1, 22 22 22 22 z3 z 2 R 22 15 C 3 mátrxhoz tartozó szétválasztás krtérum: r 21 =1*3+=3 r 31 =+= r 33 =+1*1=1 R = max{r }=1 =3 f F 2 3 1 F 3 2 r 1 1 f F 2 F 3 2 r 1 1 R 21, R21 R 21, x21 3, z4 z 3 R 21 15. Az utolsó sorban a szétosztás már egyértelmű, és a elemek matt a célfüggvény értéke sem változk. f F 2 F 3 1 1 r 9

A megoldás: x 1, x 1, 31 33 z z 4 15. x 5, x 3, x 1, x 1, x 1, x 1. 13 21 22 31 33 34 A célfüggvény értéke: z=1*5+2*3+1*1+1*1+1*1+1*1=15. Az eredményeket összehasonlítva a Vogel-Korda-féle elárással kapott eredményekkel megállapíthatuk, hogy a korlátozás szétválasztás s optmumot adott. Természetesen az optmumban ennél az elárásnál sem lehetünk bztosak. 4.2. példa: Olduk meg a következőszállítás feladatot a korlátozás és szétválasztás módszerével: 4.3. A dsztrbúcós módszer 2 5 7 3 7 15 1 6 2 5 15 5 15 A szállítás feladat egzakt megoldása között ktüntetett szerepe van a lneárs programozásban általánosan alkalmazható szmplex-módszernek, amely a korább tanulmányokból smeretes. A szmplex-táblába foglalt modellből ugyans egyértelműen látható a feladat specáls struktúráa. Ez lehetővé tesz a szmplex algortmusnál ksebb számítás és memóragényűelárások alkalmazását, nevezetesen a magyar és a dsztrbúcós módszerét. A (4.2), (4.3) feltételek és az (4.5) célfüggvény alapán az előzőpontban megfogalmazott példát szmplex-táblába foglalhatuk (4.1. táblázat). 4.1. táblázat A mntapélda szmplex-tábláa x 11 x 12 x 13 x 14 x 21 x 22 x 23 x 24 x 31 x 32 x 33 x 34 u 1 1 1 1 1 5 u 2 1 1 1 1 4 u 3 1 1 1 1 3 v 1 1 1 1 4 v 2 1 1 1 1 v 3 1 1 1 6 v 4 1 1 1 1 6 4 1 5 2 1 3 8 1 2 1 1 A (4.2) és (4.3) feltételek egy m+n egyenletből álló egyenletrendszert határoznak meg, ahol az smeretlenek száma m*n. A táblából látható, hogy egy olyan lneárs programozás feladattal állunk szemben, ahol a feltétel egyenletek csak és 1 együtthatóú x tagokat tartalmaznak, és 1

az együtthatómátrx oszlopvektora az e egy n eleműés e m elemű egységvektorok. A tábla alapán belátható az s, hogy a feladat duál pára, ha u -vel és v -vel elölük a duálváltozókat: (4.7) u v c ( 1,..., n; 1,..., m) (4.8) f u r v z max. A feladat felépítése lehetővé tesz, hogy a szmplex-tábla helyett az ún. dsztrbúcós táblából ndulunk k, amely csak a szmplex-tábla peremadatat (C, f, r) tartalmazza. Később látn foguk, a dsztrbúcós táblán kelölhetőa prmál feladat egy lehetséges bázsmegoldása, és elvégezhetőa bázsmegoldás avítása anélkül, hogy a szmplex-táblán belül változásokat nylvántartanánk. A dsztrbúcós módszer alkalmazásának előfeltétele a (4.4) feltétel telesülése, am matt a szmplex-tábla n+m egyenlete közül csak n+m 1 független egymástól. Ebből vszont az következk, hogy a bázsmegoldásnak n+m 1 eleme van, mvel a kötött smeretlenek száma megegyezk az együtthatómátrx rangával. A (4.7) duál feltételek pedg a kötött helyeken egyenlőség formáában telesülnek. Ezt a megállapításunkat az optmaltás vzsgálat során fel foguk használn. Az ndulóprogram előállítása Az ndulóprogram (az elsőbázsmegoldás) előállítására az rodalomban több módszer smeretes. Többek között a Vogel-Korda-féle elárás s alkalmazható. Itt most a sor és oszlop mnmum módszert smertetük. A módszer bemutatását összekötük az alkalmazással, ezért íruk fel smét a mntapéldánk nduló dsztrbúcós tábláát, amelyben nyomon követhetük a megoldás lépéset. A szállítás feladat f 6 4 1 5 5 5 F 2 2 2 1 1 3 8 1 4 F 3 1 2 2 1 1 1 3 r 4 1 6 1 a/ Az f és r elemek között megkeressük a legnagyobbat. A példában r 3 =6. b/ A kválasztott feladó sorában, vagy megrendelőoszlopában megkeressük a legksebb költségűvszonylatot (c 13 =1), és erre a helyre akkora mennységet programozunk, amennyt az f és r korlátok megengednek. A példában f 1 < r 3, így x 13 =5. c/ A programozást a következőlegksebb költségűhelyen folytatuk, mközben betartuk a következőszabályokat: ndg maradunk egy sorban vagy oszlopban, amíg az lletősort vagy oszlopot telesen k nem merítettük. A le nem kötött f és r értékek közül mndg a ksebbet programozzuk. 11

Ha egyszerre csökken -ra a feladó készlete és a megrendelőgénye, akkor a feladatot degeneráltnak nevezzük. Ilyenkor a következőlegksebb költségűhelyre x = mennységet programozunk. d/ A programozást addg folytatuk, amíg az összes készletet, lletve gényt szét nem osztottuk. A továbbakban azokat a helyeket, ahová programoztunk, kötött helynek, a többt szabad helynek foguk nevezn. Az ndulóprogramot a bázs avítása előtt célszerűellenőrzn. Ha betartottuk a szabályokat, akkor a kötött helyek száma n+m 1, és telesülnek a (4.2), (4.3) feltételek. A példánk ndulóprograma az elosztás sorrendében: x 13 =5, x 33 =1, x 31 =2, x 21 = 2, x 22 = 1, x 24 =1, a célfüggvény pedg z=21. Az optmaltás vzsgálata Az ndulóprogram kelégít az (4.1)-(4.4) feltételeket. A kérdés ezek után már csak az, mként dönthetük el, hogy a bázsmegoldás optmáls-e, vagy pedg avítható. Az optmaltás feltételet, mnt tuduk a szmplex-módszernél a dualtás tétel határozza meg. Ha a prmál megoldás mellett smernénk a duálváltozók (u, v ) értéket, akkor egyszerűen dönthetnénk. A dsztrbúcós táblából a duálváltozók sanos nem olvashatók k, de kszámíthatók, mvel a prmálbázsba vont vektorokhoz tartozó duálfeltételek mndg egyenlőség formáában telesülnek, azaz u +v =c. A továbbakban az u és v duálváltozókat a dsztrbúcós módszernél használatos termnológának megfelelően potencáloknak nevezzük. Vsszatérve az előzőekhez a potencálok száma n+m, a prmálbázsba vont vektorokhoz tartozó duálfeltételek száma n+m 1, így egy potencál értéke szabadon választható, a több pedg a (4.9) c (u +v )= egyenletekből számítható. Az így meghatározott potencálokat felhasználva megvzsgáluk, hogy a szabad helyekre telesül-e a (4.7) feltétel, azaz a (4.1) d =c (u +v ). Ha található olyan szabad hely, ahol d <, akkor a program avítható. A gyakorlatban a potencálok a következőtábla alapán számíthatók: v 1 v 2 v 3 v 4 u 1 1 u 2 2 1 8 u 3 1 1 12

Legyen u 1 =, akkor v 3 =c 13 u 1 =1 u 3 =c 33 v 3 = v 1 =c 31 u 3 =1 u 2 =c 21 v 1 =1 v 2 =c 22 u 2 = v 4 =c 24 u 2 =7 A kapott értékeket a (4.1)-be helyettesítve: d 11 =5, d 12 =4, d 14 = 2, d 23 =1, d 32 =2, d 34 = 6. Az ndulóprogram tehát avítható. A bázsmegoldás avítása A bázsmegoldást úgy avíthatuk, hogy azt a helyet, amelyhez a legnagyobb abszolút értékűnegatív d tartozk, bevonuk a bázsba. A szállítás feladat specáls felépítése egy vszonylag egyszerű, mechankusan alkalmazható vektorcserére ad lehetőséget. Ennek tárgyalása előtt bevezetük a hurok fogalmát. Ha a C költségmátrx bármelyk elemétől kndulva bástyamozgással haladunk úgy, hogy ugyanazon sorban és oszlopban csak két elemet érntünk, akkor hurkot kapunk. Bzonyítható, ha adott egy bázsmegoldás, akkor bármely szabad helyhez egyértelműen hozzárendelhetőegy hurok, amelynek egyk csúcsponta a szóban forgó szabad hely, a több csúcsa pedg az adott bázsmegoldás egy-egy eleme. Az elmondottak egyszerűelárást adnak a vektorcserére. egrazoluk a bevonandó szabadhelyhez tartozó hurkot. A hurokban a szabad helyhez tartozó elemet, mad ezt követően mnden másodkat poztívnak, a többt negatívnak tekntük. A negatív csúcsokon lévőx mennységek közül a legksebbet a negatív csúcsokon álló mennységekből levonuk, a poztív csúcsokon állókhoz pedg hozzáaduk. Végül a negatív csúcsok közül azt, amelynél az x mennység -ra csökkent, elhagyuk a hurokból, de mndg csak egy csúcsot. Degenerácó esetén ugyans több helyen s -ra csökkenhet az x. A megmaradó hurok csúcsponta, és az előzőbázsmegoldás hurkon kívül eleme alkoták az ú bázst. A leírt elárást alkalmazzuk a példán. A d értékek alapán a 3-4 szabad helyet kell bevonn a bázsba. A dsztrbúcós táblán megrazoluk a hurkot, amelynek csúcsponta: 3-4, 3-1, 2-1, 2-4. A negatív csúcsok között x 24 a legksebb, ezt levonuk a negatív csúcson állókból, és hozzáaduk a poztív csúcson állókhoz. f 6 4 1 5 5 5 F 2 2 +2 1 1 3 8-1 4 F 3 1-2 2 1 1 1 +* 3 r 4 1 6 1 13

x 34 =+1=1 x 31 =2 1=1 x 21 =2+1=3 x 24 =1 1= Az x 24 -et elhagyuk, így az ú bázsmegoldás: f 6 4 1 5 5 5 F 2 2 3 1 1 3 8 4 F 3 1 1 2 1 1 1 1 3 r 4 1 6 1 x 13 =5, x 21 =3, x 22 =1, x 31 =1, x 33 =1, x 34 =1 Az optmaltás vzsgálat elvégzése után már valamenny szabad helyen a d értéke poztív, vagys a fent bázsmegoldás optmáls. A célfüggvény értéke z=15. A megoldás részletes smertetése után foglaluk össze a dsztrbúcós módszer algortmusát: a/ A feladatot a (4) feltételnek megfelelőalakra hozzuk fktív megrendelővagy feladó beállításával. b/ Felíruk a feladat nduló tábláát: C r c/ Az előzőekben leírt módon ndulóprogramot készítünk, vagys keresünk egy bázsmegoldást. d/ A kötött helyekre felírható u +v =c egyenletrendszer segítségével kszámítuk a potencálokat. e/ A szabad helyekre írható d =c (u +v ) feltételek alapán megvzsgáluk a bázsmegoldás optmaltását. Ha a feltétel valamenny párra telesül, akkor a megoldás optmáls. f/ A szabad helyek közül azt, ahol a d negatív, és a legnagyobb abszolútértékű, bevonuk a bázsba. A vektorcserét az smertetett módon végezzük el. A vektorcsere után vsszatérünk a d ponthoz. 4.3 példa: Négy raktár öt fogyasztót lát el. Az egységny termék raktározás költsége az egyes raktárakban rendre 3, 4, 3, 5 Ft. A raktárak kapactása: [3, 2, 4, 35] egység. A fogyasztók génye: [2, 8, 12, 1, 18] egység. A falagos szállítás költség az egyes vszonylatokban Ft/egység mértékegységben: f F 2 F 3 F 4 F 5 2 1 2 3 3 2 1 1 1 2 2 3 2 1 2 14

Határozzuk meg az optmáls szállítás programot, továbbá kérdés, hogy megszüntethető-e valamelyk raktár anélkül, hogy a szállítás és raktározás költség növekedne? Alkalmazzuk a dsztrbúcós módszert. 4.4. A magyar módszer A magyar módszert H.W. Kuhn az ún. hozzárendelés probléma megoldására felesztette k [43] Kőng Dénes magyar matematkus egyk gráfelmélet tételének felhasználásával [46], amelyet egy másk magyar matematkus Egerváry Jenőáltalánosított [26]. E módszer széles körben felkeltette a matematkusok, és az elosztás problémákkal foglalkozó szakemberek fgyelmét, különösen azóta, hogy Egerváry megmutatta, a módszer nemcsak a hozzárendelés probléma, hanem a szállítás feladat megoldására s alkalmas. A Kőng-Egerváry-féle tétel általánosan a következők szernt fogalmazható meg: ha az R egy adott C [ c ] mátrx pontanak egy nem üres részhalmaza, akkor az R-ben felvehetőfüggetlen pontok maxmáls száma megegyezk az R összes pontat lefedővonalak mnmáls számával. A bzonyításnál abból ndulnak k, hogy adottnak tekntk az R-nek egy olyan maxmáls számú elemet tartalmazó F részhalmazát, amelynek mnden eleme független pont. Ha az F pontanak számát n-nel, az R mnden pontát lefedővonalak számát v-vel elölük, akkor fennáll a v n összefüggés. Azt kell tehát csak megmutatn, hogy a v mnmáls értéke n. A gyakorlatban rendszernt az R halmazt smerük, és feladat az F meghatározása. A követendőelárás a következő: a/ Az adott C C ( ) mátrxból elhagyuk azokat a vonalakat, amelyeken nncs ponta R-nek. Legyen az így nyert mátrx C ( 1 ). b/ A C ( 1) -ben keresünk olyan vonalat, amelyen csak egy ponta van az R-nek. Ezt a pontot bevesszük a független pontok közé, mad a nek megfelelőkét vonalat elhagyva a C ( 1) -ből az elárást annyszor smételük, ahányszor csak lehetséges, így bzonyos számú lépés után vagy olyan C ( 2) mátrxhoz utunk, amelyben már nncs ponta az R-nek, vagy pedg olyan C ( 3) mátrxot kapunk, amelynek mnden vonalán legalább két R-hez tartozó pont található. Az elsőesetben a felvett független pontok száma maxmáls, és a fedővonalrendszer a később smertetendőmódon megrazolható. A másodk esetben azonban tovább lépések szükségesek. c/ A C ( 3) egyk vonalán felvesszük a független pontok közé az R valamelyk elemét. Ezután a C ( 3) -ból elhagyuk a feltételezett független ponthoz tartozó két vonalat, mad az így nyert ú mátrxszal az a, b és c lépéseket annyszor smételük, ahányszor csak lehetséges. Az elárás végén a független pontok olyan halmazához utunk, amely úabb R- bel ponttal nem bővíthető. Abban azonban nem lehetünk bztosak, hogy a független pontok száma maxmáls. Ez csak a fedővonalrendszer megszerkesztése után derül k. Ha egy független pont sem esk a fedővonalak metszéspontára, akkor a független pontok száma max- 15

máls. Ellenkezőesetben a független pontok halmazát és a fedővonalrendszert módosítan kell. A 3. pontban megfogalmazott szállítás feladatban az (5) célfüggvény mnmumát keressük a (1)-(4) feltételek mellett. Ha a C költségmátrx sorahoz f, oszlopahoz pedg r multplctásokat rendelünk, és az így nyert N-ed rendűmátrxot ( N f r ) B-vel elölük, akkor a problémát a következőképpen fogalmazhatuk meg: Válasszunk k a B-ben N független pontot úgy, hogy a megfelelőköltségelemek összege mnmáls legyen. Ha az f r 1, akkor a C mnden sorának és oszlopának multplctása 1, és hozzárendelés problémával állunk szemben. Ennek a feladatnak a megoldása egyrészt a Kőng-Egerváry-féle tételen alapszk, másrészt azon a tényen, hogy a ahol a c c p q, p mn{ c 1, 2,..., m}, q mn{ c p 1, 2,..., n}, transzformácó esetén, olyan C' költségmátrxhoz utunk, amelyhez ugyanaz az optmáls megoldás tartozk, mnt C-hez. A c -t helyettesítsük a célfüggvénybe: z ( c p q ) x c x p x q x c x p ( x ) q ( x ). Felhasználva a (4.2) és (4.3) összefüggéseket, a z c x p f q r. Ezzel a z célfüggvényt az x -től függőés attól független részekre bontottuk, és állításunkat bzonyítottuk. A transzformácót, mnt már azt említettük, a költségmátrx redukcóának nevezzük. Legyen akkor a Könnyen belátható, hogy c akkor z p f q r, z c x z., p, q kkötés mellett a z. z Ha pedg mn{ c x }, mnz. z Bzonyítható, hogy mndg megadható a redukcóknak egy olyan véges sorozata, am a fent mnmumra vezet. Alkalmazzuk a c c p q ( 1) ( 1) ( 1) 16

redukcót, ahol Ekkor a ( 1) ( 1) p mn{ c 1, 2,..., m} és q. z c x z ( 1 ) ( 1 ), ahol a ( 1) ( 1) z p f. A redukcót hatsuk végre oszloponként s: ahol a c c p q ( 2) ( 2) ( 2) ( 2) ( 2) p és q mn{ c 1, 2,..., n}. A célfüggvény ahol a z c x z z ( 2) ( 1) ( 2 ), ( 2) ( 2) z q r. ( 2) A c mátrxban található zérus elemek közül az előzőleg leírt módon maxmáls számú független -át választunk k. Ha ezek száma N, akkor és így ( 2) mn{ c x }, ( ) ( ) mn z z 1 z 2. Ha azonban a független -ák száma ksebb, mnt N, akkor megrazoluk a fedővonalrendszert, mad a le nem fedett elemek közül kválasztuk a mnmálst. Ez legyen ( 2 ) ( 2). Ezután redukáluk a c költségmátrxot: ahol ( 3) ( 2) ( 3) ( 3) c c p q, ha az -edk sor fedővonal, ha az -edk sor nem fedővonal. ha a -edk oszlop fedővonal, ha a -edk oszlop nem fedővonal. Ez gyakorlatlag azt elent, hogy a le nem fedett elemekből levonuk az ( 2) -t, az egyszer fedett elemeket változatlanul hagyuk, a kétszer fedett elemeket pedg ( 2) -vel növelük. A redukcó után a célfüggvény: ahol a (3) p (3) q, (2),, (2), z c x z z z ( 3) ( 1) ( 2) ( 3) 17

z d. ( 3) ( 2) ( 2) A d ( 2) az N-nek és a független zérusok számának a különbsége. ( A c 3 ) mátrxban független zérusokat keresünk, elkészítük a fedővonalrendszert, mad redukáluk a mátrxot. E lépéseket addg smételük, amíg olyan c ( r) mátrxot nem kapunk, amelyben a független zérusok száma N. Ekkor ( r ) ( 1) ( 2) ( r ) z c x z z... z mn, ahol a ( r ) c x. A módszer matematka ndoklása után tekntsük a hozzárendelés és a szállítás feladat esetén alkalmazható algortmusokat. A hozzárendelés feladat megoldása magyar módszerrel Feltételezzük, hogy adott négy professzor, akk valamennyen képesek előadásokat tartan különbözőtémakörökből. Tekntettel azonban a professzorok eltérőszakrányultságára, az egyes előadások előkészítéséhez szükséges dőtartam professzoronként változó. A tanszékvezető egyéb területeken s szeretné foglalkoztatn a professzorokat, ezért az előadásokat, úgy kívána elosztan közöttük, hogy azok előkészítése a lehetőlegkevesebb dőt gényele. Az előadások előkészítéséhez szükséges dőtartamokat az a következőtáblázat foglala össze: Professzor Lneárs programozás Sorbanállás elmélet Dnamkus programozás Regresszó analízs Kovács 2 1 9 7 Kss 15 4 14 8 Fehér 13 14 16 11 Nagy 4 15 13 9 Olduk meg a problémát a magyar módszerrel. 1. Ha feladat a célfüggvény maxmumának meghatározása, akkor változtassuk meg a költségmátrx mnden elemének előelét. A mnmum feladathoz tartozó költségmátrx: 2 1 9 7 15 4 14 8 13 14 16 11 4 15 13 9 2. Redukáluk a mátrxot soronként! p 8 7 5 2 11 1 4 4 2 3 5 11 11 9 5 4 21 3. Redukáluk a mátrxot oszloponként! 18

8 2 5 11 5 4 2 3 11 4 5 q 5 5 Az összes redukcó értéke: z p q 21 5 26. 4. Keressük meg azokat a sorokat, amelyekben független elem van. (A elem akkor független, ha egyedül álló elöletlen a szóban forgó sorban.) Ha találtunk lyen sort, akkor a független elemet elölük csllaggal (*). A független elem oszlopában található több elemet pedg elölük meg kereszttel (+). A másodlagosan megelölt -k segítségével megszüntetük az oszlop aktvtását (u. egy sorban és oszlopban csak egy elemet elölhetünk k). Ismételük az elárást addg, amíg a sorokban úabb és úabb független elemet tudunk kelöln. * 8 2 5 11 * 5 4 2 3 + 11 4 5 5. Keressük meg azokat az oszlopokat, amelyekben független elem van. (A elem akkor független, ha egyedül álló elöletlen a szóban forgó oszlopban.) Ha találtunk lyen oszlopot, akkor a független elemet elölük csllaggal (*). A független elem sorában található több elemet pedg elölük meg kereszttel (+). A másodlagosan megelölt -k segítségével megszüntetük a sor aktvtását. Ismételük az elárást addg, amíg az oszlopokban úabb és úabb független elemet tudunk kelöln. * 8 2 5 11 * 5 4 2 3 * + + 11 4 5 6. Ismételük a 4. és 5. lépéseket, amíg az eredményre vezet. Ha már nem tudunk ú független -át kelöln, akkor a következőhárom eset fordulhat elő. a/ mnden sorban kelöltünk egy független elemet, b/ van olyan sor vagy oszlop, amelykben legkevesebb két el nélkül elem van, c/ nncs elöletlen elem, de a független nulla elemek száma kevesebb, mnt a sorok száma. 7. Ha az a/ eset fordul elő, akkor a kelölés teles, megkaptuk az optmáls megoldást. A b/ esetben véletlenszerűen elölük meg az egyk el nélkül elemet csllaggal (*), mad ugyanebben a sorban és oszlopban elölük kereszttel (+) a több elöletlen nulla elemet, mad tér- 19

ünk vssza a 4. lépéshez. A harmadk, c/ esetben folytassuk az elárást a 8. lépéssel. 8. Jelölük meg azokat a sorokat, amelyekben nncs független. 9. Jelölük meg azokat az oszlopokat, amelyek még nncsenek megelölve, és az oszlopban található olyan, amely megelölt sorban van. 1. Jelölük meg azokat a sorokat, amelyek még nncsenek megelölve, és amelyekben a független a megelölt oszlopban van. 11. Ismételük a 9. és 1. lépéseket addg, amíg az eredményre vezet. * 8 2 5 11 * 5 4 2 3 * + + 11 4 5 12. Fedük le a meg nem elölt sorokat és a megelölt oszlopokat. Ez bztosíta, hogy a elemeket mnmáls számú fedővonallal fedük le. (Ha nem vétettünk hbát, akkor a fedővonalak száma megegyezk a független -k számával.) * 8 2 5 11 * 5 4 2 3 * + + 11 4 5 13. Keressük meg a fedetlen elemek közül a legksebbet ( ), ez esetünkben =2, mad a le nem fedett elemeket csökkentsük -nal, az egyszer fedett elemeket változatlanul hagyuk, a kétszer fedett elemeket növelük -nal, és térünk vssza a 4. lépéshez. A célfüggvény változása: ahol f a független elemek száma. 6 3 13 5 4 4 3 9 2 3 z1 z ( n f ) 26 2 ( 4 3 ) 28, + 6 * 3 13 * 5 4 4 3 + * * 9 2 3 2