Indicators

• Similars in SciELO

Print version ISSN 0012-7353

Dyna rev.fac.nac.minas vol.78 no.165 Medellín Feb./Mar. 2011

VALIDACIÓN DE UN ALGORITMO HÍBRIDO DEL PSO CON EL MÉTODO SIMPLEX Y DE TOPOLOGÍA DE EVOLUCIÓN PARAMÉTRICA

VALIDATION OF A PSO-SIMPLEX HYBRID ALGORITHM OF PARAMETRIC EVOLUTION TOPOLOGY

RODRIGO CORREA
Escuela de Ingenierías Eléctrica, Electrónica y de Telecomunicaciones,Universidad Industrial de Santander, crcorrea@uis.edu.co

OSCAR BEGAMBRE
Escuela de Ingeniería Civil, Universidad Industrial de Santander, ojbegam@uis.edu.co

JULIO C. CARRILLO E.
Escuela de Matemáticas, Universidad Industrial de Santander, jccarril@uis.edu.co

Recibido para revisar enero 17 de 2009, aceptado marzo 2 de 2010, versión final abril 12 de 2010

PALABRAS CLAVE: Optimización sin restricciones, métodos heurísticos, métodos estocásticos.

ABSTRACT: This paper describes some of the most important aspects related to the numerical experimentation of a hybrid of the algorithm PSO (Particle Swarm Optimization) with the traditional modified simplex method of Nelder-Mead. The hybridization of these two techniques of optimization without restrictions was carried out with a topology that allows to optimize in each iteration the parameters of the algorithm PSO using the modified simplex method. Numerical experiments with this hybrid algorithm were carried out and applied to several of typical test functions to establish its effectiveness. The results obtained were compared with the simplex and the quadratic methods, which turned out to be very satisfactory since the point of view of their repeatability and reproducibility, although the time of computation was considerably longer. It stands out itself, nevertheless, that the precision of the hybrid algorithm was a hundred percent in all the trials for the test functions selected.

KEYWORDS: Optimization without restriction, heuristic methods, stochastic methods.

1. INTRODUCCIÓN

Tabla 1. Comparación entre los métodos de optimización heurísticos y los clásicos
Table 1. Comparison among heuristic and classic optimization methods

2. FUNDAMENTOS

El método simplex es uno de los métodos clásicos más comunes para resolver problemas de optimización sin restricciones (ver [4] para una descripción detallada). A continuación se describen algunos de los aspectos más relevantes de la versión convencional del algoritmo de enjambre de partículas PSO y de su híbrido con el método simplex, el algoritmo PSOSX.

2.1. El algoritmo PSO convencional
Esta técnica metaheurística evolutiva, inspirada en el comportamiento social de las bandadas de pájaros, fue propuesta por primera vez por Kennedy y Eberhart en 1995 (ver [5]) y hace parte de una categoría más amplia de métodos, conocidos como inteligencia de enjambre (swarm intelligence), utilizados para resolver problemas de programación no lineal. El algoritmo parte de la hipótesis de que cada

partícula (o punto dentro del dominio de la función objetivo que se propone como posible solución) se lanza a volar en el espacio de búsqueda guiadas por la partícula que mejor solución ha encontrado hasta el momento y que cumple con la función de líder de la bandada. Las partículas evolucionan teniendo en cuenta la mejor solución encontrada en su recorrido y la del líder. A continuación se presenta la fundamentación del algoritmo desde el punto de vista de la mecánica Newtoniana, que no fue precisamente su interpretación inicial. Si la posición en el espacio de una partícula, o elemento de un conjunto o enjambre, de masa se expresa mediante el vector de dimensiones, entonces su velocidad queda definida como

.

De la segunda ley de Newton se llega a que la aceleración de la partícula y la fuerza que actúa sobre ella están relacionadas de la forma

.

Si se evalúan estas dos primeras derivadas mediante diferencias finitas y se despejan y , siendo t un entero positivo que identifica la iteración, se tiene que

,

.

