Mulai sekarangMulai gratis

Model restoran: Menyiapkan, menjalankan, dan menganalisis hasil

Pada latihan sebelumnya, Anda mendefinisikan generator yang mensimulasikan permintaan meja dan keputusan pelanggan untuk menunggu atau pergi berdasarkan waktu tunggu.

Sekarang mari siapkan modelnya, jalankan, dan analisis hasilnya. Ingat bahwa tujuan membangun model ini adalah menentukan jumlah meja dan kapasitas dapur yang tepat untuk melayani jumlah pelanggan maksimal sambil meminimalkan investasi awal dan biaya operasional.

Agar penyiapan model bermakna, Anda memutuskan untuk mengunjungi restoran di sekitar dan mengamati perilaku pelanggan.

Anda mencatat bahwa rata-rata:

  • Selama jam sibuk, pelanggan baru datang setiap 10 menit
  • Pelanggan bersedia menunggu antara 1 hingga 10 menit untuk mendapatkan meja (MIN_PATIENCE dan MAX_PATIENCE)
  • Pelanggan pergi jika waktu tunggu lebih lama dari 10 menit
  • Pelanggan menempati meja selama 40 hingga 90 menit (MIN_SEATING_TIME dan MAX_SEATING_TIME)

Waktu dalam model dinyatakan dalam menit.

Latihan ini merupakan bagian dari kursus

Simulasi Peristiwa Diskret dengan Python

Lihat Kursus

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

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}")
Edit dan Jalankan Kode