stringtranslate.com

Corte con guillotina

Un corte de guillotina: una hoja optimizada de rectángulos más pequeños que se puede dividir intacta mediante la serie correcta de cortes bisectores de extremo a extremo.
Un corte sin guillotina: estos rectángulos no se pueden separar haciendo cortes biseccionales simples a lo largo del plano.

El corte con guillotina es el proceso de producir pequeños elementos rectangulares de dimensiones fijas a partir de una hoja rectangular grande determinada, utilizando únicamente cortes de guillotina. Un corte con guillotina (también llamado corte de borde a borde ) es una línea recta que bisecta desde un borde de un rectángulo existente hasta el borde opuesto, de manera similar a una guillotina de papel .

El corte con guillotina es particularmente común en la industria del vidrio . Las láminas de vidrio se rayan a lo largo de líneas horizontales y verticales y luego se rompen a lo largo de estas líneas para obtener paneles más pequeños. [1] También es útil para cortar placas de acero , cortar láminas de madera para hacer muebles y cortar cartón para hacer cajas. [2]

Existen diversos problemas de optimización relacionados con el corte con guillotina, como por ejemplo: maximizar el área total de las piezas producidas, o su valor total; minimizar la cantidad de desperdicio (partes no utilizadas) de la hoja grande, o el número total de hojas. Han sido estudiados en geometría combinatoria , investigación de operaciones e ingeniería industrial . [3]

Un problema relacionado, pero diferente, es la partición de guillotina . En ese problema, las dimensiones de los pequeños rectángulos no están fijadas de antemano. El desafío surge del hecho de que la hoja original podría no ser rectangular, sino que puede ser cualquier polígono rectilíneo. En particular, podría contener agujeros (que representan defectos en la materia prima). El objetivo de optimización suele ser minimizar la cantidad de pequeños rectángulos o minimizar la longitud total de los cortes.

Terminología y suposiciones

Los siguientes términos y notaciones se utilizan a menudo en la literatura sobre corte con guillotina.

Algunos problemas aceptan entradas adicionales, como se explica a continuación. El objetivo es cortar, a partir del rectángulo original, algunos rectángulos más pequeños que tengan las dimensiones deseadas. A menudo se hacen las siguientes suposiciones: [2]

Comprobación de un patrón determinado

En el problema de verificación de patrones , hay un patrón de corte dado como una secuencia de puntos ( x i , y i ), para i en 1,..., m , donde ( x i , y i ) es la coordenada inferior izquierda del rectángulo i (hay un solo rectángulo de cada dimensión objetivo). El objetivo es decidir si este patrón se puede implementar utilizando solo cortes de guillotina y, de ser así, encontrar una secuencia de dichos cortes.

Una condición necesaria obvia es que no haya dos rectángulos de entrada superpuestos en ambas dimensiones. Ben Messaoud, Chengbin y Espinouse [5] presentan una condición más fuerte, que es necesaria y suficiente. Los rectángulos de entrada están ordenados de izquierda a derecha, de modo que x 1 ≤ ... ≤ x m . Existe una permutación p en los índices de modo que, con esta permutación, los rectángulos se ordenarían de abajo a arriba, es decir, y p (1) ≤ ... ≤ y p ( m ) . Dados cuatro índices i 1i 2 y j 1j 2 , el conjunto E( i 1 , i 2 , j 1 , j 2 ) contiene los índices de todos los rectángulos cuya esquina inferior izquierda está en el rectángulo [ x i 1 , x i 2 ] X [ y p ( j 1) , y p ( j 2) ]. Un patrón de corte es un patrón de guillotina si y solo si, para todos los cuatrillizos de índices i 1i 2 y j 1j 2 , se cumple al menos una de las siguientes condiciones para E( i 1 , i 2 , j 1 , j 2 ):

  1. E( i 1 , i 2 , j 1 , j 2 ) contiene como máximo un elemento;
  2. La unión de los segmentos horizontales ( x i , x i + w i ), sobre todo i en E( i 1 , i 2 , j 1 , j 2 ), está formada por al menos dos intervalos disjuntos;
  3. La unión de los segmentos verticales ( y i , y i + h i ), sobre todo i en E( i 1 , i 2 , j 1 , j 2 ), está formada por al menos dos intervalos disjuntos.

La condición 2 implica que los rectángulos en E( i 1 , i 2 , j 1 , j 2 ) pueden separarse mediante un corte vertical (que pase entre los dos intervalos horizontales disjuntos); la condición 3 implica que los rectángulos en E( i 1 , i 2 , j 1 , j 2 ) pueden separarse mediante un corte horizontal. Todas las condiciones juntas implican que, si cualquier conjunto de rectángulos adyacentes contiene más de un elemento, entonces pueden separarse mediante algún corte de guillotina.

Esta condición se puede comprobar mediante el siguiente algoritmo.

Para encontrar un corte de guillotina para un patrón determinado se necesita lo siguiente:

El paso de ordenación se realiza una vez y el paso de fusión se realiza m -1 veces. Por lo tanto, el tiempo de ejecución de todo el algoritmo es O( m 2 ).

