Komáromi Éva LINEÁRIS PROGRAMOZÁS



Hasonló dokumentumok
Lineáris programozás. Modellalkotás Grafikus megoldás Feladattípusok Szimplex módszer

Lineáris Algebra gyakorlatok

JANUS PANNONIUS TUDOMÁNYEGYETEM. Schipp Ferenc ANALÍZIS I. Sorozatok és sorok

Széchenyi István Egyetem, 2005

BUDAPESTI KÖZGAZDASÁGTUDOMÁNYI EGYETEM. Puskás Csaba, Szabó Imre, Tallos Péter LINEÁRIS ALGEBRA JEGYZET

Áttekintés a felhasznált lineáris algebrai ismeretekről.

Analízis előadás és gyakorlat vázlat

Fejezetek a lineáris algebrából PTE-PMMK, Műszaki Informatika Bsc. Dr. Kersner Róbert

A lineáris programozás 1 A geometriai megoldás

Dualitás Dualitási tételek Általános LP feladat Komplementáris lazaság 2015/ Szegedi Tudományegyetem Informatikai Tanszékcsoport

Parciális differenciálegyenletek numerikus módszerei számítógépes alkalmazásokkal Karátson, János Horváth, Róbert Izsák, Ferenc

MATEMATIKA FELADATGYŰJTEMÉNY

A lineáris tér. Készítette: Dr. Ábrahám István

Lineáris algebra I. Kovács Zoltán. Előadásvázlat (2006. február 22.)

Lineáris algebra - jegyzet. Kupán Pál

Nemlineáris optimalizálás

NUMERIKUS MÓDSZEREK FARAGÓ ISTVÁN HORVÁTH RÓBERT. Ismertető Tartalomjegyzék Pályázati támogatás Gondozó

Gráfelmélet/Diszkrét Matematika MSc hallgatók számára. Párosítások

Mátrixok. 3. fejezet Bevezetés: műveletek táblázatokkal

Miskolci Egyetem GÉPÉSZMÉRNÖKI ÉS INFORMATIKAI KAR. Analízis I. példatár. (kidolgozott megoldásokkal) elektronikus feladatgyűjtemény

Lineáris algebra és mátrixok alkalmazása a numerikus analízisben

Kockázati folyamatok. Sz cs Gábor. Szeged, szi félév. Szegedi Tudományegyetem, Bolyai Intézet

GAZDASÁGMATEMATIKA KÖZÉPHALADÓ SZINTEN

Bevezetés a lineáris programozásba

5. Előadás. Megyesi László: Lineáris algebra, oldal. 5. előadás Lineáris függetlenség

SZTOCHASZTIKUS MÓDSZEREK

Analízisfeladat-gyűjtemény IV.

Mátrixaritmetika. Tartalom:

Ismerkedés az Abel-csoportokkal

Online jegyzet az Egészérték Programozás I. és II. tárgyhoz

Lineáris algebrai módszerek a kombinatorikában

4. előadás. Vektorok

1.1. Gyökök és hatványozás Hatványozás Gyökök Azonosságok Egyenlőtlenségek... 3

A kvantummechanika általános formalizmusa

Funkcionálanalízis az alkalmazott matematikában

Fejezetek az abszolút geometriából 6. Merőleges és párhuzamos egyenesek

Vektortér. A vektortér elemeit vektornak, a test elemeit skalárnak nevezzük. Ezért a függvény neve skalárral való szorzás (nem művelet).

DIFFERENCIAEGYENLETEK

Egy irányított szakasz egyértelműen meghatároz egy vektort.

BEVEZETÉS AZ ÁBRÁZOLÓ GEOMETRIÁBA

Teszt kérdések. Az R n vektortér

Feladatok a koordináta-geometria, egyenesek témaköréhez 11. osztály, középszint

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

LÁNG CSABÁNÉ SZÁMELMÉLET. Példák és feladatok. ELTE IK Budapest javított kiadás

5. gyakorlat. Lineáris leképezések. Tekintsük azt a valós függvényt, amely minden számhoz hozzárendeli az ötszörösét!

Matematikai alapismeretek. Huszti Andrea

6. előadás PREFERENCIÁK (2), HASZNOSSÁG

matematikai statisztika október 24.

MATEMATIKA Kiss Árpád Országos Közoktatási Szolgáltató Intézmény Vizsgafejlesztő Központ

Tómács Tibor. Matematikai statisztika

Klasszikus alkalmazások

ÉS TESZTEK A DEFINITSÉG

Lineáris algebra bevezető

Miskolci Egyetem. Diszkrét matek I. Vizsga-jegyzet. Hegedűs Ádám Imre

Geometriai axiómarendszerek és modellek

Szeminárium-Rekurziók

MATEMATIKA GYAKORLÓ FELADATGYŰJTEMÉNY

Valószínűségszámítás

Bevezetés a számításelméletbe I. feladatgyűjtemény. Szeszlér Dávid, Wiener Gábor

MATEMATIKA 9. osztály Segédanyag 4 óra/hét

Szimplex módszer, szimplex tábla Példaként tekintsük a következ LP feladatot:

Válasz Szőnyi Tamásnak az Optimális térlefedő kódok kutatása című doktori értekezés opponensi bírálatára

választással azaz ha c 0 -t választjuk sebesség-egységnek: c 0 :=1, akkor a Topa-féle sebességkör teljes hossza 4 (sebesség-)egységnyi.

2. Hatványozás, gyökvonás

Diszkrét matematika I., 12. előadás Dr. Takách Géza NyME FMK Informatikai Intézet takach november 30.

Valószín ségelmélet házi feladatok

Nevezetes függvények

Természetes számok: a legegyszerűbb halmazok elemeinek. halmazokat alkothatunk, ezek elemszámai természetes 3+2=5

2) = 0 ahol x 1 és x 2 az ax 2 + bx + c = 0 ( a,b, c R és a 0 )

MATEMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

AUTOMATÁK ÉS FORMÁLIS NYELVEK PÉLDATÁR

86 MAM112M előadásjegyzet, 2008/2009

Soukup Dániel, Matematikus Bsc III. év cím: Témavezető: Szentmiklóssy Zoltán, egyetemi adjunktus

GAZDASÁGI STATISZTIKA

Differenciálegyenletek a hétköznapokban

MITISZK Miskolc-Térségi Integrált Szakképző Központ

Az áprilisi vizsga anyaga a fekete betűkkel írott szöveg! A zölddel írott rész az érettségi vizsgáig még megtanulandó anyag!

A szimplex algoritmus

A szimplex tábla. p. 1

Color profile: Generic CMYK printer profile Composite 150 lpi at 45 degrees

Számelméleti feladatok az általános iskolai versenyek tükrében dr. Pintér Ferenc, Nagykanizsa

Gondolkodjunk a fizika segı tse ge vel!

MATEMATIKA tankönyvcsaládunkat

Differenciaegyenletek

Három dimenziós barlangtérkép elkészítésének matematikai problémái

LINEÁRIS ALGEBRA PÉLDATÁR MÉRNÖK INFORMATIKUSOKNAK

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

9. Áramlástechnikai gépek üzemtana

Számsorozatok Sorozat fogalma, példák sorozatokra, rekurzív sorozatokra, sorozat megadása Számtani sorozat Mértani sorozat Kamatszámítás

JANUS PANNONIUS TUDOMÁNYEGYETEM. Schipp Ferenc ANALÍZIS II. ***************

Készítette: Fegyverneki Sándor. Miskolci Egyetem, 2002.

Hraskó András, Surányi László: spec.mat szakkör Tartotta: Surányi László. Feladatok

TERMELÉSMENEDZSMENT. Gyakorlati segédlet a műszaki menedzser szak hallgatói számára. Összeállította: Dr. Vermes Pál főiskolai tanár 2006.

Diszkrét Matematika I.

2. Interpolációs görbetervezés

9. előadás Környezetfüggetlen nyelvek

Számítástudomány matematikai alapjai segédlet táv és levelező

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

Nemzeti versenyek évfolyam

Bemenet modellezése II.

Átírás:

OPERÁCIÓKUTATÁS No.2. Komáromi Éva LINEÁRIS PROGRAMOZÁS Budapest 2005

Komáromi Éva LINEÁRIS PROGRAMOZÁS Javított kiadás OPERÁCIÓKUTATÁS No.2 Megjelenik az FKFP 0231 Program támogatásával a Budapesti Közgazdaságtudományi és Államigazgatási Egyetem, Operációkutatás Tanszék gondozásában Budapest, 2005

Komáromi Éva: LINEÁRIS PROGRAMOZÁS Javított kiadás Lektorálta: Puskás Csaba Készült az Aula Kiadó Digitális Gyorsnyomdájában. Nyomdavezető: Dobozi Erika

Tartalomjegyzék ELŐSZÓ 3 1. A lineáris programozási feladat 5 1.1. Alineárisprogramozásifeladat..................... 5 1.2. Aduálisfeladat.............................. 8 1.3. Konvexhalmazokazeuklideszitérben................. 8 1.4. AzLPfeladatmegoldásairól....................... 15 2. Dualitás, optimalitás 23 3. A lineáris programozási feladat megoldása 29 3.1. Aszimplexmódszer............................ 29 3.2. Aszimplexmódszermegalapozása.................... 32 3.3. Kiindulólehetségesbáziselőállítása................... 34 3.4. Aduálismegoldásaszimplextáblában................. 36 3.5. Számpéldaaszimplexmódszeralkalmazására............. 39 4. Lineáris programozáshoz vezető feladatok 51 4.1. Adöntésialapprobléma......................... 51 4.2. Hiperbolikusvagytörtprogramozás................... 52 4.3. Valószínűséggel korlátozott lineáris programozási modell....... 53 4.4. Többcélúprogramozás.......................... 55 4.5. Célprogramozás.............................. 56 4.6. Kétlépcsősprogramozásimodell..................... 57 1

