MTA DOKTORA ÉRTEKEZÉS TÉZISEI. Computational Techniques of the Simplex Method. Írta: Maros István



Hasonló dokumentumok
MAROS ISTVÁN életútja

Módszer köztes tárolókat nem tartalmazó szakaszos működésű rendszerek ütemezésére

és alkalmazások, MSc tézis, JATE TTK, Szeged, Témavezető: Dr. Hajnal Péter

A szimplex tábla. p. 1

I.3 ELOSZTOTT FOLYAMATSZINTÉZIS BERTÓK BOTOND. Témavezetői beszámoló

A lineáris optimalizálás rugalmas indexválasztási szabályainak elméletéről és gyarkorlatáról

Branch-and-Bound. 1. Az egészértéketű programozás. a korlátozás és szétválasztás módszere Bevezető Definíció. 11.

Publikációs lista. Gódor Győző július 14. Cikk szerkesztett könyvben Külföldön megjelent idegen nyelvű folyóiratcikk...

A szimplex algoritmus

Opponensi vélemény. Fullér Róbert: Multicriteria Decision Models with Imprecise Information. című akadémiai doktori értekezéséről

Keverési modellek. Színkeverés Beton/aszfalt keverés Benzin keverés Gázkeverékek koncentrációjának a meghatározása

Név KP Blokk neve KP. Logisztika I. 6 LOG 12 Dr. Kovács Zoltán Logisztika II. 6 Logisztika Dr. Kovács Zoltán

Hálózati folyamok, Bolyai János Matematikai Társulat, Budapest (1969), 263 o.

műszaki tudomány doktora 1992 Beosztás: stratégiai tanácsadó, tudományos tanácsadó Munkahelyek: Nokia -Hungary kft Veszprémi Egyetem

Drótposta: ; ; Honlapom:

VALÓSZÍNŰSÉG MAXIMALIZÁLÁS PROBABILITY MAXIMIZATION

Mérnök informatikus mesterszak mintatanterve (GE-MI) nappali tagozat/ MSc in, full time Érvényes: 2011/2012. tanév 1. félévétől, felmenő rendszerben

Bozóki Sándor. MTA SZTAKI, Budapesti Corvinus Egyetem. Vitaliy Tsyganok

SZOFTVEREK A SORBANÁLLÁSI ELMÉLET OKTATÁSÁBAN

Mátrixjátékok tiszta nyeregponttal

Irányítási struktúrák összehasonlító vizsgálata. Tóth László Richárd. Pannon Egyetem Vegyészmérnöki és Anyagtudományok Doktori Iskola

Diszkrét, egészértékű és 0/1 LP feladatok

Dinamikus programozás alapú szivattyú üzemvitel optimalizálási technikák (főként) kombinatorikus vízműhálózatokra

Operációkutatás. Vaik Zsuzsanna. Budapest október 10. First Prev Next Last Go Back Full Screen Close Quit

Load-flow jellegű feladat a villamos rendszerirányításban

TÁVOKTATÁSI TANANYAGOK FEJLESZTÉSÉNEK MÓDSZERTANI KÉRDÉSEI

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

Mádi-Nagy Gergely * A feladat pontos leírása. Tekintsünk darab tetszõleges eseményt, jelöljük ezeket a következõképpen: ,...,

EGYÜTTMŰKÖDŐ ÉS VERSENGŐ ERŐFORRÁSOK SZERVEZÉSÉT TÁMOGATÓ ÁGENS RENDSZER KIDOLGOZÁSA

Publikációs lista. Dr. Molnárka-Miletics Edit Széchenyi István Egyetem Matematika és Számítástudományi Tanszék

Sztöchiometriai egyenletrendszerek minimális számú aktív változót tartalmazó megoldásainak meghatározása a P-gráf módszertan alkalmazásával

Előrenéző és paraméter tanuló algoritmusok on-line klaszterezési problémákra

OPPONENSI VÉLEMÉNY. Nagy Gábor: A környezettudatos vállalati működés indikátorai és ösztönzői című PhD értekezéséről és annak téziseiről

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

Miskolci Egyetem GÉPÉSZMÉRNÖKI ÉS INFORMATIKAI KAR. Osztályozási fák, durva halmazok és alkalmazásaik. PhD értekezés

A k-szerver probléma

ICT ÉS BP RENDSZEREK HATÉKONY TELJESÍTMÉNY SZIMULÁCIÓJA DR. MUKA LÁSZLÓ

JÓVÁHAGYÁS. szervezet. Név Dr. Szakonyi Lajos KPI Oktatási Minisztérium

Mi is volt ez? és hogy is volt ez?

LINEÁRIS PROGRAMOZÁSI PROGRAMOK TESZTELÉSE TESTING LINEAR PROGRAMMING SOLVERS. Illés Tibor 1, Nagy Adrienn 2

Döntéselőkészítés. I. előadás. Döntéselőkészítés. Előadó: Dr. Égertné dr. Molnár Éva. Informatika Tanszék A 602 szoba

Logisztikai mérnök záróvizsga tételsor Módosítva június 3.

Szakmai zárójelentés

Páros összehasonlítás mátrixokból számolt súlyvektorok Pareto-optimalitása

Operációkutatás. Vaik Zsuzsanna. ajánlott jegyzet: Szilágyi Péter: Operációkutatás

Tevékenység szemléletű tervezés magyarországi felsőoktatási intézmények pályázataiban

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Esettanulmányok a WINGDSS szoftverrel

AZ A PRIORI ISMERETEK ALKALMAZÁSA

A megerosítéses tanulás és a szimulált hutés kombinált használata: algoritmusok és alkalmazások

Opponensi vélemény. Dósa György Tightness results for several variants of the First Fit bin packing algorithm (with help of weighting functions)

OTKA Zárójelentés Publikációk

Alkalmazott Matematikai Lapok 27 (2010), KAS PÉTER ( )

Kvartó elrendezésű hengerállvány végeselemes modellezése a síkkifekvési hibák kimutatása érdekében. PhD értekezés tézisei

"A tízezer mérföldes utazás is egyetlen lépéssel kezdődik."

Városi légszennyezettség vizsgálata térinformatikai és matematikai statisztikai módszerek alkalmazásával

Mérnök informatikus (BSc) alapszak levelező tagozat (BIL) / BSc in Engineering Information Technology (Part Time)

A tudomány sokkal emberibb jelenség, mint gondolnánk

SZOFTVERES SZEMLÉLTETÉS A MESTERSÉGES INTELLIGENCIA OKTATÁSÁBAN _ Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.

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

Óbudai Egyetem Neumann János Informatikai Kar. Intelligens Mérnöki Rendszerek Intézet

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

Új projekt ütemezési módszerek a termelés-tervezés támogatására

Lineáris programozás. A mese

A Debreceni Egyetem Intézményfejlesztési Terve

