Osa artikkelisarjaa |
Tekoäly |
---|
Evoluutioalgoritmi on tietokoneohjelman tekotapa, joka jäljittelee evoluutioteorian mukaista mekanismia, jossa luonnonvalinta valitsee sopivimmat mutaatiot jatkoon. Ohjelma tuottaa useita ehdokasratkaisuja, jotka kilpailevat keskenään siitä, miten hyvin ne täyttävät kustannusfunktion tai kelpoisuusfunktion. Jos ehdotus tuottaa kelposuudeltaan tai kustannuksiltaan riittävän hyvän ratkaisun, se pääsee jatkoon tuottamaan ratkaisuehdotuksia. Näin huonot ehdokasratkaisut poistuvat pelistä, ja jäljelle jää koko ajan optiimisempia ratkaisuja. Evoluutioalgoritmien eräs suuri ongelma on, miten ratkaistava ongelma saadaan mallinettua algoritmille sopivalla tavalla. Geneettiset algoritmit ovat yksi evoluutio-ohjelmoinnin osajoukko.