Is it just my imagination or are the primary mutations we see actions that are continually pepretrated. Some examples are continual shooting, tieing, moving, stopping, etc. All of these have one thing in common, they happen every single cycle and are extremly easy for the dna.
Our own "intellegent" code takes advantage of just that, intelligence. The problem is that evolution and mutations don't work according to it. The specific instructions we give, while the epitome of human ingenuity, are when mutated are some of the worst things a bot can do or not do (shooting the bots primary method of feeding is a good example). Most of the time they're better off disabling the gene or getting rid of the dna altogether, simply to ensure mutation survivability.
I'm not sure how to really solve this. My guess it's more of a matter of understanding what the program is trying to do and then improve it to help the bots succed.
On this note the 64001 (32000 2 mult 1(zero) add) possible store locations are a bit much IMO. I get a value around 0.01561 chance of a given number actually being something even possibly usable (999/64001). The number of actual locations and evolution effecting behaviors is even smaller, most likely leading to some long times between mutation effects and actual observable evolution.
I was originaly thinking that a simple duplicate -999 set would help, but perhaps even that was too little, what I'm not thinking of would be to normalize to a usable value say 31078 to something like 78, not a direct effect but at least it's somewhat usable to the bot in this form. I can understand the comments about loss of diversity, but having so many wasted locations is overkill.