Implementation of Q* algorithm in Julia

dc.contributor.advisor Kalvoda, Tomáš
dc.contributor.author Klubal, Jiří
dc.contributor.referee Klouda, Karel
dc.date.accessioned 2024-06-19T22:52:20Z
dc.date.available 2024-06-19T22:52:20Z
dc.date.issued 2024-06-19
dc.description.abstract 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í. cs
dc.description.abstract In this bachelor thesis, the Q* algorithm is introduced, together with the A* algorithm on which it is based. A system for automatic creation of heuristic function using reinforcement learning methods is explained, specifically the Deep Q-learning, DAVI and its proposed variants DQVI and naive DQVI. All algorithms are implemented in the Julia language. The pancake sorting puzzle is chosen as a toy problem and a virtual interface is designed for it. All algorithms and interfaces are implemented for easy modifiability and reusability in problems and specifications outside of the scope of this thesis. Neural networks are trained on a problem size of ten pancakes to approximate heuristic functions for the A* and Q* algorithms. The networks are compared to each other. It turns out that while the DQVI algorithm learns more than five times faster than the DAVI or naive DQVI algorithm, it is less efficient after learning for the same number of iterations. The Deep Q-learning algorithm achieves good results, but it often diverges. The A* and Q* algorithms are then compared with each other. In the problem researched in this thesis, the A* algorithm is faster and more accurate than the Q* algorithm, which however uses less neural network evaluation. en
dc.identifier KOS-1240469177005
dc.identifier.uri http://hdl.handle.net/10467/115873
dc.publisher České vysoké učení technické v Praze cs
dc.publisher Czech Technical University in Prague en
dc.rights A university thesis is a work protected by the Copyright Act of the Czech Republic. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one`s own expense. The use of thesis should be in compliance with the Copyright Act. en
dc.rights Vysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem v platném znění. cs
dc.subject Q* cs
dc.subject A* cs
dc.subject algoritmus hledání cesty cs
dc.subject posilované učení cs
dc.subject hluboké neuronové sítě cs
dc.subject Julia cs
dc.subject Q* en
dc.subject A* en
dc.subject pathfinding algorithm en
dc.subject reinforcement learning en
dc.subject deep neural networks en
dc.subject Julia en
dc.title Implementace Q* algoritmu v Julia cs
dc.title Implementation of Q* algorithm in Julia en
dc.type bachelor thesis en
dspace.entity.type Publication
relation.isAdvisorOfPublication 256222e0-7f71-49ec-9d6e-c3e1c7de7a2f
relation.isAdvisorOfPublication.latestForDiscovery 256222e0-7f71-49ec-9d6e-c3e1c7de7a2f
relation.isAuthorOfPublication 47d4dc6d-299d-459b-b64e-fdfc6803f4fd
relation.isAuthorOfPublication.latestForDiscovery 47d4dc6d-299d-459b-b64e-fdfc6803f4fd
relation.isRefereeOfPublication 936ee67a-3922-40b7-a6d5-b0f99506c98d
relation.isRefereeOfPublication.latestForDiscovery 936ee67a-3922-40b7-a6d5-b0f99506c98d
theses.degree.discipline Umělá inteligence 2021 cs
theses.degree.grantor katedra aplikované matematiky cs
theses.degree.programme Informatika cs

Files

Original bundle

Now showing 1 - 3 of 3
Name:
F8-BP-2024-Klubal-Jiri-thesis.pdf
Size:
1.08 MB
Format:
Adobe Portable Document Format
Description:
PLNY_TEXT
Name:
F8-BP-2024-posudek-Kalvoda_Tomas.pdf
Size:
45.12 KB
Format:
Adobe Portable Document Format
Description:
POSUDEK
Name:
F8-BP-2024-posudek-Klouda_Karel.pdf
Size:
42.85 KB
Format:
Adobe Portable Document Format
Description:
POSUDEK