Colonia de abejas artificiales y sus aplicaciones a problemas de optimización.

Estás leyendo la publicación: Colonia de abejas artificiales y sus aplicaciones a problemas de optimización.

Muchos fenómenos naturales son la motivación para crear algoritmos de optimización basados ​​en la población. Dos formas principales de algoritmos basados ​​en la población son los algoritmos de evolución y de inteligencia de enjambre. El algoritmo de colonia de abejas artificiales (ABC) es una técnica metaheurística basada en enjambres que se utiliza para la optimización de problemas numéricos. Se inspiró en el inteligente comportamiento de búsqueda de alimento de las abejas melíferas. El modelo se compone de tres componentes clave: abejas forrajeras empleadas y desempleadas, así como fuentes de alimento. En este artículo, comprenderemos el funcionamiento central del algoritmo de colonia de abejas y su utilización en la optimización de problemas. Los siguientes son los temas a tratar.

Tabla de contenido

  1. Acerca de la colonia de abejas
  2. Acerca de la colonia de abejas artificiales (ABC)
  3. Trabajo de ABC
  4. ¿Cómo se utiliza para optimizar problemas?
  5. Casos de uso de la industria en tiempo real de ABC

Para comprender el algoritmo ABC, es necesario comprender Bee Colony.

Acerca de la colonia de abejas

Las fuentes de alimentos, las abejas empleadas, las abejas desempleadas, el comportamiento de búsqueda de alimento y los bailes pueden resumirse en los cerebros de las abejas melíferas genuinas.

Fuentes de comida

La abeja elige una determinada flor (fuente de alimento) cuando busca alimento. La cantidad de néctar en esta fuente de alimento, los esfuerzos para recolectar este néctar y la distancia a recorrer y en qué dirección se encuentra desde el nido. Esta información que la abeja recopila de este suministro de alimentos. Con el fin de facilitar y simplificar, Bee mantiene esta información como una cantidad única que podría denominarse rentabilidad general para esta fuente de alimentos en particular.

¿Está buscando un repositorio completo de bibliotecas de Python utilizadas en ciencia de datos, echa un vistazo aquí.

abejas empleadas

Cierto grupo de abejas utiliza las fuentes de alimento disponibles. Estas abejas se conocen como abejas empleadas, y cada una de ellas mantiene la rentabilidad del suministro de alimentos vinculado, es decir, la riqueza, la distancia y la orientación de la colmena.

abejas desempleadas

Con cierta probabilidad, las abejas empleadas comunican su información con otro grupo de abejas conocidas como abejas desempleadas. Las abejas desempleadas están a cargo de resumir la información de las abejas empleadas y elegir una fuente de alimento para explotar. Estas abejas desempleadas se separan además en dos grupos.

  • El Abejas espectadoras son las abejas que recopilan información de los trabajadores contratados de la colonia y, después de analizar los datos, construyen una fuente de alimento para la colonia.
  • El abejas exploradoras están a cargo de localizar nuevas fuentes de alimento alrededor de la colmena.

Comportamiento de búsqueda de alimento

El comportamiento de búsqueda de alimento es el atributo más importante de un enjambre de abejas melíferas. Durante la fase de forrajeo, la abeja sale de la colmena y comienza a buscar comida. Cuando una abeja encuentra un suministro de alimentos, extrae y almacena el néctar. Luego, el proceso de elaboración de la miel comienza con la producción de enzimas y, después de llegar a la colmena, el néctar se descarga en celdas vacías. Finalmente, la abeja usa varios tipos de danza para transmitir el conocimiento a otras abejas en la colmena.

🔥 Recomendado:  Cómo encontrar el precio óptimo para cobrar por sus productos

Bailar

Para comunicarse con otras abejas en la colmena sobre la información recopilada sobre las fuentes de alimentos, la abeja empleada realiza un baile en varias partes del área de la colmena. Las abejas empleadas ejecutan uno de los siguientes tipos de baile según la rentabilidad del suministro de alimentos.

  • El baile redondo se hace cuando la fuente de alimento está cerca de la colmena.
  • baile de meneo notifica a otras abejas sobre la dirección del suministro de alimentos en relación con la luz del sol. Esto también indicó que la fuente de alimento está lejos de la colmena. La distancia entre la fuente de alimento y la colmena es proporcional a la velocidad del baile.
  • Si una abeja tarda mucho en descargar el néctar, entonces comienza a temblarindicando que se desconoce la rentabilidad actual del suministro de alimentos.

