Mulai sekarangMulai gratis

Lini Perakitan Mobil: menambahkan kejadian non-deterministik dengan SimPy

Latihan ini berfokus pada proses non-deterministik menggunakan SimPy.

Anda akan memodifikasi versi SimPy dari model lini perakitan mobil Anda, dengan menambahkan kejadian deterministik yang sama menggunakan metode SimPy.

Ingat bahwa "Pengelasan dan pengecatan" memerlukan rata-rata 15 jam untuk selesai, tetapi durasinya bervariasi lima jam (lebih cepat atau lebih lambat). Sementara itu, "Perakitan komponen dan pengujian" memerlukan rata-rata 24 jam untuk selesai, tetapi durasinya bervariasi enam jam (lebih cepat atau lebih lambat)

Pustaka SimPy telah diimpor untuk Anda.

Latihan ini merupakan bagian dari kursus

Simulasi Peristiwa Diskret dengan Python

Lihat Kursus

Instruksi latihan

  • Catat durasi proses "Welding and painting" dengan mempertimbangkan informasi baru tentang variabilitasnya menggunakan metode random.randint().
  • Catat durasi proses "Assembly of parts and testing_" dengan mempertimbangkan informasi baru tentang variabilitasnya menggunakan metode random.randint().

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

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