शुरू करेंमुफ़्त में शुरू करें

डिस्क्रीट-इवेंट मॉडल विकसित करना

आपसे एक खेती (farming) ऑपरेशन के लिए डिस्क्रीट-इवेंट मॉडल बनाने को कहा गया है, ताकि संसाधनों का आवंटन बेहतर हो, उत्पादकता बढ़े और बाधाएँ पहचानी व दूर की जा सकें.

आप अभी अपने सहकर्मियों के साथ शामिल विभिन्न प्रक्रियाओं और उन्हें मॉडल में किस स्तर पर दिखाया जाए, इस पर चर्चा कर रहे हैं. इसलिए सहमति बनी है कि जानकारी process_dict नामक एक डिक्शनरी में निम्न संरचना के साथ संकलित की जाएगी. विचार यह है कि जैसे-जैसे प्रक्रियाओं के बारे में अधिक जानकारी मिलेगी, इस डिक्शनरी को अपडेट किया जाएगा.

process_dict = {
    "Process name 1":  <duration>,
    "Process name 2":  <duration>,
    ...
}

आइए discrete_model_farm() नाम का एक जनरल डिस्क्रीट-इवेंट मॉडल बनाते हैं, जो डिक्शनरी में परिभाषित किसी भी संख्या में डिस्क्रीट इवेंट्स को शेड्यूल कर सके.

मॉडल के इनपुट आर्ग्युमेंट्स (क्रम में) हैं:

  1. process_dict: प्रक्रियाओं की जानकारी वाली डिक्शनरी
  2. simulation_time: सिमुलेशन अवधि

मॉडल में समय दिनों में मापा जाएगा.

यह अभ्यास पाठ्यक्रम का हिस्सा है

Python में Discrete Event Simulation

पाठ्यक्रम देखें

अभ्यास निर्देश

  • मॉडल के स्टेट वैरिएबल्स time (समय ट्रैक करता है) और supply_chain (साइकल्स की संख्या ट्रैक करता है) को आरंभ करें और दोनों को शून्य पर सेट करें.
  • समाप्ति शर्त परिभाषित करें ताकि मॉडल तब तक चले जब तक time, simulation_time से कम हो.
  • प्रक्रिया की अवधि को स्टेट वैरिएबल time में जोड़ें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

def discrete_model_farm(process_dict, simulation_time):
  # Initiate variables
  time = ____
  supply_chain = ____

  # Define ending condition
  while ____ < ____:

    supply_chain += 1
    process_names = list(process_dict.keys())

    for p in range(len(process_names)):
		  
      event_duration = process_dict[process_names[p]]
          
      # Add the process duration
      ____ += event_duration
      print(f"{process_names[p]}  (completed): time = {time}")
          
    print(f"COMPLETED: Production cycle #{supply_chain} | Time = {time} days")  
कोड संपादित करें और चलाएँ