2 TARTALOMJEGYZÉK 5. Történet, ajánlott könyvek 63

ELŐSZÓ E jegyzet célja az, hogy a lineáris programozás elméletét belehelyezze abba a gondolatkörbe, amelyhez a Budapesti Corvinus Egyetem hallgatói az első szemeszterekben hozzászoktak, és amelyre szükségük lesz különösen azoknak a hallgatóknak, akik a közgazdaságtant elméleti igénnyel készülnek mûvelni. A tárgyalásmód nem lesz éppen változatos, főként állítások és bizonyítások sorozatából áll, amelyeket példák és gyakorlatok ritkán illusztrálnak. Bár számítunk az olvasó lineáris algebrai tájékozottságára, összefoglaljuk mindazokat(de csak azokat) a fogalmakat és állításokat, többségükben bizonyításaikkal együtt, amelyeket a lineáris programozási feladat vizsgálatánál igénybe veszünk. Először bemutatjuk az LP feladatot, majd származtatunk egy másik lineáris programozási feladatot, amelyet duális feladatnak nevezünk, a kiinduló feladatot pedig ebben az összefüggésben primál feladatnak. Célunk az, hogy bemutassuk a lineáris programozási feladat szerkezetét, tulajdonságait, a primál-duál feladatpár kapcsolatát, és a két feladat együttes megoldására szolgáló sok módszer közül a legismertebbet: a szimplex módszert. A tárgyalás középpontjában a primál-duál feladatpár tanulmányozása és a dualitási tétel áll. A dualitási tétel kimondásához, bizonyításához szükségünk lesz a Farkas tételre, annak bizonyításához pedig a konvex halmazok elméletében központi jelentőséggel bíró szeparációs tételre, amelynek azonban csak azt a változatát mondjuk ki és bizonyítjuk itt, amelyet a Farkas tétel bizonyításához felhasználunk. Ennek megfelelően a tárgyalás felépítése a következő. A duális feladat bevezetése után néhány halmazelméleti illetve konvexitással kapcsolatos fogalom, a szeparációs tétel és a Farkas tétel következik. Ezután az LP feladat megoldásainak elhelyezkedéséről 3

4 TARTALOMJEGYZÉK lesz szó és bizonyítjuk a dualitási tételt. A dualitási tétel folyománya a nagyjelentőségû komplementaritási tétel, amely rávilágít az LP feladat optimális megoldásainak jellegére is. Ezzel teljes egészében előkészítettük a szimplex módszert, amelynek ezután csak a leírása marad hátra. Végül sor kerül a szimplex tábla szerkezetének a tanulmányozására abból a célból, hogy lássuk, hogyan befolyásolják a feladat paraméterei az optimális megoldást és az optimális célfüggvényértéket. A szimplex módszer alkalmazását, a lehetséges kimeneteleket és a feladat paraméterei változásának a következményeit számpélda illusztrálja. Az utolsó fejezetben lineáris programozási feladatra visszavezethető nemlineáris programozási feladatok közül bemutatunk néhányat, azzal a céllal is, hogy az olvasó érdeklődését felkeltsük a matematikai programozás néhány más ága, pl. a sztochasztikus programozás és a hiperbolikus programozás, és a döntéselméletben fontos szerepet játszó célprogramozás illetve többcélú programozás iránt. Az ajánlott irodalommal zárul a jegyzet. Néhány mérföldkőnek tekinthető könyvet sorolunk itt fel és néhány jellemző adatot, magyar vonatkozást a lineáris programozást is magában foglaló operációkutatás történetéből. E jegyzet a 2002-ben e sorozatban megjelent jegyzet javított kiadása.

1. fejezet A lineáris programozási feladat 1.1. A lineáris programozási feladat LegyenA m nméretűmátrix,b m-komponensűvektor,c n-komponensűvektor, mindhárom adott. Keresünk olyan n-komponensű x vektort, amely maximalizáljaacxlineárisfüggvényt(skalárisszorzatot)azax=b,x 0lineárisfeltételek mellett: cx max Ax = b,x 0. Ez a lineáris programozási feladat egységes, úgynevezett kanonikus alakban. Általános formájában egy LP feladat tartalmazhat egyenlőtlenségi feltételt, előjelkötetlen változókat, maximalizálás helyett lehet minimalizálás a cél. Az LP feladat különböző alakjai azonban ekvivalensek abban az értelemben, hogy bármely LP feladat kanonikus alakban felírható, és fordítva, egy kanonikus alakban felírt LP feladat átalakítható más, például csupa egyenlőtlenségi feltételt tartalmazó feladattá. A következő tételben összefoglaljuk az LP feladat feltételeit és célfüggvényét illető átalakítási lehetőségeket. Megjegyezzük, hogy ebben a jegyzetben minden vektor-vektor szorzás skaláris, ezért sehol nem tüntetjük fel a transzponált jelölésével, hogy az első sorvektor, a második pedig oszlopvektor. A mátrix-vektor szorzásnál szintén a sorrend dönti el, 5

6 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT hogy a szóbanforgó vektor sorvektornak vagy oszlopvektornak tekintendő-e. Megjegyezzüktovábbá,hogyA j jelöliazamátrixj-dikoszlopát,a i pedigazi-diksorát, azaza j m-komponensű,a i n-komponensűvektorok(j=1,...,n;i=1,...,m). 1. Állítás (ekvivalens átalakítások): (1)Aza i1 x 1 +a i2 x 2 +...+a in x n b i feltétel egynemnegatívu i változóbevezetésével helyettesíthető a következő két feltétellel: a i1 x 1 +a i2 x 2 +...+a in x n +u i = b i, u i 0. Aza i1 x 1 +a i2 x 2 +...+a in x n b i feltételegynemnegatívu i változóbevezetésével helyettesíthető a következő két feltétellel: a i1 x 1 +a i2 x 2 +...+a in x n u i = b i, u i 0. (2)Aza i1 x 1 +a i2 x 2 +...+a in x n b i feltételekvivalensa a i1 x 1 a i2 x 2... a in x n b i feltétellel,aza i1 x 1 +a i2 x 2 +...+a in x n b i feltételekvivalensa a i1 x 1 a i2 x 2... a in x n b i feltétellel. (3) Az a i1 x 1 +a i2 x 2 +...+a in x n = b i feltétel helyettesíthető a következő két egyenlőtlenségi feltétellel: a i1 x 1 +a i2 x 2 +...+a in x n b i, a i1 x 1 +a i2 x 2 +...+a in x n b i. Aza i1 x 1 +a i2 x 2 +...+a in x n =b i (i=1,...,k)kszámúfeltételbőlállófeltételrendszer helyettesíthető a következő k + 1 számú egyenlőtlenségi feltétellel:

1.1. ALINEÁRISPROGRAMOZÁSIFELADAT 7 a i1 x 1 +a i2 x 2 +...+a in x n b i (i=1,...,k), k k k k a i1 x 1 + a i2 x 2 +...+ a in x n b i. i=1 i=1 i=1 i=1 (4)Előjelkötetlenx j változóhelyettesíthetőkétnemnegatívváltozókülönbségével: x j =x j x j,x j 0,x j 0. Több előjelkötetlen változó esetén elegendő egyetlen új változót bevezetni ahhoz, hogy valamennyi szóbanforgó változó nemnegativitását előírhassuk: az a i1 x 1 +a i2 x 2 +...+a in x n =b i,i=1,...,m feltételrendszer ekvivalens az alábbi feltételrendszerrel: ( n a i1 x 1+a i2 x 2+...+a in x n a ij )x = b i,i=1,...,m, j=1 x 0,x j 0,j=1,...,n. aholazx 1 =x 1 x,...,x n =x n x helyettesítéstalkalmaztuk. (5) A célfüggvény maximalizálása ekvivalens a célfüggvény negatívjának minimalizálásával és fordítva. Bizonyítás: A(4) állítást látjuk be, a többi bizonyítását az olvasóra bízzuk. Tegyükfelelőször,hogy x=( x 1, x 2,..., x n )kielégítia n a ij x j =b i, i=1,...,m feltételeket. Mivel minden szám helyettesíthető két nemnegatív szám különbségével, találunkolyanx j,x j nemnegatívszámokat,hogy x j=x j x j, j=1,...,n.legyen x =max(x j)ésadjunkújértékeketazx j változóknakakövetkezőmódon: legyen j x j= x j +x. Ekkorx,x j kielégítikaz ( n a i1 x 1+a i2 x 2+...+a in x n a ij )x = b i,(i=1,...,m) egyenlőtlenségrendszert. j=1 j=1 x 0,x j 0,(j=1,...,n) Tegyük fel másodszor, hogy x 0,x j 0,(j = 1,...,n) kielégítik a fenti egyenlőtlenségrendszert. Legyen x=(x 1 x,...,x n x ).AkkorA x=bteljesül.

