Thursday, 3 December 2009

New controller

As the improvement of the robot in evolution was so slow I've been thinking of how to simplify the controller in order for there to be less values to change.

So what i've done is break the controller down. and only have it control one half of the body. Then run the inputs through it twice, but swapping the left and right leg on the second run.

This takes the number of connections down from:
Inputs:
15 bodies x 3 coords = 45
Hidden:
50
Output:
20

Input to Hidden = 45 x 50 = 2,250
Hidden to Output = 50 x 20 = 1,000
Total = 3,250

To:
Inputs:
45
Hidden:
25
Output:
12

Input to Hidden = 45 x 25 = 1,125
Hidden to Output = 25 x 12 = 300
Total = 1,425

Firstly this means both sides act the same (obviously not at the same time).
Secondly its easier to train a smaller network.
Thirdly computationally, even running the smaller network through twice only leads to 2,850 connections being considered.

Hope that works now, the new idea is below:


No comments:

Post a Comment