Začněte nyníZačněte zdarma

Model restaurace: Nastavení, spuštění a analýza výsledků

V předchozím cvičení jsi definoval/a generátor, který simuluje požadavky na stoly a rozhodování zákazníků – čekat, nebo odejít – na základě čekacích dob.

Teď model nastavíme, spustíme a analyzujeme výsledky. Připomeň si, že cílem tohoto modelu je zjistit optimální počet stolů a kapacitu kuchyně tak, aby bylo obslouženo co nejvíce zákazníků při minimálních počátečních a provozních nákladech.

Aby mělo nastavení modelu smysl, rozhodl/a ses navštívit restaurace v okolí a pozorovat chování zákazníků.

Zjistil/a jsi, že průměrně:

  • Ve špičce přicházeli noví zákazníci každých 10 minut
  • Zákazníci byli ochotni čekat na stůl 1 až 10 minut (MIN_PATIENCE a MAX_PATIENCE)
  • Zákazníci odcházeli, pokud čekací doba přesáhla 10 minut
  • Zákazníci obsadili stoly na 40 až 90 minut (MIN_SEATING_TIME a MAX_SEATING_TIME)

Čas v modelu je v minutách.

Toto cvičení je součástí kurzu

Diskrétní simulace událostí v Pythonu

Zobrazit kurz

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

INTERVAL_CUSTOMERS = 10

# Assign the appropriate values to the model parameters
MIN_PATIENCE = 1
MAX_PATIENCE = ____
MIN_SEATING_TIME = 40
MAX_SEATING_TIME = ____

customers_served = 0
customers_quiting_waiting = 0

env = simpy.Environment()

# Create the SimPy resource
tables = simpy.____(env, capacity=____)
env.process(source(env, NEW_CUSTOMERS, INTERVAL_CUSTOMERS, tables))

# Run the model
env.____(until=240)
print(f"Total number of tables served: {customers_served:02d}")
print(f"Total number of customers quiting waiting: {customers_quiting_waiting:02d}")
Upravit a spustit kód