Optimalizálási módszerek 3. Lineáris programozás Kiegészítő gépész levelezők 2003/2004-es tanév II. félév Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
A termelési modell (Koopmans) x x1 … xj xn y A P1 Pj Pn b y1 G1 a11 a1j a1n b1 yi Gi ai1 aij ain bi ym Gm am1 amj amn bm c c1 cj cn Jelmagyarázat: G-áru, P-tevékenység, x-tevékenységi szint, b-minimálisan előállítandó mennyiség, c-működtetési egységköltség, A-technológiai táblázat Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
A termelési modell (Koopmans) Primál feladat Duál feladat Ax b x 0 cx min! yA c y 0 yb max! Kanonikus alak Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
A táplálási modell (diet) x x1 … xj xn y A E1 Ej En b y1 T1 a11 a1j a1n b1 yi Ti ai1 aij ain bi ym Tm am1 amj amn bm c c1 cj cn Jelmagyarázat: T-tápanyag, E-élelmiszer, x-élelmiszer mennyiség, b-szükséges tápanyag mennyiség, c-élelmiszer egységár, A-fajlagos tápanyagtartalom Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
A táplálási modell (diet) Primál feladat Duál feladat Ax = b x 0 cx min! yA c yb max! Standard alak Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
Termékválaszték modell x x1 … xj xn y A T1 Tj Tn b y1 E1 a11 a1j a1n b1 yi Ei ai1 aij ain bi ym Em am1 amj amn bm c c1 cj cn Jelmagyarázat: T-termék, E-erőforrás, x-termék mennyisége, y-árnyékár, b-erőforrás kapacitás, c-termék eladási egységár, A-technológiai koefficiensek Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
Termékválaszték modell Primál feladat Duál feladat Ax b x 0 cx max! yA c y 0 yb min! Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
Kiegészítő gépész levelező Miskolci Egyetem Primál - duál átírás Minimum feladat Maximum feladat Feltétel = 0 előjelkötetlen 0 Változó Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
Átírás standard alakra Primál feladat Duál feladat Ax = b x 0 cx min! yA c yb max! min max váltás Célfüggvény (-1)-szeresét venni f b Új változó: f+u=b, u 0 f b Új változó: f-v=b, v0 b negatív A feltétel beszorzása (-1)-gyel x a x helyett x’= x-a használata, x’0 x 0 x helyett x’= -x használata, x’0 x a x helyett x’= a-x használata, x’0 x előjelkötetlen x helyett x’-x’’ használata, x’0, x’’0 Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
Kiegészítő gépész levelező Miskolci Egyetem Az LP elmélete - 1 A standard formával fogunk foglalkozni. Tétel: Az LP optimalitási feltétele Az LP feladatnak véges optimuma akkor és csak akkor van, ha cdi 0 i=1,…,p, ahol di i=1,…p az extremális irányok. Lemma: Dualitási problémakör alaplemmája Ha van x primál megengedett és van y duál megengedett megoldás, akkor cx yb egyenlőséggel akkor és csak akkor, ha (yaj-cj)xj=0 minden j-re. Következmény: Ha x* primál megengedett, y* duál megengedett megoldások és a lemmában egyenlőség van, akkor x* és y* optimális megoldások. (yaj-cj)xj=0 neve optimalitási kritérium. Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
Kiegészítő gépész levelező Miskolci Egyetem Az LP elmélete - 2 Tétel: Megoldhatóság, korlátosság Ha van primál megengedett megoldás, akkor a primál célfüggvény akkor és csak akkor korlátos alulról, ha létezik duál megengedett megoldás. Ha van duál megengedett megoldás, akkor a duál célfüggvény akkor és csak akkor korlátos felülről, ha létezik primál megengedett megoldás. Tétel: Dualitási tétel Ha van x primál megengedett és van y duál megengedett megoldás, akkor a primál feladatnak is és a duál feladatnak is létezik optimális megoldása és a lemmában egyenlőség van. Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
Kiegészítő gépész levelező Miskolci Egyetem A szimplex tábla c1 … ci cn a1 aj an b e1 ek em b1 t11 t1j t1n x1 bi ti1 tij tin xi yik bm tm1 tmj tmn xm z1-c1 zj-cj zn-cn z0 y1 yk ym z=cBT z0=cBxB y=cBY T=YA xB=Yb Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
A szimplex tábla tulajdonságai - 1 Egyensúlyi tulajdonság: z0=cx=yb Transzformációs tulajdonság: z-c sora pivotálással mindig újra számolható. Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
A szimplex tábla tulajdonságai - Megoldhatóság 0,+ Primál lehetséges Duál lehetséges Nincs primál lehetséges Nincs duál lehetséges 0,- 0,+ - 0,- + Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
A szimplex tábla tulajdonságai - Korlátosság 0,+ 0,- Optimális tábla Primál lehetséges, de a primál célfüggvény nem korlátos alulról, nincs duál lehetséges Duál lehetséges, de a duál célfüggvény nem korlátos felülről, nincs primál lehetséges 0,- 0,+ + 0,+ 0,+ - 0,- 0,- Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
Kiegészítő gépész levelező Miskolci Egyetem A szimplex algoritmus A pivotáláshoz megállapítjuk, hogy melyik vektort vigyük be a bázisba és melyiket vigyük ki onnan. Belépési kritérium: Ha a vizsgálósorban van pozitív elem, akkor a felette álló nem bázis vektort hozzuk a bázisba. (Legyen ez az as vektor) Kilépési kritérium: Ha az as vektort hozzuk be a bázisba, akkor tekintjük a megoldásoszlop és az as vektor oszlopában szereplő számok hányadosai közül azokat, amelyek nevezője pozitív. Ezek közül a legkisebbnek a sorában találhatóbáziselemet visszük ki a bázisból. (Szűk keresztmetszet kritérium.)) Tétel: A szimplex módszer előbbrehaladási tétele A belépési és kilépési kritériumok alkalmazásával 1. Újra lehetséges primál megoldást kapunk. 2. A primál célfüggvény értéke nem növekszik. Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem
A kétfázisú szimplex módszer Az induló lehetrséges bázismegoldás meghatározása egy újabb LP feladat megoldásán keresztül történik. (Segéldfeladat) Ax+Eu*=b (b 0) x 0, u* 0 u1*+u2*+…+um* min! Ha ezen feladat optimális célfüggvényértéke zérus, akkor megtaláltuk az eredeti feladatnak egy megengedett megoldását. Egyébként nincs megengedett megoldás. Optimalizálási módszerek Kiegészítő gépész levelező Miskolci Egyetem