Evoluce umělé inteligence pro tahovou strategickou hru
Evolution of artificial intelligence for turn-based strategy game
bachelor thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/116925Identifiers
Study Information System: 214859
Collections
- Kvalifikační práce [10691]
Author
Advisor
Referee
Pergel, Martin
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Programming and Software Systems
Department
Department of Software and Computer Science Education
Date of defense
13. 2. 2020
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Excellent
Keywords (Czech)
tahová strategická hra, umělá inteligence, evoluční algoritmusKeywords (English)
turn-based strategy game, artificial intelligence, evolutionary algorithmPráce se věnuje vývoji umělé inteligence pro zjednodušenou variantu tahové strategické hry Advance Wars. Zaměřujeme se přitom na srovnání možností tradičních ,,ručních'' metod herní AI a metod minimalizujících závislost na doménových znalostech o hře. První část prá- ce obsahuje analýzu hry, přehled vybraných technik herní AI a popis implementace agentů na bázi rozhodovacích stromů, užitkových přístupů a neuronových sítí. Dále prezentujeme výsledky pokusů s učením parametrů agentů a vah neuronových sítí pomocí genetických algoritmů a evolučních strategií. Experimentovali jsme s trénováním agentů proti fixním opo- nentům a s mechanismem kompetitivní koevoluce. Ve druhé části práce detailně prezentujeme vytvořený software. Pro potřeby vývoje AI byl implementován efektivní simulátor hry vhodný pro rychlou hru agentů a sada pomocných nástrojů. Vytvořen byl také plnohodnotný grafický klient umožňující hru lidských i počítačo- vých hráčů.
This thesis deals with the development of artificial intelligence for a simplified version of turn- based strategy game Advance Wars. Our focus is on comparing traditional ''ad-hoc'' game AI methods with methods that minimize the dependance on domain knowledge of the game. First part of the thesis contains analysis of the game, survey of selected game AI techniques and an overview of the implemented agents using decision trees, utility-based methods and neural networks. We present the results of our experiments with learning agent parameters and neural network weights using genetic algorithms and evolutionary strategies. We expe- rimented with training agents against fixed opponents and with competitive coevolution. In the second part we present the created software in detail. An efficient game simulator and a set of utility tools were implemented to support the AI development. A full-fledged graphical client that allows for both human and AI gameplay was also created.