I haven't had much time to devote to this yet, but the idea has been rolling around in the back of my mind... I'd like to toss it out and see if anyone has any suggestions on the best way to implement it.

Since reading about the fishing line artificial muscles, my interest in building a bipedal robot has been rekindled, but I'm not too keen on the common control systems used for bipeds. I'd like to build an artificial neural network for controlling the robots ability to stand, particularly since using a thread type actuator, I can in theory have the equivalent number of muscles as a human lower limb.

So... My thought is if I create a simulation environment, I can train the network to teach itself to balance itself via letting it try (and fail) millions of times, and build robustness by adding perturbations once it gets good at holding its own undisturbed.

The project is larger than anything I've tackled so far, and haven't quite cracked how to break it down into manageable steps. That's where the request for advice part comes in. How would you implement this?

The code would integrate the following major three items:
-Biped rigid body / dynamic simulation (for standing, and later walking) (can unity do this? custom..?)
-Use of Artificial Networks for control
-Use of Genetic Programming for muscle optimization, and (probably?) optimizing the ANN

The goals of my project are to learn more about ANNs (i have basic knowledge from coursera machine learning), learn genetic programming (know basically nothing other than the premise of fitness functions) and otherwise get better at C#. I hope i can turn it into a real robot, but that's just a bonus if i can get the software side fully functional first.

Thanks,

iguana