Vous êtes sur la page 1sur 5

Alumno: Rojas Suarez, Juan Gabriel

Introducción a los algoritmos adaptativos en redes de


telecomunicaciones
Del esquema mostrado:

Fig.1. Taxonomía de protocolos de enrutamiento para redes cableadas. Imagen extraída de [Farooq,
2009], página 26

Se describirá los conceptos básicos de los algoritmos:

Artificial intelligence community

 Q-routing algorithm:

Una definición del problema de enrutamiento puede ser: el enrutamiento óptimo de paquetes en
una red que cambia dinámicamente con patrones de uso impredecibles.

El enrutamiento de Q es una variación del algoritmo Q-learning y trata de enfrentar este problema.

En el algoritmo, un conjunto de políticas decide a qué nodo adyacente encaminar un paquete para
minimizar su tiempo de viaje completo. Por lo tanto, el rendimiento de la política se puede medir
solo después de que el paquete haya llegado a su destino. De esta manera, no hay ninguna
recompensa inmediata a una decisión o una posibilidad de evaluar directamente una política. Sin
embargo, al usar las ideas de Q-learning, las actualizaciones de una política se pueden hacer más
rápido y utilizando solo información local que propaga el gráfico de "abajo hacia arriba".

 PQ-routing algorithm (predictive Q-routing):

Como el objetivo es minimizar el tiempo total de entrega de un paquete en un entorno no


estacionario donde cada nodo no tiene conocimiento previo del entorno y solo se permite la
comunicación local entre los nodos vecinos.

El algoritmo de enrutamiento Q debe considerar la compensación entre la exploración y la


explotación. La exploración del "espacio de estado" es esencial para aprender una buena política,
sin embargo, la exploración continua sin poner en práctica el conocimiento aprendido no sirve de
nada. Esto resulta en dividir el aprendizaje en 2 fases: exploración en la que las acciones se
seleccionan al azar y explotación en la que la acción elige el mínimo entre vecinos de un nodo.

Sin embargo, los problemas que surgen de la Q-enrutamiento algoritmo son:

1. Problema de histéresis: el algoritmo no se adapta a la nueva ruta óptima cuando la carga se


reduce, porque una vez que se selecciona una ruta más larga, el "selector mínimo" no puede notar
la disminución en otras rutas.

2. El enrutamiento Q no siempre puede encontrar las rutas más cortas con poca carga, es decir, si
existe una ruta más larga con valores Q menores que el camino más corto, entonces el algoritmo no
podrá encontrar accesos directos a la ruta más corta.

3. La exploración aleatoria tiene efectos negativos sobre la congestión.

Es posible mezclar ambas fases en una usando el concepto epsilon - codicioso. Por lo tanto, se da
un esquema probabilístico para elegir los siguientes nodos que se desplaza gradualmente de una
fase a la otra. Sin embargo, dado que las redes cambian dinámicamente (tráfico y topología), la
exploración debe ser continua. Por lo tanto, se necesita un algoritmo que se adapte entre las fases.

El algoritmo de enrutamiento Q predictivo mantiene las mejores experiencias (los mejores valores
de Q) aprendidas y las reutiliza de acuerdo con su predicción probabilística.

Intuición: dada una baja carga de red, la política óptima es la política de enrutamiento de ruta más
corta. Si la carga aumenta, la política de ruta más corta no es la óptima ya que estas rutas se
encuentran congestionadas. Sin embargo, si las rutas congestionadas no se utilizan durante un
período de tiempo, se "recuperarán" y se convertirán en "buenos candidatos". Por lo tanto, el
algoritmo debería "sondear" esas rutas a una frecuencia que depende del nivel de congestión y la
velocidad de recuperación de la ruta.

Evolutionary algorithms

 SynthECA: A Synthetic Ecology of Chemical Agents

La autoorganización se asocia cada vez más con la resolución de problemas de manera


descentralizada o distribuida. Los sistemas occidentales explican que la solución de problemas
complejos con agentes simples es posible y que dichos sistemas son extremadamente robustos a
los cambios en su entorno y a la pérdida de agentes individuales. Además, estos sistemas se
autogestionan, no requieren ningún "relojero ciego" para garantizar que el sistema funcione de
manera eficiente.

Los sistemas que dependen de la interacción de un gran número de agentes simples para sus
propiedades de resolución de problemas están en clara contradicción con los sistemas de agentes
monolíticos que han sido objeto de una considerable investigación. La fragilidad de los sistemas
simbólicos, frente a situaciones imprevistas y el fracaso de los agentes individuales proporcionan
motivación para la investigación documentada. El comportamiento de insectos sociales y los
sistemas de enjambres en general, proporcionan la inspiración para la investigación, al igual que la
creciente importancia de la informática orientada a la activación.

