veda o manažmente a Lineárne programovanie

Similar presentations


Presentation on theme: "veda o manažmente a Lineárne programovanie"— Presentation transcript:

1 veda o manažmente a Lineárne programovanie
Peter Szabó Prednáška pre 2 r. Odbor: riadenie leteckej dopravy Technická univerzita v Košiciach Letecká fakulta, 2015

2 Operačný výskum veda o manažmente - obsah
Operačný výskum = Veda o manažmente vznik, stručná história a základné pojmy Operations research (OR) = Management Science Základné pojmy: matematický model, lineárne programovanie, cieľová funkcia, premenné rozhodovania, množina prípustných riešení, konvexná množina, lineárne obmedzenia, krajné body, simplex, simplexová metóda, grafické riešenie, optimálne rozhodnutie. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

3 Operačný výskum - veda o manažmente–niektoré MÍĽNIKY
v r publikoval Lanchester prácu zaoberajúcu sa vyjadrením bojovej činnosti matematickými metódami, v r publikuje Edison dielo zaoberajúce sa taktikou boja s ponorkami, v tom istom roku publikuje Erlang matematický model telefónnej ústredne, v r Borůvka a v r Jarník publikujú historicky prvé algoritmy z teórie grafov (minimálna kostra grafu, optimálne spojenie v sieti), v r Leontieff publikuje matematický model národného hospodárstva vyjadrovaný štruktúrnymi vzťahmi, P.Szabó: Veda o manažmente a lineárne programovanie, 2015

4 Operačný výskum II - veda o manažmente–niektoré MÍĽNIKY
v r Kantorovič v knihe „Matematické metódy v organizácií a plánovaní výroby“ definuje problémy ako: rozdelenie výroby na stroje zabezpečujúce maximálnu produktivitu, maximálny plán pri danom sortimente, optimálne využitie strojov (mechanizmov), minimálny odpad pri delení materiálu, maximálne využitie energie, optimálne rozdelenie osevnej plochy, najvhodnejší plán prepravy a pod. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

5 Operačný výskum III - veda o manažmente–niektoré MÍĽNIKY
v r Dantzig vyvinul simplexovú metódu, ktorá sa stala univerzálnou metódou riešenia optimalizačných úloh popísaných lineárnymi vzťahmi tzv. lineárneho programovania, v r Ford a Fulkerson publikovali prvé práce aplikujúce lineárne programovanie do oblasti riešenia dopravných úloh a teórie grafov. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

6 NIEKTORÉ Základné metódy operačného výskumu
Matematické programovanie Lineárne programovanie Celočíselné programovanie Nelineárne programovanie Parametrické programovanie Dynamické programovanie Sieťová analýza CPM – Critical Path Method – metóda kritickej cesty PERT – Program Evaluation and Review Technique RAMPS – Resource Allocation and Multiproject Scheduling – metóda rozdelenia obmedzených zdrojov Teória rozhodovania (teória hier) Teória hromadnej obsluhy P.Szabó: Veda o manažmente a lineárne programovanie, 2015

7 NIEKTORÉ Oblasti aplikácie operačného výskumu
Ťažobný a spracovateľský priemysel Problémy plánovania (plánovanie rozvrhov) Pozemná doprava Letecká doprava Telekomunikačné problémy Ekonomika a financie Miestne orgány a verejné služby P.Szabó: Veda o manažmente a lineárne programovanie, 2015

8 Operačný výskum a matematické programovanie
Matematické programovanie je súčasťou operačného výskumu, ktorá znamená využitie matematických nástrojov pre riešenie problémov, ktoré majú za úlohu nájsť optimálne riešenie tzn. cieľovej funkcie (object function) za určitých podmienok, ktoré vieme matematicky vyjadriť. Matematický zápis podmienok a cieľovej funkcie vytvárajú matematický model problému. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

9 Úloha matematického programovania (MP)
Úloha MP, optimalizovať cieľovú funkciu 𝑓 x =𝑓( 𝑥 1 , 𝑥 2 ,… 𝑥 𝑛 ) -> opt. Za podmienok 𝑞 𝑖 𝑥 1 , 𝑥 2 ,…, 𝑥 𝑛 ≤ 𝑏 𝑖 𝑖=1,2,…,𝑚 pričom 𝑥 𝑗 ≥ (𝑗=1,2,…𝑛) Premenné 𝑥 𝑗 nazývame premennými rozhodovania (decision variables). Bod, vektor x=( 𝑥 1 , 𝑥 2 ,… 𝑥 𝑛 ) v ktorom cieľová funkcia nadobudne optimálnu hodnotu nazývame optimálnym rozhodnutím. Podľa toho, že cieľová funkcia a podmienky úlohy aké vlastnosti majú MP delíme na: Lineárne programovanie Nelineárne programovanie Konvexné programovanie Parametrické programovanie, atď. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

