Está en la página 1de 7

CONTECSI 1

7, 8 Y 9 DE SEPTIEMBRE 2005
ConTECSI
INSTITUTO TECNOLGICO DE LEN

PRIMER CONGRESO NACIONAL DE TECNOLOGAS


COMPUTACIONALES Y SISTEMAS DE INFORMACIN
Len, Gto., 7, 8 y 9 de Septiembre del 2005

Anlisis de Algoritmos Basados en


Recocido Simulado
Laura Cruz Reyesa, Guadalupe Castilla Valdez b, Claudia Guadalupe Gmez Santillnc,
Vanesa Landero Najerad, Victor M. Alvarez Hernndeze, Pedro Torres Espinosaf
a
Instituto Tecnolgico de Ciudad Madero, 1o. de Mayo y Sor Juana I. de la Cruz S/N C.P.
89440, Tamaulipas, Mxico. Tel. 01 (833) 357 4820, lauracruzreyes@hotmail.com
b
Instituto Tecnolgico de Ciudad Madero, 1o. de Mayo y Sor Juana I. de la Cruz S/N C.P.
89440, Tamaulipas, Mxico. Tel. 01 (833) 357 4820, jgvaldez50@hotmail.com
c
Instituto Tecnolgico de Ciudad Madero, 1o. de Mayo y Sor Juana I. de la Cruz S/N C.P.
89440, Tamaulipas, Mxico. Tel. 01 (833) 357 4820, cggs71@hotmail.com
d
Instituto Tecnolgico de Ciudad Madero, 1o. de Mayo y Sor Juana I. de la Cruz S/N C.P.
89440, Tamaulipas, Mxico. Tel. 01 (833) 357 4820, landerov@hotmail.com
e
Instituto Tecnolgico de Ciudad Madero, 1o. de Mayo y Sor Juana I. de la Cruz S/N C.P.
89440, Tamaulipas, Mxico. Tel. 01 (833) 357 4820, mantorvicuel@hotmail.com
f
Instituto Tecnolgico de Ciudad Madero, 1o. de Mayo y Sor Juana I. de la Cruz S/N C.P.
89440, Tamaulipas, Mxico. Tel. 01 (833) 357 4820, pedro_t_e@hotmail.com

Resumen Bin Packing es un problema clsico de la computacin que busca el acomodo ptimo de
objetos en contenedores y aparece frecuentemente en tareas de distribucin y produccin de diferentes
sectores incluyendo Internet. Este problema pertenece a la clase NP-duro, y por su complejidad e
importancia se requiere contar con algoritmos heursticos que obtengan soluciones aproximadas de
buena calidad. En este trabajo se incorporan estrategias heursticas para incrementar el desempeo del
algoritmo bsico de Recocido Simulado: FFD(First Fit Decreasing), SM (Siempre el Mejor) y XI (X-
Intercambios)

Abstract Bin Packing is a classic problem of the computation that search the ideal arrangement of
objects in containers and appears frequently in tasks of distribution and production of different sectors
including Internet. This problem belongs to the class NP-hard, and by its complexity and importance it
is needed to rely on heuristic algorithms that they should obtain approximate solutions of good quality.
In this work heuristic strategies join to increase the performance of the basic algorithm of Simulated
Restew: FFD (First Fit Decreasing), SM (Always the Best) and the XE (X-Exchanges)

Palabras clave algoritmos heursticos, Bin Packing, problemas reales de optimizacin combinatoria,
Recocido Simulado.

E I. INTRODUCCIN
CONTECSI 2
7, 8 Y 9 DE SEPTIEMBRE 2005
INSTITUTO TECNOLGICO DE LEN

xiste un gran nmero de problemas reales de optimizacin combinatoria que por su complejidad
requieren algoritmos que obtienen resultados aproximados en un tiempo de procesamiento
razonable, llamados algoritmos heursticos. Entre ellos podemos citar: el problema de distribucin
de bases de datos distribuidas (Bin Packing), la asignacin de tareas a mquinas dentro de lneas de
produccin grandes, la programacin de horarios de universidades y el problema de la distribucin
de objetos en contenedores.

En [1] se realiz un anlisis de la herramienta computacional LINDO API 3.0 para Windows,
aplicada a la solucin del problema de distribucin de objetos en contenedores. Para el experimento,
se tomaron 150 casos estndar de dos libreras reconocidas por la comunidad de investigacin de
operaciones [2, 3], y se generaron de manera aleatoria 196 casos. Los recursos disponibles de
memoria (3.87 GB) y tiempo (30 minutos) no permitieron la solucin del 74% de los casos estndar
y 59% de los aleatorios. La memoria no fue suficiente para el 13% de los casos, y el tiempo para el
64%.

