Simio es un motor de simulación de programación progresiva, por lo que no admite la programación regresiva. Hemos comprobado que el enfoque de programación regresiva no representa la realidad, por lo que genera un plan inviable que no es útil para los planificadores. Muchos de nuestros clientes han aprendido esta lección por las malas.
El principio subyacente de la programación progresiva es que lo primero es la viabilidad, es decir, que la planificación se elabora teniendo en cuenta todas las restricciones y condiciones del sistema (por ejemplo, disponibilidad de recursos, niveles de inventario, trabajo en curso, etc.), disponibilidad de recursos, niveles de inventario, trabajo en curso, etc.). La programación se optimiza en tiempo de ejecución teniendo en cuenta únicamente el conjunto de opciones viables disponibles en ese momento. Las decisiones se toman de acuerdo con las reglas de envío especificadas por el usuario (igual que en la programación regresiva).El resultado es un programa detallado que refleja lo que es posible y le indica al planificador cómo conseguirlo. Como en la vida real, un planificador sólo puede elegir cuándo iniciar una operación. La fecha de finalización es un resultado, no una entrada especificada por el usuario.
La diferencia técnica más destacada entre los dos enfoques es la disponibilidad de materiales (tanto de materias primas como de materiales intermedios fabricados). Un calendario prospectivo no hace suposiciones. Si los materiales están disponibles, se puede producir un producto acabado; si no, no. Si hay que pedir o fabricar los materiales, el sistema los pedirá o fabricará antes de que pueda iniciarse el producto acabado. Una programación retrospectiva planifica primero la última operación, suponiendo que los materiales estarán disponibles (*todavía no hemos encontrado un entorno en el que se pueda prever con exactitud el inventario futuro).Si los materiales deben producirse o comprarse, se intentará programarlos o pedirlos antes, con la esperanza de que la fecha de inicio no sea ayer. Si se da cuerda hacia atrás al reloj desde la fecha de vencimiento hasta el momento actual, el programa resultante muestra al planificador cuáles deberían ser sus existencias actuales y su inventario de pedidos para ejecutar el plan idealizado. No indica al planificador qué podría hacer con sus existencias actuales y su inventario de pedidos.
A continuación, consideremos una situación en la que la demanda supera la capacidad de la planta (esto es una realidad para la mayoría de nuestros clientes). La planta no puede producir todo lo que el planificador desea. El planificador debe elegir entre las alternativas y enfrentarse a las compensaciones. La programación progresiva trata esta situación continuando la programación en el futuro, más allá de la fecha de entrega, mostrando al planificador qué pedidos llegarán tarde. Ajustando las reglas de envío, las prioridades y las fechas de entrega, el planificador puede mejorar la programación hasta llegar a una alternativa satisfactoria.Cada alternativa es una opción válida y factible de ejecutar. La programación regresiva resuelve esta situación continuando la programación en el pasado, mostrando al planificador qué pedidos deberían haberse producido ayer. El planificador debe ajustar y modificar las reglas de expedición y las fechas de entrega hasta encontrar una alternativa factible. Según nuestra experiencia, el planificador puede tomar la mejor decisión comparando varios planes factibles, en lugar de buscar uno solo.
Cualquier solución de programación completa también debe ser capaz de reprogramar. La reprogramación puede desencadenarse por cualquier número de eventos aleatorios que ocurren a diario. En la reprogramación, la salida debe respetar el trabajo en curso. La programación progresiva carga primero el trabajo en curso, haciendo que el recurso no esté disponible hasta que el trabajo en curso esté completo.La programación regresiva carga el trabajo en curso en último lugar, si es que lo hace. Imagínese la elaboración de una programación semanal regresiva en el tiempo, con la esperanza de que el punto "final" sea exactamente igual al trabajo en curso actual de la planta. El resultado suele ser inviable.
En términos de viabilidad, las ventajas de la programación progresiva son evidentes, pero también recibimos preguntas sobre la optimización, en particular en torno a la entrega JIT. Una búsqueda rápida en Google sobre la programación progresiva revela literatura y entradas de blog que describen la programación progresiva "tan pronto como sea posible" (lo que significa que una programación progresiva inicia una operación tan pronto como un recurso está disponible, independientemente de la fecha de vencimiento del pedido).Esto es falso. La programación progresiva gestiona el inventario de productos terminados del mismo modo que la planta. Un planificador especifica una fecha de liberación en función de la fecha de vencimiento (o, en algunos casos, especifica fechas de liberación individuales para cada pedido). En la programación progresiva, ningún pedido se inicia antes de la fecha de liberación.El poder de este enfoque es la experimentación. Cambiar el plazo de entrega es tan fácil como teclear un número entero diferente y reprogramar. Como en el caso anterior, el resultado es una alternativa factible diferente que hace que el compromiso sea transparente. Los plazos de entrega más cortos minimizan el inventario de productos acabados pero aumentan las entregas tardías y viceversa.Hemos observado que muchos clientes se centran en los plazos de entrega cortos basándose en objetivos financieros más que en objetivos operativos. El inventario inmoviliza el efectivo. Normalmente, la decisión de centrarse en el efectivo se toma sin cuantificar el compromiso. Proporcionamos a los responsables de la toma de decisiones diferencias claras entre las estrategias operativas para que puedan elegir basándose en información completa.
La programación progresiva es una realidad. Representa adecuadamente los flujos y las restricciones de materiales, la capacidad de la planta y el trabajo en curso. Gestiona la planta de la misma forma que lo hace un planificador. Por consiguiente, genera conjuntos de alternativas viables que cuantifican las compensaciones tanto para los planificadores como para los responsables de la toma de decisiones ejecutivas.Responde a la pregunta "¿Qué debería hacer la planta a continuación?" en lugar de "¿Qué debería haber hecho la planta antes?" Hemos comprobado que el enfoque de la viabilidad en primer lugar es el más útil para un planificador y, por tanto, el más valioso para una empresa.