Ing. Tomáš Kalvoda, Ph.D.

Závěrečné práce

Bakalářské práce

Numerické simulace kvantových systémů

Autor
Josef Donoval
Rok
2012
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Matěj Tušek, Ph.D.

Webový informační systém pro podporu administrace pracovních výkazů projektů ESF

Autor
Lukáš Kočí
Rok
2013
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Daniel Vašata, Ph.D.

Webový informační systém pro správu přihlášek na kurzy

Autor
Tomáš Prchal
Rok
2013
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Daniel Vašata, Ph.D.

Řešení obyčejných diferenciálních rovnic v SAGE

Autor
Ivan Kutasov
Rok
2015
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
doc. Ing. Štěpán Starosta, Ph.D.

Interaktivní webová demonstrace Fermiho akcelerace

Autor
Vladimír Kotýnek
Rok
2013
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Daniel Vašata, Ph.D.

Analýza zvukových signálů a rozpoznávání povelů

Autor
Tomáš Frank
Rok
2013
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Mgr. Jan Starý, Ph.D.

Systém pro podporu plánování a organizace času na fakultě

Autor
Tibor Szolár
Rok
2013
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Ivan Halaška

Simulace kvantové částice ve zkrouceném 2D vlnovodu

Autor
Jakub Waller
Rok
2014
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Daniel Vašata, Ph.D.

Algoritmy pro výpočet maticové exponenciály v Sage

Autor
Jakub Tomanek
Rok
2015
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
doc. Ing. Štěpán Starosta, Ph.D.
Anotace
V této práci se budeme zabývat algoritmy pro numerický výpočet maticové exponenciály. Zvýšenou pozornost budeme věnovat open-source programu Sage, pro který budeme implementovat méně vídanou Krylovovu metodu. Ta se od ostatních metod podstatně liší přístupem k řešení problému. Postupně si popíšeme všechny klíčové části metody, uvedeme si přístupy k její implementaci a nakonec otestujeme její přesnost a výkonnost vůči existujícím metodám v programu Sage. V samotném závěru si uvedeme praktickou ukázku využitelnosti naší implementace Krylovovy metody na reálném fyzikálním problému vedení tepla.

Vizualizace implicitně zadaných ploch v SageMath

Autor
Jan Koza
Rok
2017
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
doc. Ing. Štěpán Starosta, Ph.D.
Anotace
Tato bakalářská práce se zabývá algoritmy pro numerické vykreslování implicitně zadaných ploch. Porovnává vlastnosti vybraných algoritmů a uvádí jejich výhody a nevýhody. Podrobněji zkoumá algoritmus Dual Marching Cubes. Součástí práce je implementace tohoto algoritmu v open-source algebraickém systému SageMath a porovnání s algoritmem Marching Cubes, který je v systému dostupný. Implementované funkce jsou použity k vytvoření vizualizace elektronových orbitalů vodíku a prezentovány na dalších zajímavých příkladech implicitních ploch.

Kolaborativní tvorba LaTeX dokumentů s podporou Gitu

Autor
Filip Chalupa
Rok
2017
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Ondřej Guth, Ph.D.
Anotace
Předmětem této bakalářské práce je analýza tvorby LaTeXových dokumentů v týmu a řešení odhalených problémů. Následující text popisuje fázi zkoumání, návrh řešení a popis jeho implementace v podobě aplikace, pro kterou je podrobněji představeno uživatelské rozhraní, způsob distribuce mezi uživatele, testování a vlastnosti použitých knihoven.

Julia rozhraní pro knihovnu Triangle

Autor
Martin Kuzma
Rok
2017
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Mgr. Jan Starý, Ph.D.
Anotace
Cílem této práce je navrhnout a implementovat rozhraní pro knihovnu Triangle v jazyce Julia. Triangle je knihovna napsaná v jazyce C a umožňuje generovat mimo jiné Delaunayho triangulace. Jejím autorem je Jonathan Shewchuk. Výsledkem je balíček, který umí pracovat s Triangle v jazyce Julia. Balíček také umožňuje vygenerovat graf triangulace. Testování se provádí jednotkovými testy.

Modul pro symbolické testování odpovědí v matematických kvízech

Autor
Ondřej Naňka
Rok
2018
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Daniel Vašata, Ph.D.
Anotace
Tato práce se zabývá návrhem a implementací modulu pro symbolické testování odpovědí v matematických kvízech s důrazem na škálovatelnost vlastního modulu.

