Programmazione evolutiva - Evolutionary programming
La programmazione evolutiva è uno dei quattro principali paradigmi di algoritmi evolutivi . È simile alla programmazione genetica , ma la struttura del programma da ottimizzare è fissa, mentre i suoi parametri numerici possono evolvere.
È stato utilizzato per la prima volta da Lawrence J. Fogel negli Stati Uniti nel 1960 per utilizzare l' evoluzione simulata come processo di apprendimento volto a generare intelligenza artificiale . Fogel ha usato macchine a stati finiti come predittori e le ha evolute. Attualmente la programmazione evolutiva è un ampio dialetto informatico evolutivo senza struttura fissa o ( rappresentazione ), in contrasto con alcuni degli altri dialetti. Sta diventando più difficile distinguere dalle strategie evolutive .
Il suo principale operatore di variazione è la mutazione ; i membri della popolazione sono visti come parte di una specie specifica piuttosto che membri della stessa specie, quindi ogni genitore genera una prole, utilizzando una selezione di sopravvissuti (μ + μ) .
Guarda anche
Riferimenti
- Fogel, LJ, Owens, AJ, Walsh, MJ (1966), Intelligenza artificiale attraverso l'evoluzione simulata , John Wiley.
- Fogel, LJ (1999), Intelligenza attraverso l'evoluzione simulata: quarant'anni di programmazione evolutiva , John Wiley.
- Eiben, AE, Smith, JE (2003), Introduzione al calcolo evolutivo , Springer . ISBN 3-540-40184-9