1. INTRODUCCIÓN
La optimización de los procesos es necesaria para maximizar las ganancias de las empresas, esto se logra mediante el aprovechamiento de los recursos económicos, técnicos y humanos. En la industria manufacturera algunos de los procesos más críticos son la planeación y programación de la producción, el control de inventarios, el almacenamiento y el transporte.
Esta investigación se enfoca principalmente en la toma de decisiones para un problema asociados al proceso de planeación y programación de la producción a niveles tácticos y operativos, más específicamente al proceso del corte, en conjunto con el control de inventarios de materia prima disponible y de producto en proceso. Este problema es conocido en la literatura como El Problema de patrones de corte y se presenta con frecuencia en diversas industrias, como son la metalúrgica, metalmecánica, textil, papelera, maderera, entre otras.
El Problema de patrones de corte considera aquellas industrias en las que dentro de su proceso productivo es necesario cortar material que viene en dimensiones estándar, con el fin de obtener piezas en tamaños y formas requeridas, como, por ejemplo: el corte de madera, de rollos de papel, de tela, de acero, entre otros. Para estas industrias es de gran importancia realizar este proceso de corte de una manera eficiente buscando minimizar el desperdicio y los demás costos asociados al proceso, teniendo en cuenta las restricciones técnicas y de demanda que el sistema en cuestión impone.
Para la optimización de los recursos de materia prima en este problema, es necesario relacionar y alinear diferentes factores tales como las características del material a utilizar en el corte, las necesidades o requerimientos de demanda, los patrones de corte a utilizar y las dimensiones requeridas, el espacio disponible para su almacenamiento y las limitaciones de la maquinaría, entre otros.
El Problema de patrones de corte busca básicamente el corte de rollos de gran tamaño de algún tipo de material en flejes o pequeños rollos de diferentes anchos, los cuales comúnmente son utilizados como materia prima para fabricar un producto final. Las longitudes de los flejes son definidas por los clientes o por las especificaciones del proceso productivo para la fabricación del producto final. Además, el problema considera los niveles de inventarios de materias primas y de productos en proceso, generados por el proceso del corte. Abordando una dualidad entre el corte de material y el espacio físico ocupado por éste.
Para el proceso de corte se deben considerar posibles patrones o configuraciones de corte, es decir el número de flejes o rollos de menor ancho que se cortarán de un rollo, para así cumplir con las necesidades de demanda y con ciertas restricciones asociadas a la capacidad de la máquina, las condiciones del proceso, las dimensiones solicitadas, la materia prima disponible, los tiempos de corte, entre otras. Siendo así de gran importancia el papel de la planeación del corte, ya que se debe buscar la configuración óptima que permita cumplir con los requerimientos de demanda, minimizar el desperdicio y a su vez el número total de rollos a cortar1.
En cuanto a los inventarios de materia prima y del material generado por el proceso de corte, resulta de gran importancia controlarlos, no sólo por las restricciones de espacio físico y costo que puedan existir, sino por la necesidad de cumplir con los requerimientos de demanda en una fecha requerida. En ese sentido, es necesario garantizar la disponibilidad de materia prima necesaria y de producto en proceso, ya que este material es vital para el inicio del proceso productivo, y una falta de éste podría repercutir en incumplimientos en la entrega del producto final.
La complejidad del proceso de corte de rollos, se ve afectada por el tipo de asignación, la dimensionalidad y la variedad de objetos. En cuanto al tipo de asignación se pueden considerar diferentes opciones: la primera es que todo el material en inventario se use y no todos los requerimientos se cumplan (eficiencia); y la segunda es que todos los requerimientos se cumplan, pero tan sólo una parte se consuma (efectividad), es decir que sea necesario generar inventario de producto en proceso para completar el ancho del rollo y no generar mayor desperdicio. Por otro lado, también se podría considerar un equilibrio entre el inventario y la cobertura de la demanda, de forma que se maximice el cumplimiento de los pedidos minimizando el inventario o se minimice el inventario cumpliendo la demanda. Con relación a la dimensionalidad, se considera que es la característica más importante pues se refiere al número mínimo de dimensiones importantes para la determinación de la solución, por ejemplo: el largo, ancho, entre otros. Y por último, la variedad de objetos en términos de sus dimensiones ya sean de gran tamaño o de menor tamaño,2.
El Problema de patrones de corte es un problema de gran complejidad tanto por las características y variables que involucra como por las técnicas que se utilizan para abordarlo, es una temática en constante evolución y muchos investigadores han desarrollado diversos modelos para resolverlo. El interés en este problema puede ser sustentado por su aplicación práctica y el reto que representa para la academia; pues en general, es computacionalmente difícil de resolver3. Por lo tanto, se evidencia la necesidad de explorar nuevos métodos de solución o la validación y ajuste de métodos y modelos existentes para problemas particulares en industrias específicas y sus respectivas necesidades, para así lograr la utilización eficiente de los recursos escasos en los procesos inherentes a la programación del corte y su inventario.
En diversos trabajos como4,5,6 se ha estudiado El Problema de patrones de corte y lo han catalogado por su complejidad como un problema NP-hard, ya que el espacio de búsqueda de la solución puede ser muy grande dependiendo de las condiciones y restricciones que el problema involucre y de las diferentes combinaciones de corte que puedan existir7. Existen diferentes estrategias de solución para este problema, tales como métodos heurísticos, meta-heurísticos y algorítmicos2, pero aún no existe un método global dada la complejidad del problema.
Entre los costos relacionados con el Problema de patrones de corte, se encuentran los costos asociados al inventario y los relacionados directamente con el proceso del corte:
Costos de inventario: se refiere a los costos de almacenamiento de materia prima, piezas reutilizables y producto terminado, los costos fijos de almacenamiento y los costos de oportunidad.
Costos del corte: son los costos asociados a las pérdidas de material y desperdicios, a los cambios de patrón o alistamiento, re-procesos y planeación de la configuración de corte.
En la figura 1 se muestra la estructura y flujo del proceso dentro de un departamento de corte convencional en un sistema de manufactura. En esta se identifican los diferentes procesos relacionados con El Problema de patrones de corte, evidenciándose el papel central que juega este problema para los sistemas de manufactura que lo involucran. Una adecuada gestión de este proceso no solo puede representar ganancias significativas a este tipo de industrias si no una gestión más responsable y sostenible en el sentido que puede representar mejoras en lo económico y lo ambiental.
Conscientes de la importancia de El Problema de patrones de corte en la presente investigación se desarrolla una aproximación a los principales componentes del mismo, pasando por los antecedentes del problema, algunas aplicaciones en Colombia, se presenta los diferentes elementos de clasificación, los enfoques de solución y algunas ideas de investigación futura, esperando contribuir con el desarrollo del tema y sirviendo como documento de trabajo para los interesados en el tema.
Por lo tanto, el papel del programador de la producción consiste en desarrollar un programa de producción que detalle el número de rollos o piezas a cortar y su respectiva configuración de corte para satisfacer la demanda, a partir de los pedidos del número de piezas de tamaño final. El objetivo del planificador consiste en determinar la forma más económica para satisfacer la demanda. Cuando se consideran períodos de tiempo, el objetivo no es sólo minimizar el número total de materia prima requerida para fabricar los productos finales, sino que también hay que considerar los gastos incurridos por almacenamiento, y a su vez las limitaciones que existan.
2. ANTECEDENTES
El Problema de patrones de corte (CSP, por sus siglas en inglés) fue formulado por primera vez en 1939 por el economista ruso Kantorovich, y en 1951, junto con Zalgaller sugirieron resolverlo mediante la programación lineal buscando la utilización económica del material en la fase de corte4.
Posteriormente en 1961-19635, propusieron un modelo para la resolución de este tipo de problemas expresados en una sola dimensión (1D-CSP), como por ejemplo, el largo o el ancho. Sus primeros intentos para resolverlo fueron a través de métodos analíticos; donde en un principio determinaron los patrones de corte posibles, que son descritos como el número de referencias de cada tipo que se cortan en longitudes estándar; posteriormente, la solución se logró utilizando un modelo matemático basado en estos patrones (9). Este modelo tiene como objetivo minimizar el desperdicio generado por la operación de corte, para lo cual se hace necesario encontrar una combinación óptima de corte a través de patrones de corte1.
El problema del CSP se puede formular como un problema de optimización lineal entera, pero debido al gran número de patrones de corte o combinaciones posibles (columnas) que pueden existir hace que el problema sea de gran complejidad. Por lo tanto, para resolver estas dificultades5 relajaron la restricción de integralidad y propusieron un método simplex con una técnica de generación de columnas y la aplicación de procedimientos de redondeo para la solución no entera más común10.
Posteriormente en el año 1965, se extendieron sus estudios hacia los problemas en dos dimensiones, los cuales son considerados como "NP-hard". Estos problemas son abordados por5 como un problema unidimensional en dos etapas; y han presentado un enfoque de solución basado en una formulación de programación entera con una técnica de generación de columnas, donde cada columna representa un patrón de corte posible, y es generado por la solución del problema bidimensional de la "mochila"10.
6 Clasifica al 1D-CSP Como un problema de una dimensión con un suministro ilimitado de rollos de idéntico tamaño y un conjunto de órdenes que deben cumplirse, y plantea la división del problema en varios subproblemas, para así resolver cada uno de ellos por separado9.
Por otro lado, se han propuesto algoritmos heurísticos para la generación de patrones de corte factibles para producir las columnas de un problema de programación entera. Según11,12,13, los patrones de corte pueden ser generados a través de la programación dinámica, y según14 a través de la generación constructiva de cortes con guillotina, o por los métodos mixtos propuestos por11. Obteniendo un límite para los problemas de dos dimensiones con un gran número de variables estructurales y la resolución del dual del CSP15.
16, Plantea en su investigación un enfoque mejorado de Búsqueda Tabú para la resolución de problemas de corte unidimensional, el cual es tratado como un problema de secuencia e incorpora una función objetivo mixta haciendo uso del concepto de reutilización de materiales, permitiendo así elegir el plan de corte con el mínimo desperdicio, y lograr un mayor acercamiento hacia la obtención de una solución óptima.
9 Proponen un método de eliminación sucesiva basado en los posibles patrones de corte obtenidos por los métodos analíticos convencionales en la fase de modelación matemática propuestos por Gilmore y Gomory, el cual minimiza tanto el número de patrones diferentes de corte como el material de desperdicio y es capaz de capturar la solución ideal de los métodos analíticos y garantizar una solución entera. De forma que, al minimizar el desperdicio, la utilización del inventario es maximizada.
1 propone una nueva solución heurística basada en el algoritmo GRASP para resolver el CSP en una sola dimensión, en una industria de fabricación de rollos de plástico. La fase de generación de este algoritmo resuelve una versión simplificada muy similar al problema convencional, para lo cual proponen un procedimiento heurístico secuencial y aleatorio. Posteriormente, en la fase de reparación, el problema simplificado es transformado en una solución del problema real.
En10 se presenta una investigación sobre el CSP unidimensional, la cual se enfoca en las diferentes longitudes disponibles en inventario y en los problemas de baja demanda. Además proponen y comparan algunos métodos heurísticos que generan una solución entera y se basan en la generación de columnas, tales como las heurísticas residuales, "Greedy Procedure", "FFD Procedure".
En cuanto a los problemas de dos dimensiones,15 presenta un procedimiento heurístico secuencial de tres etapas con el objetivo de minimizar el desperdicio. En la primera etapa determinan el patrón de corte según el ancho que produce el mínimo desperdicio. Posteriormente, en la segunda etapa se determina la longitud de la tabla y la distribución de las piezas asociada al ancho de ésta para así generar un buen patrón de corte. En la etapa final se determina el número de veces que el patrón generado es utilizado. En dos dimensiones también podemos observar los trabajos de17-20.
En21 se propone un enfoque de dos niveles para resolver el problema de corte ortogonal sin guillotina, en el que se maximiza el valor total de las piezas cortadas mediante una reducción de procedimientos para la resolución de este tipo de problemas y para el cálculo de cotas superiores para el primer nivel del procedimiento. Además, se describen una serie de desigualdades con el fin de reforzar los límites superiores.
En22 se propone un modelo de programación lineal entera mixta que tiene como objetivo minimizar el costo total de producción considerando el costo de materia prima y los costos de alistamiento. Para resolver este problema proponen como método de solución dos algoritmos de búsqueda local y la técnica de generación de columnas basada en un algoritmo heurístico.
Como se observa, han surgido numerosas investigaciones que abordan diferentes problemas según el tipo de dimensión (1D y 2D) y desde diversos enfoques tales como los métodos exactos, heurísticos y meta heurísticos, pero aún no existe un método global establecido para dar solución a este tipo de problemas, debido a la complejidad asociada.
En los últimos años, ha habido varios esfuerzos para resolver este problema de programación lineal a través de "branch and bound", o "branch and price" que es la combinación del "branch and bound" con la generación de columnas; y a través de los planos de corte de uso general Chvatal-Gomory9.
Otros enfoques utilizados han sido la relajación lagrangiana, métodos de eliminación sucesiva, programación dinámica, procedimientos heurísticos secuenciales, entre otros.
En el contexto colombiano,23 propone un método basado en algoritmos genéticos y programación lineal para resolver el problema del corte en un proceso productivo de cajas de cartón, con el cual buscan minimizar el desperdicio del cartón, los cambios de posición de las cuchillas (patrones) y la cantidad de material procesado. Además, se evidencia que el desempeño de los algoritmos genéticos y la programación lineal en conjunto es superior a la utilización de éstos de forma independiente, ya que permiten superar las dificultades que surgen al aumentar el tamaño del problema.
Por otro lado, en24 se aplica el algoritmo de Búsqueda Tabú al problema de corte bidimensional tipo guillotina, usando codificación con árboles binarios, donde el objetivo es obtener patrones de corte que minimicen el desperdicio de material. Para evaluar el desempeño de este algoritmo utilizan sistemas de prueba disponibles en la literatura especializada y miden el porcentaje de uso del material disponible.
Un estudio de las diferentes técnicas de inicialización es presentado en25, en éste se estudiaron técnicas como: los algoritmos Bottom-left (BL), Bottom-left-fill (BLF) y el mecanismo Difference Process (DP) para el problema de corte bidimensional tipo guillotina. Como estrategia de solución al problema los autores usaron Búsqueda Tabú. Además evidenciaron que para problemas de gran tamaño y alta complejidad matemática la solución inicial influye en la calidad de la solución final, pues en la implementación verificaron que soluciones iniciales aleatorias presentaban soluciones finales pobres.
En26 se presenta una metodología para los problemas de corte (Cutting Stock) y empaquetamiento óptimo bidimensional (Strip y Bin Packing) de piezas rectangulares, con cortes tipo guillotina, con y sin rotación de piezas, en placas y rollos infinitos usando técnicas metaheurísticas de optimización, tales como Simulated Annealing (SA), Variable Neighborhood Search (VNS)27 y Particle Swarm Optimization (PSO).
3. CARACTERIZACIÓN DEL PROBLEMA DE PATRONES DE CORTE
Según6, el problema de patrones de corte se encuentra dentro del marco de los problemas asociados al Corte y Empaquetado (Cutting and Packing Problems), ya que poseen una estructura lógica común que los caracteriza. En la literatura, este tipo de problemas aparecen identificados bajo diferentes denominaciones, pero en esencia tienen la misma estructura; entre estos se encuentran: cutting stock y trim loss problems, bin packing, dual bin packing, strip packing, vector packing, y knapsack (packing) problems,vehicle loading, pallet loading, container loading, y car loading problems, entre otros.
Ante esta variedad de aplicaciones que han surgido en la literatura,6 propone una tipología para clasificar este tipo de problemas a través de la definición de identificadores basados en las características básicas comunes entre ellos. Para esto considera dos grupos de datos básicos cuyos elementos consisten en "figuras" geométricas definidas en una o más dimensiones:
Objetos: conjunto de piezas grandes que se encuentran disponibles en inventario (entradas).
Ítems: conjunto de piezas pequeñas que corresponden a los requerimientos de demanda (salidas).
En el proceso de corte se construyen patrones teniendo en cuenta las combinaciones geométricas de los ítems pequeños asignados a los objetos grandes, considerando que los ítems se generan a partir de los objetos. Además, existen unas piezas residuales no pertenecientes a los ítems, a las cuales se les conoce como "desperdicio"; el cual es uno de los principales objetivos a minimizar en este tipo de problemas.
Usualmente en los problemas de corte, los objetos grandes son materiales sólidos cortados en piezas o ítems pequeñas; entre los cuales se encuentran la pulpa y papel, metal, madera, vidrio, plástico, cuero y textiles.
El problema consiste en seleccionar uno o todos los ítems pequeños, agruparlos en uno o más subconjuntos, y éstos asignarlos a uno de los objetos grandes, de forma que se cumplan con las condiciones geométricas, es decir que los ítems de un subconjunto deben ubicarse o caber en el objeto al que se asocian y a su vez los ítems no se deben superponer, optimizando así una función objetivo dada; donde la solución puede utilizar todos o algunos de los objetos todos y o algunos de los ítems28.
Por lo tanto, se pueden definir cinco subproblemas inherentes a la estructura de los Cutting and Packing Problems, los cuales deben ser resueltos de manera simultánea para poder obtener el óptimo global. Estos son:
• Problema de selección de los objetos.
• roblema de selección de los ítems.
• Problema de agrupamiento de los ítems en subconjuntos.
• Problema de asignación de los subconjuntos a los objetos.
• Problema de distribución de los ítems en cada uno de los objetos de acuerdo a sus restricciones geométricas.
4. CLASIFICACIÓN
En 6 se presenta una clasificación y codificación para el CSP, basada en cuatro características básicas comunes las cuales son: la dimensionalidad, el tipo de asignación entre ítems y objetos, la variedad de objetos grandes y la variedad de ítems pequeños.
Según lo anterior, al agrupar las cuatro características principales: dimensionalidad, asignación, variedad de objetos y variedad de ítems se obtienen 4x2x3x4= 96 tipos diferentes de problemas de Corte y Empaquetado (Cutting and Packing Problems), los cuales se denotan de la siguiente forma:
Donde la dimensionalidad puede ser de 1, 2 ,3 o n dimensiones. La asignación entre ítems y objetos puede ser caracterizado como (B) si se asignan todos los objetos a una selección de ítems o (V) s se asignan todos los ítems a una selección de objetos. La variedad de objetos grandes puede definirse como (O) un único gran objeto, (I) muchos objetos todos ellos iguales o (D) diferentes objetos. Y la Variedad de ítems pequeños se representa como (F) si son pocos ítems de diferentes dimensiones, (M) si son varios ítems de diversas dimensiones, (R) si son varios ítems de relativamente pocas dimensiones o (C) si son una gran cantidad de ítems todos iguales.
Otra característica importante a considerar es la disponibilidad de los objetos y los ítems, la cual se refiere a los límites superior e inferior en términos de la cantidad de material en inventario, a la secuencia y a la fecha en la que un objeto o un ítem pueden o tienen que ser cortados, es decir, cuándo estarán disponibles.
También, se debe tener en cuenta la forma de medir la cantidad de los objetos y los ítems, es decir, que esta medición puede ser de tipo entera o continua. La medición entera representa la frecuencia o número de objetos o ítems de cierta forma, y la medición continua hace referencia a la longitud total de los objetos o ítems convirtiéndose así en otra dimensión sin ser esencial para la geometría de los patrones, incluso no necesariamente debe ser la longitud, pues por ejemplo en el caso de los rollos puede ser el peso o el diámetro de éstos. En el caso en que se combinen los problemas unidimensionales con la medición continua, a éstos problemas se les conocerá como de "1.5 dimensiones"6, pues son problemas más complejos que los unidimensionales, pero no son verdaderos bidimensionales29.
De igual forma es necesario considerar los patrones de corte, los cuales consisten en fijar las cuchillas de la máquina de corte para obtener objetos pequeños provenientes de un objeto de gran tamaño con anchos específicos determinados por el cliente. Para lo cual, surgen dos problemas: el primero es determinar las dimensiones adecuadas para los objetos grandes; y la segunda es seleccionar la forma en que se van a recortar las piezas pequeñas para hacer que el desperdicio de material del objeto grande sea mínimo. Este es un proceso común en las industrias de papel, telas, madera y acero, donde grandes láminas del material deben recortarse en rectángulos o rollos más pequeños de diferentes tamaños para satisfacer las órdenes de los clientes.
Por otro lado, para cambiar de un patrón de corte a otro diferente se requiere cambiar la posición de las cuchillas, suspendiendo el proceso de corte. A este problema se le conoce como Problema de Secuenciación de los Patrones de Corte (Pattern Sequencing Problem)30, para lo cual se deben planear adecuadamente los patrones que se programan en la máquina23.
Los patrones de corte tienen un gran impacto sobre las combinaciones geométricas y la asignación de los ítems a los objetos; debido a que los patrones individuales pueden resultar en restricciones geométricas o combinatorias, y en el caso de la asignación de los ítems a los objetos, las restricciones sobre el número, el orden o la combinación de los patrones deben ser consideradas6.
Para lo cual es necesario considerar ciertas restricciones de los patrones de corte con respecto a:
• Distancias mínimas o máximas entre los ítems.
• La orientación de las figuras o ítems.
• La frecuencia o cantidad de ítems en un patrón.
• El nivel máximo de desperdicio.
• El número máximo de órdenes.
• El tipo y el número de cortes permitidos, entre otras.
En cuanto al tipo de corte, existen dos tipos: guillotina y no guillotina tal como se muestra en la figura 3. El tipo guillotina es aquel que al aplicarse sobre un rectángulo produce dos nuevos rectángulos, es decir, si el corte va de un extremo al otro del rectángulo original, en otro caso se denomina del tipo no guillotina. Un patrón es de tipo guillotina si se puede obtener por sucesivos cortes de tipo guillotina. La complejidad de patrones guillotina depende del número de direcciones de corte cambiantes (etapas) así como el número de cortes paralelos por etapa. Un patrón es no guillotina si es obtenido por sucesivos cortes de guillotina y no guillotina. Éstos a su vez, se clasifican en orientados o no-orientados, en dónde el término orientado se refiere a que la longitud de los rectángulos debe estar alineada paralelamente a la longitud de los rollos a cortar, es decir que la rotación no está permitida26.
Por otro lado, para resolver este tipo de problemas es de gran importancia la definición del objetivo a minimizar o maximizar, teniendo en cuenta si se refiere a la secuencia, combinación del patrón de corte, número de patrones, o a las cantidades de objetos, ítems y piezas residuales, entre otros. Por ejemplo, algunas funciones objetivos que se pueden plantear son:
• Minimizar el número de montajes o cambios de patrón.
• Minimizar el desperdicio o maximizar la utilización de los objetos.
• Minimizar el costo de alistamiento y de inventario.
• Minimizar el número de cortes.
• Maximizar el total de piezas cortadas, entre otras.
En la tabla 1 se resumen las principales características a tener en cuenta al abordar este tipo de problemas con respecto a las existencias de los objetos de gran tamaño, la lista de ítem, los patrones geométricos y la asignación de los ítems a los patrones y de los patrones a los objetos.
5. Enfoques de solución
Los métodos exactos ofrecen soluciones óptimas para el Problema de patrones de corte con variables enteras si el tamaño de las instancias es pequeño, lo cual en algunas ocasiones puede encontrarse alejado de lo que es habitual en las decisiones reales de planificación industrial. Esto debido a que cuando existen anchos pequeños a cortar de un objeto con un ancho mucho mayor, se pueden generar un gran número de patrones posibles, y a su vez la restricción de integridad de las variables de decisión puede hacer que el problema sea difícil de resolver computacionalmente. 31
Dada esta situación, existen dos tipos de procedimientos heurísticos que han sido ampliamente utilizados para resolver problemas de corte unidimensionales. Uno de los enfoques utiliza como punto de partida la solución de la relajación de un problema de programación lineal entera, donde la solución es modificada de alguna manera para proporcionar una solución entera. El segundo enfoque consiste en generar patrones de corte secuencialmente para satisfacer una parte de los requerimientos restantes. Este procedimiento heurístico secuencial termina cuando todos los requerimientos son satisfechos6.
Por otro lado, aparecen los métodos meta heurísticos los cuales tienen la capacidad de no verse atrapados en óptimos locales como podría suceder con la heurística tradicional, pero su proceso de solución es a menudo guiado por heurísticas de nivel inferior.
5.1 Programación lineal entera
Casi todos los procedimientos basados en la programación lineal para resolver el problema de patrones de corte se remontan a Gilmore y Gomory,5, para lo cual, proponen la relajación de la restricción de integridad para la solución de problemas de programación lineal logrando minimizar el desperdicio a través de la generación de columnas evitando el conocimiento explícito o enumeración de todos los patrones desde el principio, ya que bajo este esquema las columnas (patrones) son generadas cuando se requieran32. La idea consiste en utilizar el método simplex revisado para resolver el problema de la entrada del patrón de corte siguiente a la base mediante la resolución de un problema de la mochila asociado. Este método es denominado en la literatura como delayed column generation technique, y permite resolver este tipo de problemas en un tiempo computacional mucho menor2, tal como fue realizado por33.
Para resolver este problema es necesario iniciar con un problema maestro, el cual consiste en una relajación lineal del problema original y posee una estructura más simple, ya que se genera sólo un número pequeño de columnas para así poder obtener una solución factible para el problema relajado. Posteriormente, se genera un subproblema el cual permite identificar columnas o variables adicionales que no han sido incluidas en el programa maestro y que mejoran el valor de la función objetivo. En los problemas unidimensionales este es el equivalente a resolver el problema de la "mochila" unidimensional32, trabajos similares son presentados en34.
Algunos investigaciones que modifican la técnica antes mencionada, se puede ver en35,36,37, en estos se restringe el número de veces que cualquier tamaño puede aparecer en un patrón de corte, y se basan en una programación lineal de dos fases: en la primera fase, una solución óptima es obtenida para un conjunto limitado de patrones, y en la segunda fase, la solución óptima es encontrada para todos los patrones.
5.2 Procedimientos heurísticos secuenciales
Los procedimientos heurísticos secuenciales pertenecen a la clase de heurísticas de búsqueda local. La solución se construye mediante la generación de patrones uno a uno hasta que todos los requerimientos de demanda se hayan satisfecho, donde los patrones inicialmente seleccionados deben tener un nivel de desperdicio bajo, un nivel de utilización alto y dejar una serie de requerimientos para poder combinar bien los patrones futuros, evitando así incurrir posteriormente en desperdicios excesivos2.
Este procedimiento es capaz de tomar decisiones eficaces en diferentes situaciones 29.
Cálculo de los descriptores de requerimientos de demanda. Los descriptores más comunes pueden ser el número unidades de materia prima necesario (rollos) para satisfacer los requerimientos de demanda y el número promedio de rollos pequeños que se obtuvo de cada uno de los rollos grandes.
Establecer metas para el siguiente patrón que entró en la solución. Los objetivos pueden ser establecidos en términos del desperdicio, utilización del patrón y el número de rollos ordenados en el patrón.
Búsqueda exhaustiva para que un patrón cumpla con estas metas.
Si un patrón es encontrado, añadir este patrón a la solución al nivel máximo posible. Este nivel es determinado de forma que el número programado de los rollos no exceda la cantidad ordenada. Reducir los requerimientos ordenados y repita el paso a.
Si no se encuentra ningún patrón, reducir para el nivel de utilización del siguiente patrón y volver al paso c.
La ventaja principal de este método es que puede controlar otros factores aparte del desperdicio y elimina el problema del redondeo al trabajar sólo con valores enteros.
5.3 Procedimientos heurísticos híbridos
Este procedimiento consiste en combinar los dos procedimientos descritos anteriormente, de tal forma que se utilice el procedimiento heurístico secuencial para generar una solución, la cual es guardada y utilizada como base inicial en el procedimiento de programación lineal. Posteriormente, el desperdicio es reducido si es posible a través iteraciones adicionales, tal y como lo realiza41.
Otra forma de combinar estos dos métodos es resolviendo primero el problema como un problema de programación lineal con el fin de obtener los precios duales óptimos. Estos precios duales son utilizados después para probar si el patrón de corte es aceptado en el procedimiento heurístico secuencial, para así evitar desperdicios excesivos en los patrones de corte.
Por lo tanto, independientemente de la forma como se combinen estos dos métodos, lo más importante del éxito de la unión entre el procedimiento heurístico secuencial y el redondeo de problemas de programación lineal es la selección del criterio apropiado para resolver el problema29.
5.4 Metaheurísticas
Ante el problema que presenta la búsqueda local y las heurísticas constructivas de quedar atrapadas en óptimos locales, surgen las metaheurísticas a mediados de 1970 pues tienen la capacidad de guiar la búsqueda local para que se escape de los óptimos locales. Muchos de estos algoritmos se han utilizado para resolver el Problema de patrones de corte, entre los cuales se destaca Tabu Search (TS), Greedy Randomized Adaptive Search Procedure (GRASP)42 , Algoritmos genéticos43-46 y Ant Colony optimization (ACO)47,48, entre otros algoritmos evolucionarios2,2,49-52.Según 6 desarrolló una tipología de enfoques de solución teniendo en cuenta el tipo de problema, para lo cual los dividió en dos categorías: orientados a los objetos o ítems, y los orientados a los patrones tal como se muestra en la tabla 2.
Orientados a ítems | Orientados a patrones | ||
Métodos exactos | Algoritmos de aproximación | Un patrón | Varios patrones |
Branch and Bound, Programación dinámica | Bin Packing Algorithms | Knapsack algorithms, varios métodos en más dimensiones | LP-based y heurísticas en general |
Fuente: adaptado de6.
Según la literatura revisada, en la tabla 3 se detallan los enfoques de solución utilizados por los autores y las funciones objetivos propuestas.
Autores | Año | Función objetivo | Técnicas de solución |
---|---|---|---|
(53) | 1995 | Maxirmzar el total de piezas cortadas, o minimizar el desperdicio | Algoritmo de búsqueda de árbol |
(54) | 1995 | Minimiza el desperdicio y la reducción del número de montajes | Técnica de generación de columna |
(55) | 1997 | Minimizar el desperdicio total | Algoritmo basado en la estrategia de enumeración parcial de todos los patrones de corte factibles |
(56) | 2001 | Minimizar desperdicio | Búsqueda de árbol |
(57) | 2002 | Mmirmzación del costo | Técnica de generación de columna |
(58) | 2002 | Minimizar el material a consumir de inventario para poder cumplir con la demanda | Generación de filas y columnas |
(59) | 2004 | Maximizar la utilización de espacio | Algoritmo basado en búsqueda gráfica |
(15) | 2006 | Minimizar desperdicio | Heurístico secuencial |
(16) | 2006 | Función objetivo mixta | Búsqueda tabú |
(21) | 2007 | Maximizar el total de piezas cortadas | Programación entera mixta |
(9) | 2007 | Minimiza número de patrones de corte, minimiza el desperdicio, maximiza la utilización del material | Método de eliminación sucesiva |
(60) | 2009 | Minimizar la cantidad de sustrato de vidrio requerido para satisfacer las órdenes | Algoritmo de optimización |
(1) | 2009 | Minimizar el número de cortes, el costo de alistamientos, el desperdicio, los tiempos de realización de pedidos ponderados por sus prioridades | Solución heurística basada en el algoritmo GRASP llamada Sequential Heuristic Randomized Procedure (SHRP) |
(10) | 2009 | Minimizar el desperdicio total | Método simplex con generación de columnas, y branch-bound |
(3) | 2009 | Minimizar desperdicio | Heurísticas constructivas y residuales |
(61) | 2010 | Minimizar el desperdicio y el número de flejes en inventario | Programación lineal entera con dos objetivos sin patrones de corte |
(62) | 2010 | Minimizar la cantidad total de hojas en inventarios usadas | Problema de flujo mínimo (Arco) de dos dimensiones |
(7) | 2010 | Minimizar el número de cortes en inventario, y el costo asociado al inventario y backorders | Técnica de generación de columna y branch and bound |
(63) | 2011 | Minimizar el desperdicio de material | Un nuevo algoritmo de programación dinámica |
(64) | 2012 | Minimizar el área total usada | Algoritmo heurístico basado en generación de columnas |
(65) | 2013 | Minimizar la cantidad de hojas empleadas | Técnica de generación de columna |
(66) | 2013 | Minimizar el inventario, la cantidad de material requerido. | Un algoritmo integrado que incorpora un algoritmo genético, un método de disposición de esquina, y un modelo de plan de producción |
(67) | 2014 | Minimizar el costo de los materiales | Un algoritmo que usa un procedimiento de generación de patrones |
(68) | 2014 | Maximizar la utilización del material, minimizar el desperdicio y el tiempo de alistamiento | Algoritmo genético de agrupación modificado |
(69) | 2014 | Minimizar excedentes en el corte | Modelo de programación lineal entera |
(70) | 2015 | Minimizar excedentes en el corte | Heurístico para generar patrones eficientes |
(71) | 2016 | Minimizar costo de desperdicio, manejo de material e inventario de producto | Métodos combinados: Heurístico y programación lineal |
Fuente: Elaboración propia
6. CONCLUSIONES
Los elementos principales del Problema de patrones de corte son los objetos, los ítems y los patrones de corte, pues en el proceso de corte se construyen patrones teniendo en cuenta las combinaciones geométricas de los ítems pequeños asignados a los objetos grandes, considerando que los ítems se generan a partir de los objetos. Además, existen unas piezas residuales no pertenecientes a los ítems, a las cuales se les conoce como "desperdicio"; el cual es uno de los principales objetivos a minimizar en este tipo de problemas.
Este tipo de problemas se clasifican según cuatro características básicas: (1) dimensionalidad, (2) tipo de asignación entre ítems y objetos, (3) variedad de los objetos y (4) variedad de los ítems. Otras características importantes a considerar para abordar este tipo de problemas son la disponibilidad de los objetos y los ítems, la forma de medir la cantidad de los objetos y los ítems y la definición del objetivo o indicador de desempeño.
Dado que el proceso de corte tiene un gran impacto en los requerimientos totales y sus costos asociados, es necesario generar ahorros significativos en términos del desperdicio generado y los niveles de inventario.
Una característica importante a considerar en la solución de los modelos es la disponibilidad de los objetos y los ítems, la cual se refiere a los límites superior e inferior en términos de la cantidad de material en inventario, a la secuencia y a la fecha en la que un objeto o un ítem pueden o tienen que ser cortados, es decir cuándo estarán disponibles, ya que estos llega a determinar la calidad de la solución y la correcta aplicación del modelo en la realidad.
De igual forma es necesario considerar los patrones de corte, los cuales, consisten en fijar las cuchillas de la máquina de corte para obtener objetos pequeños provenientes de un objeto de gran tamaño con anchos específicos determinados por el cliente. Este es un proceso común en las industrias de papel, telas, madera y acero, donde grandes láminas del material deben recortarse en rectángulos o rollos más pequeños de diferentes tamaños para satisfacer las órdenes de los clientes.
Han surgido numerosas investigaciones que abordan diferentes problemas según el tipo de dimensión (1D y 2D) y desde diversos enfoques tales como los métodos exactos, heurísticos y meta heurísticos, pero aún no existe un método global establecido para dar solución a este tipo de problemas, debido a la complejidad asociada. Esto representa una brecha en estado del arte con alto potencial de desarrollo y aplicabilidad.
Como modelo de optimización, el Problema de patrones de corte también se encuentra en la frontera de esta área del conocimiento. El estado del arte ha avanzado y cada vez más afronta la realidad con mayor complejidad. Es por esto, que temas como modelación multiobjetivo, consideración de patrones de demanda estocástica o programación dinámica son relevantes para ser abordados en investigaciones futuras.