Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de...

61
MÁSTER AUTOMÁTICA, ROBÓTICA Y TELEMÁTICA Análisis de métodos para la fusión de datos en redes descentralizadas y propuesta de mejora cualitativa para la detección de información corrupta utilizando Sistemas Clasificadores Trabajo de curso para la asignatura de Robots y Sistemas Autónomos Jesús González Villagómez [email protected] Sevilla, Julio de 2012

description

This document provides a short introduction to data fusion techniques, from the point of view of decentralized systems, including a brief description about two algorithms founded in literature for covariance management and finally propose a qualitative improvement for the weakness of previous covariance methods.

Transcript of Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de...

Page 1: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

MÁSTER AUTOMÁTICA, ROBÓTICA

Y TELEMÁTICA

Análisis de métodos para la fusión de datos en redes

descentralizadas y propuesta de mejora cualitativa

para la detección de información corrupta utilizando

Sistemas Clasificadores

Trabajo de curso para la asignatura de

Robots y Sistemas Autónomos

Jesús González Villagómez

[email protected]

Sevilla, Julio de 2012

Page 2: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

i

Page 3: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

Índice general

1. Introducción 11.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2. Arquitecturas para fusión de datos . . . . . . . . . . . . . . . 2

1.2.1. Arquitecturas jerárquicas . . . . . . . . . . . . . . . . . 21.2.2. Arquitecturas distribuidas . . . . . . . . . . . . . . . . 41.2.3. Arquitecturas descentralizadas . . . . . . . . . . . . . . 5

1.3. Estructura del documento . . . . . . . . . . . . . . . . . . . . 5

2. Fusión descentralizada de datos 72.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2. Filtro de información de Kalman. El Filtro de Canal . . . . . 11

2.2.1. Descentralización del Filtro de Información . . . . . . . 132.3. Estructura general . . . . . . . . . . . . . . . . . . . . . . . . 162.4. Ventajas, inconvenientes y alternativas . . . . . . . . . . . . . 18

3. Métodos basados en el estudio de la covarianza 223.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.2. Intersección de la covarianza . . . . . . . . . . . . . . . . . . . 23

3.2.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . 233.2.2. Planteamiento del problema . . . . . . . . . . . . . . . 253.2.3. Usando el algoritmo CI para fusión descentralizada de

datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.3. Unión de la covarianza . . . . . . . . . . . . . . . . . . . . . . 32

3.3.1. Ejemplo de tolerancia a fallos en una red descentralizada 34

4. Algoritmo CU reforzado con Sistemas Clasificadores 374.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.2. Teoría del Aprendizaje en Sistemas Clasificadores . . . . . . . 38

4.2.1. Teoría del Aprendizaje . . . . . . . . . . . . . . . . . . 384.2.2. Algoritmos Genéticos . . . . . . . . . . . . . . . . . . . 404.2.3. Sistemas Clasificadores . . . . . . . . . . . . . . . . . . 42

4.3. Representación y funcionamiento del sistema . . . . . . . . . . 47

ii

Page 4: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

ÍNDICE GENERAL iii

4.3.1. Presentación de la propuesta . . . . . . . . . . . . . . . 474.3.2. Clasificador . . . . . . . . . . . . . . . . . . . . . . . . 494.3.3. Algoritmo de actualización de los niveles de adaptación 504.3.4. Interpretación de los resultados . . . . . . . . . . . . . 504.3.5. Conclusión . . . . . . . . . . . . . . . . . . . . . . . . . 52

Page 5: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

Índice de figuras

1.1. Sistema de seguimiento basado en múltiples sensores con arqui-tectura jerárquica. . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2. Ejemplo de arquitectura track-to-track, en la que referenciaslocales son generadas de forma local en cada sensor para pos-teriormente ser enviadas al centro de fusión donde se generaráuna referencia global. . . . . . . . . . . . . . . . . . . . . . . . 4

1.3. Arquitectura tipo “Pizarra” para fusión de información . . . . 5

2.1. Ejemplo de redes descentralizadas de sensores. . . . . . . . . . 82.2. Ejemplo de arquitectura descentraliza con comunicación nodo-

nodo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.3. Nodo y arquitectura de red para DKF: (a) Arquitectura de

filtros de consenso para µKF de un nodo, y (b) Patrones decomunicación entre filtros de consenso low-pass/band-pass entrenodos vecinos. . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1. Silueta de la elipse de la covarianza actualizada. Las varianzasPaa y Pbb se corresponden con las elipses sólidas exteriores. Laselipses discontinuas representan los valores de Pcc que surgenpara diferentes valores de Pab. La actualización con estimacionesverdaderamente independientes se corresponden con la elipsesólida interior. . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.2. Distintos resultados para el algoritmo de CI:(a) Estimacionesiniciales de las covarianzas y la covarianza actualizada calcu-lada por el filtro de Kalman; (b) Posible covarianzas actuali-zadas calculadas a partir de una combinación convexa de doscovarianzas iniciales parametrizadas por ω. (c) Covarianza ac-tualizada como la combinación convexa de las dos covarianzasiniciales que maximiza la información (minimizan el área en-cerrada por las elipses) (d) Caso donde una covarianza inicialdomina el resto. . . . . . . . . . . . . . . . . . . . . . . . . . . 29

iv

Page 6: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

ÍNDICE DE FIGURAS v

3.3. Forma canónica del nodo en un red descentralizada de fusiónde datos que produce estimaciones locales del estado utilizandoalgoritmo CI para combinar información recibida de otros no-dos y un filtro de Kalman para incorporar medidas sensorialesindependientes. . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.4. (a) Dos nodos contienen estimaciones mutuamente inconsisten-tes; (b) El algoritmo de CU resuelve la inconsistencia entre esti-maciones; (c) El algoritmo de CI obtiene mejores estimacionesde otros nodos. . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.1. Sistema Clasificador canónico. . . . . . . . . . . . . . . . . . . 444.2. Propuesta de integración del sistema clasificador en nodo de

red descentralizada, integrando subsistemas de CI y CU. . . . 47

Page 7: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

Capítulo 1

Introducción

1.1. IntroducciónEl objetivo del presente trabajo es realizar un análisis no exhaustivo de las

técnicas actuales para estimación y fusión de datos. El motivo por el cual sepropone esta temática se debe principalmente a la realización durante el cursode prácticas realizadas relacionadas con el filtro de Kalman. El objetivo eradeterminar cuales son los límites actuales cuando se plantean sistemas típicosen la realidad, como robots móviles que poseen multitud de sensores, desdeun enfoque descentralizado de la arquitectura.

Dado que un análisis exhaustivo e implementación de todo lo relacionadocon la estimación y fusión de datos en entornos distribuidos o descentraliza-dos sería el objeto de tesis doctorales [Capitan], en este trabajo se proporcionauna ampliación de conocimientos cuya base es la propia asignatura de Robotsy Sistemas Autónomos. Reiteradamente se nos habla de sistemas robóticos,con diversa capacidad sensorial, que realizan tareas, navegan hasta puntos depaso, o waypoints, etc. Pero a la hora de implementar realmente un sistemarobótico medianamente complejo, empiezan a surgir cuestiones relacionadascon límites teóricos, los cuales son completamente desconocidos por el autor.Así pues, y para concluir esta presentación de introducción, a lo largo delpresente documento el lector podrá encontrar un pequeño contexto relativo ala fusión de datos cuando hay diversos elementos sensoriales, el conjunto deproblemas relativos a la combinación de las diversas medidas, y alternativaso soluciones para problemas concretos, que tras consultar diversa bibliografía,se puede decir que constituyen, en lenguaje vulgar, la cima de un iceberg.

Por lo tanto, en el presente trabajo tan solo se roza la superficie en cuantoa tratamiento estadístico de la información (Teorema de Bayes, por ejemplo),fusión y estimación, y adecuación de los datos, proporcionando en el último

1

Page 8: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

1.2. Arquitecturas para fusión de datos 2

capítulo una propuesta de alternativa a los algoritmos clásicos de resoluciónde problemas en redes descentralizadas. Existen otras alternativas para la fu-sión descentralizada de información, como por ejemplo el teorema de Bayesdescentralizado. El motivo por el cual no se ha presentado en este trabajo,es principalmente porque existe mucha bibliografía al respecto, al tiempo quese enmarca más bien en la Teoria de la Estadística y Probabilidad, más sicabe que el objetivo del presente trabajo es determinar los límites del filtro deKalman en entornos descentralizados.

A continuación se muestra una breve introducción del contexto, introdu-ciendo en primer lugar el elemento sobre el cual versará la temática del trabajo:las redes de sensores, y las distintas distribuciones lógicas y arquitecturas quepueden presentar.

1.2. Arquitecturas para fusión de datosLos sistemas de fusión de datos pueden tomar muchas topologias y for-

mas. En el nivel más simple, se puede considerar un conjunto de sensores quecomunican información directamente con un proceso central donde se llevaríaa cabo un proceso de fusión de datos. En este caso, no sería necesario llevar acabo ningún tipo de procesamiento a nivel local (en el sensor); esto presentala ventaja de poder implementar una vasta red de fuentes de información, altiempo que presenta la limitación de la necesidad de un elemento central, quesi fallara, toda la red dejaría de ser funcional.

La clasificación de las arquitecturas bien se puede realizar por el aumentode la capacidad de procesamiento en los nodos (dotarlos de cierta inteligencia oautonomía) o bien por las condiciones de comunicación entre los elementos. Acontinuación se exponen una posible clasificación de este tipo de arquitecturas,junto con los algoritmos de fusión de datos asociados.

1.2.1. Arquitecturas jerárquicasEn una estructura de tipo jerárquico, el nivel más bajo de procesamiento

transmite información hacia los elementos superiores (comunicación bottom-up), pasando a través de niveles o etapas (físicos o lógicos), en los cuales lainformación va pasando a través de sucesivos procesos de tratamiento y refina-miento hasta el nivel más alto donde se dispone de alguna observación globalde alguna característica del sistema. Este tipo de arquitecturas es ampliamen-te utilizado, y respecto a la red más básica posible, tiene la ventaja de quedescarga de necesidad de procesamiento al nodo central.

Page 9: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

1.2. Arquitecturas para fusión de datos 3

Figura 1.1: Sistema de seguimiento basado en múltiples sensores con arquitec-tura jerárquica.

Supongamos por ejemplo, que todos los sensores están midiendo algunacaracterística común, x(k). Las observaciones se llevan a cabo de forma local,de acuerdo a una ecuación de la forma:

zi(k) = H i(k)x(k) + wi(k), i = 1, · · · , S. (1.1)En principio, en cada nodo sensorial se debe llevar a cabo algún proceso

de estimación o fusión de la información para obtener estimaciones localesbasadas únicamente en observaciones de tipo local de la forma:

xi(k | k) = xi(k | k − 1) + W i(k)[zi(k)−H i(k)xi(k | k − 1)], i = 1, · · · , S.(1.2)

Cada una de estas estimaciones xi(k | k) posteriormente deben ser propa-gadas hacia los niveles superiores, pasando a través de nodos intermediarios,que no poseen capacidad sensorial, hasta llegar al nodo central, el cual realizael proceso de fusión para obtener una estimación global, de la forma:

x(k | k) =S∑

i=1ωi(k)xi(k | k) (1.3)

donde ωi(k) son matrices de ponderación en cada posición i.El principal problema de esta alternativa es que en cada sensor se está

observando un estado común, por lo que los modelos de los procesos localesestarían relacionados a través de algún modelo global de la forma

x(k) = F i(k)x(k) + Bi(k)u(k) + Gi(k)v(k), i = 1, · · · , S (1.4)

Esto significa pues que las predicciones realizadas a nivel local están co-rreladas, con lo que la actualización a nivel local también, a pesar del hechode que los procesos de observación son independientes, y las medidas son dife-rentes. Como consecuencia, las estimaciones locales generadas en cada sensor

Page 10: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

1.2. Arquitecturas para fusión de datos 4

no pueden ser combinadas de la forma expuesta en (1.3). En este punto, eltipo de métodos a aplicar para tratar con este problema son los denominadosalgoritmos de fusión track-to-track [Durrant, Grime]. Este tipo de algoritmosrequiere que las correlaciones entre todos los nodos sean explícitamente cal-culadas, y mantenidas, al tiempo del cálculo de la covarianza asociada a cadaestimación. Como conclusión, se puede decir que este tipo de métodos no sonválidos para arquitecturas dinámicas, y supone un problema cuando el númerode nodos crece, dado que es necesario mantener medidas entre cada uno delos elementos, lo que en la práctica no es posible su implementación cuandoel número de nodos es elevado.

Figura 1.2: Ejemplo de arquitectura track-to-track, en la que referencias localesson generadas de forma local en cada sensor para posteriormente ser enviadasal centro de fusión donde se generará una referencia global.

