Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Otros Algoritmos de Enjambre (Luciérnaga, Abeja, Murciélago) | Algoritmos Basados en Enjambres
Algoritmos Bioinspirados

bookOtros Algoritmos de Enjambre (Luciérnaga, Abeja, Murciélago)

Note
Definición

Algoritmo de luciérnagas (FA), algoritmo de abejas (BA) y algoritmo de murciélagos (BatA) son métodos de optimización basados en enjambres, inspirados en los comportamientos de luciérnagas, abejas melíferas y murciélagos.
Cada método simula diferentes estrategias de comunicación y movimiento para explorar y explotar el espacio de búsqueda de manera eficiente.

Algoritmo de Luciérnagas

El Algoritmo de Luciérnagas se inspira en el comportamiento de destellos de las luciérnagas. En la naturaleza, las luciérnagas utilizan destellos bioluminiscentes para atraer parejas o presas. En el algoritmo, cada luciérnaga representa una solución potencial y su brillo corresponde a la calidad de esa solución (aptitud). Las luciérnagas se sienten atraídas por otras que son más brillantes, lo que las lleva a moverse hacia mejores soluciones. Esta atracción disminuye con la distancia y está influenciada por la intensidad de la luz. A diferencia de ACO, que se basa en rastros de feromonas, o PSO, que utiliza actualizaciones de velocidad basadas en los mejores valores personales y globales, el movimiento en el Algoritmo de Luciérnagas está gobernado por la atractividad por pares y la aleatoriedad.

Algoritmo de Abejas

El Algoritmo de Abejas toma inspiración del comportamiento de búsqueda de alimento de los enjambres de abejas melíferas. Las abejas exploran su entorno para encontrar fuentes de alimento, comunican ubicaciones mediante danzas y reclutan a otras abejas para explotar zonas ricas en alimento. En el algoritmo, las abejas exploradoras buscan aleatoriamente, mientras que las abejas reclutadas explotan áreas prometedoras, equilibrando la exploración y la explotación. Este enfoque difiere de la comunicación indirecta de ACO y el aprendizaje social de PSO, ya que los Algoritmos de Abejas presentan un reclutamiento explícito y una división del trabajo entre los agentes.

Algoritmo de Murciélagos

El Algoritmo de Murciélagos modela el comportamiento de ecolocalización de los micromurciélagos. Los murciélagos emiten pulsos de sonido y escuchan los ecos para percibir su entorno y localizar presas. En el algoritmo, los murciélagos ajustan su tasa de emisión de pulsos, la intensidad del sonido y la velocidad para buscar soluciones óptimas. Las actualizaciones de posición y velocidad están influenciadas por una combinación de las mejores soluciones globales y recorridos aleatorios, con parámetros que cambian dinámicamente para equilibrar la exploración y la explotación. A diferencia de ACO y PSO, el Algoritmo de Murciélagos incorpora parámetros adaptativos de frecuencia e intensidad, reflejando la adaptación sensorial de los murciélagos reales.

Ejemplo: Regla de Movimiento de Luciérnagas

123456789101112131415161718192021222324
# Firefly Algorithm: Movement Rule import numpy as np def move_firefly(x_i, x_j, beta0, gamma, alpha): """ Move firefly i toward firefly j. x_i, x_j: positions of fireflies i and j (numpy arrays) beta0: attractiveness at r=0 gamma: light absorption coefficient alpha: randomization parameter Returns new position of firefly i. """ r = np.linalg.norm(x_i - x_j) beta = beta0 * np.exp(-gamma * r**2) rand = alpha * (np.random.rand(*x_i.shape) - 0.5) new_position = x_i + beta * (x_j - x_i) + rand return new_position # Example: Move firefly at [2.0, 3.0] toward [4.0, 5.0] x_i = np.array([2.0, 3.0]) x_j = np.array([4.0, 5.0]) new_x = move_firefly(x_i, x_j, beta0=1.0, gamma=1.0, alpha=0.2) print("Updated firefly position:", new_x)
copy

Elección del Algoritmo de Enjambre Adecuado

La selección del algoritmo de enjambre más adecuado depende de las características del problema de optimización y de las fortalezas únicas de cada enfoque.

  • El Algoritmo de Luciérnagas es ventajoso para problemas de optimización multimodal, donde existen múltiples soluciones óptimas. Su mecanismo de atracción por pares ayuda a escapar de óptimos locales, lo que lo hace adecuado para diseño de ingeniería, procesamiento de imágenes y tareas de agrupamiento;
  • El Algoritmo de Abejas sobresale en problemas donde es fundamental equilibrar la exploración global y la explotación local. Su reclutamiento explícito y búsqueda en el vecindario lo hacen efectivo para optimización de funciones, programación y asignación de recursos;
  • El Algoritmo de Murciélagos funciona bien en entornos dinámicos o ruidosos, gracias a sus parámetros adaptativos y ajuste de frecuencia. Comúnmente se utiliza en optimización continua, selección de características y ajuste de parámetros en aprendizaje automático.

Mientras que ACO es especialmente fuerte en problemas combinatorios discretos como enrutamiento y programación, y PSO es preferido para optimización continua con configuraciones de parámetros simples, estos algoritmos de enjambre alternativos ofrecen estrategias flexibles para una amplia gama de aplicaciones del mundo real. Comprender su inspiración y mecanismos permite seleccionar el algoritmo que mejor se adapte a la estructura y el espacio de búsqueda de su problema.

question mark

¿Qué afirmaciones describen correctamente las inspiraciones y mecanismos que distinguen a los algoritmos de Luciérnagas, Abejas y Murciélagos de ACO y PSO? Selecciona todas las que correspondan.

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 3

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 6.25

