Mi a genetikai programozás?

A genetikai programozás a számítógépes programok fejlesztésének folyamata a biológiai evolúció által inspirált algoritmusok felhasználásával. A genetikai programozáshoz természetesen programozó nyelvek azok, akik képesek saját kódjukat értékelni. A klasszikus példa a LISP, amelynek jellegzetes adatstruktúrája egy lista. Minden LISP-programot listaként írtak, így a LISP-programok nagyon jól kezelik és generálják a LISP-programokat.

Hogyan működik?

A genetikai program olyan utasítások halmazával kezdődik, amelyek "kromoszómákként" szolgálnak, és egy "fitness funkció", amely meghatározza, hogy melyik eredmény ideális. Az utasítások véletlenszerűen kerülnek kombinálásra a programok első "generációjának" előállításához, majd ezek az egyedi programok tesztelésre kerülnek.

A legmegfelelőbb programok - azok, amelyek a fitneszfunkció által meghatározott viselkedés eléréséhez a legközelebb vannak - a "tenyésztésre" kerülnek kiválasztásra. A legmegfelelőbb programok kromoszómái kombinálódnak, a biológiai tenyésztéshez hasonlóan a genetikai kód is hasonló. Néhány kromoszómát "áthaladnak" (másolva) más programokkal, és néhányat "mutáltak" - véletlenszerűen megváltoztattak egy előre meghatározott módon. Több ezer vagy akár több millió program is előállítható, az egyes generációk közelebb kerülnek a kívánt eredmény eléréséhez.

Utasítások, programozási feltételek