Difference between revisions of "Pivnice (Vensim)"

From Simulace.info
Jump to: navigation, search
Line 13: Line 13:
  
 
==Definice problému==
 
==Definice problému==
Moje rodina vlastní pivnici na kraji Prahy. Na rozdíl od podniků v centru je potřeba se zde o něco více zajímat o to, co přiláká zákazníky a zvýší tak návštěvnost, jelikož se zde denně pohybuje podstatně méně lidí a zároveň konkurenčních podniků je v okolí poměrně dost. Z tohoto důvodu je cílem simulace nalézt entity a jejich vztahy, které ovlivňují návštěvnost pivnice a vhodným nastavením parametrů pomoci zvýšit návštěvnost a tím i tržby.
+
Moje rodina vlastní pivnici na kraji Prahy. Na rozdíl od podniků v centru je potřeba se zde o něco více zajímat o to, co přiláká zákazníky a zvýší tak návštěvnost, jelikož se zde denně pohybuje podstatně méně lidí a zároveň konkurenčních podniků je v okolí poměrně dost. Z tohoto důvodu je cílem simulace nalézt entity a jejich vztahy, které ovlivňují návštěvnost pivnice, což může následně pomoci se zvýšením návštěvnosti a tím i tržeb.
  
 
==Metoda==
 
==Metoda==
Line 22: Line 22:
  
 
===Diagram kauzálních smyček===
 
===Diagram kauzálních smyček===
[obrázek CLD]
+
 
 +
[[File:Pivnice CLD.PNG|center|thumb|800px|Diagram kauzálních smyček]]
  
 
===Diagram toků===
 
===Diagram toků===
[obrázek SFD]
+
 
 +
[[File:Pivnice SFD.PNG|center|thumb|800px|Diagram toků]]
  
 
===Entity modelu===
 
===Entity modelu===
Line 50: Line 52:
 
  '''Atraktivita piva'''
 
  '''Atraktivita piva'''
 
   
 
   
  Atraktivita piva závisí na kvalitě a ceně. Čím vyšší je kvalita a nižší cena, tím je pivo atraktivnější. Proto lze atraktivitu počítat jako podíl
+
  Atraktivita piva závisí na kvalitě a ceně. Čím vyšší je kvalita a nižší cena, tím je pivo atraktivnější. Proto lze atraktivitu počítat jako  
  kvality a ceny.
+
  podíl kvality a ceny.
 
   
 
   
 
  '''Vzorec:''' Kvalita piva / Cena piva
 
  '''Vzorec:''' Kvalita piva / Cena piva
Line 75: Line 77:
 
  '''Potenciální maximální návštěvnost'''
 
  '''Potenciální maximální návštěvnost'''
 
   
 
   
  Představuje potenciální maximální návštěvnost za jeden den, která je dána kapacitou podniku, počtem hodin otevírací doby a průměrnou dobou, kterou
+
  Představuje potenciální maximální návštěvnost za jeden den, která je dána kapacitou podniku, počtem hodin otevírací doby a průměrnou dobou,  
  zákazník stráví v podniku.
+
  kterou zákazník stráví v podniku.
 
   
 
   
 
  '''Vzorec:''' Kapacita podniku * Počet hodin otevírací doby / Průměrná doba strávená v podniku
 
  '''Vzorec:''' Kapacita podniku * Počet hodin otevírací doby / Průměrná doba strávená v podniku
Line 91: Line 93:
 
  '''Lokalita'''
 
  '''Lokalita'''
 
   
 
   
  Lokalita, ve které se podnik nachází. Může nabývat hodnot z předem daného výčtu, při čemž každá hodnota odpovídá určitému typu lokality, které se  
+
  Lokalita, ve které se podnik nachází. Může nabývat hodnot z předem daného výčtu, při čemž každá hodnota odpovídá určitému typu lokality,  