8 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT 1.2. A duális feladat Bevezetjük a cx max Ax = b, x 0 kanonikus alakú LP feladat duálisát a következő yb min ya c feladat formájában, ahol y m-komponensű döntési (változó) vektor. Az első feladatot primál feladatnak, a második feladatot duál vagy duális feladatnak nevezzük, y komponenseit duális változóknak. Noha a definíció a kanonikus feladathoz kapcsolódik, tetszőleges LP feladat duális feladatát definiáltuk ezáltal, mivel tetszőleges LP feladat átalakítható kanonikus alakúvá. Az olvasóra bízzuk az alábbi két állítás igazolását. 2. Állítás A duális feladat duálisa a primál feladat. 3. Állítás A cx max,ax b,x 0 úgynevezett standard alakú feladat duálisaazyb min, ya c, y 0feladat. 1.3. Konvex halmazok az euklideszi térben A lineáris programozási feladat vizsgálatához szükség van néhány lineáris algebrai fogalomra és állításra. Ebben a szakaszban ezeket foglaljuk össze. LegyenH R n,h. Az a pont a H torlódási pontja, ha a bármely környezete tartalmaz a-tól különböző elemet a H-ból. Aza H ponth-nakbelsőpontja,haa-naklétezikolyanr-sugarúkörnyezete (r > 0), amelynek minden pontja H-hoz tartozik. A H halmaz zárt, ha minden torlódási pontját tartalmazza.

1.3. KONVEXHALMAZOKAZEUKLIDESZITÉRBEN 9 AH halmaznyílt,hamindenpontjabelsőpont. AH halmazkorlátos,havanolyankszám,hogy a <kfennállmindena H esetén. AH R n halmazkompakt,hakorlátosészárt. AH R n lineáristér,haalineáriskombinációranézvezárt: a 1,a 2 H maga utánvonja,hogyµ 1 a 1 +µ 2 a 2 C mindenµ 1,µ 2 Resetén. Aza 1,a 2,...,a k R n vektoroklineárisanfüggetlenek,halineáriskombinációjukként a0vektorcsakazonosan0együtthatókkalállelő: µ 1 a 1 +µ 2 a 2 +...+µ k a k =0 µ i =0 mindeniesetén. Az a 1,a 2,...,a k H R n a H lineáris tér bázisa, ha a 1,a 2,...,a k lineárisan függetlenekéshmindenelemeelőállaza 1,a 2,...,a k vektoroklineáriskombinációjaként: a H magautánvonja,hogy µ 1,µ 2,...,µ k,hogya=µ 1 a 1 +µ 2 a 2 +...+µ k a k. Aza 1,a 2 Hpontokatösszekötőszakasz a{a a=λa 1 +(1 λ)a 2,0 λ 1} halmaz. A H halmaz konvex, ha bármely két elemével együtt az azokat összekötő szakaszt is tartalmazza. Az a legszûkebb konvex halmaz, amely tartalmazza a H halmazt, H konvex burka. Legyenc R n,c 0,α R. Az{x R n cx=α}halmazhipersík. Legyen c R n,c 0,α R. Az {x R n cx α} és {x R n cx α} halmazok zárt félterek. Legyenc R n,c 0,α R. Az{x R n cx<α}és{x R n cx>α}halmazok nyílt félterek. 4. Állítás: (1) A H halmaz konvex akkor és csak akkor, ha bárhogyan is választjuk ki az a 1,a 2,...,a k H pontokat,azokbármelykonvexlineáriskombinációjaiselemeah k k halmaznak: λ i a i H,haλ i 0 (i=1,...,k), λ i =1. i=1 (2) Konvex halmazok metszete konvex. (3) A hipersík konvex halmaz. i=1

10 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT (4) A féltér konvex halmaz. Bizonyítás. (1)AfeltételteljesüléseeseténaHhalmazkonvex,hiszenafeltételteljesülk=2 esetén is, ez pedig a konvex halmaz definiciója. Belátjuk most, hogy ha H konvex, akkor a = k k λ i a i H, (λ i 0 (i=1,...,k), λ i = 1), a H szóbanforgó i=1 elemeinek k számára vonatkozó teljes indukcióval. Az állítás igaz, a konvex halmaz definíciója szerint, k = 2-re. Tegyük fel, hogy igazk 1-re, belátjuk, hogy akkor igaz k-ra is. Ha λ k = 1, az állítás igaz, mert a k H. Tegyük fel, hogy λ k < 1. Ekkor1 λ k = k 1 λ i >0.Azindukciósfeltevésmiatt k 1 i=1 i=1 λ i 1 λ k a i H, mivel Ekkorazonbanaza=λ k a k +(1 λ k ) k 1 a H konvexitása miatt. i=1 λ i k 1 0,(i=1,...,k 1), 1 λ k i=1 i=1 λ i 1 λ k =1. λ i 1 λ k a i vektorszinténelemeahhalmaznak (2). Legyen x 1,x 2 H γ, H γ (γ Γ) konvex halmazok. Legyen x = λx 1 + (1 λ)x 2,1 λ 0.Mivelx 1,x 2 mindenh γ halmaznakelemeésh γ konvex,ezért x eleme e halmazok mindegyikének és ily módon metszetüknek is. (3)Legyenx 1,x 2 {x R n cx=α},legyenx=λx 1 +(1 λ)x 2,1 λ 0. Akkorcx=λcx 1 +(1 λ)cx 2 =λα+(1 λ)α=α,azazx {x R n cx=α}. (4)Legyenx 1,x 2 {x R n cx α},legyenx=λx 1 +(1 λ)x 2,1 λ 0. Akkorcx=λcx 1 +(1 λ)cx 2 λα+(1 λ)α=α,azazx {x R n cx α}. Egy a H a H konvex zárt halmaz csúcspontja vagy extrémális pontja, ha a nem írható fel H a-tól különböző elemeinek konvex lineáris kombinációjaként. AzR n végesszámúeleménekkonvexburkátpoliédernek nevezzük. Véges számú zárt féltér metszetét poliedrikus halmaz nak nevezzük. Vegyük észre, hogy a poliéder a csúcspontjainak konvex burka. AH R n konvexkúp,haanemnegatívkombinációranézvezárt: a 1,a 2 H és µ 1,µ 2 R,µ 1,µ 2 0magautánvonja,hogyµ 1 a 1 +µ 2 a 2 H. Könnyenlátható,hogyedefinícióekvivalensakövetkezővel: AH R n konvex kúp,haa 1,a 2 H,µ 0magautánvonja,hogya 1 +a 2 H,µa 1 H.

1.3. KONVEXHALMAZOKAZEUKLIDESZITÉRBEN 11 Az alábbi állítást bizonyítás nélkül közöljük. 5. Állítás AzR n térvégesszámúelemeáltalgeneráltkonvexkúpzárthalmaz. 6. Állítás Legyena 1,a 2,...,a k R n. (1)AH= { a R n a=µ 1 a 1 +µ 2 a 2 +...+µ k a k,µ j 0 (j=1,...,k) } halmaz konvex kúp. (2)AG={y R n ya j 0, j=1,...,k}halmazkonvexkúp. Bizonyítás. (1) Legyen H a = µ 1a 1 +µ 2a 2 +...+µ ka k,µ i 0 (i = 1,...,k), H a =µ 1 a 1+µ 2 a 2+...+µ k a k,µ i 0(i=1,...,k).Akkora +a = (µ 1+µ 1)a 1 +...+(µ k +µ k )a k H ésµµ 1a 1 +µµ 2a 2 +...+µµ k a k H,haµ 0, mertekkorµµ i 0 i=1,...,k. (2) Legyenek y 1,y 2 G, vagyis y 1 a j 0 és y 2 a j 0, (j = 1,...,k). Ekkor (y 1 +y 2 )a j = y 1 a j +y 2 a j 0,vagyis y 1 +y 2 G. Továbbá, µy 1 a j 0 (j = 1,...,k),azazµy 1 G. Az előző állításban szerepló G kúpot a H kúp polárisának nevezzük, jelölése: G=H. Akétkúpnakszemléletesgeometriaitartalomadható,amelyimplikálja azt az - alább a Farkas tételben bizonyított - megállapítást, hogy az R n egy a vektoravagybennevanah kúpban,vagyapolárisánakvanolyanyeleme,amely a-val hegyesszöget zár be, amint ezt az alábbi ábra mutatja. Vegyük észre, hogy G-vel együtt az αg halmaz is konvex kúp minden α R mellett. Vegyük észre, hogy az, hogy a kanonikus alakú lineáris programozási feladat feltételeit kielégítő megoldás létezik azt jelenti, hogy a jobboldalon lévő m-komponensű b vektor benne van az A mátrix A 1,...,A n oszlopvektorai által generált konvex kúpban. Legyen H és G két nemüres halmaz R n -ben. Az {x R n cx=α} hipersíkot H-t és G-t(szigorúan) elválasztó hipersík nak nevezzük, ha x H cx α (cx<α) x G cx α (cx>α)

12 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT 1.1. ábra. 1.2. ábra.

