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

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

Dualitás Dualitási tételek Általános LP feladat Komplementáris lazaság 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

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

A szimplex algoritmus

Opkut deníciók és tételek

Áttekintés LP és geometria Többcélú LP LP és egy dinamikus modell 2017/ Szegedi Tudományegyetem Informatikai Intézet

Kétfázisú szimplex algoritmus és speciális esetei

A szimplex algoritmus

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

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

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

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

Optimalizálás alapfeladata Legmeredekebb lejtő Lagrange függvény Log-barrier módszer Büntetőfüggvény módszer 2017/

Érzékenységvizsgálat

Nemlineáris programozás 2.

2) Írja fel az alábbi lineáris függvény grafikonjának egyenletét! (3pont)

A szimplex tábla. p. 1

1. Ábrázolja az f(x)= x-4 függvényt a [ 2;10 ] intervallumon! (2 pont) 2. Írja fel az alábbi lineáris függvény grafikonjának egyenletét!

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

1/ gyakorlat. Hiperbolikus programozási feladat megoldása. Pécsi Tudományegyetem PTI

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Abszolútértékes és gyökös kifejezések

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

Függvények Megoldások

Alkalmazott optimalizálás és játékelmélet Lineáris programozás Gyakorlófeladatok. Rétvári Gábor

Bevezetés az operációkutatásba A lineáris programozás alapjai

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

I. Egyenlet fogalma, algebrai megoldása

Magasabbfokú egyenletek

függvény grafikonja milyen transzformációkkal származtatható az f0 : R R, f0(

8. Egyenletek, egyenlőtlenségek, egyenletrendszerek II.

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

egyenlőtlenségnek kell teljesülnie.

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének

Egyenletek, egyenletrendszerek, egyenlőtlenségek Megoldások

További programozási esetek Hiperbolikus, kvadratikus, integer, bináris, többcélú programozás

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

A lineáris programozás alapjai

Gráfelmélet/Diszkrét Matematika MSc hallgatók számára. 3. Előadás

6. Függvények. 1. Az alábbi függvények közül melyik szigorúan monoton növekvő a 0;1 intervallumban?

b) Ábrázolja ugyanabban a koordinátarendszerben a g függvényt! (2 pont) c) Oldja meg az ( x ) 2

E-tananyag Matematika 9. évfolyam Függvények

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

2017/ Szegedi Tudományegyetem Informatikai Intézet

Operációkutatás I. Bajalinov, Erik, Nyíregyházi Főiskola, Matematika és Informatika Intézete Bekéné Rácz, Anett, Debreceni Egyetem, Informatikai Kar

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

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

Függvény fogalma, jelölések 15

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK KÖZÉP SZINT Függvények

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

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

1. feladatsor: Vektorterek, lineáris kombináció, mátrixok, determináns (megoldás)

1. Előadás Lineáris programozás

Totális Unimodularitás és LP dualitás. Tapolcai János

Descartes-féle, derékszögű koordináta-rendszer

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK KÖZÉP SZINT Függvények

út hosszát. Ha a két várost nem köti össze út, akkor legyen c ij = W, ahol W már az előzőekben is alkalmazott megfelelően nagy szám.

Operációkutatás példatár

Hódmezővásárhelyi Városi Matematikaverseny április 14. A osztályosok feladatainak javítókulcsa

Matematika III előadás

A L Hospital-szabály, elaszticitás, monotonitás, konvexitás

KOVÁCS BÉLA, MATEMATIKA I.

Érettségi feladatok: Függvények 1/9

Németh László Matematikaverseny április 16. A osztályosok feladatainak javítókulcsa

A legjobb közeĺıtés itt most azt jelentette, hogy a lineáris

15. LINEÁRIS EGYENLETRENDSZEREK

Abszolútértékes és gyökös kifejezések Megoldások

Hiperbolikus programozás Elmélet, módszerek, alkalmazások, szoftver

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

Diverzifikáció Markowitz-modell MAD modell CAPM modell 2017/ Szegedi Tudományegyetem Informatikai Intézet

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

Jelen jegyzet a József Attila Tudományegyetem programozó matematikus és. A feldolgozott anyag bevezető jellegű. Néhány karakterisztikus, ma már

a) A logaritmus értelmezése alapján: x 8 0 ( x 2 2 vagy x 2 2) (1 pont) Egy szorzat értéke pontosan akkor 0, ha valamelyik szorzótényező 0.

Sorozatok, sorok, függvények határértéke és folytonossága Leindler Schipp - Analízis I. könyve + jegyzetek, kidolgozások alapján

lineáris programozás esetében. Ennek ez idő szerint legkorábbi formalizálását

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

Függvények július 13. f(x) = 1 x+x 2 f() = 1 ()+() 2 f(f(x)) = 1 (1 x+x 2 )+(1 x+x 2 ) 2 Rendezés után kapjuk, hogy:

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI EMELT SZINT Paraméter

