We argue that molecular self-organisation during embryonic development allows evolution to perform highly nonlinear combinatorial optimisation. A structured approach to architectural optimisation of large-scale Artificial Neural Networks using this principle is presented. We also present simulation results demonstrating the evolution of an edge detecting retina using the proposed methodology