Neřízená segmentace písní v audiozáznamu koncertu

Autor
Petr Nevyhoštěný
Rok
2018
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
doc. Ing. Ivan Šimeček, Ph.D.
Anotace
Desítky milionů celých živých koncertů jsou k dispozici na službách pro sdílení video- a audiozáznamů, a seznamy písní spolu s časovými údaji jsou podstatnou informací, která je s nimi poskytována. Jelikož je ruční anotace repetitivní a časově náročná, automatický nástroj je velmi hodnotný. Tato bakalářská práce předkládá řešení pro neřízenou segmentaci písní v audiozáznamu koncertu. Podle mých poznatků je to vůbec první pokus o řešení problému takto zadefinovaného. Hranice segmentů jsou určeny pomocí široce používaného testu logaritmického věrohodnostního poměru a tři různé modely pro klasifikaci jsou představeny. Na shromážděném datasetu, obsahujícím různé hudební žánry a kvality zvuku, dosahuje implementovaný systém 88,92% f-skóre a 81,30% specifičnosti správně označených sekund audio signálu. Celkové výsledky ukazují, že je jeho detekce hranic poměrně úspěšná, a může tedy sloužit jako obstojný základní model k porovnání s budoucími řešeními.

Metoda pohyblivých vážených nejmenších čtverců v Julia

Autor
Tung Anh Vu
Rok
2018
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Mgr. Jan Starý, Ph.D.
Anotace
V této práci byla implementována metoda pohyblivých vážených nejmenších čtverců v jazyce Julia. Metoda byla zkoumána jak po teoretické stránce, tak i experimentálně. Byl formulován problém hledání sousedů v daném rozsahu a předvedla se 2 řešení toho problému. Také byl vytvořen krátký popis programovacího jazyka Julia.

Optimalizační metody ve znalostním inženýrství

Autor
Vladislav Stankov
Rok
2019
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Karel Klouda, Ph.D.
Anotace
Tato práce se zabývá problematikou matematické optimalizace a ukazuje, jak ji lze aplikovat na problematiku znalostního inženýrství. Nejdříve se zaměříme na teoretické základy matematické optimalizace a formulujeme základní optimalizační problémy jako lineární programování, kvadratické programování či optimalizaci vektorů. Dále se zaměříme na vybrané problémy z oblasti znalostního inženýrství a vyjádříme je v rámci optimalizace. Dále prezentujeme metody řešení optimalizačních problémů, konkrétně metody sestupu, Newtonovu metodu a bariérovou metodu. Nakonec se přesuneme do praktické části, kde demonstrujeme různé nástroje pro řešení optimalizačních úloh.

Sémantické sítě matematických znalostí

Autor
Ondřej Šodek
Rok
2019
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Daniel Dombek, Ph.D.
Anotace
Tato bakalářská práce se zabývá zpracováním matematických pojmů do podoby sémantické sítě a využití těchto vztahů k obohacení výsledné vizualizace těchto matematických pojmů. Za tímto účelem byl vytvořen program zpracovávající matematická data ve specifickém formátu, extrahuje sémantické vztahy mezi pojmy a následně vytváří výstup ve webovém rozhraní. Tato vizualizace má za cíl pomoci studentům lépe pochopit vztahy mezi matematickými pojmy.

Analýza veřejných systémů pro předpovědi počasí

Autor
Radka Bodnárová
Rok
2020
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
doc. Ing. Ivan Šimeček, Ph.D.
Anotace
Táto bakalárska práca sa zaoberá analyzovaním úspešnosti služieb pre pred- povede počasia. Preskúmane sú on-line služby verejne poskytujúce strojovo spracovateľné dáta o predpovediach. Navrhnutý a implementovaný je systém pre automatický zber dát z vybraných služieb. Nad nazbieranými dátami je vykonaná analýza predpovedí a graficky je zobrazená presnosť služieb v zá- vislosti na čase, lokalite a rôznych ukazateľoch počasia.

Interaktivní podpora výuky v aplikaci MARAST

