Optimalizace zaměstnanců McDonald's (Simprocess)

From Simulace.info
Revision as of 21:12, 14 June 2017 by Xzukm00 (talk | contribs)
Jump to: navigation, search

Zadání

  • Název simulace: Optimalizace zaměstnanců McDonald's
  • Předmět: 4IT495 Simulace systémů (LS 2016/2017)
  • Autor: Bc. Markéta Zukalová
  • Typ modelu: Teorie front, diskrétní simulace
  • Modelovací nástroj: SIMProcess 6.1

Abstrakt simulace

Cílem simulace je optimalizovat počet a rozmístění zaměstnanců vybrané pobočky McDonald's na jednotlivých provozních úsecích v rámci 8 hodinového úseku tak, aby každý požadavek (zákazník), který přichází do systému, byl co nejrychleji obsloužen. Pro obslužení jednoho zákazníka (vyřízení jednoho požadavku) je nutné zkoordinovat tři samostatné výrobní/výdejní úseky a reagovat na jejich vytížení. Stanovování jednotlivých parametrů a omezení simulace vychází z reálných dat vybrané pobočky - McDonald's Průhonice I, která se nachází na 4,5 km za Prahou na dálnici D1 směrem na Brno (hodinové tržby, počet zákazníků, počet vyrobených produktů, maximální počet zaměstnanců atd.). Vedlejším přínosem simulace je i reálné využití - optimalizaci pracovníků na úsecích na základě množství zákazníků je problém, který řešíme na každodenní bázi.

Definice problému

Simulace zkoumá optimální rozmístění zaměstnanců na jednotlivých úsecích výroby provozu restaurace na základě složení (product mixu) objednávek. Každá objednávka zákazníka přichází do systému jako jeden požadavek z prodejního místa (standardní pokladna/samoobslužný kiosek - vzhledem k tomu, že požadavky jdou do systému seřazeny dle času zaplacení, nemá typ prodejního místa vliv na celkový čas strávený v systému). Požadavek je dále rozdělen na jednotlivé produkty, které jsou směrovány na příslušný výrobní úsek, kde jsou zpracovány zaměstnanci. Jakmile jsou připraveny všechny produkty objednávky, zaměstnanec, který zodpovídá za výdej objednávky, produkty zkompletuje a předá zákazníkovi, tím je ukončen celý požadavek a zákazník odchází ze systému. Tento typ vyřízení objednávek je nazýván SPA - Service Production Assembly (více informací můžete nalézt zde).

Zákazník tedy přijde do provozovny a vytvoří objednávku u prodejního místa. Objednávky se řadí za sebou dle okamžiku zaplacení a podle složení se postoupí na příslušný výrobní úsek; celý proces sestává ze 3 sekcí - příjem objednávky, příprava objednávky a výdej objednávky.

V příjmové zóně jsou pouze pokladny, výdejová zóna představuje zaměstnance, kteří objednávky kompletují (runneři) a předávají zákazníkům.