Por lo anterior, sera de gran utilidad contar con algoritmos heursticos que den soluciones
aproximadas, sin consumir altos recursos de cmputo. Un ejemplo de un algoritmo heurstico de
optimizacin es el Recocido Simulado que da soluciones diferentes en cada corrida, por lo que
pertenece a los algoritmos no deterministas y se basa en el proceso industrial en el que un material
se calienta por encima de su punto de fusin y luego se enfra gradualmente para eliminar defectos
en su estructura cristalina, produciendo un entramado de tomos ms estable y regular.

II. PROBLEMA DE APLICACIN: BIN PACKING


Bin-Packing es un problema clsico de la computacin que busca el acomodo ptimo de objetos
en contenedores y aparece frecuentemente en tareas de distribucin y produccin de diferentes
sectores incluyendo Internet. En [4] se describe el problema de distribucin de objetos en
contenedores (Bin Packing). Este es un problema clsico de optimizacin combinatoria NP-duro, en
el cual hay una secuencia de n objetos L = {a1, a2, ..., an}, cada objeto con un tamao dado 0 < s(ai)
c, y un nmero ilimitado de contenedores, cada uno de capacidad c. El objetivo es determinar el
menor nmero de contenedores m en los cuales todos los objetos pueden ser distribuidos.

III. DESCRIPCIN DEL MTODO RECOCIDO SIMULADO


Una tcnica de optimizacin similar a los algoritmos evolutivos se conoce como Recocido
Simulado. La idea toma prestado su nombre del proceso industrial en el que un material se calienta
por encima de su punto de fusin y luego se enfra gradualmente para eliminar defectos en su
estructura cristalina, produciendo un entramado de tomos ms estable y regular [5]. En el recocido
simulado, como en los algoritmos genticos, existe una funcin de aptitud que define un paisaje
adaptativo; sin embargo, en lugar de una poblacin de candidatas como en los Algoritmos
Genticos (AGs) [6], slo existe una solucin candidata.

El recocido simulado tambin aade el concepto de temperatura'', una cantidad numrica global
que disminuye gradualmente en el tiempo. En cada paso del algoritmo, la solucin muta (lo que es
equivalente a moverse hacia un punto adyacente en el paisaje adaptativo). Luego, la aptitud de la
nueva solucin se compara con la aptitud de la solucin anterior; si es mayor, se conserva la nueva
solucin.

En caso contrario, el algoritmo toma la decisin de conservarla o descartarla en base a la


CONTECSI 3
7, 8 Y 9 DE SEPTIEMBRE 2005
INSTITUTO TECNOLGICO DE LEN

temperatura. Si la temperatura es alta, como lo es al principio, puede conservarse incluso cambios


que causan decrementos significativos en la aptitud, y utilizarse como base para la siguiente ronda
del algoritmo, pero al ir disminuyendo la temperatura, el algoritmo se va haciendo ms y ms
propenso a aceptar slo los cambios que aumentan la aptitud. Finalmente, la temperatura alcaza el
cero y el sistema se congela'; cualquiera que sea la configuracin que exista en ese punto se
convierte en la solucin. El recocido simulado tiene a menudo aplicaciones en la ingeniera del
diseo, como determinar la disposicin fsica de los componentes en un chip informtico.

A. Temperatura inical (To)


Podramos decir que, en general, una de las caractersticas que debe cumplir toda heurstica de
bsqueda es la de no ser dependiente de la solucin inicial. Esto lo consigue el recocido simulado
partiendo de una temperatura inicial alta, con el cual inicialmente ir errticamente recorriendo
soluciones lejanas de la ptima.

B. Velocidad de enfriamiento
Existe dos parmetros que definen el tiempo de ejecucin del algoritmo: el nmero de iteraciones
en una temperatura T, denotado por L(T), y la velocidad de de enfriamiento .

Al definir el algoritmo hay que lograr un equilibrio entre los parmetros y L, ya que si se realiza
una bsqueda durante pocas iteraciones para cada temperatura, son recomendables rpidos
decrementos de temperatura y viceversa[5].

C. Temperatura Final, Tf
En teora la temperatura correspondiente al sistema fro debera ser T = 0. Sin embargo, mucho
antes de llegar a ese valor es prcticamente nula la probabilidad e-/T de que se acepte un
movimiento hacia una solucin peor. Por lo tanto, normalmente se puede finalizar con valores Tf >
0, sin prdida de calidad en la solucin.

La optimizacin de una funcin real es un problema recurrente en teora de estructuras. Si la


funcin es la energa potencial y la optimizacin se entiende como la bsqueda de su valor mnimo,
se trata del anlisis convencional de estructuras. Si la funcin es representativa del costo, su
optimizacin es un mtodo de diseo de la estructura, de hecho, conducir al mejor diseo
respecto al costo considerado.