A SZAKIRODALOM HASZNA ÉS SZERKEZETE

A KUTATÁS EREDMÉNYEI ZÁRÓJELENTÉS

Optimumkeresés számítógépen

A szimplex algoritmus

A nyugdíjban, nyugdíjszerű ellátásban részesülők halandósága főbb ellátástípusok szerint

V. Félév Információs rendszerek tervezése Komplex információs rendszerek tervezése dr. Illyés László - adjunktus

(1939. január június 11.)

MEDDŐHÁNYÓK ÉS ZAGYTÁROZÓK KIHORDÁSI

List of Publications (Pánovics János)

E.-Nagy Marianna. Adjunktus, Differenciálegyenletek Tanszék Matematika Intézet, Természettudományi Kar Budapesti Műszaki és Gazdaságtudományi Egyetem

VÁLLALATI INFORMÁCIÓS RENDSZEREK, INTERNETES TECHNIKÁK

VÁLTOZTATÁSMENEDZSMENT A HAZAI GYAKORLATBAN

1. Katona János publikációs jegyzéke

Új változatelemzési útmutató a közép-kelet-európai régióban:

AKTUÁTOR MODELLEK KIVÁLASZTÁSA ÉS OBJEKTÍV ÖSSZEHASONLÍTÁSA

Operációkutatás II. Tantárgyi útmutató

A kutatás-fejlesztés minősítése a Szellemi Tulajdon Nemzeti Hivatalában

Nem teljesen kitöltött páros összehasonlítás mátrixok sajátérték optimalizálása Newton-módszerrel p. 1/29. Ábele-Nagy Kristóf BCE, ELTE

Publikációs jegyzék (Pánovics János)

Kontrollcsoport-generálási lehetőségek retrospektív egészségügyi vizsgálatokhoz

MŰSZAKI TUDOMÁNY AZ ÉSZAK-ALFÖLDI RÉGIÓBAN 2010

Matematikai modellezés

Operációkutatás II. Tantárgyi útmutató

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

Követelmények Motiváció Matematikai modellezés: példák A lineáris programozás alapfeladata 2017/ Szegedi Tudományegyetem Informatikai Intézet

Követelmények Motiváció Matematikai modellezés: példák A lineáris programozás alapfeladata 2017/ Szegedi Tudományegyetem Informatikai Intézet

Térinformatika amit tudni kell Márkus Béla

Nagy adattömbökkel végzett FORRÓ TI BOR tudományos számítások lehetőségei. kisszámítógépes rendszerekben. Kutató Intézet

Gauss-Seidel iteráció

Véletlen sorozatok ellenőrzésének módszerei. dolgozat

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

BÍRÁLAT. Kállay Mihály Automatizált módszerek a kvantumkémiában című MTA doktori értekezéséről.

A TANTÁRGY ADATLAPJA

Akilencvenes évek elejétõl a magyar gazdaság és társadalom gyors átrendezõdésen. tanulmány

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

Átírás:

MTA DOKTORA ÉRTEKEZÉS TÉZISEI Computational Techniques of the Simplex Method Írta: Maros István Budapest, 2004

1. fejezet Az értekezés célkitűzései, tudományos előzmények A benyújtott értekezés egy kutatási monográfia, amely a Kluwer Academic Publishers kiadásában jelent meg Computational Techniques of the Simplex Method címmel 2003-ban [26]. A könyv a címben megjelölt témakör átfogó tárgyalását adja, amely a szerző idevágó saját tudományos eredményein kívül tartalmazza mások hozzájárulását is. Az új eredmények felsorolásánál (jelen tézisek 3. fejezete) természetesen csak a saját eredmények szerepelnek. Az értekezés fő célja olyan algoritmusok és algoritmikus technikák kidolgozása, amelyek lehetővé teszik igen nagyméretű és nehéz lineáris programozási feladatok megbízható és hatékony megoldását a szimplex módszer segítségével. A lineáris programozási feladatok megoldására először Dantzig adott a gyakorlatban is használható algoritmust, amely a szimplex módszer néven vált ismertté 1951-ben [4]. Ez valójában egy algoritmus család, amelynek számos konkrét realizációját lehet elkészíteni. Ezek közös tulajdonsága, hogy a nagy számításigény miatt csak számítógépre kidolgozott implementációjuk alkalmas a triviálisnál nagyobb méretű feladatok megoldására. Ma már történelmi tény, hogy a számítógépek fejlődését a korai időszakban a lineáris programozás (LP) igényei erősen motiválták. Általánosan elfogadott nézet szerint még az 1980-as évek elején is nemzetközi szinten a gépidő 40 százalékában LP feladatok megoldása folyt. Miután Dantzig módszere a ciklizálás elkerülésére kidolgozott elméleti eljárás után elvileg bármilyen LP feladat megoldására képes, világos, hogy a szimplex módszer további fejlődését elsősorban a magasszintű gyakorlati igények vezérelték. Ennek a tevékenységnek a során azonban igen szép elméleti eredmények, új algoritmusok és algoritmikus technikák születtek. Jelen tézisek szerzője 1970-től kapcsolódott be ebbe a kutatómunkába és elért eredményei 1

