Michal Krupka - vyuka

doc. RNDr. Michal Krupka, Ph.D. Výuka


Předměty

Témata závěrečných prací

Bakalářské

  • Demonstrace OpenGL  |  Zdeněk Bartal
    Cílem práce bude napsat v Common Lispu (LispWorks) program, který bude sloužit k demonstraci možností 3D počítačové grafiky studentům středních škol. Důraz bude kladen na jednoduchost a rychlost předvedení základních funkcí. Součástí práce bude skriptovací jazyk, ve kterém bude napsána jednoduchá aplikace (např. hra).
  • Kartičky pro iOS  |  David Kočíř
    Student napíše aplikaci na učení slovíček pomocí kartiček. Aplikace bude obsahovat pokročilé funkce a bude integrovaná s operačním systémem. Základní požadavky: Import slovíčka z libovolné aplikace, vyhledání překladu pomocí vhodné webové služby (Google Translator), zaznamenání času a polohy při vytvoření kartičky, případně fotky, OCR textu na fotce, synchronizace přes iCloud, inteligentní opakované přezkušování z daného slovíčka podle psychologických poznatků o učení.
  • Zdravotní rádce podle sv. Hildegardy  |  Tereza Šaratová
  • Databáze snů  |  Miroslav Foltýn
    Student napíše aplikaci pro uživatele, kteří pracují na řešení psychických problémů nebo rozvoji osobnosti pomocí analýzy snů. Práce bude zaměřena zejména na analytickou psychologii, tj. jungovský a jungiánský přístup. Aplikace by měla usnadnit obvyklé činnosti při analýze snu jako je např.: hledání souvislostí snu s prožitými událostmi; určení důležitých symbolů a jejich výskytu ve snech, sledování jejich vývoje v sérii snů; kreslení snových výjevů; vytváření geografie snového světa, její časový vývoj a napojení na jednotlivé sny. Aplikace v žádném případě nebude nahrazovat práci, kterou musí uživatel vykonat sám; nebude tedy např. sny vykládat. U studenta se předpokládá živý zájem o problematiku a tvůrčí přístup, opřený zejména o práci s vlastními sny.
  • Vulkan pro LispWorks
    Vývojové prostředí LispWorks, které se používá v několika předmětech na naší katedře, disponuje rozhraním pro verzi 2.1 grafické knihovny OpenGL. Tato verze, stejně jako celá knihovna, jsou zastaralé. Cílem práce je vytvořit podobné rozhraní pro knihovnu Vulkan. Student naprogramuje napojení knihovny na LispWorks a navrhne a zdokumentuje rozhraní pro uživatele. Téma je vhodné pro prakticky zaměřeného studenta s dobrými programátorskými schopnostmi, ochotou řešit technické problémy a pozitivním vztahem ke Common Lispu.
  • 3D tisk  |  Václav Hlavinka
    Cílem práce je vytvořit v prostředí LispWorks inteligentní editor návrhů modelů pro 3D tisk. Hlavní důraz při tvorbě aplikace bude kladen na jednoduchost a pohodlnost práce. Editor bude pracovat se základním formátem souborů STL, případně 3MF. Textová část práce bude obsahovat teoretický úvod k 3D tisku a uživatelskou a programátorskopu dokumentaci.
  • Genetické algoritmy  |  David Hrůza
    Diplomant nastuduje a v práci popíše základní principy genetických algoritmů. Vytvoří implementaci genetických algoritmů použitelnou na standardní úlohy. Dále implementaci rozšíří na oblast genetického programování, kde se zaměří na studium možností vhodné reprezentace programů, např. pomocí stromů, lambda kalkulu či jiné kombinátorové logiky. Součástí práce budou příklady.

