Sei sulla pagina 1di 7

Evaluacin de Heursticas de Optimizacin Combinatoria en Clasificacin por Particiones

Alexia Pacheco(1) Alex Murillo(2) Eduardo Piza(3) Javier Trejos(3)


(1) Programa de Posgrado en Matemtica, Universidad de Costa Rica, Costa Rica (2) Universidad de Granada, Espaa (3) CIMPA, Universidad de Costa Rica, Costa Rica

Resumen
El propsito de este artculo es presentar los resultados de la evaluacin de heursticas de optimizacin combinatoria por particiones, especficamente, sobrecalentamiento simulado, bsqueda tab y algoritmos genticos, en comparacin con mtodos tradicionales como k-medias y clasificacin jerrquica de Ward. Se utilizaron tablas de datos generadas al azar de acuerdo con ciertos parmetros establecidos. Se generaron 16 tablas de datos con variables normalmente distribuidas, se repiti el experimento 100 veces para cada tabla y cada mtodo, y como parmetro de comparacin de los resultados se utiliz la inercia intra-clases (W). Los mejores resultados se obtuvieron para el sobrecalentamiento simulado y el algoritmo gentico.

Abstract
The aim of this paper is to present the results of the evaluation of combinatorial optimization heuristic applied to obtain partitions in clustering: simulated anneling, tabu search and a genetic algorithm, using data tables generated randomly according to some defined parameters. Those techniques were compared between them and with traditional methods (k-means and Wards agglomerative clustering). Sixteen tables were generated with normally distributed variables and for each one, the experiment was repeated 100 times for each method. The intra-classes inertia was used as criterion to compare the classifications obtained. Best results were obtained for simulated annealing and the genetic algorithm.

Palabras claves: sobrecalentamiento simulado, bsqueda tab, algoritmo gentico, nubes dinmicas, clasificacin jerrquica, simulacin. Keywords: simulated annealing, tabou search, genetic algorithms, k-means, hierarchical clustering, simulation. 1. Introduccin Varios mtodos tradicionales en Anlisis Multivariado de Datos encuentran ptimos locales de los criterios que optimizan. Tal es el caso en clasificacin por particiones, escalamiento multidimensional, regresin no lineal y conjuntos burdos. Recientemente, muchas heursticas de optimizacin han sido propuestas; su finalidad es encontrar ptimos globales en problemas de optimizacin discreta. Entre estas heursticas, estn el sobrecalentamiento simulado (SS) [8], la bsqueda tab (BT) [3] y los algoritmos genticos (AG) [4].

Muchos autores han tratado de encontrar mejores soluciones a los problemas de Anlisis Multivariado de Datos utilizando estas heursticas de optimizacin. En la Universidad de Costa Rica el equipo PIMAD del Centro de Investigacin en Matemtica Pura y Aplicada (CIMPA) ha abordado distintos problemas: clasificacin numrica, clasificacin binaria, clasificacin bimodal, escalamiento multidimensional mtrico, escalamiento unidimensional, regresin no lineal, seleccin de variables, y conjuntos burdos. Se han obtenido resultados aplicando SS, BT y AG sensiblemente mejores a los obtenidos con los mtodos tradicionales, en tablas de datos ya conocidas y probadas en diferentes literaturas, como son: i) la tabla de Datos escolares [15] (9 objetos y 5 variables), ii) los Peces de Amiard [1] (23 de objetos, 16 variables), iii) la Sociomatriz de Thomas [1] (24 objetos, 24 variables), iv) los Iris de Fisher [2] (150 objetos, 4 variables). En el presente trabajo se hace una evaluacin comparativa entre cinco mtodos de clasificacin automtica por particiones, en el caso de datos numricos, utilizando tcnicas de simulacin tipo Monte Carlo. En la seccin 2 se recuerda el problema de la clasificacin numrica, con el criterio de inercia o varianza intraclases a minimizar. La seccin 3 explica brevemente los mtodos que se emplearn en la comparacin. La seccin 4 indica los objetivos del experimento y la seccin 5 explica cmo se procedi a la generacin de las tablas de datos y en ella se presenta un resumen de los resultados obtenidos. Finalmente, la seccin 6 contiene las conclusiones del trabajo. 2. Clasificacin Numrica El objetivo de la clasificacin automtica (conocida como clustering en ingls) es encontrar grupos homogneos de objetos, de tal forma que objetos similares pertenezcan a la misma clase, y que sea posible distinguir entre objetos que pertenecen a clases diferentes. En el caso numrico, se tiene el conjunto de objetos = {x1,x2,,xn} tal que xi Rp , para todo ndice i, esto es, los objetos son descritos por p variables numricas o cuantitativas. El criterio ms ampliamente usado es la minimizacin de la varianza o inercia intraclases:
W ( P) =
1 n

