Neuro-Evolution and Robustness: A Case Study
Michael Weeks, Andre Kenneth Chase Randall, Vibhuti Patel · 2018
We designed and implemented a game with a nonplaying character controlled by a neural network, where the weight set determines the character's next move. The weight sets were improved using neuro-evolution, where a genetic algorithm alters the weights of the neural network. Previously, we created neural network data to provide a population from which to select “parents,” then used cross-over and mutation to create a new set of weights (“offspring”), and evaluated them to find relative rankings. After thousands of iterations, sets of weights evolved to allow the NN -controlled character to win easily. Are the results robust, that is, how sensitive is the neuro-evolution solution to initial conditions? In this paper, we test our previous results to see how well the neural network weight sets perform under different starting conditions. We found mixed results: while the experiment confirmed our previous results, modifications of the starting position revealed a subtle bias against starting positions with larger values relative to the Y-axis. The reason for the bias comes from the way the game handles diagonal projectiles as horizontal or vertical graphlcs.