Első zárthelyi dolgozat megoldásai biomatematikából * A verzió

Nem-lineáris programozási feladatok

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI EMELT SZINT Abszolútértékes és Gyökös kifejezések

3. Előadás. Megyesi László: Lineáris algebra, oldal. 3. előadás Lineáris egyenletrendszerek

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

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Megoldások. 1. Az alábbi hozzárendelések közül melyik függvény? Válaszod indokold!

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

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

A valós számok halmaza 5. I. rész MATEMATIKAI ANALÍZIS

Analízis I. Vizsgatételsor

Általános algoritmustervezési módszerek

Függvények 1. oldal Készítette: Ernyei Kitti. Függvények

462 Trigonometrikus egyenetek II. rész

Bevezetés Standard 1 vállalatos feladatok Standard több vállalatos feladatok 2017/ Szegedi Tudományegyetem Informatikai Intézet

EuroOffice Optimalizáló (Solver)

Analízis I. beugró vizsgakérdések

Nagy Gábor compalg.inf.elte.hu/ nagy

Exponenciális, logaritmikus függvények

Módszertani megjegyzés: A kikötés az osztás műveletéhez kötődik. A jobb megértés miatt célszerű egy-két példát mu-

FÜGGVÉNYEK. A derékszögű koordináta-rendszer

Németh László Matematikaverseny, Hódmezővásárhely március 30. A osztályosok feladatainak javítókulcsa

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

Átírás:

Operációkutatás I. 2017/2018-2. Szegedi Tudományegyetem Informatika Intézet Számítógépes Optimalizálás Tanszék 2. Előadás

LP alapfeladat A lineáris programozás (LP) alapfeladata standard formában Max c 1 x 1 + c 2 x 2 +... + c n x n = z Felt. a 11 x 1 + a 12 x 2 +... + a 1n x n b 1 a 21 x 1 + a 22 x 2 +... + a 2n x n b 2. a m1 x 1 + a m2 x 2 +... + a mn x n b m x 1,..., x n 0

Alapfogalmak Lineáris programozási feladat: keressük meg adott lineáris, R n értelmezési tartományú függvény (célfüggvény) szélsőértékét (minimumát vagy maximumát) értelmezési tartományának adott lineáris korlátokkal (feltételekkel) meghatározott részében.

Alapfogalmak Lineáris programozási feladat: keressük meg adott lineáris, R n értelmezési tartományú függvény (célfüggvény) szélsőértékét (minimumát vagy maximumát) értelmezési tartományának adott lineáris korlátokkal (feltételekkel) meghatározott részében. Lehetséges megoldás: olyan p = (p 1,..., p n ) R n vektor, hogy p i -t x i -be helyettesítve ( i = 1,..., n) kielégíti a feladat feltételrendszerét.

Alapfogalmak Lineáris programozási feladat: keressük meg adott lineáris, R n értelmezési tartományú függvény (célfüggvény) szélsőértékét (minimumát vagy maximumát) értelmezési tartományának adott lineáris korlátokkal (feltételekkel) meghatározott részében. Lehetséges megoldás: olyan p = (p 1,..., p n ) R n vektor, hogy p i -t x i -be helyettesítve ( i = 1,..., n) kielégíti a feladat feltételrendszerét. Lehetséges megoldási tartomány: az összes lehetséges megoldás (vektor) halmaza.

Alapfogalmak Lineáris programozási feladat: keressük meg adott lineáris, R n értelmezési tartományú függvény (célfüggvény) szélsőértékét (minimumát vagy maximumát) értelmezési tartományának adott lineáris korlátokkal (feltételekkel) meghatározott részében. Lehetséges megoldás: olyan p = (p 1,..., p n ) R n vektor, hogy p i -t x i -be helyettesítve ( i = 1,..., n) kielégíti a feladat feltételrendszerét. Lehetséges megoldási tartomány: az összes lehetséges megoldás (vektor) halmaza. Optimális megoldás: olyan lehetséges megoldás, ahol a célfüggvény felveszi maximumát/minimumát.

Példa product mix Alineáris programozási feladat: Max z = 3x 1 + 2x 2 x 1 + x 2 80 2x 1 + x 2 100 x 1 40 x 1, x 2 0

Példa product mix Alineáris programozási feladat: Max z = 3x 1 + 2x 2 x 1 + x 2 80 2x 1 + x 2 100 x 1 40 x 1, x 2 0 Lehetséges megoldás: x = (20, 20) (20 katona, 20 vonat)

Példa product mix Alineáris programozási feladat: Max z = 3x 1 + 2x 2 x 1 + x 2 80 2x 1 + x 2 100 x 1 40 x 1, x 2 0 Lehetséges megoldás: x = (20, 20) (20 katona, 20 vonat) Optimális megoldás: x = (20,60) (20 katona, 60 vonat)