|| x
l =1 x i C l

g l || ,
2

donde K es el nmero (fijado de antemano) de clases, P = (C1,C2,,Ck) es la particin que se busca, y gk es el centro de gravedad o vector promedio de Ck. Minimizar W(P) es equivalente a maximizar la varianza o inercia interclases:
B( P ) =
l =1 k

| Cl | 2 || g l g || , n

donde g es el centro de gravedad total y |Ck| es la cardinalidad de la clase Ck , ya que la suma W(P)+B(P) es una constante (la inercia total). Debe observarse que este criterio satisface la propiedad de monotonicidad:

min{W(P) : P P*k+1} min{W(P) : P P*k},


donde P*k es el conjunto de todas las particiones de en exactamente k clases no vacas. Esto significa que no tiene sentido comparar particiones con diferente nmero de clases, y por ello el nmero de clases es fijado de antemano. 3. Los Mtodos a Evaluar K-medias es el mtodo de clasificacin automtica ms conocido en la literatura, el cual iterativamente va mejorando una particin dada, mediante el clculo de los centros de gravedad de las clases y la asignacin de los objetos a la clase cuyo centro es ms cercano; se repite el procedimiento hasta obtener estabilidad en la particin. Este es un caso tpico de bsqueda local y es bien sabido que la solucin obtenida depende de la particin dada inicialmente. La clasificacin jerrquica aglomerativa construye rboles de clasificacin o dendrogramas, de acuerdo con un criterio de agregacin. El criterio de Ward se aplica generalmente a datos numricos y minimiza el incremento de la inercia. Tiene la propiedad de no producir inversiones. Para particionamiento, se corta el rbol jerrquico en el nmero de clases deseado para la comparacin. La aplicacin de heursticas modernas de optimizacin combinatoria como es el caso de SS, BT y AG- est basada en el uso de transferencias de objetos de una clase a otra. En el caso del sobrecalentamiento simulado (SS) [5,6,8,12] se usa la regla de Metropolis para decidir si una transferencias de un objeto a una clase (ambos escogidos al azar) se efecta. En bsqueda tab [3,9,10] se construye una serie de particiones (el vecindario de una particin dada) por la transferencia de un nico objeto a la vez, y se escoge la mejor particin segn las reglas de esta tcnica. Finalmente, se aplica un algoritmo gentico [4,12,16] con una representacin cromosmica de n alelos en un alfabeto de K letras que representa a una particin, y se usan los operadores de seleccin proporcional a B(P), mutaciones (que corresponden a transferencias), y un cruzamiento especial que hemos llamado cruzamiento forzado. En todos los tres casos anteriores, el uso de heursticas mostr un comportamiento claramente superior al de las kmedias o cualquier otro mtodo conocido de particionamiento al aplicarlo a tablas de datos ya conocidas en la literatura.

Con el fin de evaluar el comportamiento de tales heursticas y de compararlas con algoritmos tradicionales, se dise un experimento que se a continuacin. 4. Objetivo del Experimento El objetivo del experimento es comparar los siguientes mtodos de clasificacin automtica: Sobrecalentamiento simulado (SS) Bsqueda Tab (BT) Algoritmo gentico (AG) Nubes dinmicas o k-medias (KM). Clasificacin jerrquica (agregacin de Ward) (WARD)

