Skip to main content

Co je to genetické programování?

Genetické programování je proces používání jednoho počítačového programu k psaní jiného počítačového programu pomocí metodiky založené na evolučním algoritmu.Tento proces je často porovnán s lineárním programováním, ve kterém programátor píše specifické pokyny pro počítač k provedení.LISP a schéma jsou nejběžnějšími programovacími jazyky pro tento typ práce díky jejich funkčnosti a flexibilitě s vysokou úrovní.V důsledku své koncepční podobnosti s biologickým vývojem je genetické programování často citováno jako příklad výpočetní techniky inspirované bio.Například GP by mohl být použit k vytvoření programu pro nakreslení náčrtu fotografie.První věc, kterou by GP udělal, je vytvořit sadu programů, které v náhodných kombinacích používají různé funkce počítačového kreslení.Poté by GP spustil každý z těchto programů v pořadí a vydal výsledky každého do obrazových souborů.Tento proces je obecně nejobtížnější součástí genetického programování.V případě programu kreslení by GP použil software pro srovnání obrázků k určení, které z náhodných výkresů bylo nejvíce podobné obrazu, který se software pokoušel nakreslit.Z náhodně generovaných programů by GP vybral první několik a zbytek zahodil.Výběrový proces je známý jako hodnocení fitness a je obecně považován za nejobtížnější část genetického programování.Každá nová dávka se nazývá generace.Dva způsoby vytvoření nové generace jsou mutace a crossover.Mutace funguje tak, že vezme jeden ze stávajících programů a provádí v něm náhodné změny, doufejme, že k lepšímu.Crossover, také nazývaný šlechtění, pracuje tím, že vezme dva z nejlepších programů a kombinuje jejich prvky k vytváření nových programů., eliminace a výrobní procesy.GPS bude často provozovat stovky generací, než najde jediný program s uspokojivým výsledkem.Navzdory tomuto omezení je genetické programování běžným způsobem vyřešit některé typy obtížných problémů s výpočtem, včetně robotických inženýrství a problémů s umělou inteligencí.