Difference between revisions of "User:Isar00"

From Simulace.info
Jump to: navigation, search
(Model)
(Výsledky)
Line 82: Line 82:
  
 
=Výsledky=
 
=Výsledky=
 
+
Simulace spuštěná s výše uvedenými proměnnými nám říká že náklady čajovny za pracovní týden činí cca 100,000 Korun, její zisky cca 300,000 korun. Tedy marže vychází na 200,000 tisíc. Nicméně, simulace nezohledňovala spoustu dalších proměnných jako náklady za nájem, vodu, elektřinu aj.
  
 
=Závěr=
 
=Závěr=

Revision as of 17:03, 27 June 2025

Úvodní odstavec

Definice problému

Simulace provozu čajovny s vodními dýmkami slouží k analýze vytíženosti podniku v průběhu dne a identifikaci klíčových bodů, kde může docházet k problémům, jako je nedostatek zaměstnanců, surovin, nebo volných míst k sezení, a nebo třeba také optimalizace nákladů a tedy zvětšení zisku. Čajovna je v provozu každý den mezi 16:00 až 01:00, má 40 míst k sezení a 1-3 zaměstnance co jsou momentálně v čajovně. Nabízí vodní dýmky, čaj a vodu. Globálním cílem simulace je tedy ověřit, zda jsou stávající provozní parametry dostačující a kde by bylo vhodné je optimalizovat.

Metoda

Prvně, během cca 10 návštěv podniku vznikla určitá představa o chodu podniku založená na pozorování chování návštěvníků a hlavně diskuzi s personálem, díky čemuž se podařilo odhalit sezonalitu denního i týdenního charakteru. Ukázalo se, že špičky návštěvy spadají do časového okna mezi 19:00 a 23:00. Zároveň platí, že se čajovna navštěvuje nejvíce během pátků a sobot - což dává smysl, jelikož od pondělí do pátečního večera průměrný návštěvník podniku takového charakteru pracuje a v neděli se opět chystá do práce.

Simulace je provedena pomocí systému Vensim. Po namáhavých pokusech o zprovoznění simulace s krokem o 1 minutě, která bohužel ve Vensimu stabilně padala, bylo rozhodnuto modelovat klíčové proměnné modelovány diskrétně s krokem 15 minut - pro každý datový bod z časové řady se tedy jedná o akumulaci měřené charakteristiky během následujících 15 minut. Vstupní data - primárně tedy proměnná arrivals pro příchody klientů - byla agregována z odhadnutých dat, která jsem simuloval v Pythonu se znalostí nabytých během návštěvy podniku. Během tvorby dat v Pythonu byla zohledněna i již zmíněná sezonalita jak denní, tak týdenní. Simulace ve Vensimu předpokládá, že každý klient setrvá v čajovně přibližně 120 minut, je to tedy zafixováno jako konstanta.

Data vytvořená v Pythonu jsou oindexovaná od 1 do 3780. Logika je následující: čajovna pracuje 7 dní v týdnu, jeden její pracovní den trvá 9 hodin, což je 540 minut. Tedy za jeden týden se odpracuje 3780 minut.

Ve Vensimu byla tato data pro proměnnou arrivals zaintegrována pomocí lookup funkce s dvojicemi (čas, počet příchodů) a v modelu se sleduje zpoždění mezi příchodem a odchodem. Tabák, uhlí, citrony, bylinky a peníze jsou modelovány jako stavy, do kterých vstupují a vystupují odpovídající toky podle spotřeby na jednoho klienta. Dále se zohledňuje kolik během každého kroku simulace podnik vydělá (moneyIn) a kolik utratí (moneyOut).

Model

Model má následující nastavení:

Units for Time = Minute

INITIAL TIME = 0 (první minuta pracovního týdne)

FINAL TIME = 3780 (poslední pracovní minuta pracovního týdne)

TIME STEP = 15 (data o evidenci příchodů návštěvníků, jak bylo psáno výše, jsou agregovaná po 15 minutových blocích)


Proměnné:

myT: TIME BASE( 0 , 1 ).

arrivals: Počet příchozích klientů v daném časovém kroku (tj. každých 15 minut).