Este algoritmo propone una arquitectura de agente que se basa solo en la comunicación local, todos
los algoritmos que no tienen conocimiento de la escena global. La arquitectura del agente se analiza
en términos de los requisitos necesarios para apoyar la resolución de problemas en el dominio de
Comunicaciones, específicamente enrutamiento y localización de fallas, demuestran la utilidad de
la arquitectura propuesta con algoritmos que demuestran la autogestión de enjambres de agentes.

 ASGA (Ant System with Genetic Algorithms):

El AS (Ant Search) se caracteriza por una serie de parámetros de control tales como el número de
iteraciones del algoritmo, el número de agentes (hormigas) utilizados por iteración, la sensibilidad
al costo de un enlace en la red y la sensibilidad a la concentración de feromonas. El sistema ASGA
permite que los parámetros que controlan la sensibilidad al costo de un enlace de red y la
sensibilidad a la concentración de feromonas se adapten a medida que avanza el algoritmo de
búsqueda.

El sistema ASGA integra un algoritmo genético con un sistema “ant” para controlar el proceso de
adaptación. Cada agente en el sistema ASGA codifica la sensibilidad al enlace y la sensibilidad a los
parámetros de feromonas

 DGA (Dijkstra with a genetic algorithm):

Es un algoritmo de reencaminamiento rápido y escalable que se adapta a las redes dinámicamente


cambiantes. El algoritmo DGA, integra el algoritmo de ruta más corta de Dijkstra con el algoritmo
genético. El algoritmo de Dijkstra se usa para definir la matriz predecesora que facilita el proceso de
inicialización del algoritmo genético. Luego, el algoritmo genético sigue encontrando las mejores
rutas con los operadores genéticos apropiados en situaciones de tráfico dinámico. Los resultados
experimentales demuestran que DGA produce rutas con menos tiempo de viaje y carga
computacional que los enfoques basados en algoritmos genéticos puros, así como el algoritmo de
Dijkstra en problemas de enrutamiento a gran escala.

 GARA (Genetic Adaptive Routing Algorithm):

El enrutamiento de tráfico en las redes de comunicación informática es uno de los problemas de


optimización más desafiantes. Un algoritmo de enrutamiento se emplea mediante una estrategia
de enrutamiento que debe cumplir requisitos independientes y conflictivos para seleccionar la ruta
de un origen a un destino. Se ha desarrollado una gran cantidad de estrategias, dos categorías de
estrategia clave son la ruta estática (fija) y la dinámica (adaptativa).
El algoritmo presenta una nueva taxonomía de enrutamiento y propone un nuevo esquema de
algoritmos de enrutamiento adaptativo basados en algoritmos genéticos artificiales, denominados
algoritmos de enrutamiento genético (GRA), en donde el tráfico se enruta mediante la aplicación de
un conjunto de operadores genéticos que constituyen un método para encontrar la ruta de menor
costo y de la mayoría de las rutas alternativas entre un nodo fuente y un nodo de destino en una
red informática.

Los algoritmos que podemos encontrar en la literatura para redes informáticas son: el algoritmo de
enrutamiento adaptativo genético (GARA), el algoritmo de enrutamiento genético paralelo síncrono
(SPGRA) y el algoritmo de enrutamiento genético paralelo asíncrono (ASPGRA).

Los algoritmos de enrutamiento genético se pueden usar con éxito para manejar el problema de
enrutamiento.

Ofrecen un rendimiento adaptativo atractivo que es mejor que los métodos existentes para redes
de número moderado de nodos donde se pueden encontrar todas las rutas alternativas

Swarm intelligence:

 ABC (AntBased Control):

Es la primera aplicación de un algoritmo ACO (Ant Colony Optimization) en tareas de enrutamiento,


concretamente al enrutamiento de llamadas en redes telefónicas. El hecho de considerar una red
telefónica en lugar de una red de conmutación de paquetes da lugar a un escenario de
características diferentes. Aun así, el impacto que tuvo en su momento provocó un aluvión de
nuevas propuestas dedicadas al enrutamiento de paquetes de datos. ABC (Artificial Bee Colony) fue
probado en un modelo de la red de British Telecom y su rendimiento a la hora de establecer
llamadas fue comparado con un algoritmo basado en agentes móviles desarrollado. Los resultados
determinaban que ABC tenía un rendimiento significativamente superior, enrutando el tráfico y
realizando al mismo tiempo un balanceo de carga de una forma descentralizada y robusta.

 AntNet:

Es un algoritmo de enrutamiento basado en la meta-heurística ACO. Está inspirado en el algoritmo


de enrutamiento de líneas telefónicas ABC. Siguiendo la misma idea de las colonias de hormigas, se
utilizan agentes que simulan hormigas para lograr la distribución y el enrutamiento de tráfico de
una red de conmutación de paquetes cableada mediante una estrategia best-effort. Los agentes
“hormigas” se comunican entre sí de un modo indirecto y asíncrono, analizando y actualizando las
rutas que conectan los nodos origen y destino mediante la segregación de feromonas. A diferencia
de ABC, se utilizan dos tipos de hormigas: “forward ants” y “backward ants”, dividiendo el análisis
del estado de la red y la actualización de las tablas de rutas en dos fases diferentes.

Los agentes “forward ant” realizan el camino desde el origen hasta el destino, manteniendo una
estructura de datos que consiste en un listado de los nodos visitados y los tiempos de viaje entre
cada uno de ellos. En cada salto entre nodos intermedios utilizan las mismas estructuras de red que
los paquetes de datos, analizando así el tráfico de red al obtener parámetros como el tiempo de
envío o el estado de congestión de las colas de los nodos. Al llegar al nodo destino el agente “forward
ant” se convierte en “backward ant”, heredando toda su información y realizando el viaje en sentido
inverso. En el camino desde el destino al origen se actualizan los nodos intermedios en base los
parámetros registrados previamente en el camino de ida. El hecho de actualizar durante la fase
“backward” puede evitar errores, como por ejemplo reforzar rutas cuando un agente está en un
bucle sin ser consciente de ello. Dado que es un algoritmo destinado a redes cableadas donde se
asume una cierta estabilidad topológica, el algoritmo no prevé cambios en la estructura de la red.
Es un algoritmo puramente proactivo, que necesita una fase inicial en la que la red se inunda de
agentes para encontrar las mejores rutas y establecer las tablas de enrutamiento de cada uno de
los nodos. Si una ruta desaparece o deja de funcionar debido a fallos de enlace, el algoritmo
reaccionará incrementando el número de paquetes de datos en espera en las colas de los nodos. El
objetivo de AntNet es adaptarse a los cambios y fluctuaciones en los patrones de tráfico, realizando
un balanceo de carga mediante la distribución de paquetes en diferentes rutas gracias a un
enrutamiento estocástico. Aunque se muestra robusto, es un algoritmo en el que intervienen
muchos parámetros que podrían afinarse para mejorar su rendimiento.

 Beehive:

Los algoritmos de enrutamiento inspirados en la organización y el comportamiento de las abejas


son muchos más recientes que los inspirados en colonias de hormigas. Beehive es el primer
algoritmo de este tipo propuesto por Wedde [2004]. En este caso, la inspiración proviene de la
metodología de abejas de la miel a la hora de encontrar fuentes de comida. Cuando descubren una
fuente de alimento la evalúan y regresan a la colmena para realizar una “danza” informando de la
ubicación y distancia a la que se encuentra. Dependiendo de la calidad de la fuente, otras abejas se
unirán al baile y a la recolección del alimento al que se hace referencia para ser explotado. Beehive
abstrae este baile en una tabla de enrutamiento, donde los agentes abeja son lanzados desde un
nodo origen para ser difundido entre sus diferentes vecinos. Una vez alcanzado un nodo cualquiera,
intercambian la información necesaria para modelar el estado de la red y evaluar las posibles rutas.
Se proponen dos tipos de agentes: los agentes abeja de corta distancia, que obtienen información
de los nodos cercanos al nodo origen limitados por un número máximo de saltos, y los agentes abeja
de larga distancia, que a diferencia de los primeros viajan por toda la red.

Referencias:
Farooq, M. (2009). Bee-Inspired Protocol Engineering: From Nature to Networks. Springer Berlin
Heidelberg, 1 edition.

A Fast and Scalable Re-routing Algorithm based on Shortest Path and Genetic Algorithms (J. Lee, J.
Yang).

Genetic Adaptive Routing Algorithms for Computer Networks (Mostafa Abdel-Kader Mohamed
Eisays).

Algoritmos inspirados en swarm intelligence para el enrutamiento en redes de telecomunicaciones


(Arturo Imas Rodríguez).

Vous aimerez peut-être aussi