navzájem liší tím, jak jsou pro podnik výhodné z hlediska návštěvnosti.
+
které se navzájem liší tím, jak jsou pro podnik výhodné z hlediska návštěvnosti.
 
   
 
   
 
  '''Hodnota:'''
 
  '''Hodnota:'''
 
  3 – podnik umístěný v centru města (Prahy), kde se denně pohybuje velké množství lidí
 
  3 – podnik umístěný v centru města (Prahy), kde se denně pohybuje velké množství lidí
  2 – podnik umístěný na kraji města (Prahy), kde se denně pohybuje méně lidí, ale stále je zde určité množství podniků v okolí a bydlí zde poměrně
+
  2 – podnik umístěný na kraji města (Prahy), kde se denně pohybuje méně lidí, ale stále je zde určité množství podniků v okolí a bydlí zde  
     mnoho lidí  
+
     poměrně mnoho lidí  
 
  1 – podnik umístěný na vesnici či v lokalitě, kde se pohybuje málo lidí a málo lidí zde žije
 
  1 – podnik umístěný na vesnici či v lokalitě, kde se pohybuje málo lidí a málo lidí zde žije
  
Line 103: Line 105:
 
   
 
   
 
  Vyjadřuje míru konkurence pivnice. Může nabývat hodnot z předem daného výčtu. Jelikož konkurence působí na návštěvnost opačně než dříve zmíněné  
 
  Vyjadřuje míru konkurence pivnice. Může nabývat hodnot z předem daného výčtu. Jelikož konkurence působí na návštěvnost opačně než dříve zmíněné  
  entity (čím větší je konkurence, tím menší je návštěvnost), jsou hodnoty uspořádány v opačném pořadí (čím menší je hodnota, tím menší je konkurence a  
+
  entity (čím větší je konkurence, tím menší je návštěvnost), jsou hodnoty uspořádány v opačném pořadí (čím menší je hodnota, tím menší je  
větší návštěvnost).
+
konkurence a větší návštěvnost).
 
   
 
   
 
  '''Hodnota:'''
 
  '''Hodnota:'''
Line 113: Line 115:
 
  '''Návštěvnost – konstantní'''
 
  '''Návštěvnost – konstantní'''
 
   
 
   
  Udává denní návštěvnost, která je konstantní pro všechny dny simulace a slouží jen jako pomocná proměnná, která je použita v toku ''Návštěvnost'', kde
+
  Udává denní návštěvnost, která je konstantní pro všechny dny simulace a slouží jen jako pomocná proměnná, která je použita v toku ''Návštěvnost'',  
  je upravena o náhodu. Návštěvnost závisí především na atraktivitě piva, příjemnosti obsluhy, lokalitě, konkurenci a potenciální maximální  
+
  kde je upravena o náhodu. Návštěvnost závisí především na atraktivitě piva, příjemnosti obsluhy, lokalitě, konkurenci a potenciální maximální  
 
  návštěvnosti. Zde je důležité zmínit několik věcí.
 
  návštěvnosti. Zde je důležité zmínit několik věcí.
 
   
 
   
 
  Při výpočtu se vychází z potenciální maximální návštěvnosti, která může být jen snižována, pokud některé entity, které ji ovlivňují, nejsou na  
 
  Při výpočtu se vychází z potenciální maximální návštěvnosti, která může být jen snižována, pokud některé entity, které ji ovlivňují, nejsou na  
  maximální úrovni. To znamená, že pokud by teoreticky existoval podnik s příjemnou obsluhou, který by nabízel pivo maximální kvality a byl by umístěn v  
+
  maximální úrovni. To znamená, že pokud by teoreticky existoval podnik s příjemnou obsluhou, který by nabízel pivo maximální kvality a byl by  
