Přístupnostní navigace
E-přihláška
Vyhledávání Vyhledat Zavřít
bakalářská práce
Autor práce: Bc. Michal Pavlíček
Ak. rok: 2024/2025
Vedoucí: Ing. Lukáš Semerád, Ph.D.
Oponent: Ing. Gabriela Nečasová, Ph.D.
Tato bakalářská práce se zabývá návrhem a implementací online hry Scrabble s integrovanou umělou inteligencí pro analýzu partií. Práce popisuje vývoj webové aplikace umožňující hraní online, hru proti počítači a analýzu odehraných partií. Implementovaná umělá inteligence používá datovou strukturu GADDAG pro rychlé generování tahů, Monte Carlo simulace a Alfa-beta ořezávání pro optimalizaci herních strategií. Experimenty potvrzují zlepšení výkonu algoritmu při použití pokročilých metod oproti jednoduché hladové strategii. Výsledná webová aplikace je volně dostupná a umožňuje hraní Scrabblu online s moderním uživatelským rozhraním.
Scrabble, umělá inteligence, Monte Carlo, Alfa-beta ořezávání, GADDAG, Rust, SvelteKit, FastAPI
Termín obhajoby
20.06.2025
Výsledek obhajoby
obhájeno (práce byla úspěšně obhájena)
Klasifikace
A
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 k obhajobě
Jazyk práce
čeština
Fakulta
Fakulta informačních technologií
Ústav
Ústav inteligentních systémů
Studijní program
Informační technologie (BIT)
Složení komise
prof. RNDr. Alexandr Meduna, CSc. (předseda) Ing. Martin Hrubý, Ph.D. (člen) Ing. Tomáš Milet, Ph.D. (člen) Ing. Zbyněk Křivka, Ph.D. (člen) Ing. Marcela Zachariášová, Ph.D. (člen)
Posudek vedoucíhoIng. Lukáš Semerád, Ph.D.
Vzhledem k bezproblémové spolupráci, ukázkové samostatnosti studenta a skvělému výsledku navrhuji práci hodnotit stupněm výborně (A).
Ačkoliv se zadání jeví jako standardně obtížné, student nechtěl pouze implementovat existující nástroje, ale vytvořit si kompletní řešení sám. Z toho důvodu bylo zadání změněno v průběhu. Z důvodu kompletní tvorby webové aplikace proto hodnotím zadání jako mírně náročnější. Výsledné řešení je velice zdařilé a dokonce i veřejně přístupné.
Student sháněl literární zdroje samostatně, s jejich výběrem souhlasím.
Se studentem jsme komunikovali na pravidelné bázi po celou dobu spolupráce. První konzultace proběhly již před rokem.
Práce byla dokončena s předstihem a její finální text s aplikací mi byl včas představen.
Výsledné dílo je veřejně dostupné na webových stránkách studenta.
Známka navržená vedoucím: A
Posudek oponentaIng. Gabriela Nečasová, Ph.D.
Pěkná práce. Na hodnocení má největší vliv kvalita práce a výsledků.Dále velmi pozitivně hodnotím kapitolu 4, která pojednává o návrhu a pbsahuje i důkladnou analýzu existujících řešení. Kapitola 5 se věnuje podrobnému popisu implementace a kapitola 6 evaluaci zvoleného řešení. Dále oceňuji, že student již do práce uvedl možná budoucí rozšíření (závěr kapitoly 6).
Doporučuji práci k obhajobě a práci hodnotím stupněm A (90 bodů).
Stupeň hodnocení: průměrně obtížné zadání
Práce vykazuje vysokou prezentační úroveň. Práce je velmi dobře strukturovaná, logicky členěná a jednotlivé kapitoly na sebe přirozeně navazují. Text je uspořádán podle jasné a přehledné osnovy. Začíná teoretickým úvodem do pravidel Scrabblu a dále postupuje přes metody umělé inteligence, návrh architektury systému, implementaci, až po testování a závěr.
Formální úprava je na dobré úrovni, ovšem lze v ní najít několik drobných jazykových nedostatků, které mírně snižují její formální úroveň. Níže uvádím nejvýznamnější z nich:
Student navrhl a implementoval plnohodnotnou webovou aplikaci pro hru Scrabble, která zahrnuje:
online hru více hráčů,
hru proti umělé inteligenci,
a možnost analýzy odehraných partií.
Systém zahrnuje klientskou část (SvelteKit), serverovou část (FastAPI v Pythonu) a výkonný backend pro AI v jazyce Rust. Architektura je promyšlená, modulární a srozumitelná. Použité algoritmy (včetně GADDAG, Monte Carlo simulací a Alfa-beta ořezávání) byly správně zvoleny vzhledem k požadované funkcionalitě. Aplikace byla reálně nasazena na webu skrebl.cz což potvrzuje její funkčnost a použitelnost.
Dokumentace implementace je velmi podrobná, přehledná a pokrývá jak architektonické rozhodnutí, tak konkrétní algoritmické řešení. Nechybí diagramy, pseudokód, příklady datových struktur (např. GADDAG), popis jednotlivých komponent a ukázky použití. Popis je dostatečně technický, přesto srozumitelný i méně zasvěcenému čtenáři. Dokumentace splňuje akademické i praktické standardy.
Student provedl sérii testů:
uživatelské testování aplikace (včetně zpětné vazby),
evaluaci výkonnosti jednotlivých strategií AI pomocí experimentů,
srovnání různých algoritmů pro generování a vyhodnocování tahů.
Celkově hodotím realizační výstup práce za velmi zdařilý.
Práce lze charakterizovat jako rozšiřující již publikované výsledky, zejména v oblasti algoritmů pro Scrabble a metod umělé inteligence, s významnými implementačními inovacemi, vlastním návrhem architektury online platformy, a s praktickým přesahem díky funkční aplikaci dostupné veřejnosti online.
Student přizpůsobil existující AI metody pro českou jazykovou mutaci Scrabblu (což je méně prozkoumaná oblast), navrhl funkční integraci komplexní AI do reálné webové aplikace, provedl vlastní evaluaci účinnosti jednotlivých strategií, a vytvořil modulární systém připravený pro budoucí rozšíření (např. přizpůsobení pro jiné jazyky, trénink AI na základě historických her).
Výsledná webová aplikace má okamžité praktické využití:
pro běžné hráče Scrabble jako tréninkový nebo analytický nástroj,
pro organizátory soutěží jako platforma pro online turnaje,
a potenciálně jako výuková pomůcka při výuce AI a programování herních agentů.
Stupeň hodnocení: zadání splněno
Všechny body zadání jsou splněny.
Stupeň hodnocení: přesahuje obvyklé rozmezí
Text je rozsáhlejší (přibližně 90 normostran), ovšem je to v pořádku vzhledem k charakteru práce.
Student zvolil literaturu vhodnou k dané problematice, citoval z 37 zdrojů. Všechny citace jsou úplné a v souladu se zvyklostmi a normami. Zdroje jsou relevantní.
Známka navržená oponentem: A
Odpovědnost: Mgr. et Mgr. Hana Odstrčilová