Para el problema matemtico general no existe un mtodo de resolucin, salvo para ciertos casos
particulares en los que la funcin y sus variables satisfacen condiciones especficas (continuidad,
diferenciabilidad, etc.). En numerosos casos de ndole prctica, no se dan tales condiciones y, en
consecuencia, la solucin al problema se aproxima, existiendo para ello una variedad de mtodos
heursticos.

El Recocido Simulado es un algoritmo de aproximacin a la solucin ptima, fundado en una


analoga del comportamiento de sistemas termodinmicos simples; y ha sido ampliamente utilizado
en ciertos problemas de ingeniera. A continuacin se muestra el algoritmo.
CONTECSI 4
7, 8 Y 9 DE SEPTIEMBRE 2005
INSTITUTO TECNOLGICO DE LEN

Input (To, , L,Tf)


T = To
Sact = genera_sol_incial
While(T >= Tf) do
Begin
For(cont = 1 to L) do
Begin
Scand= selection_sol_N(Sact)
= costo(Scand)-costo(Sact)
if U(0,1) < e-/T or < 0 then
Sact=Scand
end
T=(T)
end

IV. LAS ESTRATEGIAS PROPUESTAS


En este trabajo se incorporan estrategias heursticas para incrementar el desempeo del algoritmo
bsico de Recocido Simulado en la solucin de Bin-Packing. Las estrategias incorporadas son:
a) FFD(First Fit Decreasing). Obtiene una solucin inicial acomodando los objetos de
acuerdo al orden de sus pesos. Un nuevo contenedor es llenado con objetos no considerando: el de
mayor peso y algunos de menor peso, sin saturar la capacidad del contenedor.
b) SM (Siempre el Mejor). Mantiene un historial de la mejor solucin, durante el proceso de
generacin de soluciones.
c) XI (X-Intercambios): Se implementan vecindades que incluyen de 2 a 6 intercambios
aleatorios. La seleccin del nmero de intercambios es dinmica, es decir, se define cada vez que se
genera una solucin vecina. Un nmero de intercambios menor tiene ms probabilidad de
ocurrencia que uno mayor.

La denominacin de los algoritmos implementados de acuerdo con las estrategias que incorporan
al algoritmo de Recocido Simulado (RS) es: FFD-RS, FFD-SM-RS y FFD-SM-XI-RS.

V. EXPERIMENTACIN

A. Descripcin de los casos de Bin Packing


Para hacer las pruebas, se tomaron 1369 casos estndar reconocidos por la comunidad de
investigacin de operaciones [8 y 9].

En [8] hay dos clases de casos de Bin Packing, cada una con 80 casos. La primera clase consiste
en los objetos de tamao uniformemente distribuido de 20 hasta 100 para ser distribuidos en
contenedores de tamao 150.

La segunda clase consiste en tripletas de objetos de tamao de (25, 50) para ser distribuidos en
contenedores de tamao 100. Para los casos en tripletas, los casos son construidos con un
conocimiento global ptimo de la tercera parte del nmero total de contenedores. Por ejemplo,
garantizamos una solucin ptima que tiene tres objetos por contenedores.

En [9] se cuenta con dos conjuntos de casos. El primer conjunto de datos (720 casos), es
construido de forma similar a la usada en, para las pruebas que produjeron en MTP. El segundo
conjunto de datos (480 casos) contiene parmetro que no son comprobados por el primero, mientras
el tercer conjunto contiene 9 casos difciles.
CONTECSI 5
7, 8 Y 9 DE SEPTIEMBRE 2005
INSTITUTO TECNOLGICO DE LEN

B. Metodologa de evaluacin
Se hicieron pruebas previas para obtener los parmetros ms adecuados para Recocido Simulado
con Bin Packing, los cuales se obtuvieron los siguientes: To = 40, Tf = 15 y L = 10.

Para evaluar los algoritmos se tomaron en cuenta dos criterios: el primero es el radio, que
representa el cociente entre el la solucin obtenida y la mejor solucin reportada, y el segundo
criterio es el tiempo de ejecucin. Como se trata de minimizar, un menor radio es mejor que uno
mayor.

solucin obtenida (1)


radio =
solucin mejor reportada

Con finalidad de clasificar los casos de prueba se calcul el indicador de complejidad de ndice
de factores, presentado en [10]. El ndice de factores se obtuvo con la siguiente frmula:

n
factor (c, si ) (3)
i =1
f =
n

Donde:
1 si (c mod si ) = 0
factor (c, si ) = (2)
0 en caso contrario

