diplomová práce

Programový systém pro řešení úloh dynamického programování

Text práce 8.43 MB Příloha 3.19 MB

Autor práce: Ing. Petr Zetka

Ak. rok: 2010/2011

Vedoucí: RNDr. Jiří Dvořák, CSc.

Oponent: Ing. Vítězslav Popovský

Abstrakt:

Diplomová práce se zabývá tvorbou programového systému pro řešení úloh dynamického programování na počítači. V teoretické části práce je popsáno dynamické programování jako nástroj pro optimalizaci víceetapových rozhodovacích procesů a vybrané úlohy dynamického programování, které byly implementovány do programového systému. V praktické části je popsán návrh, implementace a ověření funkčnosti programového systému.

Klíčová slova:

Optimalizace, dynamické programování, úlohy dynamického programování, C#.

Termín obhajoby

22.6.2011

Výsledek obhajoby

obhájeno (práce byla úspěšně obhájena)

znakmkaAznamka

Klasifikace

A

Jazyk práce

čeština

Fakulta

Ústav

Studijní obor

Aplikovaná informatika a řízení (M-AIŘ)

Složení komise

prof. Dr. Ing. Miroslav Pokorný (předseda)
doc. Ing. Renata Wagnerová, Ph.D. (místopředseda)
RNDr. Jaroslav Pelikán, Ph.D. (člen)
prof. RNDr. Ing. Miloš Šeda, Ph.D. (člen)
doc. RNDr. Jindřich Klapka, CSc. (člen)
doc. Ing. Branislav Lacko, CSc. (člen)
prof. RNDr. Ing. Jiří Šťastný, CSc. (člen)

Posudek vedoucího
RNDr. Jiří Dvořák, CSc.

Úkolem diplomanta bylo vytvořit objektově založený programový systém pro řešení úloh dynamického programování, který by byl využitelný ve výuce a umožňoval další rozšíření. Tento úkol byl splněn, přičemž diplomant prokázal vysokou míru samostatnosti. Popsal principy víceetapového dynamického programování (deterministického i stochastického) a jejich aplikaci na vybrané typy problémů. Hlavním přínosem práce je vytvořený program, který bude využíván ve cvičení předmětu Optimalizace II.
Kritérium hodnocení Známka
Splnění požadavků a cílů zadání A
Postup a rozsah řešení, adekvátnost použitých metod B
Vlastní přínos a originalita B
Schopnost interpretovat dosažené vysledky a vyvozovat z nich závěry B
Využitelnost výsledků v praxi nebo teorii B
Logické uspořádání práce a formální náležitosti A
Grafická, stylistická úprava a pravopis B
Práce s literaturou včetně citací A
Samostatnost studenta při zpracování tématu A

Známka navržená vedoucím: B

Diplomant v úvodní části své práce popisuje problematiku dynamického programování, rozebírá vybrané typy úloh, způsoby jejich řešení a uvádí příklady dostupných programových systémů pro řešení úloh dynamického programování. Hlavní přínos práce pak spočívá v navržení a implementaci algoritmů pro vybrané úlohy dynamického programování a to jak deterministické tak i stochastické. Pro deterministické úlohy byl navržen též univerzální řešič, který umožňuje zadat charakter úlohy pomocí rovnic. Při implementaci autor s výhodou používá objektových vlastností jazyka C# a dalších možností platformy Microsoft .NET. Autor však dostatečně nevyužívá možností moderního nástroje pro uspořádání zdrojového kódu, což mírně snižuje přehlednost. V samotné práci se vyskytují drobné chyby způsobené patrně závěrečným spěchem. (Např. na str. 24 má být patrně "celočíselné programování" nikoli "integrální", obr. 31 neodpovídá konečné podobě uživatelského rozhraní.)
Kritérium hodnocení Známka
Splnění požadavků a cílů zadání A
Postup a rozsah řešení, adekvátnost použitých metod A
Vlastní přínos a originalita B
Schopnost interpretovat dosaž. vysledky a vyvozovat z nich závěry A
Využitelnost výsledků v praxi nebo teorii A
Logické uspořádání práce a formální náležitosti B
Grafická, stylistická úprava a pravopis A
Práce s literaturou včetně citací A

Známka navržená oponentem: A