viernes, 29 de septiembre de 2017

Inteligencia de enjambre:




Elementos de la investigación
La inteligencia de enjambre es un creciente campo de investigación bastante activo y sus aplicaciones fuera de Internet son múltiples. Las técnicas de inteligencia de enjambre se han aplicado a muchos tipos diferentes de problemas. Los ejemplos van desde la muy general, el gráfico como colorante (Costa, 1995) o la satisfacción de restricciones (ver Zlochin de 2002, para una encuesta sobre este tema), a las aplicadas a problemas muy particulares como la asignación de tareas para los robots en una fábrica (Morley , 1996), la expedición de una flota de camiones (Gambardella, 1999), o incluso el diseño de un calendario conjunto de cursos universitarios (Socha, 2002). Hay un buen estudio de aplicaciones de robótica, junto con las explicaciones de los comportamientos diferentes de hormigas que los inspiraron (alimentación de los alimentos para el transporte colectivo o la construcción de nidos).

Aplicaciones a partir de agentes virtuales
La mayoría de las aplicaciones basadas en fenómenos de la inteligencia de enjambre se basan en grupos de agentes virtuales. Ellos muestran buenos resultados cuando se aplica a los problemas que se distribuyen espacialmente y cambian con el tiempo. Como muchos de los problemas de Internet se distribuyen y variables en el tiempo por la naturaleza, basado en la optimización de enjambre y técnicas de resolución de problemas se presenta con buenos resultados cuando se aplica a ellos. Si nos centramos en aplicaciones orientadas a la red, la mayoría están relacionados con problemas de enrutamiento. Aunque ha habido mucha investigación sobre este tema (véase Steenstrup, 1995 para una buena encuesta), las técnicas de inteligencia de enjambre se adaptan especialmente a los grupos de los problemas a medida o que tienen unas ciertas similitudes unos de otros y que son inherentemente dinámicos y distribuidos. En redes de paquetes como Internet, cada paquete puede seguir una ruta diferente hacia su destino. La función principal de una red de paquetes es asegurar la distribución eficiente de información entre sus usuarios. Hay tres cuestiones principales que deben tenerse en cuenta: el control de la congestión, la seguridad de la comunicación, y de enrutamiento. Ha habido muchos enfoques de enjambre basado en el problema de enrutamiento (ver Dorigo, 2004 para una encuesta). Nos centraremos aquí en el algoritmo AntNet en la forma que lo explica Dorigo (2004), ya que es un ejemplo representativo y muestra todas las características principales de los enfoques basados en enjambre (los agentes simples, la comunicación indirecta, y el comportamiento de enjambre de forma emergente). Se pueden encontrar más algoritmos de optimización en Bonabeau (1999) y Dorigo (2004).

El algoritmo AntNet
Es distribuido y adaptativo, aplicando la distancia-vector al algoritmo de enrutamiento. Es un caso especial del algoritmo ACO sobre la base de hormigas artificiales y deposición de las feromonas. Los agentes de AntNet , al mismo tiempo, exploran la información en la red y el intercambio de la recogida. La comunicación entre los agentes es indirecta y asincrónica, mediada por la propia red (características para investigaciones en conceptos como estigmergía y autoorganización). En AntNet (Paper: AntNet: Distributed Stigmergetic Control for Communications Networks). En este artículo se presenta un enfoque diferente y cómo optimizar el aprendizaje de adaptación ante una situación o problema. Cada nodo mantiene dos tablas diferentes (aparte de la tabla de enrutamiento): una tabla de feromona, T, y una red de tráfico de modelo, M. Su construcción y el mecanismo de actualización se explica a continuación (Gutiérrez, 2007): AntNet utiliza dos tipos de agentes artificiales en las hormigas: las hormigas adelantadas y las hormigas retrasadas. Las hormigas son independientes y no hay ni coordinación ni comunicación directa entre ellas. Las hormigas de adelante se generan en cada nodo, y se dirigen a otros nodos en relación con el tráfico generado del nodo: las hormigas de adelante se van hacia los nodos donde se está más de tráfico han enviado. Comparten las colas normales utilizados por los paquetes de datos, por lo que la experiencia de la misma carga de tráfico. Almacenan el camino para viajar hasta que llegan a su destino. Las hormigas con versiones anteriores se generan cuando una hormiga de adelante llega a su destino, y sigue el camino almacenados por la hormiga hacia adelante correspondiente. No todas las hormigas de adelante lleguen a su destino, como las hormigas que realizan un ciclo (visita un nodo ya visitado), que es más de la mitad de la edad de la hormiga que descartan. Las hormigas con versiones anteriores de uso de colas de alta prioridad en su camino de regreso.
Después de llegar a cada nodo, las hormigas seleccionan su próximo salto probabilístico de acuerdo con la matriz de feromonas (evitando, si es posible, los nodos que ya han visitado). Las feromonas de la matriz tienen un número de columnas igual al número de nodos en la red, y un número de filas igual al número de enlaces salientes (vecinos) del nodo. Todas las columnas suman uno y, para un determinado destino, que muestran la probabilidad (sin corregir) que una hormiga de adelante seguirá ese enlace. Esta probabilidad se corrige mediante una regla heurística que le da una mayor probabilidad a los vínculos con colas vacías de salida, así que el sistema es reactivo a las fluctuaciones de carga de la red. La misión de las hormigas a seguir es almacenar la ruta seguida a su destino y para registrar el tiempo necesario para llegar a todos los nodos a lo largo de ella. La misión de las hormigas de atrás es la actualización de las feromonas y las matrices en el modelo de tráfico.

