SlideShare una empresa de Scribd logo
1 de 25
Automating the Packing Heuristic Design
Process with Genetic Programming/Automatización del
diseño heurístico Embalaje
Proceso de Programación Genética
Edmund K. Burke
ekb@cs.nott.ac.uk
University of Nottingham, School of Computer Science, Nottingham, UK
Matthew R. Hyde
mvh@cs.nott.ac.uk
University of Nottingham, School of Computer Science, Nottingham, UK
Graham Kendall
gxk@cs.nott.ac.uk
University of Nottingham, School of Computer Science, Nottingham, UK
John Woodward
jrw@cs.nott.ac.uk
University of Nottingham, School of Computer Science, Nottingham, UK
Resumen
La literatura muestra que uno, dos y tres dimensiones de deposito de embalaje y mochila que son
problemas difíciles de la Investigación Operativa. Muchas de las técnicas, incluyendo planteamientos
concretos, heurística y metaheurística han sido investigados para resolver estos problemas y que a
menudo no está claro el método a utilizar cuando se presenta con un nuevo ejemplo.
Este artículo presenta un enfoque que está motivado por el objetivo de la creación de sistemas
informáticos que puedan diseñar métodos heurísticos. El objetivo general es explorar las posibilidades de
automatizar el proceso de diseño heurístico. Se presenta un sistema de programación genética para generar
automáticamente una buena calidad heurística para cada instancia. No es necesario cambiar la metodología
dependiendo en el tipo de problema (problemas de la mochila y deposito embalaje en una, dos o tres
dimensiones), y por lo tanto, tiene un nivel de generalidad incomparable con otros sistemas en el literatura.
Realizamos una amplia gama de experimentos y comparaciones con las mejores heurísticas diseñadas en
la literatura. Tenga en cuenta que nuestro diseño metodogía heurística utiliza los mismos parámetros para
todos los experimentos.
La contribución de este trabajo es presentar una metodología más general de embalaje que los actualmente
disponibles, y para mostrar que, mediante el uso de esta metodología, un sistema de ordenador es posible
para el diseño de heurísticas que son competitivas con la heurística el humana de la literatura firmado .
Esto representa el primer algoritmo de embalaje en el literatura capaz de reclamar resultados competitivos
humanos en una amplia variedad de embalaje tal dominios.
1. Hyper-Heuristica
● La HiperHeuristica es para “Elevar el nivel de la generalidad
en que pueden operar los sistemas de optimizacion” [Burke,
2003a]. Hay dos tipos [Burke,2010b]:
1) Hyperheuristica elige heuristica:
● Elegir inteligentemente la heuristica
● Los puntos fuertes de las heuristicas potencial% se pueden combinar
2) Hyperheuristica crea heuristica:
● Generar automaticamente una heuristica
● Utilizar programación genética como hiper-heuristica para una
instancia frente a un problema dado
● Se definen funciones y terminales utilizados como componentes de la
heuristica [Burke, 2009b]
Embalaje Uni-Dimensional
● Para tubos o vigas
● Para diferentes longitudes
● Solución online [Rhee y Talagrand,1993], [Coffman, 1998],
[Johnson,1974],[Kenyon, 1996] y offline [Yao, 1980],[Richey,
1991][Coffman, 2000],[Sieden, 2003].
● Online, se embala uno a uno, no se pueden mover una vez
asignado el lugar.
● Offline se pueden ordenar y clasificar al poseer todas las
dimensiones conocidas.
● Utilizacion de Algoritmos evolutivos operan en un espacio de
soluciones candidatas [Falkenauer y Delchambre, 1992],
[O'Neill, 2004].
Embalaje de Dos Dimensiones
● Para papel, metal, vidrio, textiles, madera.
● Encontrar el el numero minimo de hojas que se requieren para obtener todas las formas
requeridas [Schneider, 1988],[Vasko, 1989],[Lagus,1996] para formas ortogonales.
● También hay soluciones para formas irregulares.
● Una Restricción común es la de guillotina. Corte total de un lado a otro y el resultado son 2
piezas. Este artículo no tiene esta limitación (excepciones en 6.1.2).
● Métodos:
– Programacion lineal [Gilmore y Gomory, 1961]
– Búsquedas de árbol [Christofides y Whitlock, 1977], [Beastley, 1985]
– Metodologías recientes son más exactas [Clautiaux, 2008], [Kenmochi, 2009],
[Macedo,2010][Alvarez-Valdez, 2009]
– Enfoque Heuristico [Bengtsson, 1982], “abajo a la izquierda”, “mejor ajuste”
– Mochila 2D [Egeblad y Pisinger, 2009] y Algoritmo genetico para mochila 2D
[Hadjiconstantinou y Iori, 2007], [Hwang, 1994] y Busqueda Tabu [Burke, 2006a]
Embalaje de Tres Dimensiones
● Para mercancias luego de su fabricación que deben transportarse en
contenedores de tamaño estándar
● Objetivo: Maximizar la utilizacion del volumen de los recipientes o reducir
el número de contendores que deben utilizarse para contener todos los
bienes
● Mediante programación entera [Ivancic, 1989], con diferencias de realidad
vs literatura[Bischoff y Ratcliff, 1995], con enfoque iterativo [Lim y
Zhang, 2005] con arbol de busqueda y asignación de culpa, menor
desperdicio de espacio a su alrededor [Ngoi, 1994], [Chua, 1998]
● Mochila 3D, con algoritmo genético hibrido con capas verticales [Bortfeldt
y Gehring, 2001] y acumulación de multiples caras [Lim, 2003], con
secuencias triples [Egebland y Pisinger, 2009], con grado de espeleologia o
proximidad de una caja [Huang y He, 2009] logrando embalaje con mayor
espeleología.
2. Descripción del problema
● Problema de la Mochila
– xj piezas
– wj pesos
– vj valor
– Capacidad c
– dj deposito
– Maximizar el valor de las piezas a ser embaladas
– En 2D y 3D, con rotación de piezas paralelas a borde de
mochila y no impone guillotina
2. Descripción del problema
● Problema Depósito de Embalaje
– Similar a mochila, la diferencia es que todas deben ser
embaladas
– Minimizar recipientes para almacenar piezas [Martello y Toth,
1990]
– n numero de piezas, yi variable binaria, xij indica que pieza j es
embalado en depósito i
– Numero ilimitado de depósitos (bins ) disponibles
3. Representación 1D, 2D, 3D de
Problema de Embalaje
● Esta permitido rotar las piezas en cualquier dirección, excepto
cuando la instacia especifica solo ciertas rotaciones.
● Cada contenedor contiene dimensiones
● Ejemplo de una pieza colocada en una esquina
El depósito y los objetos en la esquina
● Un depósito se inicializa creando una esquina, inferior
izquierda, por lo que la heuristica debe elegir que pieza colocar
en esa esquina.
● Cuando se coloca la esquina se elimina, quedando disponibles
tres esquinas más en coordenadas distintas.
● Una esquina no se crea cuando la pieza se encuantra en el
borde exterior del recipiente.
● La informacion es mediente 3 planos ortogonales 2D : XY,
XZ, YZ y el tamaño y los limites de las 3 superficies se
definen por el alcance de las caras de las piezas o cara de
contenedores.
Colocación válida de piezas
● Cada pieza es considerada por la heuristica en las 6
orientaciones de cada esquina, a menos que la instancia limite
la orientación.
● Se busca la(s) orientaciones que se ajuste(n) con una de las 3
superficies posibles, se considera una orientación válida en esa
esquina.
Extensión de las superficies de una
esquina
● Si una pieza se coloca en una esquina y la pieza llega al limite
de la superficie, significa que la superficie de una o más
esquinas cercanas necesitan ser modificadas.
● Figura 7, extensión de planos XZ y YZ
● Piezas de relleno
– Algunas esquinas con superficies que son pequeñas
– Para cuelquier pieza en varias direcciones
– Las esquinas son espacio despediciado
– Si no se controlan estos rincones seran en potencia un gran espacio
perdido, por eso se crean las “piezas de relleno”
-Aumenta superficie XZ
-Una PR nunca crea esquina, solo
4. La Metodología de la Programación
Genética
● Esto se manipula en función de su rendimiento. Ósea con una combinación de
piezas, la orientación, la esquinas asignadas se conocen como “punto de decisión”.
● ¿Cómo se aplica la heurística?[Koza, 1992], [Banzhaf, 1998], [Koza y Poli, 2005]
– La heurististica (un individuo en la población de programación genética) opera
por cada punto de decisión.
– Los individuos son estructuras de árbol
– Nodos internos (funciones)
– Nodos hojas (terminales)
Algoritmo 1
Funciones y Terminales
Fitness de una Heurística
● Fitness del depósito de embalaje, es la calidad del embalaje
[Falkenauer y Delchambre, 1992]
– n numero de bins
– m numero de piezas
– vj volumen de pieza
– C capacidad de bin (volumen)
– xij es 1 si pieza j esta en bin i, 0 en otros casos.
– Esta funcion premia a los contenedores que están casi o
completamente llenos.
– Esta función evita problemas de mesetas en el espacio de
búsquedas [Burke, 2006b].
● Fitness de la Mochila,
Parámetros de la programación
genética
● Según [Koza, 1992]
● Paquete empleado: ECJ (Evolutionary Computation in Java)
5. Datasets
● Resumen de 18 datasets utilizados
6. Resultados
● Se comparan los resultados de las instancias contra los resultados de la
mejor heuristica en la literatura para esa instancia.
● Se utilizan estas ecuaciones:
● Se realizaron en cada caso 10 carreras con una semilla aleatoria distinta.
● La media de las 10 carreras de la instancia es InstanceAverage
● La relación de InstanceAverage sobre la mejor se calcula con IntanceRatio
● Ratio es el promedio de InstanceRatio de todos los casos del conjunto de datos.
Resultados por Dimensión
● Bin Packing (Min) y
Knapsack (Max)
Literatura:
1D – [Schwerin y Wascher, 1997]
2D – [Bengstsson, 1982]
3D – [???]
Literatura:
2D – [Pisinger, 2009]
3D – [Egenblad y Pisinger, 2009]
7. Un ejemplo de Heuristica
Envolvente
● Ejemplo de heuristica, que se desarrolla de instancia BR5-0,
los nombres de terminales se abrevian, donde X,Y y Z son
coordenadas, V es la pieza, v es el volumen de la pieza y XZ
es el nodo terminal.
8. Conclusiones
● Se corfirma que una hypereuristica busca le mejor solución de
heuristica dentro del espacio de soluciones. Logrando un nivel
de generalidad mayor.
● Este problema ha sido estudiado en la literauta muchas veces y
se confirma su gran cantidad de literatura y variados data sets
y su evolución constante cada vez con mejores resultados.
● Fue validada desde toda su multidimensionalidad la validez de
la heuristca empleada, validando a la vez otro problema
similar como el de la mochila.
Referencias
● Alvarez-Valdes, R., Parreno, F., and Tamarit, J. M. (2009). A branch and
bound algorithm for the strip packing problem. OR Spectrum, 31(2):431–
459.
● Baker, B. S., Coffman, E. G., and Rivest, R. L. (1980). Orthogonal
packings in two dimensions. SIAM J. Comput., 9(4):846–855.
● Banzhaf, W., Nordin, P., Keller, R., and Francone, F. (1998). Genetic
programming, an introduction: on the automatic evolution of computer
programs and its applications. Morgan Kaufmann, San Francisco.
● Beasley, J. E. (1985). An exact two-dimensional non-guillotine cutting tree
search procedure. Oper. Res., 33(1):49–64.
● Bengtsson, B. E. (1982). Packing rectangular pieces - a heuristic approach.
The Comput. J., 25(3):353–357.
● ….
● Revisión de 71 papers
Demostración de Software

Más contenido relacionado

Similar a Packing

Rompecabezas Matemático para OPTIMIZAR el espacio en un marco
Rompecabezas Matemático para OPTIMIZAR el espacio en un marcoRompecabezas Matemático para OPTIMIZAR el espacio en un marco
Rompecabezas Matemático para OPTIMIZAR el espacio en un marcoJAVIER SOLIS NOYOLA
 
Análisis y Diseño de Algoritmos
Análisis y Diseño de Algoritmos Análisis y Diseño de Algoritmos
Análisis y Diseño de Algoritmos linuxsanchez
 
Coleccion problemas-de-ia
Coleccion problemas-de-iaColeccion problemas-de-ia
Coleccion problemas-de-iabaessa27x
 
La Torre de Hanoi Monografía vanessa mayo 2010
La Torre de Hanoi  Monografía  vanessa mayo 2010La Torre de Hanoi  Monografía  vanessa mayo 2010
La Torre de Hanoi Monografía vanessa mayo 2010Vanessa Santiago
 
Presentacion-sobre-algoritmos
Presentacion-sobre-algoritmosPresentacion-sobre-algoritmos
Presentacion-sobre-algoritmosRuByST
 
7130-Manuscrito-39375-3-10-20210705.pdf
7130-Manuscrito-39375-3-10-20210705.pdf7130-Manuscrito-39375-3-10-20210705.pdf
7130-Manuscrito-39375-3-10-20210705.pdfarturoavilacamacho1
 
930 article text-2970-1-10-20101026
930 article text-2970-1-10-20101026930 article text-2970-1-10-20101026
930 article text-2970-1-10-20101026cesar91
 
Introduction to SDM with Maxent JohannesS Signer
Introduction to SDM with Maxent JohannesS SignerIntroduction to SDM with Maxent JohannesS Signer
Introduction to SDM with Maxent JohannesS Signerjsigner
 
investigacion de operacciones
investigacion de operacciones investigacion de operacciones
investigacion de operacciones Pato Rodriguez
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación DinámicaRonald Medrano
 
Investigación de operaciones
Investigación de operaciones Investigación de operaciones
Investigación de operaciones Abelino Almanza
 
Investigación de operaciones
Investigación de operacionesInvestigación de operaciones
Investigación de operacionesabelino0909
 
Actividad 2 actividades para realizar planeaciones
Actividad 2 actividades para realizar planeacionesActividad 2 actividades para realizar planeaciones
Actividad 2 actividades para realizar planeacionesortizsequea
 

Similar a Packing (20)

Introduccion io
Introduccion ioIntroduccion io
Introduccion io
 
Rompecabezas Matemático para OPTIMIZAR el espacio en un marco
Rompecabezas Matemático para OPTIMIZAR el espacio en un marcoRompecabezas Matemático para OPTIMIZAR el espacio en un marco
Rompecabezas Matemático para OPTIMIZAR el espacio en un marco
 
Análisis y Diseño de Algoritmos
Análisis y Diseño de Algoritmos Análisis y Diseño de Algoritmos
Análisis y Diseño de Algoritmos
 
Optimización
OptimizaciónOptimización
Optimización
 
Coleccion problemas-de-ia
Coleccion problemas-de-iaColeccion problemas-de-ia
Coleccion problemas-de-ia
 
Io 2da programacion lineal
Io 2da programacion linealIo 2da programacion lineal
Io 2da programacion lineal
 
La Torre de Hanoi Monografía vanessa mayo 2010
La Torre de Hanoi  Monografía  vanessa mayo 2010La Torre de Hanoi  Monografía  vanessa mayo 2010
La Torre de Hanoi Monografía vanessa mayo 2010
 
Presentacion-sobre-algoritmos
Presentacion-sobre-algoritmosPresentacion-sobre-algoritmos
Presentacion-sobre-algoritmos
 
1.3
1.31.3
1.3
 
7130-Manuscrito-39375-3-10-20210705.pdf
7130-Manuscrito-39375-3-10-20210705.pdf7130-Manuscrito-39375-3-10-20210705.pdf
7130-Manuscrito-39375-3-10-20210705.pdf
 
930 article text-2970-1-10-20101026
930 article text-2970-1-10-20101026930 article text-2970-1-10-20101026
930 article text-2970-1-10-20101026
 
Introduction to sdm with Maxent Johannes S
Introduction to sdm with Maxent Johannes SIntroduction to sdm with Maxent Johannes S
Introduction to sdm with Maxent Johannes S
 
Introduction to SDM with Maxent JohannesS Signer
Introduction to SDM with Maxent JohannesS SignerIntroduction to SDM with Maxent JohannesS Signer
Introduction to SDM with Maxent JohannesS Signer
 
investigacion de operacciones
investigacion de operacciones investigacion de operacciones
investigacion de operacciones
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 
Ronald medrano
Ronald medranoRonald medrano
Ronald medrano
 
Investigación de operaciones
Investigación de operaciones Investigación de operaciones
Investigación de operaciones
 
Investigación de operaciones
Investigación de operacionesInvestigación de operaciones
Investigación de operaciones
 
Actividad 2 actividades para realizar planeaciones
Actividad 2 actividades para realizar planeacionesActividad 2 actividades para realizar planeaciones
Actividad 2 actividades para realizar planeaciones
 
5 mathematic03
5 mathematic035 mathematic03
5 mathematic03
 

Más de Pedro Contreras Flores

Servicio de información para bibliotecas
Servicio de información para bibliotecasServicio de información para bibliotecas
Servicio de información para bibliotecasPedro Contreras Flores
 
Business intelligence (bi) y big data0
Business intelligence (bi) y big data0Business intelligence (bi) y big data0
Business intelligence (bi) y big data0Pedro Contreras Flores
 
Sistemas y servicios de informacion intro
Sistemas y servicios de informacion introSistemas y servicios de informacion intro
Sistemas y servicios de informacion introPedro Contreras Flores
 
Hormigas arfificiales - Mauro San Martín
Hormigas arfificiales - Mauro San MartínHormigas arfificiales - Mauro San Martín
Hormigas arfificiales - Mauro San MartínPedro Contreras Flores
 

Más de Pedro Contreras Flores (20)

El dilema de las redes sociales
El dilema de las redes sociales El dilema de las redes sociales
El dilema de las redes sociales
 
Tipos de sistemas de información
Tipos de sistemas de informaciónTipos de sistemas de información
Tipos de sistemas de información
 
Text Analytics - JCC2014 Kimelfeld
Text Analytics - JCC2014 KimelfeldText Analytics - JCC2014 Kimelfeld
Text Analytics - JCC2014 Kimelfeld
 
Servicio de información para bibliotecas
Servicio de información para bibliotecasServicio de información para bibliotecas
Servicio de información para bibliotecas
 
Gestión del conocimiento
Gestión del conocimientoGestión del conocimiento
Gestión del conocimiento
 
Business intelligence (bi) y big data0
Business intelligence (bi) y big data0Business intelligence (bi) y big data0
Business intelligence (bi) y big data0
 
Bibliotecas moviles y calidad
Bibliotecas moviles y calidadBibliotecas moviles y calidad
Bibliotecas moviles y calidad
 
Sistemas y servicios de informacion intro
Sistemas y servicios de informacion introSistemas y servicios de informacion intro
Sistemas y servicios de informacion intro
 
Plataforma de Digitalización
Plataforma de DigitalizaciónPlataforma de Digitalización
Plataforma de Digitalización
 
Red de transporte urbano
Red de transporte urbanoRed de transporte urbano
Red de transporte urbano
 
Hormigas arfificiales - Mauro San Martín
Hormigas arfificiales - Mauro San MartínHormigas arfificiales - Mauro San Martín
Hormigas arfificiales - Mauro San Martín
 
Tecnologías de la información
Tecnologías de la informaciónTecnologías de la información
Tecnologías de la información
 
Modelamiento y simulación
Modelamiento y simulaciónModelamiento y simulación
Modelamiento y simulación
 
Java 3D
Java 3DJava 3D
Java 3D
 
Complementos de programación
Complementos de programaciónComplementos de programación
Complementos de programación
 
4 memoria dinamica
4 memoria dinamica4 memoria dinamica
4 memoria dinamica
 
3 recursividad
3 recursividad3 recursividad
3 recursividad
 
2 punteros y lenguaje c
2 punteros y lenguaje c2 punteros y lenguaje c
2 punteros y lenguaje c
 
Programación grafica en lenguaje c
Programación grafica en lenguaje cProgramación grafica en lenguaje c
Programación grafica en lenguaje c
 
2 archivos
2 archivos2 archivos
2 archivos
 

Último

Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 

Último (12)

Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 

Packing

  • 1. Automating the Packing Heuristic Design Process with Genetic Programming/Automatización del diseño heurístico Embalaje Proceso de Programación Genética Edmund K. Burke ekb@cs.nott.ac.uk University of Nottingham, School of Computer Science, Nottingham, UK Matthew R. Hyde mvh@cs.nott.ac.uk University of Nottingham, School of Computer Science, Nottingham, UK Graham Kendall gxk@cs.nott.ac.uk University of Nottingham, School of Computer Science, Nottingham, UK John Woodward jrw@cs.nott.ac.uk University of Nottingham, School of Computer Science, Nottingham, UK
  • 2. Resumen La literatura muestra que uno, dos y tres dimensiones de deposito de embalaje y mochila que son problemas difíciles de la Investigación Operativa. Muchas de las técnicas, incluyendo planteamientos concretos, heurística y metaheurística han sido investigados para resolver estos problemas y que a menudo no está claro el método a utilizar cuando se presenta con un nuevo ejemplo. Este artículo presenta un enfoque que está motivado por el objetivo de la creación de sistemas informáticos que puedan diseñar métodos heurísticos. El objetivo general es explorar las posibilidades de automatizar el proceso de diseño heurístico. Se presenta un sistema de programación genética para generar automáticamente una buena calidad heurística para cada instancia. No es necesario cambiar la metodología dependiendo en el tipo de problema (problemas de la mochila y deposito embalaje en una, dos o tres dimensiones), y por lo tanto, tiene un nivel de generalidad incomparable con otros sistemas en el literatura. Realizamos una amplia gama de experimentos y comparaciones con las mejores heurísticas diseñadas en la literatura. Tenga en cuenta que nuestro diseño metodogía heurística utiliza los mismos parámetros para todos los experimentos. La contribución de este trabajo es presentar una metodología más general de embalaje que los actualmente disponibles, y para mostrar que, mediante el uso de esta metodología, un sistema de ordenador es posible para el diseño de heurísticas que son competitivas con la heurística el humana de la literatura firmado . Esto representa el primer algoritmo de embalaje en el literatura capaz de reclamar resultados competitivos humanos en una amplia variedad de embalaje tal dominios.
  • 3. 1. Hyper-Heuristica ● La HiperHeuristica es para “Elevar el nivel de la generalidad en que pueden operar los sistemas de optimizacion” [Burke, 2003a]. Hay dos tipos [Burke,2010b]: 1) Hyperheuristica elige heuristica: ● Elegir inteligentemente la heuristica ● Los puntos fuertes de las heuristicas potencial% se pueden combinar 2) Hyperheuristica crea heuristica: ● Generar automaticamente una heuristica ● Utilizar programación genética como hiper-heuristica para una instancia frente a un problema dado ● Se definen funciones y terminales utilizados como componentes de la heuristica [Burke, 2009b]
  • 4. Embalaje Uni-Dimensional ● Para tubos o vigas ● Para diferentes longitudes ● Solución online [Rhee y Talagrand,1993], [Coffman, 1998], [Johnson,1974],[Kenyon, 1996] y offline [Yao, 1980],[Richey, 1991][Coffman, 2000],[Sieden, 2003]. ● Online, se embala uno a uno, no se pueden mover una vez asignado el lugar. ● Offline se pueden ordenar y clasificar al poseer todas las dimensiones conocidas. ● Utilizacion de Algoritmos evolutivos operan en un espacio de soluciones candidatas [Falkenauer y Delchambre, 1992], [O'Neill, 2004].
  • 5. Embalaje de Dos Dimensiones ● Para papel, metal, vidrio, textiles, madera. ● Encontrar el el numero minimo de hojas que se requieren para obtener todas las formas requeridas [Schneider, 1988],[Vasko, 1989],[Lagus,1996] para formas ortogonales. ● También hay soluciones para formas irregulares. ● Una Restricción común es la de guillotina. Corte total de un lado a otro y el resultado son 2 piezas. Este artículo no tiene esta limitación (excepciones en 6.1.2). ● Métodos: – Programacion lineal [Gilmore y Gomory, 1961] – Búsquedas de árbol [Christofides y Whitlock, 1977], [Beastley, 1985] – Metodologías recientes son más exactas [Clautiaux, 2008], [Kenmochi, 2009], [Macedo,2010][Alvarez-Valdez, 2009] – Enfoque Heuristico [Bengtsson, 1982], “abajo a la izquierda”, “mejor ajuste” – Mochila 2D [Egeblad y Pisinger, 2009] y Algoritmo genetico para mochila 2D [Hadjiconstantinou y Iori, 2007], [Hwang, 1994] y Busqueda Tabu [Burke, 2006a]
  • 6. Embalaje de Tres Dimensiones ● Para mercancias luego de su fabricación que deben transportarse en contenedores de tamaño estándar ● Objetivo: Maximizar la utilizacion del volumen de los recipientes o reducir el número de contendores que deben utilizarse para contener todos los bienes ● Mediante programación entera [Ivancic, 1989], con diferencias de realidad vs literatura[Bischoff y Ratcliff, 1995], con enfoque iterativo [Lim y Zhang, 2005] con arbol de busqueda y asignación de culpa, menor desperdicio de espacio a su alrededor [Ngoi, 1994], [Chua, 1998] ● Mochila 3D, con algoritmo genético hibrido con capas verticales [Bortfeldt y Gehring, 2001] y acumulación de multiples caras [Lim, 2003], con secuencias triples [Egebland y Pisinger, 2009], con grado de espeleologia o proximidad de una caja [Huang y He, 2009] logrando embalaje con mayor espeleología.
  • 7. 2. Descripción del problema ● Problema de la Mochila – xj piezas – wj pesos – vj valor – Capacidad c – dj deposito – Maximizar el valor de las piezas a ser embaladas – En 2D y 3D, con rotación de piezas paralelas a borde de mochila y no impone guillotina
  • 8. 2. Descripción del problema ● Problema Depósito de Embalaje – Similar a mochila, la diferencia es que todas deben ser embaladas – Minimizar recipientes para almacenar piezas [Martello y Toth, 1990] – n numero de piezas, yi variable binaria, xij indica que pieza j es embalado en depósito i – Numero ilimitado de depósitos (bins ) disponibles
  • 9. 3. Representación 1D, 2D, 3D de Problema de Embalaje ● Esta permitido rotar las piezas en cualquier dirección, excepto cuando la instacia especifica solo ciertas rotaciones. ● Cada contenedor contiene dimensiones ● Ejemplo de una pieza colocada en una esquina
  • 10. El depósito y los objetos en la esquina ● Un depósito se inicializa creando una esquina, inferior izquierda, por lo que la heuristica debe elegir que pieza colocar en esa esquina. ● Cuando se coloca la esquina se elimina, quedando disponibles tres esquinas más en coordenadas distintas. ● Una esquina no se crea cuando la pieza se encuantra en el borde exterior del recipiente. ● La informacion es mediente 3 planos ortogonales 2D : XY, XZ, YZ y el tamaño y los limites de las 3 superficies se definen por el alcance de las caras de las piezas o cara de contenedores.
  • 11. Colocación válida de piezas ● Cada pieza es considerada por la heuristica en las 6 orientaciones de cada esquina, a menos que la instancia limite la orientación. ● Se busca la(s) orientaciones que se ajuste(n) con una de las 3 superficies posibles, se considera una orientación válida en esa esquina.
  • 12. Extensión de las superficies de una esquina ● Si una pieza se coloca en una esquina y la pieza llega al limite de la superficie, significa que la superficie de una o más esquinas cercanas necesitan ser modificadas. ● Figura 7, extensión de planos XZ y YZ ● Piezas de relleno – Algunas esquinas con superficies que son pequeñas – Para cuelquier pieza en varias direcciones – Las esquinas son espacio despediciado – Si no se controlan estos rincones seran en potencia un gran espacio perdido, por eso se crean las “piezas de relleno” -Aumenta superficie XZ -Una PR nunca crea esquina, solo
  • 13. 4. La Metodología de la Programación Genética ● Esto se manipula en función de su rendimiento. Ósea con una combinación de piezas, la orientación, la esquinas asignadas se conocen como “punto de decisión”. ● ¿Cómo se aplica la heurística?[Koza, 1992], [Banzhaf, 1998], [Koza y Poli, 2005] – La heurististica (un individuo en la población de programación genética) opera por cada punto de decisión. – Los individuos son estructuras de árbol – Nodos internos (funciones) – Nodos hojas (terminales)
  • 16. Fitness de una Heurística ● Fitness del depósito de embalaje, es la calidad del embalaje [Falkenauer y Delchambre, 1992] – n numero de bins – m numero de piezas – vj volumen de pieza – C capacidad de bin (volumen) – xij es 1 si pieza j esta en bin i, 0 en otros casos. – Esta funcion premia a los contenedores que están casi o completamente llenos. – Esta función evita problemas de mesetas en el espacio de búsquedas [Burke, 2006b]. ● Fitness de la Mochila,
  • 17. Parámetros de la programación genética ● Según [Koza, 1992] ● Paquete empleado: ECJ (Evolutionary Computation in Java)
  • 18. 5. Datasets ● Resumen de 18 datasets utilizados
  • 19. 6. Resultados ● Se comparan los resultados de las instancias contra los resultados de la mejor heuristica en la literatura para esa instancia. ● Se utilizan estas ecuaciones: ● Se realizaron en cada caso 10 carreras con una semilla aleatoria distinta. ● La media de las 10 carreras de la instancia es InstanceAverage ● La relación de InstanceAverage sobre la mejor se calcula con IntanceRatio ● Ratio es el promedio de InstanceRatio de todos los casos del conjunto de datos.
  • 20. Resultados por Dimensión ● Bin Packing (Min) y Knapsack (Max) Literatura: 1D – [Schwerin y Wascher, 1997] 2D – [Bengstsson, 1982] 3D – [???] Literatura: 2D – [Pisinger, 2009] 3D – [Egenblad y Pisinger, 2009]
  • 21. 7. Un ejemplo de Heuristica Envolvente ● Ejemplo de heuristica, que se desarrolla de instancia BR5-0, los nombres de terminales se abrevian, donde X,Y y Z son coordenadas, V es la pieza, v es el volumen de la pieza y XZ es el nodo terminal.
  • 22.
  • 23. 8. Conclusiones ● Se corfirma que una hypereuristica busca le mejor solución de heuristica dentro del espacio de soluciones. Logrando un nivel de generalidad mayor. ● Este problema ha sido estudiado en la literauta muchas veces y se confirma su gran cantidad de literatura y variados data sets y su evolución constante cada vez con mejores resultados. ● Fue validada desde toda su multidimensionalidad la validez de la heuristca empleada, validando a la vez otro problema similar como el de la mochila.
  • 24. Referencias ● Alvarez-Valdes, R., Parreno, F., and Tamarit, J. M. (2009). A branch and bound algorithm for the strip packing problem. OR Spectrum, 31(2):431– 459. ● Baker, B. S., Coffman, E. G., and Rivest, R. L. (1980). Orthogonal packings in two dimensions. SIAM J. Comput., 9(4):846–855. ● Banzhaf, W., Nordin, P., Keller, R., and Francone, F. (1998). Genetic programming, an introduction: on the automatic evolution of computer programs and its applications. Morgan Kaufmann, San Francisco. ● Beasley, J. E. (1985). An exact two-dimensional non-guillotine cutting tree search procedure. Oper. Res., 33(1):49–64. ● Bengtsson, B. E. (1982). Packing rectangular pieces - a heuristic approach. The Comput. J., 25(3):353–357. ● …. ● Revisión de 71 papers

Notas del editor

  1. Software http://www.astrokettle.com/pr23proc.html