1.3. KONVEXHALMAZOKAZEUKLIDESZITÉRBEN 13 A következő állításazt mondjaki, hogy egyzárt konvex halmaz ésegy, a halmazhoz nem tartozó pont szigorúan elválasztható. 7. Állítás (Szeparációs tétel): Legyen H R n zárt, konvex, nemüres halmaz és x R n \H. Akkor létezik olyan 0 c R n és α R, hogy az {x R n cx=α} halmaz a H halmazt és az x pontot szigorúan elválasztó hipersík. Bizonyítás. LegyenD ρ ( x)={x x x ρ}az xρ-sugarúzártkörnyezete. Válasszuk ρ-t úgy, hogy D ρ ( x) H. Mivel x x folytonos függvény, ezért felvesziaminimumátazr n korlátosészárt,azazkompaktd ρ ( x) Hrészhalmazának egypontjában,legyenezapontx.aminimumértéke: x x >0,mert x / H. A tételt azzal bizonyítjuk, hogy belátjuk, c = x x és egy alkalmas α érték az állításban szereplő elválasztó hipersíkot határoz meg. Legyen x H tetszőleges pont. H konvexvoltamiattλx+(1 λ)x H ha0 λ 1,ésa λx+(1 λ)x x x x egyenlőtlenség fennáll minden 0 λ 1 értékre. Emeljük négyzetre az egyenlőtlenség mindkét oldalát. Azt kapjuk, hogy λ 2 (x x ) 2 +2λ(x x )(x x)+(x x) 2 (x x) 2 λ[2(x x )(x x)+λ(x x ) 2 ] 0. Mivel ez utóbbi egyenlőtlenség baloldalán λ szorzója λ-nak lineáris függvénye, az egyenlőtlenség csak akkor állhat fenn minden 0 < λ < 1 értékre is, ha e lineáris függvény konstans tagja nemnegatív: (x x )(x x) 0, azazx(x x) x (x x). Mivel (x x)(x x)>0,ezértx (x x)> x(x x).

14 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT Válasszuk c t és α-t a következőképpen: c=x x 0,α= x (x x)+ x(x x). 2 Aztkaptuk,hogycx>α>c xmindenx H esetén,azazaz{x R n cx=α}a H halmazt és az x pontot szigorúan elválasztó hipersík. 8. Állítás (Farkastétel): Akövetkezőkétfeladatközülazegyikéscsakazegyik oldható meg.: (a) Ax = b,x 0 (b) ya 0, yb<0 Bizonyítás. Először belátjuk, hogy a két feladat egyidejüleg nem oldható meg. Tegyük fel ugyanis az állítással ellentétben, hogy az x és ŷ vektorokra fennáll, hogy A x =b, x 0ésŷA 0,ŷb<0. Akkor ŷa x=ŷb<0, miközben ŷa x 0, ami ellentmondás. Másodszor: tegyük fel, hogy nincs megoldása az Ax = b,x 0 feladatnak, vagyis b nem állítható elő A oszlopvektorai nemnegatív kombinációjaként. Ez azt jelenti,hogyabvektornincsbenneaza 1,...,A n oszlopvektorokáltalgeneráltkonvex zárt kúpban. A szeparációs tétel szerint akkor létezik a b vektort és az A 1,...,A n oszlopvektorok által generált kúpot szigorúan elválasztó hipersík: y R m,y 0ésα R,hogyyb<αésya>αmindena {a a=ax,x 0} esetén. MivelazAoszlopvektoraiáltalgeneráltkúpnakazA j oszlopvektorokiselemei ésaza=0vektoriseleme,ezértya j >α, j=1,...,nésα<y0=0.ígyyb<0. Az α negatív volta önmagában még nem zárja ki, hogy valamely rögzített j indexre ya j negatívlegyen. DeA j -velegyüttannakmindennemnegatívδ-szorosaiseleme akúpnak,ezérthaya j <0,akkorδyA j tetszőlegesennagyabszolutértékűnegatív szám lehet, vagyis α-nál kisebb lesz, ha δ elég nagy. Ez ellentmondásban van azzal, hogyyax>αmindenx 0mellett,beleértveaztazxvektortis,amelynekj-edik komponense1,atöbbi0. Tehátazyvektorrafennáll,hogyyA 0ésyb<0,amiéppenatételállítása.

1.4. AZLPFELADATMEGOLDÁSAIRÓL 15 1.4. Az LP feladat megoldásairól Megállapítottuk, hogy minden lineáris programozási feladat ekvivalens átalakítás eredményeként kanonikus feladattá válhat és fordítva, minden kanonikus feladat bármilyen más formában is megfogalmazható. Elegendő tehát a kanonikus feladatot vizsgálnunk ahhoz, hogy az LP feladatokra vonatkozó általános észrevételeket tehessünk, amint az itt következik. A cx max Ax = b,x 0 LP feladat lehetséges vagy megengedett megoldásainak nevezzük azokat az x vektorokat, amelyek a feltételeket kielégítik. Az LP feladat célfüggvénye az optimalizálandó: maximalizálandó(más esetben minimalizálandó) cx lineáris függvény. Az LP feladat optimális megoldásainak nevezzük azokat az x vektorokat, amelyek a lehetséges megoldások halmazán a célfüggvényt maximalizálják. A feladat egy lehetséges bázisa az A mátrix oszlopvektorainak olyan összessége, amely egyrészt bázisa az A oszlopvektorai által generált lineáris térnek, másrészt azok az együtthatók, amelyekkel a b vektor egyértelmûen felírható ezen oszlopvektorok lineáris kombinációjaként, nemnegatívak. A feladat bázismegoldásainak nevezzük azokat az x vektorokat, amelyek pozitív komponenseihez tartozó oszlopvektorai az A mátrixnak lineárisan függetlenek. Egy bázismegoldás degenerált, ha a szóbanforgó oszlopvektorok az A mátrix oszlopvektorai által kifeszített lineáris térnek egy valódi alterét generálják. 9. Állítás A lehetséges megoldások L={x R n Ax=b,x 0} halmaza konvex. i=1 Bizonyítás. Mivelaz{x Ax=b}halmazhipersíkokmetszete: {x Ax=b}= m {x A i x=b i },ezértehalmazkonvex. Konvextovábbáaz{x R n x 0}halmazis,mertmetszeteaz{x R n e i x 0},i=1,...,nféltereknek,ahole i azi-dik

16 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT egységvektor. Így konvex az {x R n x 0} {x R n Ax=b} halmaz is. Vegyük észre, hogy az optimális megoldások halmaza, ha nemüres, szintén véges számú hipersík és a nemnegatív térnegyed közös része: L opt ={x Ax=b,cx=γ,x 0}, aholγ azoptimáliscélfüggvényértéketjelöli. Eztfoglaljaösszeazalábbi 10. Állítás Az optimális megoldások halmaza konvex. A következő állítást fontossága miatt kiemeljük, de tartalma nyilvánvaló, hiszen aweierstrasstételértelmébenazr n korlátoszártrészhalmazánfolytonosfüggvény felvesziaminimumátisésamaximumátis. 11. Állítás Ha a lehetséges megoldások halmaza korlátos, akkor az LP feladatnak van optimális megoldása. A lehetséges és optimális megoldások elhelyezkedését illusztrálja az alábbi példa. Példa Tekintsük a következő kétváltozós feladatokat és vizsgáljuk a lehetséges és optimális megoldások halmazát különböző esetekben. Induljunk ki a 2x 1 +3x 2 max (1) x 1 +x 2 1, (2) x 1 +x 2 4, (3) x 1 +2x 2 2, (4) 3x 1 +x 2 3, (5) x 1,x 2 0. feladatból. Ábrázoljuk a lehetséges megoldások halmazát(1.3. ábra):

1.4. AZLPFELADATMEGOLDÁSAIRÓL 17 1.3. ábra. (a) A lehetséges megoldások L halmaza korlátos, nemüres, poliéder. Az optimális megoldásokhalmazaegyetlencsúcspont,azx 1 +x 2 =4ésazx 1 2x 2 =2egyenesek metszéspontja: x 1 = 10 3,x 2= 2 3. (b) Változtassuk meg a célfüggvényt. Legyen a maximalizálandó célfüggvényünk: x 1 +x 2.EkkorazoptimálismegoldásokhalmazaazLhalmazegyhatárolószakasza: azx 1 = 10 3,x 2= 2 3 pontotazx 1= 3 2,x 2= 5 2 ponttalösszekötőszakasz. (c) Az eredeti feladat(2) feltételét változtassuk meg, legyen az új(2) feltétel a következő: x 1 +x 2 0,9.Ekkoralehetségesmegoldásokhalmazaésígytermészetszerűleg az optimális megoldások halmaza is üres. (d) Hagyjuk el a (2) feltételt teljes egészében. Ekkor a lehetséges megoldások halmaza a 1.4. ábrán mutatott nem korlátos poliedrikus halmaz: Látható, hogy a célfüggvény tetszőlegesen nagy értéket felvehet, vagyis nem korlátos a lehetséges megoldások L halmazán, ezért az optimális megoldások halmaza üres. (e) Hagyjuk el a(2) feltételt teljes egészében, és változtassuk meg a célfüggvényt. Legyenazújmaximalizálandócélfüggvény x 1 +x 2. Ekkorazoptimálismegoldások halmazaazlhalmazthatárolóazon félegyenes, amelyazx 1 = 1 2,x 2 = 3 2 csúcsból indul és iránytangense 1.

18 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT 1.4. ábra. Összefoglalva megállapíthatjuk, hogy kétváltozós esetben a lehetséges megoldások halmaza lehet üres, lehet nemüres korlátos poliéder, illetve nemüres nem korlátos: poliedrikus halmaz. Az optimális megoldások halmaza lehet üres, lehet egyetlen csúcs, lehet szakasz, vagy félegyenes, de az optimális megoldások között mindegyik esetben van csúcs. A következőkben a kétváltozós esetben tett észrevételeinket általánosítjuk. Először a feladat bázismegoldásaival azonosítjuk a lehetséges megoldások L halmazának csúcspontjait. Célunk az, hogy megmutassuk: ha a feladatnak van optimális megoldása, akkor van optimális bázismegoldása is- ez a következő fejezet utolsó állítása lesz és egyben a konklúzió. A következő állításban egy észrevételt fogalmazunk meg. 12. Állítás Tekintsükaz Ax=b,x 0feladategyx=(x 1,...,x n )megoldását. Ha x pozitív komponenseihez tartozó oszlopvektorok lineárisan összefüggnek, akkor meghatározható egy olyan másik x megoldás, amelynek komponensei 0 k ott, ahol x komponensei 0 k és a pozitív komponenseinek száma legalább eggyel kevesebb. Az egyszerűség kedvéért(de az általánosság megszorítása nélkül) feltesszük, hogy x minden komponense pozitív. Az állításban szereplő feltevés szerint az A mátrix

