After evolving a few hundred generations over night I found that the robots had evolved to do absolutely nothing, it seemed strange at first but the reason for this was soon discovered. The only statistics that Real-time battle outputs is the place of the robot in the tournament, number of points it received and how long it survived. Since each robot is awarded a point by just surviving till the end of the tournament and another point for every one of its opponents it outlives; the best strategy is often to do absolutely nothing.
Hence the fitness evaluation function is the problem here, however I can do little about it since it is dependent on the data provided by Real-time battle. I tried to introduce a couple of predators in the population by running a couple of preprogrammed robots that came with Real-time battle. However they don’t seem to have much impact.
A possible solution to be implemented in the future would be to have every robot generate a log file of how many times it was hit, remaining energy level and shots fired. This could then be used to create a better fitness function.
The software works as it is supposed to, the robots fight, breed, mutate and die. It’s harder to draw any conclusions whether or not robot evolution would work in Real-time battle. The robots seem to evolve towards the best solution for survival, which is to do nothing. More simulations, better evaluation functions and more time is needed to draw any final conclusions.