Otros algoritmos.
Existen otros algoritmos de optimización en estadios de enjambre:
Optimización de la colonia de la hormiga (Ant Colony Optimization)
Optimización del enjambre de la partícula (Particle Swarm Optimization)
Búsqueda estocástica de la difusión (Stochastic diffusion search)
Gravitacional algoritmo de búsqueda (Gravitational search algorithm)
Gotas de agua inteligentes (Intelligent Water Drops)
Rio dinámico de formación (River formation dynamics)
Existen muchos más algoritmos que optimizan los procesos y acciones de emjambre (swarming).

Inteligencia de enjambre aplicada a grupos sociales
Hay varias aplicaciones que se basan en personas reales en lugar de agentes virtuales, pero sin embargo muestran características de los comportamientos de enjambre. Ejemplo de ello es cuando una gran cantidad de personas que interactúan sin ninguna comunicación directa entre ellos, la comunicación indirecta a través de algún tipo de entorno (de aprendizaje), y sus patrones emergentes, no se relacionan con comportamientos individuales. Hay dos formas que se pueden analizar en grupos sociales desde esta perspectiva:

1) El filtrado colaborativo
Se basa en la premisa de que las personas que buscan información debe ser capaz de hacer uso de lo que otros ya han encontrado y evaluado.Los sistemas tradicionales de filtrado colaborativo (Dron, 1999) almacena las preferencias y las evaluaciones de los usuarios con respecto a varios elementos (de las novelas y canciones, a los recursos de aprendizaje en una clase). Esas preferencias permiten a otros usuarios a ver lo que sus compañeros preferidos, y utilizar esta información como guía para sus acciones. En los últimos años, el crecimiento del comercio electrónico ha estimulado el uso de sistemas de filtrado de colaborar como los sistemas de recomendación. Por lo tanto, el objetivo de un sistema moderno de filtrado colaborativo puede enunciarse como la predicción de la utilidad de un determinado tema para un usuario particular, sobre la base de gustos anteriores del usuario y las opiniones de otros usuarios con gustos similares.Modernos sistemas de filtrado colaborativo puede ser clasificados en dos tipos: basados en memoria y basados en su modelo. Los primeros en utilizar una base de datos de usuario-elemento para generar una predicción. Estos sistemas utilizan técnicas estadísticas para encontrar un conjunto de usuarios (vecinos) que tienen un perfil similar de acuerdo con el usuario de destino. Modelo basado en algoritmos de filtrado colaborativo proporcionan recomendaciones para un tema concreto, en primer lugar el desarrollo de un modelo de valoraciones. Algoritmos en esta categoría adoptan un enfoque probabilístico y visualizan el proceso de filtrado colaborativo como calcular el valor esperado de una predicción de usuario, teniendo en cuenta su calificación en otros artículos. El proceso de construcción de modelos se realiza mediante diferentes técnicas, tales como las redes bayesianas, el análisis semántico latente o los enfoques basados ​​en reglas.

2) Secuenciación adaptativa de colaboración.
La secuenciación de adaptación es uno de los principales retos en la actualidad en el ámbito de la educación basada en la Web o en cursos virtuales a distancia. Se puede afirmar que el problema de seleccionar el orden en que se presentan un conjunto de unidades para el estudiante (en una secuencia) con el fin de hacer su aprendizaje lo más exitosa posible, teniendo en cuenta las capacidades y necesidades de cada estudiante (personalización). Estos estudiantes diferentes maximizan su aprendizaje con diferentes secuencias de actividades: algunos se beneficiarán de una secuencia con un enfoque de arriba hacia abajo, mientras que otros prefieren lo contrario, secuencias más largas de ejercicios para los temas que se encuentran especialmente difícil puede ser preferible, así como más corto para los conjuntos de temas que ya conocen, y algunos prefieren actividades con una gran cantidad de texto escrito, mientras que otros aprenden más con los recursos gráficos, etc. Aunque los estudiantes diferentes prefieren diferentes secuencias de aprendizaje, sus preferencias muestran cierto grado de correlación, como en el caso anterior. Por otra parte, el problema de la secuenciación es una de optimización de la ruta (“encontrar el camino que maximiza el aprendizaje”) como hace las técnicas de swarming planteadas aquí.

Futuro
En cualquier caso, muchas de las aplicaciones más prometedoras de las técnicas de inteligencia de enjambre se están desarrollando en Internet y proceden del ámbito enjambre social. Filtrado colaborativo es un campo activo en algunas aplicaciones comerciales, como el sistema de recomendación Amazon.com(Linden, 2003), mientras que la investigación sobre la secuencia de colaboración puede conducir a una mejor comprensión de la forma en que el usuario navega por la Web.

 Aunque el problema de la secuenciación trae similitudes con otros problemas de optimización de ruta, existen diferencias que deben tenerse en cuenta. En primer lugar, el camino tiene que ser optimizado para cada usuario. El camino que es “óptimo” para todo el mundo puede no ser óptima para cada estudiante. Esto es especialmente crítico para los sistemas e-learning. El enfoque adoptado por Gutiérrez (2006) es una mezcla de ambos en colaboración tradicionales de filtrado y sistemas de secuenciación de colaboración, dando a los estudiantes información sobre el desempeño de sus pares y las medidas adoptadas por ellas (como grupo, no individualmente).

No hay comentarios:

Publicar un comentario