Comprobación básica de la solución

Analítica de la cadena de suministro en Python

Aaren Stubberfield

Supply Chain Analytics Mgr.

diagrama de flujo de la estrategia de solución

Analítica de la cadena de suministro en Python

Revisa el estado del modelo

  • Inviable: no hay soluciones factibles.
    • Revisa las restricciones
  • No acotado: la función objetivo no está acotada; al maximizar o minimizar tiende a infinito.
    • Revisa la función objetivo
  • Indefinido: puede existir solución óptima pero no se encontró.
    • Puede ser la mejor solución disponible
    • Revisa cómo modelas el problema
Analítica de la cadena de suministro en Python

¿Los resultados cumplen las expectativas?

¿Están las variables de decisión y el valor del objetivo en el rango esperado?

  • Según tu conocimiento del problema
  • Si «Sí», tienes una solución válida
  • Si «No», revisa:
    • Código Python
    • Datos
    • Escribe el archivo LP
Analítica de la cadena de suministro en Python

Escribir LP

writeLP(filename)
  • filename = nombre del archivo a crear

Muestra:

  • Nombre del problema
  • Función objetivo y si minimiza o maximiza
  • Restricciones, incluidas las de las variables de decisión (Bounds)
  • Variables de decisión
Analítica de la cadena de suministro en Python

Ejemplo de código

\* Aggregate Production Planning *\
Minimize
OBJ: 20 prod_('A',_0) + 17 prod_('A',_1) 
    + 18 prod_('A',_2) + 15 prod_('B',_0) 
    + 16 prod_('B',_1) + 15 prod_('B',_2)
Subject To
_C1: prod_('A',_0) >= 0
_C2: prod_('A',_1) >= 0
_C3: prod_('A',_2) >= 0
_C4: prod_('B',_0) >= 8
_C5: prod_('B',_1) >= 7
_C6: prod_('B',_2) >= 6
Bounds
0 <= prod_('A',_0)
0 <= prod_('A',_1)
0 <= prod_('A',_2)
0 <= prod_('B',_0)
0 <= prod_('B',_1)
0 <= prod_('B',_2)
Generals
prod_('A',_0)
prod_('A',_1)
prod_('A',_2)
prod_('B',_0)
prod_('B',_1)
prod_('B',_2)
Analítica de la cadena de suministro en Python

Resumen

Estrategia para la comprobación

  • Revisa el estado del modelo
  • Verifica que variables de decisión y objetivo estén en el rango esperado
  • Usa writeLP() si hace falta
Analítica de la cadena de suministro en Python

¡Vamos a practicar!

Analítica de la cadena de suministro en Python

Preparing Video For Download...