Autor
Rem Lohinov
Rok
2020
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Eliška Šestáková
Anotace
Tato bakalářská práce se zabývá přidáním technik interaktivní výuky do webového portálu MARAST, který se aktivně využívá pro podporu výuky matematických předmětů na Fakultě informačních technologií ČVUT v Praze. Obsahem práce je seznámení se s vnitřní strukturou zmíněného portálu, v něm používanými technologiemi, nezbytnou částí je také analýza požadavků potenciálních uživatelů. Cílem této práce je návrh a implementace nových funkčností zaměřených na zvětšení míry interakce mezi učiteli a studenty během výuky.

Editor zdrojových kódů WooWoo dokumentů

Autor
David Straka
Rok
2021
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Anotace
Tato práce se zabývá návrhem, implementací a otestováním rozšíření editoru Atom pro usnadnění tvorby WooWoo dokumentů. Důraz je kladen zejména na přehlednou prezentaci logické struktury dokumentů využívajících existující šablony. Součástí práce je také seznámení se s formátem WooWoo, rešerše možností rozšíření stávajících editorů nebo možností zobrazování matematických výrazů a různých grafických objektů.

Algoritmy pro výpočet vlastních čísel matic

Autor
Lucie Procházková
Rok
2021
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
doc. Ing. Ivan Šimeček, Ph.D.
Anotace
Cílem práce je shrnout historii a aplikace výpočtu vlastních čísel. Práce analyzuje některé algoritmy používané pro výpočet vlastních čísel. V praktické části práce je implementován QR algoritmus s~Givensovými rotacemi v~jazyce Julia~a~tato implementace je porovnána s~již dostupnými implementacemi tohoto algoritmu~v~prostředí Mathematica~a~knihovně LAPACK. Implementace dosahuje horších časů i přesnosti než srovnávané alternativy, na rozdíl od nich však poskytuje možnost ovlivňovat přesnost výsledku a poskytuje výpis algoritmu.

On-line prozkoumávání fraktálů pomocí Julia

Autor
Martin Ondejka
Rok
2022
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
doc. Ing. Ivan Šimeček, Ph.D.
Anotace
Hlavným cieľom tejto práce je implementácia webovej aplikácie na vizualizáciu fraktálov v programovacom jazyku Julia. Účel tejto aplikácie má slúžiť ako proof-of-concept pre budúce aplikácie s náročnými výpočetnými požiadavkami. Pre dosiahnutie tohto cieľu, sme navrhli architektúru riešenia s vlastnosťami prispôsobenými požiadavkám a následne sme ju implementovali s detailným vysvetlením.

Generátor myšlenkových map z WooWoo dokumentů

Autor
Matěj Frnka
Rok
2022
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Anotace
Tato práce se zabývá vytvořením nástroje pro automatickou tvorbu myšlenkových map z WooWoo souborů napsaných podle specifikace FIT-šablona. Vytvořená myšlenková mapa slouží jako studijní materiál zobrazující vybrané pojmy z WooWoo souborů a znázorňující jejich vztahy. Studijní materiál je interaktivní a jednoduše dostupný pro studenty ve formě webové stránky. V práci je řešena extrakce pojmů z textového souboru WooWoo pomocí stejnojmenné knihovny WooWoo, rozložení pojmů a jejich vztahů do myšlenkové mapy pomocí algoritmů pro vizualizaci grafů, určení důležitosti pojmů pomocí algoritmů pro určení centrality a interaktivní zobrazení pojmů a jejich vztahů jako myšlenkovou mapu ve webové aplikaci. Nástroj se v době odevzdání této práce využívá na Fakultě informačních technologií ČVUT.

Klasifikace časových řad v Julia

Autor
Antonín Kříž
Rok
2023
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Mgr. Petr Novák, Ph.D.
Anotace
Klasifikace časových řad je komplexní poblém v oboru strojového učení. Moderní metody řešící tento problém jsou náročné na výkon a jejich efektivní implementace je důležitější než kdy dřív. Tato práce se zabývá analýzou metod pro klasifikaci časových řad a i efektivně implementuje metody MINIROCKET a k-Nejbližších Sousedů s Dynamic Time Warping. V rámci této práce je navrženo a implementováno několik různých optimalizací těchto algoritmů v porovnání s jejich implementací v Python balíčku sktime. Mezi tyto optimalizace, které jsou podrobně popsány, patří redukce nutných alokací paměti, paralelizace a vektorizace výpočtů a redukce nutných kroků algoritmu pro dosažení výsledku. Výkonnost této implementace je experimentálně ověřena na 113 datasetech z archivu časových řad Kalifornské univerzity v Riverside, kdy dosahuje až 17krát vyššího výkonu než tytéž algoritmy v balíčku sktime.

