Zacznij terazZacznij za darmo

Linia montażu samochodów: dodawanie zdarzeń niedeterministycznych w SimPy

To ćwiczenie skupia się na procesach niedeterministycznych z użyciem SimPy.

Zmodyfikujesz wersję modelu linii montażu samochodów opartą na SimPy, dodając do niej zdarzenia niedeterministyczne przy użyciu metod SimPy.

Przypomnij sobie, że "Spawanie i malowanie" trwają średnio 15 godzin, ale czas ten może się wahać o pięć godzin (w górę lub w dół). Z kolei "Montaż części i testy" zajmują średnio 24 godziny, ale czas ten może się wahać o sześć godzin (w górę lub w dół).

Biblioteka SimPy została już zaimportowana.

To ćwiczenie jest częścią kursu

Symulacja zdarzeń dyskretnych w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Odmierz czas trwania procesu "Spawanie i malowanie", uwzględniając nowe informacje o jego zmienności przy użyciu metody random.randint().
  • Odmierz czas trwania procesu "Montaż części i testy", uwzględniając nowe informacje o jego zmienności przy użyciu metody random.randint().

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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)
Edytuj i uruchom kod