10 Úloha lineárneho programovania
Matematický model problémov lineárneho programovania (LP) obsahuje len lineárne vzťahy. Je to najjednoduchší a najčastejšie aplikovaný model matematického programovania. Štandardná maximalizačná úloha LP: max{cTx; Ax ≤ b, x ≥ 0} (1) cTx = c 1 x 1 + ··· + c n x n - cieľová funkcia a i1 x 1 + a i2 x 2 + ··· + a in x n ≤ b i obmedzenia (i=1,...,m) xj ≥0 obmedzenia nezápornosti (j=1,...,n) P.Szabó: Veda o manažmente a lineárne programovanie, 2015

11 Lineárne programovanie – príklad, optimálny výrobný plán, zadanie
Zadanie úlohy: Malé stolárstvo vyrába dve rôzne veľkosti drevených šachových súprav. Malá súprava si vyžaduje tri hodiny spracovania na sústruhu a veľká dve. Sú k dispozícii štyri sústruhy z ktorých každý pracuje 40 hodín týždenne, čo znamená 160 hodín práce na sústruhu týždenne. Na malú súpravu je potrebný 1 kg dreva a na veľkú 4 kg. Je možné získať iba 200 kg týždenne. Predaj jednej veľkej šachovej súpravy vynesie profit 15 € a malej 10 €. Problém je rozhodnúť koľko súprav každej veľkosti treba vyrobiť na maximalizáciu profitu. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

12 Lineárne programovanie – optimálny výrobný plán, matematický model I
Matematický model úlohy LP - Ilustračný príklad: Premenné rozhodovania (decision variables) x1 – počet malých šachových súprav, x2 – počet veľkých šachových súprav. Cieľová funkcia: x1 + 15x2 -> max Obmedzenia (čas): x1 + 2x2 ≤ 160 Obmedzenia (materiál): x1 + 4x2 ≤ 200 Obmedzenia (nezápornosť): x1, x2 ≥ 0 P.Szabó: Veda o manažmente a lineárne programovanie, 2015

13 Lineárne programovanie – optimálny výrobný plán, matematický model II
Keď položíme c1=10, c2=15, a11=3, a12=2, a21=1, a22=4, b1=160, b2=200 tak dostaneme všeobecný maticový zápis úlohy (1) : Cieľová funkcia:10x1+15x2= 𝑐1 𝑐2 𝑇 𝑥1 𝑥2 = cTx->max Obmedzenia: 𝐴𝑥= 𝑎11 𝑎21 𝑎12 𝑎22 𝑥1 𝑥2 ≤ 𝑏1 𝑏2 =𝑏, 𝑥1 𝑥2 ≥0 P.Szabó: Veda o manažmente a lineárne programovanie, 2015

14 Lineárne programovanie – optimálny výrobný plán, grafické riešenie I
Obr1. Grafické riešenie úlohy MP P.Szabó: Veda o manažmente a lineárne programovanie, 2015

15 Lineárne programovanie – optimálny výrobný plán, grafické riešenie II
Poznámky I: Obmedzenia úlohy vytvárajú množinu prípustných riešení M, tzn. simplex. Simplex je konvexná množina. Lineárna účelová funkcia f(x1,x2) nadobudne svoje maximum (minimum) len v krajných bodoch, preto stačí vypočítať hodnoty f(0,0), f(0,50), f(160/3,0), f(24,44) a tá maximálna hodnota určuje optimálne riešenie, optimálny výrobný plán. To je základný princíp simplexovej metódy, ktorá rieši úlohu lineárneho programovania. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

16 Lineárne programovanie – optimálny výrobný plán, grafické riešenie III
Poznámky II: f(x1,x2)= 10x1+15x2 – účelová funkcia f(0,0)=0, f(0,50)=750, f(24,44)=900 f(160/3,0)=533.33, Preto maximálny profit firmy bude 900 Eur (maximálna hodnota) za týždeň pri výrobe x1=24 malých a x2=44 veľkých šachových súprav. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

17 Lineárne programovanie – PRINCÍP SimplexovEJ metódY
Simplexová metóda vo všeobecnosti vypočíta funkčnú hodnotu účelovej funkcie vo vybranom krajnom bode a keď existuje krajný bod s menšou funkčnou hodnotou (je možné to zistiť) tak metóda pokračuje ďalej, metóda nájde ďalší krajný bod (existujú špeciálne postupy na výber ďalšieho krajného bodu) .. Je to metóda, nie je to algoritmus, lebo postup výberu ďalšieho krajného bodu môže sa zacykliť. Počet riešení úlohy lineárneho programovania je stále z množiny {0,1,} (viď. [3]) P.Szabó: Veda o manažmente a lineárne programovanie, 2015

