Programowanie ewolucyjne - Evolutionary programming
Programowanie ewolucyjne jest jednym z czterech głównych paradygmatów algorytmów ewolucyjnych . Jest to podobne do programowania genetycznego , ale struktura programu do optymalizacji jest stała, a jego parametry numeryczne mogą ewoluować.
Po raz pierwszy został użyty przez Lawrence'a J. Fogela w USA w 1960 roku w celu wykorzystania symulowanej ewolucji jako procesu uczenia się mającego na celu wygenerowanie sztucznej inteligencji . Fogel wykorzystał maszyny skończone jako predyktory i rozwinął je. Obecnie programowanie ewolucyjne jest szerokim ewolucyjnym dialektem obliczeniowym bez ustalonej struktury lub ( reprezentacji ), w przeciwieństwie do niektórych innych dialektów. Coraz trudniej odróżnić od strategii ewolucyjnych .
Jego głównym operatorem zmienności jest mutacja ; członkowie populacji są postrzegani jako część określonego gatunku, a nie członkowie tego samego gatunku, dlatego każdy rodzic generuje potomstwo, stosując selekcję ocalałych (μ + μ) .
Zobacz też
Bibliografia
- Fogel, LJ, Owens, AJ, Walsh, MJ (1966), Sztuczna inteligencja poprzez symulowaną ewolucję , John Wiley.
- Fogel, LJ (1999), Inteligencja poprzez symulowaną ewolucję: czterdzieści lat programowania ewolucyjnego , John Wiley.
- Eiben, AE, Smith, JE (2003), Wprowadzenie do obliczeń ewolucyjnych , Springer . ISBN 3-540-40184-9