1.4. AZLPFELADATMEGOLDÁSAIRÓL 19 oszlopvektorailineárisanösszefüggnek. Ekkor s=(s 1,...,s n ),nemmind0komponensekkel, hogy n A j s j =0. j=1 Feltehetjük, hogy az s vektornak van pozitív eleme. (Ha nem lenne, az összeg minden tagját megszorozzuk 1-gyel.) Legyen x j 0<δ=min s j >0s j és tegyük fel(az általánosság megszorítása nélkül), hogy Ekkor δ= x n s n. x=x δs=(x 1 δs 1,...,x n δs n ) 0, j A j (x j δs j )=b, vagyis xmegoldás,de x n =0.Így xeggyelkevesebbpozitívkomponensttartalmaz. 13. Állítás Ha acx max, Ax=b,x 0kanonikusfeladatnakvan lehetséges megoldása, akkor van lehetséges bázismegoldása is. Bizonyítás. Az állítást az A mátrix oszlopvektorai (a változók) n számára vonatkozó teljes indukcióval bizonyítjuk. n=1-reazállításigaz. Tegyükfel,hogytetszőlegesn>1eseténigazk<nre, belátjuk, hogy akkor igaz k = n-re is. Legyen x = (x 1,x 2,...,x n ) lehetséges megoldás: n A j x j =b,x=(x 1,x 2,...,x n ) 0. j=1 1. eset: x komponensei között van 0. Az általánosság megszorítása nélkül feltehetjük,hogyx n =0.Ekkoraz(x 1,x 2,...,x n 1 )lehetségesmegoldásaazn 1oszlopvektorttartalmazó n 1 A j x j =b,x=(x 1,x 2,...,x n 1 ) 0feladatnak, azállítás j=1 tehát igaz az indukciós feltevés miatt. 2. eset: x j >0,j=1,...,n.Haazoszlopvektoroklineárisanfüggetlenek,akkorx bázismegoldás, készen vagyunk. Ha az oszlopvektorok lineárisan összefüggnek, akkor

20 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT az előző állítás értelmében redukálhatjuk a feladatot n-nél kevesebb oszlopvektort tartalmazó feladatra, amelyre pedig állításunk az indukciós feltevés miatt igaz. A lehetséges megoldások illetve optimális megoldások halmazának egy fontos tulajdonságát mutatja be a következő állítás. 14. Állítás Az x csúcspontja az L = {x R n Ax=b,x 0} halmaznak akkor és csak akkor, ha x bázismegoldás. Bizonyítás. Először belátjuk, hogy x csúcspont, ha x bázismegoldás. Tegyük fel az állítással ellentétben, hogy x bázismegoldás, de nem csúcspont. Akkor léteznek olyan R n x 1,x 2,x 1 x 2 x lehetséges megoldások, hogy x = λx 1 +(1 λ)x 2, 0 < λ < 1. Ha x j = 0, akkor x 1 j = 0 és x 2 j = 0 hiszen x,x 1,x 2 0. Ezért x 1 és x 2 pozitív komponenseihez tartozó oszlopvektorok szintén lineárisan függetlenek,tehátx 1 ésx 2 bázismegoldásoklennének,ellentmondásbanazzal,hogy minden vektor, így b is, csak egyféleképpen írható fel lineárisan független vektorok lineáris kombinációjaként. Másodszor: belátjuk, hogy x bázismegoldás, ha x csúcspont. Ismét tegyük fel az állítással ellentétben, hogy x csúcspont, de nem bázismegoldás. Legyen az x első r komponense pozitív, r n. Ekkor fennáll, hogy A 1 x 1 +...+A r x r =b,x j >0,haj=1,...,r és létezik olyan s = (s 1,...,s r,s r+1,...,s n ) vektor, amelyben s j = 0, ha j = r+ 1,...,n;s 1,...,s r nemmind0,közülüklegalábbegykomponenspozitívés A 1 s 1 +A 2 s 2 +...+A r s r =0. x Legyenδ 1 =min j s j >0 s j, δ 2 =min s j <0 ( x j s j ),ezutóbbiδ 1,has-neknincsnegatívkomponense. Legyenδ=min(δ 1,δ 2 ). Ekkor x 1 = x δs=(x 1 δs 1,...,x n δs n ) 0,x 2 =x+δs=(x 1 +δs 1,...,x n +δs n ) 0, Ax 1 = A(x δs)=b δ0=b, Ax 2 =A(x+δs)=b+δ0=b.

1.4. AZLPFELADATMEGOLDÁSAIRÓL 21 Vagyisx δsésx+δslehetségesmegoldásokésx= x1 +x 2 2, ellentmondásban azzal a feltevéssel, hogy x csúcspontja a lehetséges megoldások halmazának. Mivel az A mátrix oszlopvektorai közül véges számú: legfeljebb ( n m) számú lineárisan független rendszert alkotó halmaz választható ki, ezért a bázismegoldások száma, egyúttal a lehetséges megoldások L halmazának csúcspontjainak száma is szükségképpen véges. Ha tehát az LP feladat lehetséges megoldásainak halmaza korlátos, akkor e halmaz poliéder.

22 1.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADAT

2. fejezet Dualitás, optimalitás A kanonikus alakú LP feladat és duálisa közötti kézenfekvő kapcsolatot írja le az alábbi 15. Állítás (Gyenge dualitási tétel): (1) Ha x a primál és ŷ a duális feladat lehetségesmegoldása,akkorfennállac x ŷbösszefüggés. (2)Ha xaprimál ésŷaduálisfeladatlehetségesmegoldásaésc x=ŷb,akkor xaprimálésŷa duális feladat optimális megoldása. Bizonyítás. (1) Tegyük fel, hogy x és ŷ kielégítik a primál illetve a duál feltételeket. Szorozzuk meg ŷ-nal a primál feladat egyenletrendszerét. Szorozzuk meg x-val a duális feladat egyenlőtlenségrendszerét. Mivel x komponensei nemnegatívok, ezért az egyenlőtlenség iránya a szorzással nem változik. Azt kapjuk, hogy c x ŷa x=ŷb. (2)Minthogyac x ŷbegyenlőtlenségfennálltetszőleges xprímálésŷduálislehetséges megoldásra, ezért ha két lehetséges megoldásra a célfüggvényértékek egyenlők, ez csak úgy lehet, ha mindkettő optimális megoldás. Egy másik fontos összefüggés a Farkas tételből azonnal következik, nevezetesen az, hogy ha a primál feladatnak nincs lehetséges megoldása, akkor a duális feladatnak nincsoptimálismegoldása. Tegyükfelugyanis,hogynincsmegoldásaazAx=b,x 0 feladatnak. Ha a duális feladatnak sincs lehetséges megoldása, akkor optimális 23

24 2.FEJEZET: DUALITÁS,OPTIMALITÁS sem lehet, tehát készen vagyunk. Tegyük fel tehát, hogy a duális feladatnak van lehetségesŷmegoldása. Mivel ỹ R m,afarkastételszerint,amelyreỹa 0,ỹb< 0 fennáll, és mivel ŷ+λỹ is lehetséges megoldása a duális feladatnak minden pozitív λ érték mellett, ezért a duális feladat célfüggvénye tetszőlegesen nagy abszolut értékû negatív szám lehet a λ értékétől függően - azaz a duális feladat célfüggvénye nem veszi fel a minimumát a lehetséges megoldások halmazán, mivel alulról nem korlátos. Ezt az állítást is magában foglalja a következő tétel. Dualitási tétel: (1) Ha mind a primál, mind a duális feladatnak van lehetséges megoldása, akkor mindkettőnek van optimális megoldása és az optimális célfüggvényértékek megegyeznek. (2) Ha az egyiknek nincs lehetséges megoldása, akkor a másiknak nincs optimális megoldása. Bizonyítás. A(2) állítást beláttuk abban az esetben, amikor a primál feladatnak nincs lehetséges megoldása. Mivel azonban a primál feladat a duális feladat duálja, ezért a másik irányú állítás nem igényel bizonyítást. Az(1) állítás igazolásához azt kell belátnunk, hogy amennyiben a primál-duál feladatpár mindegyikének létezik lehetséges megoldása, akkor létezik olyan lehetséges ( x,ŷ) megoldáspár, amelyre fennáll a c x ŷb 0egyenlőtlenség, amely a gyenge dualitási tétel értelmében csak egyenlőséggel teljesülhet. Azt látjuk tehát be, hogy haaz Ax=b,x 0,yA c feladat megoldható, akkor megoldható az Ax=b,x 0,yA c,cx yb 0 feladat is. Abizonyításindirektmódontörténik. Feltesszük,hogyazAx=b,x 0,yA c,cx yb 0 feladat nem oldható meg, és a Farkas tétel felhasználásával ellentmondásra jutunk abban az esetben, amikor az Ax = b,x 0,yA c feladat megoldható. Ez utóbbi feladatnak rögzítjük is egy megoldását, jelölje ezt ( x, ŷ): fennálltehátaz,hogya x=b, x 0,ŷA c.