18 Lineárne programovanie – Riešenie ÚLOHY LP – XPresSMP I
Vo všeobecnosti (keď počet premenných rozhodovania je väčší ako 2) riešiť úlohu lineárneho programovania (LP) graficky nevieme. Existujú informačné technológie na riešenie úlohy matematického resp. lineárneho programovania(MP resp. LP). V ďalšom budeme sa zaoberať so systémom XPressMP, ktorý umožňuje riešenie úlohy MP. XPressMP obsahuje aj databázu špeciálnych problémov MP. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

19 NIEKTORÉ ŠPECIÁLNE PROBLÉMY operačného výskumu
Obr2. Databáza matematických modelov v programe XPressMP P.Szabó: Veda o manažmente a lineárne programovanie, 2015

20 Lineárne programovanie – Riešenie ÚLOHY LP – XPresSMP II
Úlohy MP majú špeciálne názvy: napr. priraďovací problém, úloha o batohu, problém obchodného cestujúceho. Na študijné účely študenti, učitelia môžu XPressMP používať zadarmo. XPressMP je špeciálna technológia, ktorá umožňuje vytváranie matematických modelov v rámci špeciálneho programového prostredia Mosel. Mosel je špeciálny programovací a zároveň modelovací jazyk. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

21 Lineárne programovanie – Riešenie ÚLOHY LP – XPresSMP III
Spustenie programu ../bin/IVE.EXE File->New->ovp.mos (založenie nového matematického modelu ovp.mos) Po založení nového modelu systém poskytne štandardné parametre, ktoré v ďalšom môžu byť užitočné (Prostredie a práca v systéme podobá sa na prácu v Turbo Pascale alebo v Delphi) Príkaz uses "mmxprs"; - znamená, že v programe bude použitá programová knižnica mmxprs. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

22 Lineárne programovanie – Riešenie ÚLOHY LP – XPresSMP IV
V ďalšom ukážeme ako priradiť matematický model k úlohe „Optimálny výrobný plán“ v systéme XPressMP. V systéme XPressMP je potrebné aktualizovať matematický model : Cieľová funkcia: x1 + 15x2 -> max Obmedzenia (čas): x1 + 2x2 ≤ 160 Obmedzenia (materiál): x1 + 4x2 ≤ 200 Obmedzenia (nezápornosť): x1, x2 ≥ 0 P.Szabó: Veda o manažmente a lineárne programovanie, 2015

23 Lineárne programovanie – Riešenie ÚLOHY LP – XPresSMP V
Obr3. Zdrojový kód matematického modelu OVP P.Szabó: Veda o manažmente a lineárne programovanie, 2015

24 Lineárne programovanie – Riešenie ÚLOHY LP – XPresSMP VI
Programová knižnica mmxprs obsahuje funkcie: maximize(zisk) ktorá vypočíta maximálnu hodnotu účelovej funkcie zisk. getobjval – funkcia na výpis optimálnej hodnoty účelovej funkcie getsol(y) – slúži na výpis optimálnej hodnoty premennej rozhodovania y – čo znamená optimálne rozhodnutie. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

25 Lineárne programovanie – Riešenie ÚLOHY LP – XPresSMP VII
Na spustenie výpočtu XPRESSMP existuje niekoľko možnosti Build->Run (F6) Program v okne Input/Output generuje nasledovný výstup: Maximálny zisk = 900 Počet malých súprav = 24 Počet veľkých súprav = 44 Tento výstup definuje optimálny výrobný plán. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

26 XPRESSMP a letecká doprava I,
XPressMP obsahuje databázu matematických modelov. Tieto modely majú špeciálne názvy, ktoré pochádzajú z operačného výskumu.[1] Znalosť týchto modelov podmieňuje ich aplikáciu v praxi. V leteckej doprave je možné aplikovať skoro všetkých modelov ako napríklad: dopravná úloha (transport), úloha obchodného cestujúceho (travelling salesman problem), úloha o batohu (knapsack), priraďovací problém (assignment problem). P.Szabó: Veda o manažmente a lineárne programovanie, 2015

27 XPRESSMP a letecká doprava II, Optimálny letový Plán-Zadanie
Teraz uvedieme jeden príklad na aplikáciu programu XPressMP v leteckej doprave.[1]. V programe XPressMP (ver. 7.6) po voľbe Wizzards-> Complete models-> Symmetric TSP je možné otvoriť matematický a zároveň programový model nasledovného príkladu: Je k dispozícii jedno nákladné lietadlo na distribúciu liekov a 7 letísk. Je daná matica vzdialenosti medzi letiskami. Treba navrhnúť trasu minimálnej dĺžky lietadla tak, že lietadlo má navštíviť každé letisko a má sa vrátiť do štartovacieho bodu(letiska). P.Szabó: Veda o manažmente a lineárne programovanie, 2015

