4.2 Funcionamiento
4.2.1 Diseminaci´ on de Requerimientos
Se considera una WSN de m´ultiples saltos, en la que los nodos est´an distribuidos uniformemente en un ´area de inter´es, y donde el nodo sink, que es el encargado de inyectar requerimientos de informaci´on y de recibir los datos para ser reportados al usuario, es localizado en el centro de dicha ´area. Cuando se solicita a la red computar alguna funci´on de los datos sensados, por ejemplo calcular el valor m´aximo, m´ınimo, medio, etc, el nodo sink inyecta a la red un requerimiento de informaci´on espec´ıfico mediante broadcast. Cada nodo que recibe este requerimiento puede retransmitirlo al menos una vez en cada iteraci´on de computaci´on. El mensaje de requerimiento est´a conformado por un valor de temperatura
tiene que eliminar, ya que fu´e procesado por ´el anteriormente. En este sentido, en cada iteraci´on de computaci´on el nodo sink inyecta mensajes de requerimiento con un id diferente, modific´andolo en forma incremental.
El comportamiento de los nodos puede ser dividido en tres casos, seg´un la decisi´on de retrasmisi´on tomada por los mismos. En este contexto,cuando hablamos de decisi´on de retransmisi´on de requerimientos por parte de un nodo, estamos implicitamente hablando de filtrado de nodos vecinos, ya que la decisi´on tomada por un nodo de no retransmitir un requeri- miento implica el filtrado o la no participaci´on de sus nodos vecinos en la computaci´on de la funci´on solicitada, y viceversa. Esta decisi´on de retransmisi´on del mensaje de requerimiento est´a basada tanto en el valor de ∆E, como en el valor de temperaturaT transportado en el mensaje. El primer par´ametro es la diferencia entre el umbralThtransportado en el mensaje y la lectura actual
en el nodo ˆx0, es decir ∆E = Th−ˆx0, y el segundo es el valor actual de temperatura que tiene el
mensaje, debido a que el mismo puede ir sufriendo degradaciones (enfriamiento lineal) a medida que pasa por condiciones desfavorables, es decir, cuando el gradiente de informaci´on es negativo. A conti- nuaci´on, se describen cada uno de los tres tipos de comportamiento que puede tener un nodo durante la diseminaci´on de requerimientos.
4.2.1.1. Selecci´on de Nodo a Responder y Retransmisi´on del Requerimiento
Aquellos nodos que tienen valores relevantes para la aplicaci´on (es decir, ∆E <0) son selecciona- dos para reportar sus datos al sink despu´es de un cierto per´ıodo de tiempo, y siempre retransmiten el requerimiento recibido a sus nodos vecinos mediante broadcast (Figura 4.1 superior). En este sen- tido, antes de continuar con la retransmisi´on del requerimiento, estos nodos reemplazan el contenido original del mensaje, con su propio valor que es mejor. Dado que ∆E es la diferencia entre el valor de umbral Th transportado en el mesaje de requerimiento y el valor sensado por el nodo, la condi-
ci´on ∆E < 0 determina que existe un valor relevante en el nodo, es decir, que existe un gradiente positivo de informaci´on, o ganancia de informaci´on, ya que el nodo tiene un mejor valor que el que es transportado en el mensaje. Es por ello que dadas estas condiciones, el nodo decide siempre con- tinuar retransmitiendo el requerimiento a los nodos vecinos. Sin embargo, si su nodo vecino tiene un mejor valor que ´el, este ´ultimo termina seleccionado para responder, y mediante la diseminaci´on por broadcast del requerimiento, termina desactivando la respuesta del primer nodo, y as´ı sucesivamente.
Seleccionado para responder
Requerimiento eliminado
Figura 4.1: Tipos de comportamiento de los nodos durante la diseminaci´on de requerimientos.
4.2.1.2. Filtrado del propio Nodo, posible Filtrado de Vecinos
Por otro lado, si se cumple la condici´on ∆E >0, quiere decir que el nodo no tiene datos ´utiles para la aplicaci´on (filtrado propio) y solo puede retransmitir el mensaje de requerimiento a sus vecinos a fin de explorar m´as all´a (diversificaci´on) con una probabilidad P calculada como:
P(∆E, T) =e−∆ET . (4.2)
donde T es la variable temperatura del algoritmo SA, el cual es transportado dentro del reque- rimiento (Figura 4.1 centro). El nodo retransmitir´a el mensaje a sus nodos vecinos solo si el valor deP calculado es mayor que un valor entre 0 y 1 generado aleatoriamente, es decir, si se cumple la condici´onP(∆E, T)> rand().
4.2.1.3. Filtrado del propio Nodo y de Nodos Vecinos
Cuanto m´as bajo el valor de T o m´as grande la diferencia ∆E, menor es la probabilidad P
de continuar retransmitiendo el requerimiento a los nodos vecinos, debido a que la temperatura de SA dentro del mensaje es baja o los datos cercanos al nodo son probablemente irrelevantes para la aplicaci´on, respectivamente. Como consecuencia, el mensaje de requerimiento es probablemente descartado por el nodo (Figura 4.1 inferior), debido a que se cumple la condici´onP(∆E, T)< rand(). De esta manera se filtran o descarta la participaci´on de los nodos vecinos en la computaci´on de una funci´on.
computo de la funci´on requerida(diversificaci´on), y luego, durante la diseminaci´on del requerimiento, es linealmente decrementado por un factor D por nodos intermedios que poseen datos irrelevantes, es decir, que el mensaje va perdiendo temperatura (se va enfriando), energ´ıa, o cr´edito solo cuando se producen condiciones desfavorables para la aplicaci´on (es decir, para ∆E > 0). Este proceso de decremento de temperatura es conocido comoenfriamiento adaptativo.
En las siguientes iteraciones, un decremento en forma logar´ıtmica de T0 es aplicado a los requeri- mientos a ser transmitidos a la red, con el fin de acelerar la convergencia del algoritmo. Sin embargo, el proceso de enfriamiento(intensificaci´on) es ejecutado solamente al comienzo de cada iteraci´on ba- sado en un mecanismo de aprendizaje por refuerzo que se detallar´a m´as adelante. El valor deD es computado por el nodo sink, como T0
maxDist, donde maxDistes la m´axima distancia estimada desde
el nodo sink hasta el nodo mas distante de la red, en cantidad de saltos. Esto es debido al hecho de que podr´ıa existir una probabilidad no nula de explorar los bordes de la red aunque se asuman datos irrelevantes para la aplicaci´on, es decir, es requerido queT >0 despu´es de atravesar una cantidad de saltos maxDist. N´otese que t´ıpicamente D se decrementar´a con el tama˜no de la red. Sin embargo, otras estrategias de enfriamiento pueden ser consideradas. Una descripci´on detallada del algoritmo de retransmisi´on de PASA es mostrado en el Algoritmo 1, en el cual la Ecuaci´on 4.2 es el coraz´on del mismo.