Friday 29 July 2011

Developer Journal 117

I've only put the joint limits in for the right elbow. This humanoid robot is the result of having been bumped by numerous cube shaped robots. One leg is hanging over the left arm and the head has flopped down somewhere.

The joints aren't working exactly as I'd like but it's good enough for now. My approach of temporarily increasing a limit when the limit is passed so that I can enable the motor results in the limb continuing to bend the wrong if the maximum motor force and target velocity is low.

I'd like to keep working on it but I have to do some basic experiments and some thesis writing. The first set of experiments is to determine the how much robot behaviour is random and how much is due to the Hebbian neural network. The second set of experiments is to determine whether the robots can adapt when I introduce gender and the third set of experiments is to determine whether the robots can adapt when I introduce a constraint that creates pressure from younger robots to depend on older robots.

Simulation Run 1
+ A population from scratch
+ Hebbian neural network enabled
+ 1 simulation hour
+ To make sure the population can persist

Simulation Run 2
+ A population from scratch
+ Hebbian neural network disabled
+ 1 simulation hour

Simulation Run 3
+ A population that has persisted for a long time
+ Hebbian neural network disabled
+ 1 simulation hour

Not good. In simulation run 1, the population decreased to 1 robot after 1 hour 53 minutes simulation time. I started the simulation with 64 robots. I'm going to try again with 128 robots.

Better but not good enough. The population decreased to 1 robot after 6 hours 25 minutes simulation time.

One of the things I can do is to revert the wait time between mating to the levels I used when I first started my population. I wrote it down somewhere in a previous entry but I don't remember where or what the value was. Judging from how long the second population persisted with a initial size of 128 robots, I think going from the current value of 30 minutes to 15 minutes should result in a population that can keep persisting.

Another thing I could do but I don't want to is to add robots to a simulation run that has robots surviving for a long time but have only a small number of robots, possibly even just one.

I've got the debug physics rendering enabled, I wonder if that affects the robots?



RELATED

No comments:

Post a Comment