Knihovna pro kartézské genetické programování v jazyce Python
| but.committee | prof. Dr. Ing. Jan Černocký (předseda) doc. Ing. Lukáš Burget, Ph.D. (člen) doc. Ing. Vladimír Janoušek, Ph.D. (člen) Ing. Michal Hradiš, Ph.D. (člen) Ing. Jaroslav Rozman, Ph.D. (člen) Ing. František Grézl, Ph.D. (člen) | cs |
| but.defence | Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm B. | cs |
| but.jazyk | angličtina (English) | |
| but.program | Informační technologie a umělá inteligence | cs |
| but.result | práce byla úspěšně obhájena | cs |
| dc.contributor.advisor | Hurta, Martin | en |
| dc.contributor.author | Kováč, Ondrej | en |
| dc.contributor.referee | Mrázek, Vojtěch | en |
| dc.date.created | 2025 | cs |
| dc.description.abstract | Táto práca sa zameriava na implementáciu knižnice pre Kartézske Genetické Programovanie (CGP, angl. Cartesian Genetic Programming) v jazyku Python. CGP je metóda používaná pre evolučný návrh výpočetných štruktúr v rôznych odvetviach. Práca začína úvodom do evolučnej teórie v biológií, čím dodáva čitateľovi kontext pre lepšie pochopenie základných princípov evolučných algoritmov. Potom diskutuje evolučné algoritmy vo všeobecnosti, so zvýšenou pozornosťou na funkcionalitu CGP. Táto práca taktiež skúma obmedzenú výpočetnú silu jazyka Python a preskúmava spôsoby ako sa dajú dané obmedzenia zlepšiť pomocou externých modulov a nástrojov. Ďalšie kapitoly sa potom zaoberajú návrhom knižnice, vrátane návrhu aplikačného rozhrania (API). Sekcia o implementácií sa potom viac sústreďuje na rôzne optimalizačné techniky a využitie modulu NumPy pre dosiahnutie vysokého výpočetného výkonu. Nakoniec táto práca vyhodnocuje knižnicu v oblasti výkonu, testuje experimentálnu optimalizačnú metódu založenú na znovupoužití náhodne generovaných čísel a porovnáva knižnicu s inými existujúcimi implementáciami CGP. Knižnica dosiahla veľmi silné výsledky, primárne pri riešení komplexnejších problémov. | en |
| dc.description.abstract | This thesis focuses on the implementation of a library for Cartesian Genetic Programming (CGP) in Python. CGP is a method used for the evolutionary design of computational structures across various domains. The work begins with an introduction to evolutionary theory in biology, providing context to help the reader understand the fundamental principles behind evolutionary algorithms. It then discusses evolutionary algorithms in general, with a particular emphasis on the functionality and specifics of CGP. The thesis also examines the performance limitations of Python and explores approaches to mitigate them using external modules and tools. Subsequent chapters detail the design of the library, including its application programming interface (API). The implementation section focuses on various optimization techniques and the use of the NumPy module to achieve high computational performance. Finally, the thesis evaluates the library’s performance, tests an experimental optimization method based on reusing randomly generated numbers, and compares the implementation against existing CGP libraries. The library achieved strong results, especially in solving more complex problems. | cs |
| dc.description.mark | B | cs |
| dc.identifier.citation | KOVÁČ, O. Knihovna pro kartézské genetické programování v jazyce Python [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025. | cs |
| dc.identifier.other | 162986 | cs |
| dc.identifier.uri | http://hdl.handle.net/11012/254948 | |
| dc.language.iso | en | cs |
| dc.publisher | Vysoké učení technické v Brně. Fakulta informačních technologií | cs |
| dc.rights | Standardní licenční smlouva - přístup k plnému textu bez omezení | cs |
| dc.subject | kartézske genetické programovanie | en |
| dc.subject | knižnica | en |
| dc.subject | Python | en |
| dc.subject | evolučný dizajn | en |
| dc.subject | NumPy | en |
| dc.subject | Cython | en |
| dc.subject | cartesian genetic programming | cs |
| dc.subject | library | cs |
| dc.subject | Python | cs |
| dc.subject | evolutionary design | cs |
| dc.subject | NumPy | cs |
| dc.subject | Cython | cs |
| dc.title | Knihovna pro kartézské genetické programování v jazyce Python | en |
| dc.title.alternative | Library for Cartesian Genetic Programming in Python | cs |
| dc.type | Text | cs |
| dc.type.driver | masterThesis | en |
| dc.type.evskp | diplomová práce | cs |
| dcterms.dateAccepted | 2025-06-24 | cs |
| dcterms.modified | 2025-06-24-12:39:21 | cs |
| eprints.affiliatedInstitution.faculty | Fakulta informačních technologií | cs |
| sync.item.dbid | 162986 | en |
| sync.item.dbtype | ZP | en |
| sync.item.insts | 2025.08.27 02:04:24 | en |
| sync.item.modts | 2025.08.26 19:41:19 | en |
| thesis.discipline | Strojové učení | cs |
| thesis.grantor | Vysoké učení technické v Brně. Fakulta informačních technologií. Ústav počítačových systémů | cs |
| thesis.level | Inženýrský | cs |
| thesis.name | Ing. | cs |
