Differential evolution for neural networks optimization