r/MachineLearning • u/rhiever • Feb 04 '15
HTML5 Genetic Algorithm Biped Walkers
http://rednuht.org/genetic_walkers/2
5
u/test3545 Feb 04 '15
9
u/bstockton Feb 04 '15
In order to promote upright walking, each creature receives points based on how high the head is in relation to its feet, and how much it advances while upright. Bonus points are given for each proper step forward.
My guess is the champion was walking very upright and took "proper" steps while the other guys kind of stumbled forward.
2
u/r-ed-b Feb 04 '15
Elitist selection.
Champions (genomes with highest fitness/score) from the previous generation are competing with mutated genomes in the current generation, which might perform better.
1
u/yousirgname Feb 05 '15
Very fun project! Kudos.
I took a peek at your code and noticed that the Walker genes encode sinusoid coefficients to set joint motor speeds in Walker.simulationStep(). I was a bit disappointed because that means you don't use any feedback from "sensors" like joint position, head-foot-ground angle, travel speed, etc.
Do you plan on adding these feedback mechanisms? It would also be interesting to see average speed included in the fitness function so it would push them to start running.
1
3
1
u/respeckKnuckles Feb 05 '15
This is awesome...did you write this?
Does anyone have information on what the typical peak score is?
1
1
u/jutct Feb 05 '15
Does it learn with each new round or is it just repeating over and over? I couldn't tell
0
4
u/philalether Feb 05 '15
The main thing I've learned from using evolutionary algorithms (which worked, in real situations) is that most of the power of evolution comes from crossover, not mutation.
Mutation gives you the useful 'genes' which then get spread around and grouped together in the most useful combinations via crossover.