Přehled

Projekt pomocí strojového učení aproximuje proudění tekutin. Vznikl jako pokus urychlit topologickou optimalizaci, při které hledání vhodné topologie vyžaduje mnoho výpočetně náročných simulací.

Vyvíjel jsem tento projekt ve spolupráci s Ing. Lucií Kubíčkovou a Ing. Martinem Isozem, Ph.D. z Ústavu termomechaniky Akademie věd ČR. Výsledky výzkumu byly zveřejněny formou vědeckého článku na konferenci Topical Problems of Fluid Mechanics. Článek naleznete zde.
Co na obrázcích vidíme?

Obrázek výše zobrazuje bitmapovou reprezentaci topologie. Bílé plochy představují pevný materiál, černé plochy dutiny. Cílem modelu je predikovat pole rychlosti proudění a tlaku v takových topologiích. Tento případ je fluidní mísič, kde tekutina vstupuje zleva a vystupuje vpravo. Model se musí naučit, jak tekutina proudí složitou geometrií. Výsledná pole rychlosti a tlaku jsou zobrazena níže.

Detaily projektu
Projekt zahrnoval několik klíčových kroků:
- Generování dat: Vytvořili jsme dataset simulací proudění tekutin pomocí OpenFOAM. Tento dataset slouží jako ground truth pro trénink modelů.
- Vývoj modelu: Téměř rok jsme experimentovali s různými architekturami (RBF, MLP, CNN, Autoenkodéry, U-Net a další), abychom nalezli nejefektivnější model pro aproximaci proudění a dalších vlastností.
- Trénink a vyhodnocení: Modely jsme trénovali na vygenerovaném datasetu a hodnotili jejich výkon metrikami i vizuální inspekcí predikcí na topologiích, které model nikdy neviděl.
- Iterace: Na základě výsledků průběžně iterujeme architekturu a tréninkový proces.
V poslední době se zaměřujeme na zdokonalování ztrátových funkcí a integraci fyzikálně informovaných neuronových sítí (PINNs). Cílem je zajistit, aby model nejen fitoval tréninková data, ale také respektoval základní fyzikální zákony dynamiky tekutin.
Použité technologie
- Python
- PyTorch
- NumPy
- Matplotlib
- Jupyter Notebooks
- Hydra (správa konfigurace)
- MLflow (sledování experimentů)