MAROS Doktori tézisek 2 of 18 alapján 1981-ben kandidátusi fokozatot szerzett. A szakmai közvélemény ekkorra a szimplex módszert érettnek tekintette és a kutatás intenzitása egy időre alábbhagyott. Az 1980-as évek második felében azonban két lényeges dolog történt. Egyrészt, megjelentek a gyakorlatilag is hatékony belsőpontos algoritmusok, másrészt tért hódítottak az egyre jobb és nagyobb kapacitású személyi számítógépek. Ezzel egyidejűleg fontos új alkalmazási területek egyre nagyobb és bonyolultabb LP feladatokkal álltak elő. A kevert egészértékű problémák (MIP) megoldásához LP feladatok sorozatos megoldásán keresztül vezet az út. Itt elsősorban az LP megoldások sebessége és megbízhatósága a követelmény. Nagyméretű LP feladatoknak gyakran van jól definiált struktúrája, főleg azoknak, amelyek dinamikus vagy térben elosztott rendszereket reprezentálnak, illetve amelyek a bizonytalanságot modellezik (sztochasztikus programozás). Az ezeknél használatos dekompozíciós eljárások is LP feladatok sokaságának megoldását igénylik. Ezek mellett sorra jelentek meg az igazi, nem dekomponálható hatalmas méretű feladatok, elsősorban az ipari alkalmazásoknál, de olyan újabb területeken is, mint például távközlés és pénzügyi számítások. Mindezek együttes hatásaként, de elsősorban a belsőpontosokkal való verseny és a MIP feladatok miatt, felélénkült a kutatási tevékenység a szimplex módszer körül. Egy sikeresen működő számítógépes optimalizáló rendszer receptje viszonylag egyszerű: jó algoritmust kell jól implementálni. Mindezt elérni viszont már korántsem ilyen egyszerű. Az implementációs technológia tele van komoly elméleti meggondolásokkal és eredményes művelése több tudományterület tevékeny ismeretét igényli. Ebben rejlik a nagy kihívás. A szerző érdeklődését hamar felkeltették a személyi számítógépekben (PC-kben, vagy ahogy eleinte hívták: mikro számítógépekben) rejlő potenciális lehetőségek az LP szempontjából. Korábbi implementációs ismereteit felhasználva, kidolgozott egy MILP nevű, PC-n működő szimplex alapú LP rendszert. Ennek a munkának sok következménye lett, amelyek bő forrása volt a megvalósítás során szerzett rengeteg tapasztalat. Egy Bokor Józseffel közös cikkben az Alkalmazott Matematikai Lapokban áttekintették a PC-k szerepét az operációkutatásban [27]. Megállapításaikat a későbbi események szépen igazolták. 1988-ban a MILP részt vett egy nagy nemzetközi összehasonlító vizsgálatban és egy professzionális rendszer (XPRESS-LP) mögött a második legjobbnak bizonyult, megelőzve a többi kereskedelmi és egyetemi kutatási programcsomagot [36; 35]. MILP felkerült különféle listákra és a róla szóló kutatási beszámolókat [16; 17; 18] több helyen (köztük a Mathematical Reviewsban) is idézték. A MILP-en végzett kutatás-fejlesztés mintegy mellékterméke -ként a szerző elkészítette a MINET jelű hálózati szimplex programrendszerét, amely résztvett a DIMACS és az American Mathematical Society által 1992-ben rendezett International Implementation Challenge-en és

MAROS Doktori tézisek 3 of 18 ott szignifikánsan jobbnak bizonyult, mint az akkor legjobbnak tartott NETFLO program [20]. A fenti sikerek több összetevőnek voltak köszönhetők. Ebben az időben a szerző a szimplex iteráció két mozzanatát vizsgálta: a belépő változó megválasztását (pricing) és a degeneráció elleni stratégiákat. Először a hálózati szimplex esetére dolgozott ki 1991-ben egy olyan általános pricing eljárást [19], amely az addig ismert eljárásokat speciális esetként tartalmazta, ugyanakkor lehetőséget teremtett tetszőleges, akár a hálózat struktúráját is figyelembevevő új kiválasztási stratégiák megvalósítására. Ezt az eljárást később MILP-ben is adaptálta, amelyről a publikáció azonban csak 2003-ban jelent meg önállóan [23] és a jelen tézisek alapját szolgáló monográfiában [26] is. Ez utóbbiban SIMPRI néven szerepel. A módszer 1995-ben beépült a Mitra által vezetett kutatócsoportnál kidolgozott FortMP [28] programcsomagba is. A degeneráció káros hatásának kiküszöbölésére tett erőfeszítések általában a kilépő vektor (pivot sor) meghatározására koncentráltak, mint például Gal és Geue [7] 1986-ban, valamint Gill és társai [8] 1989-ben. A szerző, Greenberg [11] korábbi gondolataihoz kapcsolódva, azt vizsgálta, hogy lehet eleve olyan belépő vektorokat felismerni, amelyek jobb esélyt jelentenek nem-degenerált iterációk végzésére. Az 1986-ban publikált eredmény [14] negatív, vagyis azokat a vektorokat könnyebb jellemezni amelyekkel csak degenerált lépést lehet megtenni. Ez az ismeret azonban jól hasznosítható, mert amíg van más választás, addig ezeket az oszlopokat el lehet kerülni, mégpedig viszonylag elviselhető számítási többletmunka árán. A hálózati szimplex módszernél viszont a szerző alkalmazott először degeneráció ellenes kilépő eljárást 1993- ban [21], ami különösen az első fázisban bizonyult nagyon hatásosnak, lényegében számítási többletmunka nélkül. Ez egy fontos tényező volt a MINET sikeres szereplésében a DIMACS Challenge-en. Ezt követően a szerző az általános szimplex számára kidolgozott ismert degeneráció ellenes pivot meghatározó eljárásokat vetette vizsgálat alá, majd sorra helyezte azokat általános környezetbe és eszközölt javításokat rajtuk. Ezek: Wolfe nagyon fontos, noha többnyire figyelmen kívül hagyott ad hoc módszere 1963-ból [37], Benichou és társai perturbációs módszere 1977-ben az IBM MPSX rendszerben [1], valamint Gill és társai EXPAND eljárása 1989-ben [8]. Mindezek a javítások az értekezésben vannak publikálva először. A szerző 1993 és 1996 között Mitra-val dolgozott a fentebb már idézett ForMP programrendszer fejlesztésén. Ennek keretén belül került sor az induló bázist meghatározó eljárások revíziójára. Egy valamilyen szempontból jó kezdő megoldás jelentősége igen nagy, hiszen az kihatással van a megoldás hatékonyságára. Érdekes módon Orchard-Hays (1968) [34] óta sokáig nem történt lényeges előrelépés ezen a területen. Sőt, Gould és Reid 1989-as, egyébként szépen átgondolt munkája [10] is visszhang nélkül maradt és nem ismeretes, hogy valahol is használnák. Bixby 1993-ben publikálta a CPLEX programcsomagban alkalmazott induló el-

