Моделювання конвеєра з виробництва авто: генератори Python
Вас попросили створити дискретно-подієву модель, щоб оптимізувати конвеєр з виробництва авто. Спочатку ви визначили основні групи процесів на лінії: (1) зварювання та фарбування і (2) складання та тестування. Звісно, кожна з цих груп містить багато підпроцесів і завдань, але зараз ви зосереджені на першій, високорівневій версії моделі.
Оскільки критичні групи процесів уже визначені, час встановити середню тривалість кожного процесу. Після дослідження ви отримали 15 годин для зварювання й фарбування та 24 години для складання вузлів і тестування.
Пакет simpy уже імпортовано для вас.
Час у моделі вимірюється в годинах.
Ця вправа є частиною курсу
Дискретно-подієве моделювання в Python
Інструкції до вправи
- Оголосіть генератор Python з назвою
car_production_line_gen. - Зафіксуйте в конвеєрі часову потребу на зварювання та фарбування.
- Так само зафіксуйте час, потрібний на завершення складання вузлів і тестування.
- Виведіть поточний час симуляції.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Defining a Generator that includes the processes
def ____(env):
car_number = 0
while True:
car_number += 1
# Process 1: Clock the time requirement for welding and painting
yield env.____(____)
print(f"Car {car_number}: Welding and painting (completed) => time = {env.now}")
# Process 2: Clock in time for process 2 and yield it
____
print(f"Car {car_number}: Assembly of parts and testing (completed) => time = {env.now}")
# Print car ready for shipment
print(f"Car {car_number}: Car ready for shipping! time = {env.____} hours")