The only restraint we have is computing power.
its just a bad fact , that in order to evolve something you have to evaulate every individual/code/behaviour in the population to know how good/bad it is. this means , for an example, simulating the whole world for every individual (on in other way : simulating a world with the number of animals so that there will be at least 1 animal for every different behaviour)
and after that, you will have to simulate the world for quite some time in order to see how the creatures act and what animal is better than the other, and get a result for every animal (fitness/ how good/bad the animal is) for the next generation.
another burden is the simulation overhead. you see, when you are executing a behaviour that was randomly produced, the more easy thing would be to interpret the basic behaviour commands in a "while" loop (or recursion loop, if wer'e talking trees here). but that's gonna cost you a lot, because if you make genetic algorithm that runs on machine code, you won't have that overhead , and in result, your code can run at least 20 times faster than interpretation.
programming in machine code is a hard thing. unless your'e some crazy guy from the "demoscene", which knows to hack you a 3D presentation in one hour, who knows only assembly.
the human mind, yes - the simple daily human mind you and I carry inside our head each day, is more powerful in the processing power (calculations per second), than the best super computer we have today. at least 10 times more powerful than the supercomputer.