Oficinas menores ainda costumam realizar a programação da produção manualmente em sistemas Excel ou ERP. Nestes casos, o planejador de produção responsável (ou programador) atribui trabalhos às máquinas manualmente e determina sua sequência, bem como possivelmente também suas datas planejadas de início e término. O planejador toma todas as decisões com base em seu conhecimento e experiência. Em oficinas menores, esta abordagem pode ser viável e a programação da produção pode exigir um esforço e tempo relativamente pequenos. Um software de agendamento de produção, por outro lado, adicionará custos – relacionados à implementação do software, treinamentos, manutenção e taxas de licença contínuas. É por isso que desenvolvi uma ferramenta Python de agendamento de job shop que serve como modelo e estrutura para implementar software de agendamento de job shop em Python a baixo custo. No exemplo abaixo usei a ferramenta para agendar uma lista de trabalhos em 6 máquinas em vários grupos de máquinas.
A estrutura Python contém um aplicativo de caso de uso exemplar e serve como modelo de personalização. Você pode ler mais sobre o projeto Python aqui: https://www.supplychaindataanalytics.com/product/job-shop-scheduling-library-python/
Benefícios do software de programação de produção
Com um software de programação de produção , algoritmos e modelos matemáticos atribuem tarefas às máquinas, não aos tomadores de decisão humanos. Isto traz benefícios estratégicos de longo prazo até mesmo para os pequenos fabricantes e leva o planejamento da produção para os próximos níveis. O planejador de produção agora monitora o resultado do algoritmo de agendamento e, durante os testes e implementações iniciais, retorna feedback ao desenvolvedor do software de agendamento. O desenvolvedor calibra o modelo e o algoritmo até que o cronograma seja ideal.
Uma vez implementado e “calibrado” o software de programação de produção , os benefícios para a oficina e seus planejadores de produção são alguns dos seguintes:
- Tomada de decisão formalizada e documentada, promovendo a transparência organizacional
- Os planejadores de produção não perdem mais tempo em tarefas rotineiras de programação
- As programações têm garantia de atualização diária ou várias vezes ao dia – sempre!
Ou seja, em suma, o principal benefício do software de programação de produção para pequenos fabricantes é automatizar o próprio processo de programação e, assim, liberar capacidade de recursos humanos e facilitar a estabilidade e transparência operacional. Para os pequenos fabricantes, a programação em si tornar-se-á mais estável e fiável, mas não necessariamente melhor – uma vez que o planeador humano, em muitos casos, já implementa uma programação muito boa.
Ferramenta e estrutura de software de agendamento Python
Desenvolvi um projeto Python para programação de produção que compreende programação matemática e tomada de decisão heurística para programar tarefas em máquinas em uma programação de produção dividida em intervalos de tempo de duração definida. Isso também é conhecido como programação de produção indexada ao tempo. Eu uso otimização matemática para um subconjunto de trabalhos e tomada de decisão heurística para os trabalhos restantes.
A otimização matemática oferece o melhor cronograma possível, ou seja, retorna apenas as soluções absolutamente melhores. A heurística, por outro lado, concentra-se em encontrar soluções muito boas dentro de um período de tempo razoável. Misturar essas duas abordagens faz sentido para a programação da produção, já que uma abordagem de otimização matemática pura rapidamente se torna computacionalmente inviável. O vídeo abaixo demonstra o modelo Python para implantação de software de agendamento de produção.
A ferramenta Python pode ser baixada na loja SCDA. Inclui um aplicativo de caso de uso exemplar. A figura abaixo ilustra as informações de entrada necessárias e os tipos de restrição assumidos.
Os tipos de restrição assumidos compreendidos pelo modelo são os seguintes:
- Um plano de descanso para todo o parque de máquinas. Durante os intervalos, nenhuma mudança ou configuração pode ocorrer (ou seja, elas devem ser concluídas antes do início do intervalo ou iniciadas após o término do intervalo).
- As máquinas são agrupadas em grupos de máquinas, sendo que cada grupo possui uma quantidade definida de operadores e, portanto, um número máximo de trocas que podem ocorrer simultaneamente (ou seja, ao mesmo tempo).
- Utilização alvo das máquinas e do parque de máquinas como um todo. Os trabalhos são importados para o núcleo de agendamento até essas metas de utilização. Isto é necessário porque um parque de máquinas 100% utilizado não seria viável, ou seja, o núcleo de programação retornará que não será encontrado nenhum cronograma viável para uma utilização muito alta. Em segundo lugar, para cada máquina, a especificação de limites de utilização permite aos planeadores reservar espaço para manutenções e avarias planeadas.
- Um único estágio de produção, ou seja, o modelo em si não é programado em vários estágios de produção vinculados.
Qualquer desvio das suposições e restrições acima, ou tipos de restrições adicionais, exigirá trabalho de personalização.
Quais pequenos fabricantes se beneficiam do agendamento automatizado?
Quando o software de agendamento de produção é implementado, a estrutura Python é usada como modelo de customização. Quaisquer tipos de restrições ou objetivos divergentes devem ser adicionados como personalizações no código-fonte subjacente, exigindo um desenvolvedor de software (ou seja, habilidades como engenharia de software, programação matemática e pesquisa operacional). Ou seja, quaisquer novos tipos de restrições que anteriormente não eram considerados deverão ser implementados pelo desenvolvedor do software, gerando custos. É por isso que os fabricantes com um processo de produção maduro são os que mais se beneficiam do software de programação de produção . As empresas de produção jovens com circunstâncias semelhantes às de start-up têm menos probabilidades de beneficiar da utilização de um software de programação de produção.
Cientista de dados com foco em simulação, otimização e modelagem em R, SQL, VBA e Python
Leave a Reply