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).