Se estableci como parmetro de comparacin la mnima inercia intra-clases W(P) y el porcentaje de veces que se alcanza ese valor, despus de realizar 100 rplicas de la aplicacin del mtodo a cada una de las tablas de datos. 5. Tablas de Datos Simulados Se generaron tablas con generadores de nmeros semi-aleatorios siguiendo la distribucin normal multivariada, considerando 4 factores y dos niveles en cada uno de ellos. Los factores son: El nmero n de individuos; se tom n = 105 y n = 525. El nmero K de clases; se tom K = 3 y K= 7. La cardinalidad de las clases; en el primer nivel se tom todas las clases con una misma cardinalidad, mientras que en el segundo nivel se tom una clase mayor que el resto (con aproximadamente el 50% de todos los objetos, y las clases restantes se distribuyen equitativamente los dems objetos). La varianza de las clases; en el primer nivel se tom todas las clases con varianza igual a uno, y en el segundo nivel una clase con el triple de la varianza que el resto del clases.

En todos lo casos las tablas tienen p = 6 variables, normalmente distribuidas. Los vectores de medias fueron generados al azar en [0,1] 6. Por lo tanto, se tiene 16 casos, y para cada uno se generaron 100 particiones iniciales al azar antes de aplicar los mtodos de particionamiento. En este experimento se puede medir el porcentaje de mala clasificacin, por la forma en que se construyeron las tablas de datos.

En SS se usaron los siguientes parmetros: tasa inicial de aceptacin de particiones que empeoran el criterio 0 = 95%, tasa de decrecimiento geomtrico de la temperatura = 0 .9, longitud de las cadenas de Markov Lt=100n(K-1), nmero de mximo de iteraciones tmax=150, lmite para detener las cadenas de Markov =10n(K-1) y m=4 como valor mximo permitido de iteraciones que repiten el mismo valor final. La BT emple los siguientes valores |T|=7 como longitud de la lista tab y un mximo de iteraciones de tmax=nK |T|. El AG se us con los siguientes parmetros: tamao de poblacin M = 40, probabilidad de cruzamiento pc= 0.25 y de mutacin pm=0.001, nmero mximo de iteraciones tmax= MKlog(n) y frecuencia para aplicar nubes dinmicas = 10. La particin inicial generada al azar que utilizan todos los otros mtodos que lo requieran se toma como el primer miembro de la poblacin; los restantes 39 miembros se generan al azar. La tabla 1 muestra un resumen de los resultados de las 100 corridas para cada mtodo. Con base en los resultados presentados en la tabla 1 se ve que el mtodo de Ward tiende a obtener menor calidad que los mtodos de particionamiento cuando las desviaciones estndar son diferentes; de lo contrario, sus soluciones son comparables. Cuando las cardinalidades de las clases son iguales, los mtodos de particionamiento obtienen los mismos ptimos; sin embargo, el SS es claramente superior, con una tasa de atraccin del mejor valor de W del 100%. Cuando la cardinalidad de las clases es diferente y se buscan muchas clases, el SS y la BT tienen grandes dificultades, con resultados ms pobres que para kmedias. En este caso, el AG es claramente superior a los otros mtodos, an si no siempre encuentra el ptimo. Tanto por la tasa de atraccin como por el valor del criterio, el AG es mejor que los restantes mtodos en este experimento. Debe hacerse notar que, a pesar de no estar reportados los tiempos de computacin, el mtodo de k-medias es mucho ms rpido que los dems, y que el ms lento es el BT. En promedio este ltimo tard unos 16 minutos por corrida, el AG 2 minutos, el SS unos 30 segundos, y el k-medias muy pocos segundos.

SS

BT %

AG

kM

Ward %

n
105 105 525 525 105 105 525 525

% % W W Cardinalidades iguales Varianzas iguales 5.422 5.146 5.993 5.339 99 74 100 82 5.422 5.146 5.993 5.339 100 82 100 88 100 69 82 94

3 7 3 7

5.422 5.146 5.993 5.339

100 100 100 100

5.422 5.146 5.993 5.339 13.15 9.895 15.81 8.261

91 19 98 45 13 1 2 53

5.42 5.15 5.99 5.34 13.85 10.17 16.41 9.37

Varianzas diferentes
3 13.15 7 9.895 3 15.809 7 8.261 100 13.15 100 9.895 100 15.809 100 8.261 99 13.15 51 9.895 51 15.809 100 8.261

Cardinalidades distintas Varianzas iguales


105 105 525 525 105 105 525 525 3 7 3 7 5.007 6.991 5.672 8.105 100 62 8 100 5.007 6.991 5.672 8.105 100 1 100 1 5.007 5.545 5.672 5.648 100 35 100 22 5.007 5.545 5.672 5.648 91 3 96 2 95 6 59 2 5.01 5.55 5.67 5.66 11.86 7.69 14.2 8

