Algoritmos Evolutivos y Bioinspirados

  • Estrategias de Evolución (ES)

    Estrategias de Evolución (ES)
    Desarrolladores: Ingo Rechenberg y Hans-Paul Schwefel.
    Algoritmos de optimización numérica. Se centran en la adaptación de conjuntos de parámetros continuos para maximizar o minimizar una función objetivo. Emplean operadores de mutación y selección para mejorar gradualmente los candidatos.
  • Algoritmos Genéticos (GA)

    Algoritmos Genéticos (GA)
    Desarrollador: John Holland.
    Los algoritmos genéticos son una técnica de optimización inspirada en la selección natural. Utilizan una población de soluciones candidatas que evolucionan a lo largo de generaciones. Cada generación implica procesos de selección, cruza y mutación que emulan la evolución biológica.
  • Programación Evolutiva (EP)

    Programación Evolutiva (EP)
    Desarrollador: Lawrence J. Fogel, A. J. Owen, M. J. Walsh.
    Técnica que utiliza un proceso de evolución para optimizar soluciones. Se enfoca en la optimización de parámetros en lugar de estructuras. A diferencia de los algoritmos genéticos, las soluciones no están codificadas genéticamente, sino que se representan directamente.
  • Estrategias de Covarianza Matriz Adaptativa (CMA-ES)

    Estrategias de Covarianza Matriz Adaptativa (CMA-ES)
    Desarrollador: Nikolaus Hansen.
    Algoritmo evolutivo que se especializa en la optimización numérica de problemas difíciles y multidimensionales. Ajusta adaptativamente una distribución multivariada para modelar las soluciones candidatas. La información de covarianza y las tasas de aprendizaje se actualizan durante la evolución.
  • Algoritmo Colonia de Hormigas (ACO)

    Algoritmo Colonia de Hormigas (ACO)
    Desarrollador: Marco Dorigo.
    Técnica para buscar el camino óptimo en un grafo, basado en el comportamiento de las hormigas cuando estas están buscando un camino entre la colonia y una fuente de alimentos.
  • Programación Genética (GP)

    Programación Genética (GP)
    Desarrollador: John R. Koza.
    Técnica que evoluciona programas de ordenador en forma de árboles de sintaxis abstracta. Los programas se representan genéticamente y evolucionan a través de operadores genéticos como la cruza y la mutación. Se utiliza para resolver problemas de optimización y generar automáticamente programas.
  • Optimización por Enjambre de Partículas (PSO)

    Optimización por Enjambre de Partículas (PSO)
    Desarrolladores: James Kennedy y Russell C. Eberhart.
    Técnica de optimización inspirada por el comportamiento de peces y aves. El movimiento de cada agente, llamado partícula, se ve influido por su mejor posición local hallada hasta el momento, así como por las mejores posiciones globales encontradas por otras partículas a medida que recorren el espacio de búsqueda.
  • Evolución Diferencial (DE)

    Evolución Diferencial (DE)
    Desarrolladores: R. Storn y K. Price.
    Algoritmo basado en diferencias vectoriales principalmente usado para problemas de optimización numérica.
  • Búsqueda de Armonías (HS)

    Búsqueda de Armonías (HS)
    Desarrollador: Zong Woo Gem.
    Busca una combinación óptima de parámetros para minimizar o maximizar una función objetivo. Parte de una población inicial de soluciones (armonías) aleatorias. Luego, utiliza operadores de improvisación para generar nuevas armonías a partir de las existentes.
  • Algoritmos Abeja (BA)

    Algoritmos Abeja (BA)
    Desarrollador: D. T. Pham.
    Técnicas de optimización bioinspiradas que se basan en el comportamiento de las abejas y su proceso de búsqueda de alimento. Las abejas exploradoras buscan soluciones en el espacio de búsqueda, y luego informan a las abejas obreras sobre la calidad de esas soluciones.
  • Algoritmo Colonia de Abejas Artificial (ABC)

    Algoritmo Colonia de Abejas Artificial (ABC)
    Desarrollador: D. Karaboga.
    Técnica de optimización basado en el comportamiento de abejas en la búsqueda de miel. La colonia consta de tres grupos de abejas: abejas empleadas, abejas en espera y abejas exploradoras.
  • Algoritmo Firefly (FA)

    Algoritmo Firefly (FA)
    Desarrollador: Xin-She Yang.
    Técnica de optimización bioinspirada basada en la atracción lumínica de las luciérnagas. Cada luciérnaga en el algoritmo representa una solución candidata, y su brillo indica su calidad. Las luciérnagas se mueven hacia aquellas que emiten una luz más intensa, lo que simboliza la búsqueda de soluciones óptimas.
  • Algoritmo de Búsqueda Cuckoo (CS)

    Algoritmo de Búsqueda Cuckoo (CS)
    Desarrolladores: Xin-She Yang y Suash Deb.
    Técnica de optimización en la que cada huevo en el nido representa una solución y un huevo de cuco una nueva solución. El objetivo es usar nuevas y potencialmente mejores soluciones (cucos) para remplazar no tan buenas soluciones en el nido.
  • Algoritmo Murciélago (BA)

    Algoritmo Murciélago (BA)
    Desarrollador: Xin-She Yang.
    Técnica de optimización inspirada por la ecolocalización de los murciélagos, con frecuencias de pulso de emisión y volumen variables.