Példa product mix Alineáris programozási feladat: Max z = 3x 1 + 2x 2 x 1 + x 2 80 2x 1 + x 2 100 x 1 40 x 1, x 2 0 Lehetséges megoldás: x = (20, 20) (20 katona, 20 vonat) Optimális megoldás: x = (20,60) (20 katona, 60 vonat) Optimum értéke: z = 180 (azaz $180 profitot érhet el a cég)

Egy lineáris program feĺırása 1 Válasszuk meg a döntési változókat

Egy lineáris program feĺırása 1 Válasszuk meg a döntési változókat 2 Határozzuk meg a célt és a célfüggvényt (lineáris függvény)

Egy lineáris program feĺırása 1 Válasszuk meg a döntési változókat 2 Határozzuk meg a célt és a célfüggvényt (lineáris függvény) 3 Írjuk fel a korlátozó feltételeket (lineáris egyenlőtlenségek)

Egy lineáris program feĺırása 1 Válasszuk meg a döntési változókat 2 Határozzuk meg a célt és a célfüggvényt (lineáris függvény) 3 Írjuk fel a korlátozó feltételeket (lineáris egyenlőtlenségek) 4 Határozzuk meg a változók értelmezési tartományát (előjel feltételek)

Példa: A posta probléma Kiindulás: Egy postán az egyes munkanapokon különböző számú teljes munkaidejű dolgozóra van szükség. Egy dolgozó egymást követő 5 munkanapon dolgozik (pl. hétfő-péntek, szerda-vasárnap, stb.)

Példa: A posta probléma Kiindulás: Egy postán az egyes munkanapokon különböző számú teljes munkaidejű dolgozóra van szükség. Egy dolgozó egymást követő 5 munkanapon dolgozik (pl. hétfő-péntek, szerda-vasárnap, stb.) Az egyes napokon szükséges dolgozói létszámot a következő táblázat tartalmazza. Hétfő Kedd Szerda Csütörtök Péntek Szombat Vasárnap 17 13 15 19 14 16 11

Példa: A posta probléma Kiindulás: Egy postán az egyes munkanapokon különböző számú teljes munkaidejű dolgozóra van szükség. Egy dolgozó egymást követő 5 munkanapon dolgozik (pl. hétfő-péntek, szerda-vasárnap, stb.) Az egyes napokon szükséges dolgozói létszámot a következő táblázat tartalmazza. Hétfő Kedd Szerda Csütörtök Péntek Szombat Vasárnap 17 13 15 19 14 16 11 Feladat: Minimalizáljuk a dolgozók számát a feltételek kielégítése mellett.

Példa: A posta probléma Döntési változók: x 1,..., x 7 x i : azon dolgozók száma, akik az i-edik napon kezdik meg a munkát (i = 1,..., 7 hétfő: i = 1)

Példa: A posta probléma Döntési változók: x 1,..., x 7 x i : azon dolgozók száma, akik az i-edik napon kezdik meg a munkát (i = 1,..., 7 hétfő: i = 1) Cél: a dolgozók számának minimalizálása

Példa: A posta probléma Döntési változók: x 1,..., x 7 x i : azon dolgozók száma, akik az i-edik napon kezdik meg a munkát (i = 1,..., 7 hétfő: i = 1) Cél: a dolgozók számának minimalizálása Célfüggvény: z = x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7

Példa: A posta probléma Döntési változók: x 1,..., x 7 x i : azon dolgozók száma, akik az i-edik napon kezdik meg a munkát (i = 1,..., 7 hétfő: i = 1) Cél: a dolgozók számának minimalizálása Célfüggvény: z = x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 Korlátozó feltételek: Pl.: Hányan dolgoznak hétfőn? Azok dolgoznak hétfőn, akik hétfőn, csütörtökön, pénteken, szombaton vagy vasárnap kezdenek dolgozni, azaz: x 1 + x 4 + x 5 + x 6 + x 7 17

Példa: A posta probléma A lineáris program feĺırása: Min z = x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 x 1 + x 4 + x 5 + x 6 + x 7 17 x 1 + x 2 + x 5 + x 6 + x 7 13 x 1 + x 2 + x 3 + x 6 + x 7 15 x 1 + x 2 + x 3 + x 4 + x 7 19 x 1 + x 2 + x 3 + x 4 + x 5 14 x 2 + x 3 + x 4 + x 5 + x 6 16 x 3 + x 4 + x 5 + x 6 + x 7 11 x i 0(i = 1,...,7)

Az általános standard alak tömören Standard alakú lineáris programozási feladat (maximalizálás): n a ij x j b i i = 1,2,..., m j=1 x j 0 j = 1,2,..., n n max c i x i = z j=1

