Optimización en redes sensorasConceptos y fundamentos
Dra. Elisa Schaeffer FIME/CIIDIT UANL
Con qué les quito el tiempo hoy
Sensores, nodos y redes
Teoría de grafos
Modelado matemático
Programación lineal
Programación entera (mixta)
Dualidad
Problemas de optimización en redes sensoras
Sensores, nodos y redes
Sensor = componente detector
ambiental (químico)
acústico (incl. ultrasonido)
sísmico (vibración)
infraroja (calor, luz)
Nodo sensor = minicomputadora
una unidad de procesamiento (CPU) de capacidad muy limitada
memoria (normalmente tipo Flash y/o RAM) de capacidad muy limitada
una fuente de energía limitada (pila o batería)
una unidad de comunicación (radio, Bluetooth, cableado de red)
Red sensora = un conjunto de nodos sensores en comunicación
típicamente cuenta con una gran cantidad de sensores
no todos los nodos son necesariamente iguales
la distribución puede ser controlada o al azar
la configuración inicial depende del modo de lanzamiento ORBIT @ RUTGERS
Redes ad hocad hoc = para éste propósito
una red ad hoc es una red que se autoconfigura entre los nodos presentes
típicamente los nodos son móviles, aunque algunos pueden ser estacionarios
cuando los nodos son móviles, la comunicación suele ser inalámbrica
MANET = mobile ad hoc network
Nodos móviles
En una red (sensora) inalámbrica de nodos móviles, gran parte de la operación se complica
¿Entre cuáles nodos es posible comunicarse?
¿Cuáles nodos están “participando” (o sea, vivos)?
Usuario final: ruteouna red sensora reporta sus observaciones a un usuario final
típicamente solamente una fracción de los nodos pueden comunicarse directamente con el usuario
el resto de los nodos tiene que propagar su comunicación a través de la red
el proceso de propagación de mensajes se llama ruteo
OPERACION BAJO LA PRESENCIA DE FALLAS
TOMA DE DECISION PARA LA PROPAGACION DE ALARMA CON Y SIN CAUSANTE EXTERNO
FUNCIONALROTO
USUARIO
ALARMA
ROTO
FUNCIONAL
USUARIO
SIMULACION HECHA EN REPAST
Adaptacióncambios de topología por
movilidad (auto-organización geográfica)
ajuste dinámico del rango de transimisión/recepción
límites de reenvio de mensajes; ruteo inteligente (proactivo)
suspender operación o hibernar (despliegue “pseudo-incremental”)
ajuste según fallas o los eventos detectados
Aplicaciones: vigilancia y control
detección de presencia o intrusión
conteo, seguimiento, clasificación
detección y pronóstico de fallas
usos militares y ambientales
Teoría de grafos
Grafo= un conjunto de vértices con un conjunto de aristas
VERTICE
ARISTA
VECINOGRADO = 4
Tipos de grafos
dirigidos
reflexivos
multigrafos
ponderados
etiquetados
hípergrafos
42.0
A BC
Conceptos esenciales
grado; distribución de grado
densidad; agrupamiento
camino, ciclo; conexidad
distancia; eficiencia
Modelado matemático
PARAMETROS MODELOFORMALISMO MATEMATICO
CONFIGURACION
VARIABLES
RESTRICCIONES
COTAS
Cotas
La cota de ri es un valor numérico bi así que la restricciónse expresa en forma
ri(x1, . . . , xn)
!
"
"
"
"
"
#
"
"
"
"
"
$
<
!=">
%
"
"
"
"
"
&
"
"
"
"
"
'
bi.
Optimización de Redes Sensoras– p.31/59
Restricción con cota
Función objetivo
Función objetivo
La función objetivo representa una cantidad/medida deinterés:
f(x1, . . . , xn) = P ! R.
Funciónes lineales f : D " R donde para todo x, y ! D ytodo escalar !
1. f(x + y) = f(x) + f(y) (o sea, es aditiva)
2. f(!x) = !f(x) (o sea, es homogenea)
son de muchas maneras fáciles de manejar.
Optimización de Redes Sensoras– p.32/59
Función objetivo
La función objetivo representa una cantidad/medida deinterés:
f(x1, . . . , xn) = P ! R.
Funciónes lineales f : D " R donde para todo x, y ! D ytodo escalar !
1. f(x + y) = f(x) + f(y) (o sea, es aditiva)
2. f(!x) = !f(x) (o sea, es homogenea)
son de muchas maneras fáciles de manejar.
Optimización de Redes Sensoras– p.32/59
FUNCIONES LINEALES
Programa lineal (LP)Programa lineal
Un sistema de m restricciones lineales de nvariables con una función objetivo f().
La función objetivo es una función lineal que semaximiza (o minimiza) sujeto a las restricciones:
f(x1, . . . , xn) = c1x1 + . . . + cnxn.
Hay n restricciones adicionales de forma xi ! 0, o sea,que los valores asignados a las variables no seannegativos.
Optimización de Redes Sensoras– p.33/59
la función objetivo y las restricciones son lineales
restricciones adicionales de rango de variables
conversión a restricciones de igualdad con variables de holgura y excedente
Variables de holgura y excedente
Se puede transformar todas restricciones en igualdades.Para cada restriccion de tipo !, se añade una variablede holgura si:
ai,1x1 + ai,2x2 + . . . + ai,nxn + si = bi.
Para una restricción de tipo ", ponemos #si y la llamamosvariable de excedente.
Para incluir estas las variables en el vector de variables,los renombramos:
s1 = xn+1, . . . , sm = xn+m.
Optimización de Redes Sensoras– p.34/59
Programa lineal
Un sistema de m restricciones lineales de nvariables con una función objetivo f().
La función objetivo es una función lineal que semaximiza (o minimiza) sujeto a las restricciones:
f(x1, . . . , xn) = c1x1 + . . . + cnxn.
Hay n restricciones adicionales de forma xi ! 0, o sea,que los valores asignados a las variables no seannegativos.
Optimización de Redes Sensoras– p.33/59
Forma estándarRepresentacion con matrices
x = (x1, x2, . . . , xn)c = (c1, c2, . . . , cn)
A =
!
"
"
"
#
a1,1 a1,2 . . . a1,n
a2,1 a2,2 . . . a2,n
......
......
am,1 am2. . . am,n
$
%
%
%
&
b =
!
"
"
"
#
b1
b2
...
bm
$
%
%
%
&
Optimización de Redes Sensoras– p.35/59
Forma estándar
maxx!R
cTx s.a. Ax = b, x ! 0
un vector de variables x
un vector de cotas (los lados derecha) b
una matriz de coeficientesA
un vector de los coeficientes de la función objetivo c
Optimización de Redes Sensoras– p.36/59
Complejidad de PL
existen algoritmos polinomiales
método de elipsoide
algoritmo de Karmarkar
el “de facto” industrial es el algoritmo Simplex
no se conoce demostración de ser polinomial
eficiente en la práctica
REGION FACTIBLE
RESTRICCIONES LINEALES
Programa entero (mixto)
en muchos problemas, por lo menos algunas variables son por naturaleza enteras
en un programa entero, todas las variables son enteras
en un programa entero mixto, algunas son enteras y otras reales
Variable de decisión
Variable de decisión
Necesitamos una variable que indica si o no algunacondición aplica
x =
!
1, si aplica la condición,
0, en otro caso.
En un PL, se incluye las restricciones siguientes enR:"
#
$
x ! 0x " 1x # Z
Este concepto se generaliza a variables enteras.
Optimización de Redes Sensoras– p.37/59
PROGRAMACION ENTERA (MIXTA) CORRESPONDE A UN PROBLEMA NP-DURO
DualidadCada programa lineal tiene un programa dual
Si el problema original es de maximización, el dual es de minimización y viceversa
Las variables del programa primal se convierten en restricciones en el dual, y las restricciones del primal serán representados por las variables del dual
Función objetivo del dual:
Variables del dual
Cada restricción ri del programa primal estárepresentada por una variable yi en el programa dual.Las cotas bi del programa primal corresponden a loscoeficientes de la función objectivo dual:
g(yi, . . . , ym) =m
!
i=1
biyi.
Optimización de Redes Sensoras– p.45/59
Transformación a variablesRestricciones de signo
Las restricciones de las variables del dual yi dependen deltipo de restricción del primal ri a la cual corresponden,i = 1, . . . ,m:
ri :n
!
j=1
ai,jxj ! bi " yi # 0
ri :n
!
j=1
ai,jxj # bi " yi ! 0
ri :n
!
j=1
ai,jxj = bi " yi no restringida en signo
Optimización de Redes Sensoras– p.46/59
Transformación a restriccionesRestricciones del dual
Cada variable xi del primal corresponde a una restricciónti en el dual, i = 1, . . . , n:
xi ! 0 " ti :m
!
j=1
aj,iyj ! ci
xi # 0 " ti :m
!
j=1
aj,iyj # ci
xi no restringida en signo " ti :m
!
j=1
aj,iyj = ci
Optimización de Redes Sensoras– p.47/59
Ejemplo Ejemplo: primal y dual
maxx
(3x1 ! x2) mıny
(5y1 + 3y2 + 6y3)
s.a. s.a.!
"
#
2x1 ! 3x2 " 5x1 + x2 " 3
3x1 ! x2 # 6
$
2y1 + y2 + 3y3 # 3!3y1 + y2 ! y3 # !1
x1, x2 # 0 y1, y2 # 0y3 " 0
x! = (2,8, 0,2) y! = (0,8, 1,4, 0)P! = 8,2 D! = 8,2
Optimización de Redes Sensoras– p.48/59
PRIMAL DUAL
Forma estándarDual en forma estándar
maxx cTx sujeto a Ax ! b
"
mıny bTy sujeto a ATy # c
Nota: el PL dual del dual es igual al primal.
Optimización de Redes Sensoras– p.49/59
UNA VERSION PUEDE RESULTAR MAS FACIL DE RESOLVER QUE LA OTRA, AUNQUE LA SOLUCION ES LA MISMA
Optimización más alláfunciones o restricciones no lineales
regiones factibles no convexas
inexactitud de parámetros estimados
estabilidad de la solución (análisis de sensibilidad)
múltiples objetivos
incertidumbre
condiciones dinámicas; optimización iterativa
Optimización en redes sensoras
Conservación de energíaCaracterísticas deseables de protocolos de ruteo
poca pérdida de mensajes en camino
llegada rápida de mensajes al destinario final
redundacia mínima de comunicación
conservación máxima de la energía de los nodos participantes
Criterios en conflicto; optimización multicriterio
Un modelo muy simpleCada nodo tiene una cantidad fija de energía inicial E
Limitaciones de ancho de banda e interferencia ignoradas
La topología es un grafo aleatorio geométrico en un cuadro unitario con N nodos
Cada nodo puede ajustar su rango de transmisión entre cero y R
El rango de recepción es siempre R
Cada s segundos los nodos envian un mensaje “faro” para establecer su vecindario
La transmisión de un mensaje consume energía t y la recepción de un mensaje r
La operación normal de un nodo consume una cantidad despreciable de energía
Objetivos posibles
minimizar el uso total de energía
maximizar la vida operacional de la red
Optimización distribuida
No es siempre realista suponer que una entidad externa pueda realizar la optimización de una manera centralizada utilizando información global de la red sensora entera
Es más factible suponer que cada nodo busca optimizar localmente su propio comportamiento basado en información sobre su estado y la información que recibe de sus vecinos a través de mensajes periódicos
Modelo para PL distribuidaLa optimización está hecha por agentes independientes
El objetivo es llegar al óptimo global utilizando información localmente disponible
Los agentes conocen el coeficiente de su variable en la función objetiva
Cada agente está a cargo de asignar el valor a una sola variable, conociendo únicamente las restricciones donde la variable tiene coeficiente no cero
Dos agentes son vecinos si conocen una o más restricciones en común
Cada agente puede comunicarse con sus vecinos inmediatos con mensajes de tamaño fijo
CON FRECUENCIA VALE LA PENA PASAR POR EL PROBLEMA DUAL
Ruteo a un sólo sumideroEstudiamos el problema de elegir rutas de comunicación de varios nodos fuentes a un nodo sumidero único en una red de nodos con energía limitada
El objetivo era maximizar el número de paquetes recibidos por el sumidero
Al trasmitir un mensaje, los nodos añaden en el paquete información del estado de su pila
Modificamos en protocolo DNS (Dynamic Source Routing) para manejar un conjunto de rutas alternativas de manera no determinista
A. Schumacher, H. Haanpää, S.E. Schaeffer y P. Orponen. Load balancing by distributed optimisation in ad hoc networks, en Procedings of the Second International Conference on Mobile Ad-hoc and Sensor Networks, pp. 873–884, Springer 2006.
Operación bajo reemplazosCon mi tesista de licenciatura, Carlos Castillo, estamos estudiando el problema de operar una red sensora de tal manera que los sensores serán reemplazados al “morir”
Queremos minimizar el costo total de los reemplazos
Los nodos conocen su ubicación, la ubicación del usuario y su propio costo de reemplazo
El ruteo toma en cuenta además la energía restante de los nodos
Los costos de reemplazo dependen del “terreno” en el cual se ubica en nodo (para modelar dificultad de acceso)
PROMEP 103,5/07/2523
Temas de investigaciónDiseño del hardware
Modelado del comportamiento
Arquitectura, topología
Procesos de desplegamiento
Auto-organización
Control de consumo de energía por modos de operación
Algoritmos de ruteo
Diseño de protocolos de comunicación
Sincronización
Generación de “identidad”
Estimación de posiciones
Recolección de datos
Procesamiento de datos
Almacenaje de datos
Escalabilidad
Coordinación de cooperación
Computación distribuida
Armazones de simulación
Diseño de experimentos para comparasión y validación
Diseño y construcción de redes “a medida” para aplicaciones
HTTP://YALMA.FIME.UANL.MX/~ELISA/
NIVEL 3 NIVEL 2
IT @ CIIDITPISIS @ FIME
INFORMACION DE CONTACTO