1.2.2. Arquitecturas distribuidasSin entrar en detalle, se puede decir que la motivación de este tipo de

arquitecturas es el deseo de poder modularizar y flexibilizar el sistema, altiempo que cualquier implementación de arquitectura centralizada supondríamás inconvenientes que ventajas. Un ejemplo de este tipo de arquitecturases la denominada “Blackboard”, originalmente desarrollada para sistemas dereconocimiento vocal, la cual consiste básicamente en un conjunto de agentesautónomos, en el que cada uno representa una fuente de información o cono-cimiento, el cual es intercambiado a través de un recurso común, ya bien seamemoria compartida o algún recurso común de comunicación.

A esta plataforma común se la denomina “pizarra”. Cada agente en elsistema es capaz de leer del recurso común, sin restricciones de ningún ti-po, cualquier tipo de información que considere oportuna. Se pueden añadirtantos agentes como sea requerido. La flexibilidad de este tipo de arquitectu-ra ha provocado su uso extendido en multitud de aplicaciones para fusión de

Page 11: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

1.3. Estructura del documento 5

datos en aplicaciones de interpretación de información y tareas de localización.

Figura 1.3: Arquitectura tipo “Pizarra” para fusión de información

Los principales problemas que presenta esta arquitectura están relaciona-dos con el recurso común; la necesidad de un gestor que controle el acceso, enmodo lectura o escritura, o verificar la consistencia de la información presenteen cada momento.

1.2.3. Arquitecturas descentralizadasAunque se describe con mayor profundidad en el capítulo 2, una red des-

centralizada de fusión de datos consiste en un conjunto de nodos sensores,con cierta capacidad de procesamiento, que no requieren de ningún recursocomún o central, tan solo cierta comunicación con nodos adyacentes. En cadasubsistema, se produce una fusión de los datos a partir de la información local,la obtenida hasta ese momento y la recibida de otros vecinos. Es un tipo dered en el que cada nodo posee una estimación local del modelo global. Así,cualquier red centralizada se puede plantear como una red completamentedescentralizada, modificando la lógica de cada elemento.

1.3. Estructura del documentoEn el capítulo 2 se presenta una alternativa para la propagación y fusión

de estimaciones locales a través de una red descentralizada, convergiendo enestimaciones similares a las planteadas en una red centralizada, denominado

Page 12: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

1.3. Estructura del documento 6

filtro de información de Kalman: filtro de canal. Se presentan sus funcionalida-des básicas introduciendo los elementos que la componen. Se presentan otrasalternativas a la técnica presentada, argumentando sus inconvenientes princi-pales, cuya aproximación de solución es mostrada en el capítulo 3. Métodosbasados en el tratamiento de la covarianza de las estimaciones, para resolverdos de los principales problemas existentes en las redes descentralizadas.

Las técnicas mostradas en el capítulo 3 presentan también un conjunto deinconvenientes si se producen una serie de condiciones anómalas en la red.Una propuesta de solución a las mismas es presentada en el capítulo 4. Elargumento por el cual se introduce este último capítulo es para completar estedocumento de introducción, basándose en una técnica cada vez más extendidacomo son los algoritmos genéticos. Lo que se expone en el capítulo 4 se tratade una propuesta de mejora cualitativa para técnicas expuestas en el capítulo3, y no constituye en lugar alguno implementación concreta, dado que si fuerael caso, quedaría fuera del ámbito propuesto de este trabajo.

Page 13: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

Capítulo 2

Fusión descentralizada de datos

2.1. IntroducciónLa recolección de datos de forma distribuida para tareas de supervisión,

modelización, monitorización activa, vigilancia o control distribuido ha expe-rimentado en los últimos años fuertes avances, debido, entre otras causas, a laminiaturización de muchos de los componentes, la mejora en las comunicacio-nes (protocolos dedicados, como Zigbee), el bajo coste de la distribución y ungran empuje a la componente teórica por parte del mundo de la Academia.Además, en el contexto de infraestructuras civiles y de defensa, hoy en día seintenta explotar de alguna forma la fusión de datos (elementos verticales) dedistintas fuentes de información, distribuidas geográficamente, para obtenermedidas más fiables relativas a adquisición, estimación para posición, segui-miento de características, etc. Es lo que se conoce como Integración Horizontal[Gardner]2.1, junto con otro tipo de subsistemas complementarios.

El problema de la estimación distribuida ha estado presente desde hacedécadas: la implementación del filtro de Kalman en entornos distribuidos fueresuelto en primera instancia por Speyer [Speyer], en 1979. Posteriormente,una alternativa fue propuesta, entre otros, por Rao, Durrant-Whyte y Sheen[Rao]. Pero estas alternativas presentan diversos problemas, entre otros, querequieren de una red completamente conectada (grafo completo). Esto implicala no realización práctica de la solución, debido principalmente a la compleji-dad que presenta en las comunicaciones (O(n2), donde n equivale al númerode nodos). Por lo tanto, en este punto se pueden identificar dos problemas dis-tintos: en primer lugar, filtro de Kalman descentralizado, y en segundo lugar,filtro de Kalman distribuido, en la que los nodos se conectan con sus vecinosen una red o grafo conexo con pocos elementos. En el presente tema se aborda

2.1Por sus siglas en inglés, HI: Horizontal Integration.

7

Page 14: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.1. Introducción 8

el problema del filtro de Kalman descentralizado.

De forma general, un sistema descentralizado de fusión de datos (en ade-lante DDFs - Decentralized Data Fusion System) consiste en una red de nodosinterconectados, independientes, los cuales poseen uno o más sensores concierta lógica de procesamiento y sistemas de comunicación. Mediante la lógicaincorporada y la capacidad sensorial los nodos realizan tareas de estimaciónlocal para posteriormente comunicar el resultado al resto de nodos de la red.Gracias a la comunicación, el sistema no requiere la utilización de ningúnrecurso común, dado que la comunicación es estrictamente a nivel local, don-de cada nodo tiene conocimiento únicamente de los vecinos más cercanos. Elconjunto de ventajas que presenta una arquitectura descentralizada sobre unacentralizada es muy amplio:

Escalabilidad: Al eliminar el elemento central de fusión y cualquier ele-mento común de comunicaciones, no existen límites y el sistema no pre-senta a nivel computacional cuellos de botella o limitaciones en cuantoa problemas en la comunicación.

Robustez: Dado que no es necesario albergar uno o varios nodos centralescon conocimiento de la topología de la red a nivel lógico, el sistema esinsensible tanto a la pérdida o adición en línea de nodos sensoriales comoa cambios en la propia infraestructura de comunicaciones.

Modularidad: Dado que todos los procesos de estimación/fusión de me-didas provenientes de los sensores se realizan a nivel local, sin necesidadde un conocimiento global (a priori), el desarrollo y programación de lared puede realizarse de forma modular.

Figura 2.1: Ejemplo de redes descentralizadas de sensores.

Page 15: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.1. Introducción 9

La definición anterior es bastante flexible en cuanto a la implementaciónfísica de los nodos con capacidades sensoriales. Existen multitud de redes desensores, descentralizadas o no, en nuestro entorno. Por ejemplo, toda la elec-trónica y sensores presentes en un vehículo, e interconectados mediante bus detipo CAN, es un ejemplo de red. Al mismo tiempo, un grupo de UAV sobre-volando cierto objetivo en tierra (o aire), en coordinación directa con equiposen tierra, también son ejemplos de redes, las cuales, y más concretamente enentornos militares, en las últimas décadas se está poniendo especial énfasis enlograr la completa descentralización de los elementos. Motivo: menor pérdidade vidas humanas, y mayor concreción de los objetivos.

Supongamos por ejemplo cierto objetivo a ser destruido por algún misilde largo alcance. Una estimación inicial de la posición, con relativa precisión,puede ser dada a partir de imágenes obtenidas por satélite; la precisión si-gue sin ser lo suficientemente buena (del orden de metros), si pensamos porejemplo en que el objetivo se encuentra en zona civil. El siguiente paso, seríao bien enviar equipos en tierra para que, haciendo uso de diversos sensores,se ajustara más la posición del objetivo, o bien enviar aviones no tripulados(UAV) teleoperados y fijar aún más el objetivo. Si se piensa de una formacentralizada, y aplicando este ejemplo, si alguno de los aviones no tripuladosfuera derribado, o alguno de los sensores de los equipos en tierra fuera des-truido, la resolución del objetivo disminuiría en relación a la sensibilidad delas medidas estimadas. En este caso, si el objetivo fuera móvil, podría darseel caso de perderse por completo la oportunidad de destruirlo. Sin embargo,en una alternativa descentralizada, la acumulación de recursos (aéreos y te-rrestres, figura 2.2) serviría para obtener una mejor precisión del objetivo, yen el hipotético caso de que se perdieran alguno o incluso todos los elementoscercanos al objetivo, la última estimación de la posición del objetivo seguiríasiendo válida, y muy precisa, debido a la actualización del estado en algúnnodo cercano de control.

La idea de este capítulo es proporcionar una visión rápida a los elemen-tos que subyacen de un estudio inicial sobre la estimación distribuida. Comose ha explicado anteriormente, si se tiene una red centralizada, la estimaciónmediante filtro de Kalman es inmediata, mientras que aparecerían cuellos debotella en las comunicaciones y complejidad exponencial en el nodo central.Pero tampoco se puede aplicar filtro de Kalman a cada uno de los nodos de lared sin un estudio previo, dado que consistiría en replicar el mismo problemapor el número de nodos de la red, al mismo tiempo que en otros nodos no setiene conocimiento de las observaciones realizadas en otro subconjunto de no-dos. El objetivo pues de esta sección, es proporcionar nociones sobre la forma

Page 16: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.1. Introducción 10

Figura 2.2: Ejemplo de arquitectura descentraliza con comunicación nodo-nodo.

posible de descentralizar el algoritmo de estimación/fusión centralizado porexcelencia, el filtro de Kalman. El uso de este método está muy extendido,principalmente debido a que provee una estimación óptima, en términos dedefinición del error cuadrático medio, bajo asumpciones de linealidad del pro-ceso y modelo de observación, incluyendo variables aleatorias que representana errores de modelado o ruído en las medidas.

Para terminar la introducción con un ejemplo que argumente la necesidaddel tratamiento de la estimación o fusión de datos, supóngase por ejemplo laposición de un determinado objetivo observado en tierra por un UAV, la cual escalculada a bordo a partir de la estimación de su propia posición, determinadaa partir de un GPS y sistemas inerciales, y de la estimación de la relaciónexistente entre el vehículo y el objetivo, basados en el rango y/o dinámicasdel conjunto de sensores a bordo.Todos estos componentes poseen modelosconocidos de incertidumbre que contribuyen a la incertidumbre derivada dela estimación global de la posición del objetivo. Dicha medida se caracterizagráficamente como una elipse asociada al error en la medida. Así, medidasde información que incluyen al mismo tiempo medidas de incertidumbre sondenominadas estimaciones del estado.

Page 17: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.2. Filtro de información de Kalman. El Filtro de Canal 11

2.2. Filtro de información de Kalman. El Fil-tro de Canal

En este punto se propone, partiendo del algoritmo clásico de estimación deKalman, una aproximación [Durrant] a la estimación del estado con múltiplesfuentes, para el caso más simple de red descentralizada: cada nodo se comunicacon su vecino o vecinos más próximo/s y no hay conocimiento de la topologíageneral de la red. Consideremos un sistema [Makarenko] descrito de formalineal como

x(k) = F (k)x(k − 1) + w(k) (2.1)donde x(k) es el estado de interés en el instante de tiempo t = k, F (k) es

la matriz de transición del estado del instante de tiempo t = k − 1 a t = k, yw(k) es el ruído asociado al proceso modelado como una secuencia de ruídoblanco no correlado con E

w(i)wT (j)

= δijQ(i). Visto desde un sensor, el

sistema es observado de acuerdo a la siguiente expresión:

z(k) = H(k)x(k) + v(k) (2.2)donde z(k) es el vector de observaciones realizadas en t = k, H(k) es

la matriz de observación o modelo, y v(k) es el ruído asociado al modelo deobservación, modelado como una secuencia no correlada de ruído blanco conE

v(i)vT (j)

= δijR(i). Si partimos del algoritmo clásico de estimación, el

filtro de Kalman, se generará una estimación para el estado x(k | k) parael instante de tiempo t = k dadas todas las observaciones hasta la marcatemporal t = k, junto con la correspondiente matriz de covarianza para laestimación P (k | k), de forma:

x(k | k) = x(k | k − 1) + W (k)[z(k) + H(k)x(k | k − 1)] (2.3)

P (k | k) = P (k | k − 1)−W (k)S(k)W T (k) (2.4)donde la matriz de ganancia W (k) viene dada por la expresión:

W (k) = P (k | k − 1)HT (k)S−1(k), (2.5)y la covarianza del término de innovación:

S(k) = H(k)P (k | k − 1)HT (k) + R(k) (2.6)Inicialmente, se puede pensar que el problema es fácilmente interpreta-

do para sistemas de múltiples sensores u observaciones. Si se representa elconjunto de medidas de múltiples fuentes como

Page 18: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.2. Filtro de información de Kalman. El Filtro de Canal 12

zi(k) = H i(k)xi(k) + vi(k), i = 1, . . . , N (2.7)la estimación del estado no puede ser obtenida a partir de una simple com-

binación lineal de las contribuciones individuales de cada uno de los sensores,de forma

x(k | k) 6= x(k | k − 1) +N∑

i=1W i(k)[zi(k) + H i(k)x(k | k − 1)], (2.8)

debido principalmente a que el término de innovación

Inn(k) = zi(k)−H i(k)x(k | k − 1) (2.9)generado a partir de las medidas de cada sensor, está correlado, dado que

comparten información común del modelo del sistema a través de la predicciónx(k | k − 1). Esto supone que la estimación del estado será errónea.

Hasta este punto, todas las estimaciones estaban asociadas a las medi-das del estado; esto es, tenían cierta dimensión o sentido físico. Sin embargo,al cambiar el paradigma, es posible aplicar una solución para sistemas des-centralizados. Supongamos que los nodos comunican información en términosde medidas de información adimensionales (asociadas al estado actual). Es-to significa que es posible una representación de la medida completamenteindependiente de la dimensión del proceso medido. Es lo que se conoce co-mo el término de información del filtro de Kalman (IKF Information KalmanFilter), o filtro de información. Reescribiendo los términos de estimación delestado y covarianza como dos nuevas variables:

y(i | j) , P −1(i | j)x(i | j), Y (i | j) , P −1(i | j) (2.10)y reescribiendo al mismo el término de información obtenida a partir de

una observación:

i(k) , HT (k)R−1(k)z(k), I(k) , HT (k)R−1(k)H(k) (2.11)

es posible reescribir también la estimación del filtro de Kalman, como:

y(k | k) = y(k | k − 1) + i(k) (2.12)Y (k | k) = Y (k | k − 1) + I(k) (2.13)

El término de información del filtro de Kalman no suele ser muy utilizado,debido principalmente a que los términos de actualización son de dimensión

Page 19: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.2. Filtro de información de Kalman. El Filtro de Canal 13

el estado, mientras que en el algoritmo de Kalman distribuido, estos términosde actualización son de dimensión de la observación. Una vez introducido eltérmino de información en esta definición, ante el problema de múltiples sen-sores, ahora es posible aplicar una combinación lineal a partir de los términosde información de las observaciones para la obtención de la estimación

y(k | k) = y(k | k − 1) +N∑

i=1ii(k) (2.14)

dado que los términos de información ii(k) de cada sensor son no co-rrelados. A partir de este punto, cada nodo de la red genera el término deinformación relativo ii(k) y éstos son sumados en el centro de fusión paraobtener una estimación global de la información. La etapa de predicción delfiltro de información:

Y (k | k − 1) = M (k)−M(k)G(k)Σ−1(k)GT (k)M (k) (2.15)

y(k | k − 1) = [1−M(k)G(k)Σ−1(k)GT (k)] F −T (k)y(k − 1 | k − 1) (2.16)

donde

Σ(k) = GT (k)M (k)G(k) + Q−1(k) (2.17)y

M (k) = F −T (k)Y (k − 1 | k − 1)F −1(k) (2.18)Una vez que se ha obtenido el filtro a aplicar en cada nodo, el siguiente

paso consistiría en descentralizarlo. En la siguiente subsección se expone elmétodo para ello. Existen muchas alternativas que utilizan este algoritmopara la fusión de datos: arquitecturas jerárquicas con filtro de información,estimación multi-sensorial multi-objetivo con filtro de información, etc. Paramás información, consúltese [Durrant].

2.2.1. Descentralización del Filtro de InformaciónEn este paso se trata de descentralizar la estimación realizada por el filtro

de información. En este tipo de sistemas, cada nodo genera una predicción,realiza una observación y calcula una estimación local la cual es comunicadaal resto de sus vecinos. Cada nodo recibe un conjunto de estimaciones locales,e implementa un algoritmo de asimilación local para producir una estimaciónglobal en forma de información del estado, equivalente a la que podría ha-berse obtenido con un sistema centralizado. Básicamente, esta es la idea que

Page 20: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.2. Filtro de información de Kalman. El Filtro de Canal 14

subyace para la descentralización del filtro: replicar el método que se llevaríaa cabo de forma centraliza a todos los nodos.

Se parte de la asumpción de que cada nodo mantiene un modelo en espaciode estados de la forma (F (k),G(k),Q(k)), esto es, en el conjunto de locali-zaciones de los sensores se debe observar un determinado estado consistente,de forma que los modelos locales están relacionados mediante algún modeloglobal, común, de la forma:

xi(k) = F i(k)x(k) + Bi(k)u(k) + Gi(k)v(k), i = 1, ..., S. (2.19)

La expresión anterior es equivalente a un modelo que estuviera en un nodocentral, verificándose la predicción yi(· | ·) ≡ y(· | ·) para todos los nodosde la red (i = 1, ..., N). Cada nodo comienza calculando su estimación localyi(k | k − 1) basada en una predicción local yi(k | k − 1) y la informaciónproveniente de la observación local ii(k) de acuerdo con:

Etapa de predicción:

yi(k | k − 1) =[1−Ωi(k)GT (k)

]F −T (k)yi(k − 1 | k − 1) +

Y i(k | k − 1)B(k)u(k) (2.20)

Y i(k | k − 1) = M i(k)−Ωi(k)Σi(k)ΩTi (k) (2.21)

con M i(k) y Σi(k) especificadas para el nodo i− esimo (2.13) y (2.14),respectivamente, donde

Ωi(k) = M i(k)G(k)Σ−1i (k) (2.22)

Etapa de estimación:Extendiendo (2.8) y (2.9) para el caso multinodal:

yi(k | k) = yi(k | k − 1) + ii(k) (2.23)

Y i(k | k) = Y i(k | k − 1) + I i(k) (2.24)

estas estimaciones de información parciales locales son comunicadas alos nodos vecinos donde se lleva a cabo un proceso de asimilación, de laforma

Page 21: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.2. Filtro de información de Kalman. El Filtro de Canal 15

Etapa de asimilación:

yi(k | k) = yi(k | k − 1) +N∑

j=1[yj(k | k)− yj(k | k − 1)] (2.25)

Y i(k | k) = Y i(k | k − 1) +N∑

j=1[Y j(k | k)− Y j(k | k − 1)]] (2.26)

Si cada nodo comienza con una estimación inicial asociada a la informa-ción del estado yj(0 | 0) = 0, Y j(0 | 0) = 0 y la red está completamenteconectada, se demuestra que las estimaciones obtenidas en los nodos se-rán idénticas.

Tal y como se comentó en la sección anterior, la cantidad de informacióntransmitida por la red, que equivale a:

ij(k) ≡ yj(k | k)− yj(k | k − 1) (2.27)

y

Ij(k) ≡ Y j(k | k)− Y j(k | k − 1) (2.28)

consistente en la diferencia entre la información local en el instante detiempo k y la predicción basada únicamente en la información disponible has-ta el instante de tiempo k− 1 (información nueva). Así, el conjunto de nodos-sensores en una red comunican información nueva e independiente entre cadauno de sus vecinos para posteriormente asimilar y fusionar información paraobtener estimaciones óptimas globales.

Por último, respecto a las ecuaciones planteadas en esta subsección:

La capacidad de cálculo adicional requerida en cada nodo para poderllevar a cabo el proceso de asimilación de información es pequeña, dadoque solo se tienen que llevar a cabo suma de vectores y matrices.

La cantidad de información requerida en cada nodo es menor que si laorganización fuera jerárquica. Esto es debido a que cada nodo calculaindividualmente una estimación global, con lo que no es necesaria lacomunicación antes de un ciclo de estimación de estimaciones o predic-ciones.

Page 22: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.3. Estructura general 16

2.3. Estructura generalDada una estimación del estado y(k | k − 1), ésta es transmitida a través

de la red al resto de nodos colindantes con el origen de la transmisión. Unavez recibida en el destino, se produce un proceso de substracción de informa-ción entre la información actual y la recibida justo en el instante de tiempoanterior. Tras un proceso de simplificación y filtración, la información ya estálista para ser incorporada al proceso central de fusión de datos y obtener así,mediante las ecuaciones de actualización asociativas (∑N

i ii(k)), la estimaciónlocal del nodo actual. El algoritmo que realiza dicho proceso de sustracción esel denominado filtro de canal, y reside en la interfaz o capa de intercomunica-ción del nodo con el exterior.

En el caso de pérdida de paquetes en las comunicaciones, tal y como estáplanteado el filtro de información, el método sería completamente robusto,en el sentido de que la información que contiene cada transmisión contieneimplícitamente toda la estimación del estado hasta ese instante de tiempo. Denuevo, no se considera el orden de los mensajes ni la redundancia de estos; seasume, como caso ideal, que se envía uno y solo un mensaje entre nodos porestimación y que está garantizado el sincronismo en la red. El resumen de lasfunciones más importantes que un nodo de una red descentralizada realiza,son las siguientes:

1. Información de predicción del estado, en este caso, generando y(k | k−1)y Y (k | k−1), de forma síncrona, en un determinado instante de tiempoa partir del histórico.

2. Pre-procesamiento de la observación para proveer el vector (i(k)) y lamatriz (I(k)) de información de ésta.

3. Transmisión de la información a través del filtro de canal. Para conside-raciones de robustez en las comunicaciones, la información completa dela estimación del estado es transmitida entre los nodos.

4. Fusión de la información recibida a través de los canales. Este tipo detareas requiere normalmente de cierta sincronización y/o compensaciónde latencias y retardos en las comunicaciones. Los canales calculan losnuevos incrementos de información sustrayendo a la información recibidaen el instante de tiempo anterior la actual recién obtenida del canal.Una vez obtenidos los incrementos, la nueva información es entoncesfusionada con la estimación local del estado.

La estimación del estado tiene lugar de forma local en el filtro del nodo, elcual es simplemente un filtro estándar de información que suma la información

Page 23: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.3. Estructura general 17

total de las observaciones, la recibida por los distintos canales y la predicción.Toda comunicación pasa a través del gestor del canal (channel manager), elcual gestiona tanto la sincronización como la interfaz de comunicación. Elfiltro de canal mantiene una estimación de toda la información que ha sidorecibida en cada uno de los canales de entrada que conectan físicamente lainterfaz con la red. De forma resumida, las principales operaciones de cadauno de los nodos son las descritas a continuación:

Procesamiento sensorCuando un sensor realiza una observación, la información en bruto pasaa través de un conjunto de etapas de pre-procesamiento, para transfor-mar los datos en bruto de la observación en términos de información(i(k),I(k)) antes de que sea fusionada en el filtro local para estimación.

Filtro localEl filtro local genera información de la estimación del estado partir dela medida observada, la predicción, y la recibida a través de las comuni-caciones. Al mismo tiempo, se asocian a la estimación un índice relativoa la información y una probabilidad de corrección relativa al formato.

Filtro del canalEl filtro de canal es utilizado para la gestión de las comunicaciones entrenodos, realizando principalmente dos funciones: mantener cierto controlde la información comunicada previamente en el canal, y para sincronizarinformación entrante y saliente con el filtro local del nodo. La funciónde sincronización es realmente útil cuando algunos nodos se encuentransituados remotamente.

Gestor del canalEste gestor sirve como interfaz entre el filtro local y el/los filtro/s delcanal. Su tarea consiste básicamente en recoger información (en un hori-zonte temporal) del filtro de canal, calcula el incremento de informaciónpor simple adición, y le pasa el resultado al filtro local. Al mismo tiem-po, también recibe estimaciones del estado actualizadas del filtro local,para ser distribuidas a cada uno de los filtros del canal.

TemporizaciónEn principio, cada nodo posee un reloj sincronizado respecto a un sis-tema temporal común, al que se le puede integrar marcas temporalesprovenientes de sensores GPS, en el caso de que los sensores fueran, porejemplo, UAV. Cada nodo en la red trabajaría de forma asíncrona res-pecto al resto de nodos, de forma que cada uno está programado para

Page 24: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.4. Ventajas, inconvenientes y alternativas 18

que envie información cada un determinado ∆T , el cual no tiene por quéser el mismo para todos los nodos. Cuando un nodo recibe nueva infor-mación a través del canal, se le aplica el proceso de predicción asociadoa un determinado horizonte temporal, y posteriormente es almacenada,hasta que bien sea de nuevo actualizada o bien utilizada para algún pro-pósito. Pasado el horizonte temporal (el cual no tiene por qué coincidircon 4T ), se espera hasta la próxima recepción de información.