centru Prahy, kde by se nenacházela konkurence, tak by této potenciální maximální návštěvnosti dosáhl. Jinak entita (například lokalita), která  
+
umístěn v centru Prahy, kde by se nenacházela konkurence, tak by této potenciální maximální návštěvnosti dosáhl. Jinak entita (například  
nedosahuje nejlepší hodnoty, sníží potenciální maximální návštěvnost o určitý počet procent podle toho, o kolik je horší. Například při nejlepší  
+
lokalita), která nedosahuje nejlepší hodnoty, sníží potenciální maximální návštěvnost o určitý počet procent podle toho, o kolik je horší.  
hodnotě lokality (tedy 3) je potenciální maximální návštěvnost násobena jedničkou, tedy se nezmění. Pokud by lokalita dosahovala hodnoty 2, tak bude  
+
Například při nejlepší hodnotě lokality (tedy 3) je potenciální maximální návštěvnost násobena jedničkou, tedy se nezmění. Pokud by lokalita  
potenciální maximální návštěvnost násobena číslem 0,5 a sníží se tedy na polovinu a při hodnotě lokality 1 by se násobila číslem 0,3. Postup je stejný  
+
dosahovala hodnoty 2, tak bude potenciální maximální návštěvnost násobena číslem 0,5 a sníží se tedy na polovinu a při hodnotě lokality 1 by se  
u všech entit kromě konkurence, jelikož u té mají hodnoty obrácený význam (čim nižší hodnota, tím lepší). Zde se proto přímo dělí hodnotou konkurence.  
+
násobila číslem 0,3. Postup je stejný u všech entit kromě konkurence, jelikož u té mají hodnoty obrácený význam (čim nižší hodnota, tím lepší).  
Například při žádné konkurenci bude její hodnota 1 a potenciální maximální návštěvnost to tedy neovlivní.
+
Zde se proto přímo dělí hodnotou konkurence. Například při žádné konkurenci bude její hodnota 1 a potenciální maximální návštěvnost to tedy  
 +
neovlivní.
 
   
 
   
 
  '''Vzorec:'''  
 
  '''Vzorec:'''  
Line 134: Line 137:
 
   
 
   
 
  Tento tok již jen upravuje pomocnou proměnou ''Návštěvnost – konstantní'' o náhodu a výsledek zaokrouhlí na celé číslo. Je použito rovnoměrné  
 
  Tento tok již jen upravuje pomocnou proměnou ''Návštěvnost – konstantní'' o náhodu a výsledek zaokrouhlí na celé číslo. Je použito rovnoměrné  
  rozdělení s minimální hodnotou o 10 % menší než vypočtená konstantní návštěvnost a s maximální hodnotou o 10 % vyšší. Návštěvnost je upravena o náhodu
+
  rozdělení s minimální hodnotou o 10 % menší než vypočtená konstantní návštěvnost a s maximální hodnotou o 10 % vyšší. Návštěvnost je upravena o
  z toho důvodu, že i když do podniku chodí většinou každý den podobný počet zákazníků, tak nikdy tento počet není konstantní, nedá se dopředu přesně  
+
  náhodu z toho důvodu, že i když do podniku chodí většinou každý den podobný počet zákazníků, tak nikdy tento počet není konstantní, nedá se
určit a je tedy náhodný.
+
dopředu přesně určit a je tedy náhodný.
 
   
 
   
 
  '''Vzorec:''' INTEGER(RANDOM UNIFORM(Návštěvnost – konstantní * 0.9, Návštěvnost – konstantní * 1.1, 0 ))
 
  '''Vzorec:''' INTEGER(RANDOM UNIFORM(Návštěvnost – konstantní * 0.9, Návštěvnost – konstantní * 1.1, 0 ))
Line 176: Line 179:
 
  '''Vzorec:''' INTEG (Zvýšení tržeb, 0)
 
  '''Vzorec:''' INTEG (Zvýšení tržeb, 0)
 
   
 
   
 +
===Dosažení konkrétních hodnot===
 +
Do proměnných modelu byly následně dosazeny konkrétní hodnoty převzaté z reálných dat naší rodinné pivnice, které lze vidět na následujícím obrázku.
 +
 +
[[File:Pivnice SFD konrétní hodnoty.PNG|center|thumb|800px|Dosazení konkrétních hodnot do proměnných]]
 +
 +
Krok simulace byl nastaven na 1 den a doba na 30 dní.
 +
 
==Výsledky==
 
==Výsledky==
 +
Na následujícím grafu je vidět průběh denní návštěvnosti, která se pohybuje okolo hodnoty 180.
 +
 +
[[File:Navstevnost graf.PNG|center|thumb|700px|Vývoj denní návštěvnosti]]
 +
<br />
 +
