Přístupnostní navigace
E-application
Search Search Close
Bachelor's Thesis
Author of thesis: Michal Repčík
Acad. year: 2025/2026
Supervisor: Ing. Karel Fritz
Reviewer: Ing. Jakub Husa, Ph.D.
This thesis presents a modular 3D neural cellular automata implementation in Python and PyTorch. The project includes the simulation core, a training runner, a network server for remote control, and a Blender add-on for live visualization. The work focuses on reproducibility, voxel I/O, and practical use during training and observation of volumetric growth.
neural cellular automata, 3D voxel modelling, voxelisation, volumetric generation, morphogenesis, metamorphogenesis, conditional generation, interactive visualisation, Blender add-on, PyTorch, TCP server
Date of defence
19.06.2026
Result of the defence
Defended (thesis was successfully defended)
Grading
A
Process of 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. 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 A.
Language of thesis
English
Faculty
Fakulta informačních technologií
Department
Department of Computer Systems
Study programme
Information Technology (BIT)
Composition of Committee
prof. RNDr. Alexandr Meduna, CSc. (předseda) prof. Ing. Martin Čadík, Ph.D. (místopředseda) Ing. Jaroslav Rozman, Ph.D. (člen) Ing. Zbyněk Křivka, Ph.D. (člen) Ing. Lukáš Kekely, Ph.D. (člen)
Supervisor’s reportIng. Karel Fritz
Student během řešení bakalářské práce prokázal velmi dobrou schopnost samostatné odborné i technické práce, orientaci v moderních AI metodách a schopnost navrhnout a implementovat rozsáhlejší experimentální systém.
Oceňuji zejména komplexnost řešení, vysokou míru samostatnosti, kvalitní implementační zpracování a schopnost propojit výzkumné experimenty s praktickou softwarovou infrastrukturou. Práce je po odborné i technické stránce na velmi dobré úrovni a svým charakterem výrazně přesahuje běžný rámec bakalářských prací.
Bakalářská práce se zabývá problematikou 3D Neural Cellular Automata a návrhem modulárního frameworku pro experimentování s volumetrickými samoorganizujícími se systémy. Zadání práce bylo nadstandardně náročné, jelikož kombinovalo problematiku neuronových sítí, celulárních automatů, distribuovaných systémů, 3D voxelové reprezentace a návrhu softwarové infrastruktury pro experimentální výzkum.
Student během řešení nastudoval principy klasických i neurálních celulárních automatů a navrhl vlastní framework umožňující trénování, vzdálené spouštění experimentů a interaktivní vizualizaci 3D růstu pomocí Blenderu. Oceňuji zejména komplexnost řešení a schopnost propojit experimentální AI část s praktickou softwarovou infrastrukturou.
Součástí práce je implementace samotného 3D NCA modelu, trénovací pipeline, TCP serveru pro vzdálenou komunikaci a Blender add-onu pro voxelizaci a vizualizaci výsledků. Pozitivně hodnotím také experimentální část práce zaměřenou na morfogenezi a metamorfogenezi, včetně experimentů s více cílovými strukturami a task-conditioned přechody mezi nimi.
Práce splnila zadání ve všech bodech a výsledné řešení svým rozsahem i technickou kvalitou přesahuje běžný rámec bakalářských prací.
Student pracoval aktivně s odbornou literaturou a samostatně vyhledával relevantní zdroje z oblasti Neural Cellular Automata, 3D CA systémů, generativních modelů a samoorganizujících se systémů. V práci jsou vhodně propojeny teoretické základy s praktickými implementačními aspekty.
Oceňuji zejména schopnost kriticky analyzovat existující implementace a identifikovat jejich omezení, která následně motivovala návrh vlastního frameworku.
Student byl během řešení velmi aktivní a značnou část práce řešil samostatně. Pravidelně konzultoval dosažené výsledky, přicházel s vlastními návrhy řešení a průběžně rozšiřoval funkcionalitu systému nad rámec základních požadavků zadání.
Na konzultace byl připraven a komunikace probíhala bez problémů. Oceňuji zejména vysokou míru samostatnosti při návrhu architektury frameworku, implementaci experimentální infrastruktury i řešení technicky náročnějších problémů souvisejících s 3D reprezentací a distribuovaným během experimentů.
Práce byla řešena průběžně a jednotlivé části byly pravidelně konzultovány. Student věnoval dostatečnou pozornost implementační i textové části práce a finální verze byla připravena v dostatečném předstihu.
Pozitivně hodnotím také rozsah experimentální části a snahu o systematické vyhodnocení výsledků.
Výsledky práce představují kvalitní základ pro další navazující výzkum v oblasti 3D Neural Cellular Automata a distribuovaných samoorganizujících se systémů. Student práci prezentoval také v rámci studentské konference Excel@FIT, kde získal ocenění odborné poroty.
Grade proposed by supervisor: A
Reviewer’s reportIng. Jakub Husa, Ph.D.
Množství i kvalita implementační části práce značně přesahuje požadavky zadání. I přes formální nedostatky v technické zprávě ji tak doporučuji hodnotit jako výbornou – 90 A.
Evaluation level: obtížnější zadání
Cílem práce bylo nastudovat problematiku neuronových sítí a celulárních automatů. A pomocí jejich kombinace vytvořit třírozměrný neurální celulární automat. Vzhledem k množství pokročilých problémů a technik které bylo nutné k řešení tohoto problému nastudovat, zadání považuji za nadprůměrně obtížné.
Prezentační úroveň technické zprávy je na dobré úrovni. Práce je logicky strukturována, a jednotlivé kapitoly na sebe smysluplně navazují.
Práce odborně popisuje základní celulární automaty i včechny jejich potřebné pokročilé varianty a rozšíření. Velmi chválím kapitolu 4 která detailně popisuje vybrané studie ze kterých tato práce vychází, a vysvětluje jejich význam pro tuto práci.
Text práce je vhodně doplněn několika diagramy které usnadňují pochopení struktury navrženého systému. Za nevhodné však považuji rozsáhlé ukázky kódu v kapitole 6, které by měly být uvedeny jako příloha, a ne být součástí hlavního textu práce.
Po jazykové stránce je práce na dobré úrovni, bez vážnějších nedostatků.
Za problematickou považuji existenci kapitoly 2 Abstrakt, která je uvedena až za úvodem, a vzhledem k existenci normálního i rozšířeného abstraktu by v této práci vůbec neměla existovat.
Výsledkem práce je sada tří samostatných, komunikujících nástrojů. Balíček nástrojů v jazyce Python pro tvorbu neurálního celulárního automatu. Přídavek do programu Blender, umožňující vizualizaci běhu vzniklého automatu. A TCP server který umožňuje výpočetně náročné trénování sítě delegovat na grafickou kartu vzdáleného zařízení.
Odevzdané zdrojové kódy jsou plně funkční, ale těžké na porozumění a měly by být lépe komentovány.
Funkcionalita vytvořeného systému byla ověřena sadou několika nezávislých testů, která zkoumala schopnosti celulárního automatu požadovaný obrazec nejen vytvořit, ale také udržet, a přetvořit do jiné podoby. Jejich výsledky dostatečně analyzovány a ilustrovány pomocí srozumitelných grafů.
Kvalita vytvořených nástrojů je na vysoké úrovni a považuji je za použitelné pro další výzkum.
Evaluation level: zadání splněno
Student splnil všechny body zadání.
Evaluation level: je v obvyklém rozmezí
Rozsah bakalářské práce je v obvyklém rozmezí.
Práce cituje 22 odborných zdrojů a 3 webové stránky. Použité zdroje jsou vhodně zvoleny, dobře pokrývají zvolenou problematiku, a v textu práce jsou řádně citovány.
Grade proposed by reviewer: A
Responsibility: Mgr. et Mgr. Hana Odstrčilová