Considerando la masa y el paso de tiempo unitarios se llega a las expresiones,

,

.

En este caso la fuerza se puede representar como una fuerza de atracción generada por resortes lineales, de la forma

,

en donde y representan la mejor posición encontrada por la partícula y la mejor posición global encontrada por todas las otras partículas, respectivamente. En su interpretación mecánica, los dos términos en (7) representan la dirección y longitud de dos resortes, siendo las constantes y las constantes de Hooke (ver [6]). Resumiendo, las dos expresiones que condensan el algoritmo PSO original quedan como

,

.

Si bien estas dos ecuaciones vectoriales describen el comportamiento de una partícula en forma determinística, la notación matricial involucrará todo el enjambre, por lo cual se asume que existen partículas en un espacio de dimensión . De esta manera, cada una de las variables quedará almacenada en matrices de orden . Ahora bien, dado que se trata de modelar un sistema natural, debe existir un cierto grado de aleatoriedad que se manifieste en el algoritmo. El proceso iterativo definido por el anterior sistema de ecuaciones matriciales establece una base de la forma como cada partícula utiliza el conocimiento cognitivo y el social para explorar el espacio de solución, pero de una manera determinística. En otras palabras, una vez el enjambre se inicializa, las trayectorias y posiciones finales de todas las partículas quedan definidas por estas expresiones. Sin embargo, en procesos que tratan de imitar la impredecible naturaleza se adapta el comportamiento del enjambre a diferentes ambientes al implementar factores estocásticos en el algoritmo. Esto se logra al multiplicar las constantes de Hook en (7) por sendos coeficientes aleatorios y , que son escalares con una distribución uniforme en el intervalo , o bien, son vectores con sus componentes distribuidos uniformemente en el mismo intervalo.

Así mismo, con el propósito de incrementar la convergencia del enjambre se propone desde un inicio un factor de peso inercial , variable en el tiempo, como en ([5], [7]). Un valor típico para este factor es al inicio del proceso de optimización, y va decreciendo hasta al final del proceso. Igualmente reportan que los parámetros y mantienen un valor constante e igual a dos, argumentando condiciones de convergencia. Así, con la actualización de la matriz de velocidad, las partículas evolucionan de acuerdo con el siguiente conjunto de ecuaciones matriciales, quedando de esta manera el algoritmo PSO original de la forma

,

Los parámetros cognitivo y social controlan el flujo de información dentro del enjambre. Si entonces la partícula va a confiar más en los resultados de la búsqueda del enjambre que en los propios. En caso contrario, esto es cuando , la partícula va a tener más confianza en los resultados de su búsqueda que en los del resto del enjambre. Estos aspectos se ilustran en las Figuras 1 y 2, utilizando como ejemplo la función de Venter,

,

la cual alcanza el mínimo global en el punto de coordenadas . A manera de ejemplo, en la Figura 1 se muestra una secuencia de las iteraciones del algoritmo PSO cuando . Se observa que todas las partículas del enjambre convergen al mínimo global conforme crece el número de iteraciones. Caso contrario sucede cuando , observándose que al final existen partículas alejadas del enjambre debido a la confianza que tienen en su búsqueda, a pesar de lo cual el algoritmo converge al óptimo global.

Figura 1.
Comportamiento del enjambre cuando . El recuadro A corresponde a la primera iteración, B a la número 10, C a la 20, D a la 30, E a la 40 y F a la iteración final
Figure 1. Swarm’s behavior when . Graph A corresponds to the first iteration, B to number 10, C to 20, D to 30, E to 40 and F to the final iteration

Figura 2.
Gráfica de la función de Venter
Figure 2. Venter’s function graph

2.2. Algoritmo PSOSX de evolución paramétrica

3. EVALUACIÓN EXPERIMENTAL Y ANALISIS DE RESULTADOS

