Tuesday, 18 January 2011

Developer Journal 42

http://www.lesitedelevenementiel.com/wp-content/uploads/robot.jpg

Spent the day figuring out how to improve the way the genome system currently works. The problem is that when I want to add another neuron group, I have to add a lot of other things. I have to add connection information from each existing neuron group to the new neuron group and vice versa.

An idea that came to me as I was drifting off to sleep was a way to make changes due to genome crossing over more gradual. For example, a gene could control speed. Robot alpha could have speed 0.5 and robot bravo could have speed 1. During the crossing over process, the child robot could receive either value.
#  alpha bravo charlie
1  0.0   0.1   0.0 
2  0.0   0.1   0.0
3  0.0   0.1   0.0
4  0.0   0.1   0.1
5  0.0   0.1   0.1
6  0.1   0.1   0.1
7  0.1   0.1   0.1
8  0.1   0.1   0.1
9  0.1   0.1   0.1
10 0.1   0.1   0.1
   ---   ---   ---
   0.5   1.0   0.7

Another way could be that there are ten genes which each contribute 0.1 to the final speed. During crossing over, the child robot might receive 7 speed genes from one and 3 genes from the other to result in 0.7 speed.

No comments:

Post a Comment