28 XPRESSMP a letecká doprava III, Optimálny letový Plán
𝐴= 𝑎𝑖𝑗 - matica vzdialenosti medzi letiskami v km, matica je symetrická, lebo 𝑎𝑖𝑗=𝑎𝑗𝑖, kde 𝑎𝑖𝑗 – je vzdialenosť medzi letiskami i a j, pre i,j=1, 2,3,4,5,6,7. A= P.Szabó: Veda o manažmente a lineárne programovanie, 2015

29 XPRESSMP a letecká doprava IV, Optimálny letový Plán
V odbornej terminológii je to úloha obchodného cestujúceho so symetrickou maticou vzdialeností. Vo všeobecnosti (keď máme n letísk) problém je NP-úplný, ťažko riešiteľný, preto lebo počet všetkých možných letov je n!.( ktoré musíme uvažovať pri hľadaní najkratšieho letu.) Pre malé rozmery ako n=7 (n!=5040 možností) XPressMP vie nájsť riešenie. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

30 XPRESS a letecká doprava V, Optimálny letový Plán
Účelová funkcia optimálneho letového plánu je funkcia: min 𝜋 𝑖=1 7 𝑎𝑖𝜋 𝑖 kde 𝜋 je cyklická permutácia a 𝐴= 𝑎𝑖𝑗 - matica vzdialenosti medzi letiskami Príkaz v programe XPressMP na minimalizáciu účelovej funkcie je minimize(TotalDist ) Ak, ako vstupy zadáme aj súradnice letísk (napr. GPS), tak program nakreslí aj optimálnu trajektóriu letu. Obtiažnosť tejto úlohy v systéme je 5/5. (úloha patrí medzi najťažšie úlohy matematického programovania) P.Szabó: Veda o manažmente a lineárne programovanie, 2015

31 XPRESSMP a letecká doprava VI, Optimálny letový Plán
Obr 4. Premenné a niektoré funkcie úlohy P.Szabó: Veda o manažmente a lineárne programovanie, 2015

32 XPRESSMP a letecká doprava VII, Optimálny letový Plán
Obr. 5. Optimálny letový plán P.Szabó: Veda o manažmente a lineárne programovanie, 2015

33 XPRESSMP a letecká doprava VIII, Optimálny letový Plán
Po spustení výpočtu (F6) XPressMP vypočíta optimálne riešenie: Total distance: 2575 km – 1 Postupnosť letísk vytvára tzn. hamiltonovskú kružnicu. Matematický zápis riešenia, trasy, cyklickej permutácie P.Szabó: Veda o manažmente a lineárne programovanie, 2015

34 XPRESSMP – úlohy LP Letecká doprava – PríkladY I
V literatúre [1] k programu XPressMP existujú aj ďalšie príklady z oblasti leteckej dopravy. Flight connections at hub (minimalizácia počtu letov leteckej spoločnosti na uzlovom letisku) Composing flight crews (optimálne zostavenie letových posádok) Scheduling flight landings (Plánovanie leteckých pristátí) Airline hub location (Umiestnenie uzlového letiska) P.Szabó: Veda o manažmente a lineárne programovanie, 2015

35 XPRESSMP – úlohy LP Letecká doprava – PríkladY II
Pomocou LP je možné riešiť aj komplexnejšie úlohy ako napr. “Plánovanie leteckej dopravy leteckej spoločnosti.“ V tomto prípade vstupno-výstupné premenné úlohy LP sú : letiská, linky, uzlové letiská, vzdialenosti, min. počet cestujúcich na linkách, jednotkové ceny (osoba/linka), typy lietadiel (počet miest), počet lietadiel atď. Účelová funkcia maximalizuje profit leteckej spoločnosti ako „výnosy – náklady“. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

36 Lineárne programovanie, použité literárne zdroje
[1] Ch. Guéret, Ch. Prins, and M. Sevaux. Applications of optimization with Xpress-MP [2] SAUL I.GASS.: Linear Programming: Methods and Applications. 3. vyd. New York: McGraw - Hill, 1969, 400 s. [3] SZABÓ, P.: Stručný úvod do lineárneho programovania, Technická univerzita v Košiciach, 2015, 140 s. - ISBN (heslo na vyžiadanie) [4] MÁZIKOVÁ, K. Zbierka úloh z operačnej analýzy pre leteckú dopravu. Technická univerzita v Košiciach, BP 2014. P.Szabó: Veda o manažmente a lineárne programovanie, 2015

37 Lineárne programovanie, použité technológie,programy
V Cloude sa nachádzajú programy, ktoré boli použité v tejto prezentácii. Graph.zip – grafické riešenie úlohy LP Student.zip – matematické modelovanie a programovanie – operačný výskum (veda o manažmente, heslo na vyžiadanie) P.Szabó: Veda o manažmente a lineárne programovanie, 2015


Download ppt "veda o manažmente a Lineárne programovanie"
Ads by Google