Uno de los objetivos de este artículo es mostrar el desempeño del algoritmo PSOSX frente al método de optimización cuadrático y el método simplex, dos de los métodos numéricos de optimización de uso más frecuente en ingeniería. Debido a los buenos resultados entregados por el método de optimización cuadrático, este se ha convertido casi en un estándar, por lo que se usará para medir los resultados y las características del nuevo algoritmo híbrido PSOSX. Además, se confrontarán estos resultados únicamente con los del método simplex (Nealder-Mead). Como criterios de evaluación de los algoritmos se tendrán en cuenta la precisión, la exactitud y el costo computacional.

Con el fin de explorar las capacidades del algoritmo PSOSX en diferentes tipos de problemas se evaluaron ecuaciones en tres dimensiones que a la fecha se destacan como pruebas de rigor difíciles para cualquier procedimiento de optimización. En cada caso el método se evaluó 200 veces y los resultados se compararon con los respuestas obtenidas por algoritmos de gran precisión como lo son: algoritmo cuadrático (ejecutado con la función de MATLABMR quadprog), algoritmo simplex (ejecutado con la función de MATLABMR fminsearch) y método quasi-Newton (ejecutado con la función de MATLABMR fminunc) [17]. Para las simulaciones se utilizó un computador DELLMR con procesador Intel Centrino DuoTM, 1GHz en memoria RAM y con sistema operativo WindowsMR XP.

Función Cuadrática: La primera prueba con la que se evaluó el algoritmo PSOSX fue en la búsqueda del mínimo global de una función cuadrática,

en donde , y son números reales dados y tales que . Para este tipo de función el método de optimización cuadrática ha mostrado gran robustez en la búsqueda del óptimo global, razón por la que su aplicación se ha convertido casi en regla para el diseño de sistemas de control predictivos. La principal desventaja de su uso en otras áreas es que no todos los procesos se rigen por una función cuadrática, debiéndose ajustar la función objetivo del problema a una función de este tipo. En la mayoría de los casos se debe segmentar el dominio de la función objetivo y encontrar varios ajustes para cada segmento del dominio de forma que se pueda realizar una aproximación más exacta. Para aplicar el método cuadrático es necesario reescribir (13) en la forma matricial

,

pudiendo tener restricciones de la forma , donde es la matriz Hessiana de la función a minimizar, es la matriz de restricciones y y son vectores. En las Tablas 2 y 3 se presentan un análisis estadístico elemental de los resultados obtenidos con el algoritmo PSOSX, y de solamente el método simplex y el método cuadrático.

Table 2. Statistic Analysis of quadratic function evaluation results for

Table 3. Statistic Analysis of quadratic function evaluation results for

Es posible observar que el método cuadrático ofrece una excelente precisión en sus resultados al lograr una desviación estándar igual a cero. Por su parte el algoritmo PSOSX muestra una precisión aceptable logrando una desviación estándar de 2,177E-09, mientras que el método simplex presenta una desviación estándar igual a 9,162E- 10. A pesar de mostrar excelentes resultados, la gran desventaja de usar el método cuadrático radica en la limitación que tiene al ser aplicado exclusivamente a funciones cuadráticas, lo que hace necesario que en cada problema se realice una aproximación de la función objetivo mediante una función que satisfaga (14).

Adicionalmente, el algoritmo PSOSX alcanza el de exactitud en todos los casos de búsqueda, mostrando su efectividad a la hora de hallar el óptimo global de una función cuadrática. A pesar del mayor tiempo de cálculo en la ejecución que necesitó el algoritmo PSOSX respecto a sus competidores, debido principalmente a que los métodos heurísticos necesitan evaluar un mayor número de veces la función objetivo; su uso en problemas con funciones complejas se resume a procedimientos de búsqueda sencillos, de gran robustez y con un de efectividad en todos los casos probados, como se mostrará también con otras funciones.

Primera función de prueba: Con esta función se evalúa la capacidad de búsqueda del algoritmo en problemas con superficies regulares donde la pendiente de la zona que aloja el óptimo global es muy pequeña y se hace difícil identificar con exactitud este punto. Esta función se define de la forma

,

