FlappyLearning Save

Program learning to play Flappy Bird by machine learning (Neuroevolution)

Project README

Flappy Learning (Demo)

Program that learns to play Flappy Bird by machine learning (Neuroevolution)

alt tag

NeuroEvolution.js : Utilization

// Initialize
var ne = new Neuroevolution({options});

//Default options values
var options = {
    network:[1, [1], 1],    // Perceptron structure
    population:50,          // Population by generation
    elitism:0.2,            // Best networks kepts unchanged for the next generation (rate)
    randomBehaviour:0.2,    // New random networks for the next generation (rate)
    mutationRate:0.1,       // Mutation rate on the weights of synapses
    mutationRange:0.5,      // Interval of the mutation changes on the synapse weight
    historic:0,             // Latest generations saved
    lowHistoric:false,      // Only save score (not the network)
    scoreSort:-1,           // Sort order (-1 = desc, 1 = asc)
    nbChild:1               // number of child by breeding
}

//Update options at any time
ne.set({options});

// Generate first or next generation
var generation = ne.nextGeneration();

//When an network is over -> save this score
ne.networkScore(generation[x], <score = 0>);

You can see the NeuroEvolution integration in Flappy Bird in Game.js.

Open Source Agenda is not affiliated with "FlappyLearning" Project. README Source: xviniette/FlappyLearning
Stars
3,975
Open Issues
13
Last Commit
5 months ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating