Video games play a critical role in developing and evaluating futuristic AI and ML models. Thanks to their performance in a variety of tests, the gaming world has been used time and again as a playground for testing AI devices.
This isn’t a new phenomenon, but one that goes back at least 50 years. The Nimrod digital computer built by Ferranti in 1951 is widely touted as the first known example of the use of AI in gaming. Mega Man 2 was used by Japanese researchers to test AI agents and the AI system Libratus was used to beat pro players of Texas Hold ‘Em Poker to make technological and gaming history.
The Snake game is quite a familiar feature of many childhoods because of its simple objective and playing process. The player controls the snake by eating apples which are spawned at random locations to optimize the game. For every time the snake consumes an apple, the snake must begin to expand one grid. And the one rule? Don’t let the snake collide with anything.
To take things one step further, global researchers and have been applying neural networks and machine learning algorithms to this legendary game.
If you’re a student in a neural network course or a machine learning course, this is fertile ground for experiments of your own! Here are some case studies born of such experiments:
Creating the Snake Game Using Deep Reinforcement Learning
In this experiment, the researchers used a Convolutional Neural Network (CNN) that had been trained with a Q-learning variant. The aim of the experiment was to use a Deep Reinforcement Learning model in enabling a self-ruling agent to play the game with the constraints getting stricter as time passes.
A reward mechanism was also designed to train the network, make use of a training gap strategy to circumvent training during target changes and categories a variety of experiences for better training.
The final results of the experiment showed that the agent outshone the ground-level DQN model. It even surpassed human-level performances in terms of high scores and duration of survival.
Playing the Snake Game Using Genetic Algorithms and Neural Networks
Researchers at a Polish university used a framework of a neural network that essentially determined what action to take from any given data at the time. The researchers referred to the neural network as “DNA”– it functioned as the “brain” of the snake, so to speak, due to its role in influencing decisions.
The class has patterns with weights as well as other patterns with biases, reflecting each neural network layer. Next, a function is created that allows the calculation of performance. In this case, the performance included the number of moves that the snake executed without dying as well as the scores.
The neural networks training that were used had one inconspicuous layer with six neurons as well as a genetic algorithm to identify the best possible methods and parameters. The population of snakes was first generated and allowed to play so that researchers could identify the number of steps and the count of apples that were consumed.
Based on this, the researchers identified which snakes performed best and would be selected for breeding. The “parents” were chosen and the DNA– weights and biases– transferred to the new snake produced.
The selection stage was followed by a mutation, where every new snake ended up inheriting a neural network from its “parents”. This was repeated time and time again until the best results were achieved.
The video gaming world has played pivotal roles in enhancing the quality and complexity of AI and ML over the past few decades. It remains to be seen what future advances come of this surprising yet clever collaboration.