Az általános standard alak tömören Standard alakú lineáris programozási feladat (maximalizálás): n a ij x j b i j=1 x j 0 i = 1,2,..., m j = 1,2,..., n n max c i x i = z j=1 Részletesen kíırva az együtthatókat a 11 x 1 + a 12 x 2 +... + a 1n x n b 1 a 21 x 1 + a 22 x 2 +... + a 2n x n b 2. a m1 x 1 + a m2 x 2 +... + a mn x n b m max c 1 x 1 + c 2 x 2 +... + c n x n = z

Az eddigiek összegzése A Lineáris Program (LP) egy optimalizálási probléma, ahol

Az eddigiek összegzése A Lineáris Program (LP) egy optimalizálási probléma, ahol 1 cél egy lineáris (cél)függvény maximalizálása/minimalizálása

Az eddigiek összegzése A Lineáris Program (LP) egy optimalizálási probléma, ahol 1 cél egy lineáris (cél)függvény maximalizálása/minimalizálása 2 a lehetséges megoldások halmazán, mely halmazt lineáris egyenlőtlenségek határoznak meg

Az eddigiek összegzése A Lineáris Program (LP) egy optimalizálási probléma, ahol 1 cél egy lineáris (cél)függvény maximalizálása/minimalizálása 2 a lehetséges megoldások halmazán, mely halmazt lineáris egyenlőtlenségek határoznak meg Standard alak: minden feltétel -egyenlőtlenség (maximalizálás), vagy -egyenlőtlenség (minimalizálás) és minden változó nemnegatív

Az eddigiek összegzése Álĺıtás. Minden lineáris programozási feladathoz megadható egy vele ekvivalens standard alakú feladat.

Az eddigiek összegzése Álĺıtás. Minden lineáris programozási feladathoz megadható egy vele ekvivalens standard alakú feladat. Áttérés minimalizálásról maximalizálásra min x 1 + 2x 2 max x 1 2x 2

Az eddigiek összegzése Álĺıtás. Minden lineáris programozási feladathoz megadható egy vele ekvivalens standard alakú feladat. Áttérés minimalizálásról maximalizálásra min x 1 + 2x 2 max x 1 2x 2 Egyenlőségek helyettesítése egyenlőtlenségekkel 2x 1 + 3x 3 = 1 2x 1 + 3x 3 1, 2x 1 + 3x 3 1

Az eddigiek összegzése Álĺıtás. Minden lineáris programozási feladathoz megadható egy vele ekvivalens standard alakú feladat. Áttérés minimalizálásról maximalizálásra min x 1 + 2x 2 max x 1 2x 2 Egyenlőségek helyettesítése egyenlőtlenségekkel 2x 1 + 3x 3 = 1 2x 1 + 3x 3 1, 2x 1 + 3x 3 1 Nem 0 alsó korlátos és korlát nélküli változók helyettesítése 0 alsó korlátosakkal 3 x 1 y 0, y 3 3, x 1 := y 3

Az eddigiek összegzése Álĺıtás. Minden lineáris programozási feladathoz megadható egy vele ekvivalens standard alakú feladat. Áttérés minimalizálásról maximalizálásra min x 1 + 2x 2 max x 1 2x 2 Egyenlőségek helyettesítése egyenlőtlenségekkel 2x 1 + 3x 3 = 1 2x 1 + 3x 3 1, 2x 1 + 3x 3 1 Nem 0 alsó korlátos és korlát nélküli változók helyettesítése 0 alsó korlátosakkal 3 x 1 y 0, y 3 3, x 1 := y 3 irányú egyenlőtlenségek szorzása 1-gyel x 1 x 2 4 x 1 + x 2 4

Az LP feladat megoldása Tekintsük újra az erőforrás allokációs problémát: Max z = 3x 1 + 2x 2 x 1 + x 2 80 2x 1 + x 2 100 x 1 40 x 1, x 2 0

Az LP feladat megoldása Tekintsük újra az erőforrás allokációs problémát: Max z = 3x 1 + 2x 2 x 1 + x 2 80 2x 1 + x 2 100 x 1 40 x 1, x 2 0 Mi a lehetséges megoldások halmaza? Ábrázoljuk! Kezdjünk az x 1, x 2 0-val, majd vegyük az x 1 + x 2 80 feltételt

Az LP feladat megoldása Hozzáadva a 2x 1 + x 2 100 és az x 1 40 feltételeket.

Az LP feladat megoldása Hozzáadva a 2x 1 + x 2 100 és az x 1 40 feltételeket.

Az LP feladat megoldása Hozzáadva a 2x 1 + x 2 100 és az x 1 40 feltételeket. Csúcs (extremális) pont: két egyenes metszéspontja (az egyeneseink a korlátozó feltételeinket ábrázolják egyenlőség teljesülése esetén)

Az LP feladat megoldása Tétel. Ha egy LP feladatnak van optimális megoldása (azaz ahol a célfüggvény felveszi a maximumát/minimumát), akkor olyan optimális megoldása is van, ami a lehetséges megoldási tartomány csúcspontja.