Celkové tržby se vyvíjejí poměrně lineárně a na konci měsíce dosáhnou hodnoty 239 625 Kč, což poměrně odpovídá tržbám naší pivnice, stejně jako denní návštěvnost.
 +
 +
[[File:Trzby graf.PNG|center|thumb|700px|Vývoj celkových tržeb]]
  
 
==Závěr==
 
==Závěr==
 +
Ačkoliv po dosazení hodnot vycházejí reálná čísla naší pivnice, je zřejmé, že model není dokonalý. Snažil jsem se kvantifikovat vztahy co nejlépe, ale nebylo to snadné a řekl bych, že u něčeho tak náhodného, jako je návštěvnost, to není ani úplně možné provést na 100 % přesně. Model by bylo možno rozšířit a zpřesnit použitím širších výčtů přípustných hodnot u proměnných (například pro lokalitu více detailnějších možností než 3), zařazením dalších entit, které mohou návštěvnost ovlivňovat, a také vymyslet lepší a přesnější dopad těchto entit na návštěvnost. Na druhou stranu si myslím, že pro hrubý odhad je model postačující a také by mohl sloužit jako případný základ pro výše zmíněná rozšíření a vylepšení.
  
 
==Kód==
 
==Kód==
 +
[[File:Pivnice CLD source.mdl]]
 +
 +
[[File:Pivnice SFD source.mdl]]
 +
 +
 +
[[User:Xmotj10|Xmotj10]] ([[User talk:Xmotj10|talk]]) 01:18, 11 June 2017 (CEST)

Revision as of 00:18, 11 June 2017

Zadání

Název simulace: Pivnice

Předmět: 4IT495 Simulace systémů

Semestr: LS 2016/2017

Autor: Jan Mottl, xmotj10

Typ modelu: Systémová dynamika

Modelovací nástroj: Vensim

Definice problému

Moje rodina vlastní pivnici na kraji Prahy. Na rozdíl od podniků v centru je potřeba se zde o něco více zajímat o to, co přiláká zákazníky a zvýší tak návštěvnost, jelikož se zde denně pohybuje podstatně méně lidí a zároveň konkurenčních podniků je v okolí poměrně dost. Z tohoto důvodu je cílem simulace nalézt entity a jejich vztahy, které ovlivňují návštěvnost pivnice, což může následně pomoci se zvýšením návštěvnosti a tím i tržeb.

Metoda

Pro zpracování simulace byl vybrán nástroj Vensim pro simulaci systémové dynamiky. Tento nástroj je pro zpracování vhodný, jelikož chceme především zachytit vztahy mezi jednotlivými entitami, které návštěvnost pivnice ovlivňují.

Model

V rámci modelování byly vytvořeny dva diagramy – diagram kauzálních smyček a diagram toků.

Diagram kauzálních smyček

Diagram kauzálních smyček

Diagram toků

Diagram toků

Entity modelu

Následuje popis jednotlivých entit modelu a jejich vztahů, které jsou vyjádřeny pomocí vzorců. Konkrétní hodnoty proměnných pak byly dosazeny na základě reálných dat z naší rodinné pivnice a výsledky modelu pak byly porovnány s realitou.

Cena piva

V modelu uvažuji cenu za konkrétní druh piva (Kozel 11° – převážná většina tržeb se týká tohoto piva), ale mohlo by se jednat i o 
průměrnou cenu všech druhů piv v podniku.

Hodnota: Cena piva v korunách
Kvalita piva

Kvalita piva je dána především vzdáleností zdroje piva od pípy, výtočí, četností čištění trubek za měsíc atd. Povoleny jsou následující hodnoty, 
jejichž přiřazení pro konkrétní piva je samozřejmě do jisté míry subjektivní.

Hodnota:
4 – velmi dobrá
3 – dobrá
2 – přijatelná
1 – špatná
Atraktivita piva

Atraktivita piva závisí na kvalitě a ceně. Čím vyšší je kvalita a nižší cena, tím je pivo atraktivnější. Proto lze atraktivitu počítat jako 
podíl kvality a ceny.

Vzorec: Kvalita piva / Cena piva
Kapacita podniku
 
Maximální počet lidí, kteří se najednou vejdou do pivnice.