MAROS Doktori tézisek 4 of 18 járást, ami máig is szinte az egyetlen részlet, amit erről a programcsomagról tudni lehet. Maros kidolgozott egy szimbolikus triangularizáción alapuló eljárás családot, amit Mitrával több közös publikációban közölt [30; 31; 33]. A módszer lényege egy lehető legnagyobb és ugyanakkor legmegengedettebb, struktúrális oszlopokból álló trianguláris bázis megtalálása. Már az eljárás legegyszerűbb változata is hatásosságban felülmúlta a CPLEX bázist. Maros [33]-ben az eljárás család egy másik lehetséges tagját is kidolgozta, amikoris a triangularitáson kívül a degeneráltság csökkentése a cél. A társszerző hozzájárulása ezekhez a cikkekhez egy successive overrelaxation (SOR) elven alapuló iteratív eljárás, ami numerikusan nehéz feladatok esetén kecsegtet sikerrel egy induló bázis meghatározására. Az 1990-es évek elején a szerző több ízben beszélgetett Terlaky Tamással a duál szimplex módszerről és közösen úgy találták, hogy az el van maradva a primál mögött kidolgozottság és hatásosság szempontjából. Ez a nézet tovább erősödött a FortMP munka kezdeti időszakában amikor a kevert egészértékű feladatok Branch-and-Bound (B&B) módszerrel történő megoldó algoritmusának megtervezése és implementálása került napirendre. A szimplex módszer egyik legerősebb oldala a warm start képesség (indulás tetszőleges bázisról) ami primálra és duálra egyaránt igaz. B&B esetén az egy csomópontban megoldott feladat (node problem) optimális bázisa duál megengedett bázis a két al-feladat (subproblem) számára, így erről indulva rögtön duál második fázissal lehet az al-feladatokat megoldani. Miután ezek csak nagyon kicsit különböznek az aktuális csomóponti feladattól, várhatóan kevés iterációt kell elvégezni, ha a duál módszerrel oldjuk meg a feladatot. A primál módszer használata esetén erre nem lehet számítani, mert ekkor a számítások az első fázisban kezdődnek. A megoldandó feladatok jellemzője, hogy az integritás relaxációja miatt általában nagyon sok egyedi felsőkorlátos változó van bennük. A megoldásra akkoriban a Chvatal által publikált [3] felsőkorlátos duál algoritmust használták. Miután ez elég jól működött, sokáig nem látszott fontosnak egy új duál második fázis algoritmus kidolgozása. Fourer 1994-es keltezésű nem publikált megjegyzései a duálról továbblépést jelentettek volna a Chvatal platformról, de azok kidolgozatlanok voltak és a matematikai programozó közösségnek hosszú ideig nem is volt tudomása róluk. Jelen értekezés szerzője alapos vizsgálatnak vetette alá a duált és először a Chvatal változaton egy kisebb általánosítást hajtott végre (Dual-G [26]-ban), hogy az bármilyen típusú változó esetén helyesen működjön. Ezt követően kidolgozott egy olyan új duál algoritmust (BSD [24]- ben, illetve Dual-GX [26]-ban), amely a drágán előállított transzformált pivot sor többszörös felhasználásán alapul. Ez nemcsak tetszőleges típusú változókat tud algoritmikusan kezelni, hanem minden egyes iterációban a lehető legnagyobb célfüggvény javulást éri el, ami az előzetesen kiválasztott kilépő változó esetén egyáltalán lehetséges. Az algoritmusnak, amellett, hogy

MAROS Doktori tézisek 5 of 18 rendkívül hatásosan képes működni, van néhány egyéb kedvező tulajdonsága: igen eredményes tud lenni duál degenerált bázisok esetén és nagyobb numerikus stabilitást tud biztosítani a flexibilis pivot választási lehetőségnek köszönhetően. Az iterációnkénti többletmunka nem jelentős, ha a helyzethez hangolt transzformáló, rendező és listakezelő algoritmusokat használunk az implementáció során. Az idézett publikációkban, de főleg az értekezésben ezek az eljárások pontosan specifikálva vannak. Mindezek alapján az új algoritmus eredményesen használható nemcsak a B&B-n belül, hanem általánosan is, amennyiben ismeretes egy duál megengedett bázis. Nemzetközi fórumon először az 1996 márciusában Mátraházán tartott XIII International Conference on Mathematical Programming találkozón ismertette a szerző az BFD első változatát, ami a B&B-re volt kihegyezve, és ami 1998-ban jelent meg a konferencia proceedingsben [22]. A későbbi változatok több fórum elé kerültek és jelentek meg Research Report-ként mielőtt a szerző publikálta a legutolsó változatot 2003-ban [24], ami az értekezésben is szerepel. Az új duál második fázis eljárás nagy érdeklődést váltott ki és nemcsak FortMP-be és a MILP utódjaként létező HIPLEX-be épült be, hanem, a sok email megkeresés tanúsága szerint, jó néhány egyetemi kutatási programba is. A fejlesztők minden esetben igen sikeresnek találták az algoritmust. Közvetett információk szerint a kereskedelmi rendszerek közül is többen átvették ezt az eljárást. Dual-GX sikere kapcsán felmerült a kérdés, lehet-e hasonlóan hatásos duál első fázist kidolgozni egy duál megengedett megoldás megkeresésére? Ez esetben ugyanis a duált a primállal szemben egy teljes értékű, vagy annál akár jobb alternatív algoritmusként lehetne használni tetszőleges típusú feladat esetén. A duál első fázis vizsgálatának a kiindulási pontja ugyanaz volt mint a duál második fázisé: maximálisan kihasználni a drágán meghatározott transzformált pivot sort. Ez előtt viszont még azt is tisztázni kellett, hogy az általánosan felírt feladat esetén mi jellemzi azokat a kilépő jelölteket, amelyekkel a duál megengedettség irányába lehet lépni. Több lehetőség végiggondolása után a szerző kidolgozta a GDPO (General Dual Phase One) algoritmusát, ami az összes felvetésre pozitív választ ad és főbb jellemzői hasonlítanak Dual-GX-re. GDPO minden iterációban a kiválasztott kilépő változóval a lehető legnagyobb előrehaladást teszi meg a duál megengedettség felé. Ez persze nem jelenti azt, hogy esetleg egy másik kilépő esetén nem tudna nagyobb javulást elérni. Éppen ezért fontos egy jó kilépő változó meghatározása, ami az ismert normalizáló pricing módszerekkel érhető el. GDPO is hatásos tud lenni duál degeneráció, illetve numerikusan nehéz feladatok esetén. Lényeges különbség Dual-GX és GDPO között az, hogy míg az előbbi előnyös tulajdonságai akkor mutatkoznak meg látványosan, ha a feladatban