Výrobní úseky jsou celkem 3 (sekce příprava objednávky):

  • Kuchyň - skládá se celkem ze 4 výrobních linek MFY (Made for You), kde jsou připravovány core a kampaňové sendviče (burgery, wrapy, sendviče, finger food položky apod.). Reálně je každá linie schopna vyrobit maximálně 125 produktů za hodinu; pokud hodinový obrat překročí toto číslo, dochází k otevření další výrobní linky; tzn. v případě, pokud je hodinový obrat produktů (dále označován SN# - sendwich count) 350 ks, je potřeba mít otevřené 3 linie, aby byly produkty připraveny včas.
  • Beverage Cell Unit (BCU) - skládá se celkem ze 2 linií a dochází zde k přípravě nápojů (studených i teplých), zmrzlin, salátů, balených vod a ostatních dezertů.
  • Frech Fries production - hranolková stanice, zde jsou připravovány 3 velikostní porce hranolek.

Jakmile jsou připraveny všechny položky objednávky, objednávka může být expedována a zkompletována, poté je předána zákazníkovi dle čísla na účtence. Zaměstnanci ve výdejové zóně mají informaci z expo monitorů (expediční monitory), jaké položky objednávky obsahují, aby je mohli sestavit (viz. obrázek níže). Schéma výrobního a kompletačního procesu je znázorněno na obrázku:

Schéma přípravy objednávky - jakmile jsou připraveny produkty z kuchyně, hranolek a BCU, zaměstnaci u výdeje objednávku zkompletují a předají zákazníkovi ve výdejové zóně
Expo monitor - příklad zobrazení objednávek ve výdejové zóně


Výše zmíněné úseky obsahují jednotlivá stanoviště, kam mohou být zaměstnanci přidělováni. Tabulka níže obsahuje seznam stanovišť a jejich maximální kapacitu (s ohledem na dispoziční možnosti provozu):

Maximální kapacity stanovišť
Sekce Stanoviště Maximální kapacita (počet zaměstnanců)
Příprava BCU 4
Příprava FFP 2
Příprava Kuchyň - 1 linie 4
Kompletace Runner 10

Kapacita jedné kuchyňské linie jsou 3 zaměstnanci, při 4 liniích je tedy maximální kapacita celé kuchyně 16 zaměstnanců.

Simulace zachycuje 8 hodinový úsek 11-19, kdy je provoz restaurace nejsilnější; simulace abstrahuje od ranních a nočních hodin, které jsou provozně specifické (zaměstnanci jsou využíváni i na ostatní aktivity mimo přípravy jídel, např. úklid, doplňování surovin apod., cílem tedy není nejkratší možné obsloužení zákazníka s využitím všech dostupných zdrojů). Množství dostupných zaměstnanců v toto časové období pro tyto úseky je vždy minimálně 22 pro každý den.

Metoda

Pro provedení simulace jsem využila program SIMPROCESS, který umožňuje provádět diskrétní simulace a řešení problémů spojených s teorií front. Program je procesně orientovaný, je v něm možné zmapovat celý proces řešení požadavku a nabízí také podrobné analytické reporty. Celá práce s aplikací je jednodušší i díky poměrně přehlednému uživatelskému rozhraní.

Data pro simulaci jsem čerpala z IT systémů a reportů restaurace; přesná data (za období květen 2017) je možné zobrazit v tabulce zde (tabulka slouží pouze pro informativní účely manažerů restaurace, nepředstavuje výstup ze systémů restaurace).

Model - detailní vlastnosti

Charakteristiky

Entity

Jak jsem zmínila výše, každá objednávka přichází do systému jako výrobní požadavek na jednotlivé výrobní linie. Entity vstupující do systému jsou tedy trojího charakteru:

  • Požadavek na produkt z kuchyně
  • Požadavek na hranolky
  • Požadavek na produkt z BCU

Zdroje

Zdroje představují zaměstnanci na jednotlivých stanovištích, jako výchozí jsou nastavena následující obsazení stanovišť (minimální obsazení směny):

  • BCU - 3 zaměstnanci
  • FFP - 1 zaměstnanec
  • Kuchyň - 6 zaměstnanců
  • Runner - 5 zaměstnanců

SN#

Na obrázcích níže jsou uvedeny průměrné počty produktů v objednávkách pro jednotlivé výrobní úseky, které vychází z dat za období 1.5.2017 - 31.5.2017 v časovém intervalu 11:00-19:00 (odkaz na data jsem uváděla v úvodu simulace). Při výpočtu jsem vycházela z indexu Item per order, který nám říká průměrný počet produktů v objednávce pro danou linii a průměrným počtem zákazníků v dané časové intervaly.

Počet produktů pro sekci MFY
Počet produktů pro sekci BCU
Počet produktů pro sekci FFP

Procesy

Celý systém vyřízení požadavku sestává z následujících 4 procesů:

Order.png

Proces Příjem požadavku

Proces příjem požadavků sestává ze tří generátorů entit - požadavky na MFY, BCU a FFP. Množství požadavků je dáno Poissonovým rozdělením s parametrem rozdělení, který odpovídá průměrnému počtu produktů pro každou hodinu v intervalu 11:00-19:00 (viz tabulky výše), tedy množství objednávek na dané výrobní úseky (pro účely simulace jsem vytvořila 8 časových úseků, přičemž každý obsahuje odpovídající distribuci). Ty dohromady tvoří objednávky zákazníků. Zároveň za každým generátorem bylo nezbytné přidat prodlevu, která odpovídá průběžnému příchodu požadavků do systému (zákazníci přicházejí postupně). Využila jsem tedy vztahu mezi Poissonovým a exponenciálním rozdělením a prodlevy jsem nastavila tak, aby bylo zajištěno co nejpřesnější rozdělení během časového úseku.

Proces1.png

Proces Příprava produktů

Report.png

V tomto procesu je objednávka rozdělena a přiřazena na tři výrobní úseky. Na každý výrobní úsek jsou přiřazeny zdroje v podobě počtu zaměstnanců, kteří je obsluhují. Průměrná doba výroby produktu vychází z dat, která jsem získala z pokladního systému restaurace (report poskytuje průměrné časy obsluhy v sekundách pro každou linii za vybraný den); vzorek reportu, ze kterého jsem vycházela, se nachází na obrázku vedle a na jeho základě jsem stanovila údaje takto (od průměrných dat z reportu o délce přípravy produktu bylo zároveň nutné odečíst průměrný čas, po který zákazník objednávku vytváří):

  • doba přípravy produktů na MFY = exponenciální rozdělení se střední hodnotou 48
  • doba přípravy produktů na BCU = exponenciální rozdělení se střední hodnotou 34
  • doba přípravy produktů na FFP = exponenciální rozdělení se střední hodnotou 10
Proces2.png

Na závěr celého procesu probíhá závěrečná kontrola, že všechny produkty jsou připraveny, před vlastní kompletací objednávky.

Proces Kompletace objednávky

Tento proces zahrnuje kompletaci objednávky runnery ve výdejové zóně; jakmile jsou připraveny veškeré produkty objednávky, runner zahájí přípravu. Průměrná doba kompletace opět odpovídá exponenciálnímu rozložení se střední hodnotou 7.

Proces3.png

Proces předání objednávky

Proces předání objednávky obsahuje aktivitu "Čekání na zákazníka", a to z toho důvodu, že zákazníkům často trvá, než si objednávku vyzvednou. Runner nesmí objednávku nechat ležet na pultu, ale musí počkat, až si ji zákazník přijde vyzvednout a předat mu ji, aby nedošlo k záměně objednávek. Během čekání se nemůže věnovat přípravě další objednávky. Tomuto procesu jsou také přiřazeny zdroje v podobě zaměstnanců - runnerů. U stanovení střední hodnoty jsem vycházela z vlastního pozorování - měřila jsem střední hodnotu 30 časů, do kdy si zákazník přišel vyzvednout objednávku.

Proces4.png

Výsledky simulace

Z vygenerovaného reportu jsem získala následující informace o průběhu procesu:

Typ aktivity Průměrný čas řešení požadavku (v sekundách) Počet případů (za 8 hod)
Příprava produktů MFY 61,2 2135
Příprava produktů BCU 57,6 1558
Příprava produktů FFP 10,8 2243
Kompletace objednávky 7,2 5936
Čekání na zákazníka 14,4 5936

Z výše uvedeného je vidět, že průměrná délka řešení požadavku skutečně odpovídá realitě (datům z reportů); příležitost vidím ve faktu, že SIMPROCESS ukazuje veškeré časové úseky pouze v hodinách, a proto bylo nutné převést přepočet na sekundy (vzhledem k zaokrouhlení nebylo možné zjistit přesný čas řešení požadavku.

Doba čekání - výchozí situace

Průměrná doba čekání byla ve výchozím nastavení následující:

Typ aktivity Průměrná doba čekání (v hod)
Příprava produktů MFY 0,297
Příprava produktů BCU 0,305
Příprava produktů FFP 0,402
Kompletace objednávky 0,007
Čekání na zákazníka 0,007

Z výše uvedených výsledků je patrné na první pohled, že minimální počet zaměstnanců na směně není dostatečný, protože časy čekání překračují na všech výrobních úsecích únosnou dobu; výchozí počet vychází z minimálního počtu, při kterém jsou stanoviště otevřena, nicméně při takto vysokém plánovaném počtu produktů je směna standardně obsazena větším počtem zaměstnanců. Pokud by nastala současná situace při aktuálním obsazení stanovišť, i přes relativně rychlou výrobu by požadavky zůstávaly dlouhou dobu. Ve druhé fázi tedy doplním stanoviště dle standardního počtu zaměstnaců přes provozní špičku.

Simulace č. 1 - doplnění zaměstnanců

Jak jsem zmínila výše, v dalším kroku doplním počet zaměstnanců při zachování maximálních kapacit stanovišť, a to následovně:

  • Produkce MFY - 7 zaměstnanců
  • Produkce BCU - 4 zaměstnanci
  • Produkce FFP - 2 zaměstnanci
  • Kompletace objednávek a výdej - 8 zaměstnanců

Výsledky jsou uvedeny v následující tabulce:

Typ aktivity Průměrná doba čekání (v hod) Průměrný počet čekajících entit
Příprava produktů MFY 0,249 71
Příprava produktů BCU 0,236 44
Příprava produktů FFP 0,202 57
Kompletace objednávky 0,001 4
Čekání na zákazníka 0,001 4

Je patrné, že časy čekání na kompletaci a výdej jsou minimální; celkové doby čekání jsou nižší než v prvním případě, což je dáno lepším obsazením jednotlivých stanovišť. Zároveň nejdelší čas čekání je zastoupen u produktů linie MFY - v dalším kroku tedy přemístím zaměstnance tak, abych podpořila tento úsek na úkor zaměstnanců, kteří objednávky kompletují.

==Simulace č. 2 - posílení MFY

  • Produkce MFY - 9 zaměstnanců
  • Produkce BCU - 4 zaměstnanci
  • Produkce FFP - 2 zaměstnanci
  • Kompletace objednávek a výdej - 6 zaměstnanců
Typ aktivity Průměrná doba čekání (v hod) Průměrný počet čekajících entit
Příprava produktů MFY
Příprava produktů BCU
Příprava produktů FFP
Kompletace objednávky
Čekání na zákazníka

Závěr

Z výsledků simulací je patrné, že základem je dostatečně obsazená směna. Pokud budu vycházet z předpokladu, že na směně je dostatek zaměstnanců, nejvhodnější řešení představuje simulace č. 4, kde jsou celkové časy čekání nejkratší. Vzhledem k reálným datům a výsledkům s vypovídající hodnotou mohu konstatovat, že simulace je využitelná pro praktické otestování rozmístění směny na restauraci.

Soubory ke stažení

Na tomto odkazu je možné nalézt zdrojový soubor pro simulaci s výchozím nastavením - File:Mcd.spm

--Xzukm00 (talk) 21:58, 9 June 2017 (CEST)