Az LP feladat megoldása Tétel. Ha egy LP feladatnak van optimális megoldása (azaz ahol a célfüggvény felveszi a maximumát/minimumát), akkor olyan optimális megoldása is van, ami a lehetséges megoldási tartomány csúcspontja. Feladat: Kerssük meg az összes csúcspontot és értékeljük ki ezekben a pontokban a 3x 1 + 2x 2 célfüggvényt.

Az LP feladat megoldása Tétel. Ha egy LP feladatnak van optimális megoldása (azaz ahol a célfüggvény felveszi a maximumát/minimumát), akkor olyan optimális megoldása is van, ami a lehetséges megoldási tartomány csúcspontja. Feladat: Kerssük meg az összes csúcspontot és értékeljük ki ezekben a pontokban a 3x 1 + 2x 2 célfüggvényt.

Probléma: Lehet, hogy túl sok csúcspont van. Az LP geometriájára egy későbbi előadáson visszatérünk. Az LP feladat megoldása Tétel. Ha egy LP feladatnak van optimális megoldása (azaz ahol a célfüggvény felveszi a maximumát/minimumát), akkor olyan optimális megoldása is van, ami a lehetséges megoldási tartomány csúcspontja. Feladat: Kerssük meg az összes csúcspontot és értékeljük ki ezekben a pontokban a 3x 1 + 2x 2 célfüggvényt.

Az LP feladat megoldása

Mesterséges változók Tekintsük újra a minta LP feladatunkat (katonák és vonatok gyártása) Max z = 3x 1 + 2x 2 x 1 + x 2 80 2x 1 + x 2 100 x 1 40 x 1, x 2 0

Mesterséges változók Tekintsük újra a minta LP feladatunkat (katonák és vonatok gyártása) Max z = 3x 1 + 2x 2 x 1 + x 2 80 2x 1 + x 2 100 x 1 40 x 1, x 2 0 Ahhoz, hogy az egyenlőtlenségeinket egyenlőségekre cseréljük, adjunk hozzá mesterséges változókat az egyenlőtlenségek bal oldalaihoz: Max z = 3x 1 + 2x 2 x 1 + x 2 +x 3 = 80 2x 1 + x 2 +x 4 = 100 x 1 +x 5 = 40 x 1,..., x 5 0

Szótár Tekintsük a mesterséges változók bevezetésével kapott rendszerünket: Max z = 3x 1 + 2x 2 x 1 + x 2 +x 3 = 80 2x 1 + x 2 +x 4 = 100 x 1 +x 5 = 40 x 1,..., x 5 0

Szótár Tekintsük a mesterséges változók bevezetésével kapott rendszerünket: Max z = 3x 1 + 2x 2 x 1 + x 2 +x 3 = 80 2x 1 + x 2 +x 4 = 100 x 1 +x 5 = 40 x 1,..., x 5 0 Fejezzük ki a mesterséges változókat az egyes egyenletekből: Ezt hívjuk szótárnak. x 3 = 80 x 1 x 2 x 4 = 100 2x 1 x 2 x 5 = 40 x 1 z = 0 + 3x 1 + 2x 2

Szótár A mesterséges változókkal bővített általános feladat: a 11 x 1 + a 12 x 2 +... + a 1n x n + x n+1 = b 1 a 21 x 1 + a 22 x 2 +... + a 2n x n + x n+2 = b 2. a m1 x 1 + a m2 x 2 +... + a mn x n + x n+m = b m c 1 x 1 + c 2 x 2 +... + c n x n = z

Szótár A mesterséges változókkal bővített általános feladat: a 11 x 1 + a 12 x 2 +... + a 1n x n + x n+1 = b 1 a 21 x 1 + a 22 x 2 +... + a 2n x n + x n+2 = b 2. a m1 x 1 + a m2 x 2 +... + a mn x n + x n+m = b m c 1 x 1 + c 2 x 2 +... + c n x n = z Ebből a szótár: x n+1 = b 1 a 11 x 1 a 12 x 2... a 1n x n x n+2 = b 2 a 21 x 1 a 22 x 2... a 2n x n. x n+m = b m a m1 x 1 a m2 x 2... a mn x n z = c 1 x 1 + c 2 x 2 +... + c n x n

Szótár terminológia Természetes (vagy döntési) változók: a standard alakú feladatban szereplő változók (x 1, x 2,..., x n )

Szótár terminológia Természetes (vagy döntési) változók: a standard alakú feladatban szereplő változók (x 1, x 2,..., x n ) Mesterséges (vagy slack) változók: a szótár feĺırásakor felvett új, nemnegatív változók (x n+1, x n+2,..., x n+m )

