Algoritmo firefly
Xin-She Yang formuló este algoritmo con las siguientes premisas:[1] El brillo es asociado con los valores de una función objetivo.El algoritmo firefly es un procedimiento metaheurístico de optimización inspirado en la naturaleza.El pseudocódigo puede ser resumido como: La fórmula de actualización principal para cualquier par de dos luciérnagascorresponde a la optimización por enjambre de partículas estándar (PSO).De hecho, si el bucle interior (for j) es eliminado y el brillo, entonces FA esencialmente se convierte en el estándar PSO.En el caso de que las escalas varíen significativamente,Se puede señalar que la descripción anterior no incluye la reducción aleatoria., aunque este valor puede depender del número de iteraciones.capacita al algoritmo para salir de cualquier óptimo local como en el caso improbable de que pudiera bloquearse si el término aleatorio es reducido demasiado deprisa.Estudios paramétricos muestran que n (el número de luciérnagas) tendría que ser aproximadamente entre 15 y 40 para la mayoría de problemas.[3] Hay una versión disponible del algoritmo programada en python, aunque con funcionalidades limitadas.[4] Estudios recientes muestran que el algoritmo firefly es muy eficaz, y puede superar a otros algorítmicos metaheurísticos que incluyen optimización por enjambre de partículas.[5][6] Otros algoritmos metaheurísticos pueden tener dificultad en tratar funciones de prueba estocástica, y parece que el algoritmo firefly puede tratar la prueba estocástica de forma muy eficientemente.[8][9] Chatterjee y otros[10] han demostrado que el algoritmo firefly puede ser superior a la optimización por enjambre de partículas en sus aplicaciones.Además, puede solucionar eficientemente problemas no convexos con condiciones de contorno complejas no lineales.[11][12] Se han hecho mejoras posteriores en el rendimiento con resultados prometedores.[13][14] A pesar de que se han hecho muchos progresos en algorítmos basados en el FA desde 2008, todavía se necesitan esfuerzos significativos para mejorar su rendimiento:[15] Las variantes clásicas del algoritmo tienen encuadres de parámetros inesperados y leyes de actualización limitada, notablemente la regla homogénea necesita ser mejorada para hacer más búsquedas en escenarios de formas físicas diferentes.Se ha efectuado el análisis de la trayectoria de una sola luciérnaga en el algoritmo tradicional y en una variante adaptativa, respectivamente.[15] Una revisión recopilatoria reciente ha mostrado que el algoritmo firefly y sus variantes han sido utilizados en casi todas las áreas de la ciencia:[17]