This article may rely excessively on sources too closely associated with the subject, potentially preventing the article from being verifiable and neutral. (April 2017) |
This article relies largely or entirely on a single source. (April 2017) |
En informática e investigación de operaciones , el algoritmo de colonia de abejas artificial ( ABC ) es un algoritmo de optimización basado en el comportamiento de búsqueda de alimento inteligente del enjambre de abejas, propuesto por Derviş Karaboğa ( Universidad Erciyes ) en 2005. [1]
En el modelo ABC, la colonia consta de tres grupos de abejas: abejas empleadas, observadoras y exploradoras. Se supone que solo hay una abeja empleada artificial por cada fuente de alimento. En otras palabras, el número de abejas empleadas en la colonia es igual al número de fuentes de alimento alrededor de la colmena. Las abejas empleadas van a su fuente de alimento y regresan a la colmena y bailan en esta área. La abeja empleada cuya fuente de alimento ha sido abandonada se convierte en exploradora y comienza a buscar una nueva fuente de alimento. Los observadores observan los bailes de las abejas empleadas y eligen fuentes de alimento en función de los bailes. Los pasos principales del algoritmo se detallan a continuación: [1]
En ABC, un algoritmo basado en la población, la posición de una fuente de alimento representa una posible solución al problema de optimización y la cantidad de néctar de una fuente de alimento corresponde a la calidad (aptitud) de la solución asociada. El número de abejas empleadas es igual al número de soluciones en la población. En el primer paso, se genera una población inicial distribuida aleatoriamente (posiciones de fuentes de alimento). Después de la inicialización, la población se somete a repetir los ciclos de los procesos de búsqueda de las abejas empleadas, observadoras y exploradoras, respectivamente. Una abeja empleada produce una modificación en la posición de la fuente en su memoria y descubre una nueva posición de fuente de alimento. Siempre que la cantidad de néctar de la nueva sea mayor que la de la fuente anterior, la abeja memoriza la nueva posición de la fuente y olvida la anterior. De lo contrario, mantiene la posición de la anterior en su memoria. Después de que todas las abejas empleadas completen el proceso de búsqueda, comparten la información de la posición de las fuentes con las observadoras en el área de baile. Cada observador evalúa la información sobre el néctar que ha obtenido de todas las abejas empleadas y, a continuación, elige una fuente de alimentación en función de la cantidad de néctar de las fuentes. Como en el caso de la abeja empleada, produce una modificación en la posición de la fuente en su memoria y comprueba la cantidad de néctar. Si su néctar es mayor que el de la abeja anterior, la abeja memoriza la nueva posición y olvida la anterior. Se determinan las fuentes abandonadas y se producen nuevas fuentes al azar para que sean reemplazadas por las abandonadas por exploradores artificiales.
El algoritmo de colonias de abejas artificiales (ABC) es una técnica de optimización que simula el comportamiento de búsqueda de alimento de las abejas melíferas y se ha aplicado con éxito a diversos problemas prácticos [ cita requerida ] . ABC pertenece al grupo de algoritmos de inteligencia de enjambre y fue propuesto por Karaboga en 2005.
Un grupo de abejas, llamado enjambre, puede realizar tareas con éxito mediante la cooperación social. En el algoritmo ABC, hay tres tipos de abejas: abejas empleadas, abejas observadoras y abejas exploradoras. Las abejas empleadas buscan alimento alrededor de la fuente de alimento en su memoria; mientras tanto, comparten la información de estas fuentes de alimento con las abejas observadoras. Las abejas observadoras tienden a seleccionar buenas fuentes de alimento de las que encuentran las abejas empleadas. La fuente de alimento que tenga mayor calidad (aptitud) tendrá una mayor probabilidad de ser seleccionada por las abejas observadoras que la de menor calidad. Las abejas exploradoras se trasladan de unas pocas abejas empleadas, que abandonan sus fuentes de alimento y buscan otras nuevas.
En el algoritmo ABC, la primera mitad del enjambre está formada por abejas empleadas y la segunda mitad por abejas observadoras.
El número de abejas empleadas o abejas observadoras es igual al número de soluciones en el enjambre. El ABC genera una población inicial distribuida aleatoriamente de soluciones SN (fuentes de alimento), donde SN denota el tamaño del enjambre.
Sea la solución representada en el enjambre, donde es la dimensión tamaño.
Cada abeja empleada genera una nueva solución candidata en las proximidades de su posición actual, según la siguiente ecuación:
donde es una solución candidata seleccionada aleatoriamente ( ), es un índice de dimensión aleatorio seleccionado del conjunto , y es un número aleatorio dentro de . Una vez que se genera la nueva solución candidata , se utiliza una selección codiciosa. Si el valor de aptitud de es mejor que el de su padre , entonces actualice con ; de lo contrario, manténgalo sin cambios. Después de que todas las abejas empleadas completen el proceso de búsqueda; comparten la información de sus fuentes de alimento con las abejas observadoras a través de bailes de meneo. Una abeja observadora evalúa la información de néctar tomada de todas las abejas empleadas y elige una fuente de alimento con una probabilidad relacionada con su cantidad de néctar. Esta selección probabilística es realmente un mecanismo de selección de ruleta que se describe como la ecuación a continuación:
donde es el valor de aptitud de la solución en el enjambre. Como se ve, cuanto mejor sea la solución , mayor será la probabilidad de que se seleccione la fuente de alimento. Si no se puede mejorar una posición a lo largo de un número predefinido (llamado límite) de ciclos, entonces se abandona la fuente de alimento. Supongamos que la fuente abandonada es , y luego la abeja exploradora descubre una nueva fuente de alimento que se reemplazará con la siguiente ecuación:
donde es un número aleatorio dentro de una distribución normal [¿ fuente no confiable? ] , y son los límites inferior y superior de la dimensión, respectivamente.
{{cite journal}}
: Requiere citar revista |journal=
( ayuda )