Coevolution of AI and level generation for Super Mario game
Koevoluce AI a generování levelů do hry Super Mario
diplomová práce (OBHÁJENO)

Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/121341Identifikátory
SIS: 223190
Katalog UK: 990023837260106986
Kolekce
- Kvalifikační práce [11335]
Autor
Vedoucí práce
Konzultant práce
Gemrot, Jakub
Oponent práce
Pilát, Martin
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Počítačová grafika a vývoj počítačových her
Katedra / ústav / klinika
Katedra softwaru a výuky informatiky
Datum obhajoby
16. 9. 2020
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
koevoluce, umělá inteligence, procedurální generování obsahu, Super MarioKlíčová slova (anglicky)
coevolution, artificial intelligence, procedural content generation, Super MarioProcedurální generování se nyní používá v mnoha hrách ke tvorbě široké škály obsahu. K jeho hodnocení se často používají hráči ovládaní umělou inteligencí. Procedurálně generovaný obsah lze také použít při učení hráčů ovládaných umělou inteligencí. V obou těchto oborech se používají evoluční algoritmy, ale zřídka společně. V této práci používáme koevoluci hráčů ovládaných umělou inteligencí a generátorů levelů pro plošinovou hru Super Mario. Výhodou koevoluce je to, že hráči ovládaní umělou inteligencí jsou hodnoceni přizpůsobenými generátory levelů, a naopak, generátory levelů jsou hodnoceni přizpůsobenými hráči. Tento přístup má dva výsledky. Prvním z nich je vytvoření posloupnosti generátorů levelů, z nichž každý generuje levely postupně vyšší obtížnosti. Levely gen- erované pomocí sekvence těchto generátorů také odrážejí křivku učení hráče. Tímto je možné za běhu použít generátor odpovídající schopnostem lidského hráče. Druhým výsledkem je hráč ovládaný umělou inteligencí, který se učil postupně obtížnější levely. Toto postupné učení může mít lepší výsledek než standardní postup a zároveň není potřeba předvytvořit trénovací množinu dat.
Procedural Content Generation is now used in many games to generate a wide variety of content. It often uses players controlled by Artificial Intelligence for its evaluation. PCG content can also be used when training AI players to achieve better generalization. In both of these fields, evolutionary algorithms are employed, but they are rarely used together. In this thesis, we use the coevolution of AI players and level generators for platformer game Super Mario. Coevolution's benefit is, that the AI players are evaluated by adapting level generators, and vice versa, level generators are evaluated by adapting AI players. This approach has two results. The first one is a creation of multiple level generators, each generating levels of gradually increased difficulty. Levels generated using a sequence of these generators also mirror the learning curve of the AI player. This can be useful also for human players playing the game for the first time. The second result is an AI player, which was evolved on gradually more difficult levels. Making it learn progressively may yield better results. Using the coevolution also doesn't require any training data set.