Hodnota: Maximální počet osob
Počet hodin otevírací doby

Počet hodin od otevření do zavření pivnice v jeden den. Otevírací doba je každý den stejná.

Hodnota: Počet hodin otevírací doby
Průměrná doba strávená v podniku
 
Vyjadřuje průměrnou dobu, kterou zákazník stráví v podniku.

Hodnota: Průměrná doba strávená v podniku v hodinách
Potenciální maximální návštěvnost

Představuje potenciální maximální návštěvnost za jeden den, která je dána kapacitou podniku, počtem hodin otevírací doby a průměrnou dobou, 
kterou zákazník stráví v podniku.

Vzorec: Kapacita podniku * Počet hodin otevírací doby / Průměrná doba strávená v podniku
Příjemnost obsluhy

Příjemnost obsluhy je vyjádřena hodnotou z předem daného výčtu.

Hodnota:
3 – velmi příjemná, ochotná a rychlá obsluha
2 – normální obsluha
1 – nepříjemná, neochotná a pomalá obsluha
Lokalita

Lokalita, ve které se podnik nachází. Může nabývat hodnot z předem daného výčtu, při čemž každá hodnota odpovídá určitému typu lokality, 
které se navzájem liší tím, jak jsou pro podnik výhodné z hlediska návštěvnosti.

Hodnota:
3 – podnik umístěný v centru města (Prahy), kde se denně pohybuje velké množství lidí
2 – podnik umístěný na kraji města (Prahy), kde se denně pohybuje méně lidí, ale stále je zde určité množství podniků v okolí a bydlí zde 
    poměrně mnoho lidí 
1 – podnik umístěný na vesnici či v lokalitě, kde se pohybuje málo lidí a málo lidí zde žije
Konkurence

Vyjadřuje míru konkurence pivnice. Může nabývat hodnot z předem daného výčtu. Jelikož konkurence působí na návštěvnost opačně než dříve zmíněné 
entity (čím větší je konkurence, tím menší je návštěvnost), jsou hodnoty uspořádány v opačném pořadí (čím menší je hodnota, tím menší je 
konkurence a větší návštěvnost).

Hodnota:
1 – žádná nebo velmi malá konkurence
2 – o něco větší konkurence, pár konkurenčních podniků v blízkém okolí
3 – velmi velká konkurence
Návštěvnost – konstantní

Udává denní návštěvnost, která je konstantní pro všechny dny simulace a slouží jen jako pomocná proměnná, která je použita v toku Návštěvnost, 
kde je upravena o náhodu. Návštěvnost závisí především na atraktivitě piva, příjemnosti obsluhy, lokalitě, konkurenci a potenciální maximální 
návštěvnosti. Zde je důležité zmínit několik věcí.

Při výpočtu se vychází z potenciální maximální návštěvnosti, která může být jen snižována, pokud některé entity, které ji ovlivňují, nejsou na 
maximální úrovni. To znamená, že pokud by teoreticky existoval podnik s příjemnou obsluhou, který by nabízel pivo maximální kvality a byl by 
umístěn v centru Prahy, kde by se nenacházela konkurence, tak by této potenciální maximální návštěvnosti dosáhl. Jinak entita (například 
lokalita), která nedosahuje nejlepší hodnoty, sníží potenciální maximální návštěvnost o určitý počet procent podle toho, o kolik je horší. 
Například při nejlepší hodnotě lokality (tedy 3) je potenciální maximální návštěvnost násobena jedničkou, tedy se nezmění. Pokud by lokalita 
dosahovala hodnoty 2, tak bude potenciální maximální návštěvnost násobena číslem 0,5 a sníží se tedy na polovinu a při hodnotě lokality 1 by se 
násobila číslem 0,3. Postup je stejný u všech entit kromě konkurence, jelikož u té mají hodnoty obrácený význam (čim nižší hodnota, tím lepší). 
Zde se proto přímo dělí hodnotou konkurence. Například při žádné konkurenci bude její hodnota 1 a potenciální maximální návštěvnost to tedy 
neovlivní.