MAROS Doktori tézisek 6 of 18 sok egyedi korlátos változó van, addig az utóbbinál ezek akkor jelentkeznek, ha a hagyományos nem-negatív és szabad változókból van sok. GDPO első változatai 1998-ban kezdtek működni és a legutolsó változatot a szerző 2003-ban publikálta [25]. Az értekezésben levő változat az utolsó előtti és csak annyival kevesebb, hogy nem tartalmazza a duál első fázisú árnyékárak transzformációjának opcióját, ami bizonyos körülmények közt előnyösebb lehet, mint az újraszámolás. A GDPO-vel elvégzett kisebb számítási tanulmány [25] jó egyezést mutat az elméleti elvárásokkal. Az eddig ismertetett fő csapás mellett a szerző az algoritmusok számítógépes implementációjának számos egyéb elemét is vizsgálta. A matematikai programozási algoritmusok implementációjának követelményeit először egy Mitra-val közös cikkben tárgyalta [31], amit aztán PhD hallgatójával, Khaliq-kal együtt kibővített és megfogalmazta az optimalizációs software implementációs technológiájának alapjait. Ez volt a XVII EURO konferencián 2000-ben elhangzott semi-plenary előadásának a témája, ami cikk formában is megjelent [29] és részét képezi az értekezésnek is. A szimplex algoritmusban nagyon sok pricing módszer ismeretes. Ezek különböző hatásossággal működnek különféle feladatok esetén. A szerző kidolgozott egy kooperatív parallel keret-algoritmust, aminek segítségével el lehet végezni a pricing módszerek vizsgálatát. A Mitra által biztosított háttér segítségével lefolytatott kísérletek igen érdekes eredményeket hoztak [32]. Az derült ki, hogy egy önmagában egyébként igen szerényen működő pricing módszer is képes a megoldás bizonyos szakaszaiban az összes többinél hatásosabban működni. Ez az észrevétel indokolta, hogy az értekezésbe belekerüljön gyakorlatilag minden pricing technika. A nagyméretű LP feladatok legfontosabb jellemzője a ritkásság. A nem-nullák aránya gyakran jóval 0.1% alatt van. Ezen tulajdonság kihasználása képezi az implementációk hatékonyságának az egyik alapját. Ennek elérésére jól megtervezett adatstruktúrákra és rajtuk definiált műveletekre van szükség. Ehhez a számítástudomány bizonyos eredményeinek újragondolásán és adaptálásán keresztül vezet az út. A fentebb említett, legnagyobb előrehaladást biztosító algoritmusok speciális igényei számára a szerző egy priority queue alapján működő rendező eljárást dolgozott ki és alkalmazott a programjaiban. A kétszeresen láncolt listáknak is elkészítette egy olyan változatát, amely a szimplexben előforduló igények legjobb kielégítésére van hangolva. Ez utóbbi sok algoritmikus elemben is kulcsszerepet játszik és az értekezésben részletesen tárgyalva van. A gyorsítás mértéke könnyen lehet százszoros vagy még annál is több. Megfigyelések azt mutatják, hogy gyakran bizonyos transzformált vektorok is elég ritkásak maradnak. Ezt szintén igen jól ki lehet használni például a transzformált pivot sor meghatározásának felgyorsítására, illetve az árnyékárak transzformálására, amiknek egyébként

MAROS Doktori tézisek 7 of 18 nagy a számításigénye. Mindezek feltétele, hogy legyen elegendő hely a feltételi mátrix sor- és oszlopfolytonos tárolására. A gyorsulás mértéke itt is elérheti a harminctól ötvenszerest. A szimplex módszer gyakorlati hatékonyságát, jobb híján, a megoldási idővel szokás jellemezni. Ez persze feltételezi, hogy a feladatot egyáltalán meg tudja oldani, ami nem is mindig nyilvánvaló. Ebből a szempontból mindegy, hogy sok olcsó, vagy kevés drága iterációval sikerült egy megoldást elérni. Miután az algoritmikus elemek legcélravezetőbb kombinációja feladatonként változhat, egy korszerű programcsomagban nagy algoritmikus gazdagságra van szükség, hogy a felmerülő feladatok széles körét hatékonyan tudja megoldani. Ez tette indokolttá, hogy az értekezés mindezekre kitérjen.

2. fejezet A tudományos kutatások során alkalmazott módszerek Miután az értekezés fő célja a szimplex módszer olyan változatainak a kidolgozása, amelyek lehetővé teszik igen nagyméretű és nehéz lineáris programozási feladatok megbízható és hatékony megoldását, szükséges volt a módszer minden egyes elemének az alapos vizsgálatára és revíziójára. Valójában még ennél is többről volt szó, hiszen olyan elemeket is meg kellett vizsgálni, amelyek a szimplex módszer elméleti változatában nem is szerepelnek, mint például LP előfeldolgozás (presolve), normálás, jó kezdő megoldás meghatározása. Noha az ma már általánosan elfogadott tény, hogy egy elméleti algoritmus számítógépes implementációja igen komoly intellektuális erőfeszítést igényel, az már korántsem nyilvánvaló, hogy ezt hogyan lehet megvalósítani. A kutatás során az derült ki, hogy a sikerhez az LP esetén a következő szakterületek mély ismerete és alkotó továbbművelése vagy adaptációja szükséges: (a) matematikai algoritmusok, (b) a számítástudomány néhány területe, (c) modern software engineering, (d) numerikus analízis és (e) a modern számítógépek architektúrája. A kutatás során alkalmazott vizsgálati módszerek az operációkutatás és az informatika tudományok által használt módszertant követték. Az eredmények kisebb része született deduktív úton, nagyobb részük pedig induktív módon a tapasztalat következtetés paradigma alapján, azonban ilyenkor is minden esetben matematikailag korrekt algoritmusok születtek. A vizsgálatok elvégzéséhez a szerző kifejlesztett egy MILP nevű, szimplex alapú LP programcsomagot. Ez volt az algoritmusok kipróbálásának az környezete. Az itt szerzett tapasztalatok felhasználásával fejlesztette tovább az algoritmusokat és ellenőrizte, hogy azok milyen mértékű javulást eredményeznek a korábban használt eljárásokkal szemben. A kísérleteket elsősorban az általánosan elfogadottò ØлÐÔ» Ø ésò ØлÐÔ» Ø» ÒÒ Ò ØÓÒLP teszt 8

MAROS Æ Ñ ÊÓÛ ÓÐ ÆÓÒÞ ÖÓ Doktori Ê tézisek ÇÔØ Ñ ÐÎ ÐÙ 9 of 18 feladattárak nagyméretű feladatain, valamint számos egyéb feladaton végezte. Ê Æ ¼ Í Æ ¾¾ ½ ¼ Néhány adat ¾ ½ ½ ¾ ¼ º ¾ ¾½ ¼ ¾ ¼ a nagyobbò ØлÐÔ» Ø feladatok ¼ ¾ ¾ ¼ ½ ¹ º¾ ¾ ¼ ¼ ¼ ¹ º ¾ ¼¼¼¼¼ ¼¾ méretének az érzékeltetésére: ÁÌ¾È Å ÊÇË¹Ê ÈÁÄÇÌ ËÌÇ ÇÊ ½ ½ ¼¼½½ ¾ ½ ¾¼ ½ ¼ ½ ½½¾¼ ¼ ¼¼ ¼ ¹ º ½ ¼ º ¾ ¾ ¾ ¼ º¼½ ½¼ ¾ ¾ ¼¾ ½º ½ ½ ¼ Æ Ñ ÖÓÛ ÓÐÙÑÒ ÒÓÒÞ ÖÓ ÓÙÒ ÓÔØ Ñ ÐÚ ÐÙ illetve à ƹ½ Ê ¹ Ê ¹ ¾ ¼ ¾ ½¾ ¾ ¾ ¾ ¾º ¼ ¼ ¾º ½¾ ¼ ¼ néhány ¾ aò ØлÐÔ» Ø» ÒÒ Ò ØÓÒfeladattárból: ÇË ¹ ¼ È Ë¹½¼ È Ë¹¾¼ ½¼¾ ½¾ ¾ ½ ½¼ ¾ ¾ ½ ¼ ½ ½ ¼¼ ¼ ½ ½ ½ ½ ¼ ¹½º¼¾ ½¼ º¼ ¼ ¾ ¼ ¾º ¾ ¼ ½¼ ¾º ¾½ ½¼ Ez utóbbiak nagyobb méretűek, de algoritmikusan valamivel könnyebbek. A vizsgálatok kiterjedtek az új matematikai algoritmusokra (operációkutatás), az adaptált rendező eljárásokra, célirányosan kifejlesztett listakezelő algoritmusokra (számítástudomány), programozástechnikai alternatívákra (software engineering), numerikus tulajdonságok ellenőrzésére (numerikus analízis), valamint a hardware lehetőségek kihasználására (hardware). A fentiek közül egyedül a speciális rendező eljárások nem szerepelnek explicit módon tárgyalva az értekezésben. A felsorolt eredmények nagy többségét a szerző egyedül érte el. Ettől eltérő esetben a társszerzők meg vannak nevezve.