Acerca de la colonia de abejas artificiales (ABC)

El comportamiento de búsqueda de alimento de las abejas melíferas inspiró el algoritmo ABC. El enjambre de abejas melíferas es un ejemplo de enjambre natural que busca alimento de manera coordinada e inteligente. El enjambre de abejas melíferas tiene varias características, incluida la capacidad de transmitir información, memorizar el entorno, retener y distribuir conocimientos y tomar decisiones basadas en esa información. El enjambre se adapta a los cambios en el entorno mediante la asignación dinámica de trabajos y el progreso a través del aprendizaje y la enseñanza social.

El algoritmo ABC es un método de optimización basado en la población que evalúa la aptitud, por lo tanto, se predice que la población de soluciones candidatas gravitará hacia las áreas de mejor aptitud del espacio de búsqueda. A través de la motivación natural, los algoritmos de optimización basados ​​en la población encuentran soluciones casi óptimas para problemas de optimización desafiantes.

Trabajo de ABC

Los algoritmos de optimización basados ​​en enjambres utilizan enfoques colaborativos de prueba y error para identificar soluciones. Los algoritmos de optimización ABC están impulsados ​​por el comportamiento de aprendizaje entre pares de las colonias sociales. ABC consiste en una población de soluciones potenciales y encuentra la solución óptima con un proceso iterativo.

Los dos factores esenciales que determinan el desarrollo de una población ABC son la variación y la selección. El proceso de variación explora diversas secciones del espacio de búsqueda. El procedimiento de selección garantiza que se utilicen las experiencias pasadas.

El algoritmo ABC se divide en cuatro fases: la fase de inicialización, la fase de abejas empleadas, el explorador y la fase de abejas espectadoras.

En la inicialización de la población, ABC genera una población de soluciones uniformemente distribuida donde cada solución es un vector dimensional. El número de dimensiones depende del número de variables en el problema de optimización para una fuente de alimento particular en la población.

Las abejas empleadas modifican la solución actual en función de la información de las experiencias individuales y el valor de aptitud de la nueva solución. Si el valor de aptitud de la nueva fuente de alimento es mayor que el de la antigua fuente de alimento, la abeja actualiza la posición con la nueva y descarta la anterior. La posición se actualiza utilizando los vectores dimensionales definidos anteriormente en la fase inicial con el tamaño de los pasos necesarios para obtener las posiciones actualizadas. El tamaño del paso es un número aleatorio entre -1 y 1.

🔥 Recomendado:  Un tutorial práctico sobre la predicción del valor de vida útil del cliente (CLTV)

El diagrama adjunto muestra el procedimiento de actualización de posición en la fase de abeja empleada. Se utiliza un espacio de búsqueda bidimensional. El cuadro resaltado representa la dirección elegida al azar, mientras que Xi muestra la posición actual de una abeja. Xk es la abeja elegida al azar. La dirección de una abeja aleatoria se resta de la misma dirección del grupo de abejas especificado en esta fase. Esta diferencia se ve agravada por el tamaño del paso, que es un número entero aleatorio. Finalmente, la dimensión de la nueva posición de comida ‘V’ se calcula sumando esta cantidad al vector dimensional de Xi. Este vector se forma en la vecindad de Xi y tiene las mismas dimensiones que Xi.

Con las abejas espectadoras en la colmena, las abejas empleadas comunican la información de aptitud (néctar) de las soluciones actualizadas (fuentes de alimento) así como su información de ubicación. Las abejas espectadoras evalúan los datos proporcionados y eligen una solución en función de su probabilidad de aptitud. Al igual que con la abeja empleada, la abeja observadora modifica su ubicación de memoria y evalúa la idoneidad de la posible fuente. La abeja memoriza la nueva ubicación y olvida la anterior si la aptitud es mayor que la anterior.

