ComeçarComece de graça

Construa seu modelo: crie um ambiente e recursos

Você foi convidado a ajudar a otimizar a linha de montagem de um fabricante de aeronaves. Os principais componentes da aeronave são: (1) fuselagem, (2) asas, (3) empenagem (a parte traseira), (4) grupo motopropulsor (motor e hélice) e (5) trem de pouso.

Cada um desses componentes passa por uma seção de montagem diferente que possui 3, 2, 2 e 3 vagas. Isso significa que, assim que uma etapa é concluída, ela seguirá para a etapa seguinte se houver uma vaga disponível; caso contrário, terá que esperar. A sequência de montagem deve seguir a ordem das Etapas 1–4 mostrada no diagrama a seguir. O tempo do modelo está em horas.

Airplane assembly sequence showing the different processes and limited shared resources.

Construa um modelo de eventos discretos para simular a linha de montagem.

Este exercício faz parte do curso

Simulação de Eventos Discretos em Python

Ver curso

Instruções do exercício

  • Complete o dicionário com informações sobre seus recursos; as chaves são step_1_fuselage, step_2_wings, step_3_power_plant, e step_4_landing_gear, com os seguintes valores (durações de processo): 20, 8, 10 e 8 horas.
  • Crie o ambiente do SimPy e armazene-o em uma variável chamada env.
  • Complete os recursos do modelo com as respectivas capacidades mostradas no diagrama (isto é, vagas) e armazene-os em variáveis com os nomes step_1_fuselage, step_2_wings, step_3_power_plant, e step_4_landing_gear.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Define a dictionary with your processes
processing_time = {
  "____": 20,
  "____": 8,
  "step_3_power_plant": ____,
  "step_4_landing_gear": ____
}

# Create your SimPy Environment with the name env
env = simpy.____()

# Create resources for each assembly step
step_1_fuselage = simpy.____(env, capacity=____)
step_2_wings = simpy.____(env, capacity=2)
step_3_power_plant = simpy.____(env, capacity=2)
step_4_landing_gear = simpy.____(env, capacity=3)

env.process(order_aircraft(env, PLANE_ORDERS, step_1_fuselage, step_2_wings, step_3_power_plant, step_4_landing_gear))

env.run()
Editar e executar o código