--Genetic algorithm implemented using lua and bizhawk to play classic contra retro game--
The goal of this project is to test my understanding of the NEAT algorithm. I got very heavy inspiration from sethblings MAR/IO video and code on NEAT algorithms alongside a number of research papers which I am currently looking into and will list/credit in this read me.
Please note: This project is still undergoing and I intend to complete it as soon as i get some free time!
- Get to grips with Lua programming language DONE
- Understand how to use TAS and Bizhawk to extract game information DONE
- Extract game data including player health, locations, enemy status DONE
- In conjunction with looking at research papers and seth blings code, rework and understand the code to fit the solution of my current problem DONE
- Create connection gene structures DONE
- Create node gene structure DONE
- Create sample network DONE
- Create mutation functions DONE
- Test mutation functions DONE
- Test network with mutation functions DONE
- Create crossover functions DONE
- Test crossover functions DONE
- Test crossover, mutation and networ functions DONE
- Create species function DONE
- Test species functionDONE
- Create fitness calculation functionsDONE
- Test fitness calculation functionsDONE
- Run and evaluate sample generationDONE
- Create stale species function(remove species which arent improving) DONE
- Create function which allows only species which are doing well to breed more and not doing well to breed less.(what i have atm is that, all species are allowed to bread equivalently no matter the fitness this not very nice)DONE
- Official test run in game NOT DONE