25 Az Ax = b,x 0,yA c,cx yb 0 feladatot írjuk fel olyan egységes formában, amelyre a Farkas tétel alkalmazható. Ehhez először írjuk fel olyan ekvivalens formában, amelyben a változók nemnegativitását előírjuk. Figyelembe véve, hogy minden vektor előáll két nemnegatív vektor különbségeként úgy, hogy a másodikazonoskomponensekettartalmaz,alkalmazzukazy=y y helyettesítést, aholy =(y 1,...,y m )ésy =(y,...,y )m-komponensűvektorok,ésaváltozókvektorával szorozzunk jobbról. Ekkor a feladat a következő lesz: Ax=b,x 0,A T (y y ) c,cx b(y y ) 0,y 0,y 0. Itt A T az A mátrix transzponáltját jelöli. Bevezetünk egy n komponensű u vektort és egy u változót abból a célból, hogy egyenletrendszert kapjunk. Azt a vektort, amelynek minden komponense 1, e-vel jelöljük és így y felírható ey formában. Ax = b,x 0,A T y A T ey u=c,cx by bey u =0, y 0,y 0,u 0,u 0, x R n,y R m,y 0 R,u R n,u 0 R. Végülírjukfelaztamátrixot,amelyetjobbrólaváltozók(x,y,y,u,u )nemnegatív vektorával szorzunk A 0 0 0 0 A = 0 A T A T e E 0 c b be 0 1 E jelölésekkel az Ax = b,x 0,yA c,cx yb 0 feladat az alábbi ekvivalens formában írható fel: x y b A y = c, u 0 u x y y u u 0.

26 2.FEJEZET: DUALITÁS,OPTIMALITÁS Indirekt feltevésünk szerint tehát ennek a feladatnak nincs megoldása. A Farkas tételértelmébenekkor(éscsakekkor)vanolyanz=(z 1,z 2,τ)vektor,z 1 R m,z 2 R n,τ R,amelymegoldjaa b za 0,z c <0 0 egyenlőtlenség rendszert, amely részletesebben így írható fel: z 1 A+τc 0 Az 2 τb 0 Az 2 e+τeb 0 z 1 b+z 2 c < 0 z 2 0, τ 0. Kis átalakítással ebből az alábbi feladathoz jutunk: z 1 A τc Az 2 = τb z 1 b+z 2 c < 0 z 2 0, τ 0. Indirekt feltevésünkből következően tehát ennek a feladatnak lenne megoldása. Szorozzuk meg z 2 -vel az első feltételcsoportot alkotó egyenlőtlenségrendszer mindkétoldalát. Mivelz 2 0,ezértazegyenlőtlenségirányamegváltozik. Szorozzukmegz 1 -gyelamásodikfeltételcsoportotalkotóegyenletrendszermindkétoldalát. Azt kapjuk, hogy z 1 Az 2 τcz 2 z 1 Az 2 = τbz 1.

Ekétfeltételbőlkövetkezik,hogya(z 1,z 2,τ)megoldásrafennállnaaτ(z 1 b+z 2 c) 0 27 egyenlőtlenség. Belátjuk, hogy ez lehetetlen. Haugyanisτ <0,akkorτ(z 1 b+z 2 c)>0azutolsófeltételmiatt. Haτ =0,akkorakövetkezőképpenjárunkel. SzorozzukmegazA x=begyenletrendszert z 1 -gyel, illetve a z 1 A τc egyenlőtlenségrendszert a nemnegatív x vektorral. Ezután szorozzuk meg az ŷa c egyenlőtlenségrendszert a nempozitív z 2 vektorral,illetveazaz 2 =τbegyenletrendszertŷ vel. Mivelτ =0,aztkapjuk, hogy z 1 A x = z 1 b τc x=0 z 1 b 0és 0 = ŷτb=ŷaz 2 cz 2 z 2 c 0, azaz z 1 b+z 2 c 0, ismét ellentmondásban az utolsó egyenlőtlenséggel. Ezzel b beláttuk, hogy nem megoldható a za 0,z c < 0 feladat, vagyis megoldható,afarkastételértelmében,azax=b,x 0,yA c,cx yb 0feladat,ami 0 éppen a tétel állítása. A dualitási tétel következménye, de önmagában is gyakran hivatkozott fontos tétel az alábbi Egyensúlyi(komplementaritási) tétel: Legyen x lehetséges megoldása a primál feladatnak, ŷ a duális feladatnak. Az x optimális megoldása a primál feladatnak és ŷ optimális megoldása a duális feladatnak akkor és csak akkor, ha ŷa j >c j magautánvonja,hogy x j =0. Bizonyítás. Tegyük fel először, hogy x j = 0 teljesül minden olyan j indexre, amelyreŷa j >c j.akkor x j >0magautánvonja,hogyŷA j =c j.ezért c x= n c j x j = c j x j = j=1 j: x j >0 n ŷa j x n j =ŷ A j x j =ŷa x=ŷb, j=1 j=1 azaz x és ŷ optimális megoldások a dualitási tétel értelmében.

28 2.FEJEZET: DUALITÁS,OPTIMALITÁS Tegyük fel másodszor, hogy x és ŷ optimális megoldások. Ekkor 0=c x ŷb= n n c j x j ŷ A j x j = j=1 j=1 n (c j ŷa j ) x j. j=1 Mivel xésŷlehetségesmegoldások,ezértc j ŷa j 0és x j 0,szorzatuktehát nempozitív. n j=1 (c j ŷa j ) x j tehátnempozitívtagokösszege,ezazösszeg0csak akkor lehet, ha minden tagja 0. Így x j = 0 kell, hogy teljesüljön minden olyan j indexre,amelyreŷa j >c j. Ezzel a tételt bizonyítottuk. Végül, akövetkezőállításfelhatalmazástad arra, hogya cx max, Ax= b, x 0 feladat optimális megoldását a bázismegoldások között keressük. 16. Állítás: Ha az LP feladatnak van optimális megoldása, akkor van optimális bázismegoldása is. Bizonyítás. Legyen x optimális és a pozitív komponensekhez tartozó oszlopvektoroklegyenekaza 1,A 2,...,A k.haŷaduálisfeladatoptimálismegoldása,akkor akomplementaritásitételértelmébenŷa j =c j,j=1,...,k.haa 1,...,A k lineárisan függetlenek,akkor xoptimálisbázismegoldás. HaA 1,...,A k lineárisanösszefüggnek, akkorlétezikolyanx lehetségesmegoldás,amelynekpozitívkomponenseiheztartozó oszlopvektorok A 1,...,A k egy független részhalmazát alkotják. De x is optimális, mertx ésŷegyüttszinténteljesítikakomplementaritásitételfeltételeit.

3. fejezet A lineáris programozási feladat megoldása 3.1. A szimplex módszer A dualitási tétel segítségével beláttuk, hogy ha az LP feladatnak van optimális megoldása, akkor van optimális bázismegoldása is. Ez a feladat numerikus megoldása, megoldhatósága szempontjából nagy jelentőséggel bír, mert lehetőséget nyújt arra, hogy csak bázismegoldásokat vizsgáljunk. Ez azt jelenti, hogy ha a megoldás menetében bázismegoldások sorozatát építjük fel és gondoskodunk arról, hogy egy már vizsgált bázismegoldás az eljárás során ne ismétlődhessen, akkor az eljárás véges számú lépésben befejeződik. Az alább leírt szimplex algoritmus azonban csak arról gondoskodik, hogy olyan bázismegoldások sorozatát hozza létre, amelyek elemeihez tartozó célfüggvényérték monoton növekvő, de nem szükségképpen szigorúan növekvő, így nem zárja ki a végtelen ciklus lehetőségét: azt, hogy egy degenerált bázismegoldás az eljárás során ismétlődjék. Megjegyezzük, hogy az eljárásba beépíthetők olyan óvintézkedések, amelyek kizárják ezt a lehetőséget, ilyen eljárás pl. a lexikografikus szimplex módszer. Két oka van annak, hogy ezt itt nem tárgyaljuk. Az egyik az, hogy ezek az aprólékos óvintézkedések talán elvonnák az olvasó érdeklődését és megnehezítenék, hogy a módszer gondolatmenetének, logikájának kellő figyelmet szenteljen. A másik az a szimplex módszerrel szerzett 29

30 3.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADATMEGOLDÁSA több évtizedes tapasztalat, hogy az eljárás ezen okból nem kerül végtelen ciklusba. A szimplex módszer irodalmában ismeretesek olyan konstruált példák, amelyekben az eljárás végtelen ciklusba torkollik, de gyakorlati feladatok megoldása során erre nem került sor, legalábbis ezen okból nem. Acx max,ax=b,x 0kanonikusalakúlineárisprogramozásifeladatmegoldására szolgál a szimplex módszer. Az LP feladat megoldására szolgáló módszerek közül e módszer és változatai a legnépszerűbbek, a matematikai programozási szoftvercsomagok is rendszerint a szimplex módszert foglalják magukban LP feladatok megoldására. A feladatot a z max, Ax=b, z cx=0,x 0 formában írjukfel. A z cx=0feltételt célfüggvénysornak szoktáknevezni, a z változó aktuális értéke láthatóan az aktuális x = (x 1,...,x n ) megoldáshoz tartozó célfüggvényérték. Feltesszük, az általánosság megszorítása nélkül, hogy a feladat lehetséges bázisa annyi oszlopvektorból áll, amennyi a sorok száma. A szimplex tábla az első és minden közbeeső iterációban ilyen szerkezetű:......... x j......... b x k1 t 11...... t 1j......... t 10................................................ x km t m1...... t mj......... t m0 z t 01...... t 0j......... t 00 Ittx k1,x k2,...,x km azokataváltozókatjelölik,amelyekheztartozóoszlopvektorok a z változóhoz tartozó m + 1. oszlopvektorral együtt alkotják az aktuális bázist.