Diplomové

  • Lze v Common Lispu napsat rychlý program?
    Kvalitní implementace Common Lispu obsahují různé nástroje na optimalizaci programu na rychlost. Uvádí se, že v některých případech je možné program optimalizovat tak, že bude stejně rychlý jako ekvivalentní program napsaný v C. Cílem práce je toto tvrzení ověřit. Diplomant nastuduje a popíše možnosti optimalizace programu v Common Lispu a pokusí se je použít na vybrané reálné úkoly. Tyto úkoly současně vyřeší i v C a výsledky porovná. Jako hlavní implementace Common Lispu použije LispWorks a SBCL. V práci bude popsáno, do jaké míry (ve srovnání s programy napsanými v C) a za jakých okolností (pro jaké typy úloh, v jakých implementacích) lze programy napsané v Lispu optimalizovat.
  • Predikce neznámých hodnot v datech  |  Jiří Balun
    Student nastuduje a popíše vybrané metody predikce neznámých hodnot v datech s důrazem na tabulková data. Pokusí se modifikovat existující nebo vyvinout nové metody pomocí klasické a fuzzy formální konceptuální analýzy. Jedná se o výzkumné téma. Pod tabulkovými daty si lze představit jakoukoli tabulku (např. z databáze) s binárními nebo odstupňovanými hodnotami. Predikce (odhadování) neznámých hodnot může být např. základem doporučovacího systému, pokud hodnoty znamenají uživatelské preference v nějaké oblasti. (Například pokud data obsahují divácké hodnocení shlédnutých filmů, může systém na základě analogie s podobnými filmy a podobnými diváky odhadnout, zda se divákovi bude líbit film, který zatím neviděl.)
  • Aplikace fuzzy a pravděpodobnostních automatů  |  Martin Jašek
    Cílem práce je zpracovat problematiku fuzzy automatů a pravděpodobnostních automatů s hlavním důrazem na jejich praktické aplikace. Diplomant nastuduje z literatury základní typy fuzzy automatů a jejich vlastnosti a pak se zaměří na studium jejich hlavních aplikací. Totéž udělá pro pravděpodobnostní automaty. Cílem je zjistit, jaké typy fuzzy a pravděpodobnostních automatů nalezly praktické uplatnění a v jakých oblastech. Jedním ze závěrů práce by mělo být i porovnání fuzzy a pravděpodobnostních automatů vzhledem k možnostem jejich použití. Práce bude obsahovat i software, který bude vybrané aplikace fuzzy a pravděpodobnostních automatů demonstrovat.
  • Topologické metody v analýze a zpracování dat
    Použití topologie je moderním trendem v oblasti zpracování velkých dat. Základní myšlenkou je reprezentovat velkou databázi jako mnohodimenzionální útvar (jako jsou v dimenzi 2 např. kulová plocha, anuloid, Möbiova páska apod.) a z jeho topologických vlastností získat informace o datech. Student se seznámí se základy obecné a algebraické topologie a s literaturou o aplikacích topologie v analýze a zpracování dat. V práci podá souhrn vybraných metod a výsledků v této oblasti s důrazem na původní praktické příklady. Ve spolupráci s vedoucím práce se také pokusí navrhnout nové metody, např. v oblastech zkoumaných na KI (formální konceptuální analýza, fuzzy logika).
  • Přibližná minimalizace fuzzy automatů
    Fuzzy automaty představují rozšíření klasických konečných automatů. Narozdíl od klasických automatů je možné u fuzzy automatů uvažovat minimalizaci, vedoucí k automatu, rozpoznávajícímu nikoli tentýž, ale podobný jazyk. Přípustná míra podobnosti (maximální chyba) je předepsána uživatelem. Přibližnou minimalizaci lze chápat jako ztrátovou kompresi, která za cenu přijatelné chyby vede k větší redukci velikosti. Jedná se o nové výzkumné téma. Student nastuduje dostupnou literaturu a pak se ve spolupráci s vedoucím pokusí o původní výsledky.
  • Přesné výpočty s reálnými čísly
    Student nastuduje a v práci shrne současné znalosti o přesné reprezentaci reálných čísel v paměti počítače. Ve spolupráci s vedoucím se pokusí získat nové poznatky. V jazyce Common Lisp naprogramuje základní funkce pro práci s přesně reprezentovanými reálnými čísly, které umožní počítat s reálnými čísly s libovolnou přesností, tj. bez akumulace chyb. V programu využije techniky líného vyhodnocování.
  • Denotativní sémantika funkcionálních programovacích jazyků
    Jedná se o matematickou metodu, která stojí na reprezentaci programů jistými matematickými objekty a z jejich vlastností usuzuje na vlastnosti programů. Funkcionální programovací jazyky, které stojí na typovaném λ-kalkulu, lze takto dobře reprezentovat zejména díky absenci vedlejšího efektu. Jde o výzkumné téma. K pochopení teorie je třeba některých základních poznatků z teorie uspořádaných množin (svazů) a topologie, které diplomant nastuduje a v práci podá. Dále nastuduje a v práci popíše základní poznatky denotativní sémantiky a ve spolupráci s vedoucím se pokusí o nové výsledky.
  • Taxonomie nad neúplnými daty
    V taxonomii jde o klasifikaci kategorií nějakých objektů do vhodné struktury, zejména stromové. Používá se např. v biologii ke klasifikaci organismů do biologických kategorií. Jde o stále živý problém v mnoha oblastech. Na naší katedře byla vyvinuta metoda založená na formální konceptuální analýze, která umožňuje navrhnout taxonomii daných objektů pomocí jejich známých atributů. Metoda byla použita k navržení taxonomie zkamenělin belemnitů (Bělohlávek, Košták, Osička). V diplomové práci půjde o rozšíření metody o možnost práce s neúplnou informací (zkamenělina nemusí být kompletně dochovaná, některé atributy jsou proto neznámé). Diplomant na to použije a v práci vysvětlí existující teorii, kterou se v případě potřeby (která pravděpodobně nastane) pokusí ve spolupráci s vedoucím dále rozvinout. Práce bude založená zejména na zpracování konkrétních podkladů; kromě zkamenělin to mohou být např. údaje o některých druzích hmyzu, případně jiné podle zájmu diplomanta. Výsledkem by měly být navržené taxonomie a nové teoretické poznatky.