SIMPLEXOVÝ ALGORITMUS Řešení v tabulkovém procesoru
Obsah přednášky Lineární optimalizační model Konstrukce modelu Řešení modelu v tabulkovém procesoru Simplexový algoritmus Důkaz testu optimality Důkaz testu přípustnosti
Lineární optimalizační model Optimální rozsahy procesů Splnění omezení Maximalizace či minimalizace hodnoty kritéria
Příklad V dílně jsou vyráběny tři výrobky, každý je opracováván na dvou strojích. Počet kusů za směnu a zisk jsou v následující tabulce. Musí být vyrobeny alespoň 4 kusy prvního výrobku. Kolik výrobků jednotlivých typů musí být vyráběno, aby bylo dosaženo maximálního zisku? Výrobek 1 Výrobek 2 Výrobek 3 Stroj 1 80 300 150 Stroj 2 60 20 Zisk 100 Kč/ks 10 35
Definice modelu proměnné - procesy (jednotky) omezující podmínky kritérium Všechny prvky modelu jsou vyjádřeny pomocí lineárních funkcí
Příklad Proměnné Omezující podmínky Účelová funkce x1 výrobky prvního typu (počet kusů) x2 výrobky druhého typu (počet kusů) x3 výrobky třetího typu (počet kusů) Omezující podmínky Kapacita prvního stroje (čas - %, hod, min?) Kapacita druhého stroje (čas - %, hod, min?) Minimální počet výrobků prvního typu (ks) Účelová funkce zisk max (Kč)
Řešení v tabulkovém procesoru
Soustava omezujících podmínek Numericky umíme řešit pouze soustavy lineárních rovnice, nikoliv nerovnic Jordanova eliminační metoda – bázické řešení Doplňkové proměnné Typ rezerva Typ překročení Pomocné proměnné
Jordanova eliminační metoda Povolené eliminační úpravy Násobení řídící rovnice převrácenou hodnotou řídícího prvku. Přičtení vhodného násobku řídící rovnice k upravované rovnici.
Simplexový algoritmus Podmínky algoritmu: b0 = kanonická báze Simplexová tabulka Test optimality Test přípustnosti Nové bázické řešení - JEM
Simplexová tabulka A B b cTBA - cT cTBB - cT cTB.b
Test optimality Existuje lepší řešení? Cena ekvivalentní lineární kombinace zj - cj = iij.ci - cj zj - cj 0 skutečná cena nižší než bázická zj - cj 0 skutečná cena vyšší než bázická Celková změna ceny - xj.(zj - cj) Nutně musí být xj nezáporné (nebo nekladné)
Test optimality - odvození
Test přípustnosti Splnění omezujících podmínek Nezápornost řešení pro vybrané xj 0 xi = bi - ij.xj 0 ij > 0 ... xj bj /ij ij 0 ... platí vždy
Test přípustnosti - odvození