Bachelor's Thesis

Industrial production simulator

Final Thesis 29.09 MB Appendix 32.78 kB

Author of thesis: Daniel Dušek

Acad. year: 2025/2026

Supervisor: Ing. František Rusnák

Reviewer: doc. Ing. Václav Kaczmarczyk, Ph.D.

Abstract:

This thesis describes the design and implementation of an application in Python for simulating the order of production orders. The application is focused on the production line used in the production of packaging boxes in the company EFKO-karton, s.r.o., Nové Veselí. The aim of the thesis is to create a tool that allows user to enter machines, workers, orders and a work calendar and, based on this data, compare different variants of the production plan.
The simulation model uses discrete event simulation and the Monte Carlo method. Random influences are included in the calculation, such as worker absence, machine failures and the occurrence of defective pieces. The output of the application is a recommended order of orders, a profit estimate, the success rate of meeting deadlines and a graphical display of the proposed production schedule.

Keywords:

Discrete Event Simulation, Monte Carlo Method, Production Planning, APS System, SimPy, Industrial Production

Date of defence

17.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Student obhájil bakalářskou práci. Komise neměla žádné námitky k řešené práci. V průběhu odborné rozpravy student odpověděl na dotazy oponenta doplněné dotazem na existující metody plánování výroby. V obecné diskusi byl nadále dotázán na interoperabilitu výrobního SW na různé výrobní linky a které parametry je třeba modifikovat a přeprogramovat. K metodě Monte Carlo dodal, že se používá na generování poruch strojů, avšak neuvedl statistické rozložení výstupu generátoru náhodných čísel. Závěrem byl dotázán na zákon velkých čísel, jak z rovnoměrných rozložení poskládat normální rozložení.

Language of thesis

Czech

Faculty

Department

Study programme

Automation and Measurement (BPC-AMT)

Composition of Committee

prof. Ing. Roman Prokop, CSc. (předseda)
prof. Ing. Pavel Václavek, Ph.D. (místopředseda)
Ing. Peter Honec, Ph.D. (člen)
doc. Ing. Václav Jirsík, CSc. (člen)
doc. Ing. Václav Kaczmarczyk, Ph.D. (člen)
Ing. Stanislav Klusáček, Ph.D. (člen)

Supervisor’s report
Ing. František Rusnák

Pan Dušek vypracoval bakalářskou práci na téma simulátoru běhu průmyslové výroby. Práce je v rozsahu 37 stran a je na dobré prezentační i formální úrovni. Práce využívá odkazy studijních materiálů problematiky simulátorů, webové stránky výrobců s existujícími simulačními nástroji, dokumentace knihoven pythonu a publikace zaměřené na softwarové využití knihoven. Simulátor byl vyvíjen pro firmu Efko. Student na softwaru pracoval samostatně a bohužel neměl možnost pořídit konkrétní data z výroby, takže v práci uvádí pouze přibližná data. To ale vzhledem k náplni práce považuji za správné řešení. Software vytvořený studentem poskytuje prostředí pro zadávání dat souvisejících s výrobou a integrovaný simulátor, který simuluje provoz výrobní linky kartonových krabic. Výstupem práce je samostatná aplikace pro PC, využívající programovací jazyk python, která má potenciál plnit funkci zjednodušené verze ERP v oblasti plánování výroby. Student při práci využil své zkušenosti z praxe na základě kterých, určil klíčové parametry simulátoru výrobní linky. Poté provedl rešerši vhodných nástrojů pro realizaci softwaru. Pro vytvoření softwaru student implementoval uživatelské rozhraní a jádro simulátoru.
Bakalářskou práci hodnotím A (90 bodů) a doporučuji k obhajobě. Points proposed by supervisor: 90

Grade proposed by supervisor: A

Předložená bakalářská práce se zabývá návrhem a implementací aplikace v jazyce Python pro simulaci pořadí výrobních zakázek na konkrétní výrobní lince společnosti EFKO-karton. Cíl práce je formulován srozumitelně a text má logickou návaznost od teoretického úvodu přes analýzu procesu až po implementaci a experimentální ověření.

Za hlavní přínos práce považuji praktické zaměření a snahu vytvořit skutečně použitelnou aplikaci, nikoli pouze teoretický model. Pozitivně hodnotím také volbu diskrétní simulace událostí a metody Monte Carlo, které jsou pro modelování výrobního procesu s náhodnými vlivy vhodné. Přehledně je popsána architektura systému, datový model i členění programu na jednotlivé moduly.

Po odborné stránce má však práce i slabší místa. Největším problémem je, že řada klíčových parametrů modelu je zvolena pouze orientačně, bez opory v reálných provozních datech; autor sám uvádí, že časy výroby a zmetkovitost pro jednotlivé typy krabic jsou modelové hodnoty. Tím se snižuje vypovídací hodnota výsledků a simulátor je třeba chápat spíše jako demonstrační nástroj než jako plnohodnotnou oporu pro rozhodování ve výrobě.

Za další nedostatek považuji zjednodušené modelování pracovníků, poruch i vadných kusů. Absence pracovníků i poruchy strojů jsou řešeny velmi jednoduchým pravděpodobnostním mechanismem bez hlubší vazby na reálný časový průběh výroby, což může vést k nereálnému chování modelu. Optimalizační část je navíc založena na úplném prohledání všech pořadí zakázek, což je použitelné pouze pro velmi malý počet úloh.

Po formální stránce je práce na dobré úrovni, text je převážně srozumitelný a strukturovaný. Slabší je místy terminologická přesnost a kritická interpretace dosažených výsledků; experimentální část mohla více diskutovat validaci vůči reálným datům firmy.

Práci celkově hodnotím jako zdařilou bakalářskou práci s praktickým přínosem, avšak s výraznějšími zjednodušeními v modelu a omezenou validační oporou. Práce splňuje základní požadavky kladené na bakalářskou práci a doporučuji ji k obhajobě se známkou B – 85 bodů. Topics for thesis defence:
  1. Váš model určuje typ krabice pouze podle maximálního rozměru a k typům přiřazuje fixní časy výroby a míry zmetkovitosti, které nejsou odvozené z reálných dat. Jak byste model upravil, aby lépe odrážel technologickou náročnost konkrétních výrobků a reálně naměřenou zmetkovitost na lince EFKO?
  2. Optimalizační modul testuje všechna pořadí zakázek a je proto omezen na maximálně sedm aktivních zakázek. Jaké metody nebo heuristiky byste použil pro rozšíření řešení na desítky zakázek a jak byste v takovém případě pracoval s kompromisem mezi maximalizací zisku a pravděpodobností včasného splnění všech termínů?
Points proposed by reviewer: 85

Grade proposed by reviewer: B

Responsibility: Mgr. et Mgr. Hana Odstrčilová