3.1. ASZIMPLEXMÓDSZER 31 A táblázat j. oszlopának elemei az Aj c j (j=1,...,n),a0. (azazutolsó)oszlopelemeia Aj c j b 0 = = m i=1 (α) (β) m i=1 (γ) (δ) t ij Ak i vektor koordinátái ebben a bázisban c ki b 0 vektor koordinátái: +t 0j m t ij A k i =A j i=1 0 1 m t ij c ki t 0j =c j i=1 t i0 Ak i c ki +t 00 0 1 m t i0 c ki =t 00 i=1 m t i0 A k i =b. i=1 A szimplex tábla lehetséges, ha b a bázisvektorok nemnegatív kombinációjaként áll elő, vagyis ha t i0 0 (i = 1,...,m). A módszer alkalmazása során gondoskodunk arról, hogy a tábla mindig lehetséges legyen. Ekkor a szimplex táblából kiolvashatjuk, a(δ) összefüggés szerint, a szóbanforgó LP feladatunk egy lehetséges bázismegoldását: x ki = t i0, i = 1,...,m;x j = 0 másként, a (γ) összefüggés szerint pedig t 00 az ehhez a bázismegoldáshoz tartozó célfüggvényérték. Arra, hogyan lehet kiinduló lehetséges szimplex táblát előállítani, még visszatérünk. Lehetséges szimplex tábla birtokában az eljárás következő iterációja az alábbi lépésekből áll: 1. lépés: Kiválasztjuk a bázisba bekerülő oszlopvektort. Keresünk a t 0k (k 0) elemek között negatív elemet. Ha nincs, megállapítjuk, hogy a tábla optimális, a táblából leolvasható az optimális megoldás, az eljárás végetér. Ha van, kiválasztjuk azegyiket: t 0jb <0,eldöntjük,hogyazA j b oszlopvektortvonjukbeabázisba. 2. lépés: Kiválasztjuk a bázisból kikerülő oszlopvektort. Keresünk a t ijb (i =

32 3.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADATMEGOLDÁSA 1,..., m) elemek között pozitív elemet. Ha nincs, megállapítjuk, hogy a célfüggvény nemkorlátos, nincs optimális megoldás, az eljárás végetér. Ha van, kiválasztjuk az i b sorindexetúgy,hogy t ib 0 t i0 = min t ib j b i 0,t ijb >0t ijb egyenlőség teljesüljön,(ha több sorindexre teljesül, akkor közülük választunk egyet,) éseldöntjük,hogyazx jb változóhoztartozóoszlopvektorazx ib változóhoztartozó oszlopvektor helyére bekerül a bázisba. 3. lépés: Végrehajtjuk a báziscserét. A tábla új elemeit a megszokott módon kapjuk: hogy túj ij = t régi túj i b j = trégi i b j t régi x ib helyérebeírjukx jb tésx jb helyérebeírjukx ib t; ij trégi i b j trégi ij b t régi i b j b,i=0,1,...,m,i i b ;j=0,1,...,n m,j j b ; i b j b,j=0,1,...,n m,j j b ; túj ij b = trégi ij b,i=0,1,...,m,i i t régi b ; i b j b i b j b = 1 túj. t régi i b j b Vegyük észre, hogy a báziscsere generálóelemének kiválasztási módja garantálja, (1)túj i0 0,hat régi i0 0volt,i=1,...,m,azazabáziscsereutánújralehetséges megoldást kapunk; (2)túj 00 trégi 00,azazacélfüggvényértékmonotonnő. 3.2. A szimplex módszer megalapozása 17. Állítás: Ha t ij 0(i = 1,...,m) valamely kiválasztott j indexre, akkor a lehetséges megoldások halmaza nem korlátos: az x = x+λr lehetséges megoldás leszmindennemnegatívλértékre,ha xlehetségesmegoldásésazrvektorta következőképpen hozzuk létre: r j =1,r ki = t ij (i=1,...,m),r k =0másként.

3.2. ASZIMPLEXMÓDSZERMEGALAPOZÁSA 33 Bizonyítás: Az (α) összefüggés szerint 0 = A j m t ij A k i, így az állításban szereplőrvektorrafennáll,hogyar=0,ésaj.oszlopválasztásamiattr 0.Ebből az állítás következik. i=1 18. Állítás: Ha a j indexre fennáll, hogy t 0j < 0 és t ij 0minden i = 1,...,m, akkor a feladatnak nincs optimális megoldása. Bizonyítás: Az előző állítás szerinti r vektorra, a táblázatból kiolvasható x bázismegoldásraésazx= x+λr, λ 0vektorraekkorfennálla(β)összefüggés szerint, hogy cx=c x+λcr= m c ki t i0 +λ(c j i=1 m c ki t ij )=t 00 λt 0j, i=1 amely,mivelt 0j <0,λértékétőlfüggőentetszőlegesennagyszámlehet. 19. Állítás: Aszimplextáblábólkiolvashatóbázismegoldásoptimális, hat 0j 0 mindenj=1,...,n mindexre. Bizonyítás: Minthogy A k 1 (,...,A km lineárisan független m-komponensû vektorok, ezért az A k 1... A )mátrixrangjam. km Soraitehátazm-dimenziós tér bázisát alkotják, amelyek lineáris kombinációjaként minden m-komponensû vektorelőállítható,a(c k1,...,c km )vektoris. Léteznektehátolyany 1,...,y m együtthatók, amelyekkel e mátrik sorait sorra megszorozva és a kapott vektorokat összeadva a (c k1,...,c km )vektortkapjuk. Ezaztjelenti,hogyazm-dimenziósy=(y 1,...,y m )vektorra fennáll, hogy ya k i = c ki minden i = 1,...,m indexre. Ezt felhasználva az (α) összefüggésből az alábbi kifejezéshez jutunk: m m m ya j =y t ij A k i = t ij (ya k i )= t ij c ki, i=1 i=1 i=1 ésa(β)összefüggésszerint m t ij c ki =c j +t 0j c j,mertt 0j 0. Azytehátolyan i=1 vektor, amelyre egyrészt ya c, vagyis y a duális feladat lehetséges megoldása, másrésztya j =c j hax j >0,vagyisazegyensúlyitételértelmébenazxaprímál,y pedig a duális feladat optimális megoldása.

34 3.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADATMEGOLDÁSA 3.3. Kiinduló lehetséges bázis előállítása Haamegoldandófeladatunkvéletlenülstandardalakú: cx max,ax b,x 0, ésb 0,akkorefeladatkanonikusalakja: [A,E] x =b, x 0,(c,0) x u u u max, automatikusantartalmazegykiindulólehetségesbázist,mégpedigazu 1,...,u m változókhoz tartozó egységvektorokat. Lehetséges megoldás az x j = 0,j = 1,...n;u i = b i,i = 1,...m; a feladat együtthatói pedig a mátrix oszlopvektorainak illetve a b vektornak a koordinátáit jelentik ebben a bázisban. Ha a megoldandó feladat általános alakú, akkor a kiinduló lehetséges bázis előállítása külön megfontolást és eljárást igényel. Itt a kétfázisú szimplex módszert vázoljuk. Az első fázis célja kiinduló lehetséges megoldást létrehozni. Ezt mutatjuk be most. Tekintsük a cx max,ax = b,x 0,(b 0) feladathoz kapcsolódó alábbi feladatot: n a ij x j +w i = b i, w i 0, i=1,...,m j=1 z n c j x j = 0, x 0, j=1 m w i max, i=1 EzLPfeladat,amelynekvanlehetségesbázismegoldása: w i =b i (i=1,...,m),és vanoptimálismegoldásais,merta m w i célfüggvénynempozitív,ezérta0felső korlátja. Figyelembe véve, hogy az első fázis célfüggvénysora a következő: i=1 w + m m n m w i = w a ij x j + b i =0 i=1 i=1 j=1 w w m i=1 i=1 n a ij x j = j=1 m b i, i=1 ( n m a ij )x j = j=1 i=1 i=1 m b i,

3.3. KIINDULÓLEHETSÉGESBÁZISELŐÁLLÍTÁSA 35 a feladat rövidebben így írható fel: 0 0 A E 0 1 c 1... c n 0 1 0 m i=1 a i1... m i=1 a in 0 w max, b z = x 0, x 0. w m i=1 b i w w A w vektor elemei mesterséges változók, amelyeknek az a szerepük, hogy oszlopvektoraik a z változóval együtt kiinduló bázist adjanak. A feladat kiinduló szimplex táblája a következő: x 1...... x j...... x n b w 1 a 11...... a 1j...... a 1n b 1...................................................... w m a m1...... a mj...... a mn b m w 0 m a i1...... m a ij...... m a in m i=1 i=1 i=1 z c 1...... c j...... c n 0 b i i=1 Azelsőfázisbanaw 0 soraacélfüggvénysor,az változóhoztartozóz cx=0 sor a többihez hasonló feltételnek minősül azzal az eltéréssel, hogy a z változó sosem kerül ki a bázisból. Az első fázisban a m w i célfüggvény maximalizálása révén arra törekszünk, hogy sorozatos báziscserékkel kiiktassuk a mesterséges változókat a bázisból. Ha ez sikerül, akkor, értékük a bázison kívül 0 lévén, kiiktathatjuk őket a feladatból is és ily módon olyan szimplex táblához jutunk, amely már csak az eredeti feladat vektorait tartalmazza bázisvektorok és bázison kívüli vektorokként egyaránt. Csak akkor nem sikerül kiiktatni őket a feladatból, ha a célfüggvény optimális értéke negatív- ez pedig azt jelenti, hogy eredeti feladatunknak egyáltalán nincs lehetséges i=1