Cuando el algoritmo devuelve "sí", también produce una secuencia de cortes de guillotina; cuando devuelve "no", también produce subconjuntos específicos de rectángulos que no se pueden separar mediante cortes de guillotina.

La condición necesaria y suficiente se puede utilizar para presentar el problema de corte en tiras con guillotina como un programa lineal entero mixto . [5] : sec.5  Su modelo tiene 3 n 4 /4 variables binarias y 2 n 4 restricciones, y se considera que no es útil en la práctica.

Encontrar un patrón de corte óptimo

Se trata de variantes de los problemas de corte bidimensional , empaquetamiento en contenedores y empaquetamiento rectangular , donde los cortes están restringidos a ser cortes de guillotina. [6]

Algoritmos de optimización

El caso especial en el que solo hay un tipo (es decir, todos los rectángulos de destino son idénticos y tienen la misma orientación) se denomina problema de carga de paletas de guillotina . Tarnowski, Terno y Scheithauer [10] presentan un algoritmo de tiempo polinomial para resolverlo.

Sin embargo, cuando hay dos o más tipos, todos los problemas de optimización relacionados con el corte con guillotina son NP-hard . Debido a su importancia práctica, se han ideado varios algoritmos exactos y algoritmos de aproximación .

Implementaciones

Separación con guillotina

La separación por guillotina es un problema relacionado en el que la entrada es una colección de n objetos convexos disjuntos por pares en el plano, y el objetivo es separarlos utilizando una secuencia de cortes de guillotina. Obviamente, puede que no sea posible separarlos todos. Jorge Urrutia Galicia preguntó [18] si es posible separar una fracción constante de ellos, es decir, si existe una constante c tal que, en cualquier colección de tamaño n, haya un subconjunto de tamaño cn que sea separable por guillotina.

Pach y Tardos [19] demostraron:

Abed, Chalermsook, Correa, Karrenbauer, Pérez-Lantero, Soto y Wiese [20] demostraron:

Khan y Pittu [21] demostraron:

Ver también:

Más variantes

Algunas variantes del problema estudiadas recientemente incluyen:

Referencias

  1. ^ Tlilane, Lydia; Viaud, Quentin (18 de mayo de 2018). "Challenge ROADEF / EURO 2018 Cutting Optimization Problem Description" (PDF) . Desafío ROADEF/EURO . ROADEF . Consultado el 13 de junio de 2019 .
  2. ^ abcd Beasley, JE (1 de abril de 1985). "Algoritmos para corte de guillotina bidimensional sin restricciones". Revista de la Sociedad de Investigación Operativa . 36 (4): 297–306. doi :10.1057/jors.1985.51. ISSN  0160-5682. S2CID  58059319.
  3. ^ Gerhard Wäscher, Heike Haußner, Holger Schumann, Una tipología mejorada de problemas de corte y empaque, European Journal of Operational Research 183 (2007) 1109–1130, [1] Archivado el 20 de diciembre de 2016 en Wayback Machine.
  4. ^ abc Clautiaux, François; Jouglet, Antoine; Moukrim, Aziz (17 de octubre de 2011). "Un nuevo modelo gráfico-teórico para el problema del corte con guillotina". INFORMS Journal on Computing . 25 (1): 72–86. doi :10.1287/ijoc.1110.0478. ISSN  1091-9856.
  5. ^ abc Ben Messaoud, Said; Chu, Chengbin; Espinouse, Marie-Laure (16 de noviembre de 2008). "Caracterización y modelado de restricciones de guillotina". Revista Europea de Investigación Operativa . 191 (1): 112–126. doi :10.1016/j.ejor.2007.08.029. ISSN  0377-2217.
  6. ^ ab M. Hifi, R. M'Hallah y T. Saadi, Algoritmos aproximados y exactos para el problema de corte de material en guillotina bidimensional con doble restricción. Optimización computacional y aplicaciones, volumen 42, número 2 (2009), 303-326, doi :10.1007/s10589-007-9081-5
  7. ^ Carlier, Jacques; Clautiaux, François; Moukrim, Aziz (1 de agosto de 2007). "Nuevos procedimientos de reducción y límites inferiores para el problema de empaquetamiento de bins bidimensional con orientación fija". Computers & Operations Research . 34 (8): 2223–2250. doi :10.1016/j.cor.2005.08.012. ISSN  0305-0548.
  8. ^ ab Russo, Mauro; Boccia, Maurizio; Sforza, Antonio; Sterle, Claudio (2020). "Problema de corte de guillotina bidimensional restringido: revisión y categorización de límites superiores". Transacciones internacionales en investigación operativa . 27 (2): 794–834. doi :10.1111/itor.12687. ISSN  1475-3995. S2CID  195551953.
  9. ^ Scheithauer, Guntram (1993). "Cálculo de patrones de corte de guillotina φ-simples óptimos" (PDF) . Revista de procesamiento de información y cibernética . 29 (2): 115–128.
  10. ^ Tarnowski, AG; Terno, J.; Scheithauer, G. (1994-11-01). "Un algoritmo de tiempo polinomial para el problema de carga de paletas de guillotina". INFOR: Sistemas de información e investigación operativa . 32 (4): 275–287. doi :10.1080/03155986.1994.11732257. ISSN  0315-5986.
  11. ^ Gilmore, PC; Gomory, RE (1965-02-01). "Problemas de corte de material en varias etapas de dos y más dimensiones". Investigación de operaciones . 13 (1): 94–120. doi :10.1287/opre.13.1.94. ISSN  0030-364X.
  12. ^ Gilmore, PC; Gomory, RE (1966-12-01). "La teoría y el cálculo de funciones de mochila". Investigación de operaciones . 14 (6): 1045–1074. doi :10.1287/opre.14.6.1045. ISSN  0030-364X.
  13. ^ ab Herz, JC (septiembre de 1972). "Procedimiento computacional recursivo para el corte de material bidimensional". IBM Journal of Research and Development . 16 (5): 462–469. doi :10.1147/rd.165.0462. ISSN  0018-8646.
  14. ^ Christofides, Nicos; Whitlock, Charles (1977-02-01). "Un algoritmo para problemas de corte bidimensionales". Investigación de operaciones . 25 (1): 30–44. doi :10.1287/opre.25.1.30. ISSN  0030-364X.
  15. ^ OBG Masden (1980), Documento de trabajo IMSOR, Universidad técnica de Dinamarca, Lyngby
  16. ^ Wang, PY (1 de junio de 1983). "Dos algoritmos para problemas de corte de material bidimensionales restringidos". Investigación de operaciones . 31 (3): 573–586. doi :10.1287/opre.31.3.573. ISSN  0030-364X.
  17. ^ Michael L. McHale, Roshan P. Shah Reducir la guillotina a su tamaño ideal. Revista PC AI, volumen 13, número 1, enero/febrero de 1999. http://www.amzi.com/articles/papercutter.htm
  18. ^ Problema presentado en ACCOTA '96, Aspectos combinatorios y computacionales de la topología y el álgebra de optimización, Taxco, México 1996
  19. ^ Pach, J.; Tardos, G. (2000). "Corte de vidrio". Geometría discreta y computacional . 24 (2–3): 481–496. doi : 10.1007/s004540010050 . ISSN  0179-5376. S2CID  1737527.
  20. ^ Abed, Fidaa; Chalermsook, Parinya; Correa, José; Karrenbauer, Andreas; Pérez-Lantero, Pablo; Soto, José A.; Wiese, Andreas (2015). Sobre secuencias de corte con guillotina. págs. 1-19. doi : 10.4230/LIPIcs.APPROX-RANDOM.2015.1 . ISBN 978-3-939897-89-7.
  21. ^ ab Khan, Arindam; Pittu, Madhusudhan Reddy (2020). Byrka, Jaros\law; Meka, Raghu (eds.). "Sobre la separabilidad de cuadrados y rectángulos mediante guillotina". Aproximación, aleatorización y optimización combinatoria. Algoritmos y técnicas (APPROX/RANDOM 2020) . Leibniz International Proceedings in Informatics (LIPIcs). 176. Dagstuhl, Alemania: Schloss Dagstuhl–Leibniz-Zentrum für Informatik: 47:1–47:22. doi : 10.4230/LIPIcs.APPROX/RANDOM.2020.47 . ISBN . 978-3-95977-164-1.
  22. ^ Martin, Mateus; Oliveira, José Fernando; Silva, Elsa; Morabito, Reinaldo; Munari, Pedro (8 de noviembre de 2020). "Problemas de corte de guillotina tridimensionales con patrones restringidos: formulaciones MILP y un algoritmo de abajo hacia arriba". Sistemas expertos con aplicaciones . 168 : 114257. doi :10.1016/j.eswa.2020.114257. ISSN  0957-4174. S2CID  228839108.
  23. ^ Baazaoui, M.; Hanafi, S.; Kamoun, H. (1 de noviembre de 2014). "Una formulación matemática y un límite inferior para el problema de empaquetamiento de bins de múltiples tamaños tridimensional (MBSBPP): un caso industrial tunecino". 2014 Conferencia internacional sobre tecnologías de control, decisión e información (CoDIT) . pp. 219–224. doi :10.1109/CoDIT.2014.6996896. ISBN 978-1-4799-6773-5.S2CID18598442  .​
  24. ^ Martin, Mateus; Hokama, Pedro HDB; Morabito, Reinaldo; Munari, Pedro (2020-05-02). "El problema de corte de guillotina bidimensional restringido con defectos: una formulación ILP, una descomposición de Benders y un algoritmo basado en CP". Revista Internacional de Investigación en Producción . 58 (9): 2712–2729. doi :10.1080/00207543.2019.1630773. ISSN  0020-7543. S2CID  197434029.

Abou Msabah, Slimane y Ahmed Riadh Baba-Ali. "Una nueva heurística de colocación de guillotina combinada con un algoritmo genético mejorado para el problema de corte ortogonal de material". Conferencia internacional IEEE de 2011 sobre ingeniería industrial y gestión de ingeniería . IEEE, 2011.