Car assembly line: adding deterministic events
Questo esercizio si concentra sui processi deterministici senza usare SimPy. Nel prossimo esercizio ci concentreremo su SimPy.
È stato richiesto un modello a eventi discreti per simulare una linea di produzione di automobili. L’obiettivo del modello è aiutare ad aumentare la produttività, individuare i colli di bottiglia e gestire le risorse. Per iniziare, hai dovuto prima identificare i principali gruppi di processi coinvolti nella linea di produzione. Questi sono: (1) saldatura e verniciatura e (2) assemblaggio e collaudo. Ovviamente, ciascun gruppo comprende molti sotto-processi e attività, ma per ora ti concentri sullo sviluppo della prima versione del modello a un livello alto.
Ora che hai identificato i gruppi di processi critici, è il momento di determinare il tempo medio necessario per completare ciascun processo. Dopo aver fatto ricerca, hai stimato 15 ore per saldatura e verniciatura e 24 ore per assemblaggio dei componenti e collaudo. Rappresentiamo questi processi deterministici in un modello a eventi discreti senza usare SimPy.
Questo esercizio fa parte del corso
Simulazione a eventi discreti in Python
Istruzioni dell'esercizio
- Registra la durata del processo "Welding and Painting".
- Registra la durata del processo "Assembly and Testing".
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
def car_production_line(SIMULATION_TIME):
car_number, time = 0, 0
while time < SIMULATION_TIME:
car_number += 1
# Clock-in the time requirement for: Welding and Painting
time += ____
if time >= SIMULATION_TIME: break
print(f"Time = {time:7.4f} | Car {car_number:02d} | Welding and Painting")
# Clock-in the time requirement for: Assembly and testing
time += ____
if time >= SIMULATION_TIME: break
print(f"Time = {time:7.4f} | Car {car_number:02d} | Assembly of parts and Testing")
print(f"Time = {time:7.4f} | Car {car_number:02d} | Car ready for shipping!")
SIMULATION_TIME = 1000
car_production_line(SIMULATION_TIME)