Esta función alcanza su mínimo global en el punto de coordenadas . La Tabla 4 reúne el análisis estadístico de los resultados.

Tabla 4. Análisis estadístico de los resultados de la evaluación de la función Test 1 para
Table 4. Statistic Analysis of Test 1 function evaluation results for

Con esta función de prueba queda demostrada la exactitud y precisión de los métodos usados, sin embargo, se nota una diferencia importante en los tiempos de ejecución de los métodos simplex y quasi-Newton con respecto al algoritmo PSOSX. Se evaluó esta misma función en diferentes dominios de las variables independientes y se encontró que la exactitud de los métodos en este caso se mantiene intacta, puesto que la función carece de otros puntos críticos a largo de su recorrido. Esta información no se incluye.

Segunda función de prueba, la función de Rosenbrock: Esta función dibuja un valle en curva cuyo fondo desciende con un declive muy suave hacia el mínimo global que alcanza en el punto de coordenadas . La función de Rosenbrock se define como

.

Aquí comienzan a aparecer las fortalezas del algoritmo PSOSX. La más evidente de ellas, en este caso, es su robustez a la hora de tratar el problema en diferentes espacios de búsqueda garantizando el óptimo valor en las coordenadas exactas en todos los problemas, mientras que los otros métodos presentaron resultados deficientes en este aspecto. Por otra parte, el tiempo de ejecución continúa siendo el talón de Aquiles del algoritmo PSOSX. Las Tabla 5 muestra algunos de los resultados obtenidos en los experimentos.

Tabla 5. Análisis estadístico de los resultados de la evaluación de la función Rosenbrock para
Table 5. Statistic Analysis of Rosenbrock’s function evaluation results for

Se observa que los métodos numéricos necesitan que su espacio de búsqueda esté restringido a un perímetro muy cercano alrededor del óptimo para obtener resultados confiables. A continuación se mostrará que en funciones con relieve escabroso y numerosos mínimos locales se hace más evidente este problema, lo que permite que el PSOSX ofrezca resultados confiables a cambio del sacrificio en lo que a tiempos de ejecución se refiere.

Tercera función de prueba, la función de Venter: Con el objetivo de medir las capacidades de búsqueda del algoritmo PSOSX en problemas con múltiples máximos y mínimos, se propone esta función que posee aproximadamente 300 mínimos locales como se muestra en la Figura 2. El mínimo global 100 lo alcanza el punto de coordenadas . El mayor reto que enfrentaran los algoritmos en esta prueba será el de evitar caer prematuramente en un mínimo local. La Tabla 6 muestra los resultados estadísticos para un primer dominio.

Tabla 6. Análisis estadístico de los resultados de la evaluación de la función de Venter para
Table 6. Statistic Analysis of Venters function evaluation results for

Note que a pesar de lo reducida que se encuentra la zona de búsqueda los resultados de los métodos numéricos no ofrecen la completa exactitud que sí puede ofrecer el algoritmo híbrido PSOSX, no obstante se mantiene la ventaja que los primeros tienen sobre el segundo, en lo que a tiempos de ejecución se refiere.

Se observa que no sólo se ve comprometida la exactitud de los métodos numéricos sino también que la precisión de los algoritmos es bastante baja; por otra parte, el algoritmo híbrido PSOSX ofrece resultados confiables y un desempeño robusto, proporcionándole un valor agregado a cada segundo adicional que invierte en realizar la búsqueda.

Cuarta función de prueba, la función de Levy: Esta función posee 760 mínimos locales con pendientes abruptas que dificultan la identificación del óptimo global (ver la Figura 3). La función de Levy está definida como

,

en donde

,

,

y alcanza su mínimo global en el punto de coordenadas .

Figura 3.
Gráfica de la función de Levy
Figure 3. Levy’s function graph

Se observa un relieve quebrado que predomina en la gráfica de esta función, sin perder de vista la gran cantidad de puntos de inflexión que existe en su recorrido. Nótese las pendientes abruptas que dan forma a sus máximos y mínimos. Nuevamente por brevedad sólo se muestran en la Tabla 7 los resultados de una de las simulaciones realizadas.

Tabla 7. Análisis estadístico de los resultados de la evaluación de la función de Levy Nº5 para
Table 7. Statistic Analysis of Nº5 Levy’s function evaluation results for

A pesar de la dificultad que propone esta función, se aprecia la exactitud y precisión impuesta por el algoritmo híbrido PSOSX. En contraste, se observa el bajo rendimiento ofrecido por los métodos simplex y quasi-Newton. Aún si se reduce el espacio de búsqueda, los resultados del algoritmo híbrido PSOSX se encuentran lejos de ser logrados por los otros dos métodos.

4. CONCLUSIONES

Los resultados obtenidos muestran la exactitud, precisión y robustez que ofrece el algoritmo híbrido PSOSX, especialmente en problemas que por su complejidad son difíciles de resolver mediante los dos métodos numéricos convencionales utilizados. La herramienta computacional desarrollada fue capaz de encontrar el óptimo de las funciones de prueba y sus coordenadas con una efectividad del ; ese no fue el caso para el simplex y el quasi-Newton. Por otro lado, para todos los casos estudiados se hace evidente la poca competitividad que ofrece este algoritmo híbrido en lo que a tiempo de ejecución se refiere.

REFERENCIAS

[1] CHAN F., KUMAR M., Swarm Intelligence, I-TECH Education and Publishing, 2007.         [ Links ]
[2] DOWSLAND K. Heuristics Design and Fundamentals of the Simulated Annealing. Nottingham , U.K. , AEPIA, 2003.         [ Links ]
[3] MELÍAN, B., MORENO J.Metaheuristics: A Global View, Ed., Santa Cruz de Tenerife , 2003.         [ Links ]
[4] NEALDER, J., MEAD, R., A Simplex method for function minimization, Computer Journal 7, 308- 313,1965.         [ Links ]
[5] KENNEDY J., EBERHART, R. Particle Swarm Optimization. Proc. IEEE Int. Conf. Neural Networks, 39-43, 1995.         [ Links ]
[6] VENTER G., SOBIESKI, J., A parallel particle swarm optimization algorithm accelerated by asynchronous evaluations. 6th World congress of structural and multidisciplinary optimization, Rio de Janeiro , Brazil , 2005.         [ Links ]
[7] XU S., RAHMAT Y., Boundary conditions in particle swarm optimization revisited, IEEE Trans.Antennas Propagat., Vol. 55, no.3, 760-765, Mar., 2007.         [ Links ]
[8] NANBO J., Particle Swarm Optimization in Engineering Electromagnetics, (Doctoral Thesis), University of California , Los Angeles , 2008.         [ Links ]
[9] HUANG T., MOHAN A., A hybrid boundary condition for robust particle swarm optimization, IEEE Antennas Wirless Propagat. Lett, Vol. 5, pp 112-117, 2005.         [ Links ]
[10] MIKKI S., KISHK A., Hybrid periodic boundary condition for particle swarm optimization, IEEE Trans. Antennas Propagat., Vol. 55, no. 11,3252-3256, Nov., 2007.         [ Links ]
[11] CLERC M. Particle Swarm Optimization, Prentice Hall, London , U.K. , 2006.         [ Links ]
[12] BEGAMBRE O., Algoritmo Hibrido para Avaliação da Integridade Estrutural: Uma Abordagem Heurística (Tesis doctoral). Escuela de Ingeniería de San Carlos, Universidad de Sao Paulo, 2007.         [ Links ]
[13] FAN S., ZAHARA E. A hybrid simplex search and particle swarm optimization for unconstrained optimization. European J. of Operat. Research, September, 527-548, 2007.         [ Links ]
[14] FAN S., LIANG Y., ZAHARA E. Hybrid simplex search and PSO for the global optimization of multimodal functions, J. of Eng. Optimization, 36(4), 401-418, 2004.