Live data from Hacker News

NeuroEvolution – Flappy Bird

xviniette.github.io

21–30 of 103 posts

Re: NeuroEvolution – Flappy Bird

#21

Earlier quoted context omitted.

53 for me. The previous generations didn't even look close then all of a sudden this one.

Same. Mine is on generation 22 and is the first one to get past even 30 seconds. So far no sign of stopping. edit: Gen 22 still going strong @ 1 bird, up to 231,000 points. Looking at game.js it's a fairly simple model, I suspect once you get a bird that makes it past the 1-minute mark it will be able to continue forever.

2nd generation for me. Very suspicious.

EDIT - to be more clear: the first generation died in a couple of seconds. A bird from the second generation was immediately able to navigate forever. Either this was my chance to win the national lottery (what a way to waste it) or something's wrong.

Re: NeuroEvolution – Flappy Bird

#22
post #21

Earlier quoted context omitted.

Same. Mine is on generation 22 and is the first one to get past even 30 seconds. So far no sign of stopping. edit: Gen 22 still going strong @ 1 bird, up to 231,000 points. Looking at game.js it's a fairly simple model, I suspect once you get a bird that makes it past the 1-minute mark it will be able to continue forever.

2nd generation for me. Very suspicious. EDIT - to be more clear: the first generation died in a couple of seconds. A bird from the second generation was immediately able to navigate forever. Either this was my chance to win the national lottery (what a way to waste it) or something's wrong.

[deleted]

Re: NeuroEvolution – Flappy Bird

#24
post #6

When I first watched it, nothing changed for about 200 generations (thanks for the x5 speed up). I wanted to comment on that, but decided to reload first. Now my 12th generation is flapping for a good two minutes while im writing this comment. It seems only the second time there was machine learning involved.

Evolution is generally characterized by 'punctuated equilibrium', it sounds like you just started on a plateau.

Re: NeuroEvolution – Flappy Bird

#25
Interestingly, 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...

Re: NeuroEvolution – Flappy Bird

#26
post #25

Interestingly, 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 wins forever, and any other genome dies quickly. If that's the case, the system can't really evolve towards a solution, can it? It would just cycle randomly through lots of genomes that die immediately, until by pure chance one lives forever. I only tried the demo a few times but that's what it looked like it was doing.

Re: NeuroEvolution – Flappy Bird

#27
post #15

Earlier quoted context omitted.

It is a using a genetic algorithm so learning lies in the mutation and crossover of chromosomes as well as selection of the fittest individuals. https://github.com/xviniette/FlappyLearning/blob/gh-pages/Ne...

It's also using a simple neural network, which is the target of the genetic algorithm, if I understood it right. I haven't seen this combination often - does that make sense in general, or is this just interesting as in playing around with those concepts?

It's an easy way to train a neural network when you cannot give it a long list of input/output pairs.

Are there other good ways of training a neural network in this kind of scenario?

Re: NeuroEvolution – Flappy Bird

#29
post #9

Can anyone give me insight on where the code learning is? I cloned the repository and after a quick glance I don't see where the "meat" is.

It is a using a genetic algorithm so learning lies in the mutation and crossover of chromosomes as well as selection of the fittest individuals. https://github.com/xviniette/FlappyLearning/blob/gh-pages/Ne...

Thanks for the link to the location and explanation! This is fascinating.

Re: NeuroEvolution – Flappy Bird

#30
post #21

Earlier quoted context omitted.

Same. Mine is on generation 22 and is the first one to get past even 30 seconds. So far no sign of stopping. edit: Gen 22 still going strong @ 1 bird, up to 231,000 points. Looking at game.js it's a fairly simple model, I suspect once you get a bird that makes it past the 1-minute mark it will be able to continue forever.

2nd generation for me. Very suspicious. EDIT - to be more clear: the first generation died in a couple of seconds. A bird from the second generation was immediately able to navigate forever. Either this was my chance to win the national lottery (what a way to waste it) or something's wrong.

For me it was 1st generation and I was wondering what this project was all about. Until I hit F5, now it's 50 generations and still to successfull bird in sight.
Post reply on HN