Prírodou inšpirované algoritmyštudijné materiály pre projekt mobilnej triedy umelej inteligencie |
||
Úvod
Táto stránka obsahuje základná informácie o genetickom programovaní a príklady jeho aplikácií v rôznych oblastiach. Genetické programovanie je špeciálnym typom evolučných algoritmov, v ktorom sa na uloženie genetického kódu jedinca nepoužije binárny reťazec pevnej dĺžky, ale hierarchická stromová štruktúra. Ide o automatické programovanie využívajúce Darwinov princíp reprodukcie a prežitia najschopnejšieho pri prehľadávaní priestoru možných programov riešiacich zadaný problém. Povaha zadaného problému môže byť veľmi rôznorodá : optimálne riadenie, plánovanie, generovanie číselných radov, aproximácia funkcií, automatické programovanie, empirické objavovanie a predikcia, výpočet neurčitých integrálov a derivácií, výpočet inverzných funkcií, objavovanie matematických zákonitostí, klasifikácia a vytváranie rozhodovacích stromov, evolúcia emergentného správania, či automatické programovanie celulárnych automatov. Pojem genetické programovanie (GP) zaviedol (John R. Koza, 1992). GP predstavujú významný posun v metodológii evolučných algoritmov (EA). Zatiaľ čo v iných typoch EA sa optimalizujú parametre pevne danej cieľovej funkcie, pri GP dochádza k návrhu jej tvaru. Použitím hierarchických stromových štruktúr, ktorých veľkosť a obsah sa môže počas evolučného procesu meniť sa odstránilo obmedzenie klasických typov EA. Keďže pri definícii problému sme len málokedy schopní presne odhadnúť veľkosť a zložitosť programu, ktorý ho bude schopný uspokojivo riešiť, lineárny reťazec s pevne danou dĺžkou je nevhodný na jeho reprezentáciu. Spôsob reprezentácie chromozómu jedinca GP priam predurčuje na riešenie problémov automatického programovania, či strojového učenia. |
||
Kontakt: Marek Bundzel |