Linie de asamblare auto: adăugarea evenimentelor nedeterministe cu SimPy
Acest exercițiu se concentrează pe procesele nedeterministe folosind SimPy.
Vei modifica versiunea SimPy a modelului liniei tale de asamblare auto, adăugând aceleași evenimente deterministe cu ajutorul metodelor SimPy.
Amintește-ți că „Sudura și vopsirea" durează în medie 15 ore, dar această durată poate varia cu cinci ore (în plus sau în minus). De asemenea, „Asamblarea pieselor și testarea" durează în medie 24 de ore, cu o variație de șase ore (în plus sau în minus).
Biblioteca SimPy a fost deja importată pentru tine.
Acest exercițiu face parte din cursul
Simulare de evenimente discrete în Python
Instrucțiuni pentru exercițiu
- Contorizează durata procesului „Sudura și vopsirea", ținând cont de noile informații despre variabilitatea sa, folosind metoda
random.randint(). - Contorizează durata procesului „Asamblarea pieselor și testarea", ținând cont de noile informații despre variabilitatea sa, folosind metoda
random.randint().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
def car_production_line(env):
car_number = 0
while True:
car_number += 1
# Adding process 1: Clock-in time requirement for Welding and Painting
yield env.____(random.____(10, 20))
print(f"Time = {env.now:7.4f} | Car {car_number:02d} | Welding and Painting")
# Adding process 2: Return/yield time after completing the process and print the current time
yield env.____(random.____(18, 30))
print(f"Time = {env.now:7.4f} | Car {car_number:02d} | Assembly of parts and Testing")
print(f"Time = {env.now:7.4f} | Car {car_number:02d} | Car ready for shipping!")
env = simpy.Environment()
env.process(car_production_line(env))
env.run(until=SIMULATION_TIME)