1 / 29

Lineáris programozás és a szimplex módszer

Lineáris programozás és a szimplex módszer. 2009. 11. 05. Derts Zsófia – BME VKKT. Bevezetés. Lineáris programozás: lineáris egyenlet-rendszerek megoldása algoritmikus módon LP bemutatása példákon keresztül Grafikus és analitikus megoldás alkalmazása

kalinda
Download Presentation

Lineáris programozás és a szimplex módszer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lineáris programozás és a szimplex módszer 2009. 11. 05. Derts Zsófia – BME VKKT

  2. Bevezetés • Lineáris programozás: lineáris egyenlet-rendszerek megoldása algoritmikus módon • LP bemutatása példákon keresztül • Grafikus és analitikus megoldás alkalmazása • Konkrét példa kiterjesztése általános esetre • Szimplex módszer alkalmazása • Duál módszer a házi feladathoz Lineáris programozás és szimplex módszer

  3. 1. példa: textilipari feladat (1) • Alapadatok: • A és B, textilből készülő termékeket azonos alapanyagból gyártjuk. • A-hoz 2 m, B-hez 5 m szükséges minden egyes méter késztermék előállításához. • Hetente legfeljebb 3 000 méter alapanyag áll rendelkezésünkre. • Egységnyi termelési költségek A-ra 20 Ft/m és B-re 30 Ft/m. • A termelés heti összegzett költsége nem haladhatja meg a 18 000 Ft-ot. Lineáris programozás és szimplex módszer

  4. 1. példa: textilipari feladat (2) • Alapadatok (folyt.): • A gyártáshoz felhasználunk bizonyos segédanyagot, amelyből A-hoz 1 m-t, B-hez 0,5 m-t alkalmazhatunk. • A felhasznált segédanyagok heti mennyisége nem haladhatja meg a 700 m-t. • Előzetes felmérés szerint A-ból hetente legalább 100 m-re van szükség. • A rendelkezésre álló gépparkkal a B-ből hetente legfeljebb 400 m gyártható. • A termelés nyeresége termékegységre vetítve: A terméken 2 Ft, B-n 6 Ft. Lineáris programozás és szimplex módszer

  5. 1. példa: az információk rendezése • Mátrixba rendezve az információkat: Minden összefüggés lineáris! Lineáris programozás és szimplex módszer

  6. 1. példa: a kérdés megfogalmazása • Keressük azt a minden feltételt kielégítő megoldást (programot), ahol a nyereség (a célfüggvény értéke) a legnagyobb. • Feladat: a célfüggvény maximalizálása a megadott feltételek mellett. Lineáris programozás és szimplex módszer

  7. x2 (e) x1 (a) (c) (b) (d) 1. példa: matematikai jelrendszerben… Lineáris programozás és szimplex módszer

  8. x2 (e) x1 (a) (c) (b) (d) 1. példa: grafikus megoldás (1) Lineáris programozás és szimplex módszer

  9. z x2 x2 x1 x1 1. példa: grafikus megoldás (2) Lineáris programozás és szimplex módszer

  10. Zopt z x2 x2 x1 x1 1. példa: grafikus megoldás (3) Lineárisprogramozásésszimplexmódszer

  11. Def.: Az x0 megoldás optimális, ha a célfüggvény ezen a helyen veszi fel a maximumát! Mátrix alakban: A feladat általános esete (1) Lineárisprogramozásésszimplexmódszer

  12. A feladat általános esete (2) • Minden sor egyenlőtlenségét, valamint a –eiTx ≤ 0 feltételeket is kielégítő vektorok egy-egy zárt féltéren helyezkednek el. • Az „m” darab ilyen zárt féltér által közbezárt térrészt konvex poliédernek nevezzük, amely egyben a megengedett megoldások (programok) halmaza. Lineáris programozás és szimplex módszer

  13. Segédváltozók bevezetése (1) • Az xn+i (i=1,2,….,m) változó feladata, hogy az egyenlőtlenségeket kiegészítse egyenlőségekké, tehát 0 < xn+i (i=1,2,….,m). • Ekkor az együttható-mátrixunk kibővül jobbról egy egységmátrixszal. A célfüggvény együttható-vektorát csupa nulla komponenssel kiegészítve egy n+m dimenziós vektort kapunk, de a célfüggvény értéke nem változik: Lineáris programozás és szimplex módszer

  14. Segédváltozók bevezetése (2) + + + + = a x a x .......... .......... . a x x b + 11 1 12 2 1 n n n 1 1 + + + + = a x a x .......... .......... a x x b + 21 1 22 2 2 n n n 2 2 . . . + + + + = a x a x .......... ......... a x x b + m 1 1 m 2 2 mn n n m m ³ ³ ³ ³ x 0 ; x 0 ; x 0 ; .......... .......... .; x 0 + 1 2 3 n m + + + + + + = c x c x ..... c x 0 x .... 0 x z + + 1 1 2 2 n n n 1 n m Lineáris programozás és szimplex módszer

  15. A lineáris programozás alaptétele Tétel: Ha egy LP probléma rendelkezik (korlátos) optimális megoldással, akkor létezik a megoldások halmazának olyan extrém pontja, amely optimális. Az optimális megoldás megtalálható a konvex poliéder sarokpontjainak vizsgálatával. Lineáris programozás és szimplex módszer

  16. Az LP alaptétel következményei • Egy korlátos számú feltétel által megadott konvex poliéder korlátos számú sarokponttal rendelkezik. • Ez garantálja, hogy az optimum korlátos számú lépésben megtalálható. • Nézzük végig az összes sarokpontot? (Adott gyakorlati probléma esetén ez több millió is lehet.) • Nem, mert a célfüggvény linearitása miatt van hatékonyabb módszer is. Lineáris programozás és szimplex módszer

  17. LP megoldás szimplex algoritmussal • Induljunk ki az egyik csúcspontból. • Valamelyik határoló élen menjünk át egy olyan szomszédos csúcsra, ahol a célfüggvény értéke magasabb. • Ha már nincsen magasabb célfüggvény értékkel jellemezhető szomszédos csúcs, akkor elértük az optimális megoldást. Lineáris programozás és szimplex módszer

  18. A szimplex algoritmus tulajdonságai • Minden extrém pontot egyértelműen meghatároz egy bázismegoldás. • Ezt m változó kiválasztásával és a többi 0-vá tételével érhetjük el. (Minden sarok m darab feltétel teljes kimerítésével írható le.) • Ennek a rendszernek a megoldása a bázis. • Egy szomszédos csúcsra való áttérés azt jelenti, hogy egy új bázisra térünk át, ami csak egy elemében tér el a korábbitól. Lineáris programozás és szimplex módszer

  19. 2. példa: a szimplex módszer alk. • A probléma jellemzői: • 5 független változó • 3 egyenlőtlenség + 1 kiegészítő feltétel • feladat: a célfüggvény maximalizálása • Megoldás: szimplex algoritmus alkalmazá-sával Lineáris programozás és szimplex módszer

  20. 2. példa: a szimplex módszer alk. x1 + 2 x2 + x3 + x5 ≤ 100 u1 x2 + x3 + x4 + x5 ≤ 80 u2 x1 + x3 + x4 ≤ 50 u3 x1 , x2 , x3 , x4 , x5 ≥ 0 Z = (2x1 + x2 + 3x3 + x4 + 2x5) → MAX Lineáris programozás és szimplex módszer

  21. 2. példa: a szimplex módszer alk. • A feladat átalakítása sztenderd formára: • ha z-t minimalizálni kell: -z-t maximalizáljuk; • ha x ≥ a van a feltételek között: -x ≤ -a • ha egyenlőség van a feltételek között, egyenlőtlenségekké alakítjuk át azokat: x = b→ ( x ≤ b és x ≥ b )→ (x ≤ b és -x ≤ -b) Lineáris programozás és szimplex módszer

  22. 2. példa: megoldás szimplex táblával • A feltételek rögzítése • Induló szimplex tábla • Generáló elem oszlopának kiválasztása (pozitív) → belépő változó • G. E. sorának kiválasztása (elem/kapacitás=max) → távozó változó • Elemcsere • Vissza a 2. pontba Lineáris programozás és szimplex módszer

  23. 2. példa: megoldás szimplex táblával • Az első elemcsere után: GE: új = 1 / régi GE sora: új = régi / GE GE oszlopa: új = - régi / GE A többi: új = régi – GEsor * GEoszlop / GE A sor- és az oszlopindex felcserélődik! Lineáris programozás és szimplex módszer

  24. 2. példa: megoldás szimplex táblával • A második elemcsere után: GE: új = 1 / régi GE sora: új = régi / GE GE oszlopa: új = - régi / GE A többi: új = régi – GEsor * GEoszlop / GE A sor- és az oszlopindex felcserélődik! Lineáris programozás és szimplex módszer

  25. 2. példa: megoldás szimplex táblával • A harmadik elemcsere után: Ez egy olyan csúcspont a konvex poliéderen, ahol x1 = 20 x3 = 30 x5 = 50 x2 = x4 = 0 A haszon Z = 20 * 2 + 30 * 3 + 50 * 2 = 230 A megoldás optimális, mert már nincs pozitív elem az alsó sorban. Lineáris programozás és szimplex módszer

  26. A duál módszer (1) • Lineáris programozási feladat esetén, ha a célfüggvényt minimalizálni kell és az együtthatói mind pozitívak, a szimplex módszer nem vezet megoldásra. • Ekkor mátrixműveletek alkalmazásával az ún. duál módszert használjuk. • Házi feladatban is ez vezet megoldásra! Lineáris programozás és szimplex módszer

  27. A duál módszer (2) ui A b A b ui ≤ ≤ = max = min -z z a feladat duálisa -1 -5 -10 0 -5 -2 -1 itt a szimplex módszer nem jó zT ui xi ui függőlegesen kell kiolvasni az eredmény -1-szeresét! xi - AT ≤ megoldás szimplex módszerrel = max -bT - zmin Lineáris programozás és szimplex módszer

  28. Összefoglalás • LP • LP alaptétele • Szimplex módszer • Duál módszer Lineáris programozás és szimplex módszer

  29. Köszönöm a figyelmet! Derts Zsófia BME VKKT (U épület) derts.zsofia@vkkt.bme.hu Lineáris programozás és szimplex módszer

More Related