AI and Game complexity : Game benchmarking by using reinforcement learning
Lillerovde, Olav (2020)
Lillerovde, Olav
Åbo Akademi
2020
Julkaisu on tekijänoikeussäännösten alainen. Teosta voi lukea ja tulostaa henkilökohtaista käyttöä varten. Käyttö kaupallisiin tarkoituksiin on kielletty.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2020110589436
https://urn.fi/URN:NBN:fi-fe2020110589436
Tiivistelmä
The aim of this thesis is to use different reinforcement learning techniques to produce models that can play video games. The core idea behind reinforcement learning is that an AI can learn to play a game only by exploring its options inside the game environment without us explicitly telling it how to play. The AI-model receives rewards when it performs a good action and penalties when performing a bad action.
Games have been and are often used as benchmarks for AI technologies because they make it easier to evaluate the performance of the AI. By developing AI that can solve increasingly more complex games it creates opportunities for other real-world applications for reinforcement learning such as: computing complex 3D structures of proteins, creating personalised medication treatment plans for patients and predicting early onset retinal disease.
The algorithms we use are Advanced Actor(A2C) Critic, Proximal Policy Gradient (PPO2) and Neuroevolutionary of Augmenting Topologies (NEAT). We use these algorithms to produce AI models for two different games Mortal Kombat and Super Castlevania 4. Both games were released on the Super Nintendo Entertainment System. The games are loaded into a Python environment known as gym-retro which simulates a running Super Nintendo Entertainment System. A Python script hosting a machine learning model is used to interact with the gym-retro environment and read the situation in game and predict the best course of action.
The rewards obtained from training are analysed and compared to each other. Some general statistics are extracted, and a visual evaluation of each model’s performance and game strategy is done.
Games have been and are often used as benchmarks for AI technologies because they make it easier to evaluate the performance of the AI. By developing AI that can solve increasingly more complex games it creates opportunities for other real-world applications for reinforcement learning such as: computing complex 3D structures of proteins, creating personalised medication treatment plans for patients and predicting early onset retinal disease.
The algorithms we use are Advanced Actor(A2C) Critic, Proximal Policy Gradient (PPO2) and Neuroevolutionary of Augmenting Topologies (NEAT). We use these algorithms to produce AI models for two different games Mortal Kombat and Super Castlevania 4. Both games were released on the Super Nintendo Entertainment System. The games are loaded into a Python environment known as gym-retro which simulates a running Super Nintendo Entertainment System. A Python script hosting a machine learning model is used to interact with the gym-retro environment and read the situation in game and predict the best course of action.
The rewards obtained from training are analysed and compared to each other. Some general statistics are extracted, and a visual evaluation of each model’s performance and game strategy is done.