diplomová práce

Šachy a umělá inteligence

Text práce 1.85 MB

Autor práce: Ing. Miloslav Macůrek

Ak. rok: 2018/2019

Vedoucí: doc. Ing. Radomil Matoušek, Ph.D.

Oponent: RNDr. Jiří Dvořák, CSc.

Abstrakt:

Práce se zabývá algoritmy umělé inteligence pro hru šachy a tvorbou programu, který je implementuje. Rešerše obsahuje základy šachové hry a její historii se zaměřením na počítačový šach, klasické metody v šachovém programování a základní shrnutí neuronových sítí s možnostmi jejich aplikace. Vybrané algoritmy jsou implementovány v navrženém šachovém programu „Beast“.

Klíčová slova:

Šachy, umělá inteligence, neuronové sítě, prohledávací algoritmy.

Termín obhajoby

19.6.2019

Výsledek obhajoby

obhájeno (práce byla úspěšně obhájena)

znakmkaAznamka

Klasifikace

A

Průběh obhajoby

Student seznámil komisi s obsahem své DP a posléze zodpověděl dotazy oponenta. Komisí byly položeny následující otázky: Nevýhoda ReLU Možnost pokračování této práce - velice kladně ohodnocena DP Použití optimalizačních metod Konvoluční neuronová síť Změny architektury

Jazyk práce

čeština

Fakulta

Ústav

Studijní obor

Aplikovaná informatika a řízení (M-AIŘ)

Složení komise

prof. Ing. Miluše Vítečková, CSc. (předseda)
doc. Ing. Radomil Matoušek, Ph.D. (místopředseda)
RNDr. Martin Kuba, Ph.D. (člen)
prof. Ing. Pavel Ošmera, CSc. (člen)
doc. Ing. Václav Jirsík, CSc. (člen)

Cílem práce bylo proniknout do problematiky tvorby algoritmů umělé inteligence pro hru šachy a implementovat vlastní řešení umělého hráče využívajícího jak standardní heuristiky, tak metody strojového učení (neuronové sítě). Uvedené zadání je bezesporu jedním z top okruhů aplikací současné AI a nemělo za cíl konkurovat programům typu AlphaZero, spíše prozkoumat možnosti v tomto směru. Práce je psána přehledně a čtivě, přičemž dobře dokumentuje autorův přehled v dané oblasti. Lehce nepříjemně působí pouze kapitola 4., kterou hodnotím spíše jako méně konzistentní poznámku, vnášející jisté disturbance do jinak velmi dobře zpracované práce. Praktická realizace prokazuje v daném kontextu výborné výsledky a je ukázkou autorových schopností v oblasti aplikované informatiky. Přes drobné chyby, které nechám na laskavém pohledu oponenta, hodnotím práci jako velmi dobrou až výbornou, s těžištěm k praktickým výsledkům, jako výbornou.
Kritérium hodnocení Známka
Splnění požadavků a cílů zadání A
Postup a rozsah řešení, adekvátnost použitých metod A
Vlastní přínos a originalita A
Schopnost interpretovat dosažené výsledky a vyvozovat z nich závěry B
Využitelnost výsledků v praxi nebo teorii A
Logické uspořádání práce a formální náležitosti B
Grafická, stylistická úprava a pravopis B
Práce s literaturou včetně citací A
Samostatnost studenta při zpracování tématu A

Známka navržená vedoucím: A

Cílem diplomové práce bylo vypracování rešerše šachových programů, implementace vlastního šachového programu využívajícího umělou inteligenci a provedení a vyhodnocení experimentů. Toto zadání práce bylo zcela splněno. Jedná se o rozsáhlou a složitou problematiku, se kterou se diplomant úspěšně vyrovnal.
Po popisu problematiky počítačového šachu ve druhé kapitole se ve třetí kapitole autor zabývá klasickými herními algoritmy. Další kapitola je ne zcela vhodně nazvána poznámky k neuronovým sítím. Úspěšnost neuronových sítí v herních algoritmech by si zasloužila něco více než jen poznámky. V této kapitole mohly být více popsány metody učení neuronových sítí, a to zejména ty, které autor použil pro svou aplikaci Beast. Kapitola 5 se zabývá způsoby hodnocení herní síly. Těžištěm práce jsou kapitoly 6 a 7, které jsou věnovány implementaci autorova šachového programu Beast a provedeným experimentům, jejichž zhodnocení dokumentuje úspěšnost vytvořeného programu. Autor prokázal dobrý přehled a vysokou programátorskou erudici při výběru softwarových nástrojů a zajištění jejich kooperace.
Práce je psána převážně srozumitelným stylem. Výjimkou je příliš stručný popis algoritmu alfa-beta. Princip této metody na základě popisu ilustračního obrázku 1 nemusí být pro nepoučeného čtenáře zcela pochopitelný. Dále při popisu učení neuronové sítě v podkapitole 6.5 by bylo vhodné uvést vzorce ztrátových funkcí.
Práce má dobrou úpravu a obsahuje jen velmi málo překlepů, gramatických chyb a stylistických nedostatků. Pokud jde o práci s literaturou, nedostatkem jsou zmínky o dvou článcích týkajících se programu AlphaZero (podkapitoly 2.1 a 4.3), na které chybějí odkazy.
Kritérium hodnocení Známka
Splnění požadavků a cílů zadání A
Postup a rozsah řešení, adekvátnost použitých metod A
Vlastní přínos a originalita A
Schopnost interpretovat dosaž. výsledky a vyvozovat z nich závěry A
Využitelnost výsledků v praxi nebo teorii A
Logické uspořádání práce a formální náležitosti B
Grafická, stylistická úprava a pravopis A
Práce s literaturou včetně citací B

Známka navržená oponentem: A