Szótár terminológia Természetes (vagy döntési) változók: a standard alakú feladatban szereplő változók (x 1, x 2,..., x n ) Mesterséges (vagy slack) változók: a szótár feĺırásakor felvett új, nemnegatív változók (x n+1, x n+2,..., x n+m ) Bázisváltozók (Bázis): a szótár feltétel egyenleteinek bal oldalán álló változók

Szótár terminológia Természetes (vagy döntési) változók: a standard alakú feladatban szereplő változók (x 1, x 2,..., x n ) Mesterséges (vagy slack) változók: a szótár feĺırásakor felvett új, nemnegatív változók (x n+1, x n+2,..., x n+m ) Bázisváltozók (Bázis): a szótár feltétel egyenleteinek bal oldalán álló változók Nembázis változók: a szótár feltételeinek jobb oldalán álló változók

Szótár terminológia Természetes (vagy döntési) változók: a standard alakú feladatban szereplő változók (x 1, x 2,..., x n ) Mesterséges (vagy slack) változók: a szótár feĺırásakor felvett új, nemnegatív változók (x n+1, x n+2,..., x n+m ) Bázisváltozók (Bázis): a szótár feltétel egyenleteinek bal oldalán álló változók Nembázis változók: a szótár feltételeinek jobb oldalán álló változók Szótár bázismegoldása: olyan x vektor, amelyben a nembázis változók értéke nulla, (ezért) a bázisváltozók értékei az őket tartalmazó egyenletek jobb oldali konstansai,

Szótár terminológia Természetes (vagy döntési) változók: a standard alakú feladatban szereplő változók (x 1, x 2,..., x n ) Mesterséges (vagy slack) változók: a szótár feĺırásakor felvett új, nemnegatív változók (x n+1, x n+2,..., x n+m ) Bázisváltozók (Bázis): a szótár feltétel egyenleteinek bal oldalán álló változók Nembázis változók: a szótár feltételeinek jobb oldalán álló változók Szótár bázismegoldása: olyan x vektor, amelyben a nembázis változók értéke nulla, (ezért) a bázisváltozók értékei az őket tartalmazó egyenletek jobb oldali konstansai, Lehetséges (feasible) bázismegoldás: olyan bázismegoldás, ami egyben lehetséges megoldás is, azaz a szótárra teljesül, hogy b i 0, i = 1,2,..., m a bázismegoldásban

Egy lehetséges kezdő megoldás - product mix mintapélda Legyen x 1 = 0 és x 2 = 0. Ekkor az x 1 = 0, x 2 = 0, x 3 = 80, x 4 = 100, x 5 = 40 egy lehetséges megoldása (a mesterséges változók bevezetésével kapott) feladatnak. (A változók nemnegatívok és minden egyenletet kielégítenek) A célfüggvény értéke ekkor z = 0.

Egy lehetséges kezdő megoldás - product mix mintapélda Legyen x 1 = 0 és x 2 = 0. Ekkor az x 1 = 0, x 2 = 0, x 3 = 80, x 4 = 100, x 5 = 40 egy lehetséges megoldása (a mesterséges változók bevezetésével kapott) feladatnak. (A változók nemnegatívok és minden egyenletet kielégítenek) A célfüggvény értéke ekkor z = 0.

Egy lehetséges kezdő megoldás - product mix mintapélda Legyen x 1 = 0 és x 2 = 0. Ekkor az x 1 = 0, x 2 = 0, x 3 = 80, x 4 = 100, x 5 = 40 egy lehetséges megoldása (a mesterséges változók bevezetésével kapott) feladatnak. (A változók nemnegatívok és minden egyenletet kielégítenek) A célfüggvény értéke ekkor z = 0. Próbáljuk meg növelni a célfüggvény értékét! = Például növeljük x 1 értékét az aktuális (x 1 = 0) értékéhez képest.

A célfüggvény érték növelése x 3 = 80 x 1 x 2 x 4 = 100 2x 1 x 2 x 5 = 40 x 1 z = 0 + 3x 1 + 2x 2

A célfüggvény érték növelése Legyen x 1 = 20, x 2 = 0. Ekkor x 3 = 80 x 1 x 2 x 4 = 100 2x 1 x 2 x 5 = 40 x 1 z = 0 + 3x 1 + 2x 2 x 3 = 60, x 4 = 60, x 5 = 20, a célfüggvényérték z = 60. lehetséges megoldás

A célfüggvény érték növelése Legyen x 1 = 20, x 2 = 0. Ekkor x 3 = 80 x 1 x 2 x 4 = 100 2x 1 x 2 x 5 = 40 x 1 z = 0 + 3x 1 + 2x 2 x 3 = 60, x 4 = 60, x 5 = 20, a célfüggvényérték z = 60. lehetséges megoldás Legyen most x 1 = 40, x 2 = 0. Ekkor x 3 = 40, x 4 = 20, x 5 = 0, a célfüggvényérték z = 120. lehetséges megoldás