2.4. Ventajas, inconvenientes y alternativasExisten muchas aproximaciones al problema de Kalman descentralizado.

En [Reza], la propuesta es muy similar a la resumida en este trabajo, haciendouso de filtros de entrada y uno central [Durrant]. Así, se propone subdividir elproblema de DKF -Distributed Kalman Filter- en dos subproblemas de con-senso dinámicos: uno en términos de medidas ponderadas y otro en base amatrices de covarianza inversa (información). La solución se plantea de formadistribuida aplicando dos tipos de filtros, los denominados filtros de consen-so low-pass y band-pass. El primero de ellos se utiliza para la fusión de lasmedidas, mientras que el segundo se emplea para la fusión de la inversa delas matrices de covarianza. Plantean un filtro “hipotético” central de Kalmanpara redes de sensores, que puede ser descompuesto en n-micro filtros de Kal-man cuyas entradas se corresponden con ambos filtros de consenso (figura 2.3).

En [Kamgarpour] se lleva a cabo un estudio de las propiedades de con-vergencia de métodos basados en filtros de consenso. Se demuestra que, paraprocesos invariantes en el tiempo y medidas del modelo, se garantiza que lasestimaciones locales de la matriz de la covarianza del error converge a la matrizde la covarianza del error centralizada, al tiempo que las estimaciones localesdel estado convergen en media a la estimación de un hipotético filtro centralde Kalman. Sin embargo, debido al uso de filtros de consenso, las estimacioneslocales del estado no convergen a la estimación por mínimos cuadrados quehubiera sido obtenida aplicando un filtro centralizado de Kalman.

El factor negativo de [Durrant] (o al menos de la documentación consul-tada) es el hecho de que no se hace referencia alguna a la topología necesariade red para garantizar la convergencia de la estimación, ni tampoco se hacemención a la redundancia o pérdida de “paquetes” de información.

Page 25: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.4. Ventajas, inconvenientes y alternativas 19

Figura 2.3: Nodo y arquitectura de red para DKF: (a) Arquitectura de filtrosde consenso para µKF de un nodo, y (b) Patrones de comunicación entrefiltros de consenso low-pass/band-pass entre nodos vecinos.

Respecto a la alternativa mostrada en este capítulo, se puede resumir endos las principales características que posee el trasfondo teórico de los deno-minados filtros de canal:

1. Los datos de entrada provenientes de nodos remotos son asimilados porel sensor local antes de ser comunicada al resto de nodos adyacentes. Eneste punto, no importa el orden de los mensajes, dado que únicamentehay un único mensaje de salida para cada nodo. De esta forma, aunquela red crezca de forma dinámica, la cantidad de información enviada através de los enlaces de comunicación permanecería constante, lo queresulta en una interesante funcionalidad: Un sistema descentralizado defusión de datos puede, a priori, escalar de forma indefinida su tamañosin incrementar el ancho de banda entre nodos adyacentes.

2. Como se ha comentado anteriormente, un nodo compara lo que ha sidopreviamente comunicado con la información total local presente. Así, sipor algún motivo la comunicación se suspendiera por un instante, el filtro

Page 26: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.4. Ventajas, inconvenientes y alternativas 20

de canal acumularía la información de forma que cuando el canal fuerareestablecido, la información total acumulada en el canal es enviada enun único mensaje. Esta lógica permite la desconexión de un nodo y sureinserción en otra parte de la red, junto con la posterior actualizaciónen un único paso. O lo que es lo mismo, se puede decir que un DDFses relativamente robusto a cambios y pérdidas respecto del sistema decomunicación.

Se puede decir que juntos, el filtro de canal y las operativas del nodo defi-nen un sistema completamente modular en cuanto a algorítmica se refiere,es escalable en número de nodos y robusto ante la pérdida de paquetes enlas comunicaciones o incluso de nodos, intercambiando mensajes que alberganmedidas de información sin unidades asociadas, adimensionales. Esto implicaque es posible implementar cada sensor, cada canal, de forma completamenteaséptica, genérica, dado que no existe relación alguna con el proceso a mediro con el mecanismo en sí de medición y su posterior integración en la red.Formalmente, gracias a que la información se define en términos de medidasde Fisher y Shannon [Durrant], es posible a priori realizar procesos de infe-rencia relativa a combinación entre los sensores. Sería posible determinar, porejemplo, qué configuraciones entre sensores proporcionarían la mayor medidade información.

Sin embargo, no todo son ventajas. Como se anticipó en secciones anterio-res, algoritmos del tipo filtro de información en el filtro de Kalman presentanproblemas en cuanto a sincronización de la información, gestión y “confian-za” en las comunicaciones, cuando la topología de la red es arbitraria. Estoes, las características expuestas en este apartado se verifican solo en el casode redes completamente conectadas, o bien en redes con topología de árbol.Básicamente, y como resumen de este punto respecto a las comunicaciones,dadas las restricciones impuestas por la propia definición de una red de sen-sores descentralizada, no es posible en general construir un conjunto de filtroslos cuales puedan proporcionar estimaciones consistentes en toda la red. Otraalternativa presente en la literatura consiste en, a partir de una red arbitraria,construir algoritmos de enrutado para generar/simular una topología lógicaen forma de árbol.

Otro problema añadido, además del de las comunicaciones [Schlosser], es elhecho de que para la implementación distribuida del filtro de Kalman, en cadanodo es necesario mantener un modelo completo del sistema, para las fases deestimación y predicción (2.19). Si la red crece exponencialmente en número denodos, esta operación sería impracticable. Sin embargo, en [Berg] partiendode un modelo central del estado, y con los modelos locales de observación,

Page 27: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

2.4. Ventajas, inconvenientes y alternativas 21

se observó que para las fases en las que el modelo era requerido, tan solo sehacia uso de un submodelo localmente observable del original, manteniendoconsistencia en las estimaciones a través de la red.

Hasta este punto, se han descrito problemas relativos a la “física del pro-blema”: comunicaciones y modelo. Pero existen problemas que subyacen a lahora de implementar los algoritmos distribuidos para estimación, que aún nohan sido comentados. El primero de ellos es la información redundante, y latoma de decisiones a partir de información cíclica (o empobrecimiento de lainformación). Una solución a dicho problema se presenta en el siguiente ca-pítulo, y se conoce como DDF-CI (CI-Covariance Intersection). El siguientepunto conflictivo en DDFs es lo que se conoce como inserción de informacióncorrupta en la red. En particular, qué sucede en una red cuando se introduceinformación no válida o espúrea. La solución a este problema se denominadatabase deconfliction. Del mismo modo, en el capítulo 3 se presenta unaaproximación a las soluciones presentes en la literatura.

Page 28: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

Capítulo 3

Métodos basados en el estudiode la covarianza

3.1. IntroducciónAl finalizar el capítulo 2, se introducían los principales problemas relacio-

nados con los sistemas de fusión de datos. El primero de ellos está relacionadocon la información redundante, y su efecto en el sistema. El segundo consisteen determinar cuáles son los efectos al introducir en el sistema informaciónespúrea o incorrupta. A lo largo del presente capítulo se exponen con másdetalle estos dos problemas, junto a posibles soluciones. Cabe destacar que losproblemas que se presentan a continuación se dan principalmente en sistemasde fusión de datos en los que las redes son:

completamente descentralizadas,

donde los paquetes de información pueden llegar de forma redundante,

no existe una topología concreta en la red,

y el número de nodos es aleatorio, y no determinado.

La alternativa presentada en el capítulo 2, el filtro de información de Kalmany el filtro de canal, tan solo es válido para situaciones en las que la red disponede una topología en árbol, o conectada, y se mantiene un orden estricto enlas comunicaciones, sin redundancia de información. Dado que la soluciónpropuesta es para redes “ideales”, en este capítulo se presentan problemas quesuelen ser comunes a la hora de realizar los procesos de implementación enredes “reales”.

22

Page 29: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 23

3.2. Intersección de la covarianza

3.2.1. IntroducciónEspecíficamente, las diversas “piezas” o paquetes de información de múlti-

ples fuentes no pueden ser combinadas directamente, o al menos es necesarioconocer su nivel de correlación, tal y como se ha visto en el capítulo 2. Así, elefecto de la información redundante en, por ejemplo, la gestión de una batalla,puede ser vista a continuación, en lo que se suele denominarse “Susurro en elpasillo” (Whispering in the hall) [Hall]:

1. Supongamos un nodo de reconocimiento fotográfico que transmite infor-mación sobre características potencialmente importantes. Esta informa-ción se propaga a través de la red, cambiando de forma y combinándosecon información de otros nodos.

2. El nodo de estimación de posición de la tropa de infantería recibe even-tualmente la información anterior de alguna forma y estima que algunade las características pudiera representar un batallón de tanques en mo-vimiento, en una determinada posición χ. Existen muchas otras posiblesinterpretaciones de la característica, pero la posibilidad de que sea unbatallón de tanques en movimiento es considerada por ser de impor-tancia táctica que garantiza la transmisión de una hipótesis de bajacredibilidad. De nuevo, la información puede ser sintetizada, aumentadao transformada en función de información de otros nodos.

3. El nodo de reconocimiento fotográfico recibe la hipótesis de baja credi-bilidad de que un batallón de tanques puede haber sido movilizado hastala posición χ.Un chequeo de dicha zona detecta una característica que esconsistente con la hipótesis. Dado que el nodo no puede conocer de algu-na forma si la hipótesis estuvo basada en la misma evidencia fotográfica,este asume que la característica que ha detectado es una confirmaciónindependiente de la hipótesis de partida. Así, el nodo transmite de nuevola información, con un nivel alto de credibilidad, de que en la posición χexisten características para pensar de que realmente existe un batallónde tanques movilizándose.

4. El nodo de posición de la tropa de infantería recibe información de lared, con un alto nivel de credibilidad, de que el nodo de fotoreconoci-miento ha detectado un batallón de tanques en la posición determinada.El nodo de posición de la tropa se refiere a esta información con unaconfirmación de su hipótesis anterior, y solicita la puesta en marcha deacciones hostiles.

Page 30: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 24

El principal problema es que ambos nodos están compartiendo “piezas” deinformación redundante, sin embargo, la consideran como elementos indepen-dientes de información incrementando la credibilidad de la hipótesis de laexistencia de un batallón de tanques. El resultado final puede ser igualmenteel uso de fuerza y recursos en una realidad que quizás no sea la que tienemáxima credibilidad.

Otro ejemplo similar puede ser la estimación de la posición o velocidad enun vehículo móvil. El siguiente ejemplo es similar al desarrollado en la prácticadel curso actual:

1. El sistema de navegación y control de un vehículo mantiene un filtrode Kalman para estimar la posición, y en algunos casos, un filtro deKalman similar para la estimación de la dirección del vehículo.

2. Cada filtro utiliza información de sensores a bordo del vehículo.

3. El estado completo del vehículo queda determinado (para objetivos depredicción) combinando las estimaciones de posición y orientación.

4. La covarianza de la predicción asociada a la posición puede ser obte-nida esencialmente como una suma de las covarianzas de la posición yorientación. Posteriormente las estimaciones son transformadas a algúnmarco de referencia común.

El problema en este último ejemplo es que los errores en la posición y en laorientación no son independientes, lo que significa que la covarianza de la pre-dicción de la posición subestimará el error actual de posición. Debido a elloprobablemente se llevarán a cabo maniobras peligrosas.

Para evitar consecuencias desastrosas debido a información redundanteen estimadores tipo filtro de Kalman, cierta información sobre la covarianzadebe ser propagada y actualizada en el tiempo en toda la red. Sin embar-go, mantener covarianzas cruzadas en redes arbitrarias descentralizadas noes posible, tan solo en algunos casos especiales como redes en topología deárbol o totalmente conectadas. Sin embargo, en este tipo de redes se pierdela característica de robustez, dado que si algún nodo cae, se puede decir quela red entera también. Así, lo que aporta robustez y confiabilidad al sistema,proporciona problemas en cuanto a redundancia en la información, y viceversa.

Para soslayar el problema, una primera aproximación pudiera ser conside-rar independencia entre los nodos. En este tipo de casos, la solución consistiríaen incrementar artificialmente la covarianza de la estimación conjunta. Esta

Page 31: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 25

heurística, o ajuste del filtro, puede ayudar a prevenir estimaciones no con-sistentes, pero el lado negativo es que requiere de un gran análisis empíricoprevio para estimar cuánto se debe aumentar esta covarianza. Incluso con esteanálisis, en muchos casos la integridad de la estimación de filtros de Kalmanse pone en evidencia, dando lugar a resultados no confiables. Si escalamos elproblema a redes mayores, el problema de encontrar un valor adecuado para laindependencia de las estimaciones hace que el cálculo de la propia covarianzasea un problema más complejo que el original, incluso a veces sin solución.

