// Uses parameters from the game object to create a set of // inputs for the neural network. public abstract Matrix <float> GameStateToNetworkInput(NetworkPlayableGame game);
// The classic fitness function for the specific game // realistically this is going to be a really dynamic // function.. public abstract int CalculateFitness(NetworkPlayableGame game);
// Uses the output from the network to create a "move" // for the game. This "move" is submitted to the game and the // turn finishes. public abstract int NetworkOutputToMove(Matrix <float> output, NetworkPlayableGame g);