Evolúciós stratégia, genetikus algoritmus

Az evolúciós módszert kipróbáltuk 20 szülő 200 gyerekével. Egyik esetben 100, míg a másik esetben 1000 generációt számoltattunk ki. Mint látható a 100 generáció szinte semmire sem elég. Az 1000 generációnál viszont már érzékelhető, hogy visszafordul a tendencia, és a nagy q esetén csökken a célfüggvény értéke. Természetesen az ideálistól igen messze vagyunk. Nem tartjuk kizártnak, hogy akár több százezernyi generáció is kevés lenne az optimális megoldás megtalálásához. Az 1000 generáció esetén már látszik annak előnye, hogy a szülőknek meg kell küzdeniük a leszármazottakkal a túlélésért. Ekkor a jó tulajdonságú szülő megmarad, míg teljes generációváltás esetén eltűnik. Annak is meg van az előnye (EPP változat), hogy a végül megkapott eredményekből nem a legjobbat választjuk ki, hanem azok kombinációjaként kívánunk egy még jobbat előállítani.

7.20. ábra - Különféle evolúciós stratégiák két lépésszám esetén

Különféle evolúciós stratégiák két lépésszám esetén
Különféle evolúciós stratégiák két lépésszám esetén

A genetikus algoritmusnak két variánsát is implementáltuk. Az első ebből az elitista megközelítés volt. Itt 2000 generációt számoltunk végig. A mutáció 2,3 százalékos volt, a szülőket egy-egy véletlen hatos csoport legjobbjaiként kaptuk. A három keresztezés végigszámoltattuk egy 100-as populáción, melynek a felső negyede átkerült a következő generációba. Majd az egyik keresztezést egy 1000 méretű populáción is kipróbáltuk. Lehet látni, hogy az első esetben az előzőhöz hasonló eredményeket kapunk, míg a nagy populáció esetén viszont már közel kerülünk az elvárt megoldáshoz.

7.21. ábra - Elitista genetikus algoritmusok

Elitista genetikus algoritmusok
Elitista genetikus algoritmusok

A másik implementált módszer a stabil genetikus algoritmus. Itt is százas populációval dolgoztunk, ám csak négy egyed közül lett kiválasztva minden egyes szülő. A mutáció foka is megegyezik az előzővel. Mivel nem generáljuk újra a populáció háromnegyedét, csak kettőt, jóval több generációra lesz szükség. 1000, 5000 és 10000 generációval kísérleteztünk, de lehet látni az ábrákról, hogy ez még nem volt elegendő.

7.22. ábra - Stabil genetikus algoritmusok

Stabil genetikus algoritmusok
Stabil genetikus algoritmusok