Implementace Q* algoritmu v Julia

Autor
Jiří Klubal
Rok
2024
Typ
Bakalářská práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
Ing. Karel Klouda, Ph.D.
Anotace
V této bakalářské práci je představen algoritmus Q*, společně s algoritmem A*, na kterém je založen. Je vysvětlen systém automatického získávání heuristických funkcí pomocí metod posilovaného učení, konkrétně algoritmy Deep Q-learning, DAVI a navrhnutými variantami DQVI a naivní DQVI. Všechny algoritmy jsou implementovány v jazyce Julia. Za ukázkový problém je zvoleno řazení palačinek, pro který je navrhnuto virtuální rozhraní. Veškeré algoritmy i rozhraní jsou implementovány za účelem snadné upravitelnosti a znovupoužitelnosti i v jiných problémech či specifikacích, než je tato bakalářská práce. Na problému o velikosti deseti palačinek jsou natrénované neuronové sítě k aproximování heuristické funkce pro algoritmus A* a Q*. Sítě jsou mezi sebou porovnané. Ukazuje se, že zatímco algoritmus DQVI se učí více než pětkrát rychleji než algoritmus DAVI nebo naivní DQVI, je po učení pro stejný počet iterací méně efektivní. Algoritmus Deep Q-learning dosahuje dobrých výsledků, často u něj ale dochází k divergenci. Algoritmy A* a Q* jsou následně pro vybrané heuristické funkce porovnány mezi sebou. V problému řešeném touto bakalářskou prací je algoritmus A* rychlejší a přesnější než algoritmus Q*, který ale využívá méně vyhodnocení neuronových sítí.

Diplomové práce

Webová aplikace pro on-line opravování ručně psaných dokumentů

Autor
Jan Petržílka
Rok
2023
Typ
Diplomová práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Oponenti
doc. Ing. Ivan Šimeček, Ph.D.
Anotace
Obsahem práce je implementace webové aplikace podle požadavků klíčových uživatelů z Katedry aplikované matematiky FIT ČVUT v Praze. Vstupem aplikace jsou oskenované studentské práce nahrané do aplikace studenty nebo vyučujícími. Přiřazení jednotlivých stránek odevzdané práce podle studentů nebo samostatně hodnocených částí úloh je prováděno ručně nebo s využitím QR kódů. QR kódy jsou studentům přiřazeny pomocí mobilní části webové aplikace. Učitelé opravují práce studentů pomocí zabudovaného editoru. Aplikace je integrovaná na školní informační systém KOS a na fakultní systém pro evidenci bodového hodnocení studentů Grades. Uživatelské rozhraní je provedeno česky a anglicky s plně parametrizovanou lokalizací. Serverová část je implementovaná v Javě, uživatelské rozhraní ve frameworku React s editorem napsaným v JavaScriptu. Pro ukládání dat je použita databáze PostgreSQL.

Language Server pro WooWoo dokumenty

Autor
Michal Janeček
Rok
2024
Typ
Diplomová práce
Vedoucí
Ing. Tomáš Kalvoda, Ph.D.
Anotace
Tato diplomová práce vylepšuje proces tvorby obsahu v jazyce WooWoo, který je hojně využíván na Fakultě informačních technologií ČVUT ke tvorbě matematických studijních materiálů. Práce poskytuje ucelený přehled historie, vize, syntaxe a sémantiky jazyka WooWoo a zavádí koncept "WooWoo dialektů"--klíčovou abstrakci pro vývoj jazykových nástrojů pro WooWoo, při zachování jeho doménově agnostické povahy. Hlavním přínosem této práce je návrh a implementace jazykového serveru pro WooWoo, který implementuje protokol Language Server Protocol (LSP) a zahrnuje Tree-sitter gramatiku, tvořící základ pro efektivní parser. Vytvořený jazykový server nabízí několik funkcí, včetně detekce syntaktických chyb, auto-doplnění a funkce přechodu k definici. Práce dále podrobně popisuje integraci jazykového serveru do rozšíření pro Visual Studio Code a jeho distribuci na populárních platformách, což zajišťuje snadnou dostupnost a instalaci. V době zveřejnění této práce jsou již tyto nástroje aktivně využívány autory ve WooWoo.