3. fejezet Az értekezésben közölt új tudományos eredmények tételes listája A könyv a címben megjelölt témakör átfogó vizsgálatát tűzte ki célul. Ez egy új megközelítés, mivel ilyen jellegű mű, a könyvről eddig megjelent recenziók tanúsága szerint, még nem állt rendelkezésre a szakirodalomban. Az átfogó jelleg miatt szerepelnek benne olyan eredmények is, amelyeket nem a szerző ért el. Ezek nincsenek feltüntetve az alábbi felsorolásban. Vannak továbbá olyan eredmények is, amelyeket ugyan a szerző ért el, de ezek a kandidátusi fokozat megszerzésével kapcsolatosak. Ezen eredmények azonban vagy továbbfejlesztve, vagy újszerű megvilágításban jelennek meg a könyvben. Az egyértelműség érdekében ezek külön felsorolásban szerepelnek. A könyv első részében, az elméleti háttér tárgyalásakor számos tétel és bizonyítás szerepel. Ezek nem tartalmaznak új eredményeket. Ugyanakkor ezek egységes keretbe foglalása újszerű és a későbbi vizsgálatokhoz nélkülözhetetlen. Az új eredmények, amelyek nagyrészt (de nem kizárólagosan) algoritmusok formájában jelennek meg, többségében a mű második részében találhatók. 3.1. Új tudományos eredmények 1. A szerző eredménye a legáltalánosabban felírt LP feladatnak a számítási célokra alkalmas alakjai közül a Computational form #2 bevezetése (1.2.2 szakasz, 13 17 oldal), a Computational form #1 Orchard-Hays-től eltérő definiálása (1.2.1 szakasz, 5 13 oldal) és a Yet another formulation (1.3.2 szakasz, 17 18 oldal) számítástechnikai tulajdonságainak elemzése. 10

MAROS Doktori tézisek 11 of 18 2. A szerző eredménye az Artificial Elimination Procedure (2.2.4 szakaszban, 36 37 oldal), amely egy algoritmust ad arra, hogy a standard LP feladat módosított szimplex módszerrel történő megoldása során, degeneráció esetén, hogyan lehet a mesterséges változókat eliminálni a bázisból. 3. A szerző fogalmazza meg először a lineáris programozási software kívánatos tulajdonságait, amelyek azonban messze túlmutatnak ezen a körön és tetszőleges optimalizációs software esetére érvényesek (4. fejezet bevezetése és 4.1 szakasz, 59 62 oldal). 4. A szerző, M. H. Khaliq PhD hallgatójával közösen [29] megmutatja, hogy néhány fontos hardware tulajdonságot hogyan lehet kihasználni az LP software hatékonyságának növelésére (cache memory, pipelining, branch prediction) és tárgyal néhány programozástechnikai megoldást is (4.2 szakasz, 63 65 oldal). 5. A láncolt listák (linked lists) alapvető szerepet tudnak játszani a szimplex módszer különböző részeinek a hatékonyságában. A szerző kidolgozott és részletesen bemutat egy olyan eljárást a kétszeresen láncolt listák kezelésére, amelyet a szimplex módszeren belül (de számos egyéb optimalizáló eljárásban is) igen előnyösen lehet használni és ami egyben alapját képezi számos későbbi LP algoritmus és algoritmikus elem rendkívül gyors működésének (5.5 szakasz, 80 84 oldal). 6. Az előző részekben kidolgozott technikák alapján a szerző megmutatja, hogyan lehet az inverz szorzatalakját (product form of the inverse, PFI) meghatározó algoritmust hatékonyan implementálni (8.1.3 szakasz, 129 131 oldal). Ugyanez a gondolat könnyen adaptálható az inverz LU formáját meghatározó algoritmus esetére is. 7. A 8.1.4.2 szakasz (132 133 oldal) egy fontos észrevételt tartalmaz a BTRAN műveletre vonatkozóan, amely a használatával kapcsolatos számítási munka becslésének az alapjául szolgál. A szerző ennek az észrevételnek alapján a később bevezetett algoritmusokban a transzformálandó vektor ritkásságának mértékét figyelembevevő alternatív megoldásokat mutat be. 8. A szerző új tárgyalást ad a CF#1-nek megfelelő általános LP feladat optimalitási kritériumára és annak bizonyítására (9.2 szakasz, 164 166 oldal). 9. A szerző új tárgyalást és algoritmikus leírást ad a primál szimplex második fázisának hányadostesztjére CF#1 esetén, majd ezt általánosítja CF#2-re (9.3, 9.3.1 és 9.3.2 szakaszok, 167 176 oldal).

MAROS Doktori tézisek 12 of 18 10. A primál második fázis hányadostesztjének számítástechnikai elemzése során megadja a Harris-féle hányadosteszt egy módosítását, amely numerikusan ugyanolyan kedvező, de algoritmikusan hatékonyabb (9.3.4 szakasz, 178 181 oldal). 11. A szerző részletesen tárgyalja az árnyékárak transzformációjának ismert módjait, de azok számítástechnikai elemzését is megadja, majd megmutatja, hogy a műveletben szereplő vektorok gyakori ritkásságát kihasználva hogyan lehet a transzformációt jelentősen felgyorsítani (9.4.2 szakasz, 182 184 oldal). 12. A szerző eddig nem publikált részletekbe menően tárgyalja a Goldfarb és Reid által javasolt, majd Forrest és Goldfarb által továbbfejlesztett steepest edge [9; 5] oszlopkiválasztási technikát. Ezáltal nemcsak a jobb megértést segíti elő, hanem jól megvilágítja a technika hasznossági feltételeit. Végül a szerző megadja a módszer számítástechnikai elemzését, ami a hatékony implemetáció alapjául szolgál (9.5.4.1 szakasz, 190 193 oldal). 13. A 9.5.5 szakaszban a szerző egy új általános oszlopkiválasztási algoritmust (SIMPRI) mutat be, amely számos ismert oszlopkiválasztási módszert speciális esetként tartalmaz és amelynek a segítségével újabb stratégiák tervezhetők. Megadja az algoritmus helyességének a bizonyítását is (198 203 oldal). 14. A szerző a 9.7.2 szakaszban általánosítja és módosítja Wolfe ad hoc módszerét a degenerációs ciklizálás és stalling elkerülésére. A módosítás eredményeként a későbbi degenerált lépések valószínűsége csökken (234 237 oldal). 15. A 9.7.3 szakaszban a szerző általánosítja és módosítja, ezáltal hatékonyabbá teszi a Gill és társai által javasolt EXPAND eljárást [8] a degenerációs ciklizálás és stalling elkerülésére (237 241 oldal). 16. A 9.7.4.1 szakaszban a szerző megfogalmaz egy általános perturbációs sémát (242 oldal). 17. A Benichou és társai által publikált perturbációs technikát [1], amely az IBM MPSX programcsomagja számára készült, a szerző a 9.7.4.2 szakaszban módosítja, ami az eljárás hatékonyságának növekedését eredményezi (242 243 oldal). 18. A 9.8.2.1 szakaszban a szerző egy új induló-bázis meghatározó algoritmust mutat be (CRASH(LTSF)), ami nemcsak a bázis triangularitására, hanem annak minél nagyobb fokú megengedettségére is törekszik. Az algoritmus rendkívül nagy sebességgel tud működni a korábban bevezetett kétszeresen láncolt listák segítségével (248 251 oldal).