A célfüggvény érték növelése Legyen x 1 = 20, x 2 = 0. Ekkor x 3 = 80 x 1 x 2 x 4 = 100 2x 1 x 2 x 5 = 40 x 1 z = 0 + 3x 1 + 2x 2 x 3 = 60, x 4 = 60, x 5 = 20, a célfüggvényérték z = 60. lehetséges megoldás Legyen most x 1 = 40, x 2 = 0. Ekkor x 3 = 40, x 4 = 20, x 5 = 0, a célfüggvényérték z = 120. lehetséges megoldás Növeljük tovább, legyen x 1 = 50, x 2 = 0. Ekkor x 3 = 30, x 4 = 0, x 5 = 10. nem lehetséges megoldás

A célfüggvény érték növelése Kérdés: Meddig tudjuk x 1 értékét növelni, mielőtt egy változó negatívvá nem válik?

A célfüggvény érték növelése Kérdés: Meddig tudjuk x 1 értékét növelni, mielőtt egy változó negatívvá nem válik? Legyen x 1 = t és x 2 = 0. Ekkor a megoldás lehetséges, ha x 3 = 80 t x 2 0 t 80 x 4 = 100 2t x 2 0 t 50 x 5 = 40 t 0 t 40

A célfüggvény érték növelése Kérdés: Meddig tudjuk x 1 értékét növelni, mielőtt egy változó negatívvá nem válik? Legyen x 1 = t és x 2 = 0. Ekkor a megoldás lehetséges, ha x 3 = 80 t x 2 0 t 80 x 4 = 100 2t x 2 0 t 50 x 5 = 40 t 0 t 40 Azaz x 1 maximális értéke x 1 = 40 lehet, ekkor x 5 = 0 lesz.

A célfüggvény érték növelése Kérdés: Meddig tudjuk x 1 értékét növelni, mielőtt egy változó negatívvá nem válik? Legyen x 1 = t és x 2 = 0. Ekkor a megoldás lehetséges, ha x 3 = 80 t x 2 0 t 80 x 4 = 100 2t x 2 0 t 50 x 5 = 40 t 0 t 40 Azaz x 1 maximális értéke x 1 = 40 lehet, ekkor x 5 = 0 lesz. Fejezzük ki x 1 -et az x 5 -öt tartalmazó egyenletből: x 1 = 40 x 5. Minden egyenletben x 1 -et cseréljük ki 40 x 5 -re.

A célfüggvény érték növelése Kérdés: Meddig tudjuk x 1 értékét növelni, mielőtt egy változó negatívvá nem válik? Legyen x 1 = t és x 2 = 0. Ekkor a megoldás lehetséges, ha x 3 = 80 t x 2 0 t 80 x 4 = 100 2t x 2 0 t 50 x 5 = 40 t 0 t 40 Azaz x 1 maximális értéke x 1 = 40 lehet, ekkor x 5 = 0 lesz. Fejezzük ki x 1 -et az x 5 -öt tartalmazó egyenletből: x 1 = 40 x 5. Minden egyenletben x 1 -et cseréljük ki 40 x 5 -re. Azt mondjuk, hogy x 1 belép a bázisba, míg x 5 kilép a bázisból.

A célfüggvény érték növelése Kérdés: Meddig tudjuk x 1 értékét növelni, mielőtt egy változó negatívvá nem válik? Legyen x 1 = t és x 2 = 0. Ekkor a megoldás lehetséges, ha x 3 = 80 t x 2 0 t 80 x 4 = 100 2t x 2 0 t 50 x 5 = 40 t 0 t 40 Azaz x 1 maximális értéke x 1 = 40 lehet, ekkor x 5 = 0 lesz. Fejezzük ki x 1 -et az x 5 -öt tartalmazó egyenletből: x 1 = 40 x 5. Minden egyenletben x 1 -et cseréljük ki 40 x 5 -re. Azt mondjuk, hogy x 1 belép a bázisba, míg x 5 kilép a bázisból. Új (de az előzővel ekvivalens) szótárat kapunk.

A célfüggvény érték növelése x 3 = 80 x 1 x 2 x 4 = 100 2x 1 x 2 x 5 = 40 x 1 z = 0 + 3x 1 + 2x 2 A harmadik egyenletből x 1 = 40 x 5, ebből adódik x 1 = (40 x 5 ) x 3 = 80 (40 x 5 ) x 2 x 4 = 100 2(40 x 5 ) x 2 z = 0 + 3(40 x 5 ) + 2x 2

A célfüggvény érték növelése Azaz az új szótárunk x 1 = 40 x 5 x 3 = 40 x 2 + x 5 x 4 = 20 x 2 + 2x 5 z = 120 + 2x 2 3x 5

A célfüggvény érték növelése Azaz az új szótárunk Bázisváltozók: {x 1, x 3, x 4 } x 1 = 40 x 5 x 3 = 40 x 2 + x 5 x 4 = 20 x 2 + 2x 5 z = 120 + 2x 2 3x 5