arrivedClients: Počet klientů, kteří do čajovny dorazili v daném časovém kroku – hodnota se bere z arrivals pomocí arrivals(myT).

departures: Počet klientů, kteří čajovnu v daném intervalu opouštějí (fixně zadaná časové zpoždění o 120 minut po příchodu – vycházím z toho, co bylo popsáno v sekci Metoda). Počítá se jako DELAY FIXED(arrivals(myT), 120, 0).

currentClients: Aktuální počet klientů přítomných v čajovně (vypočítává se jako arrivedClients minus departures). Počítá se jako INTEG((arrivals(myT) - departures)/15, 0).

occupiedSeats: Počet obsazených míst v čajovně, daný aktuálním počtem klientů a kapacitou.

neededWorkloadUnits: Celková potřebná pracovní kapacita (počet jednotek práce potřebných pro obsluhu všech klientů).

deltaWorkload: Rozdíl mezi potřebnou pracovní kapacitou a skutečně dostupnou prací zaměstnanců; ukazuje, jestli je obsluha přetížena.

inPreparationTeas: Počet čajů, které jsou právě ve fázi přípravy. Počítá se jako arrivedClients * 0.5, jelikož na základě konzultace s obsluhou si vodu dává každý druhý klient.

inPreparationHookas: Počet vodních dýmek (hookah), které jsou právě připravovány. Počítá se jako arrivedClients * 0.95. Empiricky bylo vypozorováno, že téměř každý návštěvník si dá vodní dýmku, používám konstantu 0.95 pro případné odchylky.

inPreparationWater: Počet porcí vody, které jsou aktuálně ve fázi přípravy. Počítá se jako arrivedClients * 0.5, nebo-li každý druhý zákazník si objedná karafu vody.

moneyIn: Celkové tržby (příjmy) za objednávky klientů v daném intervalu. Počítáno jako 400 * inPreparationHookas + 200 * inPreparationTeas + 80 * inPreparationWater, kde jednotlivé konstanty značí prodejní cenu položek.

moneyOut: Výdaje čajovny na suroviny, mzdy a další provozní náklady. Počítá se jako herbs + charcoalBriquettes + tobacco + wage + lemon.

herbs: Náklady za čajovou směs pro čaj v daném časovém kroku (tj. každých 15 minut).

charcoalBriquettes: Náklady za uhlí pro vodní dýmku v daném časovém kroku (tj. každých 15 minut).

tobacco: Náklady za tabák v daném časovém kroku (tj. každých 15 minut).

lemon: Náklady za citrón v daném časovém kroku (tj. každých 15 minut).

employees: Počet zaměstnanců na směně. Typicky se rovná 2.

wage: Výše vyplácené mzdy zaměstnancům za daný časový krok (za každých 15 minut). Hodinová mzda je 200 Kč čistého na zaměstnance.

herbsAveragePrice: Průměrná cena bylinek na jednu porci čaje. Činí 50 korun.

charcoalBriquetteAveragePrice: Průměrná cena jednoho uhlíku/brikety. Činí 3 koruny per briketa.

charcoalBriquettePerHookah: Počet uhlíků/briket potřebných na jednu vodní dýmku během celé doby pobytu klienta. Typicky 12 briket.

tobaccoGramAveragePrice: Průměrná cena gramu tabáku. Typicky 4 koruny.

tobaccoGramPerHookah: Počet gramů tabáku na jednu vodní dýmku. Typicky 15 gramů.

lemonAveragePrice: Průměrná cena jednoho citronu. Typicky 12 korun.

lemonPerCarafe: Počet citronů potřebných na jednu karafu nápoje. Typicky 0.5, tedy půlka citrónu.

Ri model.png

Výsledky

Simulace spuštěná s výše uvedenými proměnnými nám říká že náklady čajovny za pracovní týden činí cca 100,000 Korun, její zisky cca 300,000 korun. Tedy marže vychází na 200,000 tisíc. Nicméně, simulace nezohledňovala spoustu dalších proměnných jako náklady za nájem, vodu, elektřinu aj.

Závěr

Kód