36 3.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADATMEGOLDÁSA megoldása. Az első fázis befejezésekor tehát erre a két konkluzióra juthatunk. A második esetben az eljárás végetér, az első esetben folytatódik a második fázissal, a második fázisban egy olyan szimplex táblával, amelyben a mesterséges célfüggvény sora már nem jelenik meg és a feladat m+1. sora visszanyeri a célfüggvénysor rangját és szerepét. 3.4. A duális megoldás a szimplex táblában A kiinduló és egymást követő szimplex táblákban nem tüntettük fel a bázisvektorokhoz tartozó oszlopokat, mert tudjuk, hogy koordinátáik az aktuális bázisban szükségképpen egységvektorokat alkotnak. Ha azonban feltüntetjük, azaz a tábla a kiinduló bázist alkotó oszlopvektorok(együttesen egységmátrixot alkotó vektorok) koordinátáit is tartalmazza az aktuális bázisra nézve, akkor az eredeti kiinduló egységmátrix helyén az egymást követő iterációkban az aktuális ( B= A k 1... A km ) bázis inverze jelenik meg, az A mátrix helyén pedig B 1 A. Ez az észrevétel magyarázatot igényel, amely itt következik. Különítsükelakiindulóbázistalkotóe 1,e 2,...,e m egységvektorokhelyénkeletkező oszlopokat és ezek mátrixát a szimplex módszer alkalmazásának egy közbeeső szakaszában. Az e k -nak megfelelő oszlop elemeit és egyben az e k koordinátáit az aktuális bázisban jelölje e 1ek e 2ek... e mek. Azeljárásegyközbeesőszakaszábantehátaze 1,e 2,...,e m oszlopok,azazaze=

3.4. ADUÁLISMEGOLDÁSASZIMPLEXTÁBLÁBAN 37 (e 1,e 2,...,e m )egységmátrixhelyénakövetkezőmátrixjelenikmeg: t 1e1 t 1e2... t 1em............ t me1 t me2... t mem Az(α)összefüggés,amelyszerint m i=1 t ie l A k i =e l,aztmutatja,hogy t 1e1 t 1e2... t 1em a 1k1...... a 1km t 1e1 t 1e2... t 1em................ E= =................ B. t me1 t me2... t mem a mk1...... a mkm t me1 t me2... t mem Ebből következik, hogy t 1e1 t 1e2... t 1em............ t me1 t me2... t mem =B 1. Szinténaz(α)összefüggésből,amelyszerint m t ij A k i =A j,következik,hogy ( A k 1,...,A ) k m t 1j... t mj Ajelölésbőlvilágos,hogyB 1 A j = i=1 =B t 1j... t mj t 1j... t mj =A j,,b 1 b= t 10... t m0.

38 3.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADATMEGOLDÁSA A tábla átalakulását és szerkezetét mutatja az alábbi ábra: e 1 A E b e m z c 0 0 x k1 T =B 1 A B 1 B 1 b x km z c B B 1 A c c B B 1 c B B 1 b aholc B =(c k1,...,c km ). A tábla tartalma a fönti (α) (δ) összefüggésekből adódik. Az y = c B B 1 vektorramindigfennáll,hogyyb=c B B 1 b=t 00. Megmutatjuk,hogyazoptimális szimplex táblában y a duális feladat lehetséges és egyben optimális megoldása. Valóban, ( y A k 1... A k m ) = c B B 1 ( ya j = c B B 1 B A k 1... A k m t 1j... t mj ) =c B B 1 B=c B, =c j +t 0j,j=1,...,n.

3.5. SZÁMPÉLDAASZIMPLEXMÓDSZERALKALMAZÁSÁRA 39 Ez utóbbi két egyenlet mutatja, hogy y a duális lehetséges megoldása, ha a tábla optimális, azaz, ha t 0j 0(j = 1,...,n), és mivel a hozzátartozó célfüggvényérték megegyezik a táblából kiolvasható primál megoldás célfüggvényértékével, ezért y optimális is. A tábla tartalmának ismerete lehetővé teszi azt, hogy megvizsgáljuk, mennyire érzékeny az optimális megoldás a célfüggvényegyütthatók változására, meddig marad még lehetséges (és ezért optimális) a tábla, ha a jobboldalon lévő értékeket változtatjuk, hogyan alakul az optimális megoldás, ha a feladat egyes paramétereit megváltoztatjuk. A szimplex módszer alkalmazására és ezt követő érzékenységi vizsgálatokra mutatunk be egy példát a következő fejezetben. 3.5. Számpélda a szimplex módszer alkalmazására Tekintsük a következő lineáris programozási feladatot: 2x 1 +8x 2 +5x 3 +14x 4 max 2x 1 +x 2 +x 3 +x 4 10 x 1 +2x 2 +x 3 +x 4 =8 x 1 +x 2 +x 3 +2x 4 =6 x 1 x 2 +x 3 +3x 4 8 x 1, x 2, x 3, x 4 0 1. Oldjuk meg a feladatot szimplex módszerrel. 2. Írjuk fel a feladat duálisát. 3. Az optimális szimplex táblából határozzuk meg a duális feladat optimális megoldását. 4. Határozzuk meg, hogy ε milyen értékei mellett marad az utolsó szimplex tábla optimális, ha a feladatunk célfüggvény együtthatóit így változtatjuk: ( 2 + ε,8,5,14).

40 3.FEJEZET: ALINEÁRISPROGRAMOZÁSIFELADATMEGOLDÁSA 5. Számítsuk ki, az utolsó szimplex tábla felhasználásával, az optimális megoldását annak a feladatnak, amelynek a feltételei ugyanazok, mint a felírt feladatban, célfüggvény együtthatóit azonban így változtatjuk: (4, 0, 2, 2). 6. Határozzuk meg, hogy β milyen értékei mellett marad az utolsó szimplex tábla lehetséges,haafeladatjobboldalátígyváltoztatjuk: b=(10,8+β,6,8). 7. Számítsuk ki az eredeti feladatból kiindulva és az utolsó szimplex tábla felhasználásávalazoptimálismegoldásátannakafeladatnak,amelybenx 4 együtthatói az egyes feltételekben sorra: ( 1, 1, 2, 3) és célfüggvény együtthatója 10. Megoldás. A feladat vizsgálatát azzal kezdjük, hogy minden olyan feltételt, amelynek jobboldalán negatív érték szerepel, megszorzunk 1 gyel- itt ilyen feltétel nem szerepel. Ezután a feladatot felírjuk kanonikus alakban. Az első feltétel baloldalából kivonunk egy nemnegatív kiegészitő változót, a negyedik feltétel baloldalához pedig hozzáadunk egy másik nemnegatív változót, hogy egyenlőségeket kapjunk. A továbbiakban ezzel a feladattal foglalkozunk: (P) 2x 1 +8x 2 +5x 3 +14x 4 2x 1 +x 2 +x 3 +x 4 u 1 x 1 +2x 2 +x 3 +x 4 x 1 +x 2 +x 3 +2x 4 x 1 x 2 +x 3 +3x 4 +u 4 x 1, x 2, x 3, x 4, u 1, u 4 max =10 =8 =6 =8 0 1) Alakítsuk át úgy a feladatot, hogy szimplex módszerrel történő megoldásra alkalmas legyen. Bevezetjük a célfüggvényértéket képviselő maximalizálandó z változót. Így a következő feladathoz jutunk:

3.5. SZÁMPÉLDAASZIMPLEXMÓDSZERALKALMAZÁSÁRA 41 z max +2x 1 8x 2 5x 3 14x 4 +z 2x 1 +x 2 +x 3 +x 4 u 1 x 1 +2x 2 +x 3 +x 4 x 1 +x 2 +x 3 +2x 4 x 1 x 2 +x 3 +3x 4 +u 4 x 1, x 2, x 3, x 4, u 1, u 4 =0 =10 =8 =6 =8 0 A feladat oszlopvektorai között csak egy egységvektor van, a z oszlopához tartozó egységvektortól eltekintve, így a feladat nem tartalmaz kiinduló bázist, ezért két fázisban oldjuk meg. Az első fázisban lehetséges bázismegoldást keresünk. Három mesterséges változót kell bevezetnünk, a célfüggvénysort követő három feltételben: w 1,w 2,w 3, amelyek oszlopvektoraiu 4 oszlopávalegyüttbázistalkotnak. Azelsőfázismaximalizálandó célfüggvénye: w 0 = (w 1 +w 2 +w 3 ). Az első fázis célfüggvénysorában, mint az előző fejezetben ezt megmutattuk, az x j együtthatójának negatívját úgy kapjuk, hogyösszeadjukx j együtthatóitamesterségesváltozókattartalmazósorokbanésa jobb oldal szintén a negatívja a megfelelő jobboldalon szereplő értékek összegének. Az első fázisban megoldandó feladat tehát a következő alakú: w 0 max 2x 1 +x 2 +x 3 +x 4 u 1 +w 1 =10 x 1 +2x 2 +x 3 +x 4 +w 2 =8 x 1 +x 2 +x 3 +2x 4 w 3 =6 x 1 x 2 +x 3 +3x 4 +u 4 =8 2x 1 8x 2 5x 3 14x 4 +z =0 4x 1 4x 2 3x 3 4x 4 +w 0 = 24 x 1, x 2, x 3, x 4, u 1, u 4, w 1, w 2, w 3 0