A célfüggvény érték növelése Azaz az új szótárunk Bázisváltozók: {x 1, x 3, x 4 } Nembázis változók: {x 2, x 5 } x 1 = 40 x 5 x 3 = 40 x 2 + x 5 x 4 = 20 x 2 + 2x 5 z = 120 + 2x 2 3x 5

A célfüggvény érték növelése Azaz az új szótárunk Bázisváltozók: {x 1, x 3, x 4 } Nembázis változók: {x 2, x 5 } x 1 = 40 x 5 x 3 = 40 x 2 + x 5 x 4 = 20 x 2 + 2x 5 z = 120 + 2x 2 3x 5 Aktuális bázismegoldás: x 2 = 0, x 5 = 0; x 1 = 40, x 3 = 40, x 4 = 20

A célfüggvény érték növelése Azaz az új szótárunk Bázisváltozók: {x 1, x 3, x 4 } Nembázis változók: {x 2, x 5 } x 1 = 40 x 5 x 3 = 40 x 2 + x 5 x 4 = 20 x 2 + 2x 5 z = 120 + 2x 2 3x 5 Aktuális bázismegoldás: x 2 = 0, x 5 = 0; x 1 = 40, x 3 = 40, x 4 = 20 Célfüggvény (aktuális) értéke: z = 120

A hányados teszt Az előző gondolatmenet automatizálható az ún. hányadosteszt segítségével. x 3 : 80 1 = 80, x 4 : 100 2 = 50, x 5 : 40 1 = 40

A hányados teszt Az előző gondolatmenet automatizálható az ún. hányadosteszt segítségével. x 3 : 80 1 = 80, x 4 : 100 2 = 50, x 5 : 40 1 = 40 A legkisebb hányados x 5 -nél adódik: x 5 a kilépő változó

A hányados teszt Az új szótár: x 1 = 40 x 5 x 3 = 40 x 2 + x 5 x 4 = 20 x 2 + 2x 5 z = 120 + 2x 2 3x 5

A hányados teszt Az új szótár: x 1 = 40 x 5 x 3 = 40 x 2 + x 5 x 4 = 20 x 2 + 2x 5 z = 120 + 2x 2 3x 5 Folytassuk a gondolatmenetet: a célfüggvény értéke x 2 növelésével növelhető. Meddig? hányadosteszt

A hányados teszt Az új szótár: x 1 = 40 x 5 x 3 = 40 x 2 + x 5 x 4 = 20 x 2 + 2x 5 z = 120 + 2x 2 3x 5 Folytassuk a gondolatmenetet: a célfüggvény értéke x 2 növelésével növelhető. Meddig? hányadosteszt x 1 : az egyenlet nem tartalmazza x 2 -t nincs korlátozás, x 3 : 40 1 = 40, x 4 : 20 1 = 20 A legkisebb hányados x 4 -nél adódik x 4 a kilépő változó: x 4 = 20 x 2 + 2x 5 x 2 = 20 x 4 + 2x 5

A hányados teszt Mindenhol x 2 helyére 20 x 4 + 2x 5 -et helyettesítve az új szótár: x 1 = 40 x 5 x 2 = 20 x 4 + 2x 5 x 3 = 20 + x 4 x 5 z = 160 2x 4 + x 5

A hányados teszt Mindenhol x 2 helyére 20 x 4 + 2x 5 -et helyettesítve az új szótár: x 1 = 40 x 5 x 2 = 20 x 4 + 2x 5 x 3 = 20 + x 4 x 5 z = 160 2x 4 + x 5 A célfüggvény értéke x 5 növelésével tovább növelhető. Hányadosteszt: x 1 : 40 1 = 40, x 2 : x 5 itt pozitív együtthatóval szerepel nem ad korlátot! x 3 : 20 1 = 20 A legkisebb hányados x 3 -nél adódik x 3 a kilépő változó: x 3 = 20 + x 4 x 5 x 5 = 20 + x 4 x 3

A hányados teszt Mindenhol x 5 helyére 20 + x 4 x 3 -et helyettesítve az új szótár: x 1 = 20 + x 3 x 4 x 2 = 60 2x 3 + x 4 x 5 = 20 x 3 + x 4 z = 180 x 3 x 4

A hányados teszt Mindenhol x 5 helyére 20 + x 4 x 3 -et helyettesítve az új szótár: x 1 = 20 + x 3 x 4 x 2 = 60 2x 3 + x 4 x 5 = 20 x 3 + x 4 z = 180 x 3 x 4 Vegyük észre, hogy nem tudjuk tovább növelni a célfüggvény értékét optimális megoldást találtunk: x 1 = 20, x 2 = 60, x 3 = 0, x 4 = 0, x 5 = 20; célfüggvény érték: z = 180.