En resumen, la única vía que garantizaría robustez, flexibilidad y consisten-cia de las estimaciones en una red descentralizada de topología arbitraria, engeneral, consiste en explotar un mecanismo de fusión de datos que no requierade asumpciones de independencia. Dicho mecanismo, denominado CovarianceIntersection (CI), satisface el conjunto de premisas.

3.2.2. Planteamiento del problemaSupongamos dos piezas de información, etiquetadas como A y B, que van

a ser fusionadas para obtener una estimación conjunta, C. Tanto A comoB bien pueden ser medidas directas obtenidas de algún tipo de sensor, obien algún tipo de información obtenida a través de algún estimador lineal.Se puede decir que ambos términos están afectados por ruidos y errores demodelado, además, sus valores son conocidos con cierta imprecisión y A yB son variables aleatorias a y b, respectivamente. Si desconocemos cualquierpropiedad estadística de ambas variables, la única información disponible sonlas estimaciones de las medias y las covarianzas de a y b y la correlacióncruzada entre ellas. Estas son a,P aa, b,P bb y 0, respectivamente.

P aa = E[aaT ] P ab = E[abT ] P bb = E[bb

T ]

donde a , a − a, y b , b − b. En general, la matriz de correlacióncruzada entre las variables aleatorias, P ab, es desconocida, y distinta de 0. Laúnica restricción que se impone es la consistencia en la estimación. En otraspalabras, se debe cumplir que

P aa − P aa ≥ 0P bb − P bb ≥ 0

El problema consiste pues en la fusión las estimaciones consistentes de Ay B para generar una nueva estimación, C, c,P cc, la cual se garantiza queserá consistente:

Page 32: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 26

P cc − P cc ≥ 0

donde c , c− c y P cc = E[ccT ].De forma genérica, el algoritmo de intersección de la covarianza (CI) parte

de una combinación convexa de la media y covarianza de las estimaciones queson representadas en el espacio de la información; de esta definición surge unainterpretación geométrica de las ecuaciones del filtro de Kalman. Supóngasela forma general de las ecuaciones del filtro de Kalman como

c = W aa + W bb (3.1)

P cc = W aP aaW Ta + W aP abW

Tb + W bP ba + W T

a + W bP bbWTb (3.2)

donde los pesos W a y W b son elegidos para minimizar la traza de la matrizP cc. Esta forma conduciría al filtro convencional de Kalman si las estimacio-nes fueran independientes (P ab = 0) y generaliza las ecuaciones del filtro conruido coloreado cuando se conocen las correlaciones. Si se interpretaran deforma gráfica estas ecuaciones, se observaría que al pintar las elipses relacio-nadas con las covarianzas3.1, esto es, P aa,P bb y P cc para todos los valores deP ab, el valor P cc siempre estaría en la intersección entre P aa y P bb (figura 3.1).

Una interpretación inicial sugiere que si P cc reside en la intersección en-tre P aa y P bb para cualquier valor de P ab, entonces cualquier estrategia deactualización que encuentre P cc que encierre la región de intersección debeser consistente incluso si no se tuviera conocimiento sobre P ab. Cuanto másajustada es la región de covarianza actualizada que encierra la región de in-tersección, de forma más efectiva es utilizada la información para la etapa deactualización. La intersección se caracteriza por la combinación convexa delas covarianzas. El algoritmo de la intersección de la covarianza se muestra acontinuación:

P −1cc = ωP −1

aa + (1− ω)P −1bb (3.3)

P −1cc c = ωP −1

aa a + (1− ω)P −1bb b (3.4)

donde ω ε [0, 1].

3.1Para una matriz de covarianza P se corresponde con el lugar geométrico de los puntosp : pT P −1p = c, donde c es una constante

Page 33: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 27

Figura 3.1: Silueta de la elipse de la covarianza actualizada. Las varianzas Paa

y Pbb se corresponden con las elipses sólidas exteriores. Las elipses discontinuasrepresentan los valores de Pcc que surgen para diferentes valores de Pab. La ac-tualización con estimaciones verdaderamente independientes se correspondencon la elipse sólida interior.

La manipulación libre de este último parámetro influye sobre las ponde-raciones W asociadas a a y b. Así, diferentes valores para ω [Hall] puedenusarse para optimizar la actualización respecto a algún criterio cuantitativo,como por ejemplo minimizar la traza o el determinante de la matriz P cc. Lasfunciones de coste, las cuales son convexas respecto al parámetro ω, disponende un único óptimo en el rango de operación; virtualmente, cualquier tipo deoptimización (desde Newton-Raphson a otro tipo de técnicas) pueden ser uti-lizadas para minimizar cualquier tipo de norma. En el algoritmo 1 se incluyeun código de ejemplo para la optimización de ω en el proceso de fusión de dosestimaciones.

Respecto a la convergencia del mismo, algunas consideraciones deben to-marse en cuenta para que la propia actualización de la estimación no superea la estimación anterior en sí. Supongamos por ejemplo que se toma un valorfijo de ω = 0,5. En este caso, la estimación actualizada sería simplemente lamisma que la de Kalman, pero con una covarianza multiplicada por un fac-tor de 2. Así, una actualización cuya observación tuviera un valor alto parala covarianza, sobreestimaría a la propia estimación anterior. En resumen, eluso de un valor fijo para el tamaño de la covarianza en el algoritmo de CI

Page 34: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 28

Algoritmo 3.1 Función que implementa el algoritmo CI para: a) fusión dedos estimaciones a,A,b, B para proporcionar c, C, y b) Calcular el valorde ω el cual minimiza el det(C). La matriz de observación es H.

function [c,C,omega]=CI(a,A,b,B,H)% % Estimaciones% (a,A) y (b,B) para proporcionar estimacion (c,C) y el valor% de omega que minimiza el det(C). La matriz de observacion es HAi=inv(A);Bi=inv(B);% Calculo de omega mediante la funcion de minimizacion con% restricciones: fminbnd().f=inline(’1/det(Ai*omega+H”*Bi*H*(1-omega))’, ...

’omega’, ’Ai’, ’Bi’, ’H’);omega=fminbnd(f,0,1,optimset(’Display’,’off’),Ai,Bi,H);% La version sin restricciones de la optimizacion:% omega = fminsearch(f,0.5,optimset(’Display’,’off’),Ai,Bi,H);% omega = min(max(omega,0),1);% Nuevo valor para la covarianza:C=inv(Ai*omega+H’*Bi*H*(1-omega));% Nueva media:nu=b-H*a;W=(1-omega)*C*H’*Bi;c=a+W*nu;

Page 35: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 29

implicaría la divergencia del propio método.

Como resumen, el algoritmo de intersección de la covarianza ofrece unalgoritmo general de actualización que es capaz de generar una estimaciónactualizada incluso cuando no son conocidas la correlación de la predicción yde la observación.

Figura 3.2: Distintos resultados para el algoritmo de CI:(a) Estimaciones ini-ciales de las covarianzas y la covarianza actualizada calculada por el filtrode Kalman; (b) Posible covarianzas actualizadas calculadas a partir de unacombinación convexa de dos covarianzas iniciales parametrizadas por ω. (c)Covarianza actualizada como la combinación convexa de las dos covarianzasiniciales que maximiza la información (minimizan el área encerrada por laselipses) (d) Caso donde una covarianza inicial domina el resto.

Page 36: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 30

3.2.3. Usando el algoritmo CI para fusión descentrali-zada de datos

Supongamos el peor caso de red: de topología completamente arbitraria, deN nodos, que puede cambiar dinámicamente. Cada nodo dispone únicamentede información sobre quiénes son sus vecinos, y el formato de comunicaciónentre los mismos. Asumiendo que los ruidos relacionados con el proceso y conlas mediciones son independientes, la única fuente de correlaciones no mode-ladas es el propio sistema de fusión de datos. En este caso, el algoritmo CIpuede ser aplicado para desarrollar un algoritmo descentralizado y distribuidode fusión de datos que haga uso de esta red.

En cada nodo se dispone de varios elementos (figura 3.3):

Estimaciones de otros nodos, correladas un cierto valor desconocido,

Medidas tomadas localmente, que pueden ser fusionadas utilizando elfiltro de Kalman, dado que son independientes.

Proceso de estimación del estado.

Figura 3.3: Forma canónica del nodo en un red descentralizada de fusión dedatos que produce estimaciones locales del estado utilizando algoritmo CIpara combinar información recibida de otros nodos y un filtro de Kalmanpara incorporar medidas sensoriales independientes.

Page 37: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.2. Intersección de la covarianza 31

Para describir los pasos que se llevarían a cabo en cada uno de los nodos,supongamos que la estimación en el nodo i− esimo se representara por xi(k |k), con su covarianza asociada P i(k | k). Supongamos que en el instante detiempo k + 1, el nodo realiza una observación de forma local, representadapor zi(k | k). El algoritmo de fusión distribuido para la propagación de laestimación del estado desde el instante de tiempo k hasta el siguiente k + 1para el nodo i− esimo tiene los siguientes pasos:

1. Se realiza el proceso de predicción en el nodo i− esimo en el instante detiempo k + 1 usando las ecuaciones de predicción del algoritmo clásicode Kalman.

2. Se usa la ecuación de actualización del filtro de Kalman para actualizarla predicción de zi(k | k). Esta actualización es la estimación distribuidacon media x∗

i (k+1 | k+1) y covarianza P ∗i (k+1 | k+1). Esta estimación

no es final, dado que no incluye medidas de observación ni estimacionespropagadas de otros nodos.

3. El nodo i− esimo propaga su estimación a todos sus vecinos.

4. El nodo i− esimo fusiona su predicción xi(k+ 1 | k) y P i(k+ 1 | k) conlas estimaciones distribuidas que ha recibido de sus vecinos para generarla actualización parcial x+

i (k+ 1 | k+ 1) y P +i (k+ 1 | k+ 1). Es en este

punto donde se utiliza el algoritmo CI, dado que estas estimaciones sonpropagadas sin conocimiento alguno de las correlaciones. Finalmente, elnodo i− esimo usa las ecuaciones de actualización del filtro de Kalmanpara fusionar zi(k+1) con la actualización anterior parcial para generaruna nueva estimación xi(k+ 1 | k+ 1) con covarianza P i(k+ 1 | k+ 1).El nodo incorpora su última medida al proceso usando las ecuaciones delfiltro de Kalman, gracias a que ésta es independiente de la predicción ode la información proporcionada por el resto de sus vecinos.

Este algoritmo tiene una serie de ventajas; entre otras, los nodos propagansu estimación local más actualizada, sin consideraciones de robustez en lascomunicaciones. Puede haber ciclos, enlaces bidireccionales, o incluso pérdidade paquetes o redundancia de los mismos. Otra ventaja pudiera ser el hechode que las tasas de actualización y refresco de los diferentes filtros no tienepor qué ser la misma. Por último, se establece el hecho de que cada nodopuede tener un modelo distinto para la observación: algunos pueden disponerde un modelo muy preciso para algunas variables relativamente importantes,mientras que otros pueden disponer de precisión para otro subconjunto de lasmismas; al final, la estimación consistirá en la unión de la información másprecisa de todos los nodos.

Page 38: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.3. Unión de la covarianza 32

3.3. Unión de la covarianzaTal y como se ha visto hasta ahora, el algoritmo de CI proporcionaba una

solución para el problema de la fusión de datos para estimaciones de mediay covarianzas, en entornos arbitrarios. En la práctica, además del anterior,también se presentan otro tipo de problemas incluso antes de que el procesode fusión pueda llevarse a cabo. Más concretamente, antes de fusionar dos omás medidas, es necesario comprobar si estas son mutuamente inconsisten-tes. Por ejemplo, supóngase dos medidas de posición que difieren en más deun kilómetro, pero que sus respectivas covarianzas sugieren que su precisiónes del orden del metro; en este caso se observa claramente que hay algún error.

Un mecanismo existente en la literatura para detectar desviaciones esta-dísticamente significativas entre estimaciones es el método de las distancias deMahalanobis. Esta distancia, entre dos estimaciones a,A y b,B se definecomo:

(a− b)T (A + B)−1(a− b)la cual es básicamente el cuadrado de la distancia entre la medida norma-

lizada por la suma de sus respectivas covarianzas. Intuitivamente, si estas sonmuy elevadas, entonces existirá una gran diferencia entre los vectores de me-didas a y b, con lo que la distancia de Mahalanobis será pequeña, y viceversa.Una medida elevada para esta distancia indicará que las estimaciones no sonconsistentes entre sí, dejando a elección del usuario la elección de los rangos deaceptación en función del problema dado. Cuando se sobrepasa algunos de loslímites de aceptación, es necesario tomar alguna medida al respecto. Resolverlas inconsistencias que han producido dicho exceso, es lo que se conoce comodeconfliction3.2.