Se considera que la posición de una fuente de alimentos se abandona si no se actualiza durante una cantidad predefinida de ciclos. La abeja de la fuente de alimento abandonada se transforma en una abeja exploradora, y la fuente de alimento se reemplaza con una fuente de alimento seleccionada al azar dentro del espacio de búsqueda. El número de ciclos establecido, conocido como límite de abandono en ABC, es un parámetro crítico de control.

¿Cómo se utiliza para optimizar los problemas?

Con el fin de personalizar el algoritmo ABC para la resolución de problemas. El enfoque de manejo restringido de Deb se utiliza en lugar del procedimiento de selección codicioso del algoritmo ABC, ya que el método de Deb solo tiene tres criterios heurísticos. La técnica de Deb emplea un operador de selección de torneo, que compara dos soluciones a la vez y siempre impone los siguientes requisitos.

  • Cualquier solución viable es preferible a una solución no factible.
  • Entre las dos soluciones factibles se prefiere la que tiene un valor de función objetivo más alto.
  • La que tiene una violación de restricción más baja se prefiere entre las dos alternativas no factibles.

El método ABC no considera que la población inicial sea viable ya que la inicialización con soluciones factibles es un procedimiento que requiere mucho tiempo. En ciertas circunstancias, es imposible construir una solución factible al azar. Debido a que se usaron los principios de Deb en lugar de la selección codiciosa, la estructura del algoritmo ya dirige las soluciones a un área viable en el proceso de ejecución. El proceso de creación de exploradores del algoritmo proporciona un mecanismo de diversidad que permite que individuos nuevos y probablemente imposibles ingresen a la población.

Casos de uso de la industria en tiempo real de ABC

El algoritmo ABC se ha vuelto prominente debido a su robustez y facilidad de aplicación. A continuación se enumeran algunas aplicaciones.

Sistema de recomendación utilizado en Facebook

El objetivo del método sugerido era encontrar eficientemente los recursos de aprendizaje apropiados. El ABC se utilizó para crear un sistema de recomendación de material auxiliar personalizado en Facebook, que sugeriría elementos auxiliares relevantes para un estudiante en función de su estilo de aprendizaje, intereses y dificultad.

🔥 Recomendado:  Las 13 aplicaciones más descargadas de todos los tiempos en 2023

Optimización de la configuración de la red

El algoritmo se usó para resolver el problema de reconfiguración de la red en un sistema de distribución radial con el fin de reducir la pérdida de energía real, mejorar el perfil de voltaje y equilibrar la carga del alimentador, todo mientras se cumple con el requisito de la estructura de la red radial de que todas las cargas estén encendidas. En términos de calidad de solución y eficiencia informática, ABCA produjo resultados superiores a los otros enfoques probados.

Optimización de la calibración de la cámara

El ABCA se utilizó para resolver la transformación lineal directa (DLT), un enfoque de calibración de cámara que establece una relación lineal entre las coordenadas de objetos 3D y los planos de imagen 2D. La salida del algoritmo ABCA se comparó con la salida del algoritmo DE.

Coincidencia de plantilla de imagen

El objetivo era ubicar un patrón o imagen de referencia (plantilla) de un elemento en una escena de paisaje de destino que se ha movido, escalado, rotado y/o parcialmente oscurecido. Como consecuencia, la imagen de referencia especificada se ubicará en la imagen del paisaje de destino. Los experimentos con imágenes en escala de grises y en color revelaron que el ABC es más rápido y más preciso que otros algoritmos evolutivos.

Segmentación de imágenes médicas

La segmentación de imágenes de resonancia magnética (MR) del cerebro es compleja y se considera un gran desafío en el procesamiento de imágenes. Se utilizó el algoritmo ABC con el algoritmo fuzzy C-mean (FCM) para segmentar las imágenes cerebrales. El objetivo de utilizar el algoritmo ABC era reducir el tiempo así como alcanzar una calidad superior a la obtenida por el algoritmo anterior.

Conclusión

El algoritmo ABC no se ve afectado por la creciente complejidad de los problemas ni por los valores iniciales de los parámetros. ABC tiene la falla de la convergencia temprana, lo que resulta en la pérdida de las capacidades de exploración y explotación de ABC. Con este artículo hemos entendido el funcionamiento y la semejanza del algoritmo de colonia de abejas artificiales con la colonia de abejas y su utilización en la optimización de problemas.

Referencias

Tabla de Contenido