MASARYKOVA UNIVERZITA PŘÍRODOVĚDECKÁ FAKULTA Ústav matematiky a statistiky ______

Podpora výuky předmětu Operační výzkum pro bakalářské studium s ekonomickým zaměřením

Disertační práce

Andrea Kubišová

Školitel: Doc. RNDr. Zdeněk Karpíšek, CSc. Brno, 2015

Bibliografický záznam

Autor: Andrea Kubišová Přírodovědecká fakulta, Masarykova univerzita Ústav matematiky a statistiky

Název práce: Podpora výuky předmětu Operační výzkum pro bakalářské studium s ekonomickým zaměřením

Studijní program: Obecné otázky matematiky

Studijní obor: Výuka matematiky na středních a vysokých školách

Školitel: Doc. RNDr. Zdeněk Karpíšek, CSc. Fakulta strojního inženýrství, Vysoké učení technické Brno Ústav matematiky, odbor statistiky a optimalizace

Akademický rok: 2015/2016

Počet stran: 213

Klíčová slova: Operační výzkum, Lineární programování, Historie operačního výzkumu, Optimalizační metody, Optimalizační software, Podpora výuky, Metodika výuky, Učební texty, Hodnocení úrovně znalostí

Bibliographic Entry

Author: Andrea Kubišová Faculty of Science, Masaryk University Department of Mathematics and Statistics

Title of Dissertation: Support for the Teaching of the Subject “Operations Research” for the Bachelor Studies within the Economic Branch

Degree programme: General Problems of Mathematics

Field of Study: Teaching Mathematics in secondary schools and universities

Supervisor: Doc. RNDr. Zdeněk Karpíšek, CSc. Faculty of Mechanical Engineering, Brno University of Technology Department of Statistics and Optimization

Academic Year: 2015/2016

Number of Pages: 213

Keywords: Operational Research, , History of Operational Research, Optimization methods, Optimization Software, Teaching Support, Methodology of Teaching, Learning materials, Evaluation of Knowledge Level.

Abstrakt

Tato disertační práce je věnována budování předmětu Operační výzkum pro bakalářské studium s ekonomickým zaměřením. Teoretická část je věnována popisu objektu zkoumání vědní disciplíny Operační výzkum, pozornost je soustředěna převážně na oblast lineárního programování. Po historickém přehledu následuje popis typických úloh a optimalizačních metod, je také provedena klasifikace výukového i profesionálního optimalizačního softwaru. Obsahuje také publikované pasáže porovnání klasického vyjádření optima při přesných hodnotách parametrů úlohy lineárního programování s jeho vyjádřením za nejistoty těchto parametrů pomocí intervalové a fuzzy analýzy. Praktická část je věnována samotnému sestavení náplně předmětu Operační výzkum, hlavním cílem bylo vytvoření vlastní podpory pro výuku: skriptum a pracovní listy pro jednotlivá cvičení s ohledem na matematické znalosti a dovednosti současných studentů. Jejich elektronické verze jsou přiloženy na CD. Byl vybrán vhodný software pro výuku tak, aby pokryl všechny probrané metody při řešení praktických úloh. Výběr témat k zařazení do výuky se opírá o přehled mapující výuku témat operačního výzkumu na českých vysokých školách a tematicky doplňuje obsah ostatních příbuzných předmětů příslušného studijního plánu. Při práci byly využity zkušenosti autorky s výukou metod lineárního programování Matematiky pro ekonomy na bakalářském stupni VŠ, hodnocení této výuky je statisticky zpracováno.

Abstract

This doctoral thesis is dedicated to the subject of Operational research for Bachelor study concentrated on economy. The research object of the scientific branch of Operational research is described in the theoretical part the attention is mainly concentrated on the field of linear programming. The historical outline is followed by the description of typical tasks and optimization methods. The classification of tutorial and professional optimization software is made as well. It also comprises published extracts of comparison of classical expression of optimum under accurate values of linear programming task parameters with its expression under uncertainty of these parameters with the help of interval and fuzzy analysis. The practical part is devoted to the actual composition of the content of the subject of Operational research. The main aim was the creation of the proper teaching support: the lecture notes and worksheets for the individual exercises considering the contemporary students´ knowledge and skills. Their electronic versions are included on a CD. Suitable teaching software has been chosen in order to cover all the presented methods for solving the practical tasks. The teaching topics have been chosen on the basis of the overview mapping over the teaching of the operational survey topics at Czech universities and they thematically supplement the content of the other relating subjects of the appropriate study plan. In the thesis, the author´s experience with teaching the methods of linear programming of Mathematics for economists at Bachelor university level was used. The evaluation of this classwork is statistically compiled.

© Andrea Kubišová, Masarykova univerzita, 2015 Obsah

Úvod ...... ix

1. Operační výzkum (teoretická část) ...... 1

1.1 Objekt operačního výzkumu ...... 1

1.2 Historie operačního výzkumu ...... 1

1.2.1 Co předcházelo vzniku operačního výzkumu ...... 2 1.2.2 Vznik operačního výzkumu ...... 6 1.2.3 Mírové využití operačního výzkumu ...... 11 1.2.4 Současnost ...... 15 1.2.5 Operační výzkum v ČR ...... 16 1.2.6 Výuka operačního výzkumu v ČR ...... 18 1.3 Matematický model úloh ...... 22

1.4 Základní úlohy operačního výzkumu ...... 24

1.4.1 Lineární programování ...... 24 1.4.2 Vícekriteriální rozhodování ...... 34 1.4.3 Celočíselné programování ...... 39 1.4.4 Úlohy LP za nejistoty vstupních parametrů...... 39 1.4.5 Složité rozhodovací úlohy ...... 41 1.5 Základní metody řešení úloh lineárního programování ...... 45

1.5.1 Maximální prvek ...... 46 1.5.2 Extrém funkce ...... 46 1.5.3 Grafické řešení úloh OV ...... 49 1.5.4 Simplexová metoda ...... 67 1.5.5 Vícekriteriální hodnocení variant ...... 76 1.5.6 Vícekriteriální lineární programování ...... 81 1.5.7 Cílové programování ...... 83 1.5.8 Dopravní tabulka ...... 85 1.5.9 Metody teorie grafů ...... 89 1.5.10 Metody celočíselného programování ...... 90 1.5.11 Vyjádření optima za nejistoty hodnot parametrů v úlohách LP ...... 93 1.5.12 Iterační metody ...... 105 1.5.13 Genetické algoritmy ...... 107 1.5.14 Dynamické programování ...... 108 - vii -

1.5.15 Stochastické programování ...... 108 1.6 Software pro operační výzkum ...... 109

1.6.1 Klasifikace softwaru pro lineární optimalizaci ...... 109 1.6.2 Používání optimalizačního softwaru ...... 139 2. Výuka předmětu OV (praktická část) ...... 141

2.1 Výuka operačního výzkumu na VŠPJ ...... 141

2.1.1 Matematika pro ekonomy ...... 142 2.1.2 Matematika 1 ...... 145 2.1.3 Tvorba simulačních modelů ...... 146 2.2 Vytvoření obsahu předmětu Operační výzkum ...... 148

2.3 Průběh výuky ...... 152

2.3.1 Přednášky a cvičení ...... 152 2.3.2 Domácí příprava ...... 155 2.3.3 Konzultace ...... 158 2.3.4 Hodnocení studentů ...... 158 2.4 Zkušenosti s výukou ...... 159

2.4.1 Středoškolské znalosti ...... 160 2.4.2 Domácí úkol ...... 162 2.4.3 Seminární práce - protokoly ...... 163 2.4.4 Průběžné testy ...... 166 2.4.5 Zápočtová písemná práce ...... 168 2.4.6 Ústní zkouška ...... 168 2.5 Problematické pasáže ...... 172

2.5.1 Studentská anketa ...... 173 2.5.2 Z hodnocení vědomostí a práce studentů...... 173 2.6 Výukové podpory ...... 182

2.6.1 Skripta...... 182 2.6.2 Pracovní listy ...... 183 2.6.3 Doplňkové materiály ...... 185 2.6.4 Výukový software ...... 187 2.6.5 E-learning ...... 192 Závěr ...... 194

- viii -

Úvod

Cílem předkládané disertační práce je vytvoření studijních opor povinného předmětu Operační výzkum na bakalářském stupni vysokoškolského studia s ekonomickým zaměřením na Vysoké škole polytechnické v Jihlavě, který by měl být do studijních plánů oborů Finance a řízení a Cestovní ruch zařazen od zimního semestru akademického roku 2014/2015. Jeho obsah byl stanoven dle požadavků Katedry ekonomických studií, je třeba též respektovat návaznost na ostatní vyučované předměty věnující se tématům operačního výzkumu. Výuku předmětu zajišťuje Katedra matematiky, kde autorka působí. Hlavním cílem je vytvoření studijních podpor pro výuku. Při stále se snižující úrovni znalostí studentů si autorka vytyčila jako hlavní úkol vytvořit podpory přístupné i studentům s nižšími matematickými znalostmi a dovednostmi a umožnit i jim úspěšně zvládnout studium metod operačního výzkumu. Skripta Operační výzkum jakožto základní studijní materiál budou sloužit jako textová podpora výkladových přednášek denní formy studia, ale i případného samostudia pro studentky kombinované formy. Kromě matematických definic a tvrzení obsahují skripta také široce srozumitelné vysvětlení a popis jejich významu pro praktické využití. Vše bude demonstrováno na vzorově řešených příkladech, vedoucích na všechny varianty typů výsledku či případných komplikací, včetně jejich odstranění, celý postup řešení bude doprovázen jeho podrobným komentářem zdůvodňujícím jednotlivé kroky. Soubor Pracovních listů jakožto základní podpora pro prakticky orientovaná cvičení pro denní formu studia bude obsahovat sadu úkolů a zadání příkladů určených k řešení během jednotlivých dvouhodinových cvičení pod pedagogickým vedením cvičícího včetně rozšiřujícího příkladu k dobrovolnému domácímu vypracování a následné konzultaci. Kromě toho, že vytištění často dlouhých slovních zadání příkladů přinese časovou úsporu, provedou Pracovní listy postupně studenta jednotlivými kroky algoritmu metod řešení zadaných úloh, a tak mu usnadní osvojení si tohoto postupu. Před vytvořením podpor bude proveden exkurz do historických souvislostí vzniku operačního výzkumu, zmapována výuka jeho metod v České republice a popis obsahu disciplíny operačního výzkumu, kdy bude uveden přehled jeho typických úloh a metod určených k jejich řešení, a to především s důrazem na oblast lineárního programování, včetně rozšiřujícího přístupu intervalové a fuzzy analýzy za nejistoty - ix - vstupních parametrů. Následně z nich budou vybrány úlohy a metody, které budou náplní vytvořeného kurzu. Jedna z kapitol bude věnována také významu grafického způsobu řešení úloh LP, kterého bude hojně využíváno při ilustraci algebraických postupů opět z důvodu jejich názornějšímu přiblížení studentům. Jelikož výpočetní technika nachází v operační analýze velké uplatnění, budou cvičení k tomuto předmětu vedena v počítačových učebnách. Proto bude nejprve zmapován optimalizační software, možnosti jeho použití a dostupnost pro případné využití při výuce i v pozdější odborné praxi. Poté budou vybrány a získány vhodné a dostupné programy jak pro využití ve cvičeních, tak pro potřeby domácí přípravy studentů. V rámci výuky bude software používán nejen jako nástroj zrychlení práce a umožnění soustředit se na interpretaci získaných výsledků, ale nově také jako kompenzační podpora pro studenty v matematice méně zdatné, kterým chybějící matematické znalosti a dovednosti znemožňovaly postoupit v probírané látce k navazujícím kapitolám. S využitím jednoduchého dostupného softwaru bude možné rychle řešit více než jen triviální vzorové úlohy, což by při ručních výpočtech nebylo časově možné. Důraz tak může být přenesen na sestavování matematických modelů pro reálné ekonomické problémy, výběr vhodné metody, úpravu matematického modelu pro využití vybraného softwaru a finální interpretaci výsledků. Bude též diskutován význam e-learningu. V práci budou využity dlouholeté zkušenosti autorky s výukou příbuzného předmětu Matematika pro ekonomy, jehož obsah již bylo třeba inovovat a bude proto nově vznikajícím předmětem Operační výzkum nahrazen. Hodnocení středoškolských znalostí a dosavadní studijní výsledky studentů budou statisticky zpracovány, budou vyhodnoceny problematické pasáže a nejčastější chyby, kterých se studenti dopouštěli, jejich odstranění tak bude moci být ve vytvořených podporách věnována náležitá pozornost. Nedílnou součástí přípravy těchto podpor bude ověření jejich praktického využití při výuce, popř. samostudiu.

- x -

1. Operační výzkum (teoretická část)

1.1 Objekt operačního výzkumu

Operační výzkum je soubor vědních disciplín zaměřených na analýzu různých typů rozhodovacích problémů a koordinaci provádění dílčích operací v rámci nějakého systému s využitím kvantitativních matematických metod a modelů tak, aby bylo zajištěno jeho co nejlepší fungování posuzované podle předem stanovených kritérií při dodržení všech omezení, která mají na chod tohoto systému vliv. Jednou z mnoha oblastí, kde nachází své praktické uplatnění, je oblast ekonomie a managementu. Přestože se lidé odedávna snažili své postupy provádět co nejdokonaleji, počátky budování metod operačního výzkumu sahají až do období 30. let minulého století. Záhy byl jeho vývoj motivován a urychlen potřebou řešit komplexní problémy během válečných operací II. světové války a výrazného praktického uplatnění a dalšího prudkého rozvoje doznal tento vědecký směr během poválečných 50. let, kdy dochází v USA i v Evropě k bouřlivému ekonomickému rozvoji. Velkou roli v operačním výzkumu sehrál také rozmach výpočetní techniky, která umožňuje řešit stále rozsáhlejší a komplikovanější optimalizační úlohy. V dnešní době je operační výzkum vědou živě se rozvíjející a intenzivně aplikovanou, jeho metody nacházejí stále častěji praktické uplatnění v řadě odvětví lidské činnosti, kde je třeba komplexně analyzovat problémy a efektivně koordinovat prováděné operace. Moderní společnost je dnes stále více nucena dbát na hospodárnost a efektivitu svého počínání. Je proto také vděčným předmětem výzkumu vědců i profesionálů z celého světa, kteří se sdružují ve společnostech pěstujících operační výzkum, koná se celá řada mezinárodních konferencí a vychází velké množství publikací. Na vysokých školách s ekonomickým zaměřením je zpravidla nedílnou součástí studia.

1.2 Historie operačního výzkumu

Vědní disciplína operační výzkum (Operational, Operations Research) se zabývá formulováním, modelováním a řešením rozmanitých rozhodovacích situací, ve kterých vybíráme nejlepší z přípustných řešení. Pojem Operační výzkum je velmi obšírný, jeho hranice není možné přesně vymezit. Jeho pole zájmu zasahuje do oblasti

- 1 - ekonomie, průmyslového inženýrství, aplikované matematiky, statistiky, výpočetní techniky či managementu. Optimalizační úlohy postupně vyvstávaly v různých oblastech matematiky, zmiňme teorii pravděpodobnosti, teorii čísel, teorii řešení soustav rovnic a nerovnic, teorii her, teorii grafů, geometrii atd. V rámci této práce jsem se věnovala tématům a metodám spjatým s lineární algebrou: lineárnímu programování, především simplexové metodě a jejím modifikacím, kterou využíváme při řešení úloh výrobního plánování, směšovacích a rozdělovacích úloh. Dále je rozebírána dopravní úloha a přiřazovací problém, v neposlední řadě také vícekriteriální hodnocení variant a vícekriteriální programování. Proto i v historickém exkurzu si všímám převážně souvisejících poznatků v těchto oblastech. Historický přehled se věnuje událostem, lidem, myšlenkám a metodám, které jsou ať přímo či nepřímo spojovány se vznikem operačního výzkumu se zaměřením na algebraické a geometrické poznatky vedoucí ke vzniku a vývoji lineárního programování. Rozsáhlý historický přehled zpracovali Gass a Assad (2005), z jejichž textu jsem historické údaje převážně čerpala. Otázkami zlepšování lidského konání se lidstvo jistě zabývalo odpradávna, vědecký přístup k tomuto zefektivňování má však poměrně mladou historii. Obecně lze říci, že byl vždy motivován převážně vojenskými důvody, dnes zažívá období svého největšího rozkvětu v oblasti ekonomické.

1.2.1 Co předcházelo vzniku operačního výzkumu

První pokusy popsat posuzované události čísly vedly během 16. a 17. století k položení základů počtu pravděpodobnosti. Italský fyzik a matematik Girolamo Cardano (1501 – 1576) se v Knize o náhodných hrách věnuje matematickému pozadí hazardních her, např. úloze o rozdělení sázky. Galileo Galilei (1564 – 1642) zkoumal chyby vznikající při fyzikálních měřeních. Na ně navazuje francouzský matematik Blaise Pascal (1623 – 1662), který popsal, jak spočítat očekávanou hodnotu výhry: násobil pravděpodobnost výhry jejím výnosem, s přítelem Pierrem de Fermatem (1601 - 1665) tak položili základy teorie pravděpodobnosti. Navázali na ně členové švýcarské rodiny Bernoulliů, Jakob Bernoulli (1655 - 1705) popisuje četnosti výsledků v sérii nezávislých pokusů a také vztah pravděpodobnosti a relativní četnosti, položil základy teorie statistických hypotéz.

- 2 -

Švýcarskému matematikovi Leonardu Eulerovi (1707 – 1783) se připisuje zásluha na založení teorie grafů. Jako první vyřešil problém sedmi mostů města Královce, dokázal, že pro dané uzly a hrany neexistuje tzv. eulerovský tah. Matematikové a fyzikové 18. století vyvinuli silnou metodu variačního počtu, což je část matematické analýzy zabývající se hledáním funkce s extremální vlastností, jakou je např. nejkratší spojnice dvou bodů. Hledáním extrémů konkrétních funkcí se zabývali již Isaac Newton (1643 – 1727), Gottfried Wilhelm von Leibnitz (1645 – 1716), Daniel Bernoulli (1700 - 1782), Jakobův synovec, který též jako první formuloval koncept očekávaného (monetárního) užitku. Joseph-Louise de Lagrange (1736 – 1813) v knize Mécanique Analytique popsal mimo jiné metodu hledání minima funkce f(x) za podmínek ve tvaru rovnic gi(x) = 0 pro každé i, jakožto nástroj k nalezení rovnovážného stavu x* mechanických systémů, pomocí tzv. Lagrangeových multiplikátorů. Gradient f(x) v x* vyjádřil jako lineární kombinaci gradientů funkcí gi(x). V 19. století již byly formulovány první úlohy formálně splňující definici úlohy lineárního programování. Francouz Jean-Baptiste-Joseph Fourier (1768 – 1830) uvedl bez důkazu případ hledání minima funkce f(x) za podmínek ve tvaru nerovnic gi(x) ≥ 0 pro každé i, funkci f(x) v x* lze vyjádřit jako lineární kombinaci nezáporných gradientů funkcí gi(x), důkaz byl podán až v roce 1898. Formuloval úlohu dnes vedoucí na problém optimální alokace zdrojů, Fourier tedy navrhl první úlohu lineárního programování včetně návrhu způsobu jejího řešení. Anglický právník a filosof Jeremy Bentham (1748 – 1832) předpokládal, že lidstvo je ovládáno „bolestí a potěšením“ a veškeré své rozhodování podřizuje jejich míře, je považován za předchůdce moderní teorie užitku, určenou pro výběr nejlepší varianty či uspořádání více variant. Francouzský přírodovědec a politik Gaspard Monge (1746 – 1818) položil základy metodám grafického řešení, je považován za otce deskriptivní geometrie, je po něm pojmenováno kolmé promítání na dvě průmětny, tzv. Mongeova projekce, kterou lze využít k řešení trojrozměrných geometrických úloh v rovině. Slavný německý matematik a fyzik Carl Friedrich Gauss (1777 – 1855) využil elementárních řádkových úprav k převodu čtvercové matice soustavy lineárních rovnic na matici do odstupňovaného tvaru, dnes používáme označení Gaussova metoda neúplné eliminace. Pomocí zpětného dosazování neznámých od posledních řádků se postupně získají hodnoty všech neznámých. Později byl tento proces nahrazen Gauss-

- 3 -

Jordanovou metodou úplné eliminace, kdy je matice převedena rovnou do diagonálního tvaru. Tato metoda nabízí univerzální způsob nalezení řešení soustavy lineárních rovnic, pokud existuje. Vznik a vývoj teorie matic se řadí do období zrodu algebry struktur (polovina 19. století), kdy se spousta matematiků zabývala otázkami rozšiřování číselných oborů, rozvíjel se také vektorový počet. Probíhal též rozvoj aritmetických operací a jejich vlastností, které daly základ důležitým pojmům v druhé polovině 19. století (grupa, okruh, obor integrity, těleso, vektorový prostor atd.). Na těchto pojmech stojí dnešní algebra. Pojem matice se postupně rodil mezi léty 1841 a 1855 v teoretických pracích anglických matematiků Arthura Cayleyho (1821 – 1895) a J. J. Sylvestera (1814 – 1897). Jejich největším společným tématem byla algebra. Díky A. Cayleymu, který ve svém díle charakterizoval matici, termín matrix a současný symbol - kulaté závorky, došlo k rozvoji teorie matic. Zavedení tohoto pojmu motivovalo rozvoj problematiky lineárních rovnic, přes nehomogenní soustavy lineárních rovnic, které zapsal maticově. Cayley jako první podal moderní definici grupy. Anglický matematik a vynálezce Charles Babbage (1792 – 1871) přišel jako první s myšlenkou počítacího stroje v dnešním slova smyslu, tzv. Analytical Engine. Eliminace chyb v ručních výpočtech a jejich zefektivnění jej dovedly ke konstrukci parou poháněného mechanického stroje s programem zapsaným na děrných štítcích. Umožnil uchovat až tisíc padesátimístných čísel v paměti a zajišťoval tisk výsledků na výstupu. Pokrokový byl i tím, že jeho pravou rukou byla žena, hraběnka Augusta Ada Byronová z Lovelace (1815 – 1852). Položil základy operačnímu výzkumu. Německý matematik Paul Albert Gordan (1837 – 1912) se zabýval nezáporným řešením soustav lineárních rovnic, jehož význam se ukáže až při řešení úloh lineárního programování. Aniž to tušil, dospěl k větě zásadní pro ověřování věty o rovnováze: Buď soustava lineárních nerovnic Ax < 0 má vektor řešení x, nebo ATy = 0 má nenulový vektor řešení y, kde y ≥ 0. Americký inženýr Frederick Winslow Taylor (1856 – 1915) se jako hlavní strojní inženýr strojařské firmy zabýval zefektivněním výroby eliminací všech nadbytečných pracovních pohybů u všech jejích článků. Kladl důraz na studium ergonomie a normování pohybů, tedy na nejlepší výkon v nejkratším čase (tzv. time studies). Podobně Frank Bunker Gilbreth (1868 – 1924) byl zastáncem tzv. vědeckého managementu a průkopníkem výzkumu pohybu (tzv. motion study), se svou ženou

- 4 -

Lillian Gilbreth (1878 – 1972) založil firmu zabývající se poradenstvím v oblasti inženýrství. Zaměřili se na eliminaci ztrát pramenících ze špatně zadaných a neefektivních pracovních úkonů. U nás se vědeckým způsobem řízení nechal inspirovat Tomáš Baťa (1876 – 1932) ve své rostoucí obuvnické firmě ve Zlíně. Snažil se docílit kontinuálního rozvoje osobnosti svých spolupracovníků a usiloval o stálé systematické a vědecké zlepšování výkonu svých zaměstnanců pomocí pozitivní motivace. Matematik německo-polského původu Hermann Minkowski (1864 – 1909) v rámci tzv. geometrické teorie čísel řešil problémy z teorie čísel metodami klasické geometrie, věnoval se teorii konvexních množin a otázce existence a nalezení celočíselného řešení soustavy lineárních nerovnic. Konvexní množina v rovině s obsahem větším než 4 obsahuje alespoň jeden bod s celočíselnými souřadnicemi. Dokázal, že množina všech řešení soustavy lineárních nerovnic o n neznámých tvoří v prostoru Rn konvexní mnohostěn (convex polyhedron) a její každý bod lze vyjádřit jako součet konvexní kombinace jejích vrcholů a nezáporné kombinace jejích extrémních směrů. Tento výsledek je základem lineárního programování a výpočetních postupů simplexové metody. Americký strojní inženýr Henry Laurence Gantt (1861 – 1919) vytvořil pomocí sledu pruhů dynamický graf zaznamenávající průběh naplánované výroby včetně načasování a stupně dokončení dílčích úkolů, tzv. Ganttův diagram dodnes používaný v teorii řízení projektů. Maďarský přírodovědec a matematik Gyula Farkasz (1847 – 1930) objevil vztah řešení dvou duálně sdružených soustav homogenních lineárních nerovnic. K podobnému závěru došel také německý matematik E. Stiemke. Na tomto základě, až v roce 1951, dokázali Američané David Gale (1921 - 2008) a Harold William Kuhn (1925 - 2014) a Kanaďan Albert W. Tucker (1905 - 1995) vztahy mezi řešeními dvojice duálně sdružených úloh. Italský ekonom Vilfredo Pareto (1848 – 1923) formuloval optimum jako stav ekonomického modelu, kde již nemůže být dosaženo lepšího užitku jednoho ekonomického subjektu, aniž by přitom nedošlo ke zhoršení užitku jiného subjektu. Ve vícekriteriálním rozhodování je tzv. Paretovské optimum takové přípustné řešení, ve kterém může být zlepšení hodnoty jedné účelové funkce dosaženo pouze snížením hodnoty alespoň jedné další účelové funkce.

- 5 -

Ruský matematik Andrej Andrejevič Markov (1856 – 1922) se věnoval náhodným stochastickým procesům, je objevitelem teorie dnes nazývané Markovovy řetězce, kdy náhodný proces přechází z jistého svého stavu do jiného se známou pravděpodobností a celý řetězec těchto změn stavů limitně konverguje k tzv. stacionárnímu stavu. Markovovské procesy modelují rozhodování v situacích s náhodnými výsledky navíc v závislosti na uživatelem vybíraných akcích. Jsou popsány pomocí tzv. funkce přechodu, resp. matice přechodu. Spojitými Markovovskými procesy se následně zabýval ruský matematik Andrej Nikolajevič Kolmogorov (1903 – 1987). V roce 1931 ukázali nezávisle na sobě kombinatorické řešení přiřazovacího problému maďarští matematikové Dénes König (1884 – 1944) a Jenö Egerváry (1891 – 1958) zabývající se teorií grafů. Jako mnoho jeho předchůdců (např. Evangelista Torricelli (1608 – 1648) v geometrii) se také maďarský matematik Endre Weiszfeld (1916 – 2003) zabýval otázkou určení místa s nejmenším součtem vzdáleností od všech zadaných bodů. V roce 1937 publikoval numerickou metodu hill-climbing na základě vhodně váženého průměru bodů minimalizující součet čtverců vážených vzdáleností aktuální iterace. Metoda je dodnes používaná pro svou jednoduchost v teorii alokace zdrojů, přestože již byly objeveny algoritmy přesného nalezení optimálního pozice. Ve třicátých letech 20. století bylo v souvislosti se světovou hospodářskou krizí studium optimalizace motivováno potřebou sofistikovaně řešit vyvstávající ekonomické problémy. V roce 1930 založil norský ekonom Ragnar Frish (1995 – 1973) Ekonometrickou společnost, zabýval se hlavně matematizováním ekonomie, je autorem termínů makro a mikroekonomie. Dánský ekonom Jan Tinbergen (1903 – 1994) sestavil komplexní model tržní ekonomiky. Oba získali v roce 1969 za své úsilí v této oblasti Nobelovu cenu.

1.2.2 Vznik operačního výzkumu

Již bylo zmíněno, že hlavním hybatelem objevení a zdokonalení optimalizačních procesů byl reálně hrozící válečný stav. Léta 1936 – 1939 jsou nejdůležitějšími roky pro vznik operačního výzkumu. V roce 1936 s rostoucí hrozbou válečného konfliktu založilo britské Ministerstvo vzdušných sil výzkumnou stanici na Bawdsey Manor, panství na pobřeží anglického Suffolku, kam britská vláda povolala vědecké pracovníky z různých oborů.

- 6 -

Hledali možnosti, jak lépe chránit své území před německými nálety. Do vypuknutí II. světové války vybudovali síť radarových stanic, docílili optimální lokalizace antén a tím i nejlepšího přenosu signálu, čímž dosáhli zdvojnásobení efektivity původního systému protiletadlové obrany. Obdobné týmy byly vytvořeny i v dalších oborech. Jako první zde veškerý výzkum řídil anglický fyzik Robert Watson-Watt (1892 – 1973), jeho nástupce fyzik Albert Percival Rowe (1898 – 1976) údajně tuto koordinovanou činnost výzkumné stanice poprvé pojmenoval operational research. Činnost výzkumné stanice pokračovala od roku 1941 pod Royal Air Force i přes období studené války a byla ukončena v roce 1991. V roce 1942 byly ve všech třech částech britské armády ustaveny formální skupiny pro operační výzkum, během II. světové války se jako speciální obor vyvinulo lineární programování. Původně bylo motivováno potřebou řešit komplexní plánovací problémy ve válečných operacích. V roce 1942 se zapojily do II. světové války také USA. I díky četným kontaktům s britskými vědci podporovalo Ministerstvo obrany a Ministerstvo námořnictva zavedení operačního výzkumu ve všech štábech pozemních operací i leteckých sil. Námořní dělostřelecká laboratoř mimo jiné navrhla způsob zaminování moře kolem Japonských ostrovů. Americký matematik izraelského původu Theodore Samuel Motzkin (1908 – 1970) shrnul ve své disertační práci v roce 1936 dosavadní poznatky o řešení soustav lineárních nerovnic a publikoval tzv. Motzkinovu větu o transpozici, která zobecňuje vztahy mezi dvojicí duálně sdružených úloh (a tzv. Větu o alternativách, která popisuje možnosti odpovídajících dvojic typů jejich řešení). Speciálními případy jsou dříve publikované jako Farkasova, Gordanova a Stiemkeho věta. Ekonom Ruského původu Vasilij Leontijev (1906 – 1999) je zakladatelem IOA (tzv. input output analýzy), pomocí koeficientů I-O matice popsal vztahy mezi spotřebou a produkcí jednotlivých ekonomických sektorů: dílčí koeficienty vyjadřují objem spotřeby v jednom ekonomickém sektoru požadovaný k vyprodukování jednotky výrobku v jiném ekonomickém sektoru. Položil základy strukturní analýzy vydáním publikace The Structure of American Economy v roce 1939, za praktické aplikace mu byla v roce 1973 udělena Nobelova cena za ekonomii. Americký matematik Merrill Meeks Flood (1908 – 1991) se zabýval teorií grafů (problém obchodního cestujícího který projde všechny určené body co nejkratší cestou) nebo teorií her (vězňovo dilema, kde každý z vězňů svým případným

- 7 - rozhodnutím spolupracovat může ovlivnit délku svého trestu, ovšem v závislosti na tom, jak vypovídá ten druhý). Britský vědec Alan Mathinson Turing (1912 – 1954) se věnoval matematické informatice a kryptoanalýze, popsal teoretický model obecného výpočetního stroje (tzv. Turingův stroj), čímž položil základy informatiky. Za druhé světové války rozluštil s týmem vědců soustředěných v Bletchley Parku kód ukořistěného německého šifrovacího stroje Enigma, díky němuž byla po několik let války dešifrována nepřátelská komunikace. Jeho úspěch ovšem podléhal přísnému utajení, zaslouženého veřejného uznání se mu dostalo až 55 let po jeho předčasné smrti. Co se týče historie samotného lineárního programování, je třeba nejprve zmínit významný přínos ruského matematika: Leonid V. Kantorovič (1912 – 1986) ve své monografii Matematické metody organizace a plánování výroby z roku 1939 poprvé pomocí lineárních vztahů formuloval principy lineárního programování, matematicky popsal přiřazovací problém využití zdrojů a navrhl způsob jeho výpočtu pomocí gradientních koeficientů (stále bez použití počítačů) a také jeho praktické využití v různých průmyslových oborech. Byl oceněn za řešení praktických problémů, výpočtem určil např. bezpečnou vzdálenost automobilů na ledu v závislosti na jeho tloušťce a venkovní teplotě při přepravě nákladu přes Ladožské jezero během blokády v roce 1942, jíž se poté osobně zúčastnil, v roce 1949 obdržel výroční Stalinovu cenu. „Kantorovičovi by měla být přiznána zásluha za to, že jako první rozpoznal významné třídy výrobních úloh a přesně popsal matematické struktury, které, jak věřil, byly přístupné praktickým numerickým výpočtům a mohly být číselně řešeny.“ vyjádřil se v roce 1963 Dantzig (Gass a Assad, 2005). V jeho době ovšem nebyly v Rusku jeho zásadní myšlenky týkající se LP akceptovány, neboť korespondovaly se západním směrem matematického pojetí ekonomiky. Dnes je považován za průkopníka lineárního programování. Za skutečné zakladatele teorie lineárního programování jsou potom považováni především George B. Dantzig, a Janos von Neumann. V letech 1941 a 1942 nezávisle na sobě studovali Leonid Vitalevič Kantorovič (1912 – 1986) a Tjaling . Koopmans (1910 – 1985) tzv. dopravní problém, nazývaný někdy Koopmans-Kantorovičův, k řešení využili Minkovského teorie konvexních množin. Oba obdrželi v roce 1975 Nobelovu cenu za ekonomii v oblasti optimální alokace zdrojů.

- 8 -

I po válce investovala především americká a v Evropě britská vláda do rozvoje operačního výzkumu jak pro potřeby rychlé ekonomické obnovy válkou poničených zemí, tak nadále pro potřeby vojenské. V roce 1947 vytvořily americký Pentagon a velitelství Amerických vzdušných sil projekt SCOOP (Scientific Computation Of Optimum Programs), jehož výzkumnou skupinu řídil ekonom Marshall K. Wood. Hlavním cílem projektu byl další vývoj dokonalejších válečných plánů (vhodné načasování, zásobování a využití zdrojů apod.). Organizace SCOOP se také zapojila např. do řešení problému „studené války“. Stalin, který nepřijal Marshallův poválečný Plán evropské obnovy, nechal 24. června 1948 uzavřít všechny přístupové komunikace k Západnímu Berlínu. Pracovní skupina vědců SCOOP pomocí metod operačního výzkumu optimalizovala letecké dodávky humanitární pomoci díky tzv. „vzdušnému mostu“ až 9 tisíců tun denně, což bylo srovnatelné s původním pozemním způsobem zásobování, neúspěšná blokáda byla po dlouhých jedenácti měsících v květnu 1949 zrušena. Program SCOOP byl rozpuštěn v roce 1955. Hlavním matematikem projektu byl od počátku jmenován George Bernard Dantzig (8. 11. 1914 – 13. 5. 2005). Právě zde poprvé matematicky popsal obecný způsob řešení úloh lineárního programování, tedy nalezení přípustného řešení, které dává nejlepší hodnotu účelové funkce využitím Jordanovy metody úplné eliminace obohacené o průběžné sledování změn hodnoty účelové funkce v jednotlivých přípustných základních řešeních, v roce 1947 tak vyvinul a obecně popsal (primárně) simplexovou metodu, univerzálně schopnou řešit úlohy LP. Zde ji také dokázal, testoval na různých typech lineárních úloh a v rámci projektu se též intenzivně pracovalo na využití počítačů při řešení. Zpětně se dostalo uznání Kantorovičovu rozdělení na typy ekonomických úloh, jež mají stejnou strukturu matematického modelu popsanou vztahy (1.6) až (1.8). Název lineární programování v této souvislosti Dantzigovi navrhl Koopmans. Všichni tři vědci se společně několikrát setkali na půdě rakouské výzkumné organizace IIASA v Laxenburgu. Velkým zklamáním pro vědeckou obec však bylo, že za svůj objev neobdržel Dantzig v roce 1975 Nobelovu cenu spolu s Kantorovičem a Koopmansem. Koopmans dokonce nejprve Kantorovičovi navrhoval, že Nobelovu cenu za těchto okolností odmítnou, ale pro něj by bylo toto rozhodnutí obzvlášť těžké, neboť jiného významného uznání se jeho práci v Sovětském svazu nedostalo. Koopmans tedy alespoň věnoval třetinu získané finanční odměny rakouské IIASA.

- 9 -

Je nutno konstatovat, že využití simplexové metody dostálo během Dantzigova života výrazného rozšíření do různých oborů a široké specializaci odvozených metod pro specifické typy úloh LP. Jeho jméno nese Dantzigův uzavřený cyklus přesouvání transportovaného množství při optimalizaci v dopravní tabulce.

Obrázek 1 – Koopmans, Dantzig a Kantorovič (zleva) Zdroj: Gass a Assad (2005)

V roce 1952 nastoupil do vládou zřízeného projektu RAND (Research and Development, od 1945), kde do roku 1960 vedl řadu výzkumných projektů, kde dále zdokonaloval a rozšiřoval výpočetní sílu metod lineárního programování. Poté odešel předávat své vědomosti a zkušenosti z oblasti operačního výzkumu jako profesor od 1960 na UC Berkeley na Katedře průmyslového inženýrství a od roku 1966 na Stanfordské univerzitě, kde vedl desítky doktorandů. Vitální George Bernard Dantzig se dožil úctyhodných 90 let, u příležitosti jeho dvou významných výročí na něj jeho rodina, spolupracovníci a žáci vzpomínají jako na veselého a vstřícného člověka, přátelského skromného kolegu a zapáleného pedagoga, významným zadostiučiněním by pro něj jistě bylo dnešní rozšíření jím

- 10 - objevené metody ve výuce operačního výzkumu. (Cottle, Eaves a Saunders, 2006), (Murray, 2005). V letošním školním roce si připomínáme dvě jeho významná jubilea. Rakousko-uherský a později americký matematik židovského původu Janos Von Neumann (1903 – 1957) patří mezi spolutvůrce matematické teorie her, která je dodnes používána v ekonomice i v politice, společně s Oskarem Morgensternem (1902 – 1976) ve svém díle Theory of Games and Economic Behavior vydaném v roce 1944 se zabývali ekonomickou aplikací teorie her. Objevil také podobnost mezi řešením úloh LP a teorií matic, v roce 1926 dokázal existenci řešení maticových her pro dva hráče pomocí teorie minimaxu (v roce 1951 provedl konstruktivní důkaz G. B. Dantzig pomocí lineárního programování). V roce 1947 zformuloval teorii duality. Matematik a fyzik ukrajinského původu Stanislaw Marcin Ulam (1909 – 1984) vytvořil (ve spolupráci s J. von Neumannem) v roce 1946 metodu Monte Carlo využívanou k simulaci experimentů, pro danou veličinu generuje její pseudonáhodné hodnoty při známém rozdělení pravděpodobnosti. V roce 1949 objevil americký matematik Derrick Henry Lehmer (1905 – 1991) lineární kongruenční modely náhodných čísel. Byly tak položeny základy využití simulačních modelů. Na konci třicátých let 20. století George Joseph Stigler prezentoval a heuristickými metodami (tedy před objevením simplexové metody) velmi přesně řešil nutriční problém splňující nutriční požadavky vojenských oddílů za co nejnižší ceny. V roce 1947 potom G. B. Dantzig tento problém formuloval jako úlohu LP a objevenou simplexovou metodu využil při řešení takto rozsáhlé úlohy. Stiglerův výsledek se od skutečného optima příliš nelišil. Zdokonalování Babbagova počítacího stroje vyústilo v roce 1946 v sestrojení prvního moderního k obecným výpočtům určeného počítače ENIAC (Electronic Numerical Integrator and Computer). Rozvoj výpočetní techniky je samozřejmě nedílným pilířem rozvoje optimalizačních metod.

1.2.3 Mírové využití operačního výzkumu

V poválečných letech vývoj lineárního programování významně vzrostl, jeho potenciál byl zřejmý ve většině odvětví nově budovaného průmyslu. K popularizaci rychle se rozvíjejících metod operačního výzkumu přispělo v roce 1946 vydání publikace Methods of Operations Research. Autoři Philip M. Morse (1903 - 1985) a George E. Kimball (1906 – 1967) zde přestavili základní myšlenky operačního

- 11 - výzkumu pro mírové využití v průmyslu, obchodu, politice i pro široké vědecké využití v akademické sféře. Po válce řada expertů na operační výzkum přešla do vládních a průmyslových institucí, vývoj operačního výzkumu byl patrný i v akademické sféře. Velmi důležitým milníkem v oblasti operačního výzkumu je bezesporu vynález elektronických počítačů. V roce 1946 byl vyvinut ENIAC (Electronic Numerical Integrator and Computer), první moderní obecně využitelný digitální počítač, jehož stále dokonalejší nástupci umožnili ruku v ruce s rozvojem zmíněných metod rychlé numerické výpočty složitých optimalizačních a simulačních úloh Nástup počítačové techniky přispěl k rychlejšímu řešení systémových problémů a zrychlení jejich řešení a během deseti let začala metody operačního výzkumu používat téměř polovina velkých firem v USA, což mělo vliv na urychlení vývoje průmyslového operačního výzkumu ve Velké Británii i jinde ve světě. Byly založeny různé odborné společnosti, které sdružují vědce z celého světa a věnují se podpoře operačního výzkumu dodnes. Operational Research Club byl založen v roce 1948 ve Velké Británii a v roce 1953 se transformoval v Operational Research Society. Operations Research Society of America (ORSA) byla založena v roce 1952, k zakládajícím členům patří také E. Kimball či P. Morse, který byl jmenován jejím prvním prezidentem. Byla založena řada národních společností, v roce 1959 vznikla Mezinárodní federace společností pro operační výzkum. Jako akademická disciplína se operační výzkum poprvé objevil v r. 1948, kdy byl zaveden kurz o nevojenských aplikacích na Massachusetts Institute of Technology v Cambridgi. V roce 1952 bylo na Case Institute of Technology (dnes Case Western Reserve University) v Clevelandu zavedeno studium vedoucí k získání magisterských a doktorských titulů. Od té doby zahájilo studijní programy mnoho hlavních akademických institucí ve Spojených státech, Ve Velké Británii byly kursy zahájeny na universitě v Birminghamu počátkem padesátých let. První katedra operačního výzkumu byla vytvořena na nově vzniklé universitě v Lancasteru roku 1964. K podobnému vývoji došlo ve většině zemí, ve kterých existovaly národní společnosti pro operační výzkum. (Liška, 2013) První odborný časopis, Operational Research Quarterly, vychází ve Velké Británii roku 1950; od roku 1978 pod názvem Journal of the Operational Research Society. Od roku 1952 vychází také Journal of the Operations Research Society of America (vydávaný společností ORSA), který byl r. 1955 přejmenován na Operations Research (a od roku 1995 vydávaný po sloučení ORSA a TIMS společností INFORMS

- 12 -

(Institute for Operations Research and the Management Sciences, http://www.informs.org/). Ta vydává ještě 13 odborných časopisů, pro registrované členy také populární OR/MS Today a on-line časopis OR/MS Tomorrow určený studentům. Volně přístupný recenzovaný časopis INFORMS Transactions on Education je věnovaný vzdělávání (http://pubsonline.informs.org/journal/ited), může být nápaditým zdrojem informací pro pedagogy, některé nápady jsem sama ve své praxi využila (Cochran, 2015). V roce 1959 byla založena IFORS (International Federation of Operational Research Scieties, http://www.ifors.org/), která od roku 1961 vydává International Abstracts in Operations Research. V roce v rámci IFORS vzniká v roce 1976 evropské sdružení EURO (The Association of European Operational Research Societies, http://www.euro-online.org/), které od roku 1977 vydává časopis EJOR (European Journal of Operational Research). Koná se také řada vědeckých konferencí. První mezinárodní konferenci o operačním výzkumu pořádala univerzita v Oxfordu v roce 1957, aktuální pozvánky lze najít na stránkách INFORMS pod linkem Attend a Conference. David George Kendall (1918 – 2007) provedl v roce 1953 dodnes používanou klasifikaci systémů hromadné obsluhy, zavedl standardní popis uzlů modelu hromadné obsluhy. Teorie front je dnes klasickou částí logistiky. Americký matematik Richard Bellman (1920 – 1984) vydal v roce 1957 knihu Dynamic Programming zabývající se problémy, které je možné rozložit na dílčí kroky (stavy systému) vyžadující průběžné rozhodování v jednotlivých časových okamžicích. Zkonstruoval tzv. Bellmanovu rovnici, která hledá rekurzivním způsobem funkci optimalizující hodnoty proměnných a účelové funkce v těchto stavech. Ralph Edward Gomory (nar. 1929), uznávaný americký vědec zabývající se aplikovanou matematikou, v roce 1958 objevil metodu řezných nadrovin, využívanou při řešení úloh celočíselného LP. Geoffrey Gordon (nar. 1930) vytvořil v roce 1959 první simulační jazyk GPSS (General Purpose Simulation System), který pomocí příkazů popisuje modelovaný systém diskrétně výčtem jeho dílčích akcí v jednotlivých řádcích. Americký ekonom Harry Markowitz (nar. 1927) vytvořil v roce 1961 simulační jazyk SIMSCRIPT využívaný pro tvorbu simulačních modelů v inovovaných verzích dodnes.

- 13 -

Americký matematik John Dutton Conant Little (nar. 1928) popsal pomocí tzv. Littlova zákona základní vztahy (rychlost procesu) v teorii front. Je považován na zakladatele marketingu. Čínský matematik Kwan Mei-Ko (1934) se věnoval teorii grafů, v roce 1962 vyřešil starou úlohu čínského listonoše, který musí projít každou hranou alespoň jednou a přitom ujít minimální vzdálenost, díky rozdělení uzlů na sudé a liché a přidávání dalších uzlů. Již z antického Řecka je znám tento paradox slovního vyjádření množství: „Mějme malou hromadu kamení. Pokud přidáme jeden kámen, dostaneme opět malou hromadu kamení. Tedy každá hromada kamení je malá.“ Formalizací vágních pojmů se zabýval azerbajdžánský matematik a informatik působící na UC Berkeley Lotfi Aakar Zadeh (nar. 1921), který v roce 1965 publikoval článek Fuzzy množiny, kde navrhuje, jak vágně zadané hodnoty lépe vystihnout jejich nahrazením fuzzy čísly. Přispěl k teorii řešení optimalizačních úloh za nejistoty parametrů. Američané Donald Gross (???), Carl M. Harris (1940 – 2000) a kol. vydali v roce 1974 knihu Základy teorie front, která se vrací k markovovským modelům a simulacím, obsahující také případovou studii George B. Brighama (1889 – 1987) optimálního personálního zajištění letištního provozu pro firmu Boeing. V roce 1975 popsal americký informatik John Holland (nar. 1929) základní princip heuristického genetického algoritmu založeného na náhodném prohledávání množiny přípustných řešení, přičemž jsou imitovány mechanizmy přírodního výběru z Darwinovy teorie o vývoji druhů. Při modifikaci nalezených řešení ve formě binárních řetězců pracuje s pojmy chromozom, mutace či křížení. V osmdesátých letech 20. století pak nachází uplatnění v kombinatorické optimalizaci. V roce 1978 byla použita metoda DEA (data envelopment analysis) analýza datových obalů, procedura hodnocení relativní efektivity produkčních jednotek na základě vstupů a výstupů, založená na vzájemné dualitě jednotek (DMU – decision making unit). Výkonnost každé jednotky je určována porovnání s výkonností ostatních jednotek, vícekriteriální metoda zjišťuje, jak upravit neefektivní jednotky. Využití při porovnávání subjektů jako jsou školy, nemocnice apod. Sovětský matematik arménského původu Leonid Genrikhovich Khachiyan (1952 – 2005) vyvinul v roce 1979 tzv. elipsoidální algoritmus pro řešení úloh LP, který měl jako první pouze polynomický počet operací, a stal se inspirací dalším

- 14 - algoritmům konvexního programování založeným na náhodném prohledávání oblasti přípustných řešení. V 60. a 70. letech postupně vzniká disciplína vícekriteriální optimalizace, matematik iráckého původu Thomas L. Saaty (nar. 1926) vyvinul v roce 1980 metodu AHP (Analytic Hierarchy Process) pro řešení úloh VHV. V roce 1980 vyvinula firma Lindo modelovací jazyk LINGO pro řešení úloh LP a celočíselného programování, který se stal na dlouhou dobu nejvýznamnějším obecně využitelným optimalizačním programem. Dodnes je hojně využívaný, protože podporuje MPS formát. Matematik českého původu Václav Chvátal (nar. 1946), který se v sedmdesátých letech věnoval s G. B. Dantzigem kombinatorickým optimalizačním problémům, použil v roce 1984 metodu sečných nadrovin obdobně jako Gomory. V sedmdesátých letech se kvůli počítačovému využití opět začala věnovat pozornost iteračním výpočetním metodám, Američan Stephen Cook (nar. 1939) se zabýval polynomickou redukcí algoritmů a tzv. NP-úplností úloh, princip iteračních optimalizačních metod nastínil Naum Zucelevič Šor (1937 – 2006), v roce 1972 vytvořili první aproximační algoritmus pro reálnou konvexní minimalizaci Rusové David B. Judin (???) a Arkadi Nemirovski (nar. 1947), který se zabýval obecně metodami vnitřního bodu a robustní optimalizací. V roce 1979 vyvinul sovětský matematik arménského původu Leonid Khachiyan (1952 – 2005) elipsoidální algoritmus, iterační metodu přímo určenou pro řešení úloh lineárního programování s polynomiální složitostí (ve výpočetní praxi nahrazující použití simplexového algoritmu s exponenciální složitostí), v roce 1984 vyvinul indický matematik Narendra Karmarkar (nar. 1957) ještě efektivnější, tzv. Karmarkarův algoritmus.

1.2.4 Současnost

Dosavadní poznatky optimalizace shrnuje obsáhlá Encyclopedy of Optimization (Floudas a Pardalos, 2008) velmi ceněná předními osobnostmi citovanými nakladatelem (www.springer.com). V sedmi svazcích druhého vydání zahrnuje aktualizovaný kompletní abecední seznam témat, úloh, metod a aplikací, v elektronické podobě fungují četné linky na související témata. V dnešní době se stále lepšími prostředky výpočetní techniky se stále vyvíjejí a zdokonalují metody operačního výzkumu a přizpůsobují je specifickým odvětvím, zajímavé informace o využívání metod operačního výzkumu v praxi nabízí odborný

- 15 -

časopis Interfaces (http://pubsonline.informs.org/journal/) společnosti INFORMS, vydávaného od roku 1970, nebo populární on-line časopis ALLTOP (http://alltop.com/). Operační výzkum jako mladý a perspektivní vědecký obor prochází neustále rychlým vývojem, jeho nové metody a široké oblasti jejich využití se budou dále rychle rozvíjet, aby bylo dosahováno stále vyšší efektivnosti a hospodárnosti ve všech oblastech lidské činnosti dnešní moderní civilizace. Další velká část historie operačního výzkumu je tedy zatím ukryta v budoucnosti.

1.2.5 Operační výzkum v ČR

Velký rozmach metod operačního výzkumu ve druhé polovině 20. století pokračoval šířením do dalších zemí, českou matematickou komunitu seznámil se základními myšlenkami a metodami operačního výzkumu Benedikt Korda (1914 - 2010) ve své knize Matematické metody v ekonomii vydané v roce 1967 nakladatelstvím SNTL. Doc. RNDr. Josef Škrášek (1912 - ???) vystudoval obor zeměměřičství na České vysoké škole technické v Brně a matematiku a deskriptivní geometrii na Přírodovědecké fakultě Masarykovy univerzity v Brně, na obou též jako matematik působil. Ve své práci se věnoval lineární algebře a diferenciálním rovnicím, zabýval se pedagogickými otázkami matematiky. Od roku 1961 ovšem působil na Vyšší vojenské škole ve Vyškově. V knize Základy aplikované matematiky (Škrášek a Tichý, 1968) vydané u SNTL přinesl přehledný výčet základních metod a jejich aplikací včetně historických odkazů v úvodu každé z kapitol. Jelikož se ve 30. letech věnoval též studiu na teologické fakultě v Olomouci, bylo třeba zaštítit toto vydání jménem spoluautora Zdeňka Tichého. Ekonomické využití metod lineárního programování bylo poprvé česky shrnuto v roce 1969 doc. Josefem Zahradníkem v publikaci Lineární programování při řízení hospodářství vydané taktéž vydavatelstvím Práce – SNTL. V učebnici pro nástavbové studium připravující k maturitě z ekonomických předmětů (Zahradník, 1971) je zajímavé vidět, že ve II. ročníku byl prostor vyhrazen vektorům, maticím, soustavám lineárních rovnic i nerovnic a metodám řešení úloh LP: simplexové, distribuční a grafické. (Zdroj: Biografie českých matematiků) Prof. RNDr. František Nožička (1918 - 2004) vystudoval a působil na Přírodovědecké fakultě Univerzity Karlovy, od r. 1953 na Matematicko-fyzikální fakultě UK, vybudoval zde Centrum numerické matematiky a v roce 1998 mu byla

- 16 - udělena Zlatá medaile Karlovy univerzity. Byl jmenován čestným členem Jednoty českých matematiků (od roku 1937 byl aktivním členem, několik let předsedou). Zabýval se diferenciální geometrií, analytickou mechanikou a teorií relativity, stal se uznávaným odborníkem v lineárním a dynamickém programování a v teorii optimalizačních procesů, zejména parametrických metod, navázal zahraniční vědecké kontakty, dostal nabídku Humboldtovy univerzity v Berlíně zřídit zde během ročního pobytu pracoviště orientované na rozvoj matematických metod v ekonomii, vyškolil zde 36 doktorandů a v roce 1979 byl jmenován čestným doktorem. (Zdroj: Biografie českých matematiků) Na rozvoji metod operačního výzkumu se podílela spousta následovníků, jak z řad matematiků a ekonomů působících na ekonomických oborech vysokých škol, tak i odborníků z ekonomické praxe. Od roku 1993 působí v České republice také odborná společnost ČSOV (Česká společnost pro operační výzkum), která dle informací uveřejněných na webu sdružuje odborníky z akademického i firemního prostředí, kteří se profesně zajímají o matematické modelování a operační výzkum jak z teoretického tak i aplikačního hlediska. ČSOV je členem EURO (Association of the European Operational Research Societies), tedy asociace evropských společností pro operační výzkum, což je společnost, která zahrnuje všechny evropské národní společnosti operačního výzkumu a organizuje každoročně výroční konference. Je také členem světové organizace IFORS (International Federation of the Operations Research Societies), která byla založena v roce 1955 a zastřešuje národní společnosti operačního výzkumu všech kontinentů. Jak na svých stránkách (csov.vse.cz) uvádí, mezi její cíle patří podpora rozvoje operačního výzkumu jako vědního oboru, podpora vzdělávání a osvětové aktivity zaměřené na oblast operačního výzkumu a organizace a koordinace spolupráce s partnerskými společnostmi podobného typu v zahraničí. (http://csov.vse.cz/). Odborný časopis Czech Economic Review zaměřený na teoretické i praktické ekonomické problémy s využitím metod aplikované matematiky je publikován on-line pod hlavičkou Karlovy univerzity v Praze (http://auco.cuni.cz/). Je pořádána řada národních a mezinárodních konferencí, ČSOV každoročně pořádá mezinárodní konferenci Mathematical Methods in Economics, v roce 2013 ji hostila VŠPJ v Jihlavě. (https://mme2013.vspj.cz/). Členové rady ČSOV věnující se vědecké práci v oblasti operačního výzkumu zpravidla působí na českých vysokých školách s ekonomickým zaměřením.

- 17 -

1.2.6 Výuka operačního výzkumu v ČR

V roce 2010 byly publikovány výsledky výzkumu provedeného na katedře ekonometrie VŠE kvantitativně srovnávajícího výuku operačního výzkumu na vysokých školách v České republice. Většina (20 z 26) veřejných vysokých škol nabízí alespoň jeden ekonomicky zaměřený studijní program, výuka operačního výzkumu je tedy v ČR poměrně rozšířená. Prezentovaný výzkum pomocí metod VHV srovnává po stanovení kritérií nabídku předmětů a náplň výuky metod operačního výzkumu a následně sestavuje žebříček vysokých škol z hlediska rozsahu výuky operačního výzkumu. Vychází ovšem pouze z dat prezentovaných na webových stránkách jednotlivých škol, fakult či kateder ke konci roku 2008. (Kalčevová a kol., 2010) Vysoké školy přitom zařazují převážnou většinu předmětů operačního výzkumu již v bakalářském stupni studia, výjimkou jsou pouze ČVUT a VŠCHT. Pouze na dvou vysokých školách byl zaznamenán obor zaměřený na operační výzkum: Systémové inženýrství na České zemědělské univerzitě v Praze a Ekonometrie a operační výzkum na Vysoké škole ekonomické v Praze. Tyto školy také podle očekávání obsadily první dvě místa v sestaveném žebříčku.

Česká zemědělská univerzita v Praze

Už ve školním roce 1962/63 byl na ČZU (dříve VŠZ – Vysoká škola zemědělská) zaveden do výuky předmět Lineární programování, rozvíjející se obor vědeckého programování zabývající se ekonomicko-matematickými metodami vyústil ve vznik Katedry operační a systémové analýzy (KOSA), předchůdkyně dnešní Katedry systémového inženýrství, kde byl vyvinut optimalizační software, jako je LINKOSA atd. V oblasti vysokoškolské pedagogiky se zabývá výukou teoretického základu matematických metod v ekonomii a jejich aplikací v praxi, rozvíjení metodických přístupů k řešení rozhodovacích problémů, věnuje se také vědecko-výzkumné činnosti (www.czu.cz). Dva členové Provozně ekonomické fakulty ČZU v Praze zasedají v radě ČSOV. Její viceprezident Doc. Ing. Tomáš Šubrt, Ph.D. je vedoucím Katedry systémového inženýrství, věnuje se metodám plánování a řízení projektů, Doc. RNDr. Helena Brožová, CSc. ze stejné katedry se věnuje rozhodovacím modelům a optimalizaci v produkčních systémech.

- 18 -

Fakulta informatiky a statistiky VŠE v Praze

Vedoucí Katedry ekonometrie Prof. Ing. Josef Jablonský, CSc., vystudoval na VŠE, zabýval se ekonomicko-matematickými výpočty a operačním výzkumem. Zaměřuje se na vícekriteriální rozhodování, analýzu obalu dat, optimalizační modely a software pro matematické modelování. Je členem několika mezinárodních odborných společností a zakládajícím členem a členem rady ČSOV. Jeho učebnice Operační výzkum (Jablonský, 2002) je nejčastěji využívanou a doporučovanou studijní literaturou při výuce metod operačního výzkumu, přehledně shrnuje metody, teoretické pasáže doplňuje praktickými příklady. Na katedře vybudoval silný tým odborníků věnující se operačnímu výzkumu, který v roce 2010 shrnul některé výsledky v publikaci Operační výzkum – nové trendy (Fiala a kol., 2010). Prof. RNDr. Ing. Petr Fiala, MBA, CSc., zástupce vedoucího katedry, se zaměřuje na vícekriteriální a skupinové rozhodovaní, síťovou ekonomiku, produkční systémy, management dodavatelských řetězců, revenue management a řízení projektů. Je členem ČSOV a několika odborných zahraničních společností, je zástupcem ČR v EURO. Prof. Ing. Roman Hušek, CSc. byl zakládajícím členem a prezidentem České ekonometrické společnosti. Působí v edičních radách ekonomických časopisů (Prague Economic Papers, Acta Oeconomica Pragensia a Bulletin of the Czech Econometric Society), přednáší ekonometrii v bakalářském, inženýrském i doktorském studiu. Je spoluautorem první české monografie Ekonometrie (Hušek a Walter, 1976). Prof. RNDr. Václava Pánková, CSc. se věnuje především ekonometrickým metodám a jejich aplikacím v oblasti ekonometrických modelů, analýzy a prognózy ekonomických procesů, vyučuje též nelineární optimalizační metody. Operačnímu výzkumu se věnuje také prof. RNDr. Jan Pelikán, CSc. Doc. Mgr. Ing. Martin Dlouhý, Dr. MSc. studoval operační výzkum a ekonometrii na VŠE v Praze, zdravotní politiku a finance na London School of Hygiene and Tropical Medicine a London School of Economics, veřejnou a sociální politiku na Fakultě sociálních věd Univerzity Karlovy v Praze. Získal doktorát v oboru operační výzkum a ekonometrie na VŠE v Praze, v letech 2003/04 byl na stáži na University of California v Berkeley. Zabývá se výzkumem v oblasti matematických modelů hodnocení efektivnosti (analýza obalu dat, produkční funkce) a využití ekonomicko-matematických přístupů v ekonomice zdravotnictví, vyučuje kvantitativní

- 19 - ekonomii, teorii her a simulační modely. Je prezidentem ČSOV pro období 9/2013 – 9/2015. (Zdroj: http://nb.vse.cz/keko/clenove.html)

Univerzita Pardubice

Za VŠE a ČZU se na třetím místě suverénně umístila Univerzita Pardubice, všechny tři školy nabízejí akreditované obory bakalářského, magisterského a doktorského studia i oborů pro habilitační a profesorská řízení. UPCE nabízí jak studium ekonomických metod např. v rámci oboru Management podniku na Fakultě ekonomicko-správní, tak logistických okruhů zejména v rámci oborů Dopravní inženýrství a spoje a Dopravní technologie na Dopravní fakultě Jana Pernera. Na dalších třech místech se objevují Ostravská univerzita (OSU), Západočeská univerzita v Plzni (na Ekonomické fakultě ZČU působí Doc. Dr. Ing. Miroslav Plevný, který se zabývá modelováním a optimalizací v manažerském rozhodování, je členem rady ČSOV) a České vysoké učení technické v Praze (ČVUT). První desítku ve výzkumu nejvýše hodnocených vysokých škol uzavírá následujících pět pracovišť: Karlova univerzita v Praze, která je v radě ČSOV zastoupena prof. RNDr. Milanem Vlachem, DrSc. působícím na Matematicko- fyzikální fakultě, který úzce spolupracuje s níže zmíněným prof. J. Ramíkem z OPF SLU, Vysoká škola chemicko-technologická v Praze (VŠCHT), Vysoká škola báňská – Technická univerzita v Ostravě (VŠB-TU), Technická univerzita Liberec (TUL) a Univerzita Palackého Olomouc (doc. RNDr. Jana Talašová, CSc. působí na Katedře matematiky UPOL, věnuje se fuzzy metodám multikriteriálního hodnocení a rozhodování, metody hodnocení v oblasti universitního managementu). Z ostatních vysokých škol věnujícím se výuce některých oblastí z operačního výzkumu nemohu nezmínit ještě následující:

Vysoké učení technické Brno

Operačnímu výzkumu se věnuje také Fakulta podnikatelská VUT v Brně, která vydává časopis Trends Economic and Management a také Fakulta strojního inženýrství. (https://www.fme.vutbr.cz) Na Ústavu matematiky (odbor statistiky a optimalizace) působí RNDr. Pavel Popela, Ph.D., zaměřuje se na optimalizační modely a metody, stochastické programování a numerické metody pro statistiku a operační výzkum, aplikace operačního výzkumu, aplikovanou pravděpodobnost a statistiku, matematické

- 20 - inženýrství zaměřené na optimalizaci a její počítačovou podporu, na modely a metody finanční matematiky. Doc. RNDr. Zdeněk Karpíšek, CSc. zaměřuje svůj výzkum na fuzzy množiny, stochastické modelování a na aplikace při řešení technických, přírodovědných, lékařských a ekonomických problémů v základním i aplikovaném výzkumu včetně programování a výpočtů na počítačích. Na Ústavu automatizace a informatiky (odbor aplikované informatiky) pak působí doc. Ing. Radomil Matoušek, Ph.D., zabývá se technickou kybernetikou, aplikací metod umělé inteligence, modelování a simulací, věnuje se vědeckovýzkumné činnosti v oblastech metaheuristické optimalizace a inteligentní robotiky. V letech 2007, 2009 a 2011 byl oceněn cenou Best Paper Award na World Congress on Engineering and - ICSCA 2011 v Berkeley, USA. Prof. Ing. Pavel Ošmera, CSc. se zabývá vědeckovýzkumnou činností v oblasti optimalizace práce spolupracujících robotů, automatické identifikace a automatické generování řídicích programů adaptivních regulátorů (fuzzy, neuronové sítě, vyšší formy řízení). Prof. RNDr. Ing. Miloš Šeda, Ph.D. se věnuje teorii grafů a jejím aplikacím (víceproduktové toky v sítích), kombinatorické optimalizaci (problémy rozvrhování výroby, projekty s omezenými zdroji) a plánování procesů (tzv. schedulingu), či fuzzy modelování (fuzzy grafy, zpracování neurčitosti v databázích). Nejvíce zkušeností s výukou v oblasti operačního výzkumu má doc. RNDr. Jindřich Klapka, CSc., pedagogickou činnost vykonává od roku 1967, věnuje se optimalizačním metodám, matematickým metodám v ekonomice či dynamickému programování, numerické matematice a programování počítačů, technické a teoretické kybernetice. (http://math.fce.vutbr.cz/historie.php) V roce 1975 přednášel na katedře operačního výzkumu a statistických věd Universita di Pisa o výsledcích své vědecké práce v oblasti řízení výrobních procesů, působil zde také jako hostující profesor. Je autorem řady skript týkajících se operačního výzkumu, v roce 1970 publikoval skripta Dynamické programování (Klapka, 1970), Operační výzkum (1972, SNTL Praha, spolu s V. Kudláčkem) a Matematické metody v řízení (1988, VUT Brno). Dalšími z hojně ke studiu doporučovaných skript jsou v roce 1998 vydané Metody operačního výzkumu (2. rozšířené vydání 2001, spolu s J. Dvořákem a P. Popelou, VUTIUM Brno). Výše zmíněný spoluautor Metod operačního výzkumu RNDr. Jiří Dvořák, CSc. se zabývá výukou operačního výzkumu, informatiky, expertních systémů a umělou inteligencí, jeho vědeckovýzkumná činnost se zaměřuje na plánování a řízení výroby

- 21 -

(optimalizace výrobních dávek), fuzzy rozvrhování výroby a navigace mobilních robotů (grafové algoritmy, umělá inteligence, genetické algoritmy).

Slezská univerzita Opava

Prof. RNDr. Jaroslav Ramík, CSc. z Katedry informatiky a matematiky na Obchodně podnikatelské fakultě SLU v Karviné se zabývá vícekriteriální optimalizací a fuzzy programováním, v letech 1995-97 byl prezidentem a v letech 1998- 2000 viceprezidentem ČSOV a je členem International Fuzzy Systems Association (IFSA).

Jihočeská univerzita v Českých Budějovicích

Speciální zmínka a poděkování patří paní doc. RNDr. Evě Vaněčkové, CSc. z Ekonomické fakulty JU v Českých Budějovicích, která pomáhala v roce 2004 při budování předmětu Matematika pro ekonomy pro obor Finance a řízení na nově vznikající VŠP Jihlava, který se zde vyučoval až do roku 2014, a byla ochotná podělit se o své zkušenosti s výukou metod lineárního programování. Výuka metod operačního výzkumu v různém rozsahu byla zaznamenána také na Masarykově univerzitě v Brně, Mendelově zemědělské a lesnické univerzitě, Univerzitě Hradec Králové, Univerzitě Jana Evangelisty Purkyně v Ústí nad Labem, Univerzitě Karlově v Praze, Univerzitě Palackého v Olomouci, Univerzitě Tomáše Bati ve Zlíně a na Vysoké škole polytechnické Jihlava. Kalčevová a spol. (2010) uvádí 11 tematických okruhů, které jsou vyučovány na všech výše zmíněných vysokých školách. Jsou to: úvod – praktické použití modelů, formulace modelů, úlohy LP – matematický model, možnosti řešení a grafické řešení, dualita, numerické řešení – simplexová metoda, řešení s využitím softwaru, postoptimalizační analýza, dopravní problém, modely hromadné obsluhy a simulace Monte Carlo.

1.3 Matematický model úloh

Na počátku vždy stojí reálný systém, který je obvykle velmi složitý, zahrnuje velké množství procesů či operací a různorodých omezení. Úkolem dobrého manažera je vybrat v reálném systému problém, který je třeba analyzovat, a ten zcela přesně formulovat.

- 22 -

Ekonomický model systému

Úkolem managementu je tedy sestavit zjednodušený model reálného ekonomického systému, který bude zahrnovat pouze nutné prvky popisující formulovaný problém. Je nezbytné stanovit cíl analýzy a následné optimalizace, popsat všechny operace či procesy (např. vyrábění výrobků, dělení materiálu, sestavování směsí, …), které mají na tento cíl vliv, popsat všechny činitele (např. spotřeba omezených kapacit zdrojů, dodržení stanovených požadavků) a slovně výstižně formulovat vztahy mezi vytyčeným cílem a zmíněnými procesy a činiteli.

Matematický model systému

Úkolem řešitele je následně tento problém převést do řeči matematiky, zvolit vhodné analytické metody, nalézt řešení a provést jeho slovní interpretaci. Pro skutečný výpočet je nutné formulovat model systému formálním matematickým způsobem, aby jej bylo možné vyřešit standardními postupy. Jde o čistě matematickou syntaxi analyzovaného systému. Cíl analýzy je obvykle vyjádřen jako funkce n proměnných (neznámých), kterou nazýváme účelová funkce, ozn. z = f(x), jejíž hodnotu máme obecně optimalizovat (buď maximalizovat, nebo minimalizovat), tedy nalézt vázaný extrém funkce více proměnných. Jednotlivým procesům odpovídá těchto n zavedených strukturních proměnných

(neznámých) značených obvykle x1, x2, …, xn, zapsaných zpravidla pomocí vektoru T x = (x1, x2, …, xn) . Nazýváme je strukturní neznámé (proměnné), po řadě zachycují počty realizací jednotlivých procesů či operací (např. počty jednotlivých druhů výrobků), je tedy hned zřejmé, že v reálném procesu nemohou nabývat záporných hodnot, hovoříme o podmínkách nezápornosti. Při řešení úloh LP hledáme takové T hodnoty neznámých x = (x1, x2, …, xn) , které zaručí nejlepší (buď maximální, nebo minimální) hodnotu účelové funkce. Při jejich zavedení je třeba důsledně dbát na jejich formulaci, včetně stanovení vhodné jednotky, což je důležité pro zápis v samotném výpočtu, dodržení konzistence modelu, stejně jako pro výslednou korektní interpretaci. Velikosti jednotlivých složek ovlivňují další podmínky. Omezení jednotlivými

činiteli bývá nejčastěji vyjádřeno ve formě rovnic či nerovnic, kde zmíněná intenzita aij je koeficientem u proměnné odpovídající vybranému procesu a disponibilní množství bi (požadavek či kapacita) je pravou stranou rovnice, resp. nerovnice. Zápisy těchto

- 23 - omezení nazýváme vlastní omezení úlohy. Podle nerovnostního znaménka je rozdělujeme na omezení kapacitní (typ „  “, např. omezení množstvím suroviny ve skladu potřebných k výrobě), požadavková (typ „  “, např. požadavek minimální denní dávky nějaké výživové komponenty jídelníčku) a určení (typ „=“, např. vyjádření potřeby expedice veškerého vyrobeného zboží), kterým se, můžeme-li, vyhýbáme, jelikož příliš omezují množinu přípustných řešení. Omezující podmínky chápeme ve vztahu konjunkce, vymezují přípustné kombinace hodnot proměnných.

1.4 Základní úlohy operačního výzkumu

Postačí-li v matematickém modelu nějakého ekonomického systému k vyjádření účelové funkce a všech vlastních omezení pouze lineárních rovnic a nerovnic, hovoříme o lineárním programování, v opačném případě o programování nelineárním. Podle charakteru úloh dále dělíme matematické modely na diskrétní nebo spojité, jednoparametrické nebo víceparametrické, stochastické nebo deterministické, analytické nebo simulační. Jejich stručný přehled je doplněn konkrétními příklady využití. Poznamenejme, že úlohy v praxi mívají často velký počet proměnných a omezení, jejich struktura je obvykle složitější, a je třeba matematické metody vhodně kombinovat a uzpůsobovat, příkladem může být např. koordinace záchranných prací při povodních, zahrnující mnoho různorodých aktivit.

1.4.1 Lineární programování

Jednou z nejrozšířenějších oblastí operačního výzkumu v praxi je lineární programování. Matematický model úloh lineárního programování (LP) má jedinou lineární účelovou funkci a vlastní omezení úlohy jsou popsána pouze lineárními rovnicemi a nerovnicemi. V ekonomické praxi se s těmito úlohami setkáváme nejčastěji. Mají být výhradní náplní budovaného předmětu Operační výzkum. Úlohou lineárního programování (nebo stručně LP, stejný anglický ekvivalent Linear Programming) s n neznámými a m vlastními omezeními, kde mn, jsou přirozená čísla, rozumíme úlohu nalézt extrém (maximalizovat nebo minimalizovat) účelovou funkci ve tvaru (Bazaraa, M. S. a kol. 2011, Kubišová, A. 2014)

z  c1x1  c2 x2 ...  cn xn (1.1) za podmínek (tzv. vlastních omezení) ve tvaru

- 24 -

a11x1  a12x2  ...  a1n xn  b1 a x  a x  ...  a x  b 21 1 22 2 1n n 2 (1.2) ......

am1 x1  am2 x2  ...  amn xn  bm a za podmínek nezápornosti proměnných

x j  0 pro každé j = 1, 2, …, n. (1.3)

Reálná čísla xj, kde j = 1, 2, …, n, nazýváme strukturní proměnné, reálná čísla aij, kde i = 1, 2, …, m, j = 1, 2, …, n, nazýváme strukturní koeficienty (v i-tém vlastním omezení u j-té strukturní proměnné), reálná čísla bi, kde i = 1, 2, …, m, nazýváme pravé strany nebo kapacity (i-tého vlastního omezení), reálná čísla cj, kde j = 1, 2, …, n, nazýváme cenové koeficienty (j-tého produktu či procesu). Matematickým modelem úlohy LP rozumíme zápis (1.1), (1.2), (1.3), případně také zkrácený obecný zápis nalezení extrému funkce z = cTx (1.4) za podmínek Ax  b (1.5) x ≥ 0, kde T c = (c1, c2, …, cn) je vektor cenových koeficientů, T x = (x1, x2, …, xn) je vektor strukturních proměnných, T b = (b1, b2, …, bm) je vektor pravých stran, x = (0; 0; …;0)T. je nulový vektor (n – složkový),

A = (aij) je matice strukturních koeficientů typu m x n. V (1.2), resp. (1.4) jsou všechna vlastní omezení typu „  “, obecněji můžeme připustit, že mohou být také typu „<“, „  “, „>“ nebo „=“.

S metodami lineárního programování se setkáváme v širokém spektru konkrétních aplikací. V rámci lineárního programování můžeme řešit celou škálu optimalizačních úloh, pro ilustraci uveďme několik základních typů ekonomických úloh se speciálními tvary jejich matematických modelů.

- 25 -

Úlohy výrobního plánování

V úlohách výrobního plánování je obvykle cílem určit strukturu výrobního programu tak, aby bylo dosaženo maximálního zisku či minimálních nákladů. Proměnné v modelu úlohy výrobního plánování představují nejčastěji objem produkce určitého druhu výrobku a omezující podmínky vycházejí z limitovaných výrobních kapacit, technologických podmínek, požadavků odběratelů apod. Úlohy tedy mohou být maximalizační i minimalizační, omezující podmínky mohou být kapacitní (omezené množství vstupních surovin), požadavkové (je-li stanoven minimální objem produkce) i podmínky určení (je-li stanoven přesný objem produkce, částka k proinvestování atd.). Nejznámější jsou jistě úlohy výrobního plánování, minimalizace provozních nákladů či maximalizace zisku, optimálního vytížení pracovníků, obráběcích strojů, operačních sálů nebo třeba nákladních jeřábů v přístavu. Uvedeme tři příklady úloh výrobního plánování, v prvním půjde o jednoduchou úlohu výrobního plánová, ve druhém mohou být některé produkované výrobky použity jako polotovary pro výrobky další, ve třetím půjde o plánování výroby na více období.

Příklad 1.1 Pro firmu, která vyrábí dva typy výrobků, sestavte optimální výrobní program s maximálním možným ziskem. Spotřeba výrobních činitelů, jejich kapacita a jednotkový zisk z obou typů výrobků jsou uvedeny v tabulce:

Tabulka 1 – Zadání – pevné kapacity

Spotřeba na jeden výrobek Kapacity výrobních činitelů typu A typu B

Surovina kg 2 4 36 Opracování h 3 3 42

ZISK Kč 50 80 max.

Zdroj: vlastní Příklad 1.2 Čokolatérie vyrábí čtyři druhy bonbónů K, L, M, N a prodává je jednotlivě se zavedenou cenou 5 Kč, 8 Kč, 6 Kč, 10 Kč za kus. Může je také kompletovat do bonboniér Ráj (10 ks K a 10 ks L), Sen (12 ks M a 12 ks N) a Touha (5 ks od každého druhu), které úspěšně prodává se zavedenou cenou 130 Kč, 180 Kč, 160 Kč. Bylo rozhodnuto, že bude vyrobeno alespoň 50 kusů bonboniér. Na výrobu jednoho

- 26 - bonbonu K se spotřebuje 5 g mléčné čokolády a 10 g náplně., na výrobu jednoho bonbonu L 10 g mléčné čokolády a 5 g oříšků, na výrobu jednoho bonbonu M padne 5 g hořké čokolády, 5 g náplně a 5 g oříšků a na výrobu jednoho bonbonu N 10 g hořké čokolády a 5 g oříšků. Před Vánoci má čokolatérie k dispozici ještě 10 kg mléčné čokolády, 6 kg hořké čokolády, 7 kg náplně a 3 kg oříšků, a tak hledá optimální rozvržení své produkce a prodeje, přičemž předpokládá, že se všechny výrobky jako obvykle prodají.

Příklad 1.3 Truhlářská firma zabývající se výrobou nábytku se zákazníkem uzavřela smlouvu na dodání 300 trojdílných a 600 dvoudílných skříní, které mají být připraveny k expedici za dva měsíce. Na trojdílnou skříň je potřeba 12 m2 dřeva a 5 hodin práce, na dvoudílnou skříň 9 m2 a 4 hodiny práce. V lednu má firma k dispozici 5 000 m2 materiálu a 4 000 hodin práce zaměstnanců, v únoru bude mít k dispozici 4 000 m2 materiálu a 2 000 hodin práce zaměstnanců. Materiál, který firma v lednu nebude potřebovat, může uložit v sousedově skladovacím prostoru za 5 Kč za 1 m2 uloženého materiálu na dobu 1 měsíce. Skříně vyrobené v lednu může uložit do termínu expedice tamtéž, každou trojdílnou skříň za 80 Kč, každou dvojdílnou skříň za 60 Kč na měsíc. Lednové výrobní náklady na zhotovení jedné trojdílné skříně jsou 2 500 Kč, na zhotovení dvojdílné skříně pak 1 800 Kč. Vzhledem k plánovanému zdražení energií budou ale tyto výrobní náklady v únoru už o 20 % vyšší. Naplánujte výrobu skříní tak, aby byly minimalizovány veškeré náklady související s touto zakázkou.

Směšovací úlohy

Směšovací problém (blending problem) má obecnější využití. Cílem je vytvořit směs optimálního složení z jednotlivých dostupných komponent tak, aby bylo dosaženo maximálního zisku či minimálních nákladů. Proměnné v modelu směšovací úlohy představují množství jednotlivých komponent (v absolutních či relativních číslech) a omezující podmínky vycházejí z požadovaných vlastností připravované směsi. Úlohy mohou být jak maximalizační, tak minimalizační, vlastní omezení mohou být všech tří zmíněných typů. Mezi směšovací úlohy patří například smísení nafty daných parametrů v ropných rafineriích, ale také sestavení optimálního investičního portfolia z nabízených finančních produktů. Jako speciální směšovací úlohy mohou být chápány nutriční problém (návrh optimálního jídelníčku), optimalizace finančního portfolia (směs finančních investic) i strategie reklamy (směs reklamních médií). - 27 -

Příklad 1.4 Rafinérie vyprodukovala dva základní druhy surového benzínu v množstvích 300 hl SB1 a 700 hl SB2. SB1 má oktanové číslo 104 a tlak par 50 kPa a SB2 má oktanové číslo 94 a tlak par 90 kPa. Z nich je možné vhodným smísením vyrobit „motorový benzín“ nebo „letecký benzín“: motorový benzín s požadovaným oktanovým číslem alespoň 96 a tlakem par nejvýš 80 kPa a letecký benzín s požadovaným oktanovým číslem alespoň 102 a tlakem par nejvýše 60 kPa. Přitom leteckého benzínu se neprodá více než 200 hl. Výsledné oktanové číslo (výsledný tlak par) směsi se určí jako vážený aritmetický průměr hodnot oktanových čísel (tlaků par) obou dílčích komponent, kde vahou je objem těchto komponent. Navrhněte optimální způsob míchání obou směsí, aby bylo dosaženo maximální tržby, pokud cena motorového benzínu je 37,20 Kč a cena leteckého benzínu je 48,50 Kč za litr.  Nutriční problém V oblasti dietologie je často formulován problém vhodných nutričních komponent (potravin) k zařazení do jídelníčku. Cílem je určit optimální složení denní dávky výživy pacienta tak, aby bylo dosaženo minimální ceny potravin či maximálního přísunu naordinované látky. Proměnné v modelu úlohy nutričního problému představují množství daných nutričních komponent zařazených do jídelníčku a omezující podmínky vycházejí z pokynů dietologa. Tyto úlohy jsou obvykle minimalizační (co nejnižší náklady), případně také maximalizační (co nejvyšší přísun vápníku), omezující podmínky mohou být kapacitní (maximální hranice pro přísun tuků), požadavková (minimální hranice pro přísun bílkovin) i podmínky určení (dodržení přesně stanovené denní dávky vápníku), často se setkáváme také s podmínkou kombinující kapacitní a požadavkové vyjádření, tedy intervalově omezenými pravými stranami, při řešení je třeba je rozepsat do dvou nerovnic.

Příklad 1.5 Je třeba sestavit vyvážený jídelníček pro štěně z pěti druhů granulí G1, G2, G3, G4 a G5, které se prodávají ve 100gramových baleních za cenu 56 Kč, 32 Kč, 80 Kč, 105 Kč a 60 Kč. Složení jednotlivých balení granulí je uvedeno v Tabulce 2. Podle doporučení veterináře musí štěně přijmout celkem pět 100g dávek denně. Doporučená celková denní energetická hodnota je minimálně 8 000 kcal, obsah bílkovin minimálně 250 gramů, obsah tuků nejméně 500 gramů a maximálně 250 gramů,

- 28 - vápníku alespoň 5 mg a fosforu mezi 20 mg a 30 mg. Štěněti je třeba podat také 2 litry vody denně.

Tabulka 2 – Zadání – složení 100g porce jednotlivých druhů granulí Druh granulí G1 G2 G3 G4 G5 Omezení Energie [kcal] 160 80 200 180 100 alespoň 800 kcal Bílkoviny [g] 50 20 70 50 30 alespoň 250 g Tuky [g] 10 30 20 20 10 min. 50 g a max. 250 g Vápník [g] 3 2 2 1 1 alespoň 5 mg Fosfor [mg] 5 10 0 8 0 mezi 20 a 30 mg Cena [mg] 56 32 80 105 60 co nejnižší

Zdroj: vlastní Jídelníček je třeba rozvrhnout tak, aby byl co nejlevnější, při požadavku na pestrost stravy, kdy žádný druh granulí nesmí být podán štěněti více než dvakrát za jeden den.  Úlohy finančního plánování Mezi standardní úlohy LP patří také tzv. optimalizace finančního portfolia. Cílem je určit objem investic do jednotlivých investičních variant tak, aby bylo dosaženo maximálního očekávaného výnosu či minimálního rizika. Proměnné v modelu úlohy finančního plánování představují objem investic (v absolutních či relativních číslech) a omezující podmínky vycházejí z investiční strategie investora limitující výše investic do jednotlivých investičních variant. Úlohy tedy mohou být maximalizační i minimalizační, omezující podmínky mohou být kapacitní (minimální hranice očekávaného výnosu), požadavkové (maximální hranice podstupovaného rizika) i podmínky určení (je-li stanovena částka k proinvestování).

Příklad 1.6 Navrhněte optimální skladbu investičního portfolia, chcete-li investovat jeden milion Kč a máte-li na výběr z pěti druhů cenných papírů, u kterých je znám očekávaný roční výnos (v %) a též byla odhadnuta jejich rizikovost (koeficient z celočíselné stupnice 0 – 10 od nejnižší k nejvyšší rizikovosti), jak popisuje Tabulka 3. Přitom investor požaduje, aby CP1 nebo CP2 byly nakoupeny alespoň v hodnotě 400 000 Kč, CP5 nejvýše v hodnotě 300 000 Kč a celková míra rizika portfolia, definovaná jako vážený průměr koeficientů rizikovosti jednotlivých variant, nesmí přesáhnout 4.

- 29 -

Tabulka 3 – Zadání – parametry cenných papírů Očekávaný roční výnos Koeficient rizikovosti Cenný papír (%) (0 – 10) CP1 6,5 1 CP2 7 3 CP3 9 5 CP4 11 7 CP5 15 10

Zdroj: vlastní  Plánování reklamy V oblasti marketingu se s úlohou LP setkáváme při výběru vhodných typů médií pro umístění reklamy. Cílem je určit optimální počet uvedení reklamy v médiích jednotlivých typů tak, aby bylo dosaženo maximálního účinku reklamy (počet osob oslovených reklamou v dané cílové skupině např. dospívající mládež nebo hodnoty v marketingu definované charakteristiky sledovanosti v cílové skupině). Proměnné v modelu úlohy plánování reklamy představují počet uvedení reklamy v jednotlivých typech médií a omezující podmínky vycházejí z marketingové strategie limitované počty opakování reklamy. Tyto úlohy jsou obvykle maximalizační, omezující podmínky mohou být kapacitní (omezení výší rozpočtu reklamní kampaně) i požadavková (vymezení primární cílové skupiny), apod.

Příklad 1.7 Reklamní agentura dostala zakázku na zpracování měsíční reklamní kampaně penzijního připojištění. Celkový objem prostředků uvolněný na tuto kampaň je 10 milionů Kč. Reklama může být umístěna do pěti médií: televize, rozhlas, časopisy, denní tisk a billboardy. Odhaduje se, že v přepočtu na vynaložených 1 000 Kč osloví reklama v televizi 750 klientů, reklama v rozhlase 420 klientů, skrze časopisy 300 a skrze denní tisk 360 klientů a pomocí billboardů 180 klientů. Do televize a rozhlasu se plánuje investovat maximálně polovinu plánovaných finančních prostředků, do každého z médií ale nejméně 10 % a nejvýše 30 % těchto prostředků. Je také známa struktura věku, příjmů a vzdělání osob jednotlivými médii oslovovaná (opět vyjádřená počtem oslovených osob v přepočtu na vynaložených 1 000 Kč), viz Tabulka 4.

- 30 -

Tabulka 4 – Zadání – počet oslovených osob na každý investovaný tisíc Kč Média televize rozhlas časopis denní tisk billboard Věk 30 – 50 320 280 140 240 120 Nad 15 000 Kč 120 90 60 60 50 Alespoň SŠ 350 200 120 140 60

Zdroj: vlastní Reklamu je třeba rozvrhnout tak, aby bylo osloveno alespoň 2,5 milionu osob ve věku 30 – 50 let, 0,8 milionu osob s příjmy nad 15 000Kč a alespoň 1,5 milionu osob s minimálně středoškolským vzděláním a přitom aby bylo dosaženo maximálního možného počtu oslovených klientů.

Úlohy o dělení materiálu

Problém dělení materiálu (cutting stock problem) nachází své opodstatnění při potřebě optimálně využít materiál stanovené délky, plochy či objemu bez zbytečného plýtvání. Při důkladnějším promyšlení problému stanovení optimálního řezného plánu popisujícího dělení větších standardizovaných celků na menší části požadovaných rozměrů lze též sestavit matematický model úlohy LP.  Řezný plán Při sestavování řezných plánů pro jednorozměrné tyče či dvojrozměrné plechové pláty musí jít vždy o dělení jednorozměrné (rozřezání, ne vyřezávání z desky). Cílem je určit optimální počet celků rozdělených jednotlivými způsoby řezu tak, aby bylo dosaženo minimálního odpadu, počtu řezů či spotřeby celků. Obvykle je ovšem celá řada způsobů, jak standardizovaný celek rozdělit na části požadovaných rozměrů. Navíc je na řešiteli úlohy odhalit všechny tyto způsoby k následné analýze, případně a priori vyřadit nevhodné (s příliš velkým odpadem), aby zbytečně nezvětšovaly rozměry soustavy nerovnic vlastních omezení. Proměnné v modelu úloh o dělení materiálu představují počty realizací (použití) jednotlivých způsobů a omezující podmínky vycházejí z požadavků na množství částí jednotlivých poptávaných rozměrů. Tyto úlohy jsou typicky minimalizační, omezující podmínky obvykle požadavkové.

Příklad 1.8 Na dřevěné obložení místnosti budou použita čtyřmetrová prkna o šířce 10 cm. Je třeba obložit 8 metrů stěny svisle kladenými prkny o délce 120 cm, v oblasti oken

- 31 - budou obloženy celkem 4 m prkny o délce 80 cm a na šikmé stropní podhledy bude potřeba položit 4 m prken o délce 240 cm. Kolik prken je třeba koupit, má-li být dosaženo minimálního odpadu?  Problém batohu Komplikovanější variantou je tzv. úloha batohu (packing problem) využívaná při plnění prostoru omezené kapacity některými z daných předmětů, aby bylo dosaženo nejvyšší ceny (hmotnosti, užitku, …) zabalených předmětů. Kombinatorickou metodou zajistí optimální řešení efektivní skládání balíků do nákladního prostoru či konstrukci šablon pro vyřezávání vícerozměrných dílů specifických tvarů ve dvourozměrné variantě úlohy.

Distribuční úlohy

 Dopravní problém V oblasti distribuce nějaké komodity od m dodavatelů k n odběratelům je často formulován problém stanovit optimální způsob přepravy, jsou-li známy náklady na přepravu jednotky komodity mezi jednotlivými místy, kapacity jednotlivých dodavatelů a požadavky jednotlivých odběratelů (transportation problem, distribution problem). Cílem je naplánovat rozvezení komodity tak, aby bylo dosaženo minimálního rozsahu přepravy. Proměnné v modelu úlohy dopravního problému představují množství komodity přepravené od i-tého dodavatele k j-tému odběrateli. Tyto úlohy jsou minimalizační, omezující podmínky tvoří výhradně rovnice. Tento specifický tvar matematického modelu vyžaduje speciální metodu hledání řešení pomocí zápisu do tzv. dopravní tabulky. Rozvoz jablek k moštárnám bude levnější, pokud budeme využívat co nejkratších cest, optimálního výkonu vodní elektrárny dosáhneme optimální distribucí celkového průtoku elektrárnou mezi jednotlivé turbíny. Dopravní problém se objevuje např. v kamionové přepravě komodit, tzv. kontejnerový problém (container problem) při železniční či lodní dopravě, kde je přeprava komodity realizována v kontejnerech konstantního objemu, jedná se pak navíc o úlohu celočíselného programování. Úlohy se vyskytují v různých složitostech: základní distribuční problém řeší pouze rozvoz komodity zákazníkům, jindy je třeba zohlednit cesty přes překladiště a s tím souvisejícího pořadí nakládání, pro tento složitější typ úlohy se používá pojem shipping plan.

- 32 -

Příklad 1.9 Ve třech sadech bylo postupně sklizeno 180, 80 a 40 tun jablek, která mají být dopravena ke čtyřem zelinářům, kteří postupně požadují 100, 50, 60 a 90 tun. Přitom vzdálenosti (v km) z jednotlivých sadů k jednotlivým zelinářům ukazuje Tabulka 5. Určete optimální způsob přepravy jablek ze sadů k zelinářům tak, aby bylo dosaženo minimálního rozsahu přepravy (skalární součin množství jablek a ujeté vzdálenosti) [tkm].

Tabulka 5 – Zadání – vzdálenosti ze sadů k zelinářům Vzdálenosti [km] Z1 Z2 Z3 Z4 SI 3 2 5 3 SII 5 12 4 6 SIII 10 7 7 12

Zdroj: vlastní  Přiřazovací problém Jde o jednu ze základní logistických úloh, jedná se vlastně o speciální případ dopravního problému, kdy m dodavatelů zásobuje m odběratelů, kdy jdou všechny požadavky a všechny kapacity rovny 1. Úloha je komplikovaná tím, že hledá celočíselné řešení a pracuje se silně degenerovanými řešeními, vyžaduje proto speciální tzv. Maďarskou metodu nalezení optimálního řešení. Přiřazovací problém (assigment problem) má mnoho obměn, jako je třeba nejlevnější dopravení tří jeřábů stavební firmy z původních stanovišť na nová staveniště, nejefektivnější přistavení taxíků volajícím zákazníkům, nejrozumnější sestavení manželských párů, usnadní rozdělování služeb zdravotního či leteckého personálu, tvorbu rozvrhu hodin pro studijní skupiny, učitele a místnosti, sestavování jízdního řádu, rozdělení přednášejících a posluchačů na konferenci do sekcí dle preferovaných témat. Plánování transportu pacientů, orgánů, snižuje čekací dobu na operaci.

Příklad 1.10 Vytvořte manželské páry z pěti mužů a pěti žen, jestliže psychologický test pro každého z mužů určil obodováním míru toho, jak moc se hodí k jednotlivým ženám. Vyberte každému muži ženu tak, aby bylo celkově dosaženo maximálního součtu bodů všech pěti svazků.

- 33 -

 Okružní dopravní problém Pod názvy problém čínského pošťáka či problém obchodního cestujícího (travelling salesman problem), který musí projet právě jednou každé ze seznamu m míst nejkratší cestou, našel své uplatnění nejen u přepravních zásilkových agentur, ale také třeba při optimalizaci pohybu vrtacího ramene mezi všemi otvory, které je nutné v dílu vyvrtat.

Příklad 1.11 Rozhodněte, v jakém pořadí projet všechna hlavní města USA, pokud každé smíte navštívit pouze jednou a chcete najet co nejméně kilometrů.

1.4.2 Vícekriteriální rozhodování

Na rozdíl od úloh, kdy byla výhodnost řešení posuzována podle jediného optimalizačního kritéria, při řešení úloh vícekriteriálního rozhodování (anglický ekvivalent MCDA pro multiple-criteria decision making/analysis) hledáme optimální T hodnoty neznámých x = (x1, x2, …, xn) , které posuzujeme zároveň podle několika navzájem často rozporuplných kritérií (varianta hodnocená podle jednoho kritéria jako nejlepší nemusí být jako nejlepší hodnocena podle kritéria dalšího). Matematický model úloh vícekriteriálního rozhodování tedy obsahuje několik účelových funkcí. Podle toho, jak jsou definovány množiny rozhodovacích variant, hovoříme buď o úlohách vícekriteriálního lineárního programování, nebo vícekriteriálního hodnocení variant. Je-li množina všech posuzovaných variant popsána implicitně, tedy soustavou omezujících podmínek, hovoříme o úlohách vícekriteriálního programování, pokud jsou navíc všechny vztahy popsány lineární funkcí, hovoříme o úlohách vícekriteriálního lineárního programování. V dalším textu může být pro úlohu vícekriteriálního lineárního programování použita také zkratka úloha VLP (nebo její anglický ekvivalent MCLP pro multiple criteria linear programming).

Matematickým modelem úlohy vícekriteriálního lineárního programování s n neznámými, m vlastními omezeními a k rozhodovacími kritérii, kde k, m, n ∈ N, rozumíme úlohu nalézt „optimum“

- 34 -

z1  c11x1  c12x2  ...  c1n xn z  c x  c x  c x 2 21 1 22 2 2n n (1.6) ......

zk  ck1 x1  ck 2 x2  ckn xn za podmínek (tzv. vlastních omezení) ve tvaru

a11x1  a12x2  ...  a1n xn  b1 a x  a x  ...  a x  b 21 1 22 2 1n n 2 (1.7) ......

am1 x1  am2 x2  ...  amn xn  bm a za podmínek nezápornosti proměnných

x j  0 pro každé j = 1, 2, …, n. (1.8)

Reálná čísla xj, kde j = 1, 2,…, n, nazýváme strukturní neznámé či proměnné,

reálná čísla aij, kde i = 1, 2,…, m, j = 1, 2, …, n, nazýváme strukturní koeficienty (v i-tém vlastním omezení u j-té strukturní neznámé),

reálná čísla bi, kde i = 1, 2,…, m, nazýváme požadavková čísla či pravé strany (i-tého vlastního omezení),

reálná čísla chj, kde j = 1, 2,…, n a h = 1, 2,…, k, nazýváme ceny či cenové koeficienty (h-tého hodnotícího kritéria u j-tého procesu). Matematickým modelem úlohy VLP rozumíme zápis (1.6), (1.7), (1.8), případně také zkrácený obecný zápis nalezení extrému funkce

1T z1 = c x 2T z2 = c x (1.9) … kT zk = c x za podmínek Ax  b (1.10) x ≥ 0, kde h T c = (ch1, ch2, …, chn) je vektor cenových koeficientů h-tého kritéria, T x = (x1, x2, …, xn) je vektor strukturních proměnných, T b = (b1, b2, …, bm) je vektor pravých stran, x = (0; 0; …;0)T. je nulový vektor (n – složkový),

A = (aij) je matice strukturních koeficientů typu m x n.

- 35 -

V zápise (1.7), resp. (1.10) jsou všechna vlastní omezení typu „  “, obecněji můžeme připustit, že mohou být také typu „<“, „  “, „>“ nebo „=“. Opět pro ilustraci uveďme několik základních typů úloh vícekriteriálního lineárního programování.

 Úlohy vícekriteriálního výrobního plánování

V úlohách vícekriteriálního výrobního plánování je obvykle cílem určit strukturu výrobního programu tak, aby bylo dosaženo co nejlepší hodnoty všech účelových funkcí, přičemž tyto požadavky jsou často protichůdné a nehovoříme o optimálním, ale spíše o tzv. kompromisním řešení, omezující podmínky mohou být kapacitní (omezené množství vstupních surovin), požadavkové (je-li stanoven minimální objem produkce) i podmínky určení (je-li stanoven přesný objem produkce, částka k proinvestování atd.). Matematický model úloh vícekriteriálního rozhodování tedy obsahuje několik účelových funkcí, včetně vyjádření míry důležitosti každé z nich. Úlohy vedoucí na použití metod vícekriteriálního lineárního programování (multicriteria programming) jsou analogií předchozích úloh, ovšem při kompromisní optimalizaci více kritérií zároveň, jako např. hledání optimálního výrobního programu maximalizujícího zisk a minimalizujícího spotřebu energie.

Příklad 1.12 Jednotková spotřeba dvou druhů surovin a elektrické energie při výrobě tří typů výrobků je zaznamenána v tabulce. K dispozici má 8 000 kg první a 500 t druhé suroviny.

Tabulka 6 – Zadání – jednotková spotřeba surovin a jednotkový zisk Jednotková spotřeba jednotka typ Z1 typ Z2 typ Z3 suroviny S1 kg 80 60 40 suroviny S2 t 1 0 4 energie kWh 6 8 4 Jednotkový zisk Kč 500 450 300

Zdroj: vlastní Navrhněte optimální výrobní program maximalizující dosažený zisk a minimalizující spotřebu energie za předpokladu, že vedení firmy přikládá výši dosaženého zisku čtyřikrát větší váhu než snižování spotřeby energie.

- 36 -

Vícekriteriální hodnocení variant

Pokud je množina posuzovaných variant popsána explicitně konkrétním výčtem všech prvků, hovoříme o úlohách vícekriteriálního hodnocení variant (multicriteria evaluation of variants, někdy se též používá pojem vícekriteriální analýza variant). V dalším textu může být pro úlohu vícekriteriálního hodnocení variant použita také zkratka úloha VHV.

Matematickým modelem úlohy vícekriteriálního hodnocení variant Xi, i = 1,

2, …, n podle kritérií Yj, j = 1, 2, …, k, popsaných vektorem (yi1, yi2, …, yik) včetně typu optimalizace pro každé i, kde k, n ∈ , rozumíme úlohu nalézt „optimum“ pro tzv. kriteriální matici

Y1 Y1 Yk

X1 y11 y12 . . . y1k X y y . . . y 2 21 22 2k (1.11) ...... Xn yn1 yn2 . . . ynk

reálná čísla yij , kde i = 1, 2, …, n, j = 1, 2, …, k, nazýváme kriteriální hodnoty varianty Xi podle kritéria Yj. Tyto úlohy můžeme rozdělit do tří skupin podle cíle, který může být následující:  Výběr jediné varianty V úlohách, kde je třeba se rozhodnout pro realizaci jediné varianty, hledáme tzv. kompromisní variantu. Určování pořadí ostatních horších variant je v tomto případě bezpředmětné. Jde například o rozhodování při nákupu nového automobilu, obsazení volného pracovního místa jedním z uchazečů.

Příklad 1.13 Tabulka 7 ukazuje parametry důležité pro nákup automatické pračky: cena v Kč, poruchovost v %, spotřeba vody při základním cyklu v litrech, počet programů v jednotkách ks, hlučnost v dB a výkon v počtech otáček pro čtyři vybrané typy praček.

- 37 -

Tabulka 7 – Zadání – parametry hodnocených praček

yij cena poruchy voda programy hlučnost výkon typ min. min. min. max. min. max. LGE 26 400 12 42 14 60 1 600 FAG 18 200 8 48 24 72 1 800 ETA 12 800 2 50 12 80 1 200 WHI 16 500 10 58 16 72 1 400

Zdroj: vlastní Kterou pračku zákazník koupí, rozhoduje-li se podle funkce užitku a jím stanovené preference jednotlivých kritérií jsou po řadě vyjádřeny normovanými vahami 1/15, 1/5, 2/15, 1/5, 2/15 a 4/15.  Uspořádání variant V úlohách, kde je třeba seřadit varianty sestupně od nejlepší po nejhorší, hovoříme o uspořádání variant. Na rozdíl od úloh LP s jediným kritériem je třeba předem stanovit váhy jednotlivých rozhodovacích kritérií, které vyplývají z preferencí rozhodovatele. Teprve stanovením těchto vah kritérií jsou pojmy nejlepší a nejhorší určeny jednoznačně. Jde například o seřazení stejného zboží různých značek podle kvality ve spotřebitelském testu, hodnocení vyspělosti zemí, bodování sportovních výkonů podle více parametrů nebo sestavení žebříčku kvality restaurací.

Příklad 1.14 V rámci spotřebitelského testu sestavte žebříček automatických praček z předchozího příkladu podle funkce užitku.  Třídění variant V úlohách, kde je třeba rozdělit varianty podle jejich efektivity do několika kvalitativních tříd, hovoříme o tzv. klasifikaci variant. Jde například o rozhodnutí o přijetí jednotlivých uchazečů o studium v rámci přijímacího řízení, klasifikace klientů banky apod.

Příklad 1.15 Rozhodněte, kterých 60 ze všech 158 přihlášených účastníků přijímacího řízení na VŠ bude přijato, pokud znáte jejich průměrnou známku z vysvědčení na SŠ, úspěšnost v testu z anglického jazyka a v testu všeobecných znalostí (viz Tabulka 8).

- 38 -

Tabulka 8 – Zadání – hodnocení uchazečů o studium Průměr Uchazeč Test z Aj Test z M na SŠ 1 2,54 20 % 82 % 2 1,32 55 % 46 % … … … …

Zdroj: vlastní Důležitost jednotlivých kritérií je vyjádřena poměrem 1:2:2.

1.4.3 Celočíselné programování

Pokud do matematického modelu úlohy lineárního programování doplníme podmínku celočíselnosti proměnných

x j  0 pro každé j = 1, 2, …, n, (1.12) hovoříme o tzv. úlohách celočíselného (lineárního) programování. Jsou-li podmínky celočíselnosti kladeny na všechny proměnné matematického modelu, hovoříme o ryze celočíselných úlohách LP (s anglickým ekvivalentem PILP pro Pure- Integer Programming), jsou-li kladeny jenom na některé z nich, hovoříme o smíšeně celočíselných úlohách LP (s anglickým ekvivalentem MILP pro Mixed-Integer Programming).

Nedělitelné komodity

Řešení celočíselných úloh LP se v praxi vyskytují velmi často, jejich řešení je ovšem výpočetně velmi náročné. Požadavek celočíselnosti automaticky vyvstává při nedělitelných komoditách u řezných plánů, kontejnerových problémů, přiřazovacích úloh, sestavování jídelníčku z dílčích porcí pokrmů apod.

1.4.4 Úlohy LP za nejistoty vstupních parametrů

Ne vždy je možné pro úlohy LP sestavit matematický model v obvyklém tvaru s pevně stanovenými parametry, pro který je pomocí simplexové metody nalezeno přesné optimální řešení. Parametry úlohy je v tom případě třeba nahradit jejich odhadem. Hovoříme o optimalizaci za nejistoty (optimization with uncertainity) Pozornost věnujme pouze úlohám s nejistými kapacitami (u nejistých cenových

- 39 - koeficientů jednotlivých produktů by intervalová analýza nebyla tolik zajímavá, naopak plánovaná struktura výroby bývá obvykle zadavatelem popsána přesně). I v úlohách LP, kde nejsou známy přesné kapacity výrobních činitelů, ale pouze jejich odhady, se můžeme vypořádat se zápisem vágních či nejistých parametrů a místo přesného optimálního řešení tak získat alespoň jeho odhad. Praktické aplikace intervalového či fuzzy pojetí matematických modelů v ekonomických i technických úlohách nejsou bohužel obvyklé, i když na rozdíl od „klasických“ modelů umožňují respektovat nepřesnosti vstupních údajů.

Intervalové kapacity

Jednodušším přístupem je nahrazení přesné kapacity v zápisu matematického modelu číslem intervalovým, které vymezuje, jaké nejmenší a jaké nejvyšší hodnoty může případně daná kapacita dosáhnout. Realizace žádné z hodnot intervalu není upřednostněna. Řešení získáme pomocí metod intervalové analýzy.

Příklad 1.16 Pro firmu, která vyrábí dva typy výrobků, sestavte optimální výrobní program s maximálním možným ziskem. Spotřeba výrobních činitelů, horní a dolní odhady jejich kapacit a jednotkový zisk z obou typů výrobků jsou uvedeny v tabulce (viz Tabulka 9).

Tabulka 9 – Zadání – intervalové kapacity

Spotřeba na jeden výrobek Odhad kapacit

výrobních činitelů typu A typu B min. max.

Surovina kg 2 4 32 40 Opracování h 3 3 36 45

ZISK Kč 50 80 max.

Zdroj: vlastní Rozhodněte dále, zda je v dané situaci dosažitelný zisk ve výši 400 tisíc Kč, 820 tisíc Kč, resp. 1 milion Kč, může-li jít v tom případě o hodnotu optimální a jaké konkrétní počty výrobků obou typů tento optimální zisk zaručují.

Fuzzy kapacity

Komplikovanějším, ale realitě ještě bližším přístupem je nahrazení přesné kapacity v zápisu matematického modelu fuzzy číslem, které vymezuje, jaké nejmenší a jaké nejvyšší hodnoty může případně daná kapacita dosáhnout, přičemž je stanovena - 40 - také pravděpodobnost realizace každé z hodnot intervalu. Řešení získáme pomocí metod fuzzy analýzy. Fuzzy modely se uplatňují např. ve vodním hospodářství (odhady srážek, hodnocení znečištění apod.).

Příklad 1.17 Pro firmu, která vyrábí dva typy výrobků, sestavte optimální výrobní program s maximálním možným ziskem v případě, že rozhodovatel požaduje minimální hladinu příslušnosti optimálního řešení alespoň na úrovni 0,8. Spotřeba výrobních činitelů a horní a dolní meze jejich kapacit (včetně varianty s hladinou příslušnosti 1 ve sloupci „nej.“) a jednotkový zisk z prodeje obou typů výrobků uvádí Tabulka 10.

Tabulka 10 – Zadání – fuzzy kapacity

Spotřeba na jeden výrobek Odhad kapacit

výrobních činitelů typu A typu B min. nej. max.

Surovina kg 2 4 32 36 40 Opracování h 3 3 36 42 45

ZISK Kč 50 80 max.

Zdroj: vlastní 1.4.5 Složité rozhodovací úlohy

Na rozdíl od základních úloh LP jsou řešeny také složitější rozhodovací úlohy, které proto při hledání řešení vyžadují také mnohem složitější optimalizační metody. Můžeme sem zařadit jak klasické úlohy s velkým počtem proměnných, tak výše popsané úlohy s neurčitostí parametrů úlohy vícekriteriální. Doplňme je ještě následujícími typy úloh, které však už nejsou předmětem našeho zájmu.

Plánování projektů

Úlohy projektového managementu (řízení projektů), kde se plánování projektů skládá z mnoha oddělených aktivit, které jsou na sobě navzájem závislé a případně mohou probíhat současně. Můžeme modelovat např. projekt stavby domu (zdění může započít po doručení materiálu, stavba střechy je podmíněna dokončením nosných zdí, jiné činnosti mohou naopak probíhat současně). Nejpoužívanější metodou je tzv. síťová analýza, ke komerčním plánovacím softwarům patří např. MS Project. Vytváří se síťový graf zleva chronologicky uspořádaných aktivit projektu reprezentující životní cyklus projektu. Nevyřešeným

- 41 - problémem je dosud způsob zaznamenání tzv. smyček. Nejdelší možnou cestu od počátku do konce projektu zaznamenává kritická cesta, jejíž nedodržení způsobí zpomalení celého projektu, jehož časová délka má být optimalizována. Stanovuje se optimistický, pesimistický a nejpravděpodobnější odhad realizace celého projektu.

Teorie grafů

Reálnými problémy, kde objekty a vztahy mezi nimi lze modelovat pomocí uzlů (vrcholů) a jejich spojnic (hran), se zabývá teorie grafů (graph theory). Teorie grafů nachází uplatnění při vymezování spádové oblasti záchranné služby, optimální rozmístění nádob na separovaný odpad, rozmístění různých vysílačů, stacionárních či pohyblivých družic nebo optimální vedení telekomunikačních sítí, ve stavebnictví optimální vedení inženýrských sítí. Teorie grafů se uplatňuje právě při řízení projektů, jejichž analýzu a řešení usnadní sestavení orientovaného grafu, kde jsou jednotlivé činnosti reprezentovány hranami ohodnocenými časovým údajem jejich trvání.

Nelineární programování

Pokud účelová funkce není lineární, hovoříme o tzv. nelineárním programování (anglický ekvivalent NLP pro Non-Linear Programming). Úlohy potom často mají velký počet lokálních extrémů a často také nesou velké problémy s jejich hledáním. Je-li speciálně účelová funkce kvadratická a konvexní a všechna vlastní omezení lineární, hovoříme o tzv. kvadratickém programování (anglický ekvivalent QP pro ). Zahrnuje velké množství přesných i heuristických metod hledání lokálních i globálních, vázaných i volných extrémů, a to jak pro jednokriteriální, tak i pro vícekriteriální optimalizace. Využívá se také k aproximaci složitějších úloh. Patří sem například úlohy týkající se navržení optimálního pokrytí nějaké oblasti satelitním či radiovým signálem, ve statistických metodách nachází uplatnění metoda nejmenších čtverců.

Dynamické programování

Jsou-li omezující podmínky funkcemi nějakého parametru, kterým je nejčastěji čas, hovoříme o dynamickém programování, které se zabývá modelováním složitějších víceetapových optimalizačních problémů dělitelných na vzájemně navazující dílčí

- 42 - podproblémy. V závislosti na časovém parametru se systém v průběhu procesu nachází vždy v některém z přípustných stavů, v jistých okamžicích je třeba vybrat z množiny možných rozhodnutí, které má opět za následek přechod do dalšího stavu. Strategií nazýváme posloupnost těchto stavů systému a rozhodnutí, hledáme posloupnost s nejlepší oceněním. K analýze složitých systémů se často využívá simulací, které modelují a analyzují jejich fungování bez skutečné realizace a v kratším než reálném čase.  Teorie hromadné obsluhy Teorie hromadné obsluhy je dalším typem úloh dynamického programování, zabývá se zefektivňováním fungování systémů, ve kterých je třeba postupně obsloužit všechny jednotky, jejichž požadavky jsou postupně plněny na tzv. obslužných linkách. Úkolem je najít nejefektivnější způsob odbavení těchto požadavků. Název teorie front (Queueing Theory) vychází ze vznikajících situací, kdy jednotky na odbavení musí čekat, což je třeba eliminovat vhodným časovým uspořádáním odbavování. Příkladem může být řízení silničních křižovatek využívajících indukčních smyček, koordinace leteckého či železničního provozu (odbavují se čekající dopravní prostředky, optimalizací v nákladní dopravě se zabývá obor logistika), navrhování nejlepší výrobní linky (odbavují se výrobky), vhodné posílení linek MHD, počtu pokladních v supermarketu či vhodného plánování operačních výkonů (odbavují se cestující, zákazníci, pacienti).  Teorie zásob Modely řízení zásob se zabývá tzv. teorie zásob (Inventory Theory) s cílem optimalizovat zásobovací proces a objem skladovaných zásob, kdy je třeba minimalizovat náklady spojené s objednáváním, vydáváním a držením zásob na skladě.  Problém obnovy Modely obnovy se zabývají systémy, jejichž prvky po jisté době selhávají, životnost těchto prvků je náhodná veličina, optimalizace jejich údržby spočívá v tom, že jsou vyměňovány v nejvhodnějších okamžicích, které je třeba odhadnout, jedná se o stochastický problém.

Stochastické programování

Stochastické programování se zabývá optimalizačními úlohami, ve kterých vystupují jako parametry vlastních omezení náhodné veličiny, řeší se pomocí metod pravděpodobnostního počtu a i jejich výsledky mají charakter náhodné veličiny.

- 43 -

Stochastické procesy lze tedy řadit také mezi úlohy s neurčitostmi vstupních údajů. Tento přístup se používá k popisu chování systémů vyvíjejících se v čase, hovoříme o stochastických procesech, speciálním případem jsou tzv. Markovovy řetězce a Markovovy procesy. V pojistné matematice se tyto metody uplatňují např. při stanovování pojistného v systémech bonus – malus podle počtu nehod v předchozích letech. Mezi úlohy stochastického programování patří sestavení výrobního programu maximalizujícího zisk, není-li poptávka zaručena a je náhodnou veličinou, naplánování přepravy minimalizující náklady, jsou-li na rozdíl od základní dopravní úlohy požadavky odběratelů náhodné veličiny či sestavení optimálního portfolia cenných papírů maximalizujícího výnos, jestliže výnosy jednotlivých cenných papírů jsou náhodné veličiny. Uplatní se v pojistné matematice, meteorologii či předvolebních strategiích. Patří sem i některé úlohy výše zmíněného dynamického programování, jsou-li některé parametry náhodnými veličinami (například nejistota dodávek, odbytu, životnosti jednotek systému, apod.)

Teorie her

O úlohách teorie her hovoříme, pokud v úlohách figuruje zároveň více rozhodovatelů, čímž vznikají konfliktní situace. Hledá se co nejlepší strategie pro každého hráče zvlášť. Známou úlohou je např. vězňovo dilema, které je hrou symetrickou (při výměně svých rolí by se hráči stále rozhodovali dle stejné strategie). Oba hráči odpovídají současně (opakem současné hry je sekvenční hra, kdy se hráč rozhoduje podle předchozího tahu protihráče). Kombinatoricky je třeba vyhodnotit všechny varianty tahů hráče i soupeřů a jejich důsledky, často se volí tzv. smíšené strategie. Mezi úlohy teorie her patří rozhodování se ve všech situacích, kdy dochází ke střetu zájmů zúčastněných subjektů, z nichž každý chce optimalizovat svůj profit.

- 44 -

1.5 Základní metody řešení úloh lineárního programování

Výběr metody řešení závisí na typu úlohy a typu extrému, vyžaduje tudíž praktické zkušenosti řešitele. Pro řešení některých typů úloh navíc často existuje více algoritmů k nalezení řešení, tato kapitola přináší základní přehled metod používaných při řešení optimalizačních úloh, ať už obecných nebo úzce specializovaných. Ve školním prostředí obvykle řešíme pouze demonstrační úlohy, kde se časová složitost výpočtu neprojeví, v praxi ovšem nejsou výjimkou problémy s velkým objemem vstupních dat. Věnujme tedy pozornost také porovnání těchto metod z hlediska praktického využití, a to především s ohledem na jejich využití při počítačovém zpracování. Některé algoritmy mohou být v aplikacích implementovány současně, sofistikovaný software je schopen typ a rozměr úlohy rozlišit a zvolit nejvhodnější metodu řešení. Důležité údaje pro hodnocení použitelnosti algoritmu jsou celkový čas potřebný k dosažení výsledku a objem paměti počítače potřebný při průběhu výpočtu, které se v nich mohou pro stejné úlohy výrazně lišit. Navíc některé algoritmy jsou výhodnější pro zpracování úloh menších rozměrů, zatímco jiné se osvědčují u úloh rozsáhlých. Zatímco paměť počítače dnes lze celkem jednoduše navyšovat, časová složitost výpočtu je rozhodujícím parametrem pro volbu výpočetního algoritmu, zjišťuje se, kolik elementárních operací musí být kvůli dosažení výsledku provedeno vzhledem k velikosti množiny vstupních dat. Musí být vyjádřena bez ohledu na rychlost konkrétního počítače, neboť na různých počítačích pak provedení jedné operace může trvat různou dobu. Tzv. asymptotická klasifikace algoritmů potom algoritmy podle rychlosti nárůstu počtu těchto operací při „velkých rozměrech“ úloh rozděluje do tříd složitosti se stejnou rychlostí růstu jako některá ze základních funkcí, symbolem O(f(x)) označujeme třídu algoritmů, které probíhají asymptoticky stejně rychle nebo rychleji než známá funkce f(x). Píšeme

O( f (x))  g(x);x0  0,c  0,x  x0 : g(x)  cf (x). (1.13)

Hovoříme tak např. o konstantní, logaritmické, lineární, polynomiální (kvadratické, kubické, …), exponenciální či faktoriálové složitosti pro třídy algoritmů O(1), O(log n), O(n), O(n2), O(n3), O(nk), O(kn), O(n!) v tomto pořadí, uspořádaných

- 45 - od nejjednodušších po nejsložitější, je-li n množství vstupních dat (nejde pouze o počet údajů, ale také o jejich číselný typ; zpracování víceciferných čísel je složitější, převádí se na jednotku informace bit) a k nějaká vhodná konstanta.

1.5.1 Maximální prvek

Triviální variantou úloh lineární optimalizace je nalezení maximální (resp. minimální) hodnoty lineární funkce ze vztahu (1.1)

z(x)  c1x1  c2 x2 ...  cn xn na konečné množině přípustných řešení M  Rn. Postačí diskrétní přístup, tedy vyhledání maxima, resp. minima funkce z na množině M pomocí porovnání funkčních hodnot všech prvků. Maximum (resp. minimum) funkce z( x ) : M R na množině M je vektor

xopt  M : z(xopt)  z(x) (resp. z(xopt)  z(x) ). (1.14)

Algoritmus vyhledá optimum pouhým porovnáním n-1 dvojic hodnot účelové funkce, kdy je po řadě v každém kroku vždy větší (resp. menší) z hodnot uchována pro další krok porovnání. K dosažení výsledku tak je třeba právě n–1 operací, asymptotická složitost algoritmu je tedy O(n), jedná se o algoritmus s lineární složitostí (jeho časová složitost roste pouze lineárně v závislosti na počtu porovnávaných prvků n).

1.5.2 Extrém funkce

Ke hledání extrémů účelové funkce z jakožto funkce více proměnných můžeme využít také prostředků matematické analýzy.

Lokální extrémy (volné)

Nechť f je funkce definovaná na nějakém okolí bodu a  Rn. Říkáme, že funkce f má v bodě a lokální maximum f (a) , jestliže existuje okolí U  U(a) a takové, že f (a)  f (x) pro všechna x U . Říkáme, že funkce f má v bodě a lokální minimum , jestliže existuje okolí a takové, že f (a)  f (x) pro všechna x U . Tak jako pro nalezení lokálních extrémů funkce jedné proměnné stačí položit první derivaci rovnu 0, pro funkce více proměnných využíváme tzv. gradientu: Jestliže má funkce f v bodě lokální extrém, pak pro gradient v bodě (pokud existuje) platí

- 46 -

 f f  f (a)   (a),..., (a)  0 . (1.15)  x1 xn  Body, kde f (a)  0, nazýváme stacionární body, získáme je řešením f soustavy n rovnic (a)  0 pro i = 1, …, n o n neznámých x1, x2, …, xn. xi Pomocí Sylvestrova kritéria odstraníme ze stacionárních bodů sedlové body: Nechť v bodě a existují všechny parciální derivace druhého řádu. Matici druhých parciálních derivací v bodě a

  2 f  2 f   (a) ... (a)   x1x1 x1xn  H (a)   ......  (1.16)   2 f  2 f     (a) ... (a)  xnx1 xnxn  nazýváme Hessova matice a její levé horní subdeterminanty značíme pro k = 1, …, n

 2 f  2 f (a) ... (a) x1x1 x1xk

Dk (a)  ...... (1.17)  2 f  2 f (a) ... (a) xk x1 xk xk

Sylvestrovo rozhodovací kritérium: Buď f: Rn R a bod její stacionární bod a nechť existují všechny její derivace druhého řádu. Potom platí je-li Di (a)  0 pro každé i = 1, …, n, pak má funkce f v lokální minimum f (a) ,

i je-li Di (a)1  0 pro každé i = 1, …, n, pak má funkce f v lokální maximum . Nenastane-li ani jedna z obou možností, potom je-li Dk (a)  0 pro každé k = 1, …, n, pak v bodě není lokální extrém funkce f, jinak je třeba neexistenci lokálního extrému v bodě prokázat jiným způsobem.

Vázané lokální extrémy

Pokud navíc mají být dodržena nějaká vlastní omezení, zde tzv. vazebné podmínky zadané systémem m rovnic o n neznámých

gi (x)  0 pro i = 1, …, m, (1.18) hovoříme o vázaných lokálních extrémech: n n Nechť f: R R, m < n, gi: R R funkce pro i = 1, …, m. Položme

- 47 -

n V  x  R ; g1 (x)  0 ...  gm (x)  0. Říkáme, že funkce f má v bodě a V vázané lokální maximum f (a) , jestliže existuje okolí U  U(a) a takové, že f (a)  f (x) pro všechna x U V . Říkáme, že funkce f má v bodě a V vázané lokální minimum , jestliže existuje okolí a takové, že f (a)  f (x) pro všechna .

Pokud nelze úlohu vyřešit přímým výpočtem hodnot některých proměnných, používá se metoda Lagrangeových multiplikátorů: n n Nechť f: R R, m < n, gi: R R funkce spojitě diferencovatelné na otevřené množině : V   pro i = 1, …, m a pro každé x  je hodnost matice prvních

 g  parciálních derivací funkcí g (x) podle všech proměnných  i (x) regulární. i  x   j i, j Dále buď L: Rn R funkce definovaná

Lx1,..., xn   f x1,..., xn  1g1 x1,..., xn ...  m gm x1,..., xn , (1.19) kde funkci L nazýváme Lagrangeova funkce a reálné konstanty 1,...,m Lagrangeovy multiplikátory. Nechť soustava m + n rovnic o m + n neznámých

L  0 x1 … L  0 xn (1.20)

g1  0 …

gm  0 0 0 má řešení a1,...,an ,1 ,...,m .

0 0 Má-li funkce L v bodě a  a1 ,..., an  pro hodnoty koeficientů 1 ,...,m lokální extrém, pak funkce f má v bodě a vázaný lokální extrém téhož typu s vazbou . Obrácená věta ovšem neplatí.

Globální (absolutní) extrémy

Nechť f: Rn R,   Df a a . Říkáme, že funkce f má v bodě a globální (absolutní) maximum f (a) na množině  , když pro všechna x  platí .

- 48 -

Říkáme, že funkce f má v bodě a globální (absolutní) minimum f (a) na množině  , když pro všechna x  platí f (a)  f (x) . Odtud vyplývá algoritmus nalezení globálních extrémů: Nejprve se hledají lokální extrémy funkce f(x), z nichž se vyberou ty ležící v množině , poté vázané extrémy funkce f(x) s vazbou V  h(), tedy na hranici množiny (prověří se hraniční křivky a jejich průniky). Sjednocením všech získaných bodů získáme množinu, jejíž maximum je globálním maximem, resp. minimum je globálním minimem. Pro lineární úlohy, kde jsou první parciální derivace vždy nenulové konstanty, postrádá použití těchto metod smysl, uplatnění nacházejí při řešení úloh kvadratického programování případně složitějších funkcí. Leží-li globální extrém nalezený pomocí Lagrangeovy funkce v množině přípustných řešení, je optimem, pokud ne, použije se tzv. Wolfeho algoritmus a upravené simplexové metody (Turzík 1999). Tyto analytické způsoby výpočtu jsou obsaženy spíše v objektově orientovaných matematických programech.

1.5.3 Grafické řešení úloh OV

U úloh LP, které mají dvě, případně tři strukturní proměnné, se nabízí také možnost zobrazit všechny objekty matematického modelu graficky na základě principů euklidovské geometrie do roviny sešitu. Pro dvě proměnné jde o zcela názorné a nezkreslené zobrazení E2 do E2, zobrazení E3 do E2 umožňují různé metody deskriptivní geometrie, kterými jsem se zabývala v rámci svého magisterského studia. Počátky deskriptivní geometrie sahají do hluboké minulosti, již v Mezopotámii (2300 př. n. l.) či ve starém Egyptě (1200 př. n. l.) byly staviteli chrámů, pyramid, akvaduktů apod. v nákresech použity lineární zobrazovací metody připomínající tzv. kótované promítání. V 15. století už italští malíři používali lineární perspektivu a při konstrukci plánů měst pro vojenské účely byla vyvinuta nejjednodušší varianta rovnoběžného promítání (promítání objektů do obecné roviny směrem, který k ní není kolmý), kterým je tzv. kosoúhlé promítání (tedy „nekolmé“ promítání do jedné souřadnicové roviny). Jako zakladatel deskriptivní geometrie je označován Gaspard Monge (1746–1818), který v roce 1799 představil kolmé promítání na dvě kolmé průmětny, tzv. Mongeovo promítání. Je zřejmé, že grafická metoda není použitelná pro řešení úloh pro více než tři strukturní proměnné, v praxi je grafická metoda neuplatnitelná. Má ovšem velký

- 49 - význam z hlediska didaktického, neboť velice názorně ilustruje algebraický způsob řešení. Její použití u všech typů úloh považuji za nedílnou součást výkladu. Studentům přiblíží výpočetní postupy, vymezení množiny přípustných řešení, význam základního řešení a polohy optimální hodnoty účelová funkce. Lineární objekty v euklidovském prostoru jsou body, přímky, roviny…

V eukleidovském prostoru En můžeme definovat pojem nadrovina, což je lineární objekt dimenze n-1, který celý prostor En dělí na dva poloprostory. V rovině je tedy nadrovinou každá přímka, v třírozměrném prostoru je nadrovinou každá rovina. Pokud pro každé z množiny všech omezení úlohy LP zapsaných ve tvaru (1.2) nebo (1.3) změníme typ na „=“, získáme rovnici nadroviny v příslušném euklidovském prostoru. Mezní polohy všech vlastních omezení ve tvaru rovnosti v úlohách LP jsou tedy takovými nadrovinami, množina všech bodů splňující původní nerovnost je potom jedním ze dvou jimi oddělených poloprostorů. Množina všech řešení soustavy lineárních nerovnic ve tvaru (1.2) nebo (1.3) je potom průnikem m + n poloprostorů daného En. Tuto množinu nazýváme obecný n-polytop, speciálně pro n = 2 se nazývá mnohoúhelník (polygon), pro n = 3 mnohostěn (polyhedron).

Při samotném zobrazení objektů matematického modelu z En do E2 je tedy vektoru řešení daného objektu (rovnice či nerovnice) označenému x = (x1, …, xn) přiřazen bod o souřadnicích X [x1, x2]. Pro n = 2 se používá intuitivní a nezkreslené zobrazení do kartézské soustavy souřadnic, pro n = 3 se nejčastěji používá názorné a konstrukčně nejjednodušší kosoúhlé promítání. Pro každé vlastní omezení úlohy LP ve tvaru

ai1x1  ai2 x2 ...  ain xn  bi pro i = 1, …, m, kde bi ≠ 0, (1.21)

(obecně každého typu) je vhodné pro účely jednoduchého zobrazení zapsat rovnici jeho hraniční nadroviny v tzv. úsekovém tvaru, koeficienty získáme vydělením celé rovnice kapacitou bi:

ai1 ai2 ain x1  x2  ...  xn  1. (1.22) bi bi bi Koeficienty u jednotlivých proměnných určují, v jaké hodnotě hledaná nadrovina protíná odpovídající souřadnou osu. Pokud se v rovnici některá ze strukturních proměnných nevyskytuje, potom je hledaná nadrovina s odpovídající souřadnou osou rovnoběžná. Pokud je ovšem bi = 0, prochází zobrazovaná nadrovina počátkem souřadné soustavy, úsekový tvar zřejmě neexistuje, a je třeba ji určit pomocí

- 50 - ještě dalších n-1 různých bodů. Speciálně hraniční nadrovina odpovídající podmínce nezápornosti pro proměnnou xj je rovnoběžná se všemi ostatními souřadnými osami, a tudíž je kolmá k souřadné ose této proměnné xj. pro každé j = 1, …, n. Podmínky ve tvaru (1.21) typu „≤“ a „≥“ tvoří navzájem opačně orientované poloprostory obsahující dělící nadrovinu (1.22), podmínky typu „<“ a „>“ tvoří navzájem opačně orientované poloprostory dělící nadrovinu (1.22) neobsahující, podmínky typu „=“ tvoří pouze tato dělící nadrovina (1.22). Který z obou opačných poloprostorů vyhovuje podmínce daného typu, zjistíme dosazením souřadnic libovolného bodu neležícího v hraniční nadrovině, pokud je podmínka (1.21) splněna, je obrazem daného omezení poloprostor obsahující zvolený bod, pokud ne, je obrazem poloprostor opačný. U úloh LP se dvěma strukturními proměnnými využijeme po zobrazení všech objektů k řešení metod planimetrie, pro úlohy se třemi strukturními proměnnými využijeme k řešení úlohy metod stereometrie.

Soustava lineárních rovnic

Teorie řešení úloh LP je založena na řešení soustav lineárních rovnic. Na úlohách pro n = 2 neznámé můžeme demonstrovat počet řešení v závislosti na vzájemné poloze m přímek v rovině. SLR může mít jediné řešení, čemuž odpovídá průsečík všech přímek v jediném bodě, žádné řešení, pokud nemají tyto přímky žádný společný bod, a nekonečně mnoho řešení, pokud jsou všechny přímky totožné. Analogicky v úlohách pro n = 3 můžeme v závislosti na vzájemné poloze m rovin v prostoru E3 demonstrovat také dimenzi podprostoru řešení v závislosti na tom, zda je průnikem rovin celá rovina, celá přímka, jediný bod nebo prázdná množina. Zásadním pojmem v teorii řešení úloh LP je základní řešení, je proto vhodné tyto body také zobrazit a sledovat paralelu mezi změnami báze a změnami výběru dvojic protínajících se přímek. Poté co zobrazíme všechny rovnice dané SLR, všechna základní řešení nalezneme jako průsečíky všech možných dvojic přímek v grafu (včetně dvou m  2 souřadných os), existuje   takových kombinací, což je pouze teoretický  2  maximální možný počet základních řešení úlohy, rovnoběžné přímky totiž reálný průsečík nemají (viz Obrázek 2) a několik přímek se může protínat ve stejném průsečíku (jak ukazuje Obrázek 3).

- 51 -

Obrázek 2 – Grafické řešení – SLR – jediné řešení Zdroj: vlastní

Soustava lineárních nerovnic

Řešení soustav lineárních nerovnic se při řešení úloh LP uplatní při určování množiny přípustných řešení. Doplnění dané soustavy m nerovnic o n neznámých je převedeno dle potřeby buď přičtením či odečtením nezáporných přídatných proměnných na soustavu m lineárních rovnic o m + n neznámých, jednotlivá základní řešení se opět zobrazí jako průsečíky hraničních přímek polorovin daných nerovnicemi původní soustavy a také os jakožto hraničních přímek rovin daných nerovnostmi podmínek nezápornosti. Hodnoty strukturních proměnných v jednotlivých základních řešeních odpovídají hodnotám souřadnic jednotlivých průsečíků, příslušné hodnoty přídatných proměnných pak nesou informaci o přípustnosti nalezeného základního řešení. Obrazy nepřípustných základních řešení v grafu ležících mimo množinu přípustných řešení odpovídají těm vektorům základních řešení, kde je porušen vstupní požadavek nezápornosti přípustných proměnných. Jelikož u obecných SLN není kladen požadavek na nezápornost řešení, mají pro vymezení množiny přípustných řešení význam pouze vzájemné průsečíky přímek jakožto obrazů vlastních omezení, na rozdíl od průsečíků těchto přímek s osami, které pro úlohu nemají žádný reálný význam. Svého významu nabývají až v případě požadavku nezápornosti proměnných, které se stanou plnohodnotnou součástí soustavy omezení množiny přípustných řešení.

- 52 -

Obrázek 3 – Grafické řešení – SLN – degenerace počtu ZŘ Zdroj: vlastní

Úloha LP

Protože pro všechny strukturní proměnné klasické úlohy LP platí podmínky nezápornosti, stačí se při jejich grafickém řešení omezit pouze na tu část prostoru, kde pro všechny souřadnice bodů platí xi ≥ 0 pro každé i = 1, … n. V E2 nazýváme tuto oblast I. kvadrant a v E3 potom I. oktant. Při grafickém řešení úloh LP nejprve nalezneme množinu přípustných řešení jako průnik obrazů všech vlastních omezení a I. kvadrantu, resp. I. oktantu, využíváme přitom nástrojů planimetrie, resp. stereometrie. Situaci ilustruje Obrázek 4.

Obrázek 4 – Grafické řešení – klasická úloha LP v E2 – množina PŘ Zdroj: vlastní

- 53 -

K určení optimálního řešení stačí v této množině přípustných řešení vyhledat body s maximální, resp. minimální hodnotou účelové funkce z  c1x1  c2 x2 ...  cn xn . Budeme-li do této rovnice dosazovat různé její hodnoty, získáme systém rovnoběžných nadrovin, které jsou množinami bodů s konstantní hodnotou účelové funkce, kterým říkáme izokvanty (pro n = 2 jsou obdobou vrstevnic v mapě).

Obrázek 5 – Grafické řešení – klasická úloha LP v E2 – optimální řešení Zdroj: vlastní

Z nich vybereme tu nejzazší ve smyslu zlepšování hodnoty účelové funkce. Prakticky stačí sestrojit pouze jednu z izokvant pro vhodnou volbu (pro převod na úsekový tvar a měřítko grafu) a potom s ní vést nejzazší možnou rovnoběžku – optimální izokvantu, která má neprázdný průnik s nalezenou množinou řešení. Analogicky k tvrzení z teorie algebraického řešení úloh LP, že optimálním řešením může být pouze základní řešení, platí při grafickém způsobu řešení úloh LP tvrzení, že optimálním řešením může být pouze vrchol n-polytopu. Pro n = 2 jsem tohoto grafického zobrazení využila k ilustraci klasifikace řešení klasických úloh LP na základě tvaru množiny přípustných řešení a její vzájemné polohy vzhledem k systému izokvant v Kubišová (2014c).

- 54 -

Obrázek 6 – Grafické řešení – klasická úloha LP v E3 – množina PŘ Zdroj: vlastní

Jak již bylo řečeno, i úlohy LP o třech strukturních proměnných lze graficky interpretovat. Vidět výsledky zobrazení trojrozměrného prostoru pomocí metod deskriptivní geometrie je obecně pro studenty přitažlivé, na druhou stranu je pro ně tento způsob zobrazení mnohem složitější, je nejprve třeba si osvojit principy kosoúhlého promítání a stereometrie, čímž ovšem zcela překračujeme hranice efektivních optimalizačních metod. Grafické řešení úlohy LP, které ukazují Obrázek 6 a Obrázek 7, jsem použila při výuce pouze jako ukázku, se studenty se grafickým řešením úloh v E3 nezabývám. Podrobně jsem se touto metodou zabývala v publikovaném článku věnovaném úloze grafického řešení úloh LP ve výuce. (Kubišová, 2015e)

- 55 -

Obrázek 7 – Grafické řešení – klasická úloha LP v E3 – optimální řešení Zdroj: vlastní

Sestrojené grafické řešení úlohy LP může být dále využito k demonstraci průběhu optimalizace v jednotlivých krocích simplexového algoritmu. Obrázek 8 a Obrázek 9 zachycují tento postup, je označeno výchozí základní řešení (VZŘ) a pomocí čárkovaných šipek můžeme sledovat dílčí kroky optimalizační procesu.

Obrázek 8 – Grafické řešení – poloha VZŘ při řešení jednofázovou PSM Pokud bychom doplnili izokvanty odpovídající jednotlivým postupně procházeným základním řešením, zřejmě bychom zjistili, že algoritmus vždy vyhledá sousední přípustné základní řešení, které nemá horší hodnotu účelové funkce, než řešení

- 56 - předchozí. Pokud nedojde k zacyklení, po konečném počtu kroků ve smyslu postupu po hranách polygonu přípustných řešení je tak dosaženo optimálního řešení.

Obrázek 9 – Grafické řešení – poloha VZŘ při řešení dvoufázovou PSM Zdroj: vlastní

Zmíněné obrázky jsem využila k demonstraci rozdílu postupu u úloh řešitelných jednofázovou PSM a úloh, které je třeba řešit její dvoufázovou variantou. Zatímco v prvním případě (viz Obrázek 8) je počátek kartézské souřadné soustavy rovnou výchozím základním řešením, ve druhém případě (viz Obrázek 9) není počátek souřadného systému přípustným základním řešením, bylo zde proto třeba nejprve VZŘ najít, v rámci I. fáze PSM musely být provedeny dva kroky, v rámci II. fáze potom ještě další dva kroky k nalezení optima v bodě O, což bychom mohli paralelně sledovat také při řešení stejné úlohy LP v simplexové tabulce. Problematikou grafického řešení klasických úloh LP pro n = 2 a n = 3 jsem se zabývala v publikovaném článku Kubišová (2015e)

Úloha LP celočíselná

Úlohy celočíselného programování řešíme graficky stejně jako úlohy obecné, množina přípustných řešení je ovšem tvořena sítí izolovaných bodů I. kvadrantu s celočíselnými koeficienty, které vyhovují všem vlastním omezením. Zatímco algebraické metody hledání celočíselného řešení jsou velmi složité a časově náročné, grafický způsob hledání optima pomocí posouvání izokvanty účelové funkce do nejzazšího přípustného bodu ve směru zlepšování hodnoty funkce z je stejně

- 57 - jednoduchý jako u klasické úlohy LP. Bohužel, jak již bylo řečeno, je tato metoda pro úlohy s větším počtem strukturních proměnných nepoužitelná.

Obrázek 10 – Grafické řešení – celočíselná úloha LP v E2 – optimální řešení Zdroj: vlastní

Dále můžeme opět využít grafického zobrazení k demonstrování postupu metody větvení a mezí (MVM), kdy je nejprve vyřešena úloha při zanedbání celočíselné podmínky, poté následuje algoritmizované dělení množiny jejích přípustných řešení, dokud není dosaženo celočíselného optima každé z podmnožin. Porovnáváním hodnoty účelové funkce pro každé z nich je poté optimální řešení nalezeno.

Obrázek 11 – Grafické řešení – celočíselná úloha LP - zanedbání celočíselnosti Zdroj: vlastní

- 58 -

Graficky je tak demonstrována opodstatněnost vynechání pásu neobsahujícího žádná celočíselná řešení při každém větvení. Velmi vhodné je porovnat pomocné řešení klasické úlohy LP s řešením úlohy celočíselné. Na vhodném protipříkladu lze demonstrovat, že zaokrouhlování k nalezení celočíselného řešení vést nemusí, nebo že celočíselné řešení může ležet od pomocného řešení x0 dále, než jiné celočíselné řešení. Opět je zde důležitý především sklon izokvant.

Obrázek 12 – Grafické řešení – celočíselná úloha LP – průběh algoritmu MVM Zdroj: vlastní

Problematikou grafického řešení celočíselných úloh LP pro n = 2 jsem se zabývala v publikovaném článku Kubišová (2015e)

Úloha LP vícekriteriální

Pro úlohy vícekriteriálního lineárního programování, popř. vícekriteriálního hodnocení variant, není grafické zobrazení vhodné, nahrazení algebraických metod řešení úloh vícekriteriálního rozhodování grafickým řešením je příliš komplikované a není názorné. V rámci nejjednoduššího motivačního příkladu při výkladu metody agregace účelových funkcí je možné graficky najít dílčí optima podle jednotlivých účelových funkcí a ukázat jejich často protichůdné výsledky, a poté na základě udaných preferencí jednotlivých kritérií pomocí agregace účelových funkcí najít příslušné kompromisní řešení zadané úlohy, případně snad zobrazit a porovnat polohu optimálních řešení nalezených pomocí dalších algebraických metod. - 59 -

Obrázek 13 – Grafické řešení – úloha VLP v E2 – jednokriteriální optima dílčích účelových funkcí Zdroj: vlastní

Grafickým zobrazováním řešení tohoto typu úloh se nezabývám, nelze jej efektivně využít ke konstrukci optima.

Úloha LP s intervalovými kapacitami

Intervalová analýza úloh LP s intervalově vymezenými kapacitami dává také intervalově vymezené optimální řešení a intervalově vymezenou hodnotu účelové funkce. Tyto výsledky můžeme dostat také pomocí grafického řešení.

Jestliže místo přesně stanovených kapacit bi uvažujeme intervalová   čísla Bi [,] b i b i , tj. intervaly obsahující bi, i = 1, 2, zapisujeme i-té vlastní omezení ve tvaru

ai1x1  ai2 x2  Bi , (1.23) jeho obrazem je systém stejně orientovaných polorovin s rovnoběžnými hraničními přímkami, které vyplní pás ohraničený dvěma přímkami

a x  a x  b i1 1 i2 2 i , (1.24) aí1 x1  ai2 x2  bi tedy minimalistickou, resp. maximalistickou variantou vymezenou minimální, resp. maximální možnou hodnotou pravé strany rovnice. Množina přípustných řešení je opět nalezena jako průnik všech těchto systémů polorovin.

- 60 -

Obrázek 14 – Grafické řešení – intervalová analýza v E2 – optimální řešení Zdroj: vlastní

Poloha optimálního řešení je vymezena pomocí rovnoběžného posunování izokvanty účelové funkce do nejzazšího bodu minimalistické a maximalistické varianty množiny přípustných řešení ve směru zlepšování hodnoty účelové funkce. Intervalové optimální hodnoty strukturních proměnných jsou intervalová čísla, optimální řešení zapisujeme je ve tvaru X = (X1, X2), kde X1 = [min x1, max x1],

X2 = [min x2, max x2], v grafu jim odpovídají body po řadě označené B´ a B´´, grafické řešení ilustruje Obrázek 10, ze kterého je patrné, že množina všech přípustných řešení tvoří v minimalistickém případě čtyřúhelník A´B´C´D´ a ze sklonu izokvant účelové funkce vyplývá, že úloha by v tomto krajním případě měla jediné optimální řešení v bodě B´, jehož souřadnice lze získat řešením soustavy lineárních rovnic přímek a´ a b´, které se v bodě B´ protínají, a vyčíslit odpovídající v dané situaci maximální dosažitelný zisk z´max. V maximalistickém případě by množinu přípustných řešení mohl tvořit čtyřúhelník A´´B´´C´´D´´, úloha by v tomto krajním případě měla jediné optimální řešení v bodě B´´, jehož souřadnice lze získat řešením soustavy lineárních rovnic přímek a´´ a b´´, které se v bodě B´´ protínají, a vyčíslit odpovídající v dané situaci maximální dosažitelný zisk z´´max. Optimální hodnota účelové funkce z je také intervalové číslo, zapisujeme ji ve tvaru Zmax  zmax ; zmax .

- 61 -

K nalezení konkrétních hodnot všech vrcholů rovnoběžníku B´B´´´B´´B´´´´ všech možných případných optimálních řešení by bylo třeba řešit dílčí soustavy odpovídajících rovnic o dvou neznámých. Jejich hodnoty jsou z obrázku patrné. Také všechny jejich konvexní lineární kombinace by mohly být v určitém případě optimálním řešením zadané úlohy. Tato množina bodů je v ilustračním obrázku vyšrafovaná.

Obrázek 15 – Grafické řešení – intervalová analýza v E2 – dosažitelnost zisku Zdroj: vlastní

Je také možné graficky diskutovat dosažitelnost jakékoli předem stanovené hodnoty účelové funkce zmax a zabývat se v této souvislosti také otázkou, zda může v některých případech tato hodnota být hodnotou optimální a pro jaké hodnoty strukturních proměnných. Pokud označíme krajní hodnoty nalezené intervalové hodnoty

účelové funkce Zmax = [zmax´; zmax´´], pak jsou zřejmě hodnoty účelové funkce vyšší než zmax´´ nedosažitelné, hodnoty nižší než zmax´ jsou vždy dosažitelné (odpovídají celé úsečce přípustných řešení, ale nikdy nejde o optimum) a hodnoty účelové funkce z intervalu [;]zzmax max jsou při určitých hodnotách kapacit výrobních činitelů dosažitelné, a to pro hodnoty strukturních proměnných, které vyplní celou úsečku bodů

MN, která triviálně pro hodnotu zmax´ odpovídá pouze jedinému bodu – vrcholu B´ a pro hodnotu zmax´´ odpovídá pouze jedinému bodu – vrcholu B´´.

- 62 -

Z uvedeného intervalového optimálního řešení můžeme z pevně zvolené hodnoty zmax z vypočteného intervalového zisku Zmax určit všechna optimální řešení xopt = (x1, x2), která zvolený zisk zaručují, jak naznačuje Obrázek 15 pro volbu z = 820. Intervalovou analýzou úlohy LP s intervalovými kapacitami pro dvě strukturní proměnné včetně grafického řešení ilustračních příkladů jsem se zabývala ve článku Kubišová (2015b).

Úloha LP s fuzzy kapacitami

Intervalová analýza úloh LP s intervalově vymezenými kapacitami dává také intervalově vymezené optimální řešení a intervalově vymezenou hodnotu účelové funkce. Tyto výsledky můžeme dostat také pomocí grafického řešení.

Jestliže místo přesně stanovených kapacit bi uvažujeme pro jednoduchost trojúhelníková fuzzy čísla Bi  bi ´;bi ;bi, tj. intervaly obsahující bi, i = 1, 2, zapisujeme i-té vlastní omezení ve tvaru

ai1x1  ai2 x2  Bi , (1.25) jeho obrazem je systém stejně orientovaných polorovin s rovnoběžnými hraničními přímkami, které vyplní pás ohraničený dvěma plnými čarami vyznačenými přímkami

a x  a x  b i1 1 i2 2 i , (1.26) aí1 x1  ai2 x2  bi tedy minimalistickou, resp. maximalistickou variantou vymezenou minimální, resp. maximální možnou hodnotou pravé strany rovnice (ovšem s nulovým stupněm příslušnosti v těchto krajních situacích), které doplňuje ještě s nimi rovnoběžná čárkovaně vyznačená hraniční přímka odpovídající nejpravděpodobnější (se stupněm příslušnosti 1) hodnotě kapacity bi. Množina případných přípustných řešení je opět nalezena jako průnik všech těchto systémů polorovin, ovšem každý z jeho bodů má jiný stupeň příslušnosti k tomuto průniku. Fuzzy optimální hodnoty strukturních proměnných jsou tedy opět trojúhelníková fuzzy čísla, zapisujeme je ve tvaru X = (X1, X2), kde X1  x1;x1;x1 a X 2  x2 ; x2 ; x2.

- 63 -

Obrázek 16 – Grafické řešení – fuzzy analýza v E2 – optimum ( bez omezení) Zdroj: vlastní

Grafické řešení ilustruje Obrázek 16, ze kterého je patrné, že množina všech přípustných řešení tvoří v minimalistickém případě čtyřúhelník A´B´C´D´, a ze sklonu izokvant účelové funkce vyplývá, že úloha by v tomto krajním případě měla jediné optimální řešení v bodě B´, jehož souřadnice lze získat řešením soustavy lineárních rovnic přímek a´ a b´, které se v bodě B´ protínají, a vyčíslit odpovídající v dané situaci maximální dosažitelný zisk z´max. V maximalistickém případě by množinu přípustných řešení mohl tvořit čtyřúhelník A´´B´´C´´D´´, úloha by v tomto krajním případě měla jediné optimální řešení v bodě B´´, jehož souřadnice lze získat řešením soustavy lineárních rovnic přímek a´´ a b´´, které se v bodě B´´ protínají, a vyčíslit odpovídající v dané situaci maximální dosažitelný zisk z´´max. Fuzzy optimální hodnota účelové funkce z je také trojúhelníkové fuzzy číslo, které zapisujeme ve tvaru

Zmax  zmax ; zmax ; zmax . V obou těchto krajních případech je ovšem stupeň příslušnosti zmíněných hodnot nulový. Naopak pro  = 1 by úloha měla jediné optimální řešení v bodě B, jehož souřadnice lze najít jako průsečík přímek a a b (v grafu vyznačené tence

čárkovaně), a odpovídá mu v dané situaci maximální dosažitelný zisk zmax (reprezentovaný tučně čárkovaně vyznačenou izokvantou). Při fuzzy tvaru kapacit musí rozhodovatel věnovat pozornost hladině příslušnosti případných optimálních řešení, je třeba volit vhodný kompromis mezi stupněm

- 64 - příslušnosti příslušnou výší případných optimálních hodnot, kdy zlepšení jednoho parametru znamená zhoršení parametru druhého. Nejčastěji hledáme odhad optimálního řešení pro rozhodovatelem požadovaný minimální stupeň příslušnosti . Odhad optimální hodnoty strukturních proměnných pro minimální stupeň příslušnosti 

        značíme X1   x1; x1; x1 a X 2   x2 ; x2 ; x2 a odpovídající odhad optimální

    hodnoty účelové funkce Zmax   zmax ; zmax ; zmax .

Obrázek 17 – Grafické řešení – fuzzy analýza v E2 – pro stanovené minimální  Zdroj: vlastní

Co se týče grafického vyjádření stupně příslušnosti jednotlivých bodů množiny přípustných řešení vzhledem k jednotlivým odpovídajícím vlastním omezením, množině přípustných řešení či množině případných optimálních řešení je možné využít obdoby kótovaného promítání, kdy je stupeň příslušnosti každého bodu k jisté fuzzy množině jeho kótou. Konkrétní příklad uvádím v Kubišová (2015c). Obrázek 17 zobrazuje hranici rovnoběžníku B´B´´´B´´B´´´´, která tvoří množinu případných optimálních řešení se stupněm příslušnosti rovnému právě , tedy obdobu vrstevnice v mapě. Jak již bylo řečeno, tyto rovnoběžníky jsou stejnolehlé s původním rovnoběžníkem B´B´´´B´´B´´´´ podle středu B s koeficientem .

- 65 -

Fuzzy analýzou úlohy LP s fuzzy kapacitami pro dvě strukturní proměnné včetně grafického řešení ilustračních příkladů jsem se zabývala ve článku Kubišová (2015b). Grafické řešení lze použít pouze u úloh se dvěma strukturními proměnnými, není tedy prakticky využitelnou metodou, u demonstračních příkladů při výkladu intervalové či fuzzy analýzy u úloh LP s nejistými hodnotami kapacit vlastích omezení může ovšem dobře posloužit didakticky k ilustraci řešení algebraického, konstrukce rovnoběžníků případných optimálních řešení jak při intervalově zadaných kapacitách, tak pro různé hladiny stupně příslušnosti  při fuzzy kapacitách, je názorná a jednoduchá, stejně jako určování rozpětí při odhadu příslušné optimální hodnoty účelové funkce. Ke konstrukci vlastních obrázků pro případnou ilustraci či zadání úkolu v pracovních listech využívám výhradně Apache Open Office Draw 4.1.1., k primitivním animacím postačilo promítání sledu takto vytvořených obrázků s přibývajícími objekty v MS PowerPoint. Ve cvičení týkajícím se grafického řešení úloh LP konstruuji řešení demonstrační úlohy LP na tabuli s využitím školních rýsovacích potřeb.

Optimum jako průsečík hraničních přímek vlastních omezení

Přestože hovoříme o grafickém způsobu řešení, je třeba provést určení souřadnic nalezených řešení výpočtem, pokud nejde o triviální průsečíky přímek se souřadnými osami a jedna strukturní proměnná je nulová, není vhodné určovat tyto hodnoty (nepřesným) měřením. Pokud určujeme průsečík hraničních přímek dvou vlastních omezení, sestavujeme soustavu jejich dvou lineárních rovnic (bez ohledu na obecnost předpokládejme, že indexy j = 1, 2)

a x  a x  b 11 1 12 2 1 (1.27) a21x1  a22x2  b2

Cramerovo pravidlo: Nechť (1.27) je soustava lineárních rovnic. Je-li její matice

aa11 12 aa11 12 A   regulární, tj. determinant A  a11 a 22  a 12 a 21  0 , aa21 22 aa21 22 potom má soustava (1.27) jediné řešení x = (x1, x2) a pro i = 1, 2 platí

- 66 -

A x  i i A , kde matici Ai získáme z matice A nahrazením i-tého sloupce vektorem pravých stran

b1 b  . b2 Nalezené optimální řešení úlohy LP tedy můžeme zapsat jako vektor xopt = (x1, x2), kde

b1 a12 a11 b1

b2 a22 a21 b2 x1  a x2  . (1.28) a11 a12 a11 a12

a21 a22 a21 a22

Nalezené optimální řešení je možné vyjádřit pouze pomocí koeficientů a absolutních členů omezení, která znemožnila další zlepšování dosaženého řešení. Dosazením obou složek do účelové funkce získáme její optimální hodnotu

zmax  c1 x1  c2 x2 , resp. zmin  c1 x1  c2 x2 . Použití těchto vzorců je pro následné srovnání s jinými přístupy vyjádření dat demonstrováno na jednoduchém příkladu v (Kubišová, 2015a).

1.5.4 Simplexová metoda

Lineární programování je nejvíce propracovanou oblastí operačního výzkumu. Metody řešení úloh LP ze své podstaty vyžadují pouze jednoduché matematické nástroje a nacházejí široké praktické uplatnění svých aplikací. Byly vypracovány efektivní algoritmy, které jsou běžně implementovány v optimalizačních softwarech. Základní skupinou těchto metod tvoří algoritmy založené na algebraické teorii matic, pomocí které je matematický model obsahující pouze lineární rovnice a nerovnice popsán. Využívá se zápisu do tzv. simplexové tabulky, který je zdokonalenou obdobou maticového zápisu průběhu Jordanovy metody úplné eliminace. Vysoce efektivním způsobem se v konečném počtu kroků prochází množina přípustných základních řešení získávaných pomocí ekvivalentních řádkových úprav, přičemž je algoritmem zaručeno, že každý další krok přinese nejlepší možné zlepšení hodnoty účelové funkce. Zda je aktuální základní řešení v daném kroku optimální, se rozhodne pomocí jednoduchého testu optimality. Průběh tohoto řešení úlohy lze v euklidovském prostoru En reprezentovat procházením sousedních vrcholů n-polytopu

- 67 -

(konvexní mnohoúhelník (polygon), mnohostěn (polyhedron), …) množiny všech přípustných řešení, což umožňuje u dvoj- nebo trojrozměrných úloh jejich názornou grafickou interpretaci. Nejznámější a nejčastěji využívanou univerzální metodou řešení úloh LP je historicky první v roce 1947 vyvinutý Dantzigův klasický optimalizační algoritmus primárně simplexová metody. Vyskytují se také jeho ekvivalentní obměny využívající jiného způsobu zápisu dílčích kroků, jako je revidovaná, modifikovaná nebo multiplikativní simplexová metoda. Díky von Neumannovu objevení teorie duality úloh LP byl vyvinut také pro speciální případy úloh LP jednodušší algoritmus duálně simplexové metody nebo algoritmus řešení specifických dopravních úloh v tzv. dopravní tabulce.

Primárně simplexová metoda

Primárně simplexová metoda (dále jen PSM) je univerzální metodou řešení všech úloh lineárního programování, po konečném počtu kroků je rozhodnuto o řešitelnosti úlohy a případné optimum je nalezeno. Matematický model ve tvaru (1.1) - (1.3) je pro potřeby PSM potřeba upravit tak, aby všech m vlastních omezení mělo nezáporné pravé strany, je-li tomu u některého z omezení jinak, postačí jej vynásobit číslem –1. Poté všechny nerovnosti typu „≤“ vyrovnáme přičtením nezáporné přídatné proměnné a všechny nerovnosti typu „≥“ vyrovnáme odečtením nezáporné přídatné proměnné, čímž získáme adjungovanou soustavu lineárních rovnic. Pokud tato soustava není v kanonickém tvaru (její matice obsahuje každý ze sloupců jednotkové matice řádu m), je třeba ještě doplnit tzv. umělé proměnné, které chybějící sloupce uměle vytvoří, přičemž tato potřeba vzniká pro každé vlastní omezení typu „≥“ a „=“. Je-li pro strukturní proměnné úlohy LP vyhrazeno značení xi, pro přídatné proměnné vyhradíme značení xj´ a pro umělé proměnné značení yk s odpovídajícími pořadovými indexy Pro získaný systém rovnic v kanonickém tvaru se sestaví rozšířená matice, která se nazývá simplexová tabulka. Je rozšířena o řádek cenových indexů účelové funkce z (je třeba ji upravit do stejného tvaru, jako ostatní rovnice, tedy členy s proměnnými na levou a absolutní člen na pravou stranu). Pokud byly k dosažení kanonického tvaru potřeba umělé proměnné, je třeba ještě sestavit umělou účelovou funkci z´ jako součet všech umělých proměnných (kterou je opět potřeba upravit do stejného tvaru jako ostatní rovnice).

- 68 -

Algoritmus probíhá ve dvou fázích, v první je třeba najít tzv. výchozí základní řešení úlohy LP, tedy jakékoli přípustné základní řešení vytvořené soustavy, ve druhé fázi probíhá samotná optimalizace, tedy ověřování optimality a případné zlepšování nalezeného řešení. Jsou-li všechna vlastní omezení původní úlohy LP typu „≤“, není třeba žádné umělé proměnné, a výpočet se tak velmi zjednodušuje, neboť simplexová tabulka rovnou výchozí základní řešení obsahuje. Zabývejme se nejprve touto jednodušší variantou řešení.  Jednofázová PSM Věnujme se nyní pouze maximalizačním úlohám LP, na něž lze každou minimalizační úlohu převést vynásobením účelové funkce číslem –1. Jsou-li všechna vlastní omezení úlohy LP typu „≤“, sestavená simplexová tabulka má tvar, jejž ukazuje

Tabulka 11 – Simplexová tabulka – obecný tvar

báze x1 x2 … xn x´n+1 x´n+2 … x´n+m bi

x´n+1 a11 a12 … a1n 1 0 … 0 b1

x´n+2 a21 a22 … a2n 0 1 … 0 b2

...... x´n+m am1 am2 … amn 0 0 … 1 bm

z –c1 –c2 … –cn 0 0 … 0 0

Zdroj: vlastní Je zřejmé, že jde o triviální základní řešení úlohy LP, kde jsou všechny strukturní proměnné rovny 0 a všechny přídatné proměnné x´n+j rovny bj. Simplexovou tabulku můžeme logicky rozdělit na šest částí podle typu koeficientů a tyto části zvlášť vyjádřit jako matice popř. vektory. Obecný zápis výchozí simplexové tabulky postupně tvoří tyto objekty:

Tabulka 12 – Výchozí simplexová tabulka – obecný tvar

A I b

–cT oT 0 Zdroj: vlastní A … matice strukturních koeficientů, I … jednotková matice koeficientů zavedených přídatných proměnných, b … vektor pravých stran vlastních omezení,

- 69 -

–cT… vektor koeficientů anulované účelové funkce (vektor indexních čísel), oT … nulový m-rozměrný vektor, 0 … výchozí hodnota účelové funkce.

Speciálně pro výchozí základní řešení jednoduše ověříme, jestli neexistuje způsob, jak zlepšit hodnotu účelové funkce, říkáme, že provedeme test optimality. Je tedy otázkou, jestli by u některé nezákladní proměnné (zde jsou to všechny strukturní proměnné a jsou rovné 0) neznamenalo její zvýšení také zlepšení hodnoty účelové funkce. Jednotkový přírůstek účelové funkce pro každou nezákladní proměnnou je tu triviálně roven příslušnému cenovému koeficientu, největší zlepšení současné hodnoty účelové funkce by tedy nastalo, kdyby se základní proměnnou stala nezákladní proměnná ve sloupci s nejvyšším cenovým indexem ck (tedy nejnižším –ck).

Jednoduchou úvahou je potom možné zjistit, jak vysoko by mohla hodnota proměnné xk vzrůst, aby nebylo porušeno ani jedno z vlastních omezení, což zjistíme porovnáním podílů každého bj tímto nejvyšším cenovým koeficientem ck. Nejnižší z takto získaných nezáporných podílů určuje, které z vlastních omezení nárůst proměnné xk zarazí, čili která z přídatných proměnných se naopak vynuluje a stane se proměnnou základní. Tímto způsobem je určena nejvýhodnější změna báze v prvním kroku, nové základní řešení se sestaví pomocí Jordanovy metody, včetně transformace posledního tzv. indexního řádku. Naopak pokud by byla všechna –ci nezáporná, nelze již hodnotu účelové funkce z zlepšit, testované základní řešení by v tom případě již bylo optimální, speciálně pokud by bylo nejvyšší –ci nulové, přinesla by změna báze alternativní řešení beze změny hodnoty účelové funkce. Algoritmus: Nejprve v simplexové tabulce sestavíme výchozí základní řešení. Následuje test optimality a případné určení vstupující a vystupující proměnné. Řešení úlohy LP je optimální, právě když jsou v maximalizační úloze LP v indexním řádku pouze nezáporná čísla (resp. v minimalizační úloze LP pouze nekladná čísla). V maximalizačních úlohách LP do báze základního řešení vstoupí proměnná, která má v indexním řádku nejnižší záporné číslo (resp. v minimalizačních úlohách LP do báze základního řešení vstoupí proměnná, která má v indexním řádku nejvyšší kladné číslo), určuje tzv. klíčový sloupec. Z báze základního řešení vystoupí proměnná s nejmenším podílem pravé strany rovnice a odpovídajících kladných koeficientů ve sloupci vstupující proměnné, určuje tzv. klíčový řádek. Prvek ležící současně v klíčovém řádku i klíčovém sloupci nazýváme klíčový prvek.

- 70 -

Po určení vstupující a vystupující proměnné se simplexová tabulka transformuje pomocí ekvivalentních řádkových úprav Jordanovy metody úplné eliminace do tvaru odpovídajícímu nové bázi. Klíčový sloupec je třeba převést na jednotkový vektor s 1 na pozici klíčového prvku. Zřejmě postačí nejprve dělit klíčový řádek klíčovým prvkem a transformovaný klíčový prvek 1 poté využít k eliminaci ostatních prvků klíčového sloupce. Uvedený postup opakujeme tak dlouho, dokud není dosaženo jednoho z možných zakončení výpočtu. Při řešení úloh LP řešitelných jednofázovou PSM může nastat jedna ze tří možných zakončení výpočtu: 1. optimální řešení úlohy LP je jediné, pokud jsou všechna indexní čísla ve sloupcích nezákladních neznámých nenulová, 2. optimální řešení úlohy LP je alternativní, pokud je některé indexní číslo pod

nezákladní proměnnou rovno 0. Nechť xopt1 a xopt2 jsou optimální řešení úlohy LP. Potom každý vektor ve tvaru

xopt = k. xopt1 + (1–k) xopt2, k  0;1 (1.29) je také optimálním řešením dané úlohy LP, 3. úloha LP má neomezenou hodnotu účelové funkce, pokud jsou všechny koeficienty klíčového sloupce nekladné. Množina všech přípustných řešení vždy obsahuje alespoň triviální VZŘ sestavené z nulových strukturních proměnných, tato úloha je tedy vždy řešitelná. Obecný zápis výsledné simplexové tabulky je možné učinit pomocí vztahů, ve kterých figuruje velmi pro další diskuse důležitá matice, která zachycuje všechny ekvivalentní řádkové úpravy, jež bylo nutné s jednotlivými řádky provést, abychom dospěli z výchozího tvaru simplexové tabulky ke tvaru výslednému a řádkový vektor tvořený cenovými koeficienty pouze ve sloupcích základních neznámých optimálního řešení, a to v pořadí, v jakém se v této bázi vyskytují.

Tabulka 13 – Výsledná simplexová tabulka – obecný tvar

B–1A B–1 B–1b

T –1 T T –1 T –1 cB B A – c cB B cB B b Zdroj: vlastní B-1… tzv. inverzní matice báze, matice, T cB … vektor cenových koeficientů základních proměnných.

- 71 -

B–1A … matice transformovaných strukturních koeficientů, B–1… inverzní matice báze, B–1b … vektor hodnot základních neznámých, T –1 T cB B A – c … vektor redukovaných cen, T –1 cB B … vektor stínových cen, T –1 cB B b … optimální hodnota účelové funkce.  Dvoufázová PSM Pokud matematický model úlohy LP obsahuje alespoň jedno vlastní omezení typu „=“ nebo „≥“, je nutné sestavit umělou účelovou funkci. V tomto případě nedostáváme sestavením simplexové tabulky výchozí základní řešení, je třeba nejprve ověřit, zda může umělá účelová funkce z´ nabývat hodnoty 0. Pokud ne, nemůže být provedeno výše popsané doplnění adjungované soustavy vlastních omezení na kanonický tvar a úloha LP nemá řešení. Algoritmus: V I. fázi řešení je třeba minimalizovat umělou účelovou funkci z´ pomocí jednofázové PSM. Úloha LP nemá přípustné řešení, pokud je minimum umělé účelové funkce kladné. Pokud má úloha LP přípustné řešení, je produktem minimalizace umělé účelové funkce z´ výchozí základní řešení. II. fáze řešení úloh LP se týká samotné optimalizace, tedy maximalizace (resp. minimalizace) účelové funkce z pomocí jednofázové PSM. U úloh LP, kde je třeba použít dvoufázovou PSM, nastává jedno ze čtyř možných zakončení výpočtu: 1. úloha LP nemá žádné přípustné řešení, pokud je minimum umělé účelové funkce kladné. 2. optimální řešení úlohy LP je jediné, pokud jsou všechna indexní čísla ve sloupcích nezákladních neznámých nenulová. 3. optimální řešení úlohy LP je alternativní, pokud je některé indexní číslo pod nezákladní proměnnou rovno 0. 4. úloha LP má neomezenou hodnotu účelové funkce, pokud jsou všechny koeficienty klíčového sloupce nekladné.

Co se týče rychlosti výpočtu pomocí primárně simplexové metody, má její algoritmus v nejhorším případě exponenciální složitost, což ovšem nastává jen ve výjimečných extrémně komplikovaných případech, simplexová metoda je obvykle

- 72 - rychlá a spolehlivá, v opačných případech je vhodné k řešení využít heuristických iterativních metod vnitřního bodu s polynomiální složitostí algoritmů. I při použití primárně simplexové metody lze využít vlastností plynoucích z duality úloh LP a místo primární úlohy lze řešit primárně simplexovou metodou úlohu k ní duální. Hodnoty strukturních a přídatných proměnných obou duálně sdružených úloh lze plnohodnotně vyčíst z posledního kroku obou způsobů výpočtu, je tedy vhodné se zabývat otázkou, který z postupů bude jednodušší a to především z hlediska možnosti vyhnout se dvoufázovému výpočtu, je-li k dispozici také výpočet jednofázový, jak tomu často bývá například u úloh o dělení materiálu. Řešení úloh LP pomocí PSM, komplikacím při výpočtu, podrobné interpretaci výsledků v simplexové tabulce a následné postoptimalizační analýze a dualitě v úlohách LP se podrobněji věnuji v Příloze 1 (Kubišová, 2014c).

Ekvivalenty simplexové metody

Následující metody jsou matematickými ekvivalenty standardní PSM, liší se pouze ve svém využití při implementaci do optimalizačních softwarů, pro ruční výpočty nejsou vhodné kvůli své komplikovanosti, umožňují ovšem mnohem stručnější způsob zápisu, při počítačovém zpracování proto mají menší nároky na paměť počítače potřebnou při řešení úlohy. Odlišnost naznačme pomocí obecného zápisu simplexové tabulky oproti vyjádření, jak jej zachycuje Tabulka 14.  Modifikovaná simplexová metoda Pokud v simplexové tabulce vynecháme sloupce jednotkové matice, zkrátíme výpočet o oblast velikostí m sloupců a m+1 řádků.

Tabulka 14 – Výchozí simplexová tabulka – ModiSM

A b

-cT 0 Zdroj: vlastní Algoritmus je třeba vhodně modifikovat, popíšeme situaci pro maximalizační úlohu: Test optimality a případné určení vstupující a vystupující proměnné: Řešení úlohy LP je optimální, právě když jsou v indexním řádku pouze nezáporná čísla. Do báze základního řešení vstoupí proměnná, která má v indexním řádku nejnižší záporné číslo, určuje tzv. klíčový sloupec. Z báze základního řešení vystoupí proměnná s nejmenším podílem pravé strany rovnice a odpovídajících kladných koeficientů ve sloupci - 73 - vstupující proměnné, určuje tzv. klíčový řádek. Prvek ležící současně v klíčovém řádku i klíčovém sloupci nazýváme klíčový prvek. Pokud takový kladný koeficient v klíčovém sloupci není, úloha nemá optimální řešení. Po určení vstupující a vystupující proměnné se simplexová tabulka transformuje do tvaru odpovídajícímu nové bázi. Klíčový prvek se nahradí jeho převrácenou hodnotou, ostatní prvky klíčového sloupce se vydělí opačným klíčovým prvkem, ostatní prvky klíčového řádku se vydělí klíčovým prvkem. Od zbývajících prvků je odečten součin odpovídajícího prvku v klíčovém sloupci a odpovídajícího prvku nového klíčového řádku. Uvedený postup opakujeme tak dlouho, dokud není dosaženo optimálního řešení.  Revidovaná simplexová metoda Pokud se v simplexové tabulce vynechají sloupce strukturních proměnných, průběžně se transformují pouze inverzní matice aktuální báze, pravé strany, stínové ceny a hodnota účelové funkce.

Tabulka 15 – Výchozí simplexová tabulka – RSM

I b

oT 0 Zdroj: vlastní K testu optimality jsou navíc potřeba průběžné hodnoty redukovaných nákladů, které se zapisují do pomocné tabulky. K výpočtu se využívá vztahů ve výsledné simplexové tabulce.

Tabulka 16 – Výsledná simplexová tabulka – RSM

B–1 B–1b

T –1 T –1 cB B cB B b Zdroj: vlastní Místo tabulky, která explicitně zobrazuje splnění vlastních omezení vzhledem k aktuálním hodnotám základních proměnných, se pracuje s inverzní maticí aktuální báze, která tuto změnu také vyjadřuje. Tento způsob výpočtu v praxi umožňuje mnohem efektivnější výpočet pro rozsáhlé úlohy LP, jelikož jsou vynechána pole obsahující „řídké“ matice, tedy matice s velkým počtem nulových prvků.

- 74 -

 Multiplikativní simplexová metoda Multiplikativní simplexová metoda je obdobou RSM, kdy se ovšem netransformuje celá aktuální inverzní matice báze, ale využívá multiplikativního vztahu -1 rozkladu Bs jakožto celkové transformace výchozí simplexové tabulky na simplexovou tabulku v s-té iteraci na součin elementárních matic Es, ve kterých je jednotkový vektor ve sloupci, jehož index odpovídá indexu klíčového řádku s-té iterace, nahrazen odpovídajícím transformovaným klíčovým sloupcem. Píšeme

–1 (1.30) Bs = Es-1. Es-2.…. E0. Upravený algoritmus revidované a multiplikativní simplexové metody podrobně popisuje Jablonský (2005).  Duálně simplexová metoda Pokud je jednodušší řešit pomocí PSM duální úlohu k původně zadané úloze LP, odkud lze řešení primární úlohy také vyčíst, je otázkou, nemohlo-li být provedeno toto řešení již v simplexové tabulce primární úlohy LP, tedy je-li možné vynechat fázi transformace úlohy primární na úlohu duální. Odpovědí je duálně simplexová metoda (dále jen DSM). Zaveďme pojmy primární přípustnost (nezápornost pravých stran), duální přípustnost (nezápornost prvků indexního řádku při maximalizaci, resp. jejich nekladnost při minimalizaci) a přípustnost (a tedy optimalita) při současné primární i duální přípustnosti. Potom je možné rychleji popsat postup PSM: výchozí řešení je primárně přípustné a může být duálně nepřípustné, během výpočtu je zachována primární přípustnost a je dosaženo duální přípustnosti. „Opačným“ způsobem naznačme postup DSM: výchozí řešení může být primárně nepřípustné a je duálně přípustné, během výpočtu j zachována duální přípustnost a je dosaženo duální přípustnost. Algoritmus: Nejprve v simplexové tabulce sestavíme výchozí základní řešení, které je duálně přípustné, tedy při maximalizaci jsou v indexním řádku rovnou nezáporné koeficienty, resp. při minimalizaci jsou v indexním řádku rovnou nekladné koeficienty. Odtud vyplývá, že DSM není univerzální, lze ji použít pouze v případě, že maximalizovaná účelová funkce má pouze záporné nebo minimalizovaná účelová funkce má pouze kladné koeficienty (častější případ, vyskytuje se např. u řezných plánů). Jelikož vlastní omezení nemusí mít pravé strany nezáporné, lze se při sestavování simplexové tabulky u všech tří typů vlastních omezení vyhnout použití umělé proměnné. DSM je proto vždy jednofázová.

- 75 -

Následuje test optimality a případné určení vystupující a vstupující proměnné. Řešení úlohy LP je optimální, právě když jsou všechny pravé strany pouze nezáporná čísla. Z báze základního řešení vystoupí proměnná s nejmenší zápornou pravou stranou, určuje tzv. klíčový řádek. Do báze základního řešení vstoupí proměnná s nejmenší absolutní hodnotou podílu hodnoty indexního čísla a odpovídajících záporných koeficientů v řádku vystupující proměnné, určuje tzv. klíčový sloupec. Po určení vstupující a vystupující proměnné se simplexová tabulka transformuje pomocí ekvivalentních řádkových úprav Jordanovy metody úplné eliminace do tvaru odpovídajícímu nové bázi. Klíčový sloupec je třeba převést na jednotkový vektor s 1 na pozici klíčového prvku. Zřejmě postačí nejprve dělit klíčový řádek klíčovým prvkem a transformovaný klíčový prvek 1 poté využít k eliminaci ostatních prvků klíčového sloupce. Uvedený postup opakujeme tak dlouho, dokud není dosaženo jednoho z možných zakončení výpočtu. Při řešení úloh LP řešitelných DSM může nastat jedna z následujících variant výsledku 1. obě úlohy mají přípustné řešení, mají tedy obě také optimální řešení, a. jedna z úloh má jediné nedegenerované optimální řešení, druhá má jediné nedegenerované řešení, b. jedna z úloh má jediné degenerované řešení, druhá úloha má alternativní řešení, 2. jedna z úloh má neomezenou hodnotu účelové funkce, druhá nemá přípustné řešení, 3. ani jedna z úloh nemá přípustné řešení, ani jedna tedy nemá optimální řešení. Vztahy vyplývající z duality dvou sdružených úloh LP tedy nabízejí volbu efektivnějšího z několika způsobů řešení v simplexové tabulce. Řešení úloh LP pomocí DSM se podrobněji věnuji v Příloze 1 (Kubišová, 2014c).

1.5.5 Vícekriteriální hodnocení variant

Matematický model úloh vícekriteriálního rozhodování tedy obsahuje několik účelových funkcí. Pokud je navíc množina posuzovaných variant popsána explicitně konkrétním výčtem všech prvků pomocí zápisu (1.11), hovoříme o úlohách vícekriteriálního hodnocení variant. Typem optimalizace kritéria opět rozumíme buď minimalizaci, je-li podle kritéria lépe hodnocena varianta s vyšší hodnotou, nebo

- 76 - maximalizaci, kdy je podle kritéria lépe hodnocena varianta s nižší hodnotou. Cílem úlohy může být jak nalezení jedné nejlepší varianty, popř. několika nejlepších variant, tak např. uspořádání všech variant sestupně od těch nejlepších nebo rozdělení variant na efektivní a neefektivní.

Vztahy mezi dvojicemi variant

Pro další úvahy poznamenejme, že každé minimalizační kritérium je možné jednoduše násobením –1 transformovat na maximalizační a naopak. Pro jednoduchost předpokládejme, že všechna kritéria jsou maximalizační. Při porovnávání odpovídajících si kriteriálních hodnot dvou variant Xi a Xj nastávají tři možné situace vztahu mezi dvojicemi variant:

Varianta Xi dominuje variantu Xj , jestliže podle každého kritéria jsou všechny kriteriální hodnoty varianty Xi lepší než kriteriální hodnoty varianty Xj a zároveň obě varianty nejsou hodnocené stejně podle všech kritérií, píšeme

(yi1, yi2 ,..., yik )  (y j1, y j2 ,..., y jk ) . (1.31)

Varianta Xj dominuje variantu Xi , jestliže podle každého kritéria jsou všechny kriteriální hodnoty varianty Xj lepší než kriteriální hodnoty varianty Xi a zároveň obě varianty nejsou hodnocené stejně podle všech kritérií, píšeme

(y j1, y j2 ,..., y jk )  (yi1, yi2 ,..., yik ) . (1.32)

Varianty Xi a Xj jsou navzájem nedominované, jestliže nenastane ani jedna z předchozích dvou možností. Řekneme, že varianta Xi je nedominovaná, jestliže neexistuje jiná varianta, která by ji dominovala. Kompromisní varianta tedy musí být nedominovaná, nedominovaných variant je ovšem v úlohách VHV obvykle velký počet, proto kompromisní varianta není určena jednoznačně a je třeba, aby rozhodovatel doplnil matematický model preferencemi důležitosti jednotlivých kritérií, které je třeba kvantifikovat a normovat.

- 77 -

Metody odhadu vah kritérií

Vektor p  p1, p2 ,..., pk  vyjadřující míru důležitosti jednotlivých kritérií Y1, …, Yk nazýváme váhový vektor, hodnota pi se nazývá váha i-tého kritéria. K jeho případnému normování využíváme vztahu

p v  i . i k (1.33)  pi i1

Vektor vyjadřující relativní míru důležitosti jednotlivých kritérií Y1, …, Yk ve tvaru  k v  v1,v2 ,...,vk , kde vi  0 pro i = 1, 2, …, n a vi  1 (1.34) i1 nazýváme normovaný váhový vektor, hodnota vi se nazývá normovaná váha i-tého kritéria.  Metoda pořadí

Pokud rozhodovatel uspořádá kritéria Y1, …, Yk sestupně podle jejich důležitosti, každému kritériu Yi je přiřazena hodnota pi tak, že nejdůležitějšímu kritériu je přiřazena hodnota k, každému dalšímu kritériu je přiřazena hodnota o jedničku nižší, než kritériu přecházejícímu. Nejméně důležitému kritériu je přiřazena hodnota 1. Odhad vah dostaneme znormováním dle (1.55).  Bodovací metoda

Pokud rozhodovatel ohodnotí důležitost kritérií Y1, …, Yk vzhledem k nějaké zvolené bodovací stupnici, např. od 1 do 10, přičemž nejvyšší hodnota odpovídá nejvyšší důležitosti kritéria, každému kritériu Yi je tak rovnou přiřazena hodnota pi. Odhad vah dostaneme znormováním dle (1.33).  Fullerův trojúhelník k  Pokud rozhodovatel zapíše pro každou ze všech   různých dvojic kritérií Y1,  2

…, Yk kritérium s vyšší důležitostí, každému kritériu Yi je přiřazena hodnota pi, která vyjadřuje, kolikrát bylo kritérium rozhodovatelem zapsáno. Odhad vah dostaneme opět znormováním hodnot pi podle (1.55).  Saatyho metoda

Pokud rozhodovatel ve dvojrozměrné tabulce porovná pro každou ze všech

různých dvojic kritérií Y1, …, Yk důležitost kritéria Yi uvedeného v i-tém řádku

- 78 - s důležitostí kritéria Yj uvedeného v j-tém sloupci, každé dvojici kritérií Yi, Yj je tak ze škály pevně dané slovní či bodovací stupnice přiřazena hodnota sij vyjadřující míru tohoto vztahu. Stupnice převádějící verbální hodnocení na numerické bývá obvykle v této podobě:

 kritéria Yi, Yj jsou stejně důležitá sij = sji = 1,  kritérium Yi je slabě důležitější než kritérium Yj sij = 3, sji = 1/3,  kritérium Yi je silně důležitější než kritérium Yj sij = 5, sji = 1/5,  kritérium Yi je velmi silně důležitější než kritérium Yj sij = 7, sji = 1/7,  kritérium Yi je extrémně důležitější než kritérium Yj sij = 9, sji = 1/9.

Prvky sij můžeme interpretovat jako odhady podílu vah i-tého a j-tého kritéria v tomto pořadí. Matice S = (sij) sestavená z hodnot sij z provedeného párového porovnání se nazývá Saatyho matice, jednou z nejjednodušších možností je odhadnout váhy pomocí geometrického průměru prvků jednotlivých řádků podle

k (1.35) pi  k  sij pro i = 1, 2, …, k. j1 Odhad normovaných vah dostaneme znormováním dle (1.55).

Metody vícekriteriálního hodnocení variant

 Metoda váženého součtu Pro použití metody váženého součtu (Weighted Sum Approach), ozn. WSA, nejprve zkonstruujeme tzv. funkci užitku varianty podle každého kritéria, která nabývá hodnot z intervalu 0;1 , nejhorší hodnotě přiřadí užitek 0, nejlepší hodnotě přiřadí užitek 1 podle každého kritéria.

Funkci užitku yij´ vyjadřující užitek varianty Xi při hodnocení podle maximalizačního kritéria Yj definujeme jako y  Dj ij (1.36) yij ´ H j  D j

Funkci užitku yij´ vyjadřující užitek varianty Xi při hodnocení podle minimalizačního kritéria Yj definujeme jako Hj  y ij (1.37) yij ´ H j  D j kde Dj je nejnižší kriteriální hodnota a Hj je nejvyšší kriteriální hodnota kritéria Yj.

Čím větší je při maximalizaci rozdíl mezi yij a nejnižší kriteriální hodnotou Dj, resp. čím větší je při minimalizaci rozdíl mezi yij a nejvyšší kriteriální hodnotou Hj, tím

- 79 - lépe bude varianta hodnocena, tedy tím vyšší bude přiřazená hodnota yij´. Obecněji řečeno, hledáme podle každého kritéria zvlášť variantu nejvzdálenější od varianty nejhorší.

Celkový užitek varianty Xi spočteme jako vážený součet dílčích užitků varianty podle jednotlivých kritérií

k (1.38) uX i    yij ´.v j j1

Hodnocené varianty uspořádáme sestupně podle hodnoty užitku u(Xi).  Metoda TOPSIS Další metoda hledá míru shody posuzovaných variant s tzv. ideální variantou (Technique for Order of Preference by Similarity to Ideal Solution), odtud označení

TOPSIS. Nejprve transformujme každé minimalizační kritérium Yk na maximalizační tak, že minimalizaci kriteriálních hodnot yik nahradíme maximalizací jejich rozdílu od nejhorší (nejvyšší) kriteriální hodnoty Hk – yik.= yik´. Tyto kriteriální hodnoty dále transformujeme na hodnoty

yij ´ rij  pro i = 1, 2, …, n, j = 1, 2, …, k. n 2 (1.39) yij ´ i1

Váženou kriteriální maticí W = (wij) nazýváme matici sestavenou z prvků (1.40) wij  rij .v j pro j = 1, 2, …, k Pro každé kritérium vyberme nejlepší a nejhorší kriteriální hodnotu, z nich uměle sestavme dvě další varianty: Mějme matici W, položme Hj = maxi (wij) a Dj = minj (wij) pro každé j. Ideální variantou rozumíme variantu sestavenou z nejlepších kriteriálních hodnot pro každé kritérium (H1, H2, …, Hk). Bazální variantou rozumíme variantu sestavenou z nejhorších kriteriálních hodnot pro každé kritérium (D1, D2,…, Dk). Vzdálenosti i-té varianty od ideální varianty definujeme jako

k  2 di  wij  H j  pro i = 1, 2, …, n, (1.41) j1 vzdálenosti i-té varianty od bazální varianty definujeme jako

k  2 di  wij  D j  pro i = 1, 2, …, n. (1.42) j1

- 80 -

Nyní je třeba vybrat variantu relativně nejbližší k variantě ideální. Relativní vzdálenost i-té varianty od bazální varianty definujeme

 di ci    pro i = 1, 2, …, n. (1.43) di  di

Hodnocené varianty uspořádáme sestupně podle relativní vzdálenosti ci.  Metoda AHP Metoda využívající modelu průběhu rozhodovacího procesu rozepsaného po jednotlivých úrovních hierarchické struktury (Analytic Hierarchy Process), ozn. AHP, je z uvedených metod nejnáročnější na výpočet, ovšem v praxi patří mezi nejčastěji používané postupy vícekriteriálního hodnocení variant. Jednotlivé úrovně jsou tvořeny prvky modelu různých typů uspořádanými podle jejich významu. Na nejvyšší úrovni obvykle dochází k vyhodnocování samotného cíle, tedy výběr kompromisní varianty či uspořádání variant. Toto ohodnocení probíhá na nejjednodušším tříúrovňovém hierarchickém modelu pomocí matic párových porovnání, mezi I. a II. úrovní jejich prvky obvykle označujeme vi a nazýváme váhy j-tého kritéria, mezi II. a III. úrovní je obvykle označujeme wij. a nazýváme preferenční index i-té varianty hodnocené podle j-tého kritéria. Součet všech ohodnocení v jedné větvi následující úrovně musí dát ohodnocení jí přímo nadřazeného prvku, musí tedy platit

k n (1.44) v j  1,  wij  v j pro i = 1, 2, …, n, j = 1, 2, …, k. j1 i1 Provádí se tak vlastně stále drobnější dělení stálého součtu vah 1 na nižších úrovních. Celkový užitek i-té varianty definujeme jako

k (1.45) uX i   wij  v j pro i = 1, 2, …, n, j1

Hodnocené varianty uspořádáme sestupně podle celkového užitku u(Xi).

1.5.6 Vícekriteriální lineární programování

Pokud matematický model úloh vícekriteriálního rozhodování obsahuje několik účelových funkcí a množina posuzovaných variant je popsána systémem vlastních omezení pomocí zápisu (1.7), hovoříme o úlohách vícekriteriálního hodnocení variant. Typem optimalizace kritéria opět rozumíme buď minimalizaci, je-li podle kritéria lépe hodnocena varianta s vyšší hodnotou, nebo maximalizaci, kdy je

- 81 - podle kritéria lépe hodnocena varianta s nižší hodnotou. Cílem řešení úloh VLP je nalezení kompromisního řešení. Definuje se přípustnost a (ne)dominovanost řešení obdobně jako u variant, odkud opět vyplývá, že se stačí zabývat pouze nedominovanými řešeními.

Metody řešení úloh VLP

Metody VLP jsou založeny na různých přístupech, obvykle převádějí úlohu VLP s několika účelovými funkcemi na řešení jedné či více úloh LP s jedinou účelovou funkcí běžnou simplexovou metodou.  Agregace účelových funkcí Pokud jsou rozhodovatelem stanoveny preference jednotlivých účelových funkcí

k z1, z2, …, zk normalizovanými váhami v1, v2, …, vk, kde vi  1, je možné i1 zkonstruovat z účelových funkcí funkci jedinou podle předpisu

k  i  (1.46) z  vi c x . i1 Kompromisní řešení zadané úlohy VLP je nalezeno jako optimální řešení úlohy LP, která na původní množině přípustných řešení maximalizuje tuto funkci (1.54).  Kompromisní řešení podle minimální komponenty Tato metoda se snaží maximalizovat nejhorší z hodnot (kvůli srovnatelnosti opět relativizovaných) účelových funkcí z1, z2, …, zk. Tuto hodnotu označíme  a budeme ji nazývat minimální komponenta řešení. Kompromisní řešení zadané úlohy VLP je nalezeno jako optimální řešení úlohy LP maximalizovat účelovou funkci

z =  (1.47) na množině přípustných řešení původní úlohy VLP doplněné o podmínky (1.48) zj/zjmax ≥  pro každé j = 1, 2, …, k, jinými slovy řečeno, usilujeme o to, aby nejhorší z hodnot normalizovaných účelových funkcí byla nakonec co nejlepší.  Minimalizace relativní vzdálenosti od ideálních hodnot

Ideální hodnotou účelové funkce zi nazýváme její optimální hodnotu, kterou označíme ziopt pro každé i = 1, 2, …, k.

- 82 -

Tato metoda se snaží minimalizovat vážený součet relativních odchylek hodnot od příslušných ideálních hodnot. Pokud jsou rozhodovatelem stanoveny preference jednotlivých účelových funkcí

k z1, z2, …, zk normalizovanými váhami v1, v2, …, vk, kde vi  1, zkonstruujeme funkci i1 z podle předpisu

k  i  z  vi ziopt  c x. (1.49) i1 Kompromisní řešení zadané úlohy VLP je nalezeno jako optimální řešení úlohy LP, která na původní množině přípustných řešení maximalizuje tuto funkci (1.46).

1.5.7 Cílové programování Nejenom ve vícekriteriálním lineárním programování se uplatní další princip hledání řešení úloh LP pomocí odlišného způsobu formulace vlastních omezení, nazývaný cílové programování (goal programming). Pokud je nutné podmínky pro kapacity či požadavky striktně dodržet, tak jako tomu bylo u úloh popsaných výše, hovoříme o tzv. pevných cílech, k vyrovnání těchto podmínek postačí (jednostranně orientované) přídatné neznámé. Pokud však v podmínce může být kapacita mírně překročena či požadavek mírně nedosažen, hovoříme o tzv. volných cílech, a pro jejich pravé strany používáme označení gi a nazýváme je cílové hodnoty (goal values). Pro pravou stranu i-tého volného cíle použijeme k vyjádření kladné odchylky od zadané cílové hodnoty gi tzv. kladnou odchylkovou proměnnou, kterou budeme + značit symbolem di a k vyjádření záporné odchylky od zadané cílové hodnoty gi – tzv. zápornou odchylkovou proměnnou, kterou budeme značit symbolem di , přičemž pro odchylkové proměnné samozřejmě platí podmínky nezápornosti a alespoň jedna z obou odchylkových proměnných je proto vždycky nulová. Volné cíle zapisujeme ve tvaru

n     aij x j  di  di  gi , kde di  0 ; di  0 , (1.50) j1 nazýváme je i-té bilanční omezení. Pokud bylo původní i-té omezení před úpravu popsáno nerovnicí typu „≤“, je + zřejmé, že by bylo lepší, kdyby hodnota kladné odchylkové proměnné di zůstala nulová. Pokud bylo původní i-té omezení před úpravu popsáno nerovnicí typu „≥“, je

- 83 -

– zřejmé, že by bylo lepší, kdyby hodnota záporné odchylkové proměnné di zůstala nulová. V obou případech hovoříme o tzv. nežádoucích odchylkách, jejichž kladné hodnoty znamenají (byť povolené) nedodržení i-tého omezení. Účelová funkce modelu cílového programování je vždy minimalizací nežádoucích odchylek: – 1) minimalizace záporné odchylkové proměnné di vede k získání řešení, které se k cílové hodnotě gi blíží zdola, setkáme se s ní např. u požadavku konkrétního minimálního zisku. + 2) minimalizace záporné odchylkové proměnné di vede k získání řešení, které se k cílové hodnotě gi blíží shora, setkáme se s ní např. u požadavku konkrétního maximálního rizika investice, – + 3) minimalizace součtu záporné a kladné odchylkové proměnné di + di vede k získání řešení, které se k cílové hodnotě gi blíží oboustranně, setkáme se s ní např. u požadavku dodržení přibližného množství nějaké složky jídelníčku. Úlohy cílového programování obvykle obsahují více cílů, jejichž důležitost může být opět zadána rozhodovatelem, a to buď v podobě uspořádání podle důležitosti, nebo pomocí vah.  Cíle uspořádané podle preferencí Jsou-li cíle rozhodovatelem pouze uspořádány sestupně dle jeho preferencí, resp. jsou-li cíle zařazeny do jednotlivých preferenčních stupňů, řešíme úlohu v několika krocích, sestupně pro jednotlivé stupně, tedy od cílů s nejvyšší preferencí. Při jejich optimalizaci (minimalizaci součtu jejich nežádoucích odchylek) dojde ke zmenšení množiny přípustných řešení, v dalším stupni je již optimalizace cílů s nižší preferencí provedena na této menší množině. Postup opakujeme tak dlouho, dokud má zmenšená množina přípustných řešení více než jeden prvek, který je prohlášen za optimální řešení.  Volné cíle s důležitostí zadanou vahami

– Jsou-li cíle rozhodovatelem ohodnoceny pomocí vah tak, že vi je váha

 přiřazená i-té záporné nežádoucí odchylce a vi je váha přiřazená i-té kladné nežádoucí

k k   odchylce, přičemž vi  vi  1, minimalizujeme celkový vážený součet všech i1 i1 relativních nežádoucích odchylek od příslušných cílových hodnot gi a účelová funkce je obvykle ve tvaru

- 84 -

–  – di  di z  vi vi pro všechna i. (1.51) i gi i gi Cílovému programování je věnována kapitola v Příloze 1 (Kubišová, 2014).

1.5.8 Dopravní tabulka

Dopravní úlohy není vhodné řešit simplexovou metodou, jelikož vede na řešení dvoufázovou variantou s m umělými proměnnými. Zároveň jsou jejich strukturní matice „řídké“ a po odebrání jednoho řádku lineárně nezávislé. Je proto praktičtější vepsat koeficienty matematického modelu do přehledné tabulky, kde řádky odpovídají vlastním omezením pro dodavatele; pravý sloupec obsahuje jednotlivé kapacity, sloupce naopak odpovídají vlastním omezením pro odběratele a dolní řádek obsahuje jednotlivé požadavky, jak ukazuje Tabulka 17. Bude-li hodnota strukturní proměnné kladná, budeme hovořit o obsazeném poli, bude-li nulová, budeme hovořit o neobsazeném poli. Algoritmus: Řešení probíhá ve dvou fázích. I. fáze řešení úloh LP se obecně týká nalezení výchozího základního řešení. Hledáme nejprve jakékoli přípustné základní řešení. Kromě splnění všech omezení úlohy (nezápornost, řádkové a sloupcové součty) musí obsahovat nejvýše nenulových složek a vektory základních řešení musí být lineárně nezávislé, což v tabulce poznáme tak, že obsazená pole netvoří uzavřený obvod, který kolmými úsečkami propojuje některá z obsazených polí, a vrací se do pole výchozího.

Tabulka 17 – dopravní tabulka – I. fáze

DT O1 O2 On ai

c11 c11 c1n D1 … a1 x11 x12 x1n

c21 c22 c2n D2 … a2 x21 x22 x2n

… … … … … …

cm1 cm2 cmn Dm … am xm1 xm2 xmn

bj b1 b2 … bn

Zdroj: vlastní Využíváme nejčastěji jednu ze tří metod, které jsou seřazeny podle sofistikovanosti algoritmu, jednodušší obvykle dávají VZŘ s horší hodnotou funkce z.

- 85 -

 Metoda SZR Pomocí metody severozápadního rohu, jak název napovídá, obsazujeme pole dopravní tabulky směrem od levého horního rohu až k pravému dolnímu rohu co nejvyšším množstvím komodity, ceny jednotlivých cest přitom zcela ignorujeme.  Indexní metoda (vzestupná) Další metoda již bere v potaz ceny jednotlivých cest a obsazuje vždy pole s nejnižší cenou co nejvyšším množstvím komodity. Pokud je více polí s aktuálně nejnižší cenou, obsadí to, na které lze umístit nejvyšší možné množství komodity.  Metoda VAM Ještě důkladněji se vztahům mezi cenovými indexy věnuje Vogelova aproximační metoda, která porovnává dva nejnižší cenové indexy v každém řádku a v každém sloupci. Pomocí rozdílů těchto dvojic, tzv. diferencí vyhodnocuje, ve kterém poli by promeškání obsazení nejlevnější cesty mělo za následek největšího zhoršení cenového indexu a tím i hodnoty účelové funkce. V každém kroku vybírá nejmenší z diferencí a ve vybrané řadě (řádku nebo sloupci) obsazuje pole s nejnižší cenou maximálním možným množstvím komodity.

Pokud je obsazených polí méně než m + n – 1, je třeba vhodným fiktivním obsazením zbývajícího počtu polí formálně degenerované základní řešení převést na nedegenerované, pro které je algoritmus určen. Řešení problémů s degenerací se věnuji v Příloze 1 (Kubišová, 2014).

Dopravní tabulka

II. fáze se zabývá skutečnou optimalizací, pro zápis hodnot primárních i duálních proměnných a také primárních a duálních vlastních omezení se velmi osvědčila tzv. dopravní tabulka, její obecný tvar zachycuje Tabulka 18. Při optimalizaci se využívá principů duality. Tabulka obsahuje všechny potřebné

údaje: hodnotu primární neznámé xij uprostřed pole, odpovídající cenový index cij v pravém horním rohu pole a nedodržení odpovídajícího duálního vlastního omezení zij v levém horním rohu. V pravém sloupci a v dolním řádku obsahuje navíc hodnoty duálních neznámých ui a vj.

- 86 -

Tabulka 18 – dopravní tabulka – II. fáze

T O1 O2 On ui

z11 c11 z11 c11 z1n c1n D1 … u1 x11 x12 x1n

z21 c21 z22 c22 z2n c2n D2 … u2 x21 x22 x2n

… … … … … …

zm1 cm1 zm2 cm2 zmn cmn Dm … um xm1 xm2 xmn

vj v1 v2 … vn

Zdroj: vlastní Nejčastěji se k testování optimality používá tzv. modifikovaná distribuční metoda, zkráceně MODI metoda. Test optimality vychází z předpokladu, že aktuální základní řešení je optimální a pomocí věty o rovnováze prověřuje platnost všech dvojic duálně sdružených podmínek. Z údajů v obsazených polích se dopočítají hodnoty duálních proměnných. Jejich vztahy zapíšeme jako soustavu duálních vlastních omezení splněných jako rovnost, protože podle věty o rovnováze mají odpovídat primárním podmínkám nezápornosti, které jsou splněny jako ostrá nerovnost, výpočet proto probíhá pouze v polích kladných primárních proměnných, kde

pro xij > 0 v optimálním řešení platí ui + vj = cij. (1.52) Pro nedegenerované řešení tedy sestavíme soustavu právě m + n – 1 lineárně nezávislých rovnic pro všech m + n duálních neznámých. Co se týče počtu jejích řešení, je její hodnost h = m + n – 1 a počet neznámých n = m + n. Z Frobeniovy věty vyplývá, že soustava má nekonečně mnoho řešení, obecně je ovšem vždy k zápisu obecného řešení potřeba právě n – h = 1 volná neznámá. Pro neobsazená pole, kde jsou ostatní primární podmínky nezápornosti splněny jako rovnost nule, musí být podle věty o rovnováze v optimálním řešení ostatní duální vlastní omezení splněna jako ostré nerovnosti. Výpočet proto probíhá pouze v polích nulových primárních proměnných, kde pro xij = 0 v optimálním řešení platí ui + vj < cij,, což je třeba ověřit dosazením právě spočtených duálních proměnných do těchto nerovnic, které z praktických důvodů přepíšeme ekvivalentním způsobem

- 87 -

ui + vj – cij < 0, (1.53) abychom mohli vždy porovnávat s nulou. Levou stranu nerovnosti stručně označme jako zij, jelikož se vlastně jedná o redukované ceny. Její hodnoty pro neobsazená pole zapišme do levého horního rohu příslušného pole dopravní tabulky. Test optimality: V minimalizační dopravní úloze LP je hodnota účelové funkce z optimální, jestliže je pro všechny redukované ceny zij < 0. Pokud dosažené řešení není optimální, přejdeme k základnímu řešení s výhodnou volbou nové báze. Jedna ze základních neznámých původní báze se stane nezákladní, nahradí ji proměnná, která byla v předchozím řešení nezákladní. V minimalizačních dopravních úlohách LP do báze základního řešení vstoupí proměnná, které odpovídá nejvyšší hodnota redukované ceny zij. Určuje neobsazené pole, které propojíme jednoznačně určeným tzv. Dantzigovým uzavřeným cyklem s vrcholy v některých z obsazených polí. V minimalizačních dopravních úlohách LP z báze základního řešení vystoupí proměnná na lichém vrcholu (počítáno od neobsazeného pole) uzavřeného cyklu s aktuálně nejmenší hodnotou primární proměnné, kterou označíme t. Základní řešení v nově vybrané bázi získáme z předchozího základního řešení přesunutím množství komodity t mezi vrcholy Dantzigova uzavřeného cyklu přičtením k hodnotám v sudých nebo odečtením od hodnot v lichých vrcholech cyklu. Po konečném počtu kroků je dosaženo optima. Při řešení vyrovnaných dopravních úloh LP může nastat jedna ze dvou variant výsledku:

1. úloha má jediné optimální řešení, jestliže pro obsazená pole je max zij < 0,

2. úloha má alternativní řešení, jestliže pro obsazená pole je max zij = 0.

 Maďarská metoda

Přiřazovací úlohy jsou speciálním případem dopravní úlohy, v každém řádku a v každém sloupci (dopravní) tabulky je třeba obsadit číslem 1 právě jedno pole, zatímco ostatní pole zůstanou neobsazená, jde tedy o silnou degenerovanost problému, což činí předchozí metodu nepoužitelnou. Nejčastěji se k řešení používá speciální tzv. Maďarská metoda (maďarských autorů Königa a Egervaryho) využívající algoritmu redukcí matice sazeb (ohodnocení vhodnosti spárování). Zjednodušení tabulky - 88 - dosáhneme opakovaným odečítáním minimálního prvku od každé řady (řádku nebo sloupce), snížení všech sazeb o konstantu jistě nezmění pořadí vhodnosti přiřazení jednotlivých objektů, redukované sazby se stále liší o stejný počet bodů jako sazby původní. Pokud se v tabulce objeví v některé z řad nezávislá nula, tedy jediná nula v této řadě, vedeme tímto bodem krycí čáru řadou kolmou k této řadě. Dokud v tabulce není m krycích čar, algoritmus pokračuje: Z polí dosud nepřeškrtnutých krycí čarou se vybere minimum a odečte se od nepřeškrtnutých polí, jedenkrát přeškrtnutá pole v rámci tohoto kroku neměníme, ke dvakrát přeškrtnutým polím je třeba přičíst toto minimum. Následuje opět hledání nezávislých nul a vedení krycích čar… Počet všech možných výběrů dvojic roste jako funkce n!, algoritmus Maďarské metody je ovšem mnohem efektivnější, než výpočet přímou metodou dopravní tabulky při očekávané degeneraci. Patří do třídy O(n3), má tedy pouze polynomiální (kubickou) asymptotickou složitost a umožňuje řešit poměrně rozsáhlé přiřazovací problémy pro tisíce objektů. Použití algoritmu demonstruje např. Zahradník (1971).

VAM pro okružní dopravní problém

V okružním dopravním problému je třeba projít m míst právě jednou, vrátit se zpět do výchozího místa a přitom minimalizovat délku trasy. K řešení lze použít obdobu Vogelovy aproximační metody (VAM) vyhledávající řadu s maximální diferencí dvou nejkratších cest, v každém kroku je však třeba vyloučit cesty, které by předčasně uzavřely okruh. (Další možností je metoda nejbližšího souseda, vybírá v aktuálním místě trasu k nejbližšímu nenavštívenému místu, začátek trasy je volen postupně ve všech m místech, porovnají se celkové délky všech m uzavřených okruhů. Tato metoda ovšem patří do grafových algoritmů.)

1.5.9 Metody teorie grafů

Při řešení optimalizačních úloh, obzvláště u některých z právě zmíněných dopravních problémů, bývá někdy velmi výhodné využít poznatků teorie grafů, uzly (vrcholy) a hranami (někdy ohodnocenými) je lze velmi názorně modelovat. Definují se pojmy jako sousední vrcholy, souvislý graf, orientovaný graf, ohodnocený graf, cesta, kružnice, strom či síť. Obvykle se v průběhu algoritmu využívá prohledávání grafu do šířky, kdy se hledají všechny hrany do ještě nenavštívených vrcholů, nebo prohledávání do hloubky, kdy se hledá hrana vedoucí do dosud nenavštíveného uzlu.

- 89 -

Ve složitějších případech je třeba použít oceněné hrany či topologicky očíslované vrcholy. Mezi základní úlohy patří hledání nejkratší cesta (nejrychleji z místa A do místa B, problém obchodního cestujícího), nejlevnější kostra (minimální délka sítě optických kabelů, rozvod elektřiny) či maximální tok v síti (propustnost potrubí). Grafovými algoritmy se zde hlouběji nezabývám. (Fuchs, 1986), (Turzík a Pavlíková, 2007), (Šišma 1997).

1.5.10 Metody celočíselného programování

Pokud matematický model úlohy LP obsahuje také podmínku celočíselnosti, je její řešení mnohem komplikovanější, výrazně vzrůstá asymptotická složitost algoritmu. Oproti úlohám (spojitého) lineárního programování jsou algoritmy pro řešení úlohy celočíselného lineárního programování výrazně výpočetně složitější, i s pomocí výpočetní techniky trvají výpočty rozměrnějších úloh velmi dlouho. Z důvodu velkého praktického významu probíhá v oblasti hledání způsobu jak efektivněji řešit úlohy celočíselné optimalizace široký teoretický výzkum. Popišme nyní dva rozdílné přístupy.

Metoda větvení a mezí

Univerzálním nástrojem pro řešení většiny typů těchto úloh jsou metody kombinatorické, věnujme se pouze ryze celočíselným úlohám, které mají pouze konečný počet kombinací přípustných celočíselných hodnot proměnných, v obecném případě jich ovšem může být velmi mnoho. Podstatou kombinatorických metod je efektivní prohledávání těchto kombinací, věnujme se jednomu z těchto algoritmů. Metoda větvení a mezí navržená autorkami Land a Doig je určena pro ryze i smíšeně celočíselné úlohy LP za předpokladu, že ceny v účelové funkci jsou vždy celá čísla. Algoritmus: Nejprve vypočítáme optimální řešení úlohy LP(0) se zanedbáním podmínek celočíselnosti, např. primárně simplexovou metodou, kterou lze použít vždy, 0 0 tedy vektor optimálního řešení x = (x1; x2, …, xn) a příslušnou hodnotu z . Pokud je toto řešení celočíselné, výpočet končí. Pokud nalezené řešení není celočíselné, přistoupíme k větvení množiny polygonu přípustných řešení neceločíselné úlohy X0 na dvě podmnožiny X1 a X2. Z vektoru x0 vybereme jednu libovolnou proměnnou, která porušuje podmínku 0 0 1 celočíselnosti, např. xk, jejíž hodnota ve vektoru x je rovna xk . Množina X vznikne doplněním množiny X0 o podmínku

- 90 -

0 xk ≥ [ xk ] + 1, (1.54) množina X2 vznikne doplněním množiny X0 o podmínku

0 xk ≤ [ xk ] (1.55) V každé z obou větví je vypočteno optimální řešení neceločíselné úlohy a proces větvení pokračuje tak dlouho, dokud není nalezeno optimální celočíselné řešení, jeho optimalita je potvrzena porovnáváním horních mezí hodnoty účelové funkce celočíselné úlohy v jednotlivých větvích. Každá z větví může být ukončena jedním z následujících způsobů: ve větvi je dosaženo celočíselného řešení, ve větvi neexistuje žádné přípustné řešení, ve větvi je nalezeno neceločíselné řešení, ale horní mez pro hodnotu účelové funkce odpovídající tomuto řešení je nižší než hodnota účelové funkce celočíselného řešení, již dříve nalezeného v některé z ostatních větví. Po uzavření všech větví celý proces větvení končí, nejlepší nalezené celočíselné řešení (pokud existuje) je hledaným optimálním řešením celočíselné úlohy LPC. Jelikož jsou v každém kroku vytvořeny nové dvě úlohy LP mající o jedno vlastní omezení více, složitost algoritmu velmi rychle narůstá a řešení celočíselných úloh patří mezi nejsložitější úkoly lineárního programování. Přesto je dnes právě metoda větvení nejčastěji implementovaným algoritmem hledání celočíselného řešení, během výpočtu průběžně nabízí optimu blízká celočíselná řešení, která mohou být využita v případě, že je třeba algoritmus z časových důvodů zastavit před jeho ukončením. Užití metody je prezentováno v Příloze 1 (Kubišová, 2014c) na straně 109.

Gomoryho metoda sečných nadrovin

Metody vhodné pro ryze i smíšeně celočíselné úlohy LP vycházejí z množiny přípustných řešení úlohy LP bez podmínek celočíselnosti. Pro množinu přípustných řešení úlohy LP bez podmínek celočíselnosti je nejprve pomocí simplexové metody nalezeno optimální řešení. Pokud není celočíselné, je v každém dalším kroku konstruováno jedno další omezení úlohy, které doplní soustavu vlastních omezení úlohy LP a oddělí z této množiny přípustných řešení podmnožinu, která neobsahuje žádné celočíselné řešení. Pro nově vzniklou soustavu vlastních omezení je opět simplexovou metodou vypočteno

- 91 - optimální řešení, dělení pokračuje tak dlouho, dokud není odděleno optimální celočíselné řešení úlohy. Typickým zástupcem této skupiny metod je Gomoryho metoda sečných nadrovin pro řešení ryze celočíselných úloh LP, která byla historicky první metodou navrženou pro řešení celočíselných úloh LP v simplexové tabulce. Algoritmus: Nejprve vypočítáme optimální řešení úlohy LP(0) se zanedbáním podmínek celočíselnosti, např. primárně simplexovou metodou, kterou lze použít vždy, 0 0 tedy vektor optimálního řešení x = (x1; x2, …, xn) a příslušnou hodnotu z . Pokud je toto řešení celočíselné, výpočet končí. Pokud nalezené řešení není celočíselné, doplní se k soustavě vlastních omezení tzv. řezná nadrovina. Předpokládejme, že základní proměnná v i-tém řádku simplexové tabulky porušuje podmínku celočíselnosti. Nově konstruovanou podmínku píšu ve tvaru

n  rij x j  xn1  ri0 , (1.56) j1

kde koeficienty rij jsou celočíselné zbytky strukturních koeficientů i-tého řádku s. tabulky, pravá strana rovnice ri0 je celočíselný zbytek hodnoty pravé strany v i-tém

řádku s. tabulky, proměnná xn+1 je nově zavedená přídatná proměnná k tomuto novému omezení. V každém kroku doplníme do simplexové tabulky jednu řeznou nadrovinu, kvůli záporné hodnotě pravé strany dostáváme vždy primárně nepřípustné řešení a duálně simplexovou metodou je nalezeno optimum nové úlohy. Po konečném počtu kroků je nalezeno celočíselné řešení úlohy nebo tato řešení konvergují k optimálnímu celočíselnému řešení. Jelikož v každém kroku přibude v simplexové tabulce jedno omezení a jedna přídatná neznámá, také u této metody mohou vzniklé simplexové tabulky nabývat už u původně poměrně malých matematických modelů úloh LP značných rozměrů, z čehož vyplývá velká výpočetní náročnost metody i při využití speciálních softwarů. Jelikož tato metoda nenabízí v průběhu výpočtu žádné celočíselné řešení, je v optimalizačních programech implementovaná zřídka. Užití metody je prezentováno v Příloze 1 (Kubišová, 2014c) na straně 112.

- 92 -

1.5.11 Vyjádření optima za nejistoty hodnot parametrů v úlohách LP

Při studiu problematiky lineárního programování se obvykle setkáváme s demonstračními úlohami, které vedou k sestavení matematického modelu, jehož všechny koeficienty jsou konkrétní reálná čísla, čemuž také odpovídá budovaná teorie. V praxi ovšem často nelze zdrojová data přesně stanovit, a pokud se chceme vyvarovat zkreslení reálné situace použitím zástupných teoretických hodnot, je třeba nahradit je volnějším vyjádřením. Nejčastěji se tento problém týká kapacit jednotlivých požadavků, uvažujme například situaci, že disponibilní množství surovin ve skladu se ještě může v nějakém rozmezí změnit nebo je určeno pouze vágní formulací rozhodovatele, tedy jeho konkrétní hodnota není v době výpočtu přesně známa. Nabízí se dvě základní možnosti, jak se s nepřesností u těchto údajů vyrovnat při formulaci matematických modelů, využijme intervalového a fuzzy vyjádření kapacit vlastních omezení. Lze použít klasický algoritmus, ale je třeba vymezit množinu případných optimálních řešení pomocí tzv. optimistických a pesimistických odhadů, případně také pravděpodobnost jejich skutečné realizace. Vlastní teoretické výsledky intervalové a fuzzy analýzy vyjádření optimálního řešení úlohy LP jsou přijaty k publikaci (Kubišová 2015b, 2015a).

Intervalová analýza

Jednodušší přístupem je nahrazení přesné kapacity v zápisu matematického modelu číslem intervalovým, které vymezuje jaké nejmenší a jaké nejvyšší hodnoty může případně daná kapacita dosáhnout. Realizace žádné z hodnot intervalu není upřednostněna. Řešení získáme pomocí metod intervalové analýzy. Intervalovým číslem rozumíme uzavřený interval [,],a b a b ,(,)( a b   ,)  2 . (Moor a kol. 2009) Aritmetické operace s intervalovými čísly definujeme vztahy: [a , b ] [ c , d ]  [ a  c , b  d ], [a , b ] [ c , d ]  [ a  d , b  c ],

[,][,][mina b c d   ac , ad , bc , bd  ,max  ac , ad , bc , bd  ], [a , b ] /[ c , d ] [ a , b ]  [1/ d ,1/ c ] pro 0  [ c , d ].

Pro a (,)   klademe a[,] a a . Jestliže a 0, pak píšeme [ab , ] 0 apod. Operaci dělení lze zapisovat též ve formě zlomků a dle potřeby symbol operace násobení · vynecháváme.

- 93 -

Dále uveďme některé vlastnosti intervalových čísel: Jestliže A, B, C jsou intervalová čísla, potom pro operaci součet intervalových čísel platí komutativní a asociativní zákon A B  B  A A B  C  A  B C 0  A  A a pro operaci součin intervalových čísel platí komutativní a asociativní zákon ABBA   ABCABC()()     1AA a ve speciálním případě také distribuční zákon ABCABAC()      ABCABAC()      pro BC0 . Jestliže A, B, C, D jsou intervalová čísla ACBD, , potom platí A  B  C  D

A  B  C  D A B  C  D A/ B  C / D pro 0D Jestliže A[,] a b a B [,] c d , potom platí pro ac0, 0 je A B[,] ac bd , pro bd 0, 0 je A B[,] bd ac , pro ac0, 0 je A/ B  a/ d;b/c. Ještě je třeba uvést definici intervalové funkce a její intervalové hodnoty:

Nechť y f( x1 ,..., xn ) je reálná funkce a II1,..., n jsou intervalová čísla. Intervalovou hodnotou této funkce rozumíme intervalové číslo (pokud existuje)

[minf ( x11 ,..., xnn ),max f ( x ,..., x )], kde (x11 ,..., xnn ) I   I , a funkci f( I1 ,..., In ) nazýváme intervalová funkce.

Jestliže spojitá funkce y f( x1 ,..., xn ) na množině II1 n je rostoucí, resp. klesající ve všech nezávisle proměnných na množině , potom její intervalová hodnota je

[minf ( x11 ,..., xnn ),max f ( x ,..., x )] =[f (min I11 ,...,min Inn ), f (max I ,...,max I )],

- 94 - resp.

[minf ( x11 ,..., xfnn ),max x x ( ,..., )] =[f (max II11 ,...,max fnn II ), (min ,...,min )].

n Speciálně lineární intervalová funkce ya x ii, (xxII11 ,...,nn )   ,kde i1 aa1,..., n jsou reálné konstanty, je v jednotlivých proměnných xi rostoucí, resp. klesající, jestliže ai  0 , resp. ai  0 . Proto můžeme psát

n n nn  [miny ,max y ] ai min I i  a i max I i ,  a i max I i  a i min I i . ii1 ii  1  11 aii0 aii  0 aa  00

Případ, kdy je ai  0 , nemá vliv na hodnotu extrému dané funkce.

Jestliže místo přesně stanovených kapacit bi uvažujeme intervalová  čísla Bbiii [ b ,] , tj. intervaly obsahující bi, i = 1, 2, můžeme zapsat intervalovou soustavu lineárních rovnic

a x  a x  B 11 1 12 2 1 (1.57) a21x1  a22x2  B2

Při změně soustavy lineárních rovnic z tvaru (1.28) na (1.57) je zřejmě (nezměněná) matice A stále regulární. Nová soustava má tedy stále jediné řešení, které zapíšeme ve tvaru X = (X1, X2), kde

X1 = [min x1, max x1],

X2 = [min x2, max x2]. Předpokládejme, že rozpětí odhadu každé z intervalových kapacit je dostatečně malé, aby nedošlo k tomu, že optimální bod bude od jisté hodnoty průsečíkem jiné dvojice hraničních přímek odpovídajících soustavě rovnic (1.28). Propojením předchozích vztahů a vlastností intervalových čísel dostaneme následující postup pro výpočet intervalového optimálního řešení a také intervalové optimální hodnoty účelové funkce. Intervalový odhad optimálního řešení úlohy LP zapíšeme jako vektor

Xopt = (X1, X2), kde

- 95 -

B1 a12 a11 B1

B2 a22 a21 B2 X 1  , X 2  , (1.58) a11 a12 a11 a12

a21 a22 a21 a22

a dosazením jeho souřadnic do intervalové účelové funkce

Zmax  c1 X1  c2 X 2 získáme intervalový odhad optimální hodnoty účelové funkce

B1 a12 a11 B1

B2 a22 a21 B2 Z max  c1  c2 . a11 a12 a11 a12

a21 a22 a21 a22

Pokud je determinant A  0, jsou kvůli dodržení podmínek nezápornosti obou neznámých zřejmě oba čitatele kladné a platí     ba1 22 abba 12 2 1  22  ab 12 2 ab 112   ba 1  21 ab 112   ba 1  21 Zmax c 1;;   c 2    AAAA   

1 b a a b  b  a a b  c1 12  c 11 1; c 1 12 c 11 1 . (1.59) 1 2  1  2  A b2 a 22 a 21 b 2 b 2 a 22 a 21 b 2

Naopak pokud je A  0, jsou kvůli dodržení podmínek nezápornosti obou neznámých oba čitatele záporné a analogicky dostáváme

1 b a a b  b  a a b  Z c1 12  c 11 1; c 1 12  c 11 1 . (1.60) max 1 2  1  2  A b2 a 22 a 21 b 2 b 2 a 22 a 21 b 2

Konkrétní aplikace odvozených vzorců je demonstrováno na konkrétním příkladu v (Kubišová, 2014b).

Fuzzy analýza

Již z antického Řecka je znám tento paradox slovního vyjádření množství: „Mějme malou hromadu kamení. Pokud přidáme jeden kámen, dostaneme opět malou hromadu kamení. Tedy každá hromada kamení je malá.“ Číselné vyjádření vágních pojmů pomocí ostrého intervalového vymezení totiž vůbec neodpovídá realitě. Komplikovanějším, ale realitě ještě bližším přístupem je nahrazení přesné kapacity v zápisu matematického modelu fuzzy číslem, které vymezuje, jaké nejmenší a jaké nejvyšší hodnoty může případně daná kapacita dosáhnout, přičemž je stanovena - 96 - také pravděpodobnost realizace každé z hodnot intervalu. Řešení získáme pomocí metod fuzzy analýzy. Nechť X je univerzální množina (univerzum). Potom fuzzy množinou nazýváme fuzzy podmnožinu A univerza X, která je definována svou funkcí příslušnosti

 A : X 0;1 která každému prvku x  X přiřazuje reálné číslo  A x z intervalu 0;1, jehož hodnota vyjadřuje stupeň příslušnosti prvku x k množině A.

Mějme dánu fuzzy množinu A  X a libovolné reálné číslo  0;1. Potom -řezem množiny A rozumíme (klasickou) množinu

 A {x X : A x}. Říkáme, že množina A je normální, jestliže existuje prvek x  A, pro který

A x  1. Fuzzy číslem nazýváme konvexní normální fuzzy množinu A R, jejíž funkce příslušnosti je po částech spojitá. -řez fuzzy čísla je intervalové číslo (Kubišová, 2015d). Pojmem trojúhelníkové číslo budeme nazývat fuzzy číslo, které je definováno funkcí příslušnosti ve tvaru  x  a  , a  x  b  x  b  a A  c  x  ,b  x  c  c  b a značíme je A  a;b;c. Na ukázku zapišme -řez trojúhelníkového čísla . Položme obě komponenty jeho funkce příslušnosti A x   , dostáváme x  a c  x   , resp.   b  a c  b odkud můžeme vyjádřit x v závislosti na hodnotě  x  b  a  a , resp. x  c  c  b a můžeme obecně vyjádřit -řez trojúhelníkového čísla A  A  b  a  a;c c b,

- 97 - tedy interval reálných čísel. Věnujme se nadále zjednodušeným fuzzy úlohám LP, které mají kapacity vyjádřené jako trojúhelníková čísla. Rozšířené aritmetické operace s fuzzy čísly zavedeme pomocí metody -řezů. Pro potřeby řešení úloh LP nám zde postačí uvést pouze unární operaci reálného násobku fuzzy čísla a binární operaci součet dvou fuzzy čísel. Nechť X  a;b;c a Y  r;s;t jsou dvě fuzzy čísla, jejichž funkce příslušnosti jsou  x  a  x  r  , a  x  b,  , r  x  s,  x  b  a a  x  s  r X  c  x Y  t  x  ,b  x  c,  , s  x  t.  c  b  t  s a jejich -řezy vyjádříme postupně jako  X  b  a  a;c  c  b, Y  s  r  r;t  t  s.

Reálný k-násobek fuzzy čísla X

Nechť k R je libovolné reálné číslo. Nejprve určíme k-násobek -řezu fuzzy čísla X kX  kb  a  a;c c b, odkud pro k  0 je kX  kb  a  ka;kc kc b. Položme nyní obě komponenty rovny x, dostáváme x  kb  a  ka, resp. x  kc kc b , odkud můžeme vyjádřit  v závislosti na hodnotě x x  ka kc x   , resp.   , kb  a kc  b pro určení definičního obou komponent vždy postačí položit  rovno hraničním hodnotám funkce příslušnosti 0 a 1, odtud dostáváme zápis funkce příslušnosti  x  ka ,ka  x  kb, kb  a  x  kX  kc x  ,kb  x  kc.  kc  b

- 98 -

Pro k  0 je kX  kc kc b;kb  a  ka, odtud analogickým postupem dostáváme zápis funkce příslušnosti  kc x ,kc  x  kb, kc  b  x  kX  x  ka  ,kb x  ka. kb  a Reálný k-násobek trojúhelníkového čísla je tedy opět trojúhelníkové číslo.

Součet dvou fuzzy čísel X a Y

Nejprve určíme součet -řezů fuzzy čísel X a Y  X Y  b  a  a;c c bs  r  r;t t  s, odkud  X Y  b  a  a  s  r  r;c c b t t  s  b  sa  r  a  r;c tc tb  s. Položme nyní obě komponenty rovny x, dostáváme x  b  sa  r  a  r, resp. x  c t c t b  s odkud můžeme vyjádřit  v závislosti na hodnotě x x  a  r c  t x   , resp.   , b  s a  r c  t b  s pro určení definičního obou komponent vždy postačí položit  rovno hraničním hodnotám funkce příslušnosti 0 a 1, odtud dostáváme zápis funkce příslušnosti  x  a  r ,a  r  x  b  s, b  s a  r  x  X Y  c  t x  ,b  s  x  c  t.  c  t b  s Součet dvou trojúhelníkových čísel je tedy opět trojúhelníkové číslo. Pro zápis účelové funkce zavedeme ještě pojem lineární kombinace fuzzy čísel, pro jehož definici využijeme výhradně právě definovaných rozšířených aritmetických operací s fuzzy čísly:

Nechť X i jsou fuzzy čísla pro i = 1, …, n. Řekneme, že fuzzy číslo X je lineární kombinací fuzzy čísel Xi, …, Xn, právě když existují reálné konstanty cI ,...,cn takové, že fuzzy číslo X lze vyjádřit ve tvaru

- 99 -

X  c1 X1  c2 X 2 ...  cn X n . Lineární kombinace trojúhelníkových čísel je proto také trojúhelníkovým číslem. Fuzzy optimální řešení úlohy LP

Jestliže místo přesně stanovených kapacit bi uvažujeme trojúhelníková fuzzy

čísla Bi  bi ´;bi ;bi, i = 1, 2, můžeme zapsat fuzzy soustavu lineárních rovnic

a x  a x  B 11 1 12 2 1 (1.61) a21x1  a22x2  B2

Při změně soustavy lineárních rovnic z tvaru (1.28) na (1.61) je zřejmě (nezměněná) matice A stále regulární. Nová soustava má tedy stále jediné řešení, které zapíšeme ve tvaru X = (X1, X2), kde

X1  x1;x1;x1 a X 2  x2 ; x2 ; x2. Předpokládejme, že rozpětí odhadu každé z intervalových kapacit je dostatečně malé, aby nedošlo k tomu, že optimální bod bude od jisté hodnoty průsečíkem jiné dvojice hraničních přímek odpovídajících soustavě rovnic (1.28). Propojením předchozích vztahů a vlastností fuzzy čísel dostaneme následující postup pro výpočet fuzzy optimálního řešení a také fuzzy optimální hodnoty účelové funkce. Fuzzy odhad optimálního řešení úlohy LP zapíšeme jako vektor

Xopt = (X1, X2), kde

B1 a12 a11 B1

B2 a22 a21 B2 X 1  , X 2  , (1.62) a11 a12 a11 a12

a21 a22 a21 a22 a dosazením všech hodnot jeho souřadnic do intervalové účelové funkce

Zmax  c1 X1  c2 X 2 (1.63) získáme fuzzy odhad optimální hodnoty účelové funkce.

Nejprve se věnujme zápisu řešení soustavy (1.61). Vztah (1.62) pro X1 lze vyjádřit pouze pomocí dvou výše zavedených operací s fuzzy čísly B1 a B2 jako a B  a B a  a X  22 1 12 2  22 B  12 B 1 A A 1 A 2

Připomeňme zápis -řezu čísel B1 a B2 jako

 B1  b1 b1  b1;b1 b1b1 , - 100 -

 B2  b2 b2  b2;b2 b2 b2 

a vyjádříme -řez fuzzy čísla X1 a  a  X  22 b b  b;b bb  12 b b   b;b  b b , 1 A 1 1 1 1 1 1 A 2 2 2 2 2 2

Nadále předpokládejme, že koeficienty matice A jsou nezáporné a A  0 , v opačném případě je třeba v reálném násobku fuzzy čísla zaměnit pořadí složek výsledného intervalu.

Koeficient u B2 je dle tohoto předpokladu záporný a po úpravě dostáváme

 a22 a12 X 1   b1  b1  b1  b2  b2  b2  ;  A A  a22 a12  b1  b1  b1    b2  b2   b2 . A A  Položme nyní obě komponenty rovny x, pro první dostáváme a a x  22 b b  b 12 b  b  b  , A 1 1 1 A 2 2 2 odkud můžeme vyjádřit  v závislosti na hodnotě x b a A x  1 12 b a   2 22 . b a b a 1 12  1 12 b2 a22 b2 a22 Pro druhou komponentu analogicky dostáváme a a x  22 b bb   12 b  b   b , A 1 1 1 A 2 2 2 odkud můžeme vyjádřit  v závislosti na hodnotě x b a 1 12  A x b a   2 22 . b a b a 1 12  1 12 b2 a22 b2 a22 Pro oba zápisy určíme také definiční obory (dosazením krajních hodnot 0 a 1 za  ) a můžeme zapsat funkci příslušnosti pro X1

- 101 -

 b1 a12  A x  b a 1 b a 1 b a  2 22 , 1 12  x  1 12 ,  b a b a A b a A b a  1 12  1 12 2 22 2 22  b2 a22 b2 a22  X x   (1.64) 1 b a  1 12  A x  b2 a22 1 b a 1 b a  , 1 12  x  1 12 . b a b a A b a A b a  1 12  1 12 2 22 2 22    b2 a22 b2 a22

Vztah (1.62) pro X2 lze opět vyjádřit pouze pomocí dvou výše zavedených operací s fuzzy čísly B1 a B2 jako a B  a B a  a X  11 2 21 1  11 B  21 B 2 A A 2 A 1 a vyjádříme -řez fuzzy čísla X2 a  a  X  11 b b   b;b  b  b  21 b b  b;b b b . 2 A 2 2 2 2 2 2 A 1 1 1 1 1 1

Koeficient u B1 je dle předchozího předpokladu záporný a po úpravě dostáváme   a11 a21 X 2   b2  b2   b2  b1 b1 b1  ;  A A   a11 a21 b2  b2  b2   b1  b1  b1. A A  Položme nyní obě komponenty rovny x, pro první dostáváme a a x  11 b  b   b  21 b b b  , A 2 2 2 A 1 1 1 odkud můžeme vyjádřit  v závislosti na hodnotě x a b A x  11 1 a b   21 2 . a b a b 11 1  11 1 a21 b2 a21 b2 Pro druhou komponentu analogicky dostáváme a a x  11 b  b  b   21 b b  b A 2 2 2 A 1 1 1 odkud můžeme vyjádřit  v závislosti na hodnotě x

- 102 -

a b 11 1  A x a b   21 2 . a b a b 11 1  11 1 a21 b2 a21 b2 Pro oba zápisy určíme také definiční obory a můžeme zapsat funkci příslušnosti pro X2

 a11 b1  A x  a b 1 a b 1 a b  21 2 , 11 1  x  11 1 ,  a b a b A a b A a b  11 1  11 1 21 2 21 2  a21 b2 a21 b2  X x   . (1.65) 2 a b  11 1  A x  a21 b2 1 a11 b1 1 a11 b1  ,  x  . a b a b A a b A a b  11 1  11 1 21 2 21 2    a21 b2 a21 b2

Pozor, nelze bezhlavě tvořit jakékoli kombinace takovýchto souřadnic, k nalezení konkrétních dvojic hodnot všech možných případných optimálních řešení by bylo obecně třeba řešit dílčí soustavy odpovídajících rovnic o dvou neznámých pro všechny hodnoty kapacit s nenulovým stupněm příslušnosti. Extrémní hodnoty   0 vymezí rovnoběžník všech možných případných optimálních řešení, získáme je řešením následujících čtyř soustav lineárních rovnic

a11 a12  x1  b1 a11 a12  x1  b1         ,         , a21 a22 x2  b2  a21 a22 x2  b2 (1.66)

a11 a12  x1  b1 a11 a12  x1  b1         ,         . a21 a22 x2  b2 a21 a22 x2  b2  V grafu označme jeho vrcholy postupně jako B´, B´´, B´´´ a B´´´´. Za povšimnutí stojí, že optimální řešení s nejvyšším stupněm příslušnosti = 1 odpovídá řešení soustavy (1.28), kterou můžeme přepsat také ve tvaru

a11 a12  x1  b1          , a21 a22 x2  b2  bod, který mu odpovídá v grafu, označme jako bod B. K zápisu fuzzy optimální hodnoty účelové funkce využijeme optimálních řešení příslušných soustav pro minimalistickou a maximalistickou kombinaci extrémních

- 103 - hodnot kapacit (v seznamu (1.66) uvedené jako první a druhou), a také pro kombinaci kapacit s nejvyšším stupněm příslušnosti (tedy poslední výše uvedenou), označíme ji

Zmax  zmax ;zmax ;zmax . Na znaménku jednotlivých cenových koeficientů v další úpravě závisí, jaký vzorec pro zápis reálného násobku jednotlivých složek použijeme. Nejprve pro jednoduchost předpokládejme, že jsou oba cenové koeficienty nezáporné. Potom platí

1  b a a b b a a b b a a b Z  c 1 12  c 11 1 ;c 1 12  c 11 1 ;c 1 12  c 11 1 max  1  2  1 2 1  2   A  b2 a22 a21 b2 b2 a22 a21 b2 b2 a22 a21 b2  . odkud můžeme zapsat funkci příslušnosti pro Zmax

 b1 a12 a11 b1  A x  c1  c2 b a a b  2 22 21 2 ,  b1 a12 a11 b1 b1 a12 a11 b1 c1  c2  c1  c2  b2 a22 a21 b2 b2 a22 a21 b2  1  b a a b  1  b a a b   pro c 1 12  c 11 1  x  c 1 12  c 11 1   1  2    1 2  A  b2 a22 a21 b2  A  b2 a22 a21 b2    x  ( Zmax   b1 a12 a11 b1 (1.67)  c1  c2  A x  b a a b 2 22 21 2 ,  b a a b b a a b  1 12 11 1 1 12 11 1 c1  c2  c1  c2  b2 a22 a21 b2 b2 a22 a21 b2   1  b a a b  1  b a a b  pro c 1 12  c 11 1  x  c 1 12  c 11 1   1 2   1  2    A  b2 a22 a21 b2  A  b2 a22 a21 b2  . Opět je (po vytknutí determinantu) vidět, že se jedná o trojúhelníkové fuzzy číslo. Řešení druhé z výše uvedeného výčtu soustav (1.66) ležící na hranici zmíněného rovnoběžníku dává absolutně nejvyšší hodnotu účelové funkce, ovšem funkce příslušnosti v tomto případě nabývá nulové hodnoty. Je tedy na rozhodovateli, jaký kompromis mezi stupněm příslušnosti vybraného optimálního řešení a jemu odpovídající optimální hodnotou účelové funkce zvolí. Obvykle proto rozhodovatel také stanovuje minimální pro něj přijatelný stupeň příslušnosti hledaného optima, pro toto libovolně vysoké  lze potom zúžit množinu případných optimálních řešení pomocí

- 104 -

-řezu na její podmnožinu přijatelných optimálních variant, která opět tvoří rovnoběžník. Souřadnice jeho vrcholů případně získáme řešením soustav

a11 a12  x1   b1  b1  b1  a11 a12  x1   b1 b1 b1           ,         , a21 a22 x2  b2  b2   b2  a21 a22 x2  b2  b2  b2  (1.68)

a11 a12  x1   b1  b1  b1  a11 a12  x1   b1 b1 b1           ,         . a21 a22 x2  b2  b2  b2  2  a21 a22 x2  b2  b2   b2 

V grafu označme tyto jeho vrcholy postupně jako B´, B´´, B´´´ a B´´´´. Lze dokázat, že rovnoběžníky B´B´´´B´´B´´´´ a B´B´´´B´´B´´´´ jsou stejnolehlé se středem stejnolehlosti v bodě B a koeficientem stejnolehlosti .

Konkrétní aplikace odvozených vzorců je demonstrována na příkladu v (Kubišová, 2014a). V případě, že je třeba kapacitu výrobních činitelů intervalově odhadnout, jsou také nalezená optimální řešení pouze intervalovým odhadem, v případě, že je kapacitu výrobních činitelů vhodnější odhadnout pomocí fuzzy čísel, jsou potom také optimální řešení pouze fuzzy odhadem. Rozpětí každé odhadované kapacity určuje šíři pásu, ve kterém se určitě nachází optimální řešení. Pokud je toto rozpětí „malé“, má ještě smysl úlohu řešit pomocí výše popsaných postupů. S rostoucím rozpětím odhadu kapacit roste samozřejmě také výsledná množina případných optimálních řešení, kvůli nejednoznačnosti výsledku je potom pro rozhodovatele obtížné vybrat jediné. Při fuzzy tvaru kapacit musí rozhodovatel věnovat pozornost hladině příslušnosti případných optimálních řešení, je třeba zvolit vhodný kompromis mezi stupněm příslušnosti a příslušnou výší optimálních hodnot, kdy zlepšení jedné hodnoty znamená zhoršení druhé.

Algebraická fuzzy optimalizace

Řešení úlohy LP s fuzzy kapacitami pomocí Bellman-Zadehova min-max operátoru popisuji, demonstruji na konkrétním příkladu a graficky ilustruji v Kubišová (2015c).

1.5.12 Iterační metody

Potřebou zkrácení výpočetního času při hledání optimálního řešení rozsáhlých úloh LP pomocí algoritmu simplexové metody s exponenciální složitostí algoritmu bylo

- 105 - motivováno hledání metody s jednodušší složitostí. Iterační metody generují podle jistého algoritmu posloupnost odhadů optima se stále se zlepšující hodnotou účelové funkce konvergující k optimální hodnotě.

Elipsoidální metoda

V roce 1979 byl vyvinut první takový algoritmus pro řešení úloh LP, který má pouze polynomickou složitost výpočtu.

Obrázek 18 – Elipsoidální algoritmus - ilustrace Zdroj: http://stanford.edu/class/ee364b/lectures/ellipsoid_method_notes.pdf

Jedná se o Khachiyanův tzv. elipsoidální algoritmus, vykazuje polynomickou časovou složitost nejvýše O(n6). Od jistého rozměru matematického modelu n (v bitech) je tak použití iteračního algoritmu efektivnější, naopak pro úlohy malých rozměrů je jeho chování při řešení úloh v praxi nestabilní a užití simplexové metody je vhodnější. Časovou složitost úlohy zvyšuje počet proměnných a počet cifer koeficientů, není ovlivněna počtem omezení. Elipsoidální algoritmus je obecná iterační metoda pro minimalizaci konvexních funkcí, speciálně pro lineární účelovou funkci nalezne její řešení po konečném počtu kroků. Postupně generuje pomocí gradientu účelové funkce v aktuálně dosaženém k-tém odhadu optima x(k), posloupnost elipsoidů (k), jejichž objem rovnoměrně klesá v každé iteraci. Nový elipsoid (k+1) je vždy opsán té polovině předchozího elipsoidu symetricky

- 106 - rozděleného rovinou kolmou ke gradientu, která obsahuje řešení minimalizující hodnotu účelové funkce. Vybírá se přitom elipsoid o nejmenším objemu a jeho střed je novým odhadem optima x(k+1), a tak se postupně rovnoměrně zužuje oblast pro nalezení minima účelové funkce, jak ilustruje Obrázek 18. Algoritmus je popsán v publikaci Floudas a Pardalos (2007), kde se mu věnuje autor Steffen Rebennack. Tento algoritmus se stal inspirací autorům mnoha dalších algoritmů konvexního programování založeným na náhodném prohledávání oblasti přípustných řešení

Karmarkarův algoritmus

V roce 1984 vyvinul indický matematik Narendra Karmarkar ještě efektivnější iterační metodu, tzv. Karmarkarův algoritmus, je obecně určen pro hledání optima úlohy LP s racionálními koeficienty, patřící též mezi tzv. metody vnitřního bodu, neprochází hranici množiny přípustných řešení ve tvaru obecného n-polytopu (zobecnění pojmu polygon ve dvojrozměrném či pojmu mnohostěn ve trojrozměrném prostoru na prostor dimenze n), který označíme P, ale její vnitřek, na počátku je zvolen nějaký bod A ležící uvnitř tohoto polytopu. V projektivní transformaci se zobrazí P a A na P‘ a A‘ tak, že poměr poloměru nejmenší koule se středem A‘ obsahující obraz polytopu P‘ ku poloměru nejmenší koule se středem A obsahující polytop P je roven O(n). Algoritmus opakuje tyto projektivní transformace generující posloupnost vepsaných koulí, která vytváří posloupnost bodů konvergujících k optimálnímu řešení v polynomiálním čase, asymptotická složitost tohoto algoritmu je. O(n3,5), k optimu tedy konverguje rychleji než elipsoidální metoda. (Karmarkar 1984).

1.5.13 Genetické algoritmy

Další heuristickou metodou pokusného hledání řešení na principu zlepšování již dosaženého odhadu řešení dle nějakých vyzkoušených a osvědčených pravidel jsou genetické algoritmy často využívané v tzv. kombinatorickém programování. Jejich základní princip je založen na náhodném prohledávání množiny přípustných řešení, přičemž jsou imitovány mechanizmy přírodního výběru známé z Darwinovy teorie o vývoji druhů. Při popisu nalezených řešení ve formě binárních řetězců pracuje na základě genetických pravidel s přenesenými pojmy populace, jedinec, chromozom (binární řetězec), gen (dále nedělitelná část chromozomu, základní jednotka řetězce) a fitness hodnota vyjadřující kvalitu jedince, mutace či křížení, při jejich modifikaci využívá principů napodobujících selekce, křížení a mutace, pomocí kterých jsou

- 107 - vytvářeny vždy nové generace jedinců tak dlouho, dokud nevznikne jedinec požadované vlastnosti. Je třeba zabývat se otázkou, je-li třeba dosáhnout přesného řešení, resp. jak přesných hodnot má být při odhadu dosaženo a kdy je vhodné algoritmus zastavit. Podrobně se genetickými algoritmy zabývají Gen a Cheng (2000).

1.5.14 Dynamické programování

Využívá se při řešení vícestupňových problémů, které lze rozložit na dílčí podproblémy s patrnou podobností výpočtu, čímž může být snížena asymptotická složitost algoritmu. Používá se při časovém plánování výroby, řízení zásob či problému obnovy. Systém se vždy nachází v některém z přípustných stavů, v určitých okamžicích je třeba učinit některé z možných rozhodnutí. Strategií nazýváme posloupnost těchto stavů systému a rozhodnutí, hledáme posloupnost s nejlepším oceněním. Pomocí tzv. Bellmanovy rovnice se rekurzivním způsobem hledá funkce optimalizující hodnoty proměnných a účelové funkce v těchto stavech. Problematice se věnuje Klapka (1970) a Nožička (1977).

1.5.15 Stochastické programování

Stochastické programování se zabývá modelováním náhodných jevů, je založeno na principech teorie pravděpodobnosti pro náhodné jevy. Ve stochastickém matematickém modelu se vyskytují náhodné složky v případech, kdy je třeba se při popisu situací přiblížit realitě, kdy mohou náhodné parametry úlohy nabývat různých hodnot s určitou pravděpodobností. Řešení úlohy probíhá pomocí sestavení tzv. deterministického ekvivalentu úlohy, který získáme nahrazením náhodných veličin původního optimalizačního modelu například jejich středními hodnotami, což je problematické, pokud není znám typ rozdělení pravděpodobnosti těchto náhodných veličin. Tento model pak může být vyřešen pomocí klasické simplexové metody.

Markovovy řetězce a Markovovy rozhodovací procesy

Jsou nejjednodušším případem stochastických procesů, kdy modelujeme úlohy pro rozhodování kombinující vliv náhody a rozhodování uživatele. V každém okamžiku se systém nachází v určitém stavu, přechod do dalšího stavu je ovlivněn zvolenou akcí uživatele a nastává s pravděpodobností danou tzv. funkcí přechodu, pro každou dvojici z množiny všech možných stavů je její hodnota zapsána do matice přechodu, která se k modelování prakticky využívá. Každý stav přináší uživateli příslušný užitek. Po jistém

- 108 - počtu kroků dospěje systém do tzv. stacionárního stavu. K řešení se využívá metod dynamického programování. Simulace Uplatňuje se například u úloh plánování výroby, řízení zásob či problému obnovy. K metodám řešení těchto úloh patří umělé experimentování s modely systémů, které na základě náhodné simulace jejich chování umožňují popsat jejich skutečné vlastnosti. Model úlohy je obvykle převeden do orientovaného síťového grafu, hledá se optimální cesta jeho průchodu. Pomocí sestaveného stochastického modelu lze simulovat průběhy dějů při různých parametrech modelu a analyzovat chování systému. Z analýzy simulačních úloh lze odvodit informace pro rozhodování při jejich efektivním řízení nebo předvídat a eliminovat nežádoucí situace. Metoda Monte Carlo Jednou z nejčastěji využívaných stochastických metod je metoda Monte Carlo, která umožňuje obejít komplikovaný výpočet nějaké hodnoty (např. řešení složité diferenciální rovnice či soustavy lineárních rovnic) estimací její střední hodnotou na základě dostatečně velkého počtu opakování náhodných dějů v počítačovém modelu tohoto systému. (Jednoduchou aplikací je mnohem dříve využitý způsob odhadu čísla  v úloze nazývané Buffonova jehla.) (Gajda 2009)

1.6 Software pro operační výzkum

Neodmyslitelnou součástí řešení ekonomických úloh v praxi je využití počítačů. Různé druhy softwarů provádějí rutinní algoritmizované výpočty pro rozměrné úlohy v krátkém čase a tak nahrazují často velmi zdlouhavé výpočty a zároveň umožňují eliminaci numerických chyb. Stále vzniká velké množství obecně aplikovatelných i úzce specializovaných výpočetních programů.

1.6.1 Klasifikace softwaru pro lineární optimalizaci

Historicky první matematická aplikace, při které byly počítací stroje nasazeny, byly výpočty balistických křivek pro vojenské účely, od dob potřeby simulace účinku atomové bomby na elektronkovém počítači se simulace procesů staly běžnými aplikacemi provozovanými na nejvýkonnějších počítačích. Zásadní význam pro teoretickou matematiku a informatiku měl objev tzv. Lambda kalkulu, na němž je založen programovací jazyk Lisp, který v roce 1958 poprvé mohl na rozdíl od jiných programovacích jazyků pracovat nejen s konkrétními

- 109 -

čísly, ale také se symboly, což zjednodušilo práci s funkcemi a umožnilo provádění i tak složitých operací, jako je např. zjednodušování výrazů či derivování funkcí. Dnes je tento způsob matematických úprav a výpočtů součástí všech matematicky orientovaných softwarů. Dodnes nachází uplatnění v oboru umělé inteligence. Modernizace počítačových programů je dosahováno také implementací stále efektivnějších algoritmů, které v kombinaci se stále rychlejšími procesory neustále překonávají předcházející limity jak ve velikosti zpracovávaných úloh, tak času, ve kterém je výsledků dosaženo. Pokrok je patrný také v oblasti numerických řešení, kdy lze hledat řešení nových a stále složitějších typů úloh. Příliš komplikované analytické výpočty bývají nahrazovány aproximačními metodami, které mohou značně snížit složitost řešené úlohy a přitom dodržet požadovanou přesnost získaných hodnot. Moderní programy již také často využívají tzv. makrojazyků, které umožňují uživateli vlastní rozšíření programového vybavení daného softwaru, tedy psaní jednoduchých programů pro vylepšení aplikací, umožňující doplnit analytické řešení o potřebnou funkčnost bez čekání na novou verzi. Využívají se k tvorbě tzv. maker, která jsou spouštěna na základě předem definované události, programátor může pomocí makra zaměnit dlouhou sekvenci příkazů jediným krátkým výrazem (makrem). Při řešení rozsáhlých úloh operačního výzkumu je někdy třeba využití k řešení různých typů softwarů, neboť se mohou značně lišit v parametrech schopnosti úlohu vyřešit, či ve tvaru výstupů. Je tedy vhodné, aby byly tyto úlohy již pracně namodelované v jednom z programů exportovatelné či převoditelné do programu jiného. K tomu slouží univerzální jazyky jako je například jazyk MPS. Díky stále vyššímu výkonu počítačů je možné provádění stále složitějších výpočtů nahradit dříve častěji používané numerické hledání přibližných řešení opět řešením symbolickým a analytickým, a tak docílit přesných výpočtů. Složitost těchto výpočtů ovšem vyžaduje ty nejrychlejší počítače, a i dnes jde ještě stále o časově velmi náročnou záležitost. Pokud to architektura daného softwaru umožňuje, je možné zpracování náročných výpočtů rozsáhlých úloh rozložit mezi více počítačů či procesorů, a tímto paralelním zpracováním úlohy docílit úměrně rychlejšího dosažení výsledku (tzv. parallel processing). Stejně tak je možné využít multitasking systémů umožňujících spustit naráz více procesů v jádře operačního systému s využitím metod plánování procesů (secheduling).

- 110 -

Stále se zdokonalující technologie optimalizačních programů však obecně umožňují rozhodování ve stále složitějších úlohách operačního výzkumu ve stále kratším čase, čímž je dosahováno snižování nákladů a vzrůstající výnosnosti. Vývoji stále lepších programů je věnována velká pozornost. Softwarové firmy pracují na vývoji stále dokonalejších komerčních produktů. Na jejich stránkách jsou obvykle ke stažení také free demoverze, které uživatele seznamují s ideou plné komerční verze. Naopak výukový software obvykle není uzpůsoben k řešení úloh velkého rozsahu, je ovšem uživatelsky přívětivější a obvykle volně přístupný.

Doplňky tabulkových kalkulátorů

Mezi nejjednodušší programy věnující se řešení optimalizačních úloh patří tabulkové kalkulátory, které v tabulkovém a tedy velmi přehledném prostředí uchovávají a zpracovávají data, mají velice široké obecné uplatnění pro základní číselné výpočty či jiné způsoby zpracování dat, jako grafické zobrazení, třídění, atd. První tabulkové procesory vznikaly na začátku osmdesátých let 20. století. Tabulkové kalkulátory jsou určeny pouze k numerickému řešení výrazů, k výpočtům se využívá vzorců pomocí jednoduché syntaxe: jsou uvozeny symbolem „=“, obsahují všechny aritmetické operace. Složitější výpočty mohou být nahrazeny funkcemi tříděnými dle oblasti jejich použití, zápis se provádí ve speciálním dialogovém okně s intuitivním označením vstupních polí, jsou doplněny podrobnou nápovědou. Díky tabulkovému zobrazení umožňují přehledné maticové výpočty. Tabulkové kalkulátory obsahují speciální doplňky, jako alternativa anglického označení solver se jeví jako nejvýstižnější pojem řešič, který po nutné aktivaci nebo doinstalování běží přímo pod programem a může tak využívat jeho funkcí. Výsledek či výsledkové zprávy zobrazí přímo v tomto tabulkovém prostředí. Tabulkové kalkulátory ovšem nejsou uzpůsobeny ke zpracování úloh velkých rozměrů. Uplatňují se ovšem jako rozhraní pro zadávání vstupů a zobrazování výsledků získaných v profesionálních optimalizačních programech, jak bude níže ukázáno.

- 111 -

Obrázek 19 – Řešitel – zadání dat, sestavení funkcí Zdroj: vlastní

 Řešitel v MS Excel

Nejrozšířenějším tabulkovým kalkulátorem je dnes program Excel od firmy Microsoft Corporation (MS Excel) pro operační systém Microsoft Windows (www.microsoft.com), je proto dostupný široké veřejnosti, hojně se využívá v kancelářích i pro potřeby školní výuky. Řešitel není součástí výchozí instalace, jako každý doplněk je nutné jej v podobě souboru s příponou .xla nejprve inicializovat. Pokud není dostupný v nástrojové liště Data v kategorii Analýza, je nejprve nutné jej aktivovat. V nabídce Soubor – Možnosti – Doplňky ve výběrovém okně Spravovat vybrat Doplňky aplikace Excel a stisknout tlačítko Přejít. Stejný postup lze aplikovat u všech doplňků programu MS Excel, které je případně možné z příslušného adresáře nejprve vyvolat pomocí nabídky Procházet. Potom stačí ze seznamu dostupných doplňků vybrat potřebné doplňky a stisknout tlačítko OK.

- 112 -

Obrázek 20 – Doplňky aplikace MS Excel – dialogové okno Zdroj: vlastní

Přístupné doplňky jsou potom již dostupné na liště Data, jak ukazuje například Obrázek 27.

Obrázek 21 – Řešitel – dialogové okno Zdroj: vlastní

- 113 -

Doplněk Řešitel (v původní anglické verzi Solver) je součástí balíku Microsoft Office, lze jej využít k hledání řešení rovnic, jejich soustav, ale také k řešení ne příliš velkých optimalizačních úloh LP. Pro sestavení matematického modelu úloh LP se z praktických důvodů často využívá funkce SOUČIN.SKALÁRNÍ, v dialogovém okně doplňku musí uživatel mimo jiné vybrat metodu, kterou je třeba úlohu řešit. Pro úlohy LP je třeba zvolit defaultně nastavený univerzální simplexový algoritmus volbu Simplex, pro nelineární úlohy se volí použití metody GRG2 (Generalized Reduced Gradient), podrobnosti o algoritmu uvádí autoři (Ladson, 1978). Pro celočíselné řešení lineárních i nelineárních úloh se používá algoritmu metody větvení a mezí, simplexové metody a GRG2 pro řešení dílčích podúloh. Pro nehladké nelineární problémy se numericky aproximuje řešení při volbě metody Evolutionary. Vícekriteriální problémy přímo řešit nelze.

Obrázek 22 – Řešitel – výsledková zpráva Zdroj: vlastní

V jednom listě MS Excelu může být využito až 65 536 řádků a 256 sloupců, lze řešit úlohy LP maximálně pro 200 proměnných a pro 600 vlastních omezení, z toho ovšem jen 200 může být využito k zadání podmínek celočíselnosti. Parametry úloh LP zapsané v MS Excel mohou být také importovány k řešení v jiných optimalizačních programech, získané výsledky poté opět exportovány do prostředí tabulkového procesoru. Je třeba pracovat s definicí názvů polí buněk.

- 114 -

MS Excel obsahuje vlastní makrojazyk a má možnost importu a interpretace programů napsaných ve Visual Basicu. Obrázek 19 a Obrázek 21 ukazují uživatelské prostředí sešitu MS Excel a dialogového okna doplňku Řešitel při řešení nutričního problému – jídelníčku dětí s podvýživou (Kubišová, 2015c). Obrázek 22 potom zachycuje přehlednou výsledkovou zprávu z řešení tohoto problému. Řešitel je v porovnání s konkurenčním řešičem Quattro Pro považován po stránce výpočetní podle mnoha zdrojů za lepší. Podrobnější popis inovovaného Řešitele od verze vydané v MS Office 2010 uvádím v (Kubišová, 2014a).

 Řešič v Quattro Pro

Pojem quattro v názvu dalšího tabulkového kalkulátoru původně vyvinutého firmou Borland a dnes patřícího firmě Corel corporation (www.wordperfect.com) přímo vystihuje boj o prvenství s dalším ze svého času nejúspěšnější trojice konkurenčních programů Lotus1-2-3. Quattro Pro je program dostupný pouze pro operační systém Windows, dnes je součástí balíku WorldPerfrect Office, obsahuje také doplněk zaměřený na lineární optimalizaci, nachází se pod Tools – Numeric tools – Optimizer. I zde je k řešení využit simplexový algoritmus, GRG2 a metody větvení a mezí. Vícekriteriální problémy přímo řešit nelze. V jednom listě Quattro Pro může být využit dokonce až milion řádků a 18 276 sloupců, lze ovšem opět řešit úlohy LP maximálně pro 200 proměnných, pro každou lze zadat podmínku celočíselnosti. Oba zmíněné tabulkové kalkulátory jsou srovnatelné, slabší výpočetní schopnosti proti MS Excel jsou v Quattro Pro dle dostupných názorů uživatelů kompenzovány lepšími grafickými výstupy. Zatímco Lotus 1-2-3 je dnes již v rámci aktuálních verzí předstižen, výše zmíněné dvojici tabulkových procesorů se snaží konkurovat Docs od Google a Numbers od Apple.

Na Ekonomické fakultě ZČU v Praze byly původní Katedrou operační a systémové analýzy (zkratka KOSA, dnešní Katedra systémového inženýrství KSI) vytvořeny další specializované optimalizační doplňky (http://orms.pef.czu.cz/) jako podpůrný software k jednotlivým metodám operačního výzkumu. Pro studijní účely jsou volně dostupné, používají se při výuce téměř 20 let. Nejsou opatřeny manuálem, jejich použití je ovšem zcela intuitivní. Nacházejí i komerční využití.

- 115 -

Všechny tyto moduly jsou původně určené pro starší verze MS Office, proto je v nových verzích potřeba tato makra nejprve aktivovat, pokud se po spuštění automaticky neobjeví na kartě Doplňky. Aktivace se provádí kliknutím na Soubor – Možnosti – Doplňky – Přejít, kde je třeba manuálně vybrat soubor s modulem a aktivovat jej, někdy bývá potřeba MS Excel restartovat.

Obrázek 23 – LinKOSA – dialogové okno doplňku Zdroj: vlastní

 LinKOSA

Doplněk LinKOSA byl vyvinut pro řešení jednokriteriálních úloh LP až pro 250 strukturních proměnných a 250 podmínek. Využívají revidovaného simplexového algoritmu a metody větvení a mezí. Data zadá uživatel přehledně dle svého uvážení v tabulce s vlastním rozložením, pojmenováním proměnných a omezení včetně případného formátování. Položky dialogového okna jsou vyplněny odkazováním na buňky v této tabulce. Uživatel opět může pro přehlednost volit názvy dodavatelů a odběratelů. Výstupem je nejen optimální řešení (hodnoty účelové funkce, strukturních a přídatných proměnných), uživatel si může případně vyžádat také hodnoty koeficientů matice transformace a v rámci postoptimalizační analýzy také intervaly spolehlivosti

- 116 - pro kapacity a pro cenové koeficienty. Každá z uvedených položek v novém listě se slovním popisem v českém nebo anglickém jazyce. Obrázek 24 zobrazuje všechny výstupy pro přehlednost vkopírované do jednoho listu.

Obrázek 24 – LinKOSA – výsledkové zprávy Zdroj: vlastní

Program MS Excel umožňuje uživateli pro větší přehlednost výstupů vlastní názvy proměnných a omezení, kvůli případnému exportu se obecně nedoporučuje používat diakritiku a mezery v názvu, i když zde to problémy nečiní.

 DumKOSA

Doplněk DumKOSA byl vyvinut pro optimalizaci lineárních dopravních systémů s omezenou propustností až pro 100 dodavatelů a 100 odběratelů. Uživatel opět v MS Excel tvoří vlastní přehlednou tabulku vstupních dat pro vybudování matematického modelu úlohy. Položky dialogového okna jsou vyplněny odkazováním na souvislá pole buněk v této tabulce. Průběh hledání výchozího základního řešení ani jednotlivé iterace při řešení úlohy v dopravní tabulce se nezobrazují, v případě, že jde o nevyrovnaný dopravní problém, je automaticky vyrovnán zavedením fiktivního dodavatele, resp. odběratele, doplněním dalšího řádku, resp. sloupce, s označením Dummy. Jednotlivé iterace a výpočty vedoucí k nalezení optima jsou uživateli skryté, je zobrazeno až výsledné optimální řešení.

- 117 -

Obrázek 25 – DumKOSA – dialogové okno doplňku Zdroj: vlastní

Výstupem je nejen optimální řešení (hodnoty účelové funkce a jednotlivých strukturních proměnných), uživatel si může případně vyžádat také hodnoty duálních

Obrázek 26 – DumKOSA – výsledkové zprávy Zdroj: vlastní

- 118 - proměnných a způsob splnění duálních omezení v tabulce optimálního řešení, popř. také perspektivitu a maximální kapacitu jednotlivých cest tohoto dopravního modelu. Každá z vybraných položek se zobrazí v novém listě se slovním popisem v anglickém jazyce. Obrázek 25 ukazuje řešení úlohy 12.9 ze skript (Kubišová, 2014c), pro přehlednost jsou však všechny výstupy vkopírované do jediného listu.

 MCAKOSA

Doplněk MCAKOSA byl vyvinut jako výukový software pro vícekriteriální analýzu variant. Program umožňuje řešení modelů vícekriteriální analýzy variant. Aplikace umožňuje zadané úlohy řešit pomocí různých metod VHV, nabízí použití metod váženého součtu, ORESTE, TOPSIS a PROMETHE.

Obrázek 27 – MCAKOSA – data a výsledky Zdroj: vlastní

Obrázek 27 ukazuje řešení úlohy 13.1 ze skript (Kubišová, 2014c), výstupem je matice uspořádaných alternativ podle funkce užitku, hodnoty funkce užitku či míra vzdálenosti od bazální varianty popř. jiné ukazatele podle typu zvolené metody řešení a matice normalizovaných hodnot vzhledem k ideální a bazální variantě. Pro přehlednost jsou zde opět výstupy vkopírované do jediného listu.

- 119 -

 WGPKOSA

Doplněk WGPKOSA byl vyvinut jako výukový software pro vícekriteriální lineární programování. Je založen na principu váženého cílového programování. Program na výstupu poskytuje nejen optimální hodnoty a typ strukturních proměnných v nalezeném optimálním řešení a míru splnění jednotlivých vlastních omezení modelu a transformační matici báze, ale v rámci postoptimalizační analýzy také intervaly stability optimální báze vzhledem ke změnám ve vektoru pravých stran a cílů, a také intervaly stability vzhledem ke změnám ve vektoru vah reprezentujících důležitost jednotlivých kritérií.

Obrázek 28 – WGPKOSA – dialogové okno – matematický model Zdroj: vlastní

U všech výše zmíněných modulů rodiny KOSA je možné měnit vstupní data a následně nechat úlohu znovu vyřešit, výsledkové výstupy se uchovávají v nových listech s indexem pořadí pro porovnání či publikování v jiných programech.

 SANNA

Doplněk SANNA je určen pro potřeby výuky metod vícekriteriálního hodnocení variant, byl vytvořen na Katedře Ekonometrie VŠE v Praze v rámci diplomové práce (Urban, 1999) v programovacím jazyce VBA. Jedná se o freeware aplikaci.

- 120 -

Program SANNA dokáže řešit úlohy až pro 100 alternativ a 50 kritérií. Na začátku práce umožňuje testování dominovanosti hodnocených variant a dominované varianty na vyžádání uživatelem může vynechat, ale mohou být také ponechány v množině hodnocených variant, pokud jejich pořadí uživatele přesto zajímá. Využívá algoritmů bodovací, Fullerovy a Saatyho metody určování vah kritérií. Z hodnotících metod nabízí poměrně velké množství používaných hodnotících metod, jsou to WSA, TOPSIS, ELECTRE I, ELECTRE III, PROMEHE I, PROMETHE II, ORESTE a MAPPAC. Grafické a tabulkové výstupy jsou uspořádány v nových listech, uživatel si může poskládat výsledkovou zprávu z několika nabízených položek. Nedoporučuje se pro správnou funkci sestavování zprávy přejmenovávat vygenerované listy.

Obrázek 29 – SANNA – výsledková sestava Zdroj: vlastní

V nabídce Nápověda je stručný přehled funkcí programu, jeho popis, doporučení a upozornění pro uživatele ke všem ostatním položkám v menu doplňku. Při nastavení změny jazyka na anglický je přeloženo jen menu, obsah položky Help je stále v českém jazyce.

- 121 -

 SYMCLIP

Doplněk SYMCLIP je logickým pokračováním předchozího zmíněného doplňku SANNA a je určen pro potřeby výuky metod řešení úloh vícekriteriálního lineárního programování. Byl vytvořen na Katedře Ekonometrie VŠE v Praze v rámci diplomové práce (Skočdopolová, 2008) v programovacím jazyce VBA a využívá výše popsaný Řešitel. SYMCLIP dokáže řešit úlohy až pro 200 proměnných, 100 omezení a 10 kritérií. Jedná se o freeware aplikaci původně určenou pro studijní účely vytvořený jako doplněk starší verze MS Office, ve které měly řádky menší výšku, v novějších verzích nesouhlasí umístění rozbalovacích menu pro zadávání typu vlastního omezení. Jedná se pouze o kosmetický nedostatek, který ovšem vynikne při větším počtu omezení a kritérií.

Obrázek 30 – SYMCLIP – zadání dat a výběr metody stanovení vah kriterií Zdroj: vlastní

Sešit smí obsahovat pouze jeden list se zdrojovými daty, ve kterém SYMCLIP generuje po načtení parametrů rozměrů úlohy dialogovou tabulku pro zadání strukturních koeficientů a pravých stran. Váhy kritérií mohou být zadány ručně nebo je lze vyplnit pomocí jedné ze tří implementovaných metod (bodovací, Fullerova, Saatyho), které vypočtené váhy rovnou umístí do příslušných polí listu Data. Po sestavení matematického modelu je třeba vybrat vhodnou metodu, SYMCLIP nabízí pouze použitelné, ostatní zůstávají neaktivní.

- 122 -

Z přímých metod využívá metodu váženého součtu WSA, lexikografickou metodu, metodu minimalizace vzdálenosti od ideální varianty, metodu maximalizace minimální komponenty a cílové programování, je možné jej využít také k jednokriteriální optimalizaci podle každého z kritérií zvlášť.

Obrázek 31 – SYMCLIP – výsledky pro metodu min. vzdálenosti od ideální varianty Zdroj: vlastní

Nabízí také dvě metody vyžadující interaktivní spolupráci s rozhodovatelem GDF a STEM.

Moduly databázových systémů

Také databázové systémy jako MS Access umožňují využívat makra či v jazyku Visual Basic naprogramované moduly.

 LinPro

LinPro je aplikace vytvořená na Katedře ekonometrie na VŠE v Praze, která je určená především pro studijní účely, dokáže řešit úlohy LP pomocí primárně i duálně simplexové metody až pro 15 proměnných a 15 omezení a dopravní úlohy až pro 8 dodavatelů a 8 odběratelů. Každá nová úloha vystupuje pod číslem a může být doplněna jak vlastním názvem, tak poznámkou doplňující podrobnosti uživatele pro pozdější přehledné vyhledávání archivovaných zadání již vyřešených úloh. Data se po nastavení rozměrů nově modelované úlohy LP zadávají do generované tabulky v rámci dialogového okna, uživatel může změnit názvy

- 123 - proměnných a omezení pro zpřehlednění pozdějších výstupů a lepší orientaci při interpretaci výsledků.

Obrázek 32 – LinPro – zadání dat a výběr výstupu Zdroj: vlastní

Po uložení modelu a spuštění programu je pomocí simplexového algoritmu úloha vyřešena, nejprve je zobrazena informace o počtu řešení úlohy, uživatel poté vybírá požadovaný způsob výstupu vhodný buď pro tisk, nebo pro zobrazení na monitoru.

Obrázek 33 – LinPro – výsledky na obrazovce Zdroj: vlastní

- 124 -

Uživatel může volit výsledky buď ve formě výpisu tabulek všech iterací včetně pomocných podílů, nebo do jediné tabulky uspořádané optimální hodnoty účelové funkce, strukturních a přídatných proměnných, jejich intervaly stability, vektor redukovaných nákladů a stínových cen včetně slovně formulovaného typu řešení. Popis v českém jazyce a možnost pojmenovat proměnné a omezení vlastními názvy činí tento výsledek velmi přehledným a studentům zjednodušuje slovní interpretaci výsledků.

Specializované programy

 IZAR

Program IZAR je samostatnou univerzální aplikací určenou pro vícekriteriální rozhodování, byl vytvořen na ČVUT v Praze pro studijní účely a je volně dostupný (http://swing.fit.cvut.cz/download/izar/) včetně manuálu v anglickém jazyce (Ivanytska, 2012). Software při hledání řešení pomáhá uživateli vybrat nejvhodnější optimalizační metodu pro konkrétně zadaný model úlohy LP.

Obrázek 34 – IZAR – vložení dat Zdroj: vlastní

- 125 -

Využívá programovacího jazyka Pascal, ve kterém může uživatel vhodně pozměňovat metody řešení pro své konkrétní potřeby. Nabízí jak grafické uživatelské rozhraní, kdy uživatel zadává data pomocí vyplňování polí dialogových oken, tak tzv. Math Worskpace, tedy okno pro ruční zápis matematických objektů.

Obrázek 35 – IZAR – listy výsledků Zdroj: vlastní

Rozměry matematických modelů jsou neomezené, počet proměnných, omezujících podmínek a účelových funkcí a zejména průběh vlastního výpočtu jsou limitovány dostupnými prostředky počítače, na kterém je výpočet realizován, především velikostí operační paměti a výkonu jeho procesorů. IZAR využívá metod transformující problémy VLP na problémy jednokriteriálního LP, nabízí metody řešení jak diskrétních problémů LP (lexikografickou, TOPSIS, WSA, AGREPREF, ELECTRE I and ELECTRE III), tak metody spojitých úloh LP: lexikografickou metodu, metodu minimalizace vzdálenosti od ideální varianty, metodu maximálního užitku, metodu maximalizace minimální komponenty, cílové programování a metodu maximální pravděpodobnosti, dále vícekriteriální simplexovou metodu a také čtyři metody vyžadující interaktivní spolupráci s rozhodovatelem STEM, GDF, Ziont-Walleniusovu a Steuerovu.

- 126 -

Po načtení typu problému a jeho rozměrů vytvoří dialogové okno k vyplnění dat, poté je třeba vybrat vhodnou metodu (viz Obrázek 34), IZAR nabízí pouze použitelné, ostatní zůstávají neaktivní. Jednotlivé způsoby řešení včetně postupů a sestavených transformovaných úloh schraňuje zvlášť pod záložkami a sestavuje také souhrnný seznam získaných výsledků v listě Summary.

Maticově orientované programy

 MATLAB

Systém MATLAB vyvíjí firma MathWorks (http://www.mathworks.com/). MATLAB je interaktivní programové prostředí využívající programovací jazyk čtvrté generace, který místo vypisování jednotlivých příkazů umožňuje uživateli komunikovat s počítačem pomocí grafického prostředí (dialogová okna, obrázky, ikony) s použitím myši bez nutnosti psát příkazy do příkazového řádku. Kód programovacího jazyka je generován automaticky v pozadí, a pokud potřebuje uživatel vytvořit vlastní složitější program pro nějaký výpočet, lze jej v tomto jazyce zapsat a testovat. Název programu vznikl zkrácením slovního spojení matrix laboratory (maticová laboratoř), jelikož klíčovou strukturou při výpočtech jsou právě matice. Umožňuje počítání s maticemi, implementaci algoritmů, počítačovou simulaci, analýzu a prezentaci dat i vytváření vlastních aplikací opět včetně uživatelského grafického rozhraní. Je vhodný k vykreslování 2D i 3D grafů. Umožňuje paralelní výpočty sloužící ke zvýšení rychlosti výpočtů. Výkonnost systému je rozšiřována díky navazujícímu softwaru, který tvoří především tzv. toolboxy – soubory aplikací orientovaných zpravidla na daný problém. Všechny funkce v toolboxu jsou vytvořené jako série příkazů, které mají být provedeny současně v určitém sledu, nazývají se M-soubory (M-files) a zobrazují se s příponou .m. MATLAB má k dispozici také optimalizační toolbox Optim obsahující také několik funkcí pro řešení úloh lineárního programování (dostupné pod příkazy linprog, intlinprog) i vícekriteriální optimalizaci. Toolboxy je možné rozšířit zápisem vlastních uživatelem naprogramovaných funkcí, tedy M-souborů. Příkazem type s udáním názvu konkrétního M-souboru je možno si prohlédnout kód těchto funkcí. Při výpočtech dochází k rozšíření operační paměti odkládáním dat na pevný disk počítače, způsobené zpomalení výpočtů je kompenzováno umožněním zpracování úloh větších rozměrů.

- 127 -

Původně byl určen pouze k usnadnění zápisu při výuce vysokoškolské matematiky, časem byl doplněn o řadu nových funkcí a rozšíření o aplikace z široké škály oborů. Protože program MATLAB může používat i uživatel, který neumí programovat díky vizualizovanému přístupu k zadávání dat a příkazů, nachází si stále větší oblibu jak u uživatelů z oblasti vědy, výzkumu a školního prostředí, tak i v soukromé sféře, uplatňuje se v technických oborech či ekonomii. Patří mezi tzv. počítačové algebraické systémy (Computer Algebra Systems, zkráceně CAS).

Symbolicky orientované systémy

Následující skupina matematických programů slouží nejen k numerickým výpočtům a simulacím, ale také k programování vlastních převážně matematických algoritmů na bázi symbolických zápisů. Nachází díky svému obecnému přístupu široké uplatnění v mnoha oborech lidských činností využívajících matematiku. Jelikož pracuje se symbolickým zápisem různých typů matematických objektů, dává přesné výsledky výpočtů (není nucen např. zaokrouhlit výsledek dělení s nekonečným desetinným rozvojem, neboť umí pracovat s upraveným zlomkem, tedy s jeho přesnou hodnotou). Numerické metody řešení problémů proto může nahradit výpočty založenými na úpravách výrazů a symbolického odvození řešení, např. při hledání extrémů funkcí nemusí tuto hodnotu pouze aproximovat, neboť je schopen funkci derivovat a klást její hodnotu rovnu nule. Prostředí programů využívá standartních prvků operačního systému Microsoft Windows (dialogová okna, rozbalovací menu, tlačítka, atd.), pro práci v těchto programech je třeba matematických znalostí. Tyto programy obsahují základní matematické operace, pracují s nejrůznějšími matematickými objekty, nacházejí proto široké uplatnění. Velké množství funkcí je logicky řazeno do různých specializovaných nástavbových knihoven, pro konkrétní výpočty jsou načteny pouze ty aktuálně potřebné, aby zbytečně nezabíraly operační paměť počítače. Tyto matematické jazyky umožňují uživateli také naprogramovat si vlastní funkce, případně tvořit drobné nástavbové aplikace s tabulkovým prostředím.

 MAPLE

Nejstarším a v komerční sféře nejrozšířenějším zástupcem této skupiny programů je program MAPLE firmy Waterloo Maple Software (www.maplesoft.com).

- 128 -

Název měl původně evokovat zemi původu spolu s logem červeného javorového listu, později byl interpretován též jako akronym pro „mathematical pleasure“. MAPLE je velmi užitečným programem, který může provádět numerické i symbolické výpočty a nabízí také grafické zobrazení výsledků ve 2D i 3D. Jak již bylo zmíněno, umožňuje výpočty provádět na bázi úprav obecných výrazů při použití zavedené matematické symboliky Základním pracovním prostředím je pracovní list, v příkazových řádcích se zadávají příkazy dle syntaktických pravidel. Jelikož programy řeší a ukládají do paměti po řadě provedené výpočty. Generuje soubory s příponou .ms. Obrázek 36 ukazuje zápis příkladu 14.1 (Kubišová, 2014d) v MAPLE, příkazy v řádcích ukončených „;“ se po odeslání klávesou Enter provedou a výsledek se zobrazí v následujícím řádku, zatímco příkazy oddělené symbolem „:“ výpočet provedou, ale výsledek nezobrazí. Příkazy uvozuje symbol „>” a od výsledků jsou také barevně odděleny.

Obrázek 36 – MAPLE – průběh řešení úlohy LP Zdroj: vlastní

Základní část programu MAPLE tvoří základní matematické operace, složitější výpočty jsou naprogramované v jazyce programu MAPLE jako funkce, tzv. knihovna (library) obsahuje vždy skupinu funkcí týkající se určité konkrétní oblasti matematiky. Před použitím těchto funkcí se musí příslušná knihovna natáhnout do operační paměti. Uživatel zapisuje sled příkazů vyžadujících přesnou syntaxi do příkazové řádky v tzv. pracovním listě. Speciální příkazy pro lineární algebru a lineární programování

- 129 - jsou obsaženy v knihovnách pojmenovaných linalg určených pro práci s vektory a maticemi či simplex pro řešení úloh LP. Příkazem with(simplex) se druhá z nich aktivuje, obsahuje například funkce maximize a minimize. Obrázek 36 ukazuje vyřešení úlohy LP s jejich využitím. Každý uživatel může ve vlastním výkonném jazyce programu MAPLE vytvářet vlastní funkce a jejich knihovny. Často se vytváří podprogramy ve formě tzv. mapletů, které kromě samotných naprogramovaných výpočetních algoritmů obsahují současně vzhled vlastního uživatelského prostředí. MAPLE nabízí prakticky neomezenou velikost a přesnost vstupních hodnot a výsledků. Výsledky zobrazuje pomocí grafů nejen pro konkrétní hodnoty, ale také pro implicitně zadané funkce. V porovnání s dalšími programy svého druhu je po grafické stránce méně dokonalý, některým uživatelům nevyhovuje zadávání příkazů v příkazové řádce, nevýhodou jsou horší možnosti exportu vypočtených dat pro použití či prezentaci do jiných programů.

 MATHEMATICA

Program MATHEMATICA, který vyvinula firma Wolfram (www.wolfram.com), je v mnoha ohledech podobný MAPLU, spor o to, který z nich je „lepší“, vedou dvě velké komunity uživatelů. Stejně jako MAPLE, umožňuje práci se symbolicky zadanými výrazy, nabízí velké množství programových modulů, má k dispozici skupiny algoritmů věnovaných také optimalizaci (dostupných pod příkazy Maximize, Minimize, NMaximize, NMinimize, FindMinimum, FindMinimum) pro symbolický či numerický způsob výpočtu, či lineárnímu programování (LinearProgramming). Zvládne zpracovat úlohy LP pro miliony proměnných. MATHEMATICA je co do náročnosti výpočtů svým zaměřením vhodný spíše pro vysokoškolské využití, z této skupiny programů je nejpoužívanějším pro vědecké účely, je ovšem cenově hůře dostupný.

Algebraické programovací jazyky

Dalším vhodným nástrojem pro tvorbu optimalizačních modelů jsou algebraické modelovací jazyky. V optimalizačních systémech umožňují uživateli popsat optimalizační problém pomocí matematického modelu jak je zvykem v matematice, tedy jako přehledné množiny omezení pro uživatele jednoduše čitelné. Poté překladače systému generující vstupy pro řešiče. V novějších programech je potom možné také užít

- 130 - obecného zápisu problému pomocí indexování položek jako jsou kapacity, koeficienty strukturní matice apod., což usnadňuje případnou změnu těchto vstupních hodnot. Uplatňují se při řešení rozsáhlých optimalizačních úloh, ke správné interpretaci výsledkových zpráv je ovšem třeba dobrých znalostí významu hodnot všech proměnných.

 GAMS

Název GAMS je zkratkou pro slovní spojení General Algebraic Modeling System, jedná se o velmi pokročilý modelovací systém firmy GAMS Development Corporations, (www.gams.com), ve kterém lze formulovat matematické modely pomocí algebraických výrazů a programových příkazů srozumitelných nejenom počítačům a programátorům, ale intuitivně všem běžným tvůrcům matematických modelů.

Obrázek 37 – GAMS – příklad matematického modelu Zdroj: Molliková, 2010

- 131 -

Je možné vepisovat také vlastní vysvětlující komentáře v průběhu tvoření modelu k jednotlivým řádkům, barevně během zápisu se automaticky zvýrazňují sekvence, které jsou vnímány jako příkazy, jednotlivé objekty modelu nebo ignorovaný uživatelův komentář. Skládá se z kompilátoru, který uživatelem vytvořený algebraický zápis převádí do jazyka programu GAMS, a řady integrovaných řešičů, jejich kompletní seznam lze najít na uvedené webové adrese. Je určen hlavně k řešení úloh lineárního, nelineárního a celočíselného programování, pro potřeby řešení smíšených celočíselných úloh LP uveďme například další výkonné řešiče CPLEX, , XA a XPRESS. Pro vícekriteriální LP jsou určeny například řešiče MILES či PATH, z řešičů pro nelineární programování zmiňme např. KNITRO či MOSEK. GAMS je určen pro vytváření rozsáhlých modelů, které mohou být díky přehlednému zápisu rychle upraveny. Uživatel může vybírat řešič, kterým úlohu daného typu nechá vyřešit. V dostupné free verzi je možné řešit optimalizační úlohy až pro 200 proměnných, placené profesionální verze zvládnou řešit úlohy o tisících proměnných i při požadavcích celočíselnosti řešení. V roce 1982 byl prvním modelovacím jazykem. Před spuštěním samotného řešení systém vždy kontroluje syntaxi a upozorňuje na chyby, navrhuje nejvhodnější metodu řešení, nemá-li úloha přípustné řešení, upozorní na problematické objekty modelu. Dává obsáhlé výsledkové zprávy, v doprovodném okně také zaznamenává detaily o průběhu výpočtu, jako je typ úlohy a zvolená metoda jejího řešení, počet proměnných, čas a kapacita potřebná k vyřešení. Na vyžádání provede také citlivostní analýzu. Uživatel si může generovat výsledkovou zprávu s vlastními položkami pro tisk.

 LINGO

Nejpoužívanější profesionální specializovaný program celosvětového významu na poli optimalizace je dnes bezesporu LINGO firmy Lindo Systems Inc. (USA, Chicago) (www..com). Je určený pro Windows, Linux i Mac. Vznikl v 80. letech 20. století, je stále vyvíjen, velkou výhodou je velmi podrobný uživatelský průvodce. Zahrnuje vlastní jazyk pro zápis matematických modelů, prostředí pro jejich výstavbu a úpravu, a obvyklé řešitelské nástroje. Zápis většinou probíhá v podokně Lingo Model přímo v kódovacím jazyce, zápis modelu se velmi přibližuje matematickému způsobu zápisu, má pevnou strukturu, celý model je uvozen příkazy

- 132 -

MODEL: a END a je rozdělen do několika částí: datová část je uvozena příkazy DATA: a ENDDATA, část pro nastavení počátečních hodnot proměnných příkazy INIT: a ENDINIT, část pro definice prvků (zde např. dodavatelů, resp. odběratelů) modelu a jejich atributů (jejich kapacit, resp. požadavků) je uvozena příkazy SETS: a ENDSETS a bez uvození ještě účelová funkce, vlastní omezení a podmínky proměnných (nezápornost je zahrnuta automaticky), zápis každého objektu modelu je třeba ukončit středníkem. Lze vkládat i vlastní poznámky oddělené vykřičníkem. Pokud je při zápisu rozeznán příkaz, je označen barevně, tyto soubory mají přípony .lg4 (uživatelem může být ale zvolen také zápis ve formě prostého textu či datový zápis). Před spuštěním samotného řešení systém vždy kontroluje syntaxi a upozorňuje na chyby, sám rozpozná typ úlohy a vybírá nejvhodnější metodu řešení. Nemá-li úloha přípustné řešení, může uživatel pomocí funkce DEBUG nechat vyhledat problematické objekty modelu.

Obrázek 38 – LINGO – zkrácený zápis modelu Zdroj: vlastní

Matematický model úlohy LP může být zapsán jak v podobě plného zápisu, kdy je každému algebraickému objektu modelu (rovnici či nerovnici) věnován jeden řádek zápisu, tak ve zkrácené formě, které je dosaženo pomocí indexování objektů a příkazů (podmínka @for a funkce @sum umožní obecný zápis lineárních výrazů). Příkazem @gin(x), resp. @bin(x) se vyjadřuje požadavek celočíselné, resp. binární hodnoty

- 133 - příslušné proměnné x. Příkaz @free(x) použijeme, pokud pro proměnnou x není vyžadována podmínka nezápornosti. LINGO též umožňuje pro takto obecně sestavený model úlohy načíst data z externího zdroje. Obrázek 39 je ukázkou zkráceného zápisu dopravního problému zadaného v příkladu 17.1 (Kubišová, 2014d) s příkazem @ole pro import dat ze sešitu MS Excel., ve kterém musí mít oblasti ve zdrojové tabulce definované názvy (pomocí nabídky Vzorce – Definovat název), při čtení kódu je vidět, že se zde při importu uplatnily názvy oblastí DODAVATEL (seznam dodavatelů), ODBERATEL (seznam odběratelů), KAPACITY (pravý sloupec kapacit), POZADAVKY (dolní řádek požadavků) a CENY (matice cenových indexů). Po vyřešení v LINGO jsou opět výsledky exportovány zpět do oblastí pojmenovaných OBJEM (pro hodnoty všech strukturních proměnných) a ROZSAH (hodnota účelové funkce, zde se jedná o veličinu rozsah přepravy).

Obrázek 39 – LINGO – import dat z externího zdroje Zdroj: vlastní

Výsledková zpráva v okně Solution Report je pro uživatele méně přehledná než u školních programů, je třeba zvyku a hlubších znalostí proměnných a koeficientů s řešením úloh LP spojených. Při slovní interpretaci je třeba věnovat pozornost

- 134 - opačným znaménkům některých hodnot při minimalizační úloze, při řešení celočíselné úlohy LP jsou sice zobrazeny Reduced costs a Dual prices, ale jelikož nejde o základní řešení, nelze ve výpisu zobrazená čísla takto interpretovat. Informace o průběhu řešení jsou zobrazovány v okně Solver Status. Kromě informací o rozměru a počtu nenulových koeficientů modelu uvádí také, kolik paměti je k řešení využito a jaký čas je k nalezení řešení potřeba. Rozezná také třídu úloh a v poli Model Class vypíše LP, NLP nebo PILP, a v Sate informuje o typu aktuálně dosaženého řešení (Undeterminated (žádné), Infeasible (nepřípustné), Feasible (přípustné, ale ne optimální), Global optimum nebo Local optimum (optimální) včetně aktuální hodnoty účelové funkce v poli Objective). Počet nesplněných podmínek je zaznamenán v poli Infeasibility, počet dosud provedených iterací v poli Iterations. V poli Solver je zaznamenán typ algoritmu použitého k řešení, dále průběžné informace o dosud nejlepší dosažené, resp. teoreticky nejlepší dosažitelné hodnotě účelové funkce v Best Obj, resp. Obj Bound. Můžeme také sledovat počet již provedených kroků výpočtu Steps a počet podúloh, které je naopak ještě třeba řešit v Active. Tyto informace jsou zajímavé v průběhu déle trvajícího procesu výpočtu u rozsáhlejších úloh se složitější strukturou, frekvenci jejich aktualizování v sekundách lze nastavit v poli Update interval, u jednoduché úlohy LP jsou vyřešeny téměř okamžitě. LINGO nabízí samozřejmě i analýzu citlivosti, ve free verzi ovšem není zahrnuta. LINGO podporuje také univerzální modelovací jazyk MPS, modely zapsané v tomto formátu umí řešit, pro modely zde vytvořené naopak umí vygenerovat jejich MPS kód, aby mohly být v případě potřeby řešeny i v jiných programech.

 MPL

Dalším standardizovaným formátem pro vytváření matematických modelů je kódovací jazyk MPL (Mathematical Programming Language) od firmy Maximal Software (www.maximalsoftware.com), který opět umožňuje velmi názorně sestavovat modely optimalizačních úloh. Výhodou je, že jeho demoverze je nabízena ke stažení na uvedených webových stránkách. Modelovací systém MPL je obdobou předchozích dvou programů, free verze ovšem umožňuje řešit úlohy nejvýše pro 10 proměnných. Kód jazyka MPL má opět pevně danou strukturu, celý model je uvozenou příkazy TITLE, za kterým může být uveden název (bez mezer) a END a je rozdělen do několika částí: indexová část

- 135 - je uvedena příkazem INDEX a obsahuje seznam indexů a jejich rozsahu, datová část je uvozena příkazem DATA, v části VARIABLES se uvádí seznam proměnných (automaticky s podmínkou nezápornosti), proměnné celočíselné, resp. bivalentní, resp. bez podmínek nezápornosti se uvádí pod příkazy INTEGER VARIABLES, resp. BINARY VARIABLES, resp. FREE VARIABLES. Příkaz MODEL předchází definici účelové funkce a SUBJECT TO seznam vlastních, zápis každého příkazu včetně objektu modelu je třeba ukončit středníkem. V názvech rozlišuje velká a malá písmena, neakceptuje mezery a názvy delší než 32 znaků. Lze vkládat i vlastní poznámky oddělené vykřičníkem.

Obrázek 40 – MPL – matematický model, výsledková zpráva a MPS generátor Zdroj: vlastní

Systém obsahuje generátor, který převádí model napsaný v MPL na model v univerzálním kódovacím jazyce MPS (viz Obrázek 40), jehož význam bude zmíněn v poslední kapitole tohoto přehledu.

 LiPS

V tomto výčtu uveďme ještě drobný optimalizační systém LiPS vytvořený pro účely výuky jednokriteriálního i vícekriteriálního LP dostupný na stránkách jeho autora (http://lipside.sourceforge.net/). Dokáže řešit úlohy LP až pro 32 000 proměnných, 12 000 omezení a 10 účelových funkcí, používá simplexový algoritmus, vážené či lexikografické cílové programování a interaktivní metodu

- 136 - následného zvýhodnění. Pro řešení rozsáhlejších úloh využívá modifikovanou primárně i duálně simplexovou metodu, při požadavcích celočíselnosti metodu větven a mezí. Nejen že používá vlastní kódovací jazyk LPX k algebraickému způsobu zápisu matematického modelu jako předchozí zmíněné programy, ale uživatel může alternativně zvolit také zadávání prostřednictvím tabulkového vstupu, kdy je po zadání požadovaných rozměrů modelu vygenerována tabulka pro zadání vlastních názvů proměnných, účelových funkcí (případně včetně vah), a omezení, strukturní koeficienty, typy a kapacity omezení, typy proměnných (spojitá nebo celočíselná volbou CONT nebo INT) včetně dolní a horní meze proměnných a typ optimalizace. Grafické uživatelské rozhraní zde umožňuje uživateli být zcela oddělen od vlastního modelu a pouze editovat tabulky vstupních dat a pro řešení používat pouze tlačítka jednotlivých příkazů a voleb.

Obrázek 41 – MPS formát vygenerovaný v LiPS Zdroj: vlastní

Navíc je zde také nabízena možnost zadání ve formátu MPS, kterou lze využít, pokud odjinud importujeme matematický model již v tomto jazyku zapsaný. Bohužel nefunguje dokonale, sloupcově orientovaný formát MPS je porušen, díky zobrazeným vodícím čarám je možné jednotlivé položky kurzorem odsunout do správné polohy. Tato varianta umožňuje přenos jednou sestavených matematických modelů mezi systémem LiPS a systémy podporující již zmíněný univerzální modelovací jazyk MPS.

- 137 -

Jedním ze tří výše uvedených způsobů zadanou úlohu je možné nechat vyřešit stiskem tlačítka Solve. Výstupem pro úlohy menších rozměrů je sestavená simplexová tabulka včetně podílů u jednotlivých kroků, doplněná o tabulky optimálních hodnot proměnných a pravých stran, včetně redukovaných nákladů a stínových cen. Pro začátečníka je tento způsob výstupu pravděpodobně nejpřehlednější. Stisk tlačítka Sensitivity analysis umožní uživateli sestavit zprávu z výstupů citlivostní analýzy. Není důsledně přeložen, ruský původ je patrný v některých výsledkových zprávách z ponechaných výrazů psaných azbukou.

Univerzální programovací jazyky

Jak vyplývá z přechozí kapitoly, je žádoucí, aby bylo možné matematické modely obvykle pracně sestavené v nějakém optimalizačním programu exportovat do jiného.

Obrázek 42 – MPS formát vygenerovaný v MPL Zdroj: vlastní

- 138 -

 MPS

Potřeba vzájemné kompatibility kompilátorů dala vzniknout univerzálnímu kódovacímu jazyku MPS (zkratka pro mathematical programming system), který je tedy standardizovaným formátem pro zadávání matematických modelů do LP programů a jejich uchovávání a většina komerčních programů s algebraickým modelovacím jazykem již dnes tento formát podporuje. Jedná se o tzv. sloupcově orientovaný jazyk, všechny objekty matematického modelu (na prvním místě účelová funkce a potom jednotlivá omezení) musí být pojmenovány včetně určení typu (E pro „=“, L pro „≤“, G pro „≥“ a N pro neomezenou hodnotu) v sekci ROWS, postupně pak pro každou (též pojmenovanou) proměnnou je v sekci COLUMNS v řádku zapsáno, s jakým koeficientem vystupuje po řadě v těchto objektech. Sekce RHS slouží k zápisu hodnot pravých stran pro jednotlivé objekty. Názvy a hodnoty musí být zapsány do stanoveného sloupce, což historicky souvisí s původem tohoto formátu již v dobách zápisů na děrné štítky, hranice pro zápis tvoří 2., 5., 15., 25, 40. a 50. sloupec. V některých MPS editorech jsou k lepší orientaci zobrazené svislé vodící čáry. Obrázek 41 ukazuje pro porovnání matematický model zapsaný v jazyku MPS pro stejnou úlohu, kterou zachycuje také Obrázek 24 nebo Obrázek 32, jehož zadání je v příkladu 14.1 (Kubišová, 2014d). Tento formát je pro uživatele sice dosti nepřehledný, ale čitelný. Mezi programy podporující modelovací formát MPS patří například CPLEX, GUROBI, XPRESS, LINGO, MOPS, FortMP, XA, CoinMP, GLPK, LPSolve, LiPS, CONOPT, KNITRO a LGO.

1.6.2 Používání optimalizačního softwaru

Při zběžném mapování využití optimalizačního softwaru jsem navštívila webové stránky České společnosti pro operační výzkum (http://csov.vse.cz/). V odstavci „SW využívaný pro operační výzkum“ jsou zde uvedeny firmy, popřípadě produkty firem Dash Associates (XPRESS-MP), Visual Thinking (SIMUL8, V.I.S.A), AMPL, Linear Programming Interior Point Solvers, AIMMS 3, Banxia Software, CPLEX Optimization, Inc., GAMS, ILOG Optimization Suite, LINDO Systems (LINDO, LINGO, What´s Best), Maximal Software a TreeAge Software, Inc., na něž ČSOV návštěvníky svých stránek upozorňuje. Dalším zajímavým zdrojem pro mne byl výzkum zabývající se rozborem 270 odborných článků publikovaných v roce 2007 v časopisech European Journal

- 139 - of Operational Research, Central European Journal of Operational Research, Journal of Operational Research Society and 4OR: A Quarterly Journal of Operations Research, zaměřený mimo jiné na využití softwaru při řešení v těchto článcích zpracovávaných problémů, nejčastěji z oblasti zdravotnictví, energetiky a financí. Zatímco v teoretických publikacích autoři nejčastěji využili metod diskrétní optimalizace a celočíselného programování, v oblasti praktických aplikací využívají též metod diskrétní optimalizace, statistické analýzy a simulací. Ve 118 z těchto článků byl identifikován použitý software, seřadíme-li relativní četnosti výskytů jednotlivých programů, nejčastěji byly využity CPLEX (20,3 %) a C-languages (17,8 %). Následují MATLAB (6,8 %), LINGO (5,1 %), a Visual Basic (oba 4,2 %) a Arena, ILOG OPL a MS Excel (všechny 2,5 %). AMPL, Delphi, LINDO, MINOS, Mathematica, Power Simplex, SAS, SIMUL8, XPRESS MP (po 1.7 %) a vyjímečně APPL, Absoft Pro Fortran, Analytica, AutoMod, DEAP, EVOLVER, Foxpro, GAMS, IMSL, JMP (SAS), Java, Kappalab/R, LOQO, MPL, Prolog IV, SPSS, Simulink/Matlab, TISEAN, TeamEC2000, VENSIM, What's Best!, eM-Plant (jen 0,8 %). (Dlouhý a Kuncová, 2010) Větší uplatnění tedy nacházejí obecně využitelné programy před programy svým zaměřením úzce specifikovanými. Využití profesionálního softwaru nachází v praxi široké uplatnění. Co se týče softwaru používaného v ČR na vysokých školách, nejběžněji využívaným je bezesporu MS Excel. Některé vysoké školy využívají také vlastní výukový software, v předchozí kapitole byly zmíněny moduly LinPro, SANNA a SYMCLIP vytvořené na VŠE, LinKOSA, DumKOSA, MCAKOSA a WGPKOSA na ČZU či IZAR na ČVUT. Jejich grafický formát a komentované výstupy jsou studentům na začátku studia jednotlivých typů optimalizačních problémů bližší. V rámci odborné přípravy je ovšem žádoucí studenty seznámit také s profesionálními programy, firmy obvykle i ve svém zájmu nabízejí i free demoverze svých vlajkových produktů. Nejčastěji se ve výuce studenti seznamují s modelovacími systémy LINGO, MPL for Windows, GAMS, AIMMS, XPRESS-MP, apod.

- 140 -

2. Výuka předmětu OV (praktická část)

2.1 Výuka operačního výzkumu na VŠPJ

„Vysoká škola polytechnická Jihlava (VŠPJ) byla zřízena zákonem č. 375/2004 Sb. ze dne 3. 6. 2004 jako první veřejná vysoká škola neuniverzitního směru v České republice a je jedinou veřejnou vysokou školou se sídlem v Kraji Vysočina. Neuniverzitní vysoká škola má dle zákona o vysokých školách č. 111/1998 Sb. v oblasti terciálního vzdělávání stejné postavení jako univerzitní vysoké školy, odlišuje se pouze třemi atributy - nemůže poskytovat vzdělání v doktorských studijních programech, nečlení se na fakulty a její vědecká rada se nazývá akademickou radou. VŠPJ je veřejná vysoká škola zaměřená na aplikovanou vzdělanost, jejím posláním je poskytovat odborně různorodé studijní programy zaměřené zejména na potřeby regionálního trhu práce, pěstovat intenzivní spolupráci s aplikační sférou, odpovídající tvůrčí činnost a aplikovaný výzkum, poskytovat pestrou nabídku celoživotního vzdělávání a napomáhat kulturnímu a obecně vzdělanostnímu rozvoji regionu. VŠPJ nabízí akreditované studijní programy bakalářského a magisterského typu a kurzy celoživotního vzdělávání. Různorodá škála bakalářských oborů a obor magisterský odpovídají na potřeby regionu a jsou v souladu s názvem školy. Slovo polytechnická je převzato ze starořečtiny a vyjadřuje v nejširším smyslu zběhlost v umění či řemesle, zkušenost, zručnost, obratnost, mistrnost, řadu dovedností. A to je směr, kterým se poměrně mladá regionálně zaměřená škola ubírá. Vysoká škola polytechnická Jihlava poskytuje vzdělání v tříletých bakalářských studijních programech, které jsou určeny pro zájemce se středoškolským vzděláním ukončeným maturitou. Studium je aktuálně nabízeno v prezenční (denní) formě studia u původních oborů Aplikovaná informatika, Cestovní ruch, Finance a řízení, Počítačové systémy, Porodní asistentka, Všeobecná sestra (všechny také v kombinované formě) a nově akreditovaného programu Zdravotně sociální pracovník. Dále VŠPJ nově poskytuje vzdělání ve dvouletém navazujícím magisterském studijním programu a Komunitní péče v porodní asistenci. Obecným cílem studia v akreditovaných studijních programech je poskytnout zájemcům možnost získat profesně orientované vzdělání s výrazně praktickými výstupy. Významnou součástí studia jsou týdenní až celosemestrální praxe.“ (Zdroj: www.vspj.cz)

- 141 -

Všechny uvedené původní obory se podařilo v roce 2014 reakreditovat. V akademickém roce 2014/2015 studovalo na VŠPJ 2750 studentů, z toho bakalářský obor Finance a řízení v denní formě studia 420 studentů a v kombinované formě 335 studentů, magisterské studium oboru VŠPJ zatím nenabízí. Celkově již bakalářský obor Finance a řízení s ekonomickým zaměřením úspěšně absolvovalo 1 350 studentů (z toho v denní formě 1 128 a v kombinované 222). Výuku předmětů zaměřených na metody operačního výzkumu zajišťuje na VŠPJ oborová Katedra ekonomických studií (KES), podporu oborovým katedrám nabízí neoborová Katedra matematiky (KM). V současné době jsou pro studenty bakalářského oboru Finance a řízení připraveny předměty Matematika 1 a Operační výzkum, jejichž výuku zajišťuje KM, a Tvorba simulačních modelů, jehož výuku zajišťuje KES. Ve školním roce 2014/2015 se naposledy vyučoval předmět Matematika pro ekonomy, jehož výuku zajišťovala KM, který ovšem není součástí reakreditace inovovaného oboru. Některé z uvedených předmětů jsou nabízeny jako volitelné také studentům bakalářských oborů Cestovní ruch, Počítačové systémy a Aplikovaná informatika. Následuje stručná charakteristika těchto předmětů. Informace jsem čerpala z webových stránek školy (https://is.vspj.cz).

2.1.1 Matematika pro ekonomy

Historicky prvním předmětem zaměřeným na výuku metod operačního výzkumu byl od roku 2004 vyučovaný povinný předmět Matematika pro ekonomy (MEK) určený pro denní formu bakalářského studia ekonomického oboru Finance a řízení, od roku 2008/2009 také pro formu kombinovanou. Ve školním roce 2014/2015 se v rámci původního studijního plánu vyučoval v obou formách studia naposledy, součástí inovovaných reakreditovaných programů již není.

Sylabus

. Aritmetické vektory, operace s nimi, lineární kombinace, lineární závislost, matice, operace s nimi, hodnost matice, inverzní matice, determinant řádu 2 a 3. . Gaussova a Jordanova metoda řešení soustav lineárních rovnic, obecné řešení, základní řešení. . Soustavy lineárních nerovnic, grafické a algebraické řešení. . Úvod do lineárního programování, typy úloh LP, matematické modely úloh LP.

- 142 -

. Grafické řešení úloh LP, ekonomická interpretace řešení. . Jednofázová simplexová metoda, alternativní řešení. . Dvoufázová simplexová metoda. . Dualita v úlohách LP, symetrický a nesymetrický duální problém, věty o dualitě a jejich užití. . Řešení duálních úloh, duálně simplexová metoda. . Analýza citlivosti - intervaly stability pravých stran a cenových koeficientů . Dopravní úlohy, duální úloha k dopravní úloze, nalezení výchozího základního řešení . Výpočet optimálního řešení dopravních úloh, nevyrovnaná dopravní úloha, degenerace.

Doporučená literatura

STOLÍN, R.: Matematika pro ekonomy. Skriptum. VŠPJ Jihlava, 2008. LAGOVÁ, M.: Jablonský, J. Lineární modely. VŠE Praha, 2004. LAGOVÁ, M.: Lineární modely v příkladech. VŠE Praha, 2002. JABLONSKÝ, J.: Operační výzkum. Professional Publishing, 2002.

Anotace

Cíle: Cílem kurzu je seznámit studenty s metodami řešení soustav lineárních rovnic a nerovnic a jejich využitím při řešení některých typů úloh lineárního programování (výrobní problém, úloha o dělení materiálu, nutriční problém a dopravní úloha). Znalosti: Student zná základní pojmy lineární algebry (aritmetický vektor, matice, determinant, soustava lineárních rovnic a nerovnic) a umí je požívat při výpočtech. Zná metody řešení úloh lineárního programování (grafickou, simplexovou jednofázovou, simplexovou dvoufázovou a duálně simplexovou), ví, jak správně vybrat metodu vhodnou pro nalezení optimálního řešení zadaného modelu, a ví, jak toto řešení interpretovat. Dovednosti: Student umí zformulovat vlastní problém z oblasti výrobního plánování, vytvoření řezného plánu, řešení nutričního problému a dopravní problém. Umí jej popsat matematickým modelem, stanovit vhodnou metodu řešení pro zadaný model, nalézt optimální řešení pomocí softwaru LinPro a MS Excel a výsledek dokáže interpretovat.

- 143 -

Obecné způsobilosti: Student je obeznámen se základním ekonomickým aparátem operačního managementu, který je podporou manažerského rozhodování. Je vybaven nástroji ke zvládnutí praktických problémů – dokáže problémy jak formulovat, tak i řešit. Úspěšné ukončení získáním zápočtu a zkouškou znamenalo získání 6 kreditů. Od roku 2004 si povinný předmět MEK zapsalo celkem 1 692 studentů denního a 416 studentů kombinovaného studia, někteří z těchto studentů si předmět zapsali dvakrát (pokud jej poprvé absolvovali neúspěšně). Celkem byl předmět zaregistrován 2212krát v prezenční formě studia a 498krát v kombinované formě studia. Rozdělení těchto registrací podle oborů, formy studia a semestru zaznamenává Tabulka 19. Symbol × znamená, že se v daném semestru, oboru a formě studia MEK nevyučoval.

Tabulka 19 – Počet registrací předmětu MEK Finance a řízení Cestovní ruch Semestr prezenční kombi. prezenční kombi.

2005/2006 zima 196 × 1 × 2005/2006 léto 194 × 1 × 2006/2007 zima 170 × 0 × 2006/2007 léto 197 × 0 × 2007/2008 zima × × 0 × 2007/2008 léto 215 × 0 × 2008/2009 zima × × × × 2008/2009 léto 297 0 0 0 2009/2010 zima 2 49 0 0 2009/2010 léto 83 1 1 0 2010/2011 zima 158 135 1 0 2010/2011 léto × × × × 2011/2012 zima 230 99 7 0 2011/2012 léto 43 0 2 0 2012/2013 zima 165 106 2 0 2012/2013 léto × × × × 2013/2014 zima 174 84 0 0 2013/2014 léto × × × × 2014/2015 zima 73 24 0 0 Celkem 2197 498 15 0 Zdroj: vlastní

- 144 -

Ve cvičeních jsem vedla od školního roku 2007/2008 celkem 20 přibližně pětadvacetičlenných studijních skupin těchto registrovaných studentů. Ze zkušeností s výukou předmětu MEK jsem čerpala při sestavování náplně výuky a vytvoření výukových opor předmětu OPV.

2.1.2 Matematika 1

Předmět Matematika 1 (MAT1) spolu s navazujícím předmětem MAT2 patří do povinného základu oboru Finance a řízení, v inovovaném studijním plánu je prerekvizitou pro předmět Operační výzkum, ze zrušeného předmětu MEK sem byla v rámci inovace studijního plánu přesunuta témata týkající se vektorové a maticové algebry a teorie řešení SLR, okrajově také základy LP.

Sylabus

. Reálná funkce jedné reálné proměnné. Definice, základní pojmy, inverzní funkce, cyklometrické funkce. . Limita a spojitost funkce. Základní věty, technika výpočtu limit. . Derivace. Fyzikální a geometrický význam první derivace (tečna a normála). . Věty o střední hodnotě, l'Hospitalovo pravidlo. Asymptoty grafu funkce. . Monotonie, lokální extrémy, konvexita, konkávita, inflexní body grafu funkce. . Průběh funkce, globální extrémy. . Aproximace funkce, diferenciál, Taylorův polynom. Hornerovo schéma. . Maticový zápis soustavy lineárních rovnic. Algebra matic: lineární závislost a nezávislost řádků, hodnost matice, Gaussův algoritmus. . Operace s maticemi: násobek matice, součet matic, součin matic, jednotková matice. Determinanty: definice, výpočet determinatů 2. a 3. řádu. . Inverzní matice. Algebraický doplněk. Výpočet determinantu rozvojem nebo eliminací. Výpočet inverzní matice Jordanovou metodou nebo pomocí determinantů. . Maticové rovnice. Soustavy lineárních rovnic s regulární maticí: řešení pomocí inverzní matice, Cramerovým pravidlem. . Soustavy lineárních rovnic s obecnou maticí. Frobeniova věta. Gaussova eliminace. . Základy lineárního programování. . Vektorové prostory. Aritmetický vektorový prostor, vektorový prostor funkcí na intervalu.

- 145 -

Doporučená literatura

HOJDAROVÁ, M., KREJČOVÁ, J., ZÁMKOVÁ, M.: Matematika 1 pro obory Finance a řízení a Cestovní ruch, skripta, VŠPJ, Jihlava, 2014 KLŮFA, J.: Matematika pro studenty VŠE, Ekopress, Praha 2011 MOUČKA, J., RÁDL, P.: Matematika pro studenty ekonomie. Grada - Expert, 2010 KRAUS, M.: Matematika 1, učební text VŠP Jihlava, 2008

Anotace

Cílem kurzu je vybavit studenty základními znalostmi z oblasti matematické analýzy a lineární algebry. Posluchači by si měli osvojit základní početní dovednosti důležité pro práci s funkcemi jedné proměnné a pro řešení soustav lineárních rovnic. Přednášky jsou zaměřeny na výklad jednotlivých pojmů, základních početních postupů a řešení vzorových příkladů. Cvičení slouží k procvičování látky. Znalosti: Absolvent dokáže načrtnout grafy elementárních funkcí na základě diferenciálního počtu, dále zná základní pojmy z lineární algebry (matice, determinant apod.). Dovednosti: Absolvent umí vyhledávat extrémy funkcí jedné proměnné a určovat další specifické vlastnosti související s derivací funkce. Obecné způsobilosti: Absolvent je schopen pracovat s funkcemi jedné proměnné, které jsou základním popisem závislosti veličin. Dále je absolvent obeznámen se základními algoritmy lineární algebry, které jsou základem pro lineární programování sloužící k optimalizaci lineárních problémů. Úspěšné ukončení předmětu získáním zápočtu a zkouškou znamená získání 6 kreditů.

2.1.3 Tvorba simulačních modelů

Z předmětů věnujících se metodám operačního výzkumu zajišťuje sama oborová katedra KES výuku volitelného předmětu Tvorba simulačních modelů (TSM). Předmět je od školního roku 2013/2014 nabízen studentům denního i kombinovaného studia oboru Finance a řízení, ale také studentům denního studia oborů Počítačové systémy a Aplikovaná informatika.

- 146 -

Sylabus

. Úvod do modelování systémů, základní pojmy, generování náhodných a pseudonáhodných čísel . Transformace náhodných čísel na náhodné veličiny, testování generátorů náhodných čísel . Simulace Monte Carlo – charakteristika, použití v programu MS Excel (příklady: stanovení objednávky, posouzení výše úvěru, výběr tarifů mobilních operátorů, ...) . Simulace Monte Carlo a využití programu Crystal Ball . Simulace Monte Carlo – statistická analýza výsledků modelu (popis výsledků získaných z programu, popis grafů) . Diskrétní dynamická simulace – základní charakteristika, postup při tvorbě modelu . Obecná charakteristika systémů hromadné obsluhy, analytické a simulační modely systémů hromadné obsluhy (jednoduché modely zaměřené na samoobsluhu, poštu, banku, restaurace, čerpací stanice, apod.) . Tvorba simulačních modelů v programu SIMUL8 (modely hromadné obsluhy či jednoduché modely výroby) . Simulační modely systémů hromadné obsluhy v programu SIMUL8 . Simulační experimenty s modelem v programu SIMUL8 . Analýza výsledků simulace . Tvorba vlastních simulačních modelů s využitím Crystal Ball či SIMUL8 . Prezentace vlastních modelů (seminární práce)

Doporučená literatura

DLOUHÝ, M., FÁBRY, J., KUNCOVÁ, M. a HLADÍK, T.: Simulace podnikových procesů. 2. vydání, Brno, Computer Press, 2011. ISBN 978-80-251-3449-8. WWW.SIMUL8.COM, webové stránky produktu SIMUL8, [online], dostupné z URL BANKS, J.: Handbook of simulation: Principles, Methodology, Advances, Applications, and Practice, John Wiley & Sons, Inc., New York, 1998. ISBN 0-471- 13403-1. CHARNES, J.: Financial Modeling with Crystal Ball and Excel. Wiley Finance, 2007. ISBN 13: 978-0-471-77972-8

- 147 -

Anotace

Cílem výuky předmětu je uvést studenty do problematiky tvorby simulačních modelů a nastínit využitelnost modelů v praxi. Studenti budou seznámeni se základními postupy při tvorbě modelu, principy dynamických a pravděpodobnostních procesů a jejich modelování s využitím softwaru MS Excel, Crystal Ball a SIMUL8. Součástí výuky je i metodologie navrhování simulačních experimentů a analýza výsledků simulačního modelu. Znalosti: Studenti se naučí rozumět principům tvorby simulačních modelů a postupům při tvorbě modelu. Porozumí rozdílům mezi diskrétními a stochastickými procesy a odlišnostem při jejich modelování. Naučí se rozlišovat diskrétní a spojité náhodné veličiny a posuzovat vhodnost jejich použití v konkrétní situaci. Dovednosti: Studenti budou schopni samostatně vytvořit simulační model vybraného podnikového procesu (či pravděpodobnostního problému) s využitím vhodného softwarového prostředí, dokáží analyzovat výsledky simulačních experimentů a navrhovat změny v modelu realizovatelné v praxi, které povedou ke zlepšení sledovaných ukazatelů. Obecné způsobilosti: Studenti se naučí používat vhodné programové prostředky pro tvorbu simulačních modelů. Dokáže rozlišit, zda je simulace v daném případě vhodným nástrojem pro analýzu procesu či ne a je schopen posoudit, jaká data jsou pro tvorbu modelu potřeba. Úspěšné ukončení předmětu získáním zápočtu znamená získání 2 kreditů.

2.2 Vytvoření obsahu předmětu Operační výzkum

V inovovaném studijním plánu platném od roku 2014/2015 je zařazen předmět Operační výzkum (OPV) určený studentům oborů Finance a řízení a Cestovní ruch, v obou případech pro denní i kombinovanou formu studia. Jeho výuku zajištuje KM, seznam obsažených témat vyšel z požadavků oborové katedry KES, stejně jako změna obsahu předmětu MAT1 tak, aby mohl být prerekvizitou předmětu OPV. Výuku dalších témat nabízí studentům zajímajícím se o operační výzkum volitelný předmět TSM, obsahově by se tedy neměly překrývat. Vytvoření náplně předmětu OPV, všech výukových opor a výběr vhodného softwaru jsou hlavními cíli této disertační práce. Poznamenejme, že předmět OPV byl plánován pro obor Finance a řízení jako povinný a pro obor Cestovní ruch jako

- 148 - volitelný, tento záměr byl změněn až v průběhu zpracování cílů a aktuálně je na obou oborech v obou formách nabízen jako volitelný. Úspěšné ukončení předmětu získáním zápočtu znamená získání 3 kreditů. Na základě zadání byl vytvořen následující obsah předmětu, vybrána doporučená literatura dostupná v knihovně VŠPJ a stanoveny cíle kurzu: Obsah předmětu vyšel z požadavků Katedry ekonomických studií a možností Katedry matematiky. Do povinného předmětu Matematika 1 se přesunuly vektory a matice a stal se prerekvizitou předmětu Operační výzkum, v rámci volitelného předmětu Tvorba simulačních modelů se studenti mohou věnovat tvorbě a využití simulačních modelů. Bylo tedy třeba zpracovat v sylabu uvedená témata do 14 ucelených přednášek a následných cvičení. Témata byla stanovena a jejich obsah rozdělen následujícím způsobem: 1. Soustava lineárních rovnic – algebraické a grafické řešení (SLR) Řešení SLR. Frobeniova věta. Gaussova metoda úplné eliminace. Jordanova metoda neúplné eliminace. Počet řešení soustavy (žádné, jediné, nekonečně mnoho – obecné a základní řešení, základní a nezákladní proměnné, jejich počet v závislosti na hodnosti). Grafické řešení SLR. 2. Soustava lineárních nerovnic – algebraické a grafické řešení (SLN) Řešení SLN. Adjungovaná SLR. Počet řešení soustavy (základní řešení a jeho přípustnost, přídatné proměnné). Grafické řešení SLN. 3. Matematický model ekonomické úlohy (MMU) Úlohy LP. Formulace matematického modelu. Přípustné řešení. Typické úlohy LP. 4. Grafické řešení úloh LP (GRAF) Grafické řešení úloh LP. Základní řešení, přípustné řešení, optimální řešení. Hodnota účelové funkce. Dosažitelnost zisku. Způsob dodržení vlastních omezení. Slovní interpretace. 5. Primárně simplexová metoda – jednofázová (PSM1) Úprava modelu. Strukturní a přídatné proměnné. Sestavení simplexové tabulky. Základní a nezákladní proměnné. Algoritmus (klíčový prvek). Počet optimálních řešení (jediné, alternativní (obecný zápis), neomezená hodnota účelové funkce). Degenerace. Interpretace (strukturní a přídatné proměnné, hodnota účelové funkce, stínové ceny a redukované náklady). Program LinPro.

- 149 -

6. Primárně simplexová metoda – dvoufázová (PSM2) Úprava modelu. Strukturní, přídatné a umělé proměnné. Umělá účelová funkce. Sestavení simplexové tabulky. Základní a nezákladní proměnné. Algoritmus (klíčový prvek). Počet optimálních řešení (žádné, jediné, alternativní (obecný zápis), neomezená hodnota účelové funkce). Degenerace. Interpretace (strukturní a přídatné proměnné, hodnota účelové funkce, stínové ceny a redukované náklady). 7. Dualita v úlohách LP (DUAL) Dvojice duálně sdružených úloh. Formulace duální úlohy (symetrická, nesymetrická úloha). Vztahy mezi typy řešení duálně sdružených úloh. Věta o rovnováze. Úloha o řezném plánu. 8. Duálně simplexová metoda (DSM) Použitelnost. Úprava modelu. Algoritmus (klíčový prvek). Počet řešení. Strukturní a přídatné proměnné (primární i duální). Sestavení simplexové tabulky. Počet optimálních řešení obou úloh (vztahy). Interpretace (strukturní a přídatné proměnné, hodnota účelové funkce, stínové ceny a redukované náklady). 9. Celočíselné programování (CLP) Metoda větvení a mezí. Grafické řešení celočíselných úloh LP: Doplněk Řešitel v MS Excel. 10. Analýza citlivosti pro pravé strany (ISK) Inverzní matice báze. Vliv změny pravých stran na bázi optimálního řešení. Intervaly stability řešení pro jednotlivé kapacity. Schematické řešení. 11. Analýza citlivosti pro cenové indexy (ISC) Inverzní matice báze. Vliv změny cenových indexů na bázi optimálního řešení. Intervaly stability řešení pro jednotlivé ceny (základních a nezákladních proměnných). Schematické řešení. 12. Dopravní úloha (DOP) Matematický model. Vyrovnání dopravního problému (fiktivní dodavatel, odběratel). Metody nalezení VZŘ (SZR, indexní, VAM). Základní, degenerované, přípustné řešení. Dantzigův uzavřený cyklus. Algoritmus (duální proměnné, test optimality – věta o rovnováze). Počet řešení (jediné, alternativní). Problémy při degeneraci. (Program MPL.)

- 150 -

13. Vícekriteriální hodnocení variant (VHV) Dominovanost variant. Metody odhadu vah kritérii (metoda pořadí, bodovací, Saatyho, Fullerův trojúhelník). Metody VHV (metoda váženého součtu, TOPSIS, AHP). Výukový program SANNA. 14. Vícekriteriální lineární programování (VLP) Dominovanost řešení. Metody VLP (agregace účelových funkcí, minimální komponenta, minimalizace relativní vzdálenosti od ideálních hodnot). Cílové programování. Výukový program SYMCLIP.

Sylabus

. Gaussova a Jordanova metoda řešení soustav lineárních rovnic, obecné řešení, základní řešení. . Soustavy lineárních nerovnic, grafické a algebraické řešení. . Úvod do lineárního programování, typy úloh LP, matematické modely úloh LP. . Grafické řešení úloh LP, ekonomická interpretace řešení. . Jednofázová simplexová metoda, alternativní řešení. . Dvoufázová simplexová metoda. . Dualita v úlohách LP, symetrický a nesymetrický duální problém, věty o dualitě a jejich užití. . Řešení duálních úloh, duálně simplexová metoda. . Celočíselné programování. . Analýza citlivosti – intervaly stability kapacit a cenových koeficientů. . Dopravní úlohy, duální úloha k dopravní úloze, nalezení výchozího řešení – metoda severozápadního rohu, indexní metoda, metoda VAM. . Výpočet optimálního řešení dopravních úloh, nevyrovnaná dopravní úloha, degenerace. . Úvod do vícekriteriálního hodnocení variant a vícekriteriálního lineárního programování, matematický model úloh VLP. . Metody odhadu vah kritérií. Kompromisní řešení úloh VLP.

Doporučená literatura

KUBIŠOVÁ, A.: Operační výzkum. Jihlava, 2014. Skripta VŠPJ. BORŮVKOVÁ, J., STOLÍN, R.: Lineární programování. Jihlava, 2012. Skripta VŠPJ. STOLÍN, R.: Matematika pro ekonomy. Jihlava, 2010. Skripta VŠPJ.

- 151 -

LAGOVÁ, M., Jablonský J.: Lineární modely. Praha, 2004, Oeconomica. ISBN 80-245- 0816-8 LAGOVÁ, M.; JABLONSKÝ, J.: Lineární modely v příkladech. Praha, 2002, Oeconomica. ISBN 80-245-0456-1 JABLONSKÝ, J.: Operační výzkum – kvantitativní metody pro ekonomické rozhodování. Praha, 2002, Professional Publishing. ISBN 80-86419-42-8 KOŘENÁŘ, V., LAGOVÁ, M.: Optimalizační metody. Praha, 2003, VŠE. ISBN 80- 245-0609-2

Anotace

Cílem kurzu je seznámit studenty s metodami řešení soustav lineárních rovnic a nerovnic a jejich využitím při řešení některých typů úloh lineárního programování, vícekriteriálního hodnocení variant a vícekriteriálního lineárního programování. Znalosti: Student zná metody řešení úloh lineárního programování (grafickou, simplexovou jednofázovou, simplexovou dvoufázovou a duálně simplexovou), ví, jak správně vybrat metodu vhodnou pro nalezení optimálního řešení zadaného modelu. Student zná dále metodu řešení dopravního problému. Student zná metody řešení úloh vícekriteriálního hodnocení variant a vícekriteriálního lineárního programování. Dovednosti: Student umí zformulovat vlastní problém z oblasti výrobního plánování, vytvoření řezného plánu, řešení nutričního problému, dopravní problém, optimalizace portfolia. Umí jej popsat matematickým modelem, stanovit vhodnou metodu řešení pro zadaný model, nalézt optimální nebo kompromisní řešení pomocí vhodného softwaru MS Excel, LinPro nebo SANNA a výsledek dokáže interpretovat. Obecné způsobilosti: Student je obeznámen se základním ekonomickým aparátem operačního managementu, který je podporou manažerského rozhodování. Je vybaven nástroji ke zvládnutí praktických problémů – dokáže problémy jak formulovat, tak i řešit a následně interpretovat.

2.3 Průběh výuky

2.3.1 Přednášky a cvičení

Stanovenou hodinovou dotaci předmětu Operační výzkum tvoří 2 hodiny přednášek a 2 hodiny cvičení týdně, semestr má celkem 14 výukových týdnů. Při vytváření rozvrhu se dbá na návaznost cvičení na přednášky, přednáška proto vždy

- 152 - předchází všem cvičením v týdenním rozvrhu hodin, jelikož studenti na začátku každého cvičení píší drobný test, jehož hlavním cílem je motivace studentů k tomu, aby si před cvičením zopakovali látku probranou na přednášce. Z tohoto důvodu se cvičení nekoná ani ve stejný den jako přednáška, aby studenti měli čas na domácí přípravu. Časový harmonogram všech aktivit a připravené materiály týkající se výuky předmětu Operační výzkum jsou pro přihlášené studenty zveřejněny na stránkách oficiálního e-learningu VŠPJ v LMS Moodle po dobu celého semestru. Přednášky se konají v přednáškovém sále, formou výkladu se studenti seznamují s novou látkou. Během semestru je odpřednášeno celkem 14 avizovaných témat. Prezentace doprovázející přednášku jsou vždy připravené v MS Powerpoint, (po přednášce je tento soubor umístěn na příslušné místo v e-learningovém kurzu), studenti mohou text také sledovat ve skriptech Operační výzkum, která jsou v elektronické podobě zveřejněna na stránkách e-learningu, pořadí jejich kapitol odpovídá pořadí přednášených témat. Na e-learningu je též umístěn seznam další doporučené studijní literatury, která je k dispozici ve školní knihovně nebo v elektronické podobě na webových stránkách školy, aby byla pro zájemce přímo dostupná. Přednášky obsahují teoretické výkladové pasáže, jež jsou hojně doplňovány o demonstraci praktického řešení vzorových příkladů, které záměrně nejsou totožné s příklady řešenými ve skriptech a ve cvičeních. Přednášky je možné v tuto chvíli prokládat motivačními dotazy, které povzbuzují zájem studentů o prezentovanou problematiku a udržují jejich pozornost. Přednášky na VŠP Jihlava obecně nemohou být povinné, jelikož jsou v rozvrhu studentů povoleny kolize předmětů. Docházku na přednáškách ovšem eviduji, studenti s neomluvenou absencí (předem, nebo zpětně od lékaře) nemají nárok na konzultaci. Zavedením psaní pravidelných testů ověřujících připravenost studentů po přednášce na cvičení se účast na přednáškách zvýšila. Na konci přednášky je vždy ponechán prostor pro stručnou rekapitulaci a utřídění probraného učiva a dále prostor pro dotazy studentů. Studenti jsou vždy v případě problémů nabádáni k využití možnosti konzultace. Případně jsou také přiblíženy typy příkladů, které se mohou vyskytnout v navazujícím cvičení v pravidelném krátkém testu. Dokud si studenti nezvyknou na možnost stažení a vytištění vlastních pracovních listů umístěných ne e-learningu, je vhodné alespoň

- 153 - v úvodních přednáškách jim ji připomenout, brzy sami zjišťují, že je výhodou mít na cvičení pracovní listy připravené. Cvičení předmětu Operační výzkum probíhá v počítačové učebně, kde má každý student sám k dispozici osobní počítač vybavený veškerým požadovaným softwarem. Jak již bylo řečeno, cvičení vždy začíná psaním krátkého, nejvýše desetiminutového testu, hned poté následuje často bouřlivá diskuse nad správností odevzdaných výsledků, okamžitá zpětná vazba je v tuto chvíli nejúčinnější. Následuje kontrola domácího úkolu, případně je prostor pro dotazy studentů týkajících se problémů, na které studenti narazili při domácí přípravě, ať už se jedná o aktuální či některé již dříve probrané téma. Dále se ve cvičeních postupuje podle připravených pracovních listů, jejich kompletní soubor Operační výzkum – pracovní listy je opět v elektronické podobě umístěn na příslušné stránce v LSM Moodle. Studenti ale obvykle nosí pouze volné listy týkající se aktuálních cvičení, které jsou zde proto taktéž uloženy jako samostatné celky pro jednotlivá cvičení. Po zopakování dříve probraných pojmů a vztahů, na kterých mají být vystavěny nové a po případné drobné rekapitulaci přednášky (neobsáhla-li už vše diskuse nad napsaným testem) studenti samostatně řeší zadané příklady. Jsou vedeni slovním komentářem cvičícího či psaným textem, kde mají případně za úkol doplňovat chybějící pasáže do prázdných polí, často zdlouhavá zadání příkladů mají studenti již v pracovních listech k dispozici, čímž je eliminován jejich chybný zápis a uspořen čas vymezený pro cvičení. Průvodní motivační otázky studenty navádějí k úvahám, aby si uvědomili souvislosti mezi probíranými pojmy a lépe porozuměli procvičované látce, spíše než pouze nacvičili představované algoritmy. Ruční výpočty jsou prováděny pouze v hodinách, kdy jsou probírané nové algoritmy, při řešení dalších příkladů je již využíván ke zrychlení práce vhodný software, jehož použití cvičící demonstruje na vzorovém příkladu, který je vyřešen na učitelském PC, zobrazení všech úkonů na pracovní ploše monitoru umožňuje projektor. Student si může ihned toto předvedené řešení vyzkoušet samostatně provést. Díky použití stále dostupnému optimalizačnímu softwaru pak může být více času věnováno správnému sestavení matematického modelu zadaných úloh a hlavní důraz může být kladen na interpretaci získaných výsledků, což je cílem výuky. Příklady ve cvičeních nejsou opatřeny výsledky, studenti jsou nabádáni ke konzultaci svých způsobů řešení a porovnávání dílčích výsledků přímo během cvičení se spolužáky,

- 154 - v případě neshody či nejistoty také s pedagogem, který prochází po celu dobu mezi studenty, „napovídá“ a je stále k dispozici. Využití pracovních listů umožňuje studentům pracovat svým vlastním tempem, pokud nestačí individuální konzultace se cvičícím, řeší třída příklad společně u tabule, kam jsou přednostně zváni studenti, kteří tvrdí, že k tabuli jít nechtějí, protože „tomu nerozumí“, což dává prostor odhalit a následně se pokusit znovu vysvětlit problematické pasáže. V poslední době se osvědčilo bodování aktivní práce studentů přímo během cvičení, což vedlo ke zvýšení pozornosti a aktivity studentů, případně odrazení neaktivních studentů od nesoustředěného a rušivého pobytu v učebně, výrazně se tak zlepšila pracovní atmosféra ve skupině. Cvičící zároveň kontroluje aktivní účast, kterou na konci cvičení oboduje. Zřídka se stává, že student nepracuje, většinou studenti za aktivní účast ve cvičeních získávají všechny z 3 možných bodů. Na druhou stranu je třeba podotknout, že během cvičení zvládají studenti projít stále méně příkladů, jelikož jsou stále více limitováni svými obecně klesajícími matematickými vědomostmi a dovednostmi. Po rekapitulaci nově nabytých vědomostí před koncem cvičení jsou nedokončené příklady studentům ponechány k vyřešení jako dobrovolný domácí úkol, k problémům při jeho řešení vzešlým je třeba se na začátku dalšího cvičení důsledně vracet a poskytovat studentům zpětnou vazbu. Cvičení nejsou výslovně povinná, student ovšem musí k získání zápočtu dosáhnout stanoveného minimálního počtu bodů, které lze získat pouze z hodnocení testů a za aktivní účast ve cvičeních (viz kapitola Hodnocení). Student, který nenavštěvuje cvičení, nemá šanci na získání zápočtu dosáhnout.

2.3.2 Domácí příprava

Studenti jsou během semestru nabádáni a motivováni také k průběžné samostatné přípravě. Zatímco aktuálnímu tématu z poslední přednášky se studenti horlivě věnují ještě se vstupem do učebny, ke dříve odpřednášeným a procvičeným tématům se již v rámci samostudia obvykle nevracejí. Rozdělení domácích úkolů na povinné a nepovinné položky také zřetelně napovídá, které z úkolů budou studenty ve stanoveném termínu splněny. Dobrovolné domácí úkoly obvykle nejsou studenty vypracovávány, byť na konci hodiny s pracovní atmosférou studenti vykazují známky okamžitého odhodlání nový domácí úkol zvládnout a dokázat si tak, že látce porozuměli. Do příštího cvičení z tohoto odhodlání ve velké většině případů sejde. Domácí úkoly obvykle vypracují jen pilněji se

- 155 - připravující, většinou stále stejní studenti, se kterými je na začátku cvičení provedena slíbená kontrola jejich snažení. Jelikož protokoly jsou naopak povinnou součástí zkoušky a mají třetinový vliv na výslednou známku, jsou studenti nuceni vypracovat všechny, protože jde o jednu z nutných podmínek pro získání zápočtu. Studenti během semestru vypracují celkem čtyři protokoly, na základě obecného zadání definujícího typ úlohy, její rozměr, doporučenou metodu či software pro řešení úlohy. Toto zadání je od začátku semestru zveřejněno na stránkách oficiálního e-learningu VŠPJ v LMS Moodle, stejně jako jsou tamtéž již v prvním výukovém týdnu nastaveny termíny jejich odevzdávání. Každý student musí vymyslet své vlastní praktické příklady úloh zadaných typů, a samostatně je zpracovat formou seminární práce. Cílem je osvojení si základního schématu tohoto zpracování, kdy je třeba provést analýzu problému, sestavit matematický model úlohy, vyřešit pomocí vhodného softwaru a nalezené řešení správně interpretovat. Vlastní zadání protokolů proběhne vždy v rámci příslušné přednášky, krátce je také možné věnovat se obecným požadavkům či upozornění na často se vyskytující chyby ve cvičení. Individuální konzultace protokolů jsou možné pouze v konzultačních hodinách, podmínkou je, že student přichází s rozpracovaným protokolem. Bylo třeba eliminovat narůstající korespondenční konzultace, kdy před vypršením termínu studenti opakovaně vyžadovali kontrolu svých protokolů, aniž by do nich obdržené podněty a připomínky zapracovali. Nyní má každý student nárok pouze na jednu konzultaci protokolu před jeho uložením do odevzdávárny v LSM Moodle, čímž se komunikace mezi studenty a pedagogem nad protokoly velmi zefektivnila. Je dbáno také na formální úpravu odevzdaných prací. Obecně pro všechny platí, že je třeba dodržovat strukturu seminární práce (úvodní strana, vzhled stránky, číslování a struktura kapitol, stylů obecného textu, formátů matematických symbolů, číslování vložených objektů (tabulek, grafů), ke zpracování se používá textový editor MS Word. Srozumitelné a jednoznačné slovní zadání úlohy, sestavení kompletního matematického modelu úlohy, vložení výstižné části výsledkové zprávy a kompletní slovní interpretace jsou nutnými položkami po obsahové stránce. Práce by neměla přesáhnout délku tří stran, studenti jsou vedeni k věcnosti a stručnosti vyjadřování. Protokol 1 je zadán po probrání jednofázové primárně simplexové metody a seznámení studentů s programem LinPro. Studenti vymyslí své vlastní zadání úlohy výrobního plánování nebo nutričního problému, zavedou strukturní proměnné a sestaví

- 156 - kompletní matematický model, který přepíší do tabulkového prostředí programu LinPro. Zde úlohu vyřeší pomocí primárně simplexové metody, tento postup stručně popíší. Do práce se vkládá pouze poslední iterace v simplexové tabulce. Je třeba interpretovat výsledné hodnoty strukturních i přídatných proměnných a odpovídající hodnotu účelové funkce a hodnoty stínových cen a redukovaných nákladů. V rámci postoptimalizační analýzy je třeba provést interpretaci hranic intervalů stability optimálního řešení v závislosti na změně jednotlivých kapacit a cen (je požadováno popsat všechny možné varianty výsledku). Protokol 2 je zadán po probrání dvoufázové primárně simplexové metody a seznámení studentů s programem MPL. Studenti vymyslí své vlastní zadání řezného plánu, zavedou strukturní proměnné, sestaví kompletní matematický model, který přepíší do textového prostředí programu MPL. Vyřeší také pomocí dvoufázové primárně simplexové metody v LinPro. Oba výstupy porovnají a stručně popíší. Do práce se vkládá pouze poslední iterace v simplexové tabulce a výpis dialogového okna v MPL. Je třeba interpretovat výsledné hodnoty strukturních i přídatných proměnných a odpovídající hodnotu účelové funkce a hodnoty stínových cen a redukovaných nákladů. V rámci postoptimalizační analýzy je třeba provést interpretaci hranic intervalů stability optimálního řešení v závislosti na změně jednotlivých kapacit a cen (je požadováno popsat všechny možné varianty výsledku). Protokol 3 je zadán po probrání algoritmů metody MODI. Studenti vymyslí své vlastní zadání dopravního problému, zavedou strukturní proměnné, sestaví kompletní matematický model, který přepíší do tabulkového prostředí programu LinPro a úlohu vyřeší tentokrát pomocí algoritmu pro úpravy v dopravní tabulce, tento postup stručně popíší. Do práce se vkládá pouze poslední iterace v dopravní tabulce včetně všech pomocných výpočtů. Je třeba interpretovat výsledné hodnoty strukturních proměnných a odpovídající hodnotu účelové funkce a provést diskusi o počtu optimálních řešení. Protokol 4 je zadán po probrání metody řešení úloh vícekriteriálního hodnocení variant a seznámení studentů s programem SANNA. Studenti vymyslí své vlastní zadání úlohy vícekriteriálního hodnocení variant (např. nákup nového automobilu), parametry přepíší do tabulkového prostředí programu SANNA a úlohu vyřeší tentokrát pomocí implementovaných algoritmů pro řešení úloh VHV. Do práce se vkládají pouze vhodné výsledkové sestavy, které je třeba interpretovat, kompromisní varianty získané všemi použitými metodami je třeba stručně porovnat.

- 157 -

2.3.3 Konzultace

Cvičící má v informačním systému vypsány konzultační hodiny, na které se mohou studenti po přechozí domluvě e-mailem dostavit, případně se lze dohodnout na jiném vyhovujícím termínu, vyučující se obecně snaží studentům vyjít vstříc. Studenti jsou opakovaně vybízeni k vyžívání konzultací jak při diskusi nad nepochopenými pasážemi z přednášek, tak nad problémy vzniklými při řešení praktických příkladů jak během cvičení, nebo pokud během domácí přípravy zjistí, že co se zdálo ve cvičení zřejmým, již jasné není. Konzultace jsou poskytovány také k domácím úkolům, protokolům i ostatním studijním problémům. Poskytování konzultací je podmíněno účastí na přednáškách a cvičeních, studentům s neomluvenou absencí nejsou konzultace poskytovány. Student navíc musí přijít na konzultaci připraven, mohou být konzultovány otázky k rozpracovaným příkladům. Stále častěji však mají studenti problém už se samotnou formulací dotazu. Obecně ovšem zájem o osobní konzultace upadá. Odrazem dnešní doby je také fakt, že komunikace ze strany studentů se přesunula do oblasti elektronické korespondence, která je naopak mnohem intenzivnější než dříve. Není-li ovšem komunikace interaktivní, je pro konzultaci obvykle nevhodná, a to obzvláště u studentů s nižší úrovní vědomostí. Nutí ovšem studenta více se soustředit na formulaci písemně pokládaných dotazů. Došlo také ke změně témat, která studenti chtějí konzultovat. Zatímco praktických dotazů k samostatně řešeným příkladům ubývá a konzultace k opraveným písemným testům téměř vymizela (studenti již nemají zájem o poučení se z vlastních chyb), stále více se objevují žádosti o konzultace možnosti snížení požadavků, jakmile se ukazuje, že již zápočet nelze získat, v tu chvíli ovšem nezbývá žádný manipulační prostor k řešení vzniklé situace.

2.3.4 Hodnocení studentů

Účast na přednáškách a cvičeních není povinná, docházka je evidována z výše zmíněného důvodu týkajícího se nároku na poskytování konzultací, které nemají suplovat výuku zameškanou kvůli neomluvené absenci. Za každé cvičení je uděleno 5 bodů: za krátký test ověřující vědomosti z přednášky v úvodu hodiny je možné získat 2 body, za aktivní účast ve cvičení je možno získat až 3 body, celkově potom za semestr 70 bodů. K získání zápočtu je potřeba alespoň 50 bodů.

- 158 -

Na konci semestru studenti často přichází s žádostí o snížení předem stanovených požadavků s odůvodněním, že přes veškerou svou snahu na zápočet nedosáhnou, ale že jim na získání známky záleží, zápočet potřebují a jsou ochotni vypracovat případně nějaké úkoly navíc. Právě jejich dosavadním přístupem k domácí přípravě jim často lze, bohužel, jejich poctivý přístup k přípravě vyvrátit, na možnost vzniku této situace jsou na začátku semestru upozorněni. Ze zkušenosti vím, že studenti, kteří konzultací aktivně využívají, a to především z důvodu, že nejsou sami schopni některá témata pochopit, nakonec obvykle se získáním zápočtu problém nemají. Zřetelný rozdíl mezi výsledky zkoušek u studentů, kteří si předmět zapsali poprvé a těmi, kteří jej již opakují je toho dokladem, o konzultaci totiž zpravidla žádají především studenti opakující, kteří se v tomto směru jeví jako studenti poctivější. Ústní zkouška se skládá ze dvou částí. V první části si student vylosuje dva z předem známých tematických okruhů, o kterém musí být schopen alespoň 5 minut souvisle hovořit, ke každému vyřeší drobný praktický úkol, který může být využit jako záchytný bod také v případě, kdy student není schopen teoretického výkladu. Vzhledem k limitovaným schopnostem studentů není vyžadováno přesné znění vět a definic, je ovšem nutné je bezchybně při řešení praktických úkolů aplikovat. Ve druhé části ústní zkoušky (s poloviční vahou) student prezentuje své čtyři protokoly, které v průběhu semestru samostatně vyřešil a včas vložil do odevzdávárny. Zde se zaměřujeme především na analýzu zvoleného problému, důvod výběru metody řešení a optimalizačního softwaru a úplnou slovní interpretaci výsledků. Pokud student během domácí přípravy po odevzdání protokolů dodatečně zjistí, že je vypracoval chybně, může u ústní zkoušky své výsledky opravit a tuto změnu vysvětlit, protokol potom není hodnocen jako chybný. Studenti si mohou ke zkoušce přinést všechny své protokoly vytištěné, čehož až na výjimky vyskytující se v řádu jednotek využívají.

2.4 Zkušenosti s výukou

Při přípravě předmětu Operační výzkum jsem mimo jiné využila svých již zmíněných zkušeností s výukou předmětu Matematika pro ekonomy. Zaměřila jsem se na čtyři základní faktory: úroveň středoškolských matematických znalostí a výpočetních dovedností, míru samostatné domácí přípravy a využívání konzultací, aktivní práci ve vyučování (zejména ve cvičeních) a úspěšnost v testech a písemných pracích.

- 159 -

2.4.1 Středoškolské znalosti

Vzhledem k obecně velmi nízké úrovni středoškolské matematiky u studentů, kteří se hlásí ke studiu na VŠPJ a nízkým limitům pro přijetí studentů ke studiu, má úroveň matematických vědomostí a dovedností u přijatých studentů klesající trend. Na začátku semestru byl v rámci zjišťování úrovně těchto znalostí ve dvou skupinách celkem 48 studentům, kteří již předmět, který byl v tomto semestru vypsán naposledy, opakují, zadán test s jednoduchými středoškolskými příklady bez možnosti použití kalkulačky. Ukázku testu označeného jako TEST 00 přináší Obrázek 43 – Test středoškolských znalostí – ukázka varianty.

Obrázek 43 – Test středoškolských znalostí – ukázka varianty Zdroj: vlastní - 160 -

Nejslabších výsledků studenti dosahovali v příkladech 1., 3. a 10. Z dalšího hodnocení testu vyplynulo, že studenti často neumí počítat se zlomky a upravovat je (37,5 % nesprávných řešení, 45,8 % neúplných či nesprávných úprav), řešit lineární nerovnice (54,2 % nesprávných řešení), nerozlišují pojmy jako „nejvyšší záporný“, „nekladný“ apod. při úkolu vybrat ze seznamu zadaných čísel (dokonce 62,5 % nesprávných řešení), řešit soustavu tří lineárních rovnic o třech neznámých, která má nekonečně mnoho řešení (dílčí výsledky zachycují Tabulka 20 a Tabulka 21), sestrojení grafu objektu zadaného lineární rovnicí (33,3 % nesprávných řešení) apod. Přestože se jednalo o studenty předmět MEK opakující, u příkladu řešení SLR, kde nebylo uvedeno, jakou metodou řešit, zvolili maticový způsob řešení pouze 3 studenti.

Tabulka 20 – Test středoškolských znalostí – řešení SLR - metoda Metoda Absolutní četnost Relativní četnost (%) Dosazovací 27 53,3 Sčítací 16 33,3 Maticově 3 6,3 Vynecháno 2 4,2 Celkem 48 100,0

Zdroj: vlastní Správnost řešení nesouvisela se zvolenou metodou, u všech tří variant byla úspěšnost obdobná. Vzhledem k tomu, že byla zadána soustava s „pěknými“ koeficienty, numerická chyba se vyskytla pouze ve 2 případech, neúspěch řešení byl způsoben jinými faktory. Z 18 studentů, kteří dospěli k výsledku „0=0“, uvedlo pouze 7 z nich správnou interpretaci, že soustava má nekonečně mnoho řešení. Pouze jediný z těchto studentů uvedl také správný zápis optimálního řešení a navíc udal příklad partikulárního řešení. Také numerické dovednosti se zhoršují, i k provádění nejjednodušších matematických operací s malými čísly jsou studenti často zvyklí používat kalkulátory nebo mobilní telefony, během testu bylo vzneseno několik dotazů, zda by nemohl být přece jenom kalkulátor použit.

- 161 -

Tabulka 21 – Test středoškolských znalostí – řešení SLR - řešení Metoda Absolutní četnost Relativní četnost (%) „0=0“ 18 37,5 Chybná úprava 17 35,4 Nedokončeno 9 18,8 Numerická chyba 2 4,2 Vynecháno 2 4,2 Celkem 48 100,0

Zdroj: vlastní Studenti tedy mají obecně velmi špatné matematické znalosti a dovednosti s nadále zřetelně klesajícím trendem.

2.4.2 Domácí úkol

Na konci každého cvičení dostávají studenti navazující domácí úkol, na kterém prokazují (především sobě) své právě nabyté vědomosti a početní dovednosti. Mohou také dopočítat příklady, které se ve cvičení nestihnou a jsou vybízeni ke konzultaci vzniklých problémů. Podmínka pro nárok na konzultaci je, že je poskytována pouze k rozpracovaným příkladům, studenti musí umět formulovat, v jaké fázi příkladu nevěděli, jak pokračovat dál. Rozdělení domácích úkolů na povinné a nepovinné položky také zřetelně definuje, které z úkolů budou studenty ve stanoveném termínu splněny. Dobrovolné domácí úkoly obvykle nejsou studenty vypracovávány, byť na konci hodiny s pracovní atmosférou studenti vykazují známky okamžitého odhodlání nový domácí úkol zvládnout a dokázat si tak, že látce porozuměli. Do příštího cvičení z tohoto odhodlání ve velké většině případů sejde, při namátkových kontrolách se ukázalo, že studenti dobrovolné domácí úkoly vypracovávají jen zřídka, jedná se řádově o jednotky studentů, kteří zároveň jeví zájem o slíbenou kontrolu jejich výsledků, která je vždy na začátku cvičení provedena z důvodu zpětné vazby jejich práce. Obvykle domácí úkoly vypracovávají titíž studenti, jejichž výsledky jsou zpravidla lepší, než výsledky studentů ostatních. O konzultaci během práce na domácím úkolu zájem neprojevil žádný student, studenti se o řešení domácího úkolu obvykle vůbec nepokusí, neboť doma obvykle během týdne probranou látku neprocvičují a k domácímu úkolu se nevrací. Připomenutí domácího úkolu dva dny před dalším cvičením pomocí e-mailu nikterak jeho plnění nezvýšilo. Z mých zkušeností tudíž vyplývá, že zadáváním - 162 - dobrovolných domácích úkolů nemůže být cíle podnícení domácí přípravy studentů dosaženo. Přístup studentů k dobrovolným domácím úkolům potvrzuje nutnost studenty k domácí přípravě přimět. Přestože se studenti domácím úkolům ve většině případů nevěnují, důsledně na konci každého cvičení nějaký dobrovolný domácí úkol zadávám a v dalším cvičení nabízím jeho kontrolu a konzultaci problémů.

2.4.3 Seminární práce - protokoly

Student během semestru vypracuje čtyři protokoly podle zadání zveřejněné po celou dobu semestru na e-learningu, čímž prokáže schopnost samostatně analyzovat konkrétní úlohu z praxe, pomocí vhodné metody či softwaru najít její řešení a slovně interpretovat získané výsledky. Zadání protokolů je načasováno po probrání potřebných témat. V Matematice pro ekonomy byly protokoly původně opravovány již během semestru, kvůli jejich zhoršující se kvalitě a velkému úbytku studentů během semestru byla jejich kontrola zefektivněna. Protokoly budou v Operačním výzkumu kontrolovány až v rámci ústní zkoušky, nutnou podmínkou k získání zápočtu bude pouze jejich nahrání do e-learningové odevzdávárny, která se po stanoveném termínu automaticky uzavírá. Hromadné vkládání protokolů na poslední chvíli způsobovalo problémy systému Moodle, uznány proto byly také protokoly odeslané na e-mail cvičícího do pěti minut po vypršení stanovaného termínu. Jak již bylo zmíněno, povinné protokoly studenti usilující o zápočet vždy vypracují, je třeba zabývat se pouze kvalitou tohoto zpracování, která je součástí hodnocení u ústní zkoušky. Student během zkoušky prezentuje protokoly s vlastními konkrétními příklady z praxe a jejich výsledky získané za použití softwaru. Špatně zadané či vypočtené příklady je třeba znovu vypracovat, student je hodnocen známkou „F“, v opačném případě student provede kompletní slovní interpretaci získaných konkrétních výsledků, které je věnována zásadní důležitost. Obecné fráze typu „Pokud by se cena daného výrobku zvedla o jednotku, zlepšila by se hodnota účelové funkce o …“, je vyžadována formulace „Pokud by se cena barelu zvýšila o 1 dolar, vzrostl/klesl by zisk firmy o …“. Pro odlehčení situace mají studenti za úkol si představit, že své výsledky vyhlásí ve formě tiskové zprávy ve večerních televizních Událostech pro širokou laickou veřejnost, odborné výrazy jsou tudíž zapovězeny.

- 163 -

Často se vyskytujícím problémem bývá chybné zavedení proměnných a jejich jednotek, chybná interpretace výsledků, chybějící interpretace některých z požadovaných výsledných hodnot (nejčastěji se studenti snaží vyhnout interpretaci redukovaných nákladů a stínových cen a interpretaci významu mezí intervalu stability).

Obrázek 44 – Anketa – postoj k domácí práci Zdroj: vlastní

Stále více se rozšiřujícím problémem je stahování již vypracovaných protokolů z diskusních fór a studentských portálů jako Primát (www.primat.cz) a jejich následné upravování. Toto jednání není považováno studenty za prohřešek (obdobně jako různé druhy podvodů u písemných prací), naopak sami používají tvrzení typu „vždyť spolužákovi tohle u vašeho kolegy právě takhle prošlo“, čímž spolupráci potvrzují. Z drobné anonymní ankety mezi 87 studenty cvičení MEK v zimním semestru 2013/2014, kde měli studenti u každé otázky vybrat ze dvou odpovědí vždy tu, která nejlépe vystihuje jejich postoj, vyplynulo, že na otázku „1. Co mne motivuje při studiu?“ zvolilo 82,1 % studentů variantu „Potřebuji získat titul.“ (proti variantě „Chci získat vědomosti z oboru.“) a větu „2. Upravování zkopírovaných seminárních prací považuji …“ doplnilo 62,8 % respondentů volbou varianty „… za praktickou součást jejího vypracování, mělo by být akceptováno.“ (proti variantě „za nepřínosný způsob jejího vypracování, nemělo by být uznáno.“). Obrázek 44 znázorňuje rozdělení relativních četností odpovědí u obou otázek výsečovým grafem, u 1. otázky jsou obě varianty popsány jako „titul“ a „vědomosti“ (v tomto pořadí), u 2. otázky jsou obě varianty popsány jako „ANO“ a „NE“ (v tomto pořadí).

- 164 -

Po zkušenostech s opravováním protokolů jsem se během ústního zkoušení 153 studentů v roce 2013/2014 zaměřila na některé opakující se pasáže, jejich výskyt jsem vyhodnotila, studenty jsem na ně neupozorňovala. V Protokolu 1 v rámci analýzy citlivosti se velmi často vyskytovala obecná a nesprávná formulace „Pokud je hodnota pravé strany uvnitř intervalu stability, řešení se nezmění.“, v Protokolu 3 v rámci zápisu matematického modelu úlohy se vyskytuje řetězec znaků z  c * x  c * x  c * x  c * x  c * x  11 11 12 12 13 13 21 21 22 22  c23 * x23  c31 * x31  c32 * x33  c33 * x33  min . kde je nesprávně použito symbolu „*“ ve smyslu násobení a na rozdíl od všech ostatních objektů matematických modelů ve všech protokolech není uvedená konkrétní účelová funkce, ale její obecný tvar, apod. Pokud se u studenta vyskytla některá ze sledovaných pasáží doslovně použitá alespoň ve dvou z jeho čtyř předkládaných protokolů, byl zařazen do kategorie „nevypracoval samostatně“, k čemuž došlo celkem v 74 případech (48,4 %).

Obrázek 45 – Anketa – postoj k samostatnému vypracování úkolů Zdroj: vlastní

Samostatné vypracování u domácího úkolu nelze jednoduše zajistit, je ovšem otázkou, do jaké míry toto využívání jiných prací ještě akceptovat, a kdy je považovat za nepřípustné. Osobně jsem ve své pedagogické praxi musela sama pro sebe toto dilema vyřešit. Pokud se ovšem i v těchto úvahách vrátíme k cílům předmětu Operační výzkum, jde především o to naučit studenty prakticky využít metod operačního výzkumu k řešení konkrétních úloh z praxe. Pokud student dokáže zhodnotit, že je dostupný materiál vypracován správně a obměnit jej tak, aby dosáhl řešení svého úkolu, - 165 - a to zejména kompletní slovní interpretace nalezeného řešení, je stanoveného cíle dosaženo. Tento postup přirovnávám k práci programátorů, kteří obvykle nevytvářejí celý zdrojový kód programu od začátku, ale upravují již podobné fungující zápisy, což je samozřejmě mnohem efektivnější a v praxi se nikdo se nad tímto způsobem práce nepozastavuje. S nadsázkou řečeno, studenti vlastně „optimalizují“ své úsilí vynaložené k získání zápočtu a zkoušky, a tak, možná nevědomky, naplňují další z cílů výuky Operačního výzkumu zcela prakticky. Odevzdání protokolu totožného s již odevzdaným protokolem mělo v jiném předmětu za následek hodnocení studenta známkou „F“ u zkoušky a precedentní napomenutí Disciplinární komisí. Upravené protokoly (někdy nedůsledně přepracované) jsou zkoušejícími nadále zdánlivě akceptovány, student je ovšem důkladně prověřen, zda předkládaným formulacím rozumí, musí je umět při ústním zkoušení svými slovy srozumitelně vysvětlit. Zkoušenému studentovi jsou proto v těchto situacích kladeny doplňující otázky, např. „Co by to pro výrobu znamenalo, kdyby pekárna měla k dispozici o 200 kg mouky méně?“, „Jak by musela být zlevněna přeprava od dodavatele D5 k odběrateli O2, aby se vyplatilo po ní nějaké zboží převážet?“, „Co při sestavování nutričního plánu v praxi znamená dosažení degenerovaného řešení?“, „Změňte jeden parametr vámi posuzovaného automobilu tak, aby dominoval některou z ostatních variant.“ apod.

2.4.4 Průběžné testy

Při zavedení průběžných testů do systému hodnocení studentů byly vytvořeny sady dvojic testových příkladů, kde je jeden spíše otázkou teoretického charakteru, je zde obvykle třeba doplnit nějaký text, a druhý spíše praktickým prokázáním osvojení si pravidel řešení konkrétních úloh podloženým drobným výpočtem, určením vlastnosti či vyhledání důležitého místa v zápise. Tuto klasifikaci otázek pomocí pojmů „teoretická“ či „praktická“ považuji za nešťastnou, neboť se obě oblasti obvykle při studiu každého prakticky zaměřeného oboru navzájem překrývají. Ke správnému řešení konkrétních úloh je třeba znát teorii, která má zase úzkou návaznost na potřeby praktického využití. Studenti jsou od počátku vedeni k tomu, aby si zvykali na efektivní způsob vyjadřování formulovaný hesly: „stručně a výstižně“, omezený prostor testu formátu A6 k tomu vybízí. U každé odpovědi je vyžadováno také její zdůvodnění, nepodložená odpověď není uznána. Od druhého cvičení je již samozřejmostí důsledné používání

- 166 - zavedené symboliky a názvosloví, v prvním testu je jejich nedodržení pouze zvýrazněno bez ztráty bodu. Příklad takového testu přináší Obrázek 46. Za každý z příkladů může student získat 0, ½ nebo 1 bod, celkově za jeden test 2 body. Při omluvené absenci je možné test psát v náhradním termínu, student, který se nedostaví a není omluven, je hodnocen 0. Ze zřejmých důvodů není vytvořená sbírka testů studentům zpřístupněná, studenti ovšem horlivě zadané testy „sbírají“, starší zadání jsou mezi studenty předávány. Variant zadání může být nepřeberné množství, není tedy na škodu, kdykoli se studenti probírané látce věnují ať už jakýmkoli způsobem, což je ostatně cílem zavedení pravidelných testů do výuky.

Obrázek 46 – Průběžné testy – příklad jedné varianty Zdroj: vlastní

Zavedení testů do výuky považuji v případě malé vnitřní motivace a zodpovědnosti studentů za zcela opodstatněné, neboť studenti jsou ochotni věnovat se pouze úkolům, za něž jsou hodnoceni a je tedy nutné je k práci přimět právě touto cestou. V pracovní atmosféře, které je tímto dosaženo, se lépe daří vzbudit zvědavost posluchačů a pokud možno vyvolat jejich údiv nad jednoduchostí řešení komplikovaných problémů pomocí prostředků matematiky, což je velmi důležitý, ale náročný úkol.

- 167 -

2.4.5 Zápočtová písemná práce

V rámci volitelného předmětu Operační výzkum nebude písemná práce zadávána, v případě zařazení povinného předmětu Operační výzkum bude třeba zjistit, zda by její zavedení zvýšilo motivaci studentů, nebo zda postačí ve cvičení psát průběžné testy a hodnotit aktivní účast studentů. Při výuce Matematiky pro ekonomy byla do roku 2010/2011 původně zadávána pouze zápočtová písemná práce a ústní zkouška. Prudký pokles znalostí studentů vyžadoval změnu, do výuky byly zařazeny průběžné testy psané na začátku každého cvičení. Toto opatření bylo zavedeno kvůli získání průběžné pozornosti studentů na přednáškách a větší efektivitě cvičení. Jejich použití již bylo ve vybraných studijních skupinách testováno v zimním semestru 2008/2009. Průběžná příprava studentů měla za následek zastavení poklesu této úrovně. Při statistickém srovnání výsledků drobných testů s výsledky písemné práce dospěl garant předmětu v zimním semestru roku 2014/2015 k názoru, že se od jejího psaní ustoupí, jelikož mezi výsledky psaní testů a písemné práce byla zjištěna silná přímá závislost. Dalším důvodem byly problémy studentů řešit slovní úlohy LP ručně, klesající numerické dovednosti studentů implikovaly velké množství numerických chyb (nebyl využíván optimalizační software) a nebylo tak možné posoudit úroveň znalostí studentů. Písemná práce obsahovala vždy čtyři příklady, pro které bylo třeba provést kompletní řešení, a nebo jeho stanovenou část. Výukou úloh LP jsem se zabývala již od roku 2001 ještě na VOŠ Jihlava, na každém vzdělávacím stupni bylo součástí zápočtové písemné práce řešení jednoduché úlohy LP primárně simplexovou popř. grafickou metodou. Písemné práce již byly skartovány, ale dodnes si pamatuji, že studenti VOŠ až na výjimky dokázali v rámci písemné práce bez problému vyřešit úlohy i bez použití kalkulačky, dnešní studenti s tím mají nepoměrně větší problémy. Rozborem chyb vyskytujících se v písemných pracích nashromážděných během uplynulých let se podařilo odhalit problematické pasáže, které jsou specifikovány v kapitole 2.5.2.

2.4.6 Ústní zkouška

Ústní zkouška byla vždy pevnou součástí výuky Matematiky pro ekonomy, bude také základem pro hodnocení studentů v předmětu Operační výzkum. Skládá ze dvou částí. V první části si student vylosuje dva z předem známých tematických okruhů, o kterých musí být schopen alespoň 5 minut souvisle hovořit, přičemž není vyžadováno

- 168 - přesné znění vět a definic. Případně může také využít praktického příkladu, který otázku doplňuje, na nějž je nutné interpretovanou teorii alespoň bezchybně aplikovat při jeho konkrétním řešení. Zjišťují se také výpočetní dovednosti studenta. Ve druhé části ústní zkoušky student prezentuje své čtyři protokoly včas odevzdané do odevzdávárny v Moodle, ve kterých se zaměřuje na analýzu zvoleného problému a úplnou slovní interpretaci výsledků získaných pomocí vhodně zvoleného softwaru. Své protokoly si může přinést vytištěné a při zkoušce do nich nahlížet. Je nutné prokázat porozumění uváděných formulací. Během let 2006 až 2014 bylo u ústní zkoušky z Matematiky pro ekonomy hodnoceno celkem 1 627 studentů, toto hodnocení bylo možné získat z Informačního systému VŠPJ. Tabulka 22 a Obrázek 47 zachycují časovou řadu absolutních četností veškerých hodnocení udělených u ústní zkoušky od zimního semestru akademického roku 2006/2007.

Tabulka 22 – Ústní zkouška – všechna udělená hodnocení v letech 2006 – 2014 Hodnocení A B C D E F Celkem ZS 2006/2007 18 4 4 4 2 1 33 LS 2006/2007 36 18 21 14 23 51 163 LS 2007/2008 5 29 26 24 34 78 196 LS 2008/2009 13 33 36 35 37 144 298 LS 2009/2010 11 9 15 7 20 22 84 ZS 2010/2011 3 10 28 18 38 62 159 ZS 2011/2012 8 25 27 38 57 127 282 ZS 2012/2013 13 10 16 12 47 69 167 ZS 2013/2014 5 22 10 16 22 98 173 ZS 2014/2015 5 16 22 11 16 3 73 Během 2006 - 2014 117 176 205 179 296 655 1 627 Zdroj: vlastní Při přesunu předmětu MEK v rámci doporučeného studijního plánu mezi letním a zimním semestrem prvního ročníku došlo v LS 2008/2009 a ZS 2011/2012 ke kumulaci vyučovaných studentů, naopak následující roky byly, co se týče počtu vyučovaných studentů, slabší. Do hodnocení jsou zahrnuti všichni studenti, kteří si předmět Matematika pro ekonomy v daném semestru zapsali, vyjma studentů, kteří se dle Studijního řádu odhlásili nejpozději do 3. výukového týdne. Barevná škála vyjadřuje úspěšnost studentů, nejsvětlejší barva značí nejlepší hodnocení, černě jsou naopak označeni

- 169 - studenti, kteří zkoušku nezískali během řádného a dvou opravných termínů. Studenti, kteří předmět opakovali, jsou v této tabulce započítáni dvakrát, obvykle ve dvou po sobě jdoucích semestrech.

Obrázek 47 – Ústní zkouška – všechna udělená hodnocení v letech 2003 – 2014 - histogram Zdroj: vlastní

Zajímavější je pohled, který přináší Tabulka 23, resp. Tabulka 24 a jim odpovídající Obrázek 48 a Obrázek 49, kde jsou studenti rozděleni na ty, kteří si předmět Matematika pro ekonomy zapsali poprvé (celkem 1 288 studentů), resp. podruhé (celkem 339 studentů). Tentokrát jsou četnosti udělených hodnocení vyjádřeny relativně.

Tabulka 23 – Ústní zkouška – hodnocení při první registraci v letech 2006 – 2014 Hodnocení A B C D E F Celkem ZS 2006/2007 18 4 4 4 2 1 33 LS 2006/2007 36 18 21 14 22 51 162 LS 2007/2008 4 23 25 22 22 74 170 LS 2008/2009 12 28 28 30 30 139 267 LS 2009/2010 2 3 6 4 4 16 35 ZS 2010/2011 3 10 28 18 35 59 153 ZS 2011/2012 6 9 14 21 39 121 210 ZS 2012/2013 13 9 11 9 25 65 132 ZS 2013/2014 2 7 6 7 14 90 126 Během 2006 - 2014 96 111 143 129 193 616 1 288

Zdroj: vlastní Z 1 288 studentů, kteří si předmět zapsali poprvé, neuspělo 616 z nich (47,8 %). Z těchto neúspěšných studentů si předmět podruhé zapsalo 339 studentů (55 %), a ani podruhé neuspělo 39 z nich (11,5 %). Je vidět, že napoprvé neúspěšní studenti jsou při

- 170 - druhé registraci mnohem úspěšnější, než při registraci první. Pravděpodobně nejde o náhlý nárůst jejich matematických dovedností, jako spíše o úsilí, které byli okolnostmi donuceni vynaložit při přípravě na vyučování.

Obrázek 48 – Ústní zkouška – hodnocení při první registraci v letech 2006 – 2014 Zdroj: vlastní

Mé zkušenosti tomuto faktu odpovídají, studenti, kteří mají předmět zapsaný podruhé, přistupují k výuce mnohem zodpovědněji, z čehož také usuzuji, že již při první registraci byli schopni takové úsilí vyvinout, ale nebyli dostatečně motivováni. Motivace je tak stále ústředním faktorem úspěchu či neúspěchu studenta.

Tabulka 24 – Ústní zkouška – hodnocení při druhé registraci v letech 2007 – 2014 Hodnocení A B C D E F Celkem LS 2007/2008 1 6 1 2 13 4 27 LS 2008/2009 1 5 8 5 7 5 31 LS 2009/2010 9 6 9 3 19 9 55 ZS 2011/2012 0 10 5 14 13 4 46 LS 2011/2012 2 6 8 3 5 2 26 ZS 2012/2013 0 1 5 3 22 4 35 ZS 2013/2014 3 15 4 9 10 10 51 ZS 2014/2015 5 16 22 11 13 1 68 Během 2006 - 2014 21 65 62 50 102 39 339 Zdroj: vlastní Jistě i nedostatečné matematické znalosti a dovednosti úspěšnost studenta ovlivňují, ze studentů, kteří se o zvládnutí předmětu pokusili, podruhé neuspělo pouze 11,5 %. Přestože byl MEK považován za jeden z nejtěžších předmětů, ve skutečnosti získalo zápočet 78 % studentů, což odpovídá úspěšnosti v dalších matematických

- 171 - předmětech. Důvody, proč si 45 % studentů neúspěšných při první registraci nezaregistrovalo předmět také podruhé, nejsou přesně známy, nejčastěji se však pravděpodobně jedná o souběh neúspěchů ve více předmětech. Hodnocení „F“ potom bylo ve velké většině případů těmto studentům zapsáno automaticky v IS na konci zkouškového období, neboť se nepřihlásili na žádný z vypsaných termínů. Dále z uvedených informací vyplývá, že i při druhé registraci dosahují studenti všech úrovní hodnocení, objevuje se i hodnocení „A“.

Obrázek 49 – Ústní zkouška – hodnocení při druhé registraci v letech 2007 – 2014 Zdroj: vlastní

Nízká motivace studentů tedy způsobuje velké rozdíly mezi jejich hodnocením při první a druhé registraci, má proto smysl hledat další způsoby, jak studenty motivovat. Důležitým faktorem pro osobní motivaci studentů je bohužel počet registrací, při první registraci je jejich motivace těžší. Dá se naopak předpokládat, že každé další slevování z požadavků by mělo v tomto ohledu pouze negativní dopad na tuto motivaci.

2.5 Problematické pasáže

Úvodním cílem předkládané práce bylo zmapovat úspěšnosti studentů při studiu jednotlivých kapitol, odhalit problematické pasáže a zaměřit se na odstranění těchto problémů. Vhodným zdrojem bylo vyhodnocení stovek opravených písemných prací, průběžných testů a protokolů v rámci alespoň pro témata, ve kterých se OPV a MEK překrývají, zatímco témata, s jejichž výukou ještě nemám zkušenosti, na vyhodnocení teprve čekají.

- 172 -

2.5.1 Studentská anketa

Na konci letního semestru 2014/2015, kdy se přistoupilo k hodnocení znalostí z přednášky pomocí testů v kombinaci s hodnocením aktivní účasti na cvičení, byli studenti vyzváni, aby sami ohodnotili obtížnost probíraných témat a navrhli, kterým by se naopak mohlo ve výuce věnovat času méně, odpovědělo celkem 42 respondentů. Tyto výsledky zachycuje a shrnuje Tabulka 25

Tabulka 25 – Studentská anketa – hodnocení obtížnosti témat Času věnovat Průměrné Témata méně více ohodnocení VEKT 21 0 2,0 MAT 25 1 1,7 SLR 7 5 2,3 SLN 2 2 2,5 SLN graf 4 4 3,0 MMV 17 0 2,0 GRAF 0 6 3,5 PSM1 3 1 2,2 PSM2 1 11 3,2 DUAL 0 4 3,3 DSM 0 14 3,6 CLP 2 13 3,5 ISK 0 18 3,8 ISC 0 23 3,9 DOP 4 14 3,6 Zdroj: vlastní Jako tři nejjednodušší byla hodnocena dominující témata VEKT, MAT a MMV, jako obtížná byla nejčastěji hodnocena témata ISK, ISC, DSM a DOP. Těmto požadavkům mohlo býti vyhověno, jelikož v předmětu Operační výzkum se již v sylabu s tématy týkajícími se základů vektorové a maticové algebry nepočítá, jsou přesunuta do povinného základu v rámci předmětu Matematika I. Tyto výsledky korespondují s výsledky hodnocení průběžných testů uvedenými v následující kapitole.

2.5.2 Z hodnocení vědomostí a práce studentů

Některé chyby se v testech či písemných pracích často opakují. Při větším výskytu už hovoříme o problematických pasážích.

- 173 -

Problematické pasáže v písemných pracích a pravidelných testech

Při písemném či ústním prověřování znalostí vyvstávají pasáže opakovaně činící studentům problémy, na přednáškách a cvičeních by jim proto měl být věnován větší prostor, studenty na ně upozorňuji. Během mé praxe byly testy a písemné práce z Matematiky pro ekonomy předloženy stovkám studentů. Zatímco většina písemných prací již byla skartována, hodnocení průběžných testů bylo důsledně archivováno. Následující kapitola poukazuje na problematické pasáže odhalené při opravování průběžných testů. Chyby studenti dělají tam, kde se probraná látka málo procvičila, opakováním a praxí je dělání chyb možné eliminovat. Proto je výhodné tato místa zmapovat a při výuce se jim více věnovat. Studenti si mnohdy si neuvědomují, že teorie je budována postupně a je třeba stále udržovat povědomí o probraných pojmech a vztazích, problém proto často činí opakovaný výskyt již probraných znalostí, které už byly zapomenuty a aktuálně překryty jinými. Na potřebu důkladného prostudování vlastností a významu tohoto pojmu studenty upozorňuji a průběžně nabyté vlastnosti pravidelně se studenty opakuji. Pojmy jako základní řešení, hodnost matice nebo optimální řešení jsou ovšem vnímány natolik automaticky, že jim není při studiu věnována dostatečná pozornost a v dalších kapitolách student neumí formulovat jejich definici. Po odpřednášení všech témat se studentům začnou podoby základního řešení v různých způsobech plést, pokud pojem není řádně ukotven, dochází k záměnám způsobů jeho využití.

Obrázek 50 – Průběžné testy – hodnocení ZS 2013/2014 Zdroj: vlastní

- 174 -

Obrázek 50 i Obrázek 51 shodně vyjadřují rozdělení relativních četností jednotlivých bodových hodnocení, nulový bodový zisk je vyznačen černě, maximální možný dvoubodový zisk je vyjádřen nejsvětlejší šedou a je (ve druhém z grafů) doplněn popiskem vyjadřujícím relativní četností jeho výskytu v jednotlivých testech. Pro oba grafy platí stejná legenda tentokrát zapsaná v doplňující tabulce.

TEST 01 TEST 02 TEST 03 TEST 04 TEST 05 TEST 06 TEST 07 TEST 08 TEST 09 TEST 10 TEST 11 TEST 12 SLR SLN GRAF MMV PSM1 PSM2 DUAL DSM CLP ISC ISK DOP

Obrázek 51 – Průběžné testy – hodnocení ZS 2013/2014 Zdroj: vlastní

Z grafů vyplývá, že nejlépe si studenti poradili s řešením testů pro kapitoly řešení SLR, sestavování matematických modelů úloh LP a grafického řešení, nejobtížnější jsou kapitoly týkající se dvoufázové simplexové metody, intervalů stability pro cenové koeficienty a řešení dopravních problémů. Problematické pasáže uvedu také pro kapitoly týkající se vektorové a maticové algebry, přestože se již mezi tématy Operačního výzkumu nevyskytují, tvoří však základ pro budování veškeré teorie, jsou součástí prerektivizity předmětu. Algebra vektorů a matic jsou studenty označovány za jednoduchá témata, výsledky tomu také obvykle odpovídají.  Vektorová algebra (VEKT) Tato kapitola přinášela nejvyšší bodový zisk z průběžných testů, studenti měli na začátku semestru odhodlání se studiu věnovat a kapitolu považují za jedno z nejjednodušších témat. Vektorové operace nečiní studentům problémy, je třeba zdůraznit rozdíl mezi skalárním a vektorovým součinem (nevyužijeme) a reálným násobkem vektoru,

- 175 - ve cvičení jsou studenti upozorňováni na potřebu důsledně rozlišovat zápis vektoru a skaláru pomocí zavedené symboliky. Zásadní je pochopení pojmu lineární závislosti (LZ) vektorů a jejího ověření, což je třeba procvičit, studentům může činit problémy. Numerické dovednosti jsou výhodou.  Maticová algebra (MAT) Také maticové operace problémy nečiní, s výjimkou maticového součinu, se kterým se většina studentů setkává poprvé. Ten je možné definovat jako matici skalárních součinů vybraného řádku první matice a sloupce druhé matice. Je třeba trénovat výpočet jednoho prvku výsledné matice v libovolném pořadí, zpětně ověřit hodnotu jedné ze složek, určit typ výsledné matice. Je třeba nacvičit určování hodnosti matice (související s předchozím pojmem LZ), úpravy matice do odstupňovaného tvaru, výpočet inverzní matice a determinantu.  Soustava lineárních rovnic – algebraické a grafické řešení (SLR) Studenti znají základní princip dosazovací a sčítací metody řešení SLR, už při třech neznámých se ale často v řešení ztratí. Je třeba připomenout možné počty řešení, typickou chybou je formulace „úloha má 3 řešení“. Neumějí zapsat řešení soustav pro nekonečně mnoho řešení. Je vhodné se domluvit na důsledném dodržování pravidla používat pouze maticový způsob řešení. SLR lze zapsat v maticovém tvaru, pro přehlednost zaveďme úmluvu, že všechny vektory zapisujeme jako sloupcové. Chceme-li vyjádřit vektor řádkový, použijeme pro zápis transponovanou formu vektoru. Naopak: je-li v maticovém zápise u značky vektoru také horní index T, znamená to, že je ve výpočtu použit jako vektor řádkový (ze sloupcového transponovaný), ostatní jsou použity jako sloupcové (bez transponování). Je představena (či zopakována) Gaussova metoda neúplné eliminace, doporučena je Jordanova metoda úplné eliminace. Po studentech vyžaduji kompletní diskusi k řešitelnosti soustavy, využití Frobeniovy věty, určení počtu řešení, popř. počtu volných neznámých. Ve cvičení je třeba provést řešení SLR a demonstrovat především nalezení precizního obecného zápisu úlohy s nekonečně mnoha řešeními, a nalezení všech základních řešení. Vhodným domácím cvičením je příklad s výskytem tzv. pevné neznámé, přičemž jsou studenti upozorněni, že se při řešení vyskytne „jistý problém“, neexistence dalšího základního řešení podpoří zdůraznění formulace maximálního počtu základních řešení při diskusi k řešitelnosti. - 176 -

Základním stavebním prvkem řešení úloh LP je základní řešení. Přesto, že se s tímto pojmem setkáváme prakticky ve všech kapitolách, činí studentům nemalé problémy formulovat jeho definici, případně jej rozpoznat, ať už se vyskytuje v jakékoli formě svého zápisu. Student by je měl rozpoznat a vysvětlit jeho význam v matici soustavy, simplexové i dopravní tabulce. Totéž platí o pojmu hodnosti, který úzce souvisí s řešitelností SLR, ale v kapitole zabývající se řešením dopravní úlohy už je třeba jeho význam studentům připomínat. Studentům, kteří nechápou podstatu úpravy na odstupňovaný tvar, je třeba nabídnout včas pomoc.  Soustava lineárních nerovnic – algebraické a grafické řešení (SLN) Pokud studenti důvěrně nezvládnou kapitolu přechozí, mají problémy s řešením soustav lineárních nerovnic, jde tedy hlavně o potvrzení zvládnutí a případnou další šanci látce porozumět. Velmi názorné je grafické hledání základních řešení a ověřování jejich přípustnosti. I grafické řešení podpoří pojem počtu základních řešení úlohy, včetně jejich přípustnosti. Za domácí úkol při řešení SLN zadávám příklad nalezení co největšího počtu základních řešení soustavy tří lineárních nerovnic o dvou neznámých, včetně ověření přípustnosti každého z nich. Doporučuji také paralelní řešení stejné úlohy graficky. Úloha demonstruje úzký vztah mezi algebraickou a grafickou metodou řešení.  Matematický model ekonomické úlohy (03 MMV) Sestavování matematického modelu je intuitivní a u jednoduchých příkladů zřejmé. Úvodní příklad volíme jednoduchý, v dalších již se změnou typu podmínek a optimalizace, ve cvičení společně sestavujeme také matematický model úlohy s výrobky jako polotovary. Za domácí úkol dávám studentům sestavit matematický model dopravní úlohy k pozdějšímu dalšímu využití. Typickým motivačním úkolem je soutěž se spolužáky o nalezení lepšího řešení jednoduché vzorové úlohy LP při procvičování ověřování pojmu přípustné řešení úlohy. Motivační otázkou je, zda je vítězné řešení nejlepší možné, což je zdánlivě jednoduché, ovšem těžko prokazatelné tvrzení. Takto demonstrujeme, že tato úloha je komplikovanější, než se z jejího zápisu může jevit.  Grafické řešení úloh LP (04 GRAF) Ke konstrukci vlastních obrázků pro případnou ilustraci či zadání úkolu v pracovních listech využívám výhradně Apache Open Office Draw 4.1.1., k primitivním animacím postačilo promítání sledu takto vytvořených obrázků s přibývajícími objekty v MS PowerPoint. Ve cvičení týkajícím se grafického řešení - 177 -

úloh LP konstruuji řešení demonstrační úlohy LP na tabuli s využitím rýsovacích potřeb, tedy křídou a se dvěma trojúhelníky. Studenti rýsují do sešitu, předem jsou upozorněni, že si mají přinést rýsovací potřeby, náčrtky většinou vedou k velkému zkreslení situace. Na úvod je vhodné studentům připomenout vynášení hodnot v souřadném systému, konstrukci přímky pomocí úsekového tvaru, princip výpočtu průsečíku vybraných přímek, ověření rovnoběžnosti z parametrů dvou rovnic pomocí primitivních vztahů analytické geometrie. Je třeba volit vhodné měřítko grafu (až po určení jmenovatelů v úsekovém tvaru vlastních omezení), pro zobrazení směru zlepšování účelové funkce volíme vhodně pravou stranu rovnice tak, aby byly koeficienty úsekového tvaru celá čísla a úseky aby byly dostatečně velké k eliminaci nepřesnosti, ale dostatečně malé, aby se vešly do konstruovaného grafu. Grafické řešení vyžaduje jistou zručnost, přesnost a zkušenost. K posunování izokvant je vhodné použití pravítka a trojúhelníku. Problémem často bývá, že studenti bez vynesení izokvanty účelové funkce označí polohu optimálního řešení vedeni představou, že optimum je vždy „nejvýše vpravo“. Záměrně je v pracovních listech uveden příklad s nečekaným sklonem účelové funkce. Za domácí úkol mohou studenti dokončit všechny zadané úlohy. Pracovní listy nabízejí kompletní spektrum úloh co do počtu řešení.  Primárně simplexová metoda – jednofázová (PSM1) Je důležité vysvětlit, jak a proč sestavit simplexovou tabulku, ukázat, že jde vlastně o matici adjungované soustavy k soustavě vlastních omezení, doplněnou ze všech stran o pomocné zápisy využívané v průběhu simplexového algoritmu k nejefektivnějšímu prohledávání množiny všech přípustných základních řešení. Je třeba vyřešit ručně alespoň dvě úlohy, jednu maximalizační a druhou minimalizační. Ostatní úlohy je možné v rámci domácího cvičení řešit také ručně, nebo k řešení využít právě představený program LinPro. Výsledné tvary simplexových tabulek budou potřeba v dalším cvičení při klasifikaci všech variant počtu řešení úloh LP. Zdůvodnit a graficky ilustrovat všechny tři varianty počtu řešení. Zásadní je nechat studenty formulovat význam strukturních i přídatných proměnných, hodnoty účelové funkce, redukovaných nákladů a stínových cen. Upozornit na problémy se stahovanými protokoly.

- 178 -

 Primárně simplexová metoda – dvoufázová (PSM2) Je důležité ukázat rozdíl mezi úlohami řešitelnými primární simplexovou metodu jednofázově či dvoufázově. Zdůraznit důvod použití umělých proměnných, které nemají reálnou interpretaci. Zdůvodnit a graficky ilustrovat všechny čtyři varianty počtu řešení a postup při hledání výchozího základního řešení v první fázi. Student musí umět poznat všechny typy výsledku v simplexové tabulce, tyto situace by měl umět popsat slovně. Je vhodné rekapitulovat obě probrané metody a způsob přípravy matematického modelu pro zápis do simplexové tabulky. Za domácí úkol si mají studenti rozmyslet dva rozdílné způsoby klasifikace proměnných úlohy – podle vzniku a podle jejich role v základním řešení. Všechny vlastnosti upevnit a vhodně používat.  Dualita v úlohách LP (DUAL) Za dobrovolný domácí úkol studenti mohou sestavit k matematickému modelu dopravní úlohy k dříve zadanému domácímu úkolu úlohu duální. Jako nápověda je jim položena otázka, jde-li o symetrickou nebo nesymetrickou úlohu. Doporučení zní pracovat na čtverečkovaném papíře formátu A3 a zapisovat jednotlivé strukturní (primární i duální) pod sebe a duálně sdružená omezení do stejného řádku. Úloha má být opět archivována pro další použití v posledním cvičení.  Duálně simplexová metoda (DSM) Na začátku tohoto cvičení je velmi vhodné porovnat již probrané simplexové metody – použitelnost, vstup, výstup, hlavní princip, čtení výsledku z výsledné simplexové tabulky a upozornit na odlišnosti a analogie. Jako domácí úkol mohou student upravit zadanou úlohu LP se třemi vlastními omezeními všech tří uvedených typů pro využití všech tří metod. Zatímco PSM je univerzální, u DSM je třeba poznat, kdy je použitelná a kdy je její použití výhodou.  Celočíselné programování (CLP) Celočíselné řešení je vhodné demonstrovat nejprve graficky. Ruční výpočet je zbytečný, všechny dílčí úlohy vytvořené při použití Metody větvení a mezí mohou být řešeny pomocí softwaru, zásadní je zaměřit se na vyhodnocení získaných výsledků. Je možné ukázat řešení celočíselných úloh v několika počítačových programech. Je třeba zdůraznit potřebu nalezení celočíselných řešení při praktických úlohách, kdy lze produkovat pouze celé kusy či porce. Pokud se nepodaří vymyslet příklad

- 179 - s celočíselným řešením, je třeba použít softwaru podporujícího řešení celočíselných úloh.  Analýza citlivosti pro pravé strany (ISK) Postoptimalizační analýza je pro studenty nejméně přístupným tématem, nelze jednoduše graficky znázornit potřebné úvahy. Z toho důvodu jsem pro studenty připravila v MS Excel jednoduchou „kalkulačku“, která s využitím vzorců obsahujících inverzní matici k matici báze alespoň umožňuje experimentovat se změnami jednotlivých kapacit a tak zkoušením různých hodnot vymezit jejich intervaly stability. Pouze nejzdatnější studenti jsou schopni pochopit a interpretovat jejich význam, jak obecně, tak u vlastních konkrétních příkladů v protokolech.  Analýza citlivosti pro cenové indexy (ISC) Ještě složitější úvahy je třeba provádět při analýze citlivosti optimálního řešení na změnu cenových indexů, která se pro základní a nezákladní proměnné liší. Opět zde studentům nabízím experimentování s vymezením intervalů stability pomocí připravené kalkulačky. Slovní interpretace u vlastních příkladů velmi často nebývají správně sestavené a je třeba se o vysvětlení alespoň pokusit.  Dopravní úloha (DOP) Studenti nejprve analyzují matematický model primární i duální úlohy (z domácího úkolu). Použití metod nalezení výchozího základního řešení nečiní problémy, metodu VAM stačí demonstrovat na vzorovém příkladu. Na tomto místě je vhodné znovu připomenout pojem základní řešení a osvojit si rozpoznání jeho tvaru v simplexové tabulce, stejně jako pojem přípustné, degenerované či optimální řešení. Samotná optimalizace v dopravní tabulce je ovšem studenty řazena mezi obtížnější pasáže, neboť využívá komplikovaných vztahů plynoucích z duality a související věty o rovnováze. Sestavování Dantzigova cyklu obvykle také činí studentům potíže, je určen jednoznačně a je třeba dobře procvičit jeho nalezení například vylučovací metodou. Dobře připravený student se nenechá zaskočit zadáním tabulky, ve které již některá obsazená pole Dantzigův cyklus tvoří, byť taková situace při řešení reálného problému nastat nemůže. Další problém nastává při vzniku degenerace, kterou lze odstranit vhodným, ale někdy zdlouhavým postupem, při kterém se student nesmí nechat odradit při pokusech o nápravu. Interpretace nalezeného řešení je potom již snadná, v protokolech se často zapomíná uvést počet optimálních řešení.

- 180 -

 Vícekriteriální hodnocení variant (VHV) S výukou posledních dvou témat dosud bohužel nemám žádnou praktickou zkušenost. Očekávám problémy kvůli nenázornosti výpočtů, je těžké udržet pozornost při výpočtu. Ruční výpočty budou zřejmě činit potíže, v demonstračním příkladu vyzkouším nechat studenty postupné výpočty podle vzorců provádět v MS Excel. Velký prostor proto bude v této kapitole kladen na využití výukového programu SANNA. Za dobrovolný domácí úkol je pokusit se modelovat vlastní situace: nákup nového auta, pračky či počítače. Pavučinového grafu lze využít ke znázornění dominovanosti variant, nelze všeak smysluplně graficky ilustrovat nalezení kompromisní varianty, naopak, porovnáním použití více metod, které mohou dát odlišné výsledky, je vidět, že kompromisní varianta není určena jednoznačně a záleží na metodě, kterou řešitel při jejím určování zvolí.  Vícekriteriální lineární programování (VLP) V této kapitole je velký prostor věnován využití výukového programu SYMCLIP. Za dobrovolný domácí úkol je pokusit se modelovat vlastní situace. Graficky je možné zobrazit výsledek řešení úlohy pomocí agregace účelových funkcí, je možné různými metodami nalezená řešení graficky zobrazit a navzájem porovnat. Je zadána také úloha cílového programování, využívající možnosti překročit stanovená kritéria.

Hodnocení protokolů

Při hodnocení protokolů se také vyskytují často se opakující chyby. Už při sestavování příkladu někdy není uvedeno kompletní zadání, což mění význam příkladu. Kromě špatného, nedůsledného či vynechaného zavedení strukturních proměnných včetně jednotek formulace „cukr“ nemůže nahradit („množství nespotřebovaného cukru v gramech“, apod.), jsou při konstrukci matematického modelu často opomenuty podmínky nezápornosti, což je spíše formalita, která neovlivní výsledek. Nesprávná úprava matematického modelu či samotné sestavení simplexové tabulky je základem neúspěchu řešení příkladu. Pokud chybí prezentace výsledné části simplexové či dopravní tabulky, není možné prokázat vlastnosti popisovaných řešení (např. alternativitu). Chybou je také neuvedení počtu optimálních řešení.

- 181 -

Ústní zkouška

Ústní zkouška je komplexním výstupem, ve kterém student prezentuje, čeho během studia předmětu dosáhl. Její zvládnutí je zcela individuální záležitostí vycházející také z dovednosti prezentovat své vědomosti. Někomu tento způsob zkoušení vyhovuje více, jinému méně. Vyskytují se studenti, kteří k vylosovanému tématu nemohou říci vůbec nic. V tom případě zjišťuji, čím je to způsobeno, nedostatečná příprava musí být ještě doplněna, pokud student reaguje na náhradní otázku, může být problém přisuzován nervozitě.

2.6 Výukové podpory

Na základě seznámení se s požadavky Katedry ekonomických studií, s objektem studia vědní disciplíny operační výzkum, tedy s typy úloh a metodami jejich řešení, s historickými aspekty jeho vzniku a přehledem výuky témat operačního výzkumu na vysokých školách s ekonomickým zaměřením v ČR a po vyhodnocení problematických pasáží při výuce příbuzného předmětu Matematika pro ekonomy byl pro předmět Operační výzkum sestaven jeho obsah, náplň jednotlivých cvičení, stanoveny cíle, kterých je výukou třeba dosáhnout a sestaveny plánované podpory výuky, které mají studentům usnadnit úspěšné ukončení předmětu získáním zápočtu a zkoušky a zároveň tyto stanovené cíle výuky naplnit. Poté mohly být vytvořeny především dvě základní studijní opory, další doplňkové materiály, vybrán software vhodný pro výuku a vše uspořádáno do komplexního celku v podobě dnes již běžného e-learningového kurzu vytvořeného v LMS Moodle na oficiálním webu školy.

2.6.1 Skripta

Přiložená skripta jsou základním studijním materiálem pro volitelný předmět Operační výzkum určený převážně pro studenty ekonomických oborů VŠPJ. Povinnou prerekvizitou jsou vybrané kapitoly z předmětu Matematika I, týkající se základů lineární algebry, zejména pojmů aritmetický vektor a matice a jejich vlastností a vztahů. V textu jsou hojně využívané a je třeba je znát. Úvodní část na tyto základy lineární algebry přímo navazuje teoretickými kapitolami o řešení soustav lineárních rovnic a nerovnic, především je kladen důraz na Jordanovu eliminační metodu, která je základem algoritmů využívaných při řešení

- 182 -

úloh lineárního programování a rozhodovacích procesů ve druhé části zaměřené na praktické řešení konkrétních jednoduchých i složitějších ekonomických problémů. Čtenář se zde seznámí s různými typy úloh jedno- i vícekriteriálního lineárního programování a se základními optimalizačními metodami a jejich algoritmizovanými postupy. Skripta nabízejí ucelený teoreticky i prakticky zaměřený přehled základů operačního výzkumu, dalším cílem při jejich tvorbě bylo zpřístupnění těchto témat také studentům s nižší úrovní znalostí středoškolské matematiky, kteří nejsou samostatně schopni číst strohý matematický text. Každá kapitola proto obsahuje nejen obvyklý teoretický výklad, doplněný vzorově vyřešenými typovými příklady, velký prostor je věnován také průvodním komentářům pro případné zájemce o samostudium, algebraické řešení je často navíc ilustrováno grafickým řešením pro lepší představu o významu mezivýsledků v jednotlivých krocích algoritmizovaných výpočtů. Vždy je také proveden podrobný rozbor a diskuse výsledků, zásadní důraz je kladen na precizní slovní interpretaci získaných výsledků v takové formě, v jaké bude od studentů vyžadována. Vzhledem ke stále se snižující úrovni matematických znalostí najdou tato skripta své praktické uplatnění nejen u studentů u denní formy studia, ale také u studentů studujících dálkově při samostudiu.

2.6.2 Pracovní listy

Přiložená sbírka pracovních listů Operační výzkum – pracovní listy vznikla jako podpůrný materiál ke cvičením z volitelného předmětu Operační výzkum, každou kapitolu skript vhodně doplňuje připravenou sadou příkladů k propočítání ve cvičeních. Je doporučeno mít pracovní listy na cvičení vytištěné, obsahují jak stručné opakování teorie, tak často obšírná zadání příkladů k procvičení. Příklady nejsou doplněny výsledky, způsob řešení včetně výpočtu a výsledku bude uveden na cvičeních. Zde obzvláště platí tvrzení, že samotná cesta může být cílem. Při procházení pracovními listy se předpokládá asistence pedagoga, který je průvodcem při vypracování zadaných úkolů. Kromě samotných příkladů k řešení obsahují pracovní listy doprovodný tištěný text tam, kde je vhodné diskutovat, zobecňovat a systematizovat, někdy také ve formě doplňovačky vedoucí k zamyšlení nad nějakým postupem či tvrzením. Připravené tabulky slouží k přehlednému zápisu vlastních výpočtů či zapsání výsledků získaných pomocí optimalizačního softwaru.

- 183 -

Nedopočítané příklady se doporučuje doplnit v rámci samostudia, případné problémy vybízí studenty ke konzultaci s cvičícím. Případně je možné pracovní listy využít při samostudiu jako tematicky vyváženou sbírku neřešených příkladů. Při tvorbě pracovních listů byl kladen důraz na to, aby pro každé téma obsahovaly příklady pokrývající všechny možné typy výsledků, které mohou při řešení příkladů nastat. První tři kapitoly se věnují opakování základů lineární algebry, zejména pojmů aritmetický vektor a matice a jejich vlastností a vztahů. Jsou jim věnovány také vybrané kapitoly z předmětu Matematika I, který je doporučenou prerekvizitou. V textu jsou tyto pojmy a vztahy hojně využívané a je třeba je znát. Cvičení 4. a 5. odpovídají ještě dalším teoretickým kapitolám, které se věnují řešení soustav lineárních rovnic a nerovnic, především je kladen důraz na Jordanovu eliminační metodu, která je základem algoritmů využívaných při řešení úloh lineárního programování a rozhodovacích procesů ve druhé části zaměřené na praktické řešení konkrétních jednoduchých i složitějších ekonomických problémů. Student se zde seznámí s různými typy úloh jedno- i vícekriteriálního lineárního programování a se základními optimalizačními metodami. Dvě kapitoly jsou též věnovány postoptimalizační analýze. Cvičení předmětu Operační výzkum probíhá v počítačové učebně, často je doporučeno, někdy též nutno, využít dostupného softwaru, zejména programů MS Excel a LinPro k získání či ověření dílčích výsledků. Díky nim bude možné rychle řešit více než jen triviální vzorové úlohy, což by při ručních výpočtech nebylo časově možné. Důraz tak může být přenesen na sestavování matematických modelů pro reálné ekonomické problémy, výběr vhodné metody, úpravu matematického modelu pro využití softwaru a finální interpretaci výsledků. Ve cvičení konaném v zápočtovém týdnu zimního semestru 2014/2015 jsem požádala studenty Matematiky pro ekonomy o anonymní vyjádření jejich názoru k průběhu výuky, hodnocení pracovních listů a komentářů k výuce předmětu. Odpovědi jsem nezpracovávala statisticky, využila jsem je jako zpětnou vazbu svého snažení a čerpala z nich podněty k úpravám výuky. Z odpovědí na otevřené otázky cituji některá z vyjádření případně rovnou doplněná vlastním komentářem: „Výuka je v pořádku, ale ve cvičeních by možná neuškodilo více vysvětlování na tabuli.“ Na tabuli počítáme příklady považované hromadně za obtížné, psaní všech příkladů na tabuli vedlo často k pouhému opisování čísel z tabule, upřednostňuji tedy samostatné počítání do pracovních listů, neboť je vidět, kdo pracuje, a následné provedení kontroly. Studentům, kteří nepočítají, nabízím ihned nápovědu.

- 184 -

„Pracovní listy jsou v pořádku, možná jen by se tam mohl dát už vypočítaný ukázkový příklad.“ Studenti s sebou obvykle skripta nenosí, tam je vzorově řešených příkladů v každé kapitole několik. „Možná by neuškodila obměna příkladů v listech za jiné příklady.“ Zcela legitimní připomínka opakujícího studenta. „Hodiny v tomto semestru probíhaly v tempu. Kdo něco nevěděl, bez problému se mohl zeptat a bylo mu vysvětleno.“ Mým cílem bylo dosáhnout tohoto stavu. „Předmět MEK mi přišel jako velice složitý, ale i jako zajímavý.“ „Předmět je jeden z nejtěžších, příliš náročný a tvrdě hodnocený.“ „Vysvětlení mi přišlo velmi obsáhlé, lepší by bylo vysvětlit to jednodušeji a jasně.“ „Chtělo by to více času věnovat vysvětlení.“ Komentáře si někdy protiřečí, každý student má své tempo a potřeby. „Listy shrnovaly vše podstatné k daným tématům, potěšily předchystané tabulky, atd.“ „Kladně hodnotím ochotu z vaší strany při vysvětlování daných problémů stále dokola.“ Kladné komentáře jsou zadostiučiněním za můj čas věnovaný přípravě, stejně jako pilná příprava a dobré dosažené výsledky studentů. „MEK podle mého názoru je dobrý předmět na logické uvažování, ale stále hledám alespoň nějakou možnost využití v praxi (i když podotýkám, oproti čisté matematice tu máme smysluplné výsledky.)“ „Z výuko jsem neměl/a problemi, ale přistup k nám by mohl být více jako k dospělim.“ Neuvědomuji si příliš, jak na studenty mohu působit, budu si na to muset dát větší pozor. Doufám nadále, že jde spíše o subjektivní názor jednotlivce. Byť byla anketa anonymní a dobrovolná, odpovídali všichni studenti a nesetkala jsem se s žádnou závažnou výtkou ke své práci. Mezi problémy patří náročnost a obsáhlost předmětu, studenti ocenili, že byli během semestru donuceni se připravovat a měli k dispozici pracovní listy. Je nutno podotknout, že si odpovědi studentů někdy protiřečí, některým se zdá vysvětlování příliš složité, někteří chválí snahu zpřístupnit látku „polopatickým vysvětlováním“.

2.6.3 Doplňkové materiály

Z výše zmíněných důvodů klesající úrovně matematického vzdělání je výuka stále častěji oživována doplňkovými materiály, které mají opět za úkol přiblížit studentům probíranou látku dalšími způsoby. V Moodle jsou umístěny jak jednoduché grafické animace vytvořené jako primitivní prezentace v MS PowerPoint jako sled

- 185 - střídajících se obrázků rýsovaných v Apache Open Office Draw 4.1.1., tak interaktivní kalkulačky sloužící k experimentování.

Obrázek 52 – MS Excel – interaktivní kalkulačka pro analýzu citlivosti Zdroj: vlastní

Pro citlivostní analýzu, která je studenty považována za nejobtížnější téma, jsem v MS Excel vytvořila interaktivní model konkrétního příkladu ze cvičení, reagující na změny pravých stran i cenových koeficientů při dodržení totožných úprav simplexové tabulky (tedy zachování inverzní matice báze v posledním zobrazovaném kroku). Studenti si tak na praktickém příkladu lépe uvědomí, že postoptimalizační analýza může být prováděna pouze pro jednotlivé parametry zvlášť, a „osahají si“ vliv jednotlivých typů změn těchto parametrů na výsledné optimální řešení. Experimentováním mohou odhalit meze jednotlivých intervalů stability pro jednotlivé pravé strany i cenové koeficienty zvlášť, nebo naopak sledovat vliv změny těchto parametrů na hodnotu uvnitř, na hranici nebo vně příslušného intervalu stability.

- 186 -

Také pomocí optického vjemu si uvědomí, jaké části simplexové tabulky se týká dosažení degenerovaného řešení a jaké její části se týká dosažení alternativního řešení, tedy dvou vlastností optimálního řešení, u kterých studenti často zaměňují umístění 0, která tuto situaci signalizuje, pokud se pouze učili poučky ze skript. Tuto studenty oblíbenou a hojně využívanou interaktivní „kalkulačku“ zobrazuje Obrázek 52.

2.6.4 Výukový software

Cvičení MEK probíhalo v klasické učebně s jediným počítačem na učitelském stole a zpětným projektorem. Všichni studenti měli při samostudiu přístup k soukromému či školnímu počítači s nainstalovaným MS Excel, na stránkách e-learningu byl studentům zapsaným ke studiu předmětu MEK neustále k dispozici ke stažení program LinPro ve třech verzích dle operačního systému včetně návodu k instalaci a spuštění. Studenti tak pouze pasivně sledovali názornou ukázku, jak instalovat, aktivovat a poprvé spustit doplněk Řešitel programu MS Excelu a jak instalovat a jak poprvé spustit program LinPro. Dále také jak připravit v obou případech matematický model ekonomické úlohy pro potřeby zápisu do dialogových oken obou programů, jaké jsou možné výstupy a v jaké formě jsou zobrazeny výsledky pro následnou slovní interpretaci. Zadané příklady museli vyřešit v rámci domácí přípravy. Tento rozsah přístupu k prostředkům výpočetní techniky hodnotím jako nedostatečný. Různý přístup studentů k domácí přípravě působil rozdíly při navazujících činnostech, např. společné interpretaci takto získaných výsledků v dalším cvičení. Vlastní zkušenost při jakékoli činnosti je navíc nenahraditelná. Pro cvičení předmětu Operační výzkum je k dispozici počítačová učebna, kde má každý student k dispozici vlastní počítač, využití softwaru ve výuce tak dostává mnohem větší prostor, kde má každý student k dispozici program MS Excel včetně zmíněného doplňku a také program LinPro. Také využití počítačů při výuce Operačního výzkumu v této míře jistě studentům látku více zpřístupní. Využití optimalizačního softwaru ve výuce jim umožní v kratším čase vyřešit větší množství konkrétních příkladů, usnadní řešení úloh větších rozměrů a eliminuje výskyt numerických chyb při výpočtech. Zároveň student získá přehled o různých typech aplikací, může porovnat všeobecně zaměřené běžně dostupné produkty s těmi profesionálními specializovanými, které může případně později uplatnit ve své praxi.

- 187 -

V neposlední řadě dojde ke zrychlení či dokonce umožnění nalezení řešení mnohdy rozsáhlých úloh, méně času zaberou ruční výpočty a větší důraz bude kladen na řešení praktických příkladů, kterých tak bude možné zvládnout větší množství, a bude tak možné ve cvičení obsáhnout různé typy výsledků. Vzhledem k zaměření tvorby předmětu na studenty s nedostačujícími matematickými znalostmi pro samostatné výpočty je využití optimalizačního softwaru vítanou kompenzační pomůckou, která těmto studentům umožní jejich handicap překonat pomocí náhradní alternativy, vybrat způsob řešení a také získat optimální řešení zadaných úloh a věnovat se jeho praktické interpretaci. Při zvažování zavedení počítačů do výuky bylo třeba si odpovědět na otázku, zda využívání softwaru jako kompenzační pomůcky nezpůsobí další oslabování matematických dovedností studentů. I přes tuto námitku jsem zastáncem využívání optimalizačního softwaru. K podložení legitimity těchto mnohdy zavrhovaných úvah je třeba vrátit se k původnímu cíli předmětu, kterým není schopnost spočítat vše sám, ale efektivním způsobem získané optimální řešení interpretovat a prakticky použít. Také v praxi je hlavně třeba umět najít řešení efektivním způsobem, neexistuje objektivní důvod pro používání ručních výpočtů. Z výše uvedených důvodů jsou studenti k využívání softwaru naopak při studiu pobízeni. Pro výuku jsem se rozhodla z rozmanité nabídky produktů aktivně využít nebo alespoň studentům představit následující programy. Podmínkou byla dostupnost programů a jejich uplatnitelnost při výuce či v praxi. Na stránkách oficiálního e-learningu VŠPJ v LMS Moodle jsou umístěny odkazy ke stažení demoverzí či samotné soubory k instalaci včetně stručných manuálů k ovládání doporučovaných programů.

Řešitel v MS Excel

Nejrozšířenějším programem schopným řešit úlohy lineárního programování je Řešitel, který je jako doplňková součást MS Office nainstalovaný na všech studentských počítačích ve škole a je též hojně rozšířen mezi běžnými uživateli, proto je velmi vhodné ukázat jeho použití. V úvodní hodině při představení jednoduchých motivačních příkladů matematických modelů úloh LP je možné je vyřešit ve známém prostředí MS Excel. Studenti by měli ze střední školy umět vytvářet vlastní tabulky a provádět výpočty pomocí vzorců nebo funkcí a adresování buněk, čehož využijí při zápisu matematického modelu. V přehledném dialogovém okně Řešitele, se kterým se většinou již studenti setkali, označí příslušné objekty matematického modelu a úlohu nechají

- 188 - vyřešit, aniž by se zatím seznámili s metodami řešení těchto úloh. Je hned možné provést nejjednodušší interpretaci výsledku, tedy hodnot strukturních proměnných a účelové funkce. V praxi se může hlavně díky své dostupnosti uplatnit u jednoduchých lineárních úloh menších rozměrů. Bez hlubší znalosti problematiky ovšem neodhalí např. alternativitu nalezeného řešení, případně význam redukovaných nákladů a stínových cen, o zavádějícím českém překladu položek výsledkových zpráv nemluvě. Oba zmíněné problémy se nabízí využít ke zvýšení ostražitosti studentů při práci se softwarem a zdůraznění důležitosti odborného nadhledu uživatele. Dále je vhodné ukázat také příklady výpočtů u nelineárních modelů a demonstrovat průběh iterací a jejich časovou náročnost, případně experimentovat s nastavením jejich vstupních parametrů. Řešitel může být využit také k řešení soustav rovnic, zbývá-li ve cvičení nějaký čas. V tom případě není volen typ min nebo max, ale požadavek dosažení rovnosti.

LinPro

Licenci na výukový software LinPro získala škola v rámci projektu FRVŠ v roce 2012, je nainstalován na všech PC v učebnách určených k výuce optimalizačních metod, je využíván jako stěžejní výukový software, neboť jeho použitelný k řešení největší části probíraných témat, může být využit k řešení všech úloh jednokriteriálního LP ze skript a pracovních listů. Studenti jsou vybízeni k jeho využití při kontrole vlastních ručních výpočtů pomocí simplexového algoritmu nebo dopravní tabulky, protože zobrazuje všechna základní řešení, kterými algoritmus při výpočtu prošel. Při osvojování si některé z variant simplexového algoritmu či dopravní úlohy nejprve studenti ručně spočítají vzorový příklad, poté v programu LinPro mohou své dílčí výsledky porovnat s výstupem „kroky v tiskové podobě“, neboť využívá stejných algoritmů a zobrazuje podrobné výsledky jednotlivých kroků včetně pomocných výpočtů. Získávají tak neomezenou sbírku příkladů k procvičení včetně všech dílčích výsledků. Po osvojení rutinních výpočetních dovedností pak může být ruční výpočet zcela nahrazen použitím softwaru a důraz může být kladen na sestavování dalších typických matematických modelů úloh LP a lze se zaměřit pouze na ta pole v simplexové tabulce, která indikují speciální typy výsledků a na jejich interpretaci. Program lze také využít k experimentování se změnami pravých stran a cenových koeficientů při vymezování

- 189 - intervalů stability nebo při řešení většího počtu obměňovaných úloh LP v rámci algoritmu metody větvení a mezí. Při volbě výstupu „výsledky“ mohou být ihned interpretovány závěry postoptimalizační analýzy, při použití metody větvení a mezí je třeba rychle získat výsledky všech větví a soustředit se tak jen na jejich porovnávání a vyhodnocování dílčích kroků algoritmu. V další fázi je tedy software využit k zefektivnění a zrychlení procesu hledání optimálního řešení. Optimalizační software mají studenti také využít k řešení vlastních úloh v seminárních pracích, LinPro se uplatní při řešení prvních tří.

Obrázek 53 – LinPro – kroky v tiskové podobě Zdroj: vlastní

Nevýhodou je pouze to, že u alternativního řešení je vždy výpočet ukončen už při nalezení prvního optimálního řešení. Program ale uživatele alespoň automaticky upozorňuje na existenci alternativy.

SANNA a SYMCLIP

Při výuce vícekriteriálního hodnocení variant a vícekriteriálního lineárního programování studenty seznamuji s výukovým softwarem SANNA a SYMCLIP, jedná se o programy pro potřeby výuky volně šiřitelné. Obsahují několik metod řešení a dávají

- 190 - přehledné výstupy ve známém prostředí MS Excel. Mohou být dobře využitelné i v praxi pro jednoduché vícekriteriální rozhodování.

LINGO nebo MPL

Jelikož jedním z cílů předmětu je také vedení studentů k využití optimalizačního softwaru v praxi, je žádoucí je seznámit také s některým z modelovacích jazyků (LINGO, MPL, GAMS…) z toho důvodu, že umožňují řešit rozsáhlé úlohy LP a jejich komerční verze se běžně uplatňují v praxi. Jelikož program MPL (na rozdíl od licencovaného programu LINGO) nabízí kromě komerční varianty také volně dostupnou free verzi, je možné jej doporučit studentům k domácímu zpracování dat, potažmo k jeho využití v jejich budoucí praxi. Pro studenty je velmi důležité osvojit si zásady důsledného dodržování syntaktických pravidel modelování, stručnou a exaktní specifikaci objektů a vztahů. Porozumění a zápisu vlastního kódu studentům s chabými matematickými základy ovšem často činí nemalé potíže. Ty je možné obejít a modely zadaných úloh LP vytvářet pouhým upravováním již existujících modelů. Je třeba též zorientovat se v již méně přehledných výsledkových zprávách, což bude pro studenty snadnější, pokud vyřeší stejné vzorové příklady také s použitím výše uvedených programů, mohou tak sledovat analogii výstupů. Zkrácené způsoby zápisu kódu matematických modelů a import zdrojových dat z MS Excel představují výrazné zjednodušení zadávání a editaci matematických modelů úloh LP. Studenti v rámci jedné seminární práce volí k vyřešení vlastní úlohy jeden z představených programů ať už dle nápovědy nebo samostatně.

MPS

Při použití univerzálního modelovacího jazyka mohou studenti také vyzkoušet přenášení matematických modelů úloh sestavených v jednom z modelovacích programů do jiného (LINGO, MPL, případně níže uvedený LiPS), což má navozovat situaci hledání nejefektivnější způsobu řešení rozsáhlých a komplikovaných optimalizačních úloh z praxe. Z tohoto důvodu seznamuji studenty také s kódovacím jazykem MPS. Kód tohoto univerzálního modelovacího jazyka MPS může být bez větších problémů psán, editován či generován ve výše zmíněných programech, mezi kterými jsou tak modely plně přenosné.

- 191 -

LiPS

Tento software kombinující různé přístupy k zadávání zdrojových dat studentům nabízím k dobrovolnému otestování. Nabízí totiž zápis jak v jednoduchém grafickém prostředí tabulky, tak pomocí vlastního kódovacího jazyka LPX a navíc umí jak číst, tak generovat zápisy modelů v univerzálním jazyce MPS. Navíc umožňuje řešit úlohy jedno i vícekriteriálního LP. Program je volně dostupný, vyskytují se ovšem funkční problémy při nevhodném vlastním přejmenování proměnných. Překladač do MPS při generování nedbá sloupcového charakteru jazyka MPS a bez drobné ruční intervence se stává pro ostatní programy nečitelným. Studenti, kteří pochopí sloupcovou strukturu jeho zápisu, nemají s touto úpravou potíže. Program LiPS je vhodné použít ve výuce, neboť umožňuje vzájemné převody jednotlivých výše zmíněných formátů zápisu a může posloužit k demonstraci možnosti přenosu zápisu jedné úlohy mezi více programy díky univerzálnímu MPS.

Jelikož se jedná o free verze dostupné všem studentům, není problém nainstalovat několik takových programů a porovnat jejich funkčnost a poskytované výstupy, případně o nich diskutovat. Studenti pak dostanou za úkol vyřešit zadanou jednoduchou úlohu LP za pomoci samostatně vybraného modelovacího jazyka. Na tomto základě by měli být absolventi kurzu později schopni analogicky pracovat s podobnými v praxi využívanými komerčními programy, jejichž přehledný seznam je jim předložen, včetně upozornění na rozdíly mezi volně dostupnou demoverzí (kterou pro výuku používáme) a plnou komerční verzí.

2.6.5 E-learning

V rámci projektu byly na VŠPJ vytvořeny kurzy ke všem předmětům v LMS Moodle (akronym pro Modular Object-Oriented Dynamic Learning Environment, tedy Modulární objektově orientované dynamické prostředí pro výuku), v současné době již tvorba dalších kurzů není podporována. Považuji jej za užitečný především pro studenty kombinované formy studia, kterým se ovšem zatím kurz Operační výzkum nenabízí. Možností systému využívám pouze jednoduchým způsobem jako kalendář akcí a úložiště informací a souborů, nadále preferuji kontaktní způsob výuky. Časový harmonogram všech aktivit a týkajících se výuky předmětu je zveřejněn na stránkách oficiálního e-learningu VŠPJ v LMS Moodle od začátku semestru.

- 192 -

Všechny informace a materiály ve formě na síti pověšených souborů potřebné při studiu předmětu jsou jednoduše a přehledně zpřístupněny a jsou studentům dostupné z libovolného místa připojeného k internetu. Je použita týdenní struktura organizace a stále se opakující systematické členění všech 14 kapitol. Studenti dopředu znají pořadí témat, která se budou probírat v jednotlivých týdnech semestru, jsou zde nastaveny termíny zadání a odevzdávání čtyř protokolů. Dále jsou zde připraveny ke stažení a vytištění pracovní listy ke každému tématu, odkazy či instalační soubory včetně stručného manuálu k jejich ovládání, seznam studijní literatury, skripta Operační výzkum a doplňující Operační výzkum – pracovní listy jako ucelený soubor všech listů jsou zde vystaveny v elektronické podobě v pdf a výše zmíněné doplňkové materiály. K odevzdávání protokolů jsou využívány odevzdávárny. Zatím jsou též v e-learningovém kurzu Moodle ponechány elektronické studijní materiály zrušeného předmětu MEK, které mohou také studenti Operačního výzkumu využít. Kurz Matematiky pro ekonomy obsahoval hierarchickou strukturu výtahu z přednášek, vzorově řešené příklady a řízeným průchodem studiem. Za stránkami byly při jejich průchodu v rámci samostudia umístěny interaktivní testy vyhodnocující dosažené výsledky studenta. Průchod těchto stránek ovšem nijak nekontroluji, pouze studentům umožňuji přístup na ně.

- 193 -

Závěr

V rámci předkládané disertační práce byl na Vysoké škole polytechnické vytvořen předmět Operační výzkum, jehož náplň a cíle vzešly z požadavků Katedry ekonomických studií, v rámci reakreditace oboru Finance a řízení v minulém akademickém roce. Vzhledem k nedávné změně v doporučeném studijním plánu bude ovšem prozatím nabízen studentům jako předmět volitelný. Obecně lze říci, že zájem studentů o všechny volitelné matematické předměty je i na bakalářském studiu s ekonomickým zaměřením velmi malý, výsledky práce proto nemohly být zatím využity v praxi. Zpracovávám tak pouze závěry ze svých několikaletých zkušeností s výukou povinného předmětu Matematika pro ekonomy s obdobným zaměřením, kterým pod mým pedagogickým vedením prošlo několik stovek studentů. Hlavním cílem mé disertační práce bylo vytvoření výukové podpory pro bakalářské studium s ekonomickým zaměřením. Práci nutně předcházelo nejprve zjištění znalostí ke studiu přijímaných studentů, aby mohla být stanovena přiměřená úroveň náročnosti výuky, zmapování výuky jednotlivých témat operačního výzkumu na vysokých školách v ČR a vytvoření přehledu základních úloh a metod operačního výzkumu. Věnovala jsem se převážně oblasti lineárního programování, ostatní oblasti jsou popsány okrajově k doplnění souvislostí. V rámci tohoto úkolu byly mimo jiné odvozeny vzorce pro intervalovou a fuzzy analýzu optimálního řešení při nejistotě kapacit. Vzhledem k zaznamenané stále se snižující úrovni matematických znalostí a početních dovedností ke studiu přijímaných studentů bylo třeba jejich podobu tomuto nepříznivému trendu přizpůsobit. Hlavní motivací k vytvoření vlastních skript jakožto základního studijního materiálu a doplňující výukové podpory pro průchod cvičeními bylo nabídnout dnešním studentům přístupnější studijní materiály. Obě publikace jsou součástí této disertační práce ve formě elektronické přílohy. Sepsáním skript Operační výzkum se podařilo získat studijní text, který může být využit jako podpora při sledování přednášek i k samostatné domácí přípravě, u kombinované formy studia by mohl být případně využit k samostudiu. Skripta jsou sice zjednodušenou, ale za to srozumitelnější a čtivější alternativou k odbornému ryze matematickému textu jiných vysokoškolských studijních opor. Přilákání studenta ke studované problematice je dle mého názoru hlavním úkolem pedagoga.

- 194 -

Soubor pracovních listů Operační výzkum - Pracovní listy (viz Kubišová 2014c) obsahuje sady úkolů, které studenti v průběhu jednotlivých cvičení postupně plní za asistence pedagoga, na rozdíl od klasických sbírek příkladů tedy neobsahují výsledky, zpětnou vazbu dává spolupráce s ostatními studenty a přítomný pedagog. Některé příklady jsou určeny zájemcům k domácí přípravě, studenti tak mají na jednom místě k dispozici také vhodný domácí úkol k procvičení právě probrané látky. Zvolený způsob vedení cvičení a zápisu výsledků a odpovědí do připravených polí a tabulek studentům vyhovuje, neboť zrychluje zápis příkladů a umožňuje studentům pracovat vlastním tempem a své výsledky průběžně konzultovat se spolužáky. Pevná struktura navádí studenty k dodržování správných postupů, které si tak snadněji osvojí. Cvičícímu umožňuje věnovat se individuálně slabším studentům. K usnadnění studia slouží studentům také zavedení optimalizačního softwaru do výuky, a to nejen jako prostředek pro zrychlení již osvojených algoritmizovaných numerických výpočtů, ale ve stále větší míře také jako kompenzační prostředek pro studenty s nedostatečnými matematickými vědomostmi a dovednostmi, které je dosud diskvalifikovaly z úspěšného průchodu studiem, neboť znemožnily postup do další úrovně studia. I student s takovýmto handicapem může dosáhnout stanoveného cíle předmětu, tedy analyzovat zadaný úkol a nalezené řešení správně interpretovat, což vždy považuji za pedagogický úspěch. Bez ohledu na své aktuální limitované schopnosti se student může věnovat využití metod operačního výzkumu k řešení konkrétních reálných příkladů z praxe, numerické dovednosti může případně doplnit později a dosáhnout tak zlepšení své úrovně. Před samotnou volbou vhodných a dostupných aplikací pro výuku bylo zapotřebí možnosti využívání optimalizačního softwaru zmapovat. Využití softwaru je neodmyslitelnou součástí optimalizace, která může v praxi ruční výpočty zcela nahradit. Byly vytvořeny také další podpůrné materiály. Algebraické řešení úloh často doplňuji grafickým řešením úloh LP, vhodné zobrazení studentům látku opět názorně přibližuje a umožňuje ilustrovat souvislosti s početním řešením. Promítání snímků prezentace v MS Powerpoint, na kterých postupně přibývají geometrické objekty, umožňuje vytvářet také jednoduché grafické animace. V MS Excel jsem vytvořila jednoduché interaktivní kalkulačky pro postoptimalizační analýzu konkrétního příkladu ze cvičení sloužící k experimentálnímu odhalení mezí intervalů citlivosti pro pravé strany i cenové koeficienty.

- 195 -

Na oficiálním e-learningovém webu školy je vytvořen kurz Operační výzkum, v uniformním, pro studenty známém prostředí, jsou na jediném místě zpřístupněny všechny informace a materiály využívané při výuce. Je použito týdenní rozložení plánovaných událostí, studenti vidí časový harmonogram probíraných témat i nastavení termínů pro odevzdávání protokolů, stejně jako tabulky hodnocení jednotlivých testů, které pomocí vzorců každému studentovi zobrazují aktuální stav jeho průchodu studiem. Bohužel, u dnešních studentů se projevuje nedostatek vnitřní motivace a zodpovědnosti, z mých zkušeností vyplývá, že zadáváním dobrovolných domácích úkolů nemůže být cíle podnícení domácí přípravy studentů dosaženo. Tento přístup naopak potvrzuje nutnost studenty k domácí přípravě přimět pomocí vnější intervence. Je ovšem stále obtížnější takové studenty k práci motivovat. Z tohoto důvodu jsou při výuce mnohdy voleny středoškolské metody, na které byli studenti přicházející ze SŠ dosud zvyklí, aby bylo dosaženo vyšší úspěšnosti, příprava výuky je ovšem pro pedagoga náročnější. Jedním z osvědčených způsobů je zavedení krátkých bodovaných testů na prověření znalostí z přednášky na začátku každého cvičení. Toto opatření přimělo studenty dávat pozor na přednášce a průběžně se připravovat na cvičení, což vedlo jak k usnadnění práce ve cvičeních, tak k celkovému zlepšení studijních výsledků. V zimním semestru 2013/2014 byla v rámci experimentu bodována také aktivní účast ve výuce, což navodilo žádoucí pracovní atmosféru. Tento systém se sice více přibližuje středoškolskému pojetí výuky, přináší ovšem zlepšení studijních výsledků bez provedení dnes hodně diskutované nutnosti snižování požadavků. K plánovanému ověření vytvořených výukových opor zatím nedošlo, povinný předmět Operační výzkum zatím nebyl oproti původnímu plánu zařazen do rozvrhu hodin a nabídnut studentům k registraci. Bylo by třeba zjistit, nakolik studenti zvládají stanovený obsah a jakých chyb se dopouštějí. Části skript a některé pracovní listy již byly využity při výuce předmětu Matematika pro ekonomy u posledních dvou studijních skupin v zimním semestru akademického roku 2014/2015, a díky tomu mohla být původní podoba obou opor alespoň v kapitolách, ve kterých se oba předměty překrývaly, kompilována tak, aby lépe vyhovovala potřebám studentů. Byly vyhodnoceny problematické pasáže, jejichž odstranění byla následně věnována větší pozornost.

- 196 -

Přestože ve studijních plánech ekonomicky zaměřených oborů některých českých vysokých škol dnes kvůli přizpůsobování se populistickému trendu není pro matematické předměty vyhrazen dostatečný prostor, což je dle mého názoru velmi krátkozraké, doufám, že mnou vytvořené opory budou sloužit k účelu, ke kterému byly původně vytvořeny, a výuka dnes v praxi hojně využívaných metod stále se rozvíjející disciplíny operačního výzkumu bude opět na VŠPJ v rámci oboru Finance a řízení s ekonomickým zaměřením obnovena v míře adekvátní široké praktické uplatnitelnosti jeho metod.

- 197 -

Seznam použité literatury

[1] BAZARAA, M. S., JARVIS, J. J. and SHERALI, H. D.: Linear Programming and Network Flows. New York: John Wiley & Sons 2011, ISBN 1118211324. [2] BEČVÁŘ, J.: Lineární algebra. MATFYZPRESS, Praha 2005. ISBN 86732-57-6. [3] BENEŠOVÁ, M.: Applied Mathematics in Management. VŠPJ, Jihlava 2008. [4] Biografie českých matematiků [online]. [cit 2013-05-14]. Dostupné z: https://web.math.muni.cz/biografie/ [5] BOUŠKA, J., ČERNÝ, M., GLÜCKAUFOVÁ, D.: Interaktivní postupy rozhodování. Academia, Praha 1984. [6] BROŽOVÁ, H., HOUŠKA, M.: Základní metody operační analýzy. Skripta ČZU, CREDIT, Praha 2003. [7] COCHRAN, J. J.: Extending „Lego – My Simplex“. INFORMS Transactions of Education [online] [cit 2014-06-10]. Dostupné z: http://pubsonline.informs.org/doi/pdf/10.1287/ited.2015.0139 [8] COTTLE, R., JOHNSON, E., WETS, R.: George B. Dantzig (1914–2005). Notices of the AMS. 2006, roč. 54, č. 3, s. 344-362. Dostupné z: http://web.stanford.edu/group/SOL/GBD [9] ČERNÝ, M., GLÜCKAUFOVÁ, D.: Vícekriteriální vyhodnocování v praxi. Academia, Praha 1982. [10] Česká společnost pro operační výzkum [online]. [cit 2014-06-11]. Dostupné z: http://csov.vse.cz/index.php?action=links [11] DEMLOVÁ, M., PONDĚLNÍČEK, B.: Úvod do algebry. ČVUT, Praha 1997. [12] Distance Learning Module for Management Science [online]. [cit 2014-04-14]. Dostupné z: http://orms.pef.czu.cz// [13] DLOUHÝ, M., KUNCOVÁ, M.: Operation research methods: Theory and Practice by Literature Survey. LOGOS POLYTECHNIKOS, roč. 5, č. 4, s. 82-94, Jihlava 2014. ISSN 1804-3682. Dostupný z: . [14] DLOUHÝ, M.: Simulace pro ekonomy. Vyd. 1. Praha: Vysoká škola ekonomická, 2001. 126 s. ISBN 80-245-0155-4. [15] DOSTÁL, P., RAIS, K.: Operační a systémová analýza I. CERM, Brno 2004. [16] DOSTÁL, P.: Operační a systémová analýza II. VUT, Brno 2005.

- 198 -

[17] DOSTÁL, P.: Pokročilé metody analýz a modelování. CERM, Brno 2006. ISNB 80-214-3324-8. [18] Download Current GAMS Distribution [online]. [cit. 2013-06-05]. Dostupné z: http://www.gams.com/download/ [19] Download Free Student/Trial Version [online]. [cit 2014-08-12]. Dostupné z: http://www.maximalsoftware.com/download/ [20] DVOŘÁK, J.: Operační analýza. [cit. 2015-04.10]. Dostupné z: http://www.uai.fme.vutbr.cz/~jdvorak/vyuka/tsoa/tsoa.htm. [21] DVOŘÁK, J., HANDLÍŘ, J., OŠMERA, J., ŠŤASTNÝ, J.: Metody systémové a operační analýzy. VUT, Brno 1989. [22] DVOŘÁK, J., HANDLÍŘ, J.: Cvičení metod systémové a operační analýzy. VUT, Brno 1991. [23] EICHLER, B., BUKOVSKÝ, K.: Lineární programování. SPN, Praha 1975. [24] Encyclopedia of Optimization - Springer [online]. [cit 2013-08-14]. Dostupné z: http://link.springer.com/referencework/10.1007%2F978-0-387-74759-0#page-2 [25] FÁBRY, J.: Management Science. Oeconomia, Praha 2003, ISBN 80-245-1266-2. [26] FÁBRY, J.: Matematické modelování. Oeconomia, Praha 2007, ISBN 978-80- 245-0586-X. [27] FIALA, P.: Modely a metody rozhodování. Oeconomia, Praha 2008. ISBN 978- 80-245-1345-4. [28] FIALA, P. a kol.: Operační výzkum – nové trendy. Professional Publishing, Praha 2010. ISBN 978-80-7431-036-2. [29] FIALA, P., JABLONSKÝ, J., MAŇAS, M.: Vícekriteriální rozhodování. VŠE, Praha 1994. ISBN 80-7079-748-7. [30] FIEDLER, M.: Speciální matice a jejich použití v numerické matematice. SNTL, Praha 1981. [31] FLOUDAS, C. A., PARDALOS, P. M.: Encyclopedia of Optimization. 2nd edition. Springers, 2008. [32] FOTR, J., ŠVECOVÁ, L., a kol.: Manažerské rozhodování. Postupy, metody, nástroje. Ekopress, Praha 2010. ISBN 978-80-86929-59-0. [33] FREUND, Robert. Professor George Dantzig: Linear Programming Founder Turns 80. [online]. [cit. 2015-04-12]. Dostupné z: http://web.stanford.edu/group/SOL/dantzig.html

- 199 -

[34] FRIEBELOVÁ, J.: Vícekriteriální programování, (example problem), Zemědělská fakulta, Jihočeská univerzita v Českých Budějovicích. [cit 2014-05- 11]. Dostupné z: http://www2.ef.jcu.cz/~jfrieb/konzultace/vicekritko.pdf [35] FUCHS, E.: Kombinatorika a teorie grafů. SPN, Praha 1986. [36] GAJDA, B.: Speciální metody optimalizace. Diplomová práce, UTB, Zlín 2009. [cit 2014-04-21]. Dostupné z: http://digilib.k.utb.cz/bitstream/handle/10563/8302/gajda_2009_dp.pdf [37] GASS, Saul I., ASSAD, A. A.: An Annotated Timeline of Operations Research: An Informal History, University of Maryland, Boston 2005. ISBN 1-4020-8113-8. [38] GEN, M., CHENG, R.: Genetic and Engineering Optimization. John Willey & sons, Inc., New York 2000. [39] GILL, Philip E., MURRAY, Walter, SAUNDERS Michael A., TOMLIN John A. a WRIGHT Margaret H. George B. Dantzig and Systems Optimization. Discrete optimization. Stanford 2007. Dostupné z: http://web.stanford.edu/group/SOL/GBD.html [40] GRÖTSCHEL, M., YUAN, Y.: Euler, Mei-Ko Kwan, Königsberg and a Chinese postman. Documenta mathematica. Bielefeld 2012. Dostupné z: http://www.math.uiuc.edu/documenta [41] GROS, I.: Kvantitativní metody v manažerském rozhodování. Praha 2003. [42] GRYGAROVÁ, L.: Základy vícekriteriálního programování. Skripta UK. Karolinum, Praha 1996. [43] HLINĚNÝ, P.: Základy teorie grafů. Výukový text, Elportál MU, Brno 2010. [cit 2014-03-01]. Dostupné z: http://is.muni.cz/do/1499/el/estud/fi/js10/grafy/Grafy- text10.pdf. [44] HUŠEK, R., LAUBER, J.: Operační výzkum. SPN, Praha 1990. [45] HUŠEK, R., WALTER, J.: Ekonometrie. SNTL, Praha 1976. [46] CHARVÁT, J., HÁLA, M., ŠIBRAVA, Z.: Příklady k matematice I. ČVUT, Praha 1997. [47] Index of /download/izar [online]. [cit. 2014-06-12]. Dostupné z: http://swing.fit.cvut.cz/download/izar/ [48] IVANYTSKA, V.: IZAR – user guide. Bakalářská práce, VŠE, Praha 2012. [cit 2014-05-11]. Dostupné z: https://www.vse.cz/vskp/32544_izar___user_guide [49] JABLONSKÝ, J.: Modely operačního výzkumu. Gaudeamus, Hradec Králové 2002, ISBN 80-7041-029-9.

- 200 -

[50] JABLONSKÝ, J.: Modifikace simplexové metody. [online]. 2005. [cit 2015-05- 11]. Dostupné z http://nb.vse.cz/~jablon/doc/simplex.pdf [51] JABLONSKÝ, J.: Operační výzkum - kvantitativní modely pro ekonomické rozhodování. 3. vyd. Professional Publishing, Praha 2007. ISBN 978-80-86946- 44-3. [52] JABLONSKÝ, J.: Operační výzkum – kvantitativní modely pro ekonomické rozhodování. Professional Publishing, Praha 2002, ISBN 80-86419-23-1. [53] KALČEVOVÁ, J., FIALA, P.: IZAR – Multicriteria Decision Support System. Multi-Criteria Decision Making07. University of Economics, Katowice 2007, p. 65–77. [54] KALČEVOVÁ, J., KUNCOVÁ, M., BOKŠTEFLOVÁ, M., MAŠÁTOVÁ, J., SMRČKA, P.: Srovnání výuky operačního výzkumu na vysokých školách v ČR s využitím metod vícekriteriálního rozhodování. LOGOS POLYTECHNIKOS, roč. 1, č. 2, s. 25-36, Jihlava 2010. ISSN 1804-3682. Dostupný z: www.vspj.cz. [55] KARMARKAR, N.: A new polynomial-time for linear programming. Combinatorica, 4(4): p. 373-395, 1984. [56] KARPÍŠEK, Z., LACINOVÁ, V. System Reliability Computed by Interval Arithmetic. In: MENDEL2010 - 16th International Conference on Soft Computing. June 23-25, 2010, Brno, pp. 565-570. ISSN 1803-3814 (Mendel Journal Series on CD), ISBN 978-80-214-4120-0 (print). [57] KLAPKA, J. a kol.: Metody operačního výzkumu. FSI VUT, Brno 2001. [58] KLAPKA, J., DVOŘÁK, J.: Úvod do operační a systémové analysy. VUT, Brno 2002. [59] KLAPKA, J.: Dynamické programování. SNTL, Praha 1970. [60] KLIR, G. J., and YUAN B.: Fuzzy Sets and Fuzzy Logic, Prentice Hall of India Private limited, New Delhi 2005. [61] KLIR, G. J., and YUAN B.: Fuzzy Sets and Fuzzy Logic: Theory and Applications, Prentice Hall of India Private limited, New Delhi 1995. ISBN 0-13- 101171-5. [62] KLŮFA, J.: Vybrané partie z lineární algebry. VŠE, Praha 1996. [63] KLVAŇA, J.: Operační výzkum 1. ČVUT, Praha 2001. [64] KLVAŇA, J.: Operační výzkum 2. ČVUT, Praha 1993. [65] KOLČAVOVÁ, A.: Kvantitativní metody v rozhodování. UTB, Zlín 2003.

- 201 -

[66] KOLESÁROVÁ, A., KOVÁČOVÁ, M.: Fuzzy množiny a ich aplikácie, Slovenská technická univerzita, Bratislava 2002. ISBN 8022720364. [67] KORDA, B., a kol.: Matematické metody v ekonomii. SNTL, Praha 1967. [68] KORDA, B.: Kapitoly z matematického programování. SPN, Praha 1963. [69] KORDA, B.: Učebnice lineárního programování. SNTL, Praha 1962 [70] KORVINY, P.: Teoretické základy vícekriteriálního rozhodování. [online]. [cit 24-1-2012]. Dostupné z: http://korviny.cz/mca7/soubory/teorie_mca.pdf [71] KOŘENÁŘ, V., LAGOVÁ, M., JABLONSKÝ, J.: Optimalizační metody. VŠE, Praha 2003, s. 187, ISBN 80-245-0609-2. [72] KUČEROVÁ, J., KLVAŇA, J., DEMEL, J., VANÍČEK, T.: Příklady z operačního výzkumu, ČVUT, Praha 1998. [73] LAGOVÁ, M.: Lineární modely v příkladech. VŠE, Praha 2002, ISBN 80-245-0456-1. [74] LAGOVÁ, M.: Lineární modely. VŠE, Praha 2004, s. 286, ISBN 80-245-0816-8. [75] LASDON, L. S., WAREN, A., JAIN, A., RATNER, M.. Design and Testing of a Generalized Reduced Gradient Code for . ACM Transactions on Mathematical Software 4:1 (1978), pp. 34-50. [76] LAUBER, J., JABLONSKÝ, J.: Programy pro matematické modelování I. a II., VŠE, Praha 1994. [77] LiPS [online]. [cit 2014-03-21]. Dostupné z: http://lipside.sourceforge.net/ [78] LIŠKA, M.: Matematické metody v podnikání [online]. [cit 2013-03-21]. Dostupné z: http://mujweb.cz/miroslav.liska/mmp/. [79] Maplesoft - Technical Computing Software for Engineers, Mathematicians, Scientists, Instructors and Students [online]. [cit 2015-05-11]. Dostupné z: https://www.maplesoft.com/ [80] MARIEL, P., VÝBORNÁ, O.: Příklady z optimálního programování. VŠE, Praha 1989. [81] Mathematical methods in economics 2013 [online]. [cit 2014-05-11]. Dostupné z: https://mme2013.vspj.cz/ [82] MOLLIKOVÁ, E. Modelovací jazyky v optimalizaci. Bakalářská práce, FSI VUT Brno, 2010. [83] MOOR, R. E., KEARFOTT, R. G., and CLOUD, M. J. Introduction to Interval Analysis. Philadelphia: SIAM 2009, ISBN 978-0-898716-69-6.

- 202 -

[84] MPS File Format [online]. [cit 2014-03-21]. Dostupné z: http://lpsolve.sourceforge.net/5.5/mps-format.htm [85] MURRAY, Walter. George Dantzig: A Personal Perspective. SIAG/OPT View- and-News, Vol. 16, No. 1-2, str. 1-3, Stanford University, Stanford 2005. Dostupné z: http://web.stanford.edu/group/SOL/GBD.html [86] NADAL, Javier F. A brief review of the Kantorovich, Hitchcock and Koopmans' contributions in the Network Flow Programming field. [online]. [cit. 2015-04-12]. Dostupné z: http://nadalj.tripod.com/networking/ [87] NAVARA, M., OLŠÁK, P.: Základy fuzzy množin. Skriptum ČVUT, 2. vydání, Praha, 2007. [88] NOVÁK, V.: Fuzzy množiny a jejich aplikace. SNTL, Praha 1990. ISBN 80-03- 0325-3. [89] NOVÁK, V.: Základy fuzzy modelování. BEN- technická literatura, Praha 2000. [90] Office Suite – Corel WordPerfect Office [online]. [cit 2015-08-10]. Dostupné z: http://www.wordperfect.com/rw/product/office-suite/ [91] Oficiální domovská stránka Microsoft [online]. [cit 2014-05-11]. Dostupné z: https://www.microsoft.com/cs-cz/default.aspx [92] OLŠÁK, P.: Úvod do algebry, zejména lineární. Skriptum FEL ČVUT, Praha 2007 [93] PAVLÍKOVÁ, P.: Z historie lineárního programování – George B. Dantzig. Pokroky matematiky, fyzika a astronomie, Vol. 53., No.3, JČMF, Praha 2008. [94] PELIKÁN, J. Diskrétní modely v operačním výzkumu. Professional Publishing, Praha 2001. ISBN 80-86419-17-7. [95] PENDEGRAFT, N.: Extending „Lego of My Simplex“. OR/MS Today [online] [cit 2014-06-10]. Dostupné z: http://pubsonline.informs.org/doi/pdf/10.1287/ited.6.3.28 [96] PICEK, K., KOŽÍŠEK, J.: Operační a systémová analýza I – příklady. Strojní fakulta ČVUT. Praha 1990. ISBN 90-01-00396-5. [97] PÍŠEK, M., HANUŠ, F.: Rozhodovací analýza. Praha 1994. [98] Program LINGO [online]. [cit 2013-28-02]. Dostupné z: http://www.lindo.com/index.php?option=com_content&view=article&id=35&Ite mid=20 [99] PTÁK, P.: Introduction to Linear Algebra. ČVUT, Praha 2005.

- 203 -

[100] RAIS, K., DRDLA, M.: Operační analýza – příklady. FP VUT, Brno 1995. ISBN 80-214-0713-1. [101] RAIS, K.: Základy optimalizace a rozhodování. PC DIR, Brno 2001. ISBN: 80- 86510-18- 2. [102] ROHN, J.: Lineární algebra a optimalizace. KAROLINUM, UK, Praha 2004. ISBN 80-246-0932-0. [103] RYCHETNÍK, L., ZELINKA, J., PELZBAUEROVÁ, V.: Sbírka příkladů z lineárního programování. SNTL/ALFA, Praha 1968. [104] RYCHETNÍK, L., ZELINKA, J.: Sbírka příkladů z lineárního programování. SPN, Praha 1963. [105] SANNA [online]. [cit 2014-04-14]. Dostupné z: http://nb.vse.cz/~jablon/sanna.htm/ [106] SKOČDOPOLOVÁ, V: Vícekriteriální lineární programování v prostředí Microsoft Excel. Diplomová práce, VŠE, Praha 2008. [cit 2012-03-01]. Dostup. z: http://www.vse.cz/vskp/6791_vicekriterialni_linearni_programovani_v_prostredi_ microsoft_excel [107] STOLÍN, R. Matematika pro ekonomy [online]. Jihlava: VŠPJ, 2010 [cit. 2014- 01-01]. Dostupné z: elearning.vspj.cz [108] ŠIŠMA, P.: Teorie grafů 1736–1963. Prometheus, Praha 1997. ISBN: 80-7196- 065-9. [109] ŠIMŠA, P.: Biografie českých matematiků [online]. [cit. 2015-02-30]. Dostupné z: https://web.math.muni.cz/biografie/ [110] ŠMEREK, M., MOUČKA, J.: Ekonomicko-matematické metody. UO, Brno 2008. ISBN 978-80-7231-526-0. [111] TURZÍK, D. Matematika III: základy optimalizace. VŠCHT Praha, 2006. ISBN 80-7080-363-0 [112] TURZÍK, D., PAVLÍKOVÁ, P.: Diskrétní matematika. VŠCHT Praha, 2007. ISBN 978-80-7080-667-8. [113] TÝC, O.: Operační výzkum. MZLU, Brno 2003. ISBN 80-7157-726-X. [114] URBAN, P.: Vícekriteriální hodnocení variant v prostředí Microsoft Excel. Diplomová práce, VŠE, Praha 1999. [115] VANĚČKOVÁ, E.: Ekonomicko-matematické metody. JČU, České Budějovice 1996.

- 204 -

[116] VS - SYMCLIP [online]. [cit 2014-04-14]. Dostupné z: http://veronika.sapientia.cz/symclip.htm/ [117] VŠPJ [online]. [cit 2015-28-04]. Dostupné z: https://www.vspj.cz/skola/obecne- informace [118] Wolfram: Computation Meets Knowledge [online]. [cit. 2014-05-10]. Dostupné z: http://www.wolfram.com [119] ZADEH, L., FU K., TANAKA, K., SHIMURA, M.: Fuzzy sets and their applications to cognitive and decision processes, Academic Press, New York 1975. ISBN 0-12-775260-9. [120] ZAHRADNÍK, J.: Lineární programování při řízení hospodářství. SNTL, Praha 1969. [121] ZAHRADNÍK, J.: Základy lineární algebry a základy lineárního programování. VÚOŠ, Praha 1966. [122] ZAHRADNÍK, J.: Matematika pro I. a II. ročník studia absolventů SVVŠ (gymnázií) na středních ekonomických školách. SPN, Praha 1971. [123] ZÍSKAL, J., BERÁNKOVÁ, M., HOUŠKA, M.: Lineární programování I, skripta ČZU PEF, 2005 [124] ZÍSKAL, J., BERÁNKOVÁ, M., HOUŠKA, M.: Lineární programování II, skripta ČZU PEF, 2005 [125] ŽIŽKA, M.: Vybrané statě z operačního výzkumu. EF TUL, Liberec 2003. ISBN 80-7083-691-1.

- 205 -

Seznam tabulek

Tabulka 1 – Zadání – pevné kapacity ...... 26 Tabulka 2 – Zadání – složení 100g porce jednotlivých druhů granulí ...... 29 Tabulka 3 – Zadání – parametry cenných papírů ...... 30 Tabulka 4 – Zadání – počet oslovených osob na každý investovaný tisíc Kč ...... 31 Tabulka 5 – Zadání – vzdálenosti ze sadů k zelinářům ...... 33 Tabulka 6 – Zadání – jednotková spotřeba surovin a jednotkový zisk ...... 36 Tabulka 7 – Zadání – parametry hodnocených praček ...... 38 Tabulka 8 – Zadání – hodnocení uchazečů o studium ...... 39 Tabulka 9 – Zadání – intervalové kapacity ...... 40 Tabulka 10 – Zadání – fuzzy kapacity ...... 41 Tabulka 11 – Simplexová tabulka – obecný tvar ...... 69 Tabulka 12 – Výchozí simplexová tabulka – obecný tvar ...... 69 Tabulka 13 – Výsledná simplexová tabulka – obecný tvar ...... 71 Tabulka 14 – Výchozí simplexová tabulka – ModiSM ...... 73 Tabulka 15 – Výchozí simplexová tabulka – RSM ...... 74 Tabulka 16 – Výsledná simplexová tabulka – RSM ...... 74 Tabulka 17 – dopravní tabulka – I. fáze ...... 85 Tabulka 18 – dopravní tabulka – II. fáze ...... 87 Tabulka 19 – Počet registrací předmětu MEK ...... 144 Tabulka 20 – Test středoškolských znalostí – řešení SLR - metoda ...... 161 Tabulka 21 – Test středoškolských znalostí – řešení SLR - řešení ...... 162 Tabulka 22 – Ústní zkouška – všechna udělená hodnocení v letech 2006 – 2014 ...... 169 Tabulka 23 – Ústní zkouška – hodnocení při první registraci v letech 2006 – 2014 .... 170 Tabulka 24 – Ústní zkouška – hodnocení při druhé registraci v letech 2007 – 2014 ... 171 Tabulka 25 – Studentská anketa – hodnocení obtížnosti témat ...... 173

- 206 -

Seznam obrázků

Obrázek 1 – Koopmans, Dantzig a Kantorovič (zleva) ...... 10 Obrázek 2 – Grafické řešení – SLR – jediné řešení ...... 52 Obrázek 3 – Grafické řešení – SLN – degenerace počtu ZŘ ...... 53

Obrázek 4 – Grafické řešení – klasická úloha LP v E2 – množina PŘ ...... 53

Obrázek 5 – Grafické řešení – klasická úloha LP v E2 – optimální řešení ...... 54

Obrázek 6 – Grafické řešení – klasická úloha LP v E3 – množina PŘ ...... 55

Obrázek 7 – Grafické řešení – klasická úloha LP v E3 – optimální řešení ...... 56 Obrázek 8 – Grafické řešení – poloha VZŘ při řešení jednofázovou PSM ...... 56 Obrázek 9 – Grafické řešení – poloha VZŘ při řešení dvoufázovou PSM ...... 57

Obrázek 10 – Grafické řešení – celočíselná úloha LP v E2 – optimální řešení ...... 58 Obrázek 11 – Grafické řešení – celočíselná úloha LP - zanedbání celočíselnosti ...... 58 Obrázek 12 – Grafické řešení – celočíselná úloha LP – průběh algoritmu MVM ...... 59

Obrázek 13 – Grafické řešení – úloha VLP v E2 – jednokriteriální optima dílčích účelových funkcí ...... 60

Obrázek 14 – Grafické řešení – intervalová analýza v E2 – optimální řešení ...... 61

Obrázek 15 – Grafické řešení – intervalová analýza v E2 – dosažitelnost zisku ...... 62

Obrázek 16 – Grafické řešení – fuzzy analýza v E2 – optimum ( bez omezení) ...... 64

Obrázek 17 – Grafické řešení – fuzzy analýza v E2 – pro stanovené minimální  ...... 65 Obrázek 18 – Elipsoidální algoritmus - ilustrace ...... 106 Obrázek 19 – Řešitel – zadání dat, sestavení funkcí ...... 112 Obrázek 20 – Doplňky aplikace MS Excel – dialogové okno ...... 113 Obrázek 21 – Řešitel – dialogové okno ...... 113 Obrázek 22 – Řešitel – výsledková zpráva ...... 114 Obrázek 23 – LinKOSA – dialogové okno doplňku ...... 116 Obrázek 24 – LinKOSA – výsledkové zprávy ...... 117 Obrázek 25 – DumKOSA – dialogové okno doplňku ...... 118 Obrázek 26 – DumKOSA – výsledkové zprávy ...... 118 Obrázek 27 – MCAKOSA – data a výsledky ...... 119 Obrázek 28 – WGPKOSA – dialogové okno – matematický model ...... 120 Obrázek 29 – SANNA – výsledková sestava ...... 121 Obrázek 30 – SYMCLIP – zadání dat a výběr metody stanovení vah kriterií ...... 122

- 207 -

Obrázek 31 – SYMCLIP – výsledky pro metodu min. vzdálenosti od ideální varianty 123 Obrázek 32 – LinPro – zadání dat a výběr výstupu ...... 124 Obrázek 33 – LinPro – výsledky na obrazovce ...... 124 Obrázek 34 – IZAR – vložení dat ...... 125 Obrázek 35 – IZAR – listy výsledků ...... 126 Obrázek 36 – MAPLE – průběh řešení úlohy LP ...... 129 Obrázek 37 – GAMS – příklad matematického modelu ...... 131 Obrázek 38 – LINGO – zkrácený zápis modelu ...... 133 Obrázek 39 – LINGO – import dat z externího zdroje ...... 134 Obrázek 40 – MPL – matematický model, výsledková zpráva a MPS generátor ...... 136 Obrázek 41 – MPS formát vygenerovaný v LiPS ...... 137 Obrázek 42 – MPS formát vygenerovaný v MPL ...... 138 Obrázek 43 – Test středoškolských znalostí – ukázka varianty ...... 160 Obrázek 44 – Anketa – postoj k domácí práci ...... 164 Obrázek 45 – Anketa – postoj k samostatnému vypracování úkolů ...... 165 Obrázek 46 – Průběžné testy – příklad jedné varianty ...... 167 Obrázek 47 – Ústní zkouška – všechna udělená hodnocení v letech 2003 – 2014 - histogram ...... 170 Obrázek 48 – Ústní zkouška – hodnocení při první registraci v letech 2006 – 2014 ... 171 Obrázek 49 – Ústní zkouška – hodnocení při druhé registraci v letech 2007 – 2014 .. 172 Obrázek 50 – Průběžné testy – hodnocení ZS 2013/2014 ...... 174 Obrázek 51 – Průběžné testy – hodnocení ZS 2013/2014 ...... 175 Obrázek 52 – MS Excel – interaktivní kalkulačka pro analýzu citlivosti ...... 186 Obrázek 53 – LinPro – kroky v tiskové podobě ...... 190

- 208 -

Seznam zkratek

CLP téma Celočíselné LP ČVUT České vysoké učení technické (Praha) ČZU Česká zemědělská univerzita (Praha) DP dopravní problém DOP téma Dopravní problém DSM duálně simplexová metoda; také téma DUAL téma Dualita v úlohách LP GRAF téma Grafické řešení úloh LP ISC téma Analýza citlivosti optimálního řešení na změnu cenových koeficientů ISK téma Analýza citlivosti optimálního řešení na kapacit JČU Jihočeská univerzita (České Budějovice) KES Katedra ekonomických studií KM Katedra matematiky LP lineární programování LS letní semestr MAT Matematika I (předmět) MATA téma Základy maticové algebry MEK Matematika pro ekonomy (předmět) MMU matematický model úlohy; také téma MODI modifikovaná distribuční metoda MUNI Masarykova univerzita (Brno) MVM metoda větvení a mezí MZLU Mendelova zemědělská a lesnická univerzita (Brno) NLP nelineární programování OPV Operační výzkum (předmět) OŘ optimální řešení OSU Ostravská univerzita PSM primárně simplexová metoda PSM1 téma Jednofázová primárně simplexová metoda PSM2 téma Dvoufázová primárně simplexová metoda PŘ přípustné řešení

- 209 -

QP kvadratické programování RSM revidovaná simplexová metoda SLN soustava lineárních nerovnic; také téma. SLR soustava lineárních rovnic; také téma. SLU Slezská univerzita (Opava) SZR metoda severozápadního rohu TSM Tvorba simulačních modelů (předmět) TUL Technická univerzita v Liberci UHK Univerzita Hradec Králové UJEP Univerzita Jana Evangelisty Purkyně (Ústí nad Labem) UK Univerzita Karlova (Praha) UPCE Univerzita Pardubice UPOL Univerzita Palackého v Olomouci UTB Univerzita Tomáše Bati (Zlín) VAM Vogelova aproximační metoda VEKT téma Základy vektorové algebry VHV vícekriteriální hodnocení variant; také téma VLP vícekriteriální lineární programování; také téma VSB-TU Vysoká škola báňská – Technická univerzita (Ostrava) VŠE Vysoká škola ekonomická v Praze VŠCHT Vysoká škola chemicko-technologická (Praha) VŠPJ Vysoká škola polytechnická Jihlava VUT Vysoké učení technické (Brno) VZŘ výchozí základní řešení ZČU Západočeská univerzita v Plzni ZŘ základní řešení ZS zimní semestr

- 210 -

Přílohy

Příloha 1 – KUBIŠOVÁ, A., 2014c. Operační výzkum. 1. vyd. VŠPJ, Jihlava 2014. 178 s. ISBN 978-80-87035-83-2. – na CD Příloha 2 – KUBIŠOVÁ, A., 2014d. Operační výzkum - pracovní listy. 1. vyd. VŠPJ, Jihlava 2015. 105 s. ISBN 978-80-88064-06-0. – na CD

- 211 -

Seznam publikací doktorandky

Stať v recenzovaném periodiku

K[1] KUBIŠOVÁ, A., 2015a. Řešení úloh lineárního programování s fuzzy kapacitami vlastních omezení metodou -řezů. LOGOS POLYTECHNIKOS, roč. 6, č. 4, Jihlava 2015. ISSN 1804-3682. Dostupný z: . K[2] KUBIŠOVÁ, A., 2015b. Úloha LP při intervalově zadaných kapacitách vlastních omezení. LOGOS POLYTECHNIKOS, roč. 6, č. 4, Jihlava 2015. ISSN 1804-3682. Dostupný z: . K[3] KUBIŠOVÁ, A., 2015c. Fuzzy limits of capacities in constraints of linear programming problems. LOGOS POLYTECHNIKOS, roč. 6, č. 3, s. 82-94, Jihlava 2015. ISSN 1804-3682. Dostupný z: . K[4] KUBIŠOVÁ, A., 2015d. Sestavení jídelníčku dětí s podvýživou – řešení nutričního problému pomocí běžně dostupného softwaru. LOGOS POLYTECHNIKOS, roč. 6, č. 2, s. 57-71, Jihlava 2015. ISSN 1804-3682. Dostupný z: . K[5] KUBIŠOVÁ, A., 2015e. Proč řešit graficky úlohy lineárního programování, UČITEL MATEMATIKY 23, s. 85-96, Praha 2015. ISSN 1210-9037. K[6] KUBIŠOVÁ, A., 2014a. Solving linear operation research optimization problems in MS Office 2010 Excel spreadsheet. LOGOS POLYTECHNIKOS, roč. 5, č. 4, s. 82-94, Jihlava 2014. ISSN 1804-3682. Dostupný z: . K[7] KUBIŠOVÁ, A., 2014b. Doplnění vlastního omezení do matematického modelu úlohy LP při ručním výpočtu celočíselného řešení metodou větvení a mezí. LOGOS POLYTECHNIKOS, roč. 5, č. 3, s. 15-28, Jihlava 2014. ISSN 1804- 3682. Dostupný z: . K[8] KUBIŠOVÁ, A., 2011a. Psaní matematického textu na LMS webových stránkách. Journal of Technology and Information Education: Časopis pro technickou a informační výchovu. 2011, 3, 1, s. 68-71. ISSN 1803-537X. Dostupný z: .

- 212 -

Příspěvky do sborníků konferencí

K[9] KUBIŠOVÁ, A.,2011b. Psaní matematického textu v kurzu Finanční matematika v LMS Moodle. In E-learning na VŠ s využitím LMS Moodle. BENEŠOVÁ, Martina, et al. 1. CD. Jihlava: VŠPJ. 2011. s. 26-33. ISBN 978- 80-87035-39-9. Dostupný z: . K[10] KUBIŠOVÁ, A., 2012a. Podmíněný přístup k činnostem a materiálům v prostředí LMS Moodle. In Tvorba e-learningových opor na VŠ. EXNAR, Zdislav. 1. vyd. Jihlava: VŠPJ. 2012. s. 61-66. ISBN 978-80-87035-54-2. Dostupný z: . K[11] KUBIŠOVÁ, A., 2012b. Optimalizace investičního portfolia s využitím simplexové metody. In MATEMATIKA V EKONOMICKÉ PRAXI: Sborník příspěvků z konference. FIALA, Petr. 1. vyd. Jihlava: VŠPJ. 2012. s. 46-52. ISBN 978-80-87035-62-7. Dostupný z: . K[12] KUBIŠOVÁ, A., 2010a. Výpočet RPSN při výuce finanční matematiky. In RNDr. Marie Hojdarová, CSc. Mgr. Miroslav Hanáček. In Sborník konference MATEMATIKA V EKONOMICKÉ PRAXI. 1. vyd. Jihlava, 2010. s. 226-233, 8 s. ISBN 978-80-87035-34-4. K[13] KUBIŠOVÁ, A., 2010b. Využití jazyka PHP při výuce statistiky. In Sborník příspěvků 3. konference UŽITÍ POČÍTAČŮ VE VÝUCE MATEMATIKY. 1. vyd. České Budějovice, 2007. s. 143 - 147, 5 s. ISBN 978-80-7394-048-5. K[14] KUBIŠOVÁ, A., 2006a. Výuka statistiky na VOŠ. In Sborník konference STATISTICKÉ DNY v Brně. 1. vyd. Brno, 2006. s. 27 - 28, 2 s. ISBN 80-214- 3214-4.

Skripta

K[15] KUBIŠOVÁ, A., 2014c. Operační výzkum. 1. vyd. VŠPJ, Jihlava 2014. 178 s. ISBN 978-80-87035-83-2. K[16] KUBIŠOVÁ, A., 2014d. Operační výzkum - pracovní listy. 1. vyd. VŠPJ, Jihlava 2015. ISBN 978-80-88064-06-0.

- 213 -