Teaching Computer to Play games by using Neural
Network & Genetic Algorithms
Problem Statement
This project explores the application of
several machine learning techniques such
as Artificial Neural Network & Genetic
Algorithm to develop an agent capable of
successfully playing Super Mario Bros by
itself. The game presents a partially
observable, episodic problem & thus
provides an interesting and applicable
platform to explore the power of mentioned
machine learning techniques.
Related Work
There are several Neuro-evolution methods
out there. In the scope of this project, we
discover and follow a method of NEAT. It
follows genetic algorithm and tracks genes
with historical markings to allow crossover
between different topologies, protects
innovation via speciation.
Solution/Experiment/Design
Fig1: A training picture of Mario Bros„
Artificial neural network is implemented and
trained by using genetic algorithm to take on
this problem. We designed the fitness
function ourselves and let the agent run to
measure the max fitness it can achieve.
Implementation
The agent is developed by using Lua
Programming Language on BizHawk
emulator and Super Mario Bros (Japanese
edition). We implement a Neural Network
which takes the input as all the sprites in the
screen and train it as well as make it evolve
by using Genetic algorithm and Neuro-
evolution of Augmenting Topologies (NEAT).
The output will be the set of controlling key for
playing the game.
Evaluation/Discussion
While the objective for the competitors was to
design or learn a controller that played infinite
mario bros as well as possible, the objective
for the organizers is to organize a competition
that accurately tested the efficacy of various
controller representations and learning
algorithms for controlling an agent in a
platform game.
• Complexifying function makes NEAT
unique among GA„s
Outlook
In the future, a new fitness function may
come in and may give a better result for this
game. With some effort of modifying into the
functionality of game.
References [1] A.Ismail , N.A.El_Ramly “Game Theory Using Genetic
Algorithms”http://www.iaeng.org/publication/WCE2007/WC
E2007_pp61-64.pdf
[2] Kenneth O. Stanley “Evolving Neural Networks through
Augmenting Topologies”
http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf
MUHAMMAD AHSAN NAWAZ ([email protected]),
VU THANH NGO ([email protected])&
JUNAID ASGHAR ([email protected])
Winter 2015/2016
Information Engineering and Computer Science, M. Sc.
Applied Research Project
Top Related