Contenido
PalancaAlgoritmo de optimización de la alimentación bacteriana
El algoritmo de optimización de la alimentación bacteriana se inspira en el comportamiento de búsqueda de alimentos de grupos de bacterias como E. coli y M. xanthus. Específicamente, el algoritmo de optimización de la dieta bacteriana está inspirado en el comportamiento quimiotáctico de las bacterias que percibirán gradientes químicos en el medio ambiente (como nutrientes) y se acercarán o alejarán de señales específicas.
Las bacterias perciben la dirección de los alimentos en función de los gradientes de sustancias químicas en su entorno. Las bacterias secretan sustancias químicas atractivas y repelentes en el medio ambiente y pueden percibir de manera similar. En utilisant des mécanismes de locomotion (tels que les flagelles), les bactéries peuvent se déplacer dans leur environnement, se déplaçant parfois de manière chaotique (culbutage et rotation), et d'autres fois se déplaçant de manière dirigée, ce qui peut être appelé la natación.
Las células bacterianas se tratan como agentes en un entorno, utilizando su percepción de la comida y otras células como motivación para moverse, y el movimiento estocástico y la natación como movimiento para restablecerse. Dependiendo de las interacciones célula-célula, las células pueden invadir una fuente de alimento y / o pueden repelerse o ignorarse agresivamente entre sí.
La estrategia de procesamiento de información del algoritmo de optimización de la dieta bacteriana es permitir que las células proliferen estocásticamente y colectivamente hacia los óptimos. Esto se logra mediante una serie de tres procesos en una población de células simuladas: 1) Quimiotaxis: el costo de las células se reduce por la proximidad de otras células y las células se mueven una a una a lo largo de la superficie de costos, 2) Reproducción: solo células que han funcionado bien durante su vida pueden contribuir a la próxima generación, y 3) Eliminación-dispersión: las células se descartan y se insertan nuevas muestras aleatorias con baja probabilidad.
los pseudocódigo siguiente describe el algoritmo para minimizar una función de costo.
El próximo algoritmo proporciona el pseudocódigo para la quimiotaxis bacteriana y el comportamiento para el algoritmo de optimización de la alimentación bacteriana.
El costo de una bacteria se reduce por su interacción con otras células. Esta función de interacción (g ()) se calcula de la siguiente manera:
donde cell_k es una celda dada, d_attr y w_attr son coeficientes de atracción, h_repel y w_repel son coeficientes de repulsión, S es el número de celdas en la población, P es el número de dimensiones en un vector de posición de celda dado.
Los parámetros restantes del algoritmo son los siguientes Cell_s_num es el número de células mantenidas en la población, N_ed es el número de pasos de eliminación-dispersión, N_re es el número de pasos de reproducción, N_c es el número de pasos de quimiotaxis, N_s es el número de pasos de natación para una celda dada, Stepsize es un vector de dirección aleatoria con el mismo número de dimensiones que el espacio del problema con cada valor en [-1; 1], y P_ed es la probabilidad de que una celda esté sujeta a eliminación y dispersión.
Dados los bucles del algoritmo, se puede configurar de muchas formas para lograr diferentes comportamientos de búsqueda. Es común tener una gran cantidad de iteraciones de quimiotaxis y una pequeña cantidad de las otras iteraciones. Los coeficientes predeterminados para el comportamiento de enjambre (interacciones celda-celda) son los siguientes: d_attract = 0.1, w_attract = 0.2, h_repellant = d_attract y w_repellant = 10. El tamaño del paso suele ser una pequeña fracción del espacio de búsqueda l ', como 0.1.
Durante la reproducción, generalmente se elimina la mitad de la población con una métrica de salud baja y se conservan dos copias de cada miembro de la primera mitad (salud alta) de la población. La probabilidad de eliminación y dispersión (p_ed) se define generalmente como bastante alta, como 0,25.