Earlier quoted context omitted.
took 230 generations for me to do anything then it just went from dying within the first 3 pipes to mastering it within 4 generations
On my first run, 2 individuals learnt(?) perfect play in 3 generations.
NeuroEvolution – Flappy Bird
81–90 of 103 posts
Re: NeuroEvolution – Flappy Bird
#82Interestingly, the updates are done on the basis of only 2 external inputs [1]: the height of the bird in the screen and height of the aperture in the next pipe. Using only these two parameters the neural network decides whether to flap or not. I would had expected at least also the horizontal distance from the next pipe... [1] https://github.com/xviniette/FlappyLearning/blob/gh-pages/ga...
Wow, that's really unexpected. This isn't my field, but given the simplicity of the inputs and network, and the way commenters are seeing the demo achieve perfect play after anything between 2 and 200 generations, it makes me wonder if this isn't more of a brute-force search than actual learning? That is, it smells like there's a "correct" set of neuron values - where any genome within some tolerance of those values…
Re: NeuroEvolution – Flappy Bird
#83Re: NeuroEvolution – Flappy Bird
#84At generation 83, a single bird emerged that successfully navigated through several hundred columns (current score 100000+) and showed no signs of failing. It took a few dozen generations to find versions that would make it through a few columns if those columns had gaps without too much vertical distance between them. Somewhere in generation 60-70, I could see versions figuring out how to transition between heights,…
I am running right now a bird from generation 3 going at 26k+ score.
How is it possible to get such good specimens after so little generations? I'm guessing part of it is the simplicity of the model and the environment (the game), but still.
Re: NeuroEvolution – Flappy Bird
#85Earlier quoted context omitted.
These are the exactly gems that I am constantly in search of, and thrilled every time I come across one. This is going to turn out to be a rant, but sometimes it feels like there's a culture of solving problems by a philosophy of "let's throw more money at it, more technology at it, more people, more unnecessary abstraction layers, complexity and bloat - it's bound to be solved eventually". And with enough fire power…
Sounds like you are noting that brute force is a very effective technique. Combined with explaining being a tough skill. It is seductive to want things to be elegant. It is costly to wait for the elegant solution.
I ran the sim a few times and got wildly different results. - First time (about average) it stabalised (scopre >10,000) at Generation 18.
- The quickest stabalisation was at Generation 3
- sometimes it got to Generation 50 without stabalising.
Brute force will eventually get there, but I guess based on so few parameters it is easy to create a misleading weighting and difficult to un-learn that.
Re: NeuroEvolution – Flappy Bird
#86Earlier quoted context omitted.
These are the exactly gems that I am constantly in search of, and thrilled every time I come across one. This is going to turn out to be a rant, but sometimes it feels like there's a culture of solving problems by a philosophy of "let's throw more money at it, more technology at it, more people, more unnecessary abstraction layers, complexity and bloat - it's bound to be solved eventually". And with enough fire power…
Sounds like you are noting that brute force is a very effective technique. Combined with explaining being a tough skill. It is seductive to want things to be elegant. It is costly to wait for the elegant solution.
As for explaining being a tough skill - what I find in common with the previous point is the lack of stress on keeping things as simple and obvious as possible. If you truly understand something, you should be able to convey that understanding assuming you really want to - it just takes investment, usually by asking yourself why it is obvious to you, then putting yourself in the other party's shoes and then finding the shortest and clearest path to bring them from where they are to where you are. In my experience it's not a tough skill - just requires introspection into your own understanding and not assuming anything about what the other person understands.