SciELO - Scientific Electronic Library Online

 
vol.15 número1Método flash etapa por etapa para el cálculo de columnas de absorciónOptimización de Monte Carlo usando la distribución beta índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

Links relacionados

  • En proceso de indezaciónCitado por Google
  • No hay articulos similaresSimilares en SciELO
  • En proceso de indezaciónSimilares en Google

Compartir


Ingeniería y Universidad

versión impresa ISSN 0123-2126

Ing. Univ. v.15 n.1 Bogotá ene./jun. 2011

 

Comparación de las técnicas de optimización por análisis de intervalos y la de enjambre de partículas para funciones con restricciones1

Comparison between Interval Analysis and Particle Swarm Optimization Techniques for Functions with Restrictions2

Comparação entre as técnicas de otimização por análise de intervalos e a de enxame de partículas para funções com restrições3

Diego Vanegas-Ardila4
Karol Sebastian Barragán-Niño5
Rodrigo Correa-Cely6

1Este artículo se deriva del proyecto de investigación denominado Real potencial del uso del método de análisis de intervalos para la optimización con restricciones frente al PSO de convergencia garantizada, número de registro 3479, desarrollado por el grupo de investigación en Control, Electrónica, Modelado y Simulación (CEMOS) de la Universidad Industrial de Santander, Bucaramanga, Colombia.
2Submitted on December 9, 2010. Accepted on January 24, 2011. This article is the result of the research project The Actual Potential of the Interval Analysis Method for Restricted Optimization, as Compared to Guaranteed Convergence PSO, registration number 3479, developed by the research group Control, Electronics, Modelling and Simulation (CEMO) from the Universidad Industrial de Santander, Bucaramanga, Colombia.
3Data de recepção: 9 de dezembro de 2010. Data de aceitação: 24 de janeiro de 2011. Este artigo deriva do projeto de pesquisa denominado Potencial real do uso de método de análise de intervalos para a otimização com restrições ante o PSO de convergência garantida, número de registro 3479, desenvolvido pelo grupo de pesquisa em Controle, Eletrônica, Modelagem e Simulação (CEMOS) da Universidade Industrial de Santander, Bucaramanga, Colômbia.
4Ingeniero electrónico, Universidad Industrial de Santander, Bucaramanga, Colombia. Correo electrónico: diegovan86@ hotmail.com..
5Ingeniero electrónico, Universidad Industrial de Santander, Bucaramanga, Colombia. Correo electrónico: sebasty09@ hotmail.com.
6Ingeniero químico, Universidad Nacional de Colombia. Magíster, Universidad Industrial de Santander, Bucaramanga, Colombia. Magíster y doctor en Ingeniería, Lehigh University, Estados Unidos. Profesor titular, Universidad Industrial de Santander. Correo electrónico: crcorrea@uis.edu.co.

Fecha de recepción: 9 de diciembre de 2010. Fecha de aceptación: 24 de enero de 2011.


Resumen

Este artículo describe los resultados obtenidos de la comparación entre la optimización por enjambre de partículas (PSO) y el método de optimización por análisis de intervalos (IAO) para la optimización de funciones no lineales sujetas a restricciones de igualdad o desigualdad. Este último se desarrolló fundamentado en el método propuesto inicialmente por (Ichida, 1996) y se utilizó para encontrar el óptimo global de una función multimodal de hasta tres variables sujeta a restricciones de igualdad y desigualdad. Se encontró que para las funciones analizadas el algoritmo PSO fue significativamente más veloz, aunque su precisión fue limitada. Por otro lado, el método IAO fue preciso para todos los casos, a costa de un considerable mayor tiempo computacional.

Palabras clave: Análisis de intervalos (matemáticas), optimización combinatoria, funciones de transferencia.


Abstract

This paper shows the comparison made between the particle swarm optimization (PSO) algorithm and the interval analysis optimization method for solving nonlinear-function optimization with equality and/or inequality constraints. The interval analysis optimization method (IAO) was based on the one initially proposed by Ichida (1996). It was used to find the global optimum of a multimodal function with up to three variables, which is subject to equality and inequality constraints. It was found that the PSO algorithm was significantly faster for all functions, although its precision was limited. On the other hand, the IAO method was accurate in all cases, but took a considerably longer computational time.

Key words: Interval analysis (mathematics), combinatorial optimization, transfer functions.


Resumo

Este artigo descreve os resultados obtidos com comparação entre a otimização por enxame de partículas (PSO) e o método de otimização por análise de intervalos (IAO) para a otimização de funções não lineares sujeitas a restrições de igualdade ou desigualdade. Este último desenvolveu-se fundamentado no método proposto inicialmente por Ichida (1996) e utilizou-se para encontrar o ótimo global de uma função multimodal de até três variáveis sujeita a restrições de igualdade e desigualdade. Encontrou-se que para as funções analisadas o algoritmo PSO foi significativamente mais veloz, ainda que sua precisão foi limitada. Por outro lado, o método IAO foi preciso para todos os casos, mas utilizou um tempo computacional consideravelmente maior.

Palavras chave: Análise de intervalos (matemáticas), otimização combinatória, funciones de transferência.


Introducción

En la mayoría de aplicaciones de la ingeniería, los problemas de optimización son muy frecuentes. Aunque se tienen numerosas técnicas disponibles, todavía existe gran cantidad de funciones que están más allá de los métodos analíticos y que presentan dificultades significativas para las estrategias numéricas. Como consecuencia, hay una continua búsqueda de nuevas y más robustas técnicas de optimización, que puedan solucionar tales problemas.

En la literatura especializada hay gran variedad de trabajos referentes al problema de optimización que usa distintas técnicas que van desde las determinísticas (como es el caso de partición por análisis de intervalos) hasta las heurísticas (como es el caso de la optimización por enjambre de partículas). Algunos de estos trabajos sirven como base para obtener nuevos métodos derivados (híbridos); pero sin tener la certeza de que realmente provean un mejor desempeño. Debido a que se aborda la optimización global con restricciones, contrastar el método de optimización por análisis de intervalos (IAO) frente a métodos metaheurísticos como la optimización por enjambre de partículas (PSO) aporta información necesaria a la hora de seleccionar el algoritmo con el mejor desempeño para este tipo de problemas.

Una razón importante para optar por estas dos estrategias de optimización fue motivada porque, pese a que ambas fueron propuestas con diferencia de casi un año, el PSO ha tenido mayor aceptación dada, entre otras razones, por su fácil implementación algorítmica. Es importante mencionar que la técnica de intervalos es eficiente para el manejo de restricciones, ya que emplea los principios del método de bisección para encontrar óptimos globales.

En este artículo se compararon nueve funciones de prueba sujetas a restricciones de igualdad y desigualdad, cuyos valores óptimos se determinaron mediante la PSO y la IAO. Se calcularon valores estadísticos como mejor valor, valor medio, desviación estándar y tiempo de cómputo para las funciones propuestas. El PSO se implementó con la ayuda disponible en (SAM, 2009). Para el caso del método IAO se desarrolló su algoritmo utilizando la herramienta computacional no comercial INTLAB (Rump, 1999).

1. Fundamentación teórica

La optimización global que se abordó fue la de encontrar el mejor conjunto de soluciones considerando unas restricciones, expresadas en forma de igualdades y desigualdades (Horst y Pardalos, 1995). Los problemas de optimización de funciones no lineales con restricciones constan de tres componentes básicos: un conjunto de variables, una función objetivo que será optimizada (minimizar o maximizar) y un conjunto de restricciones que especifican los espacios factibles de las variables. La optimización con restricciones en su forma más general es conocida como el problema general de programación no lineal que puede definirse como:

(1)

(2)

La PSO es una técnica metaheurística desarrollada por (Kennedy y Eberhart, 1995) y se ha empleado para resolver problemas de optimización con restricciones y sin éstas. En PSO se tiene un enjambre de partículas donde cada una de ellas representa una posible solución al problema de optimización (Gómez, 2008).

El análisis de intervalos fue desarrollado por Moore, en 1966. Desde entonces numerosos libros y artículos se han publicados sobre el tema (Hansen, 2006). En (Moore, Kearforr y Cloud, 2009) se muestran nuevos avances del método de análisis de intervalos con aplicaciones e implementación en INTLAB. Esta última es una herramienta computacional que permite operaciones básicas en intervalos escalares reales y complejos, vectores y matrices. Toda la fundamentación de la aritmética real utilizada para punto flotante se transformó para lo que hoy se conoce como análisis de intervalos (Neumaier, 2001). Muestra de ello es la aplicación del algoritmo de Newton para resolver sistemas de ecuaciones no lineales en una región inicial conocida (Moore, Kearforr y Cloud, 2009). Entre los más importantes operadores derivados de Newton se encuentran el operador de Krawczyk, Hansen-Sengupta y Hansen-Greenberg.

El método de intervalos de Newton permite encontrar las raíces de una ecuación lineal o no lineal, de una o múltiples variables. En comparación con otros métodos numéricos, este es muy veloz, aunque no está exento de problemas de convergencia. Referencias generales sobre métodos de intervalos para optimización global aparecen en (Hansen, 2006; Jansson, 1992). Una revisión de los principios de la aritmética de intervalos en INTLAB se encuentra en (Hargreaves, 2002).

2. Algoritmos

2.1 Algoritmo PSO con restricciones
El algoritmo general de PSO con restricciones empleado se comporta secuencialmente. Para empezar, la posición de una partícula i se expresa por xi, donde xi es un vector que almacena cada una de las posiciones que tiene la partícula en cada una de las dimensiones que comprende el espacio de búsqueda. Además, se expresa como vi la velocidad de la partícula i, que también es un vector que contiene cada una de las velocidades de la partícula en cada dimensión (ecuación 3). Esta velocidad se adiciona a la posición de la partícula, para mover la partícula desde un tiempo t - 1 a un tiempo t (ecuación 4):

(3)

(4)

Donde:
x (t+1)i Ξ Vector posición de la partícula i en la iteración t + 1.
v (t+1)i Ξ Vector velocidad de la partícula i en la iteración t + 1.
w Ξ Factor de inercia en la iteración t.
c1,c2 Ξ Son Pesos que controlan los componentes cognitivo y social.
rand () Ξ Número aleatorio entre 0 y 1.
pBest_i Ξ Mejor posición encontrada por la partícula i hasta el momento que posee la mejor solución.
pG Representa la posición de la partícula con la mejor solución o aptitud.
P Ξ Número de partículas que componen el enjambre.

La descripción en detalle del proceso algorítmico de PSO se puede ver en [1, 4, 5, 11]. Para el manejo de restricciones se utilizó un mecanismo simple, basado en reglas de factibilidad.

2.2 Algoritmo IAO
Para implementar el método IAO se utilizó la herramienta computacional denominada INTLAB. Esta aplicación permite trabajar con diversas operaciones y funciones aplicadas a intervalos. De igual manera, se implementó el método de análisis de intervalos fundamentado en el propuesto por (Ichida, 1996) para encontrar el máximo/mínimo global de funciones sujetas a restricciones de igualdad o desigualdad. Al descartar subregiones donde la solución global puede no existir mediante la realización de dos pruebas de comparación, es factible encontrar la solución con un límite de error riguroso. Para ello se realizó el respectivo estudio del método con unas funciones objetivo sujetas a restricciones de igualdad o desigualdad para el caso particular de funciones de hasta tres variables. El algoritmo implementado utiliza los principios del método de bisección para descartar regiones donde pueden no existir óptimos globales.

Para el caso de la prueba 1 se definen dos regiones: una región derecha y una región izquierda. Al evaluar la función objetivo en cada una de las regiones, se obtienen intervalos de respuesta con un valor denominado ínfimo y otro denominado supremo para cada región. Si, por ejemplo, se desea calcular el valor máximo de una función objetivo, y el valor supremo del intervalo respuesta de la región derecha es menor que el valor ínfimo del intervalo de la región izquierda, obliga a que la región derecha se descarte. Para la prueba 2 se evalúan las regiones derecha e izquierda en las restricciones dadas y si, para el caso de una restricción de igualdad, el intervalo evaluado en la restricción no contiene el cero, la región se descarta inmediatamente. Para el caso de restricciones de desigualdad, si el valor ínfimo de la región evaluada en la restricción es mayor que cero, la región se descarta. Al analizar el método original, se pudo concluir que para la realización de las pruebas 1 y 2 en el algoritmo era necesario, primero, realizar la evaluación de la prueba 2 y, luego, la prueba 1 , ya que una condición necesaria en la prueba 1 es que las regiones evaluadas no violen las restricciones, y esta condición es precisamente el principio de funcionamiento de la prueba 2. Así que en el algoritmo desarrollado se siguió el orden mencionado.

En este artículo también se utilizó para dos funciones de prueba una modificación del método de intervalos de Newton propuesta por Hansen-Greenberg para calcular los óptimos globales y así observar la expansión de los conceptos de la aritmética real a la aritmética de intervalos.

3. Experimentación

Para los experimentos con PSO y el método de análisis de intervalos se utilizaron nueve funciones de prueba, con restricciones asignadas. Estas funciones son muy usadas en la literatura para estudios de optimización (Tabla 1).

El estudio comparativo de los dos métodos con las nueve funciones objetivo se hizo realizando un análisis estadístico elemental para funciones de una, dos y tres variables. En el caso de las funciones fl, f2, f3, f4 y f6 los valores óptimos calculados fueron valores máximos globales. En el caso de f5, f7, f8 y f9 los valores óptimos calculados fueron valores mínimos globales. Se consignaron los datos obtenidos y para el caso de dos variables se reportaron algunos resultados. Fue necesario realizar y evaluar, mediante criterios estadísticos, la eficiencia de cada método y sus ventajas y desventajas.

3.1 Caso uno: experimento con una variable
En la Tabla 2 se consignan los resultados del mejor valor y tiempo de cómputo para la funciones f7 y f8 con las restricciones propuestas. Los resultados se calcularon con una población de 200 partículas y 300 iteraciones máximas para PSO.

3.2 Caso dos: experimento con dos variables
En la Tabla 3 se consignan los resultados de mejor valor, valor medio, desviación estándar y tiempo de cómputo para la funciones f2 a f7. Los valores se calcularon mediante la utilización de los métodos de PSO y IAO en la evaluación de las funciones objetivo sujetas a las restricciones de la Tabla 1. Los resultados obtenidos se obtuvieron con una población de 200 partículas y 300 iteraciones máximas en el caso de PSO.

En las figuras 1 y 2 se realiza el seguimiento de las pruebas hechas con el método IAO. El descarte por prueba 2 se observa como una sola línea transversal en la subregión reservada, y el descarte por prueba 1 , como una cruz en cada subregión.

Los resultados mostrados en las figuras 1 y 2 se obtuvieron al emplear el algoritmo IAO desarrollando y utilizando para su salida visual la herramienta computacional INTLAB.

3.3 Caso tres: experimento con tres variables
En la Tabla 4 se consignan los resultados de mejor valor y tiempo de cómputo para las funciones f1 y f9. Los resultados obtenidos se calcularon con una población de 200 partículas y 300 iteraciones máximas en el caso de PSO.

4. Análisis de resultados

4.1 Caso uno
Se observa de la Tabla 2 que tanto los valores de PSO como IAO corresponden al óptimo deseado, con la diferencia que PSO llegó en un tiempo promedio menor (aprox. 30 veces) y este es un punto a favor importante en el manejo de la eficiencia en la optimización global con restricciones. El error respecto al valor exacto (-2,59 para f8) es menor para el método IAO que para PSO. La tolerancia que se maneja para la evaluación de las funciones y las restricciones en PSO es de 10-6. Para el método IAO se trabajó con una tolerancia de 10-3 para la evaluación de la función, lo que condujo a un resultado satisfactorio. En el caso de f7, el método IAO llegó a la respuesta deseada en un tiempo menor que PSO (aprox. 0,9 veces), y ello confirma su importancia en la solución de problemas de optimización con restricciones.

4.2 Caso dos
Al analizar los valores obtenidos en la Tabla 3 para las funciones objetivo de dos variables con restricciones se destacan algunos puntos importantes. Por ejemplo, en el caso de f3, el método PSO no llega a la respuesta exacta, sino a un valor aproximado. El método IAO encontró este valor con una alta precisión. Esta es una desventaja importante de dicho método, ya en que algunos casos no convergen a los valores óptimos, sino que se establece en valores aproximados aunque en muy corto tiempo (0,46 veces más rápido en promedio para el presente caso). En este ejemplo en particular, el método IAO calculó el óptimo en un tiempo relativamente corto, que hizo viable su aplicación.

Para el caso de f5 (Rosenbrock's Valley), el método IAO llegó al mismo valor óptimo que el método de PSO con restricciones, pero con una diferencia de tiempo promedio mucho menor para el caso de PSO (aprox. 40 veces) y que resultó ser muy eficiente para este ejemplo. Para f6, el algoritmo IAO proporciona una respuesta más precisa; pero en un tiempo de cómputo mucho más alto en comparación con PSO (aprox. 600 veces más lento). Para el caso de f2 se utilizó la modificación del método de intervalos de Newton y se observaron resultados más precisos, del orden de 10-6, que con el método PSO. En general, en la mayoría de los resultados el método IAO para optimización global con restricciones obtuvo un mejor desempeño, en cuanto a la precisión del valor óptimo encontrado frente al método de PSO, para las funciones objetivo seleccionadas. No obstante, su mayor tiempo de ejecución fue una desventaja observada en la mayoría de los experimentos.

4.3 Caso tres
Al analizar los resultados de los dos métodos en la optimización de las funciones de tres variables, f1 y f9, se observó que los resultados son mucho más precisos (del orden de 10-12) para el caso de IAO, que en el caso de PSO (del orden de 10-10), ya que determinan el valor óptimo de manera más exacta aunque con la desventaja del lapso promedio utilizado en el proceso (aprox. 50 veces mayor). Al ser PSO un algoritmo que converge muy rápidamente a valores que eventualmente pueden ser o no óptimos, se debe tener cuidado en la aplicación de este método y las consecuencias que causen la precisión, exactitud y reproducibilidad de sus respuestas.

El óptimo de f1 se calculó usando el método de intervalos de Hansen-Greenberg con resultados muy buenos en cuanto a tiempo (aprox. 20 veces más rápido) y precisión (10-12 frente a 10-10). El óptimo de f9 se calculó mediante el algoritmo de particiones con un tiempo de cómputo prohibitivo en aplicaciones donde se necesiten respuestas rápidas (aprox. 40 veces más lento).

5. Conclusiones

Se verificó que tanto el algoritmo metaheurístico PSO como la técnica de IAO tienen el potencial de ser utilizados en la optimización de diversas funciones objetivo no lineales sujetas a restricciones de igualdad o desigualdad. El PSO, en un número considerable de casos, dio una respuesta aproximada que satisface las necesidades de optimización y contribuye a solucionar problemas de no linealidades presentes en la mayoría de las aplicaciones de ingeniería y ciencias. Si se requiere una respuesta de muy alta precisión, sin importar los costos computacionales requeridos, el método determinístico IAO es una elección apropiada, para las funciones objetivo estudiadas.

Se encontró que el algoritmo PSO con restricciones es potencialmente más rápido en la mayoría de los problemas estudiados (cerca del 80%) frente al método IAO con restricciones. Sin embargo, la optimización resultante al evaluar las funciones f1 a f9 con sus respectivas restricciones por el método IAO ofreció mejor calidad de solución que el método de PSO con restricciones, pues generó un intervalo de solución para la tolerancia indicada con una precisión deseada (del orden de 10-12). Así, este método tendría un alto potencial si se logran implementar algunas mejoras para incrementar su eficiencia en cuanto al manejo del recurso computacional.

Cabe notar que el método IAO se implementó para una, dos y tres variables en INTLAB, pero fue muy lento (en algunos casos hasta 600 veces) para algunas funciones, debido a que las subregiones reservadas se incrementaban al aproximarse al intervalo solución y así se determinó que el criterio de descarte de subregiones fue insuficiente para eliminar la mayoría de las subregiones que no contenían la solución, pues ocasionó incrementos excesivos en el tiempo de cómputo.

Se concluye, finalmente, que el método IAO generó soluciones rigurosas para todos los problemas estudiados, pero con un indeseable elevado tiempo de cómputo. Para ello surge la necesidad de implementar formas de reducir las subregiones generadas que conlleven una reducción en los costos computacionales y al incremento en su eficiencia. Como trabajo futuro se realizará un híbrido entre los métodos de optimización por enjambre de partículas (PSO) y optimización por análisis de intervalos (IAO), para obtener eventualmente una combinación balanceada entre precisión y rapidez.


Referencias

GOMEZ, M. G. Sistema de generación eléctrica con pila de combustible de óxido sólido alimentado con residuos forestales y su optimización mediante algoritmos basados en nubes de particulas. Madrid: Universidad Nacional de Educación a Distancia, Departamento de Ingeniería Eléctrica, Electrónica y de Control, 2008.         [ Links ]

HANSEN, E. Multidimensional Interval Newton Method. Reliable Computing. 2006, vol. 12, núm. 4, pp. 253-272.         [ Links ]

HARGREAVES, G. I. Interval Analysis in MATLAB. Manchester: University of Manchester, 2002.         [ Links ]

HORST, R. y PARDALOS, P. M. Handbook of Global Optimization. Journal of Applied Mathematics and Mechanics. 1995, Núm. 77, pp. 669-750.         [ Links ]

ICHIDA, K. Constrained optimization using interval analysis. Computers and Industrial Engineering. 1996, vol. 31, núms. 3-4, pp. 933-937.         [ Links ]

JANSSON, C. A global optimization method using interval arithmetic. Third International IMACS-GAMM Symposium on Computer Arithmetic And Scientific Computing. Amsterdam, 1992.         [ Links ]

KENNEDX J. y EBERHART, R. Particle swarm optimization, Proceedings of IEEE International Conference on Neural Networks, Piscataway, NJ, 1995.         [ Links ]

MIDENCE, D. y VARGAS, A. Estudio comparativo de algoritmos de computación evolutiva en la optimización de la confiabilidad en redes de distribución de potencia. Décimo tercer encuentro regional Iberoamericano de Cigre. Puerto Iguazú, Argentina, 2009.         [ Links ]

MOORE, E.R.;KEARFOTT, R.; y CLOUD, M.J. Introduction to interval analysis. SIAM, Philadelphia, 2009. pp.105-127.         [ Links ]

NEUMAIER, A. Introduction to numerical analysis. Cambridge, UK: Cambridge University Press, 2001.         [ Links ]

RUMP, S. M. INTLAB-INTerval LABoratory. En: TiborCsende. Developments in Reliable Computing. Dordrecht: Kluwer Academic Publishers, 1999, pp. 77-104.         [ Links ]

SAM. Another particle swarm toolbox [documento en línea]. 2009. http://www.mathworks.com/matlabcentral/fileexchange/25986-another-particle-swarm-toolbox [consulta:17-04-2010]         [ Links ].

Creative Commons License Todo el contenido de esta revista, excepto dónde está identificado, está bajo una Licencia Creative Commons