El ndice f expresa la proporcin de objetos cuyos tamaos son factores de la capacidad del
contenedor; en donde se entiende que un objeto i es un factor cuando la capacidad del contenedor c
es mltiplo de su correspondiente tamao de objeto si. Utilizando el ndice de factores de los casos
de prueba se formaron cuatro categoras como se puede apreciar en la siguiente tabla.

C. Anlisis de resultados

Los resultados en nmero de casos ganados se muestran la siguiente tabla.

TABLA I
CATEGORA DE CASOS DE BIN PACKING.

Rango del Categora Nmero de


ndice de factores casos
0.1 f <1 1 170
0.01 f <0.1 2 1021
0.001 f <0.01 3 36
0 f <0.001 4 142
CONTECSI 6
7, 8 Y 9 DE SEPTIEMBRE 2005
INSTITUTO TECNOLGICO DE LEN

En la siguiente grafica se muestra los resultados de obtenidos para los algoritmos AU


(Aceptacin por Umbral), RS (Recocido Simulado) y los propuestos.

TABLA II
NMERO DE CASOS GANADOS POR LOS ALGORITMOS.

Categora AU RS FFD-RS FFD-SM-RS FFD-SM-XI-RS


1 15 1 44 63 120
2 102 150 174 320 682
3 2 9 1 7 21
4 15 24 20 43 88
Promedio 33.5 46 59.75 108.25 227.75

Los resultados
del

Figura 1. Nmero de casos Ganados por los algoritmos.

desempeo de los algoritmos en funcin del radio promedio para cada categora se muestran en la
siguiente tabla.

TABLA III
DESEMPEO DE LOS ALGORITMOS EN FUNCIN DEL RADIO PROMEDIO.

Categor FFD-SM- FFD-SM-XI-


a AU RS FFD-RS RS RS
1.3094
1 3 1.17951 1.0863 1.0787 1.0797
2 1.3351 1.1748 1.0784 1.0724 1.0732
3 1.3207 1.1457 1.14592 1.1391 1.1356
4 1.2747 1.1308 1.1165 1.0937 1.096
Promedio 1.31 1.1577 1.1067 1.0959 1.0961
En la siguiente grafica se muestra el desempeo de los algoritmos en funcin del radio promedio.
CONTECSI 7
7, 8 Y 9 DE SEPTIEMBRE 2005
INSTITUTO TECNOLGICO DE LEN

Figura 1. Desempeo de los algoritmos en funcin del radio promedio.

VI. CONCLUSIONES

Se muestra que los algoritmos que incorporan las estrategias propuestas tienen mejor desempeo
que Recocido Simulado y Aceptacin por Umbral; y de ellos, el algoritmo FFD-SM-XI-RS tiene el
mejor desempeo. Aproximadamente cuatro veces ms de casos ganados que Recocido Simulado.

Finalmente, considerando el radio promedio, el algoritmo FFD-SM-XI-RS increment el


desempeo del algoritmo de Recocido Simulado en un 5% y en un 16 % el del algoritmo de
Aceptacin por Umbral.

REFERENCIAS
[1] Garca, N.: Anlisis de las Propiedades del Problema de la Distribucin de Bases de Datos y su Influecia en el Desempeo de
Algoritmos Heursticos, 2004.
[2] Beasley, J. E.: OR-Library. Brunel University. http://www.ms.ic.ac.uk/info.html. (2003)
[3] Friedrich, K.: Bin Packing. Universitt Jena. http://www.bwl.tudarmstadt.de/bwl3/forsch/projekte/binpp.html,
2002.
[4] Cruz Reyes, Laura, Clasificacin de algoritmos heursticos para la solucin de problemas de bin
packing, 2004.
[5] Daz, Adenso, Glover, Fred, Ghazini, Hasan M., y et. al., Optimizacin heurstica y redes neuronales, 1996.
[6] Adam Marczyk Algoritmos genticos y computacin evolutiva, 2004.
[7] Vzquez, Mariano Esp Un nuevo algoritmo para la optimacin de estructuras, Universidad Politcnica de Madrid Escuela
Tcnica Superior de Arquitectura Departamento de Estructuras de Edificacin, Madrid, 23 de enero de 1995.
[8] Falkenauer, E., "A Hybrid Grouping Genetic Algorithm for Bin Packing", http://
people.brunel.ac.uk/~mastjjb/jeb/orlib/binpackinfo.html, 1994.
[9] Scholl, Armin y Klein, Robert, Bin Packing, http://www.wiwi.uni-jena.de/Entscheidung/binpp/index.htm, 2005.
[10] Landero, Vanesa: Anlisis de las Regiones de Dominacin de Algoritmos Heursticos Aplicados al Diseo de Base de
Datos Distribuidas, 2004.

También podría gustarte