Detail práce

Systém pro pokročilé plánování

Diplomová práce Student: Horký Aleš Akademický rok: 2014/2015 Vedoucí: Drahošová Michaela, Ing., Ph.D.
Název anglicky
System for Advanced Scheduling
Jazyk práce
český
Abstrakt

Tato diplomová práce se zabývá návrhem a implementací softwaru pro automatizované plánování rozvrhů zkoušek a přednášek. Návrh je přizpůsoben pro specifické potřeby Fakulty informačních technologií Vysokého učení technického v Brně. Problém je řešen kombinací genetického a heuristického algoritmu. Pomocí genetického algoritmu je získáno pořadí předmětů v jakém mají být vkládány do výsledného rozvrhu heuristickým algoritmem. Výkonnostně optimalizovaná implementace v jazyce Python 3 umožňuje tento výpočet paralelizovat, díky čemuž lze získat vygenerované rozvrhy již za dobu řádově desítek minut. Provedené experimenty vykazují ve všech sledovaných kritériích přibližně o 13% lepší výsledky, než jakých bylo dosaženo u zkouškových rozvrhů v minulosti. Vývoj byl pravidelně konzultován s osobami zodpovědnými za tvorbu rozvrhů na fakultě. Program bude použit při vytváření zkouškových rozvrhů pro akademický rok 2015/2016.

Klíčová slova

Plánování rozvrhů, genetický algoritmus, heuristický algoritmus, kolizní matice, multikriteriální optimalizace.

Ústav
Studijní program
Informační technologie, obor Inteligentní systémy
Soubory
Stav
obhájeno, hodnocení A
Obhajoba
23. června 2015
Oponent
Průběh obhajoby

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.

Otázky u obhajoby
  1. V práci používáte algoritmus NSGA-II implementovaný v jazyce python. Jedná se o Vaši implementaci nebo o implementaci převzatou?
  2. Jak jste nastavoval pravděpodobnost křížení?
  3. V rámci experimentální části jste určil, že ideální velikost populace je 50 jedinců a mutace 7%. Při testování na reálných datech, jste však nastavil parametry jiné (350 jedinců, 10% mutace). K čemu bylo hledání optimálních parametrů, když jste ve finále nastavil úplně jiné? Jaké úspěšnosti by jste dosáhl s optimálními parametry? Co by jste doporučil běžnému uživateli jako vhodné parametry optimalizace?
  4. Existuje i jiná možnost paralelizace v pythonu? Technika, kterou jste použil vykazuje obrovskou režii a špatné škálování.
Komise
Zbořil František V., doc. Ing., CSc. (UITS FIT VUT), předseda
Bartík Vladimír, Ing., Ph.D. (UIFS FIT VUT), člen
Bidlo Michal, doc. Ing., Ph.D. (UPSY FIT VUT), člen
Hrubý Martin, Ing., Ph.D. (UITS FIT VUT), člen
Meduna Alexander, prof. RNDr., CSc. (UIFS FIT VUT), člen
Steingartner William, Ing., Ph.D. (TUKE), člen
Citace
HORKÝ, Aleš. Systém pro pokročilé plánování. Brno, 2015. Diplomová práce. Vysoké učení technické v Brně, Fakulta informačních technologií. 2015-06-23. Vedoucí práce Drahošová Michaela. Dostupné z: https://www.fit.vut.cz/study/thesis/17111/
BibTeX
@mastersthesis{FITMT17111,
    author = "Ale\v{s} Hork\'{y}",
    type = "Diplomov\'{a} pr\'{a}ce",
    title = "Syst\'{e}m pro pokro\v{c}il\'{e} pl\'{a}nov\'{a}n\'{i}",
    school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}",
    year = 2015,
    location = "Brno, CZ",
    language = "czech",
    url = "https://www.fit.vut.cz/study/thesis/17111/"
}
Nahoru