रेस्तरां मॉडल: सेटअप करें, चलाएँ और परिणामों का विश्लेषण करें
पिछले अभ्यास में, आपने वह जेनरेटर परिभाषित किया था जो टेबल की रिक्वेस्ट और ग्राहकों के इंतज़ार या छोड़कर जाने के फैसलों को वेटिंग टाइम के आधार पर सिम्युलेट करता है.
अब आइए मॉडल सेटअप करें, उसे चलाएँ, और परिणामों का विश्लेषण करें. याद रखें, इस मॉडल का उद्देश्य यह तय करना है कि अधिकतम ग्राहकों को सर्व करने के लिए कितनी टेबलें और किचन कैपेसिटी उपयुक्त होगी, जबकि शुरुआती निवेश और रनिंग कॉस्ट कम से कम रहे.
मॉडल को सार्थक तरीके से सेटअप करने के लिए, आपने आस-पास के रेस्तरां विज़िट करने और ग्राहकों के व्यवहार को ऑब्ज़र्व करने का फैसला किया.
आपने देखा कि औसतन:
- पीक घंटों में, हर 10 मिनट में नए ग्राहक आते थे
- ग्राहक टेबल के लिए 1 से 10 मिनट तक इंतज़ार करने के लिए तैयार थे (
MIN_PATIENCEऔरMAX_PATIENCE) - अगर वेटिंग टाइम 10 मिनट से ज़्यादा हुआ तो ग्राहक चले जाते थे
- ग्राहक 40 से 90 मिनट तक टेबल पर बैठे रहते थे (
MIN_SEATING_TIMEऔरMAX_SEATING_TIME)
मॉडल में समय को मिनटों में मापा गया है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Discrete Event Simulation
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
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}")