Restoran modeli: Kur, çalıştır ve sonuçları analiz et
Önceki egzersizde, masa taleplerini ve bekleme sürelerine göre müşterilerin bekleme ya da ayrılma kararlarını simüle eden üreticiyi tanımladın.
Şimdi modeli kuralım, çalıştıralım ve sonuçları analiz edelim. Bu modeli kurmaktaki amacın, mümkün olduğunca fazla müşteriye hizmet verirken ilk yatırım ve işletme maliyetlerini en aza indirecek uygun masa sayısı ve mutfak kapasitesini belirlemek olduğunu unutma.
Modelini anlamlı bir şekilde kurmak için bölgendeki restoranları ziyaret edip müşteri davranışlarını gözlemlemeye karar verdin.
Ortalama olarak şunları fark ettin:
- Yoğun saatlerde yeni müşteriler her 10 dakikada bir geliyordu
- Müşteriler bir masa için 1 ile 10 dakika arasında beklemeye sabrediyordu (
MIN_PATIENCEveMAX_PATIENCE) - Bekleme süresi 10 dakikayı aşarsa müşteriler ayrılıyordu
- Müşteriler masaları 40 ile 90 dakika arasında işgal ediyordu (
MIN_SEATING_TIMEveMAX_SEATING_TIME)
Modelde zaman birimi dakikadır.
Bu egzersiz
Python ile Ayrık Olay Benzetimi
kursunun bir parçasıdırUygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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}")