Capítulo 4: Análisis Experimental
4.2 Análisis experimental Aplicación del modelo propuesto
Para la aplicación del modelo propuesto, diseñado y programado como se describió en el capítulo 3, se toma igualmente como base los datos de entrada propuestos por Alemany et al. (2010). El escenario del problema de cadena de suministro a resolver, tiene la siguiente configuración:
• Proveedores de materias primas(suppliers) = 1 • Cantidad de materias primas (RMc) = 1
• Cantidad de productos terminados (FGs) = 4 • Familias de productos terminados (Fam) = 2 • Plantas de producción (plants) = 3
• Total de líneas de producción (lines) = 6
• Proveedores externos de productos terminados(subcontractors) = 1 • Centros de distribución (warehouses) = 2
• Centros logísticos (logistic centers) = 3 • Tiendas (stores) = 6
• Lapso de tiempo a considerar(periods) = 6
Los datos con los conjuntos de índices especificados por Alemany et al. (2010) en la Tabla 12 se muestran en el Anexo 1. Como se puede observar en las Tablas 1 a 11 del anexo estos set de índices se manejan como matrices binarias (contienen solo ceros o unos) para indicar la pertenencia o no de un elemento respecto a otro. De esta forma, estas tablas especifican qué productos pueden ser producidos en líneas específicas de producción, qué plantas pueden abastecer a determinado centro de distribución y, de la misma forma, qué centros de distribución pueden abastecer a determinados centros logísticos, etc.
Por su parte, los parámetros del modelo, mostrados en la Tabla 13, también se muestran en el Anexo 1, respectivamente en las Tablas 12 a 39. Éstas contienen los datos de entrada que se utilizan para los cálculos de los objetivos difusos y las restricciones.
Cabe destacar que en la propuesta original, los autores hacen una serie de supuestos con el objetivo de delimitar el alcance del estudio. Como se puede observar, solo se
consideran 4 productos acabados y dentro de éstos, solo uno de sus componentes. Esto se hace con el fin de que el modelo sea representativo a los objetivos del estudio pero no tan grande que signifique un nivel de complejidad mucho mayor. Lo que sí mencionan los autores es que los supuestos se hacen basados en obtener la mayor representatividad de la realidad posible. Todos los datos propuestos en su trabajo y mostrados en el Anexo 1,son datos reales suministrados por la cadena de suministro en estudio.
Ahora bien, el modelo MF-MRNLP se plantea dentro del framework jMetal como un conjunto complejo de operaciones matriciales. En este sentido, el procedimiento de resolución implica la inclusión de las tablas del Anexo 1 tal cual se muestran y transformarlas a matrices ya sea de dos dimensiones en el caso de que no impliquen los períodos de tiempo y matrices de 3 dimensiones en el caso de que sí lo consideren. La metodología de operaciones matriciales simplifica el proceso de cálculo en problemas de este tipo, en el cual la cantidad de variables de decisión y puntos de evaluación de restricción es considerablemente alto.
Como se ha mencionado en la sección 3.5.3 y 3.5.4, las variables de decisión del modelo están compuestas por dos tipos de cadenas de datos; binarios para las variables de decisión Xilpt, Yflpt, ZIilpt, ZFflpt y Sibt y de números reales para las variables de decisión
CTPcrpt, INCcpt, MPFflpt, Mpilpt, CTAipat, INAiat, CSCibat, VEAiat, DIFAiat, CTCLiaqt, CTTKiqwt,
VETKiwt y DIFTKiwt.
Cuando se modela un problema relativamente pequeño o de un alcance moderado (por ejemplo, un problema del tipo NP) tanto los procedimientos de optimización diferencial convencional como los procedimientos basados en meta heurísticas no requieren de una delimitación específica para estas variables porque aun cuando el espacio de solución es grande, si son pocas variables la convergencia es alta(Peidro y Vasant, 2011). En el caso de un problema NP-Hard como este, en donde el espacio de solución es considerablemente abierto y la cantidad de combinaciones posibles es exponencial, conviene delimitar las variables previamente a la ejecución del modelo.
Basados en los resultados expuestos por los autores en el modelo original, además de la experimentación a prueba y error en múltiples ocasiones, se han establecido los parámetros iniciales para las variables de decisión reales que se muestran en la Tabla 15.
También, se asume que el inventario inicial de materias primas RMc es el promedio por planta especificado por Alemany et al. (2010) que corresponde a 25.000 m2.
Una vez establecidos los límites para las variables de decisión, se han determinado, además, los valores de los parámetros del modelo difuso que mejor se adaptan al proceso de convergencia. Peidro y Vasant (2011) presentan en su trabajo un análisis de sensibilidad de los parámetros α y γ tanto para la función de pertenencia como para la
función objetivo de Torabi y Hasanni (2008). De acuerdo con su estudio, la variable alfa inicialmente toma un valor de 13.813, pero mencionan, además, que la función objetivo converge de mejor manera utilizando valores bajos de alfa dado que la variabilidad es menor, es decir, se interpreta de mejor manera la incertidumbre. Igualmente, haciendo análisis de prueba y error, se obtiene un valor de alfa que favorece la obtención de mejores soluciones en menor tiempo para el modelo MF-MRNLP, este valor es α = 1.927146079.
Tabla 15: Límites para las variables de decisión
Variable Límite inferior Límite Superior
CTPcrpt 0 150.000 INCcpt 2.000 82.000 MPFflpt 0 4.500 MPilpt 0 3.000 CTAipat 0 3.100 INAiat 2.000 3.000 CSCibat 100 850 VEAiat 0 3.000 DIFAiat 0 150 CTCLiaqt 0 900 CTTKiqwt 0 650 VETKiwt 0 650 DIFTKiwt. 0 45
Fuente: Elaboración propia
Por su parte, el valor de la variable γ se toma directamente del análisis de los autores de acuerdo con su mejor rendimiento en términos de la obtención de mejores valores en los objetivos difusos. Los valores bajos de la variable gamma implican dar prioridad a encontrar soluciones que favorezcan los objetivos difusos con mayor peso asignado, y los valores altos implican dar prioridad a encontrar una solución más equitativa a todos los objetivos difusos. En este caso, se utiliza un valor bajo para dar prioridad a los objetivos difusos con mayor peso, por tanto, el valor que mejor se ajusta es γ = 0,1.
Los límites establecidos para los objetivos difusos son: • z1(Beneficio total): Entre 200.000 y 370.000
• z3(Tiempo ocioso del sistema): Entre 0 y 620
Finalmente, el framework jMetal en su algoritmo de PSO no considera por si solo el cumplimiento de las restricciones dado que ha sido un algoritmo, principalmente, utilizado para la resolución de modelos irrestrictos. De la misma forma, ocurre con los algoritmos genéticos, pero con la diferencia de que éstos muestran la opción de elegir un tipo de selección (Deb et al. 2002) para el proceso de evolución, conocido como selección por dominancia que combina el resultado de la función objetivo con un parámetro general de violación de restricciones.
La metodología para integrar un parámetro de cumplimiento de restricciones al algoritmo PSO es utilizar un factor de penalización. Autores como Aliev et al. (2007) y Sinha et al. (2011) han hecho uso de un factor que se agrega a la función objetivo con el fin de penalizar el cumplimiento de las restricciones; Sinha utiliza, por ejemplo, una función lagrangiana mientras que Aliev utiliza un factor porcentual de cumplimiento de las restricciones.
En el caso del modelo MF-MRNLP se han probado varios métodos:
• Penalización como porcentaje de cumplimiento de restricciones: En este caso, se usa el método de penalizar la función objetivo multiplicándola por el porcentaje total de cumplimiento de restricciones.
• Penalizar utilizando la cantidad de violaciones como objetivo difuso: También se hace la prueba de penalizar la función objetivo agregando un objetivo difuso extra que, en este caso, sería la cantidad de restricciones violadas. Para este objetivo difuso se establecen límites de acuerdo con el comportamiento final y se debe minimizar su valor.
• Penalización como porcentaje de cumplimiento de restricciones que superan un límite en magnitud: en este caso, lo que se hace es penalizar la función objetivo restando un porcentaje acumulado de restricciones que violan su regla en una magnitud a un límite inferior definido de antemano.
De los tres métodos anteriores de penalización, el que mejor resultado muestra es el tercero, en el cual se define un límite en magnitud de violación. Por ejemplo, el límite que mejores resultados mostró fue de 500, es decir, que implica que si una restricción se viola entonces que en la medida de lo posible lo haga en una magnitud menor a 500
considerando que la mayoría son cantidades en m2 de producto fluyendo de un nodo a otro. La fórmula que describe la función objetivo final es:
(γλ
0+(1−γ)(θ
1μ
z1
+θ
2μ
z2+θ
3μ
z3))∗(1−restricciones exedentes /total violaciones )
(41)Donde se observa como la penalización disminuye conforme a la cantidad de restricciones que superan el límite establecido disminuye. Es importante destacar que esta función de penalización funciona para variables donde hay un cierto rango de tolerancia respecto a la magnitud de la violación. Para variables como las binarias, donde la violación es un evento binomial, funciona mejor el factor propuesto por Aliev et al. (2007).
El vector de soluciones reales finales que contiene todas las matrices con las variables de decisión tiene en total una extensión de 1884 elementos. Por su parte, el vector que contiene los puntos de evaluación de restricciones, entendiendo que una misma restricción puede tener dentro de sí múltiples puntos de evaluación ya sea por los nodos de la cadena que participan o por los múltiples períodos de tiempo, etc, está compuesto por un total general de 3258 puntos de evaluación de restricción.