I have recently learned about artificial neural networks (very interesting) and genetic algorithms (also very interesting). I have read some suggestions concerning how to crossover two parent neural networks to produce a child. For example, randomly selecting weights and biases from either one parent or the other, or selecting the first L layers from one parent and the rest from the other. I was wondering if taking the average weights and biases (such that wij(L) of the child networks equals the average wij(L) of the parents, and similarly for bi(L)) would be a proper crossover operation.
Which of these operations would be best suited for most genetic algorithms involving neural networks? Note that I want to limit the scope of this question only to topologically identical parents producing a child with that same topology.