MAROS Doktori tézisek 13 of 18 Különféle (a műben nem részletezett) módosításokkal ez egy algoritmus családnak tekinthető, amely még a legegyszerűbb változatában is eredményesebbnek bizonyult az ún. CPLEX bázisnál, amint az a szerző Mitra-val közös cikkéből kiderül [33]. 19. A szerző újszerű, eddig még nem publikált módon tárgyalja a duál megengedettséget CF#1-re és CF#2-re (10.1 szakasz, 261 262 oldal). 20. A szerző egy egyszerű általánosítását adja Chvatal felsőkorlátos duál algoritmusának, aminek eredménye a Dual-G algoritmus (10.2.2 szakasz, 266 267 oldal). 21. A szerző a 10.2.3 10.2.6 szakaszokban (267 277 oldal) megfogalmaz egy duál második fázis eljárást, amelyre DUAL-GX néven hivatkozik. Ez akár CF#1-re és CF#2-re is alkalmazható és a hagyományosan használt algoritmusok általánosításának tekinthető. A szerző megadja a hatékony implementáció feltételeit is. Az algoritmus jellemzője, hogy egy iterációban sok hagyományos iterációt tud elvégezni minimális számítási többlet munka árán. Sokkal hatékonyabb tud lenni duál degenerált bázisok és numerikusan nehéz feladatok esetén. Különösen a kevert egészértékű feladatok branch-and-bound típusú eljárásokkal történő megoldása esetén mutatkoznak meg előnyös tulajdonságai (amikoris sok felsőkorlátos változó van a feladatban), azonban egyéb feladatok megoldása során is rendszeresen és lényegesen felülmúlja a hagyományos verziókat. Erre vonatkozó néhány tapasztalat [24]-ben található. Az algoritmus alapjai a szerző egy korábbi cikkében [22] fogalmazódtak meg. 22. Az egész 10.4 szakasz a szerző által kidolgozott új duál első fázis eljárás részletes tárgyalásának van szentelve (277 292 oldal). Az algoritmus, amely GDPO néven szerepel, egyaránt alkalmas CF#1-re és a bemutatott minimális kiegészítéssel CF#2-re is. A hatékony implementáció feltételei is meg vannak adva. Bár GDPO alapjaiban más, mint DUAL-GX, mégis sok hasonló tulajdonsága van. Ugyanúgy sok hagyományos iterációt tud végrehajtani egyetlen iteráció során (kevés többlet munka árán), adaptív módon képes hatékonyan működni duál degenerált, illetve numerikusan nehéz feladatok esetén. Lényeges különbség, hogy GDPO igazi ereje akkor mutatkozik meg amikor a feladatban a kevéssé korlátozott változók vannak többségben. A korlátozott változók aò ØлÐÔ» Ø kezelése ugyanis triviális a duál első fázisban. Néhány számítási tapasztalat a szerző [25] cikkében található, amelyek jó egyezésben vannak az elméleti elvárásokkal. 23. Optimalizáló algoritmusok eredményes fejlesztéséhez elengedhetetlenül fontos, hogy jó tesztfeladatok álljanak rendelkezésre. A szerző nemcsak használta

MAROS Doktori tézisek 14 of 18 feladatárat, hanem hozzá is járult annak tanulságos feladatokkal való bővítéséhez. Ezek a feladatokñ ÖÓ ºÑÔ,Ñ ÖÓ ¹Ö ºÑÔ ésñó Þ ½ºÑÔ néven kerültek bele a tárba és számos fejlesztő tudott javítani a rendszerén ezeknek a feladatoknak a segítségével. Néhány figyelemreméltó példa: CPLEX [2], AMPL [6], LINPROG [12]. Mindhárom feladat rendszeresen szerepel az újabb publikációk tesztelési eredményeket bemutató táblázataiban. 24. A kísérletekhez és az új eljárások ellenőrzéséhez szükség volt egy komoly programrendszer létrehozására. A szerző által kifejlesztett szimplex implementáció 1985-től 1996-ig MILP néven szerepelt, majd egy jelentősebb átdolgozás után 1996 óta HIPLEX néven ismeretes. MILP a második legjobbnak bizonyult egy R. Sharda által lefolytatott összehasonlító vizsgálat [36] eredményeként. A vizsgálatban az akkor létező minden komolyabb, PC-re készült LP programcsomag részt vett. Az eredményeket Thiriez is idézi. [35]. A MILP-pel kapcsolatos fejlesztés mintegy mellékterméke -ként készült el a MINET nevű hálózati szimplex algoritmus és program, amely a DIMACS és a American Mathematical Society által 1992-ben rendezett International Implementation Challenge-en szignifikánsan jobbnak bizonyult, mint az akkor legjobbnak tartott NETFLO program [20]. 3.2. Korábbi eredmények továbbfejlesztése 1. A szerző az általa korábban javasolt primal első fázis eljárást [14] a 9.6 szakaszban továbbfejleszti és általánosítja CF#2-re, részletesen bemutatja az eljárás előnyös számítástechnikai tulajdonságait és megadja a hatékony működéshez szükséges implementációs feltételeket (203 227 oldal). 2. A szerző korábbi eredménye egy adaptíve composite első fázis eljárás [14], aminek kidolgozta egy alternatív változatát [15] és amely az értekezés 9.6.5 szakaszában található (229 230 oldal). 3. A szerző korábbi eredménye [13] az a degeneráció ellenes trianguláris indulóbázis meghatározó algoritmus, amely most CRASH(ADG) néven van hivatkozva. Az algoritmuson végrehajtott néhány módosítás és a használati feltételek tisztázása tekinthető újdonságnak ([33] és az értekezés 9.8.2.2 szakasza, 251-253 oldal).