Varianzas diferentes
3 11.734 7 8.654 3 13.819 7 8.497 100 11.734 100 8.654 3 13.819 10 8.518 100 11.734 40 7.625 100 13.819 1 7.456 100 11.734 37 7.625 100 13.819 21 7.463

Tabla 1: Resultados de aplicar sobrecalentamiento simulado (SS), bsqueda tab (BT), algoritmo gentico (AG), k-medias (kM) y clasificacin jerrquica de Ward en las 16 tablas de datos; se reporta el mejor valor de W y el porcentaje de veces que ese factor fue encontrado en 100 corridas.

6. Conclusiones Segn se ha podido apreciar con este experimento, las heursticas de optimizacin combinatoria permiten mejorar los resultados de los mtodos tradicionales de clasificacin automtica, en el caso de datos numricos, sobre todo para el algoritmo gentico y el sobrecalentamiento simulado. Debe notarse que las heursticas necesitan de un buen generador de nmeros aleatorios, por lo cual el usuario debe ser cuidadoso con la escogencia del generador. Es comn que los generadores implementados en los compiladores tengan problemas [13] (es decir, que no pasen los tests de aleatoriedad), lo mismo que muchos paquetes con libreras de rutinas. Nosotros hemos empleado el mtodo sustractivo de D. Knuth [7] y empleando la tabla de nmeros aleatorios de la Rand Corportation [14].

Cabe destacar que para el experimento se gener una plataforma de software en Delphi 6, lo que facilit la aplicacin del mismo. Esta plataforma puede ser empleada para comparar mejoras que se le hagan a las heursticas aplicadas o incluir nuevas heursticas. Referencias [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] Cailliez, F.; Pages, J.P. (1976) Introduction l'Analyse des Donnes. SMASH, Pars. Everitt,B.S.(1993) Cluster Analysis. 3a edicin. Edward Arnold, Londres. Glover, F. et al. (1993) Tabu search: an introduction'', Annals of Operations Research, 41(1-4): 1-28. Goldberg, D. E.(1989) Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley, Reading-Mass. Kirkpatrick, S.; Gelatt, D.; Vecchi, M.P. (1983) Optimization by simulated annealing'', Science 220: 671-680. Klein, R. W. ; Dubes, R. C. (1990) Experiments in projection and clustering by simulated annealing'', Pattern Recognition 22: 213-220. Knuth, D.E. (1981) Seminumerical Algorithms. Segunda edicin, volumen 2 del libro The Art of Computer Programming. Addison-Wesley, Reading, Mass. Laarhoven, P.; Aarts, E. (1988) Simulated Annealing: Theory and Applications. Kluwer Academic Publishers, Dordrecht. Murillo, A.; Trejos, J. (1996) ''Classification tabou base en transferts'', S. Joly & G. Le Calv (Eds.), IV Journes de la Socit Francophone de Classification, Vannes: 26.1-26.4. Murillo, A. (2000) Aplicacin de la bsqueda tab en la clasificacin por particiones'', Investigacin Operacional 21(3): 183-194. Piza, E. (1987) Clasificacin Automtica Jerrquica Aglomerativa'', Revista de Ciencias Econmicas 7(1). Piza, E.; Murillo, A.; Trejos, J. (1999) Nuevas tcnicas de particionamiento en clasificacin automtica'', Revista de Matematica: Teora y Aplicaciones 6(1): 51-66. Press, W.H.; Flannery, B.P.; Teulolsky, S.A.; Vetterling, W.T.(1990) Numerical Recipes. The Art of Scientific Computing. Cambridge University Press, New York. The Rand Corporation (1955) A Million Random Digits with 100,000 Normal Deviates.The Free Press, Glencoe. Schektman, Y.(1978), "Estadstica Descriptiva", I Parte, Memorias I Simposio Mtodos Matemticos Aplicados a las Ciencias, J. Badia, Y Schektman y J. Poltronieri (eds.), Universidad de Costa Rica, San Pedro: 967. Trejos, J. (1996) "Un algorithme gntique de partitionnement'', S. Joly & G. Le Calv (Eds.), IV Journes de la Socit Francophone de Classification, Vannes: 37.1-37.1.

[16]

Potrebbero piacerti anche