Cieľom prvého zadania je, aby ste sa oboznámili s vybranými heuristickými algoritmami pre optimalizáciu a problémami, ktoré sa dajú riešiť pomocou nich. Okrem teoretického rešeršu implementujete vybraný algoritmus a vyskúšate ho na riešenie ukážkového problému. Na zadaní pracujete v trojiciach.
Vypracované zadanie sa skladá z nasledujúcich častí:
- Rešerš skupiny algoritmov - prehľad existujúcej literatúry a ukážkových príkladov, kde bol použitý niektorý z danej skupiny algoritmov na riešenie optimalizačného problému. Vychádzajte z vedeckých prác (články a konferenčné príspevky).
- Implementácia vybraných algoritmov zo skupiny algoritmov - otestujte rôzne varianty alebo ten istý algoritmus s rôznymi parametrami. Výber algoritmov musí vychádzať z rešeršu a voľba musí byť opodstatnená.
- Implementácia ukážkového problému pre testovanie algoritmov - na základe prehľadu literatúry alebo vlastný problém, nie však rovnaký problém ako v druhom zadaní.
- Experimenty na otestovanie algoritmov na ukážkovom probléme - pokus spustite niekoľkokrát a algoritmy porovnajte na základe priemerných dát podľa vybraných metrík.
- Prehľadový článok/report - musí obsahovať:
- popis skupiny algoritmov - základné vlastnosti, inšpirácia
- prehľad literatúry - min. 10 zdrojov a príkladov použitia niektorého zo skupiny algoritmov na riešenie reálneho problému.
- príklady vybraných konkrétnych algoritmov z tejto skupiny - ku každému algoritmu treba poskytnúť aj pseudokód a poukázať na rozdiely medzi jednotlivými variantmi
- popis problémov, ktoré sa dajú riešiť pomocou týchto algoritmov
- popis ukážkového problému a modelu, na ktorom budete testovať algoritmus
- popis experimentov a výsledkov
- Krátka prezentácia (10 minút) so zhrnutím článku