Los talleres más pequeños todavía suelen realizar la programación de producción manualmente en sistemas Excel o ERP. En estos casos, el planificador de producción (o planificador) responsable asigna manualmente los trabajos a las máquinas y determina su secuencia y, posiblemente, también sus fechas de inicio y finalización planificadas. El planificador toma todas las decisiones basándose en su conocimiento y experiencia. En talleres más pequeños, este enfoque puede ser factible y la programación de la producción puede requerir un esfuerzo y tiempo relativamente pequeños. Por otro lado, un software de programación de producción agregará costos relacionados con la implementación del software, la capacitación, el mantenimiento y las tarifas de licencia continuas. Es por eso que desarrollé una herramienta Python de programación de talleres que sirve como plantilla y marco para implementar software de programación de talleres en Python a bajo costo. En el siguiente ejemplo, utilicé la herramienta para programar una lista de trabajos en 6 máquinas en varios grupos de máquinas.
El marco de Python contiene una aplicación de caso de uso ejemplar y sirve como plantilla de personalización. Puede leer más sobre el proyecto Python aquí: https://www.supplychaindataanalytics.com/product/job-shop-scheduling-library-python/
Beneficios del software de programación de producción
Con un software de programación de producción , los algoritmos y modelos matemáticos asignan trabajos a las máquinas, no a los tomadores de decisiones humanos. Esto tiene beneficios estratégicos a largo plazo incluso para los pequeños fabricantes y lleva la planificación de la producción al siguiente nivel. El planificador de producción ahora monitorea el resultado del algoritmo de programación y, durante las pruebas piloto y las implementaciones iniciales, devuelve comentarios al desarrollador del software de programación. El desarrollador calibra el modelo y el algoritmo hasta que el cronograma sea óptimo.
Una vez que se implementa y «calibra» el software de programación de producción , los beneficios para el taller y sus planificadores de producción son algunos de los siguientes:
- Toma de decisiones formalizada y documentada, promoviendo la transparencia organizacional.
- Los planificadores de producción ya no dedican tiempo a tareas rutinarias de programación.
- Se garantiza que los horarios se actualizarán diariamente o varias veces al día, ¡siempre!
En resumen, los principales beneficios del software de programación de producción para los pequeños fabricantes es automatizar el proceso de programación en sí y, por lo tanto, liberar capacidad de recursos humanos y facilitar la estabilidad operativa y la transparencia. Para los pequeños fabricantes, la programación en sí será más estable y confiable, pero no necesariamente mejor, ya que el planificador humano en muchos casos ya implementa una muy buena programación.
Marco y herramienta de software de programación Python
He desarrollado un proyecto Python para programación de producción que comprende programación matemática y toma de decisiones heurísticas para programar trabajos en máquinas en un programa de producción dividido en intervalos de tiempo de duración definida. Esto también se conoce como programación de producción indexada en el tiempo. Utilizo optimización matemática para un subconjunto de trabajos y toma de decisiones heurísticas para los trabajos restantes.
La optimización matemática ofrece el mejor cronograma posible, es decir, sólo devuelve las mejores soluciones. La heurística, por otro lado, se centra en encontrar muy buenas soluciones en un período de tiempo razonable. Combinar estos dos enfoques tiene sentido para la programación de la producción, ya que un enfoque de optimización puramente matemático rápidamente se vuelve computacionalmente inviable. El siguiente vídeo muestra la plantilla de Python para la implementación del software de programación de producción.
La herramienta Python se puede descargar en la tienda SCDA. Comprende una aplicación de caso de uso ejemplar. La siguiente figura ilustra la información de entrada requerida y los tipos de restricciones asumidos.
Los tipos de restricciones asumidos implícitos en la plantilla son los siguientes:
- Un plan de descanso para todo el parque de máquinas. Durante los descansos, no se pueden realizar cambios ni configuraciones (es decir, deben completarse antes del inicio del descanso o iniciarse después del final del descanso).
- Las máquinas se agrupan en grupos de máquinas, teniendo cada grupo una cantidad definida de operadores y, por tanto, un número máximo de cambios que pueden tener lugar al mismo tiempo (es decir, al mismo tiempo).
- Objetivo de utilización de las máquinas y del parque de máquinas en su conjunto. Los trabajos se importan al núcleo de programación hasta alcanzar estos objetivos de utilización. Esto es necesario porque un parque de máquinas utilizado al 100% no sería viable, es decir, el núcleo de programación indicará que no se puede encontrar una programación viable para una utilización muy alta. En segundo lugar, para cada máquina, especificar límites de utilización permite a los planificadores reservar espacio para el mantenimiento y las averías planificadas.
- Una única etapa de producción, es decir, la plantilla en sí no se programa en múltiples etapas de producción vinculadas.
Cualquier desviación de los supuestos y restricciones anteriores, o tipos de restricciones adicionales, requerirá un trabajo de personalización.
¿Qué pequeños fabricantes se benefician de la programación automatizada?
Cuando se implementa el software de programación de producción , el marco Python se utiliza como plantilla de personalización. Cualquier tipo de restricción u objetivo que se desvíe debe agregarse como personalizaciones en el código fuente subyacente, lo que requiere un desarrollador de software (es decir, habilidades como ingeniería de software, programación matemática e investigación de operaciones). Es decir, cualquier nuevo tipo de restricción que no se haya considerado anteriormente debe ser implementado por el desarrollador de software, lo que genera costos. Esta es la razón por la que los fabricantes con un proceso de producción maduro son los que más se benefician del software de programación de producción . Las empresas manufactureras jóvenes con circunstancias similares a las de las empresas emergentes tienen menos probabilidades de beneficiarse del uso de un software de programación de producción .
Ingeniero industrial especializado en optimización y simulación (R, Python, SQL, VBA)
Leave a Reply