Vzorec: 
Potenciální maximální návštěvnost * IF THEN ELSE(Atraktivita piva >= 0.12, 1 , IF THEN ELSE( Atraktivita piva >= 0.1 , 0.95 , 
IF THEN ELSE(Atraktivita piva >= 0.8, 0.9 , IF THEN ELSE(Atraktivita piva >= 0.6, 0.8 , 0.7) ) ) ) * IF THEN ELSE(Příjemnost obsluhy = 3, 1 , 
IF THEN ELSE(Příjemnost obsluhy = 2, 0.9 , 0.8 ) ) * IF THEN ELSE(Lokalita = 3, 1 , IF THEN ELSE(Lokalita = 2, 0.5 , 0.3 ) ) / (Konkurence)
Návštěvnost

Tento tok již jen upravuje pomocnou proměnou Návštěvnost – konstantní o náhodu a výsledek zaokrouhlí na celé číslo. Je použito rovnoměrné 
rozdělení s minimální hodnotou o 10 % menší než vypočtená konstantní návštěvnost a s maximální hodnotou o 10 % vyšší. Návštěvnost je upravena o
náhodu z toho důvodu, že i když do podniku chodí většinou každý den podobný počet zákazníků, tak nikdy tento počet není konstantní, nedá se
dopředu přesně určit a je tedy náhodný.

Vzorec: INTEGER(RANDOM UNIFORM(Návštěvnost – konstantní * 0.9, Návštěvnost – konstantní * 1.1, 0 ))
Celkový počet zákazníků

Vyjadřuje celkový počet zákazníků za simulované období.

Vzorec: INTEG(Návštěvnost, 0)
Průměrný počet prodaných piv na osobu

Udává průměrný počet prodaných piv na osobu, který je potřeba určit pro výpočet prodaných piv za jeden den na základě návštěvnosti.

Hodnota: Průměrný počet prodaných piv na osobu
Zvýšení počtu prodaných piv

Vyjadřuje, o kolik prodaných piv se denně zvýší celkové množství prodaných piv.

Vzorec: Návštěvnost * Průměrný počet prodaných piv na osobu
Počet prodaných piv

Počet prodaných piv za simulované období.

Vzorec: INTEG(Zvýšení počtu prodaných piv, 0)
Zvýšení tržeb

Vyjadřuje denní zvýšení tržeb.

Vzorec: Zvýšení počtu prodaných piv * Cena piva
Tržby

Celkové tržby za simulované období.

Vzorec: INTEG (Zvýšení tržeb, 0)

Dosažení konkrétních hodnot

Do proměnných modelu byly následně dosazeny konkrétní hodnoty převzaté z reálných dat naší rodinné pivnice, které lze vidět na následujícím obrázku.

Dosazení konkrétních hodnot do proměnných

Krok simulace byl nastaven na 1 den a doba na 30 dní.

Výsledky

Na následujícím grafu je vidět průběh denní návštěvnosti, která se pohybuje okolo hodnoty 180.

Vývoj denní návštěvnosti


Celkové tržby se vyvíjejí poměrně lineárně a na konci měsíce dosáhnou hodnoty 239 625 Kč, což poměrně odpovídá tržbám naší pivnice, stejně jako denní návštěvnost.

Vývoj celkových tržeb

Závěr

Ačkoliv po dosazení hodnot vycházejí reálná čísla naší pivnice, je zřejmé, že model není dokonalý. Snažil jsem se kvantifikovat vztahy co nejlépe, ale nebylo to snadné a řekl bych, že u něčeho tak náhodného, jako je návštěvnost, to není ani úplně možné provést na 100 % přesně. Model by bylo možno rozšířit a zpřesnit použitím širších výčtů přípustných hodnot u proměnných (například pro lokalitu více detailnějších možností než 3), zařazením dalších entit, které mohou návštěvnost ovlivňovat, a také vymyslet lepší a přesnější dopad těchto entit na návštěvnost. Na druhou stranu si myslím, že pro hrubý odhad je model postačující a také by mohl sloužit jako případný základ pro výše zmíněná rozšíření a vylepšení.

Kód

File:Pivnice CLD source.mdl

File:Pivnice SFD source.mdl


Xmotj10 (talk) 01:18, 11 June 2017 (CEST)