bookOtros Algoritmos de Enjambre (Luciérnaga, Abeja, Murciélago)

Desliza para mostrar el menú

Note
Definición

Algoritmo de luciérnagas (FA), algoritmo de abejas (BA) y algoritmo de murciélagos (BatA) son métodos de optimización basados en enjambres, inspirados en los comportamientos de luciérnagas, abejas melíferas y murciélagos.
Cada método simula diferentes estrategias de comunicación y movimiento para explorar y explotar el espacio de búsqueda de manera eficiente.

Algoritmo de Luciérnagas

El Algoritmo de Luciérnagas se inspira en el comportamiento de destellos de las luciérnagas. En la naturaleza, las luciérnagas utilizan destellos bioluminiscentes para atraer parejas o presas. En el algoritmo, cada luciérnaga representa una solución potencial y su brillo corresponde a la calidad de esa solución (aptitud). Las luciérnagas se sienten atraídas por otras que son más brillantes, lo que las lleva a moverse hacia mejores soluciones. Esta atracción disminuye con la distancia y está influenciada por la intensidad de la luz. A diferencia de ACO, que se basa en rastros de feromonas, o PSO, que utiliza actualizaciones de velocidad basadas en los mejores valores personales y globales, el movimiento en el Algoritmo de Luciérnagas está gobernado por la atractividad por pares y la aleatoriedad.

Algoritmo de Abejas

El Algoritmo de Abejas toma inspiración del comportamiento de búsqueda de alimento de los enjambres de abejas melíferas. Las abejas exploran su entorno para encontrar fuentes de alimento, comunican ubicaciones mediante danzas y reclutan a otras abejas para explotar zonas ricas en alimento. En el algoritmo, las abejas exploradoras buscan aleatoriamente, mientras que las abejas reclutadas explotan áreas prometedoras, equilibrando la exploración y la explotación. Este enfoque difiere de la comunicación indirecta de ACO y el aprendizaje social de PSO, ya que los Algoritmos de Abejas presentan un reclutamiento explícito y una división del trabajo entre los agentes.

Algoritmo de Murciélagos

El Algoritmo de Murciélagos modela el comportamiento de ecolocalización de los micromurciélagos. Los murciélagos emiten pulsos de sonido y escuchan los ecos para percibir su entorno y localizar presas. En el algoritmo, los murciélagos ajustan su tasa de emisión de pulsos, la intensidad del sonido y la velocidad para buscar soluciones óptimas. Las actualizaciones de posición y velocidad están influenciadas por una combinación de las mejores soluciones globales y recorridos aleatorios, con parámetros que cambian dinámicamente para equilibrar la exploración y la explotación. A diferencia de ACO y PSO, el Algoritmo de Murciélagos incorpora parámetros adaptativos de frecuencia e intensidad, reflejando la adaptación sensorial de los murciélagos reales.

Ejemplo: Regla de Movimiento de Luciérnagas

123456789101112131415161718192021222324
# Firefly Algorithm: Movement Rule import numpy as np def move_firefly(x_i, x_j, beta0, gamma, alpha): """ Move firefly i toward firefly j. x_i, x_j: positions of fireflies i and j (numpy arrays) beta0: attractiveness at r=0 gamma: light absorption coefficient alpha: randomization parameter Returns new position of firefly i. """ r = np.linalg.norm(x_i - x_j) beta = beta0 * np.exp(-gamma * r**2) rand = alpha * (np.random.rand(*x_i.shape) - 0.5) new_position = x_i + beta * (x_j - x_i) + rand return new_position # Example: Move firefly at [2.0, 3.0] toward [4.0, 5.0] x_i = np.array([2.0, 3.0]) x_j = np.array([4.0, 5.0]) new_x = move_firefly(x_i, x_j, beta0=1.0, gamma=1.0, alpha=0.2) print("Updated firefly position:", new_x)
copy

Elección del Algoritmo de Enjambre Adecuado

La selección del algoritmo de enjambre más adecuado depende de las características del problema de optimización y de las fortalezas únicas de cada enfoque.

  • El Algoritmo de Luciérnagas es ventajoso para problemas de optimización multimodal, donde existen múltiples soluciones óptimas. Su mecanismo de atracción por pares ayuda a escapar de óptimos locales, lo que lo hace adecuado para diseño de ingeniería, procesamiento de imágenes y tareas de agrupamiento;
  • El Algoritmo de Abejas sobresale en problemas donde es fundamental equilibrar la exploración global y la explotación local. Su reclutamiento explícito y búsqueda en el vecindario lo hacen efectivo para optimización de funciones, programación y asignación de recursos;
  • El Algoritmo de Murciélagos funciona bien en entornos dinámicos o ruidosos, gracias a sus parámetros adaptativos y ajuste de frecuencia. Comúnmente se utiliza en optimización continua, selección de características y ajuste de parámetros en aprendizaje automático.

Mientras que ACO es especialmente fuerte en problemas combinatorios discretos como enrutamiento y programación, y PSO es preferido para optimización continua con configuraciones de parámetros simples, estos algoritmos de enjambre alternativos ofrecen estrategias flexibles para una amplia gama de aplicaciones del mundo real. Comprender su inspiración y mecanismos permite seleccionar el algoritmo que mejor se adapte a la estructura y el espacio de búsqueda de su problema.

question mark

¿Qué afirmaciones describen correctamente las inspiraciones y mecanismos que distinguen a los algoritmos de Luciérnagas, Abejas y Murciélagos de ACO y PSO? Selecciona todas las que correspondan.

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 3
some-alt