En este tipo de problemas, lo único que se conoce es que al menos algunade las estimaciones (a,A o b,B) es consistente con el estado real del ob-jeto de interés. Dado que generalmente no es posible conocer cual de las dosestimaciones es espúrea, la única forma rigurosa de combinar ambas estima-ciones es formando una estimación a partir de la “unión” de ambas [Uhlman],u,U, la cual garantiza que es consistente respecto a las dos estimacionesoriginales. Dicha unión puede calcularse a partir de las dos estimaciones como

U ≥ A + (u− a)(u− a)T (3.5)U ≥ B + (u− b)(u− b)T (3.6)

3.2Dado que la traducción literal al castellano es “Evasión de conflictos”, a lo largo delpresente texto se seguirá utilizando la definición anglosajona.

Page 39: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.3. Unión de la covarianza 33

donde algún tipo de medida asociada a U (por ejemplo, el determinan-te) se utiliza para ser minimizada. Esta unión de las estimaciones puede serposteriormente fusionada con alguna otra estimación utilizando el algoritmoCI. De forma intuitiva se puede ver a partir de las ecuaciones anteriores quesi una estimación a,A es consistente, entonces la traslación del vector ahacia u requerirá que su covarianza sea expandida con la suma de una ma-triz que al menos sea tan grande como el producto exterior de (u − a) paraque sea consistente (del mismo modo si se realiza con b). Así, el algoritmo deCU (Covariance Union, en adelante) determina el vector medio que tenga lamenor covarianza U que sea lo suficientemente grande para garantizar la con-sistencia sin tener en cuenta cual de las estimaciones de entrada es consistente.

Como un simple ejemplo de la implementación de CU, considérense dosestimaciones a,A y b,B relacionadas con la posición de algún objetivoen tierra respecto a dos UAV que sobrevuelan la zona. Supongamos que laobservación que proporciona el primero de los UAV (en adelante nodo) esta-blece que a = [0, 0]T , y que el segundo nodo la establece en b = [4, 4]T , y cadauno posee una matriz de covarianza del error equivalente a la identidad. Sise determina que ambas medidas son inconsistentes entre sí, implicando estoque al menos una no es consistente con la posición real del objeto, entonces esnecesario aplicar el proceso de deconfliction. La estimación óptima resultantede aplicar el algoritmo CU puede ser 3.3

u =[

22

]

U =[

5 44 5

]

Es sencillo ver cómo la estimación proporcionada es consistente con las dosestimaciones de partida. Si por ejemplo a,A es una estimación consistentecon la posición del objetivo, entonces la covarianza U para la estimación udebe ser mayor o igual que A + (u−a)(u−a)T . Como conclusión, si algunade las dos estimaciones representara una estimación consistente del estado delobjeto, el resultado obtenido por el algoritmo CU también sería consistente.

3.3El cálculo no es inmediato, es necesario aplicar un conjunto de rutinas basadas en laoptimización del determinante [Wu].

Page 40: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.3. Unión de la covarianza 34

3.3.1. Ejemplo de tolerancia a fallos en una red descen-tralizada

Considérese el caso de una red arbitraria, que puede cambiar dinámica-mente, similar a la expuesta en otros casos. Supóngase que todos los nodos dela red presentan un proceso de convergencia al mismo estado de un objeto deinterés, a,A.Si la estimación en un nodo en particular introduce informa-ción espúrea inconsistente, del tipo a∗,A∗, ¿cuales serían las consecuenciasa largo plazo de la propagación de este tipo de información corrupta?

Supongamos que esta estimación dañina se ha producido en el nodo i −esimo de la red, y que se desvía bastante del verdadero estado lógico del objeto(haciendo uso de la definición de Mahalanobis). A partir de este punto, sepueden considerar dos casos: intercambio de información síncrona, o asíncrona.

Síncrono:Ambos nodos intercambian sus respectivas estimaciones, y determinande forma independiente que son inconsistentes con la propia. Dado queningún nodo puede determinar (a priori) cual de las dos es espúrea, seaplica el algoritmo CU para producir una estimación consistente. En estepunto, la estimación inconsistente a∗,A∗ ha sido sustituida por unaconsistente de la forma u,U, y consecuentemente eliminada. Se ponede manifiesto que no ha sido necesario determinar qué estimación erainconsistente; se elimina, y se sustituye por una que sí lo es. El aspectonegativo se refiere al nodo cuya estimación era consistente de partida,dado que ha sido sustituida por una que posee una covarianza mayor.Sin embargo, futuras comunicaciones y fusiones haciendo uso del algo-ritmo de CI provocará que el estado vuelva a tener la estimación originala,A.

Asíncrono:Existen dos formas, en el caso de intercambio de información asíncrona,en el que la estimación espúrea puede ser combinada con estimacionesde otros nodos:

1. La estimación consistente a,A es transmitida hasta el nodo idesde alguno adyacente: en este caso, al detectarse la inconsisten-cia, salta el algoritmo CU, y sustituye la actual por el resultadodel algoritmo, u,U. En este punto, las estimaciones en la redson consistentes, pero no similares. Sucesivamente, y como se havisto en el caso síncrono, mediante fusiones con el algoritmo CIfinalmente se volverá a la estimación de partida, a,A.

Page 41: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.3. Unión de la covarianza 35

2. La estimación inconsistente a∗,A∗ es transmitida desde el nodoi hasta alguno adyacente. En este caso, el nodo que recibe la esti-mación espúrea aplica el algoritmo CU, y obtiene una estimaciónconsistente. Sin embargo, el nodo i sigue conteniendo la estimaciónespúrea, mientras que su vecino contiene la misma, pero degradadahasta hacerla consistente. En adelante, se pueden dar dos situacio-nes distintas:a) Si el nodo i recibe información de otro nodo (distinto del ve-

cino anterior), entonces su estimación inconsistente es sustitui-da por una que ya no lo es, y el fragmento a∗,A∗ ya ha sidoeliminado de la red.

b) Si el nodo adyacente a i recibe de nuevo información, el procesode deconfliction no será llevado a cabo, dado que la estimaciónno es inconsistente con la propia (como resultado del algorit-mo CU). En este caso, el algoritmo de CI será utilizado parafusionar las estimaciones, y el nodo adyacente almacenará aho-ra una estimación espúrea, de la forma a∗,A∗, por ejemplo.Obsérvese que esto tan solo puede ocurrir en el caso de que elnodo i transmita dos veces su estimación (espúrea) antes deque el nodo destinatario reciba información de otros nodos dela red. En este punto, ya no hay límite de propagación de lainformación espúrea en la red.

La situación anterior puede observarse de forma gráfica en la figura 3.4.La combinación de los algoritmos CU y CI proporcionan una solución con-

sistente y robusta a fallos para la gestión de problemas de información en unared descentralizada, la cual puede soportar desde tareas de control hasta degestión. La casuística anterior pone de manifiesto el hecho de que es posibleidentificar y “arreglar” los efectos de información espúrea o incorrupta en unared. Este suele ser el caso típico cuando algún tipo de sensor falla o bien de-bido a algún fallo humano.

Pero también es posible que algún tipo de adversario, con ciertos cono-cimientos de la red, introduzca información incorrupta deliberadamente paraproducir estimaciones inconsistentes, sin que los algoritmos de deconflictionadviertan de dichas inconsistencias. Este es el motivo por el cual se introduceel uso de algoritmos genéticos en el capítulo 4, para la detección temprana deinformación espúrea y su posterior tratamiento.

Page 42: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

3.3. Unión de la covarianza 36

Figura 3.4: (a) Dos nodos contienen estimaciones mutuamente inconsistentes;(b) El algoritmo de CU resuelve la inconsistencia entre estimaciones; (c) Elalgoritmo de CI obtiene mejores estimaciones de otros nodos.

Page 43: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

Capítulo 4

Algoritmo CU reforzado conSistemas Clasificadores

4.1. IntroducciónEl objetivo de la propuesta presentada en este capítulo es muy simple:

añadir cierta capacidad de inteligencia al nodo de la red descentralizada paraque sea capaz de poseer métodos más robustos para la detección de informa-ción espúrea o incorrupta. Tal y como se indicó al final del capítulo anterior,el principal problema que presentaba el algoritmo de la unión de la covarianzapara la detección y corrección de inserción en la red de información corruptaera el hecho de que se podía dar la situación en la que, con una comunicaciónarbitraria, toda la información de la red descentralizada convergiera a un es-tado de inconsistencia con el modelo observado.

El uso cada día más extensivo de los algoritmos genéticos fue el germen pa-ra introducir la solución propuesta en este capítulo. Aplicaciones tales como elcontrol de vuelo de un equipo tipo quadrotor [Passow], control de navegaciónautónoma para robots móviles mediante GA4.1 [Manikas] o incluso en métodospara la optimización de un filtro extendido de partículas de Kalman para laestimación de estados de sistemas no lineales [Yang], sugirieron la posibilidadde una posible mejora cualitativa de la estimación del estado presente en ca-da uno de los nodos. El objetivo pues del algoritmo genético consistitía en irmodelando la información que se tiene en cada momento de la evolución delmodelo, para poder detectar posibles anomalias en cuanto a la informacióntanto propagada a partir de otros nodos, como de la información capturadaen los sensores propios del nodo.

4.1GA: Genetic Algorithms.

37

Page 44: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 38

Por último, la inserción del algoritmo genético no es suficiente para po-der resolver el problema; falta el elemento de decisión que tome la acciónoportuna asociada a la estimación en el instante de tiempo k. En la litera-tura existen muchos métodos relacionados con sistemas de decisión: desdesistemas expertos, creados por una subdivisión de Siemens para la gestión yauto-comprobación de sistemas de automatización en la década de los 70, has-ta sistemas verificadores de teoremas de alto nivel (PVS - Proof VerificationSystem). En un rango intermedio, existen muchos métodos dependiendo delnivel de complejidad que se desee adoptar. En este caso, se plantea el uso desistemas clasificadores, cuya principal característica pudiera ser la velocidadde respuesta y la adecuación dinámica al entorno sin necesidad de comproba-ción humana alguna.

En este capítulo se presentan en primer lugar, los fundamentos básicos delos algoritmos genéticos y los sistemas clasificadores. Posteriormente se propo-ne una posible solución en la que se integrarían el propio sistema clasificadorjunto con el algoritmo genético, donde el principal objetivo sería que el algorit-mo genético se fuera adaptando a la evolución del subsistema local observadodesde el nodo, de forma que cuando algún tipo de información no correladaespúrea entrara en el sistema, no pasara por la lógica del algoritmo de CUy posteriormente al de CI, sino que de forma adaptativa el sistema clasifica-dor fuera rechazando dicha estimación, hasta el punto de que si ésta fueracontinuamente introducida en el sistema, bien pudiera ser por un cambio realen el modelo observado, con lo que el sistema empezaría a otorgarle mayorcredibilidad hasta el punto de ser considerada para el proceso de estimación.

4.2. Teoría del Aprendizaje en Sistemas Cla-sificadores

4.2.1. Teoría del AprendizajeSin pérdida de generalidad, se puede decir que el aprendizaje es un proce-

so cognitivo mediante el cual un agente adquiere conocimiento, o aumenta lacalidad y/o cantidad que poseía anteriormente, y mejora sus habilidades parallevar a cabo una tarea. En algunos casos dicho conocimiento pueden poseerlootros agentes que podrían actuar como maestros, o incluso como oráculos4.2.Por aprendizaje básico se entiende el que se da en el reino animal: cuando losorganismos se ajustan o adaptan al conjunto de estímulos que provienen delentorno, es decir, reciben información y la almacenan con el fin de reutilizarla

4.2Se establece en el mundo de la IA que un oráculo es un ente que posee el conocimientouniversal, suponiendo siempre la hipótesis de mundo cerrado.

Page 45: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 39

en situaciones o patrones de estímulos semejantes, se puede decir que apren-den.

Si se trata el aprendizaje desde un nivel de abstracción superior, adqui-rir un concepto o una conducta motora o intelectual está considerado comoun caso estándar de los procesos de aprendizaje: ni dichos conceptos ni lasconductas aprendidas han de ser justificadas por el agente para contar comoaprendidas. Es decir, el agente no tiene que dar una explicación del proceso.Llegando aun más lejos, algunos autores afirman que tampoco debe preocu-parse por la veracidad o utilidad de lo aprendido, simplemente de aprenderlo.

En general, este proceso puede tener dimensiones gigantescas, pero en con-traposición, existen variantes muy simples que serán las tratadas en la siguien-te propuesta. Entre estas variantes se pueden mencionar aquellas que ven alaprendizaje como un tipo especial de mecanismo de resolución de problemasen el que las tareas de búsqueda en un espacio y de representación del co-nocimiento son muy relevantes. Si se situa el contexto más concretamenteen el caso de los Sistemas Clasificadores, se pueden identifican los siguientescomponentes (descritos en secciones posteriores):

Módulo de reglas clasificadoras: conjunto de reglas para el modelo localobservado.

Módulo de selección: dispara la acción relativa a la estimación actual.

Módulo de algoritmo genético: para un instante de tiempo k, representatodo el conocimiento hasta el instante de tiempo k − 1.

Módulo de recompensa: proporciona recompensa en función de la satis-factibilidad de la acción tomada respecto a la estimación.

El agente o nodo debe disponer de al menos un algoritmo de aprendizaje;dicho algoritmo o estrategia es un algoritmo genético o evolutivo. A medidaque se van recibiendo estimaciones de otros nodos o medidas de los sensores,el sistema aumenta su conocimiento, y sus capacidades se verán ampliadas.La representación del conocimiento puede hacerse de varias formas, pero eneste caso en concreto será con clasificadores. De la calidad del conocimientoque se tenga en la base de reglas, depende la calidad de lo aprendido.

Los métodos de aprendizaje se pueden intentar clasificar según la cantidadde conocimiento que poseen. Entre los llamados weak-methods están los algo-ritmos genéticos o las redes neuronales. Estos métodos son muy mecánicos.En el otro lado están los rich-knowledge methods, basados en heurísticas debúsqueda y grandes cantidades de conocimiento de respaldo.

Page 46: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 40

4.2.2. Algoritmos GenéticosLos principios básicos fueron establecidos por J.H. Holland [Andreas], el

cual pretendía establecer un nuevo paradigma de computación basado en losprincipios de la teoría de la evolución de Darwin. Los algoritmos genéticos sonalgoritmos de búsqueda adaptativos basados en principios derivados de la evo-lución en un conjunto de individuos. Así, un algoritmo genético se caracterizapor:

Una población de estructuras (individuos) que representan solucionescandidatas del problema a resolver.

Mecanismo de selección competitiva basada en la bondad ( relativa a lapoblación) de cada individuo.

Operadores genéticos idealizados que modifican las estructuras seleccio-nadas para obtener nuevos individuos.

Esquema general de un algoritmo genético:

algoritmo genético

t := 0inicializa(t)evalúa (t)mientras !finalización hacer

selecciona l’(t) de l(t)modifica l’(t) para obtener l(t+1)evalúa l(t+1)t := t +1

fmientras

fin

Todo ello permite al algoritmo genético explotar todo el conocimiento acumu-lado durante la búsqueda de tal manera que se consiga un equilibro entre lanecesidad de explorar nuevas partes del espacio de búsqueda y la necesidadde centrarse en zonas de alta adaptación del mismo. Aplicado a este con-texto, lo ideal sería “excitar” inicialmente al modelo con un conjunto ampliode estimaciones iniciales. Esto provocará que se cubra un amplio abanico deposibilidades, haciendo el método más robusto.

Page 47: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 41

4.2.2.1. Algoritmo genético canónico

El algoritmo genético actúa sobre una población de longitud fija sobre unalfabeto Ξ que representan soluciones candidatas del problema a resolver –cromosomas-. De cada uno de estos individuos se dispone de una medida desu nivel de adaptación denotado por Γ, donde Γ es la función de adaptacióno de adecuación.

Pasos en cada etapa

Selección: La idea en esta sección es que sean los mejores individuos de lapoblación los que se reproduzcan, los que tengan mejor funciónde adaptación. En este caso, en la población (o conocimiento delmodelo) se quedarán el conjunto de estimaciones consistentes ymás probables con el modelo actual.

Modificación: El objetivo es generar nuevos puntos en el espacio de búsqueda.Como estos han sido obtenidos a partir de los individuos de lapoblación actual, es muy probable que pertenezcan a zonas conaltos niveles de adaptación.

Operadores

Combinación: Combina la información procedente de dos individuos para ge-nerar otros dos. Explota el espacio posible de estimaciones.

Mutación: Dado un individuo, modifica aleatoriamente una de las posicio-nes de su cadena. Así se garantiza que es posible cubrir todo elespacio de búsqueda. Ambos operadores se aplican probabilística-mente sobre el conjunto de individuos seleccionados. Existen máspropuestas de operadores genéticos: combinación bipuntual, com-binación uniforme,etc.

Política de sustitución Existen dos grandes tendencias para decidir si enun paso determinado se modifica toda la población o tan solo a una parte.

Modo poblacional: Se seleccionan individuos a los que se les aplicará con cier-ta probabilidad un operador u otro. En el caso de cruzamiento, losindividuos generados sustituyen a sus progenitores.

Modelo de estado fijo: De entre toda la población, se eligen a dos para combi-nar. Posteriormente se elige a otro para ser eliminado, normalmen-te el peor adaptado, y se sustituye por el mejor de los elementosgenerados.

Page 48: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 42

Definición de Esquema y Longitud de definición

Esquema: Toma la forma de una cadena de igual longitud que los elementosde la población, pero aumenta su alfabeto con el símbolo > (noimporta). Este símbolo indica que el valor que haya en la posiciónque ocupa en la cadena no es relevante para estudiar el valor de lafunción de adaptación. Así, las posiciones de un esquema que nocontienen al símbolo > se denominan definidas.

Orden de un esquema O(H): Número de posiciones definidas que posee unesquema.

Longitud de definición Λ(H): Distancia entre las posiciones definidas más ex-ternas.

4.2.2.2. Críticas del teorema enunciado por Holland

Desigualdad: El uso a largo plazo (entre varias generaciones) es inviable.

No aparecen nuevas instancias de un esquema dado.

Considerar las interacciones entre los diversos esquemas (el teorema losignora).

Hipótesis de uniformidad: Diversas muestras de individuos de un es-quema pueden dar estimaciones de la bondad de dicho esquema muydiferentes.

Al concentrarse la búsqueda en una zona del espacio del problema (oen ciertos hiperplanos), las interpretaciones sobre las restantes posiblessoluciones dejan de ser significativas.

Convergencia prematura: Es causa del anterior punto, y se basa en quelas estimaciones de la bondad de los hiperplanos solamente serán rele-vantes en las primeras generaciones. Si en las poblaciones iniciales antesde haber explorado muchas zonas del espacio de búsqueda, existen hi-perplanos muy buenos, la búsqueda se centrará rápidamente en estos,de manera que es posible que nunca se encuentre el óptimo.

4.2.3. Sistemas ClasificadoresLos Sistemas Clasificadores, también llamados CS o CFS (Classifier Sys-

tems), fueron presentados por Holland en 1975. Estos sistemas son similares aun sistema experto, pero el conocimiento se van adquiriendo dinámicamente,lo que es condición indispensable para el contexto actual. Se emplean cuandose desea controlar o emular un entorno caracterizado por:

Page 49: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 43

Cambios constantes, eventos importantes mezclados con ruido: el pro-blema de ruído en los sensores queda implícito en el modelo.

Necesidad de actuar sobre él en tiempo real: en función del tipo de red,puede ser necesario.

Objetivos implícitos sin definir o mal definidos.

No necesita un experto humano.

Sirve para una multitud de entornos distintos.

A partir del modelo original propuesto por Holland, han surgido muchas mo-dificaciones. Algunas de ellas han asumido conceptos de “Aprendizaje evo-lutivamente reforzado” (ERL) y de “Q-learning” (aunque este último no esrealmente evolutivo), y por ello también lo llaman Q-CS, QLCS, etc. Recien-temente Holland lo nombra “sistema de agentes adaptativos”.

La idea inicial era construir ANIMATs (Animal+roboT) que pudieran evo-lucionar en un entorno. Pero no solo sirve para robots sino en cualquier tareasoftware que requiera autoaprendizaje. El LCS (Learning Classifier System)se basa en un conjunto de “Reglas de Aprendizaje” como la siguiente, tambiénllamadas clasificadores:

IF <condicion> THEN <mensaje>

A ello se le llama “Sistema de Producción”, que es computacionalmente com-pleto (dentro del entorno que queremos simular/controlar). Las condicionesutilizan el código binario 0,1,*, siendo * “no importa”; y los mensajes uti-lizan el código binario 0,1.

En el proceso se identifican los siguientes componentes:

La base de reglas, que contiene una serie de clasificadores (reglas) con elconocimiento necesario para aplicar acciones sobre la estimación dada.

El estímulo, o recepción de estimación (bien local o de otros nodos),aquello que se captura en los detectores y actúa sobre el dominio apartir del contenido de la base de reglas y del aprendizaje.

Los mensajes, que son pares (estímulo-acción), y que asocian la accióncorrespondiente a un estímulo según el conocimiento que tenemos en labase de reglas.

El mecanismo de evaluación, que permite conocer el nivel de actuacióndel nodo sensorial.

Page 50: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 44

Figura 4.1: Sistema Clasificador canónico.

Asignación de credibilidad, que va incrementando la credibilidad, salud,aptitud, etc. de una regla en función de su salida frente al estímulo quela ha lanzado. Aplicado al contexto actual, bien pudiera ser la inversa dela covarianza de la medida (en el caso de valores numéricos) o bien la in-versa del determinante de la matriz de covarianza del error, ponderandomás positiviamente en cuanto menor sea el error cuadrático medio.

El contexto (o entorno), de donde se obtienen las secuencias de estímulosde trabajo.

El algoritmo genético, que permite la adaptación (evolución) de la basede reglas frente a las estimaciones que le llegan de sus vecinos.

Cada clasificador o regla tiene asociada una aptitud en función de su adecua-ción frente a las estimaciones que le llegan del exterior. Las entradas proceden-tes del entorno se codifican en una o más cadenas binarias, que se introducenen un conjunto de estímulos. Los clasificadores chequean el conjunto de estí-mulos. Si hay alguno que encaje en su respectiva condición IF , entonces seactiva el respectivo clasificador. Los clasificadores activos compiten por serseleccionados (ruleta, torneo...), en función de su aptitud. El que sea seleccio-nado, genera su respectiva acción de salida.

Otra posible implementación y perfectamente aceptada, es que de todoslos clasificadores activos, los que sean seleccionados insertan su respectiva sa-

Page 51: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 45

lida al conjunto de mensajes pudiendo ser decodificado o no para produciruna salida hacia el entorno. De esta forma realimentaríamos el sistema y elllevar a cabo una acción dependería de varios clasificadores (y no de uno sólo),pudiendo fusionar en un paso posterior, haciendo uso del algoritmo de CI, lasestimaciones proporcionadas.

El entorno debe ofrecer una recompensa a las reglas que generaron sali-das buenas (se suma a la aptitud). Esa recompensa en el supuesto anteriorse distribuye entre todas las reglas que contribuyeron a producir esa salida.Hay varios algoritmos de distribución, pero uno muy usado (y también muycriticado) es el “bucket brigade” (brigada de baldes). En el algoritmo de re-parto de recompensa “bucket brigade”, la regla que envió al entorno la salida,recibe una recompensa. Una parte proporcional de esa recompensa la cederíaa la regla que produjo el mensaje anterior que la activó. Y así hacia atrás,siguiendo la trayectoria inversa que generó el mensaje de salida.

El principal problema del LCS es que cuando los mensajes de salida sonproducidos por cadenas muy largas de reglas clasificadoras (cuando el modeloes bastante complejo de modelar), el reparto de la recompensa hace que acada una le toque muy poco, y el sistema aprende muy despacio o no aprende.En cuanto a la evolución del sistema, el objetivo es generar nuevas reglasque amplíen progresivamente la base de conocimiento inicial, por medio deun algoritmo genético. Las soluciones propuestas para resolver este tipo deproblemas pueden caracterizarse básicamente según dos criterios:

¿Qué representa un individuo en la población?En general, ha habido dos respuestas a esta pregunta, donde cada unarepresenta una “escuela” diferente en el uso de algoritmos genéticos enaprendizaje. Dichas “escuelas” son:

Michigan En este enfoque los individuos de la población representanreglas individuales, por lo que la solución del problema consiste entoda la población.

Pittsburgh La población consiste en conjuntos de reglas de cardina-lidad variable; por tanto, cada individuo representa una posiblesolución del problema a resolver.

Los sistemas que siguen la “escuela” Michigan tienen un problema adi-cional: como la solución del problema es toda la población, ¿cómo seevalúa la bondad de sus individuos de forma independiente?; pues labondad de la solución hace referencia a todos ellos. Los sistemas que

Page 52: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.2. Teoría del Aprendizaje en Sistemas Clasificadores 46

siguen el segundo enfoque siguen casi al pie de la letra el esquema ge-neral (o clásico) de algoritmo genético, ya que la población consiste endiferentes soluciones posibles que compiten entre sí.

¿Cómo se representan los objetos?Existen dos tipos de representaciones, que influyen en la definición delos operadores genéticos a utilizar.

Clásicas Se mantiene la representación de cadenas binarias, y aunqueen su mayoría la longitud de dichas cadenas suelen ser fijas en todoel desarrollo, algunas veces su longitud puede ser variable.

Ad hoc En este caso la representación es mucho más cercana al pro-blema a resolver, en tareas de clasificación suele utilizarse la repre-sentación atributo-valor.

En el primer caso, no deben hacerse apenas cambios sobre un algoritmogenético estándar. El principal inconveniente es encontrar una repre-sentación binaria adecuada a nuestro problema. La gran ventaja es quela mayor parte de la teoría de los algoritmos genéticos se ha realizadopara este tipo de representaciones. Para el tipo ad hoc, se deben dise-ñar también los operadores genéticos concretos que puede ser una tareacomplicada, pero al estar más cercanos al problema a resolver, suelenser más eficientes.

Page 53: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.3. Representación y funcionamiento del sistema 47

4.3. Representación y funcionamiento del sis-tema

A continuación se detalla de forma concisa la propuesta de representaciónpara los distintos componentes del presente trabajo.

4.3.1. Presentación de la propuestaUn esquema gráfico que resume la propuesta de sistema clasificador basado

en algoritmo genético para la detección temprana de información espúrea,siendo alternativa incluso al algoritmo de CU, se muestra en la figura 4.2.

Figura 4.2: Propuesta de integración del sistema clasificador en nodo de reddescentralizada, integrando subsistemas de CI y CU.

La lógica de funcionamiento propuesta es la siguiente:

1. Los módulos de recepción de información reciben medidas en forma deobservaciones locales, z(k), o bien expresada en términos de informacióni(k) o de estimación y(k | k) de otros nodos.

Page 54: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.3. Representación y funcionamiento del sistema 48

2. El siguiente paso consistiría en trasladar la información a un sistema detraducción, bien basado en reglas o funciones heurísticas, o por tablas,para ser codificada en términos de premisas condicionales que dispareno no las reglas del sistema clasificador.

3. En el caso de que al traducir las estimaciones u observaciones:

a) Se verifica alguna premisa asociada a alguna regla, se dispararala acción asociada. La inferencia puede ser tan compleja como seanecesaria. En principio se estima que puede depender directamentede la complejidad del modelo (2.19), y puede requerir varios nivelesde profundidad en la activación de reglas: reglas que sean premisaspara que otras puedan converger a la salida, por ejemplo.1) Se actualiza el conocimiento representado en la población de

“cromosomas”, mejorando la estimación que es consistente conla premisa actual.

b) No se verifica ninguna regla: No se dispara ninguna acción: no fusiónlocal, ni CI, ni CU. Se actualiza el conocimiento hasta el instantede tiempo k representado en el algoritmo genético mediante losoperadores vistos en la sección 4.2.2.1, expandiendo el espacio desoluciones para aceptar la estimación de entrada.

En ambos casos, se actualizan las premisas que disparan las reglas cla-sificadoras, dado que hay que realimentar (positiva o negativamente) yrepresentar en conocimiento la estimación de entrada actual.

4. Si la salida ha producido algún tipo de estimación por fusión median-te CI, se calcula algún parámetro numérico relativo a la misma, para,mediante algún tipo de lógica, como el “Bucket brigade”, repartir la“recompensa” entre las reglas que han producido la acción de salida.

5. La salida, estimación o medida de información se propaga mediante loscanales de comunicación adecuados al resto de nodos.

La evolución del modelo quedará representada en la evolución del propio al-goritmo genético, de forma que cuanto más complejo sea el modelo, mayornúmero de posibles estados habrá considerado el propio algoritmo. Para de-terminar la propia consistencia de la estimación, o de la medida obtenida, sehace evolucionar al mismo tiempo el sistema clasificador, el cual se encargaría,entre otras cosas, de detectar cuando un elemento de entrada es corrupto oinconsistente con la información/estimación local. Así, cuantos más paquetesde datos pasen por el nodo, más se reforzará su conocimiento, y capacidad de

Page 55: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.3. Representación y funcionamiento del sistema 49

actuación.

En la sección 4.3.3 se propone un algoritmo para la actualización de los ni-veles de adaptación de las reglas. En la literatura [Baños] se pueden encontrarotros algoritmos, tanto para esta actualización, como para la propia evolucióndel algoritmo genético.

4.3.2. ClasificadorEl clasificador típico no es más que una lista con tres elementos:

Nivel de adaptación o salud: Número natural mayor o igual que cero.Representa la inversa de la covarianza (o la inversa del determinante, ensu caso).

Cabeza de la regla: Es una lista de la forma

(1 0 * ... * 1)

donde cada elemento de la lista pertenece al dominio de definición delproblema, y el carácter * se corresponde a ’no importa’.

Acción asociada: En esta propuesta se ha considerado como un númeroentero natural, pero es independiente de la evolución del sistema, con loque otra representación válida podría haber sido un carácter o inclusouna cadena de símbolos. Con números naturales es más intuitivo verla salida del sistema, pudiendo asignar acciones en función del valor dedicha salida.

Un ejemplo de representación interna de un clasificador en el presente trabajoes el siguiente:

(3 ( 4 1 * * 0 0))donde:

3 : Nivel de adaptación de la regla.

4 : Salida de la regla (acción).

(1 * * 0 0): Cabeza de la regla.

En esta propuesta se ha seguido el modelo Pittsburgh, en el cual la acción decada clasificador representa una posible solución del sistema.

Page 56: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.3. Representación y funcionamiento del sistema 50

4.3.3. Algoritmo de actualización de los niveles de adap-tación

El algoritmo que se ha seguido para la actualización de los niveles deadaptación de los clasificadores del sistema es el siguiente:

1. Todos los clasificadores parten con un valor del nivel de adaptación iguala cero (y(0 | 0) = 0).

2. Hasta que el número de iteraciones sea mayor que un índice, o no haya-mos excedido algún horizonte temporal:

a) Elegimos un ejemplo aleatorio del histórico.b) Elegimos un clasificador cuya cabeza de regla coincida con el estí-

mulo.c) Si la salida de la regla coincide con la acción del clasificador aumen-

tamos el nivel de adaptación en cierta cantidad. Si no es el caso,decrementamos dicho nivel de adaptación en la misma cantidad.

3. Devolvemos el conjunto de clasificadores.

4.3.4. Interpretación de los resultadosDado que la alternativa que se ha propuesto es completamente genérica, lo

único que faltaría sería dar un significado a lo que representaría un estímulopara el sistema, y lo que se correspondería con una acción en el entorno. Unejemplo de esto es el dado en [Baños], el cual es mostrado a continuación.

Conjunto de situaciones posibles:

IF inconsistencia baja con est. valor0 yvalorLocal valor00 THEN @

IF inconsistencia alta con est. valor1 yvalorLocal valor11 THEN %

IF inconsistencia leve con est. valor2 yvalorLocal valor01 THEN $

IF inconsistencia grave * * THEN *

Conjunto de “estados posibles”. Combinación con sensores entrada en elentorno actual:

Page 57: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.3. Representación y funcionamiento del sistema 51

IF @ THEN aceptarlaIF % THEN fusionarla_CUIF $ THEN fusionarla_CIIF * THEN rechazarla

Donde una posible codificación del conocimiento podría ser la siguiente:

Nivel de inconsistencia de la estimación con la local:

0000=baja1111=grave

Estado relativo al modelo observado:

00=valor001=valor110=valor211=valor3

Mi acción:

00=rechazarla01=fusionarla_CI10=fusionarla_CU11=aceptarla

Estimación local a partir de las medidas observadas:

00=valor0001=valor0110=valor1011=valor11

Símbolos internos:

0000=@0001= %0010=$1111=!1000=*

Page 58: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.3. Representación y funcionamiento del sistema 52

4.3.5. ConclusiónLa propuesta presentada en este capítulo puede suponer, si fuera consi-

derada como argumento central de posteriores investigaciones, una posiblealternativa a la detección de información espúrea o incorrupta, o incluso, sifuera suficientemente expresivo, podría llegar a considerarse como un elemen-to central de fusión y estimación de las medidas, para la obtención del estadolocal. Se ha demostrado a lo largo de muchas décadas que la utilización demétodos relacionados con la inteligencia artificial han supuesto verdaderas so-luciones a problemas que inicialmente se planteaban irresolubles, o que hanarrojado mejores soluciones que los métodos clásicos.

Existe multitud de bibliografía relacionada con estimación y fusión de da-tos (centralizada o descentralizada), ya sea para seguimiento de característi-cas, para localización y mapeado del entorno (SLAM), navegación de vehículosmóviles, etc. Al mismo tiempo, existen una vasta colección de libros y publi-caciones en general sobre inteligencia artificial, aplicados a problemas típicosdel mundo de la robótica. Sin embargo, existe poca bibliografía relativa ala fusión de estas dos técnicas anteriores [Manikas], en la cual no se hacemención alguna a posibles alternativas a los problemas típicos existentes alimplementar una red descentralizada para fusión de datos. Así, el objetivodel presente trabajo ha sido el de exponer brevemente conceptos relacionadoscon el DDF, diferentes alternativas de implementación, sus inconvenientes, yposibles soluciones basadas en otras disciplinas.

Page 59: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

4.3. Representación y funcionamiento del sistema 53

Page 60: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

Bibliografía

[Andreas] Holland Classifier Systems, Department of Applied ComputerScience, Institute of Information Processing and InformationEconomics, Vienna Universty of Economics and Business Ad-ministration, 1995.

[Baños] Computación evolutiva (CE) Sistemas Clasificadores. AngelGarcía Baños. Escuela de Ingeniería de Sistemas y Compu-tación. Universidad del Valle, 2008.

[Berg] T. Berg. Model Distribution in Decentralized Multi-Sensor DataFusion. PhD thesis, The University of Oxford, 1993.

[Capitan] Cooperación Descentralizada para Percepción Activa con Múl-tiples Robots. Tésis Doctoral. Jesús Capitán Fernández, 2011.

[Durrant] Introduction to Decentralised Data Fusion. Hugh Durrant-Whyte. September 27, 2002.

[Gardner] Horizontal Integration based upon Decentralized Data Fusion(DDF), NetCentric Architecture (NCA), and Analysis Collabo-ration Tools (ACT). C4ISR/C2 Architecture. Sheldon B. Gard-ner Naval Research Laboratory Washington.

[Grime] S. Grime and H. Durrant-Whyte. Data fusion in decentralizedsensor networks. J. Control Engineering Practice, 2, 1994.

[Hall] Handbook of Multisensor Data Fusion, 2001, edited by DavidHall and James Llinas.

[Kamgarpour] Convergence Propertiesof a Decentralized Kalman Fil-ter.Maryam Kamgarpour and Claire Tomlin. Proceedings of the47th IEEE Conference on Decision and Control Cancun, Mexi-co, Dec. 9-11, 2008.

[Makarenko] Decentralized Data Fusion and Control in Active Sensor Net-works. Alexei Makarenko, Hugh Durrant-Whyte.

54

Page 61: Fusión Descentralizada de Datos. Mejora cualitativa para los algoritmos de tratamiento de covarianza

BIBLIOGRAFÍA 55

[Manikas] Genetic Algorithms for Autonomous Robot Navigation. Survey.Theodore W. Manikas, Kaveh Ashenayi, y Roger L. Wainwright.Diciembre 2007.

[Passow] B.N.Passow, M.A.Gongora, S.Coupland, A.A.Hopgood, Real-time Evolution of an Embedded Controller for an Autono-mous Helicopter, Proc. of the IEEE Congress on EvolutionaryComputation, WCCI’08, Hong Kong, 2008.

[Rao] B. S. Y. Rao, H. F. Durrant-Whyte, and J. A. Sheen. A fullydecentralized multi-sensor system for tracking and surveillance.Int. Journal of Robotics Research, 12(1):20–44, Feb 1993.

[Reza] Distributed Kalman Filtering and Sensor Fusion in Sensor Net-works. Reza Olfati-Saber.

[Speyer] J. L. Speyer. Computation and transmission requirements for adecentralized linear-quadratic-gaussian control problem. IEEETrans. on Automatic Control, 24(2):266–269, Feb 1979.

[Schlosser] Communication Issues in Decentralized Kalman Filters. MarkusS. Schlosser and Kristian Kroschel.

[Uhlmann] "Covariance Consistency Methods for Fault-Tolerant Distribu-tedData Fusion", J. Uhlmann, Information Fusion 4 p. 201-215,2003.

[Wu] S.-P. Wu, L Vanderberghe, S.Boyd, Maxdet: Software for deter-minant maximization problems, alpha version. Stanford Univer-sity Technical Report, April 1996.

[Yang] A method of Genetic Algorithm optimized Extended KalmanParticle Filter for nonlinear system state estimation. ShuyingYang, Wenjuan Huang et al. 2009 Fifth International Conferen-ce on Natural Computation.