Irodalomjegyzék [1] M. BENICHOU, J. GAUTIER, G. HENTGES, AND G. RIBIERE, The efficient solution of large-scale linear programming problems, Mathematical Programming, 13 (1977), pp. 280 322. [2] R. E. BIXBY, Private communications, 1994. [3] V. CHVÁTAL, Linear Programming, Freeman Press, New York, 1983. [4] G. DANTZIG, Maximization of a linear function of variables subject to linear inequalities, in Activity analysis of production and allocation, T. Koopmans, ed., Wiley, New York, 1951, pp. 339 347. [5] J. FORREST AND D. GOLDFARB, Steepest edge simplex algorithms for linear programming, Mathematical Programming, 57 (1992), pp. 341 374. [6] R. FOURER AND D. GAY, Experience with a Primal Presolve Algorithm, Numerical Analysis Manuscript 93 06, AT&T Bell Laboratiories, Murray Hill, NJ, USA, April 1993. [7] T. GAL AND F. GEUE, A new pivoting rule for various degeneracy problems, Operations Research Letters, 11 (1992), pp. 23 32. [8] P. GILL, W. MURRAY, M. SAUNDERS, AND M. WRIGHT, A Practical Anti Cycling Procedure for Linearly Constrained Optimization, Mathematical Programming, 45 (1989), pp. 437 474. [9] D. GOLDFARB AND J. REID, A Practicable Steepest-Edge Simplex Algorithm, Mathematical Programming, 12 (1977), pp. 361 371. [10] N. GOULD AND J. REID, New crash procedures for large systems of linear constraints, Mathematical Programming, 45 (1989), pp. 475 501. 15

MAROS Doktori tézisek 16 of 18 [11] H. GREENBERG, Pivot selection tactics, in Design and Implementation of Optimization Software, H. Greenberg, ed., NATO ASI, Sijthoff and Nordhoff, 1978, pp. 143 174. [12] P. KIRKEGAARD AND P. E. GRONHEIT, LINPROG A Linear Programming Solver, Research Report Risø R 707(EN), Risø National Laboratory, Roskilde, Denmark, June 1995. [13] I. MAROS, Adaptív módszerek a lineáris programozásban, II., Alkalmazott Matematikai Lapok, 7 (1981), pp. 1 71. [14], A general Phase I method in linear programming, European Journal of Operational Research, 23 (1986), pp. 64 77. [15], A multicriteria decision problem within the simplex method, in Mathematical Models for Decision Support, G. Mitra, ed., Springer Verlag, 1988, pp. 263 272. [16], MILP linear programming optimizer for personal computers under DOS, Preprints in Optimization, tech. report, Institute of Applied Mathematics, Braunschweig University of Technology, Braunschweig, Germany, September 1990. 16 pages. [17], MILP Linear Programming System, User s Guide for Version V3.40, Computer and Automation Institute (MTA SZTAKI), Budapest, Hungary, January 1990. In Hungarian. [18], MILP linear programming optimizer for personal computers under DOS, Research Report 41, Computer and Automation Institute (MTA SZTAKI), Budapest, Hungary, 1991. 16 pages. [19], A structure exploiting pricing procedure for network linear programming, Research Report 18 91, RUTCOR, Rutgers University, NJ, USA, May 1991. 15 pages. [20], Performance evaluation of the MINET minimum cost netflow solver, in Network Flows and Matching: DIMACS Implementation Challenge, D. Johnson and C. McGeogh, eds., American Mathematical Society, 1993, pp. 199 217. [21], A practical anti-degeneracy row selection technique in network linear programming, Annals of Operations Research, 47 (1993), pp. 431 442. [22], A Piecewise Linear Dual Procedure in Mixed Integer Programming, in New Trends in Mathematical Programming, R. S. F. Giannesi and S. Komlosi, eds., Kluwer Academic Publishers, 1998, pp. 159 170.

MAROS Doktori tézisek 17 of 18 [23], A General Pricing Scheme for the Simplex Method, Annals of Operations Research, 124 (2003), pp. 193 203. [24], A Generalized Dual Phase-2 Simplex Algorithm, European Journal of Operational Research, 149 (2003), pp. 1 16. [25], A Piecewise Linear Dual Phase-1 Algorithm for the Simplex Method, Computational Optimization and Applications, 26 (2003), pp. 63 81. [26], Computational Techniques of the Simplex Method, vol. 61 of International Series in Operations Research and Management, Kluwer Academic Publishers, Boston, 2003. 325+xx pages, Research monograph. [27] I. MAROS AND J. BOKOR, Személyi számítógépek hatása az operációkutatásra, Alkalmazott Matematikai Lapok, 14 (1989), pp. 155 169. [28] I. MAROS, E. ELLISON, M. HAJIAN, R. LEVKOVITZ, G. MITRA, AND D. SAYERS, FortMP Manual, Department of Mathematics and Statistics, Brunel University, London and NAG, Oxford, May 1994. Latest revised version: V3.0 in June 1999. [29] I. MAROS AND M. H. KHALIQ, Advances in Design and Implementation of Optimization Software, European Journal of Operational Research, 140 (2002), pp. 322 337. [30] I. MAROS AND G. MITRA, Finding Better Starting Bases for the Simplex Method, in Operations Research Proceedings 1995, P. K. et al., ed., Springer Verlag, 1996, pp. 7 12. [31], Simplex Algorithms, in Advances in Linear and Integer Programming, J. Beasley, ed., Oxford University Press, 1996, pp. 1 46. [32], Investigating the Sparse Simplex Algorithm on a Distributed Memory Multiprocessor, Parallel Computing, 26 (2000), pp. 151 170. [33], Strategies for creating advanced bases for large-scale linear programming problems, INFORMS Journal on Computing, 10 (Spring 1998), pp. 248 260. [34] W. ORCHARD-HAYS, Advanced Linear-Programming Computing Techniques, McGraw- Hill, New York, 1968. [35] H. THIRIEZ, OR Software, European Journal of Operational Research, 39 (1989), pp. 223 224.

MAROS Doktori tézisek 18 of 18 [36] E. WASIL, B. GOLDEN, AND R. SHARDA, Mathematical Programming Software on Microcomputers: Recent Advances, Directions and Trends, in Impact of Recent Advances in Computers on Operations Research, R. Sharda, B. Golden, E. Wasil, O. Balci, and W. Stewart, eds., Elsevier, 1989, pp. 263 272. [37] P. WOLFE, A technique for resolving degeneracy in linear programming, SIAM Journal of Applied Mathematics, 11 (1963), pp. 205 211.