Se analizan las deficiencias del algoritmo estándar de enjambre de partículas y sus métodos de mejora.
En comparación con los métodos tradicionales de optimización multiobjetivo, la optimización por enjambre de partículas tiene grandes ventajas a la hora de resolver problemas multiobjetivo. En primer lugar, el algoritmo PSO y la función de búsqueda eficiente conducen a la solución óptima de objetivos múltiples en este sentido. En segundo lugar, PSO representa el paralelismo inherente del conjunto poblacional de soluciones generales y busca múltiples soluciones no inferiores simultáneamente; fácil de buscar múltiples soluciones óptimas de Pareto; además, el algoritmo de enjambre de partículas es generalmente adecuado para procesar varias funciones objetivas y restricciones. El algoritmo de enjambre de partículas es fácil de combinar con métodos tradicionales para proponer un método eficaz para resolver problemas específicos. El propio PSO, para resolver mejor los problemas de optimización multiobjetivo, debe resolver la partícula óptima global y la partícula óptima seleccionada individualmente. Para la selección de partículas óptimas globales, por un lado, el algoritmo tiene una mejor velocidad de convergencia y, por otro lado, resuelve la dispersión de límites de Pareto. Si se selecciona la mejor partícula, se requiere menos complejidad computacional y se determina mediante un número menor de comparaciones.
Solución de errores actualizada. Hasta ahora, la optimización multiobjetivo basada en el algoritmo de enjambre de partículas incluye principalmente los siguientes contenidos
Ideas:
(1) Método vectorial y método de ponderación. El método de peso fijo, el método de peso adaptativo y el método de evaluación de vectores en la literatura [20] son las primeras veces que el algoritmo de enjambre de partículas resuelve el problema de MO. Sin embargo, para un problema de optimización dado, generalmente es difícil obtener un conjunto adecuado de métodos de evaluación de vectores de peso mediante el método de ponderación. El problema es que normalmente no existe una solución satisfactoria.
(2) Basado en el método de Pareto. [21] El mecanismo de clasificación de Pareto combina PSO para manejar problemas, optimización multiobjetivo, el método de clasificación de Pareto selecciona un grupo de élites y la ruleta selecciona la partícula óptima global. Aunque el mecanismo de selección de la ruleta hace que todos los individuos de Pareto tengan la misma probabilidad de selección, de hecho, solo unas pocas personas tienen una mayor probabilidad de selección, lo que no favorece el mantenimiento de la diversidad de la población. La literatura [22] adopta PSO en el mecanismo de competencia de Pareto; Se introduce para seleccionar la base de conocimiento de partículas de las partículas óptimas globales. Los individuos candidatos se seleccionan aleatoriamente del conjunto de comparación de grupos para compararlos y determinar soluciones no inferiores. El éxito del algoritmo depende de la configuración de los parámetros del tamaño del conjunto de comparación. Si este parámetro es demasiado pequeño, el proceso de selección basado en la no inferioridad del grupo puede ser demasiado pequeño; si este parámetro es demasiado grande, puede ocurrir una convergencia prematura;
(3) Método de la distancia. [23], basado en la distancia entre cada solución actual, asigna el valor de aptitud de la solución de Pa2reto para seleccionar la partícula óptima global. Utilizando métodos a distancia, es necesario inicializar las posibles soluciones. Si el valor potencial inicial es demasiado grande, no será significativo que diferentes soluciones se adapten a diferentes valores. Esto conducirá a una presión de selección demasiado pequeña o a una distribución desigual de los individuos, lo que hará que el algoritmo PSO converja muy lentamente.
④Nearby". La literatura [24] propuso una estrategia de selección de vecindad dinámica, es decir, optimizar la definición de la meta, la vecindad de la meta y todas las demás metas, y luego seleccionar la vecindad dinámica de la partícula óptima global. Sin embargo, este método es más sensible a la selección del objetivo de optimización y la clasificación de la vecindad de la función objetivo.
(5) La población en la literatura [25] se divide en varios subgrupos. el PSO de cada subgrupo. El algoritmo intercambia información entre cada subgrupo buscando la solución óptima de Pareto, pero debido a la necesidad de aumentar el número de partículas, la cantidad de cálculo aumenta.
(6) No. -El método de clasificación se utiliza para la selección. La partícula óptima global tiene el mejor desempeño individual de toda la población, la partícula y sus descendientes, para proporcionar una presión de selección adecuada, y la tecnología de nicho aumenta la diversidad de la población y supera al individuo. Sin embargo, debido a su propia naturaleza, no favorece la diversidad de la población y es fácil de formar prematuramente. Además, el artículo [27] presenta el algoritmo de optimización del enjambre de partículas para resolver el problema. Problema de optimización multiobjetivo basado en la estrategia máximo-mínimo y la teoría de juegos. El valor de aptitud de las partículas puede determinar la solución óptima de Pareto sin técnicas de agrupamiento ni de nicho.
2 Optimización restringida
En. En los últimos años, se han logrado algunos avances con el algoritmo de enjambre de partículas. La optimización restringida basada en PSO se puede dividir en dos categorías: ① Método de función de penalización; ② Diseño de operaciones evolutivas específicas o coeficientes de corrección de restricciones [28] El método de función de penalización para resolver con mapeo de múltiples segmentos no fijo. Los problemas de optimización de restricciones se resuelven usando PSO para transformar el problema.
Los resultados de la simulación muestran que este algoritmo es mejor que la estrategia evolutiva y el algoritmo genético, pero el diseño de la función de penalización es demasiado complejo y difícil de resolver. Una solución factible en [29] conserva las restricciones de procesamiento de la estrategia, es decir, por un lado; , el área de almacenamiento de todas las partículas debe actualizarse hasta que solo se preserven las soluciones factibles; por otro lado, ¿todas las partículas en la fase de inicialización provienen del valor espacial de una solución factible? Sin embargo, el espacio de solución factible inicial es difícil de determinar para muchos problemas. La información multicapa propuesta en [30] se procesa utilizando el algoritmo de enjambre de partículas estratégicas y el principio de restricción. Las partículas del mecanismo de clasificación de Pareto multicapa se clasifican según la matriz de restricciones, de modo que algunas partículas determinan la dirección de búsqueda de los individuos restantes.
3 La optimización discreta es un espacio de solución de optimización discreta que es una colección de puntos discretos en lugar de PSO continuo para resolver problemas de optimización discreta, debe corregirse actualizando las fórmulas de velocidad y posición, o deformación. La optimización discreta basada en PSO se puede dividir en las siguientes tres categorías:
Probabilidad de cambio de posición de velocidad (1). [31] Primero, PSO binario discreto propuesto. Codificador de posición de partículas binarias, función sigmoidea, la restricción de velocidad es [0, 1], lo que representa la posición de probabilidad de las partículas en los métodos en la literatura [32] [31]
Disposición de cambio de dirección mejorada. Para organizar partículas de reemplazo, la velocidad se refiere a la probabilidad de determinar el cambio de posición de la partícula en función de la similitud entre las dos partículas e introducir operaciones de mutación para evitar caer en la partícula óptima mínima local.
(2) Operación del algoritmo de enjambre de partículas redefinida. [33] propusieron un nuevo enjambre de partículas discretas para resolver el problema del viajante redefiniendo la posición y la velocidad de las partículas y sus operaciones de suma, resta y multiplicación. Aunque este algoritmo es eficaz, proporciona una nueva idea para resolver problemas de optimización combinatoria.
(3) Cuando el algoritmo de enjambre continuo de partículas es discreto. [34] utilizaron el algoritmo de enjambre continuo de partículas para resolver el problema de asignación de tareas de las computadoras distribuidas. Los números reales se convierten en enteros positivos y las partes real y fraccionaria del signo se separan y eliminan. Los resultados muestran que el algoritmo supera al algoritmo genético en términos de calidad y velocidad de la solución.
4 Optimización dinámica
En muchos problemas prácticos de ingeniería, el entorno de optimización es incierto o dinámico. Por lo tanto, el algoritmo de optimización debe poder realizar los ajustes correspondientes a medida que el entorno cambia dinámicamente, y el algoritmo debe tener un cierto grado de robustez para la solución óptima. [35] propusieron por primera vez un sistema dinámico de seguimiento de PSO. [36] propusieron un algoritmo de enjambre de partículas adaptativo para rastrear automáticamente los cambios en sistemas dinámicos, lo que mejoró las capacidades de seguimiento del método de detección de partículas de población y el sistema de algoritmo de enjambre de partículas de reinicialización de partículas. En el entorno dinámico que cambia rápidamente de la Referencia [37], la adición del término de cambio en la fórmula de actualización de la velocidad de las partículas elimina la necesidad de detectar cambios ambientales y puede rastrear el procesamiento ambiental. Aunque está mucho menos estudiado, es un contenido de investigación importante.
Programa MATLAB para el algoritmo de optimización del enjambre de partículas
Inicializa el enjambre de partículas;
Para cada partícula
calcula su salud física
p>
Si (la aptitud es mejor que el mejor valor histórico de la partícula)
La mejor actualización personal de la historia;
Si se selecciona la partícula del enjambre de partículas actual (; La partícula óptima actual es mejor que el grupo de partículas óptimo histórico)
Actualice el grupo PG con la mejor partícula actual para cada partícula
Actualice el tipo de partícula ① velocidad;
Actualizar posición tipo partícula ②;
Fin
Aunque no se ha alcanzado el número máximo de iteraciones, o no se ha alcanzado el error mínimo.