I calcoli evolutivi, o algoritmi evolutivi, sono algoritmi di ottimizzazione, che, se applicati a una rete neurale (come nella neuro-evoluzione) possono certamente essere classificati come una forma di apprendimento di rinforzo, sebbene funzioni un po 'diversamente dal solito algoritmo di apprendimento del rinforzo.
Generalmente, in algoritmi evolutivi come algoritmi genetici o strategia di evoluzione, è possibile ottimizzare un'intera popolazione di individui. Per ognuno di questi individui, viene utilizzata una funzione di qualità per determinare la loro "forma fisica" (come nella "sopravvivenza del più adatto") e le persone migliori vengono selezionate per la generazione successiva. Questi "genitori" vengono quindi duplicati, modificati, mutati o ricombinati a caso tra loro - come esattamente ciò è fatto è un po 'diverso in ciascuno dei diversi algoritmi. Infine, quei nuovi genitori mutati e/o ricombinati formano la popolazione per la generazione successiva, e il processo ricomincia, fino a quando non viene raggiunta una qualità desiderata, o se la qualità si esaurisce.
Nel caso della neuroevoluzione, gli individui sono reti neurali, che sono mutate da pesi a variazione casuale (mentre nelle reti neurali classiche i pesi vengono aggiornati secondo regole matematiche molto precise) o anche alterando la loro topologia, e la qualità degli individui è determinata dalla loro efficacia con i dati di allenamento.
Spiacente, non ci sono riferimenti scientifici rigidi, ma forse questo ha contribuito a chiarire un po 'le cose.
fonte
2012-09-13 19:24:31
Questa è la migliore risposta ancora, ma continuerò a cercare ... Grazie per l'ottima risposta! –