Professional Documents
Culture Documents
UNIVERSIDAD COMPLUTENSE
Madrid 1998
COMPLUTENSE DE MARID
FACULTAD DE CLrj :i~ FISI:as
REGISTRo ~E
N.o RECSTRO ? -
~. ~5O 5e950
u
u
u
u
u
u
u
u
u
u
u
u
u
1
1
u
u
_u ___
J
J
J
J
ndice
INTRODUCCION 1
CAPTULO 1
ASPECTOS GENERALES 9
y
J
vi Indice
1.1.2.1. Arquitectura de fusin centralizada 21
CAPTULO 2
MODELO SENSORIAL 43
2.1. INTRODUCCION 44
U Funciones de mantenimiento: 64
CAPTULO 3
U 3.1 INTRODUCCIN 78
3.2 ALGORITMOS DE FUSIN POSICIONAL 80
U 3.2.1 Asociacin de datos 80
3.2.2 Estimacin de estado 82
3.5
3.4.1 Ecuaciones de asimilacin asncrona
RESULTADOS EXPERIMENTALES
102
104
108
U 3.5.1 Modelo del sistema y de los sensores 108
3 3.5.2 Simulaciones
Caso 1: Funcionamiento sin fallos de los sensores
Caso 2 Fallo en el funcionamiento de un sensor
110
112
117
u
u
viii Indice
CAPTULO 4
4
Indice ix
CAPTULO 5
INTRODUCCIN 202
5.1. ARQUITECTURA DE CONTROL PROPUESTA 204
5.1.1. Tareas necesarias en un robot mvil autnomo 206
CAPTULO 6
1 CONCLUSIONES 293
299
301
u BIBLIOGRAFA 303
APNDICE A 325
Definiciones 325
U Hiptesis de independencia condicional 325
Separacin direccional 326
3 Algoritmo para propagacin de la evidencia 328
Implementacin distribuida 332
3 Herramientas software 334
APNDICE B 337
Descomposicin en capas
344
345
xn ndice
Transiciones 347
APNDICE C 349
APNDICE D 353
J
J
J
Introduccin
1
J
J
Planteamiento general del problema 2
informacin.
J
Tengamos en cuenta que la percepcin de cualquier agente inteligente, y en
concreto de un robot mvil, est muy relacionada con el tipo de fuente de
informacin disponible, es decir, con los sensores utilizados Esto implica que
cualquier aplicacin que necesite diVersos sensores deba utilizar alguna tcnica de
fusin o integracin sensorial, pero su eleccin est muy condicionada por los
J
sensores empleados. Adems, stos pueden ser muy diversos y la forma de tratar su J
informacin muy variable por lo que el sistema de fusin implementado (mtodo
J
Introduccin 3
Esto provoca que los distintos algoritmos desarrollados slo puedan ser
utilizados en un conjunto muy restringido de aplicaciones y en muchos casos
incluso slo en el problema tratado. Por tanto, sera conveniente desarrollar un
sistema de integracin y fusin multisensorial que pueda ser utilizable por distintas
aplicaciones y distintos sensores.
Objetivos de la Tesis J
El diseo de un sistema de fusin de datos procedentes de distintos sensores,
sistema de integracin multisensorial, tiene muy en cuenta hacia qu tipo de
aplicacin se dirige. Incluso dentro de una misma aplicacin las opciones escogidas
en su implementacin estn condicionadas por el tipo y nmero de los sensores
Organizacin de la Memoria
La Memoria se ha dividido en dos partes: la i~itegracin multisensorial y la
arquitectura de control de robots mviles terrestres.
J
Introduccin 7
2
2
2
Capitulo 1. Aspectos generales 9
Captulo 1
Aspectos generales
2
2
2
Capitulo 1. Aspectos generales 11
Fusin multisensorial
Otros factores que influyen en el desarrollo del sistema de fusin son las 4
decisiones a tomar en tiempo real, el nmero de inferencias que se realizan por
unidad de tiempo, la velocidad d llegada de los datos, el nmero y tipo de
sensores, etc. Estas restricciones, como ocurre en el control de un mvil en tiempo
2
real, nos inducen a utilizar ciertas tcnicas frente a otras que necesitan mayor
tiempo de procesamiento. Una evaluacin sistemtica del funcionamiento en
tiempo real de sistemas de integracin multisensorial en robtica puede
encontrarse en [Zheng 89].
Finalmente, la capacidad de los sensores, las restricciones en la comunicacin J
y el sistema de procesamiento o fusin tambin afectan a la eleccin de la
arquitectura escogida. En nuestro caso se persigue que los datos transmitidos entre
2
agentes sea el mnimo indispensable.
Todos los factores enumerados anteriormente, como diversidad de J
aplicaciones, necesidades de tiempo real, sensibilidad de los sensores, etc.,
implican un amplio abanico de estructuras de control para manejar esa disparidad
de fuentes de informacin; cada una aplica una tcnica distinta de integracin de 2
los datos sensados. Las arquitecturas que se utilizan poseen. muchos puntos en
comn, pero en la mayora de los casos no son reutilizadas para otras aplicaciones,
fundamentalmente debido a su fuerte dependencia de los sensores empleados.
2
2
2
Capitulo 1. Aspectos generales 18
D
C1~
o
o
o
o
~1
oo
o
Cfl
a
C1~
o
o-
o
o-
o
Captulo 1. Aspectos generales 15
FUSION DE DATOS
Pre-procesamient
NIVEL II
Situacin
w NIVEL III
Intenciones
Interfaz
Computadora
humano
Nivel 1
Es el nivel encargado de aceptar los datos de los sensores y fusionar dichos
datos para obtener una estima de la localizacin e identidad de los objetos o
:
2
2
16 1.1. Aspectos generales de la integracin y fusin multisensorial J
entidades que afectan al sistema. Por ejemplo, en aplicaciones militares
representara una base de datos del estado de la batalla: localizacin, identificacin
Nivel II
Acta sobre los resultados del Nivel 1 para realizar la evaluacin de la
situacin, desarrollando una descripcin de la relacin entre objetos y sucesos en el
propio entorno donde se encuentran. Lasinferencias obtenidas se basan en anlisis J
espaciales, temporales y posicionales del Nivel 1. Para poder interpretar
correctamente los datos, estos anlisis se realizan teniendo en cuenta el contexto en
el que se han recibido, de igual forma que lo hara un experto humano.
Nivel III
Este nivel se encuentra por encima de los anteriores y se ocupa de realizar un
anlisis del conjunto de la situacin y de realizar inferencias y predicciones sobre e
sistema y los objetos observados. En sistemas militares se ocupa de estudiar la
2
peligrosidad de la situacin, estimando la vlnerabilidad de amigos y enemigos, las 3
intenciones del enemigo, etc. Este nivel es bastante complejo puesto que no slo
trata con los datos que recibe de los niveles inferiores, sino que intenta predecir 3
futuros comportamientos, para lo cual necesita disponer de un cierto
conocimiento, normalmente adquirido mediante aprendizaje y contenido en
grandes bases de datos, como poltica de entorno, situacin actual, doctrina del 2
enemigo, etc. En este nivel son tiles las tcnicas correspondientes a la teora de
3
juegos. n aplicaciones no militares este nivel se ocupa de identificar potenciales
3
:
2
Captulo 1. Aspectos generales 17
Nivel IV
Este nivel es considerado como un meta-proceso. Supervisa la actuacin de
los dems procesos y tiene las siguientes funciones:
:
2
3
18 1.1. Aspectos generales de la integracin y fusin multsensorial 3
est en encontrar un mtodo que permita realizar d forma sencilla la fusin de
estos tipos de datos. 3
Nivel de seal
Se utiliza en aplicaciones en tiempo real y puede verse como un 3
superconjunto de las tcnicas de procesamiento de seales, que combinan las
seales de un grupo de sensores para proporcionar una seal del mismo tipo pero 3
ms precisa o de mejor calidad. Este tipo se seales deben estar sincronizadas o en
su defecto se debern estimar sus valores en algunos instantes determinados de 3
tiempo.
de pixeles locales) y adems e mtodo escogido debe ser fcilmente adaptable para
procesar una amplia variedad de imgenes de diferentes sensores.
Nivel de caractersticas
La fusin a nivel de caractersticas se utiliza para obtener una mayor certeza
de que la caracterstica extrada de la informacin del sensor corresponde a un
aspecto importante del entorno, o para crear nuevas caractersticas asociadas que
sern usadas por el sistema.
Caractersticas tpicas extradas de una imagen y fusionadas entre s son
esquinas y regiones de similar intensidad o profundidad; aspectos importantes son
su forma geomtrica, posicin, orientacin y tiempo. De esta forma caractersticas
que estn presentes repetidamente se fusionan y por ello su precisin aumenta, y
por el contrario aquellas que no son confirmadas nuevamente se consideran
errneas y son eliminadas. El ancho de banda de comunicacin que se requiere a
este nivel es mucho menor que el de los niveles anteriores.
Nivel simblico
Este nivel permite la fusin de informacin de alto nivel de abstraccin de
diferentes sensores. Se utiliza principalmente cuando se fusionan sensores muy
distintos o que se refieren a regiones diferentes del entorno. Para ello se utilizan
mtodos de razonamiento simblico que hacen uso de informacin a priori
procedente de un modelo propio del mundo o de fuentes externas al sistema. Las
caractersticas fusionadas normalmente tienen una medida de incertidumbre para
representar tanto el grado de concordancia como cualquier incertidumbre
inherente en la informacin proporcionada por los sensores. Esta incertidumbre se
utiliza para indicar el peso relativo que un dato particular tiene en el proceso de
fusin. En inferencia estadstica, la incertidumbre de los smbolos se representa
por probabilidades y su fusin se realiza como probabilidades condicionales, que
aumentarn o disminuirn mediante el proceso de fusin. El tiempo, en este nivel,
no es tan importante como en los niveles anteriores puesto que los smbolos
fusionados no suelen variar en funcin de ste.
Por supuesto, la frontera entre estos niveles no est tan clara en sistemas de
fusin reales. En esta memoria se desarrollar un mtodo de fusin a nivel de
seal/pixel para las medidas directas de los sensores y un mtodo de fusin a nivel
de caractersticas/simblico para aquellos sensores que realizan ciertos
preprocesamientos e inferencias propias.
2
3
20 1.1. Aspectos generales de la integracin yfusin muitisensorial
ti Representacin final
de la situacin
u
3
3
2
3
Figura 1-3. Modelo del proceso de fusin orientado a su arquitectura. 3
u
u
Captulo 1. Aspectos generales 21
fr ____
Datos en FUSIOI
Asociacin bruto VECTOR DE ESTADOS
de datos ~.
Modelos fisicos Identidad
Reconoc. de patrones
1. Estimacin Posicin y velocidad
Atributos
Este tipo de arquitectura tiene la ventaja de que existe una mnima perdida
de informacin, puesto que la fusin se realiza directamente a partir de los datos
observados por los sensores. Pero tambin tiene serios inconvenientes, el principal
es que slo es aplicable a sensores similares, lo cual es una seria restriccin en un
sistema general. Incluso aunque los sensores sean idnticos, en muchos casos se
presentan dificultades para su fusin cuando se encuentran separados
geogrficamente. Adems, en esta aproximacin es necesaria una gran cantidad de
comunicacin, fuertes necesidades de clculo y complejos modelos fsicos.
3
22 1.1. Aspectos generales de la integracin yfusin multisensorial
FUSION
Estimacin de
3
Extrac-
cin
de Asocia-
Vector de
cin zaracterIstica~
.......~.
estados
Filtros de Kaman
EstirnacinBatch
VECTOR DE
ESTADOS 3
caracte- de datos Identidad
rsticas Cias (ficacin
Plantillas
Redes neuronales
Posicin y velocidad
Atributos
3
T. Bayesianas
observa cada sensor slo vienen representados por un vector de caractersticas. Por
ejemplo [Jain 95] donde se fusionan medidas de diferentes cmaras que observan
3
la misma escena, y muestra que el error disminuye a medida que aumenta el 3
nmero de cmaras (o el nmero deframes).
3
3
Capitulo 1. Aspectos generales 23
FUSION
() Ciasficacin
Plantillas
Fila- Fusin de identidad
Bayes
VECTOR DE
IDENTIDAD
Redes neuronales 4 cin *
Denxpster-Shafer 4
Votacin
Extrac- T. Bayesianas de datos
etc.
cin
de vector de __________________
Li
caracte- caractersticas
risticas Fusin de posicin
F. Kalman
o-.
estados Asocia- Est. batch POsICIN
Filtros deKaman
Estimacin de + cin >~
__VECTOR
etc. DE
3
Capitulo 1. Aspectos generales 25
ser necesario cambiar los datos a priori (por ejemplo en las
plantillas).
Asociacin paramtrica
j
FUSIN Algoritmos estadisticos
1.- DE
POSICIN Tcnicas de estimacin
Velocidad,ngulo, elevacin,
coordenadas de objetos,
Estas dos teoras nos lleva a clasificar los algoritmos de fusin de datos en dos
grandes categoras: fusin de datos de posicin y fusin de datos identidad. En la
figura 1-7 se ha incluido una subcategora correspondiente a todas aquellas
herramientas auxiliares imprescindibles en la utilizacin de los algoritmos de fusin
como por ejemplo las libreras numricas o las herramientas para manejo de bases
3
2
28 1.1. Aspectos generales de la integracin y fusin multisensorial 2
de datos. Esta tasifitacin nos determinar la definicin de nuestro modelo de
sensor lgico que se expondr en el captulo 2. 2
1.3.3.1. Algoritmos de msin de datos de posicin
Los algoritmos de fusin de posicin, o estimacin de la posicin, son 3
conocidos desde antao y como se ha indicado anteriormente abarcan desde los
mnimos cuadrados de Gauss de finales del siglo XVIII hasta el filtro de Kalman. 2
Estas tcnicas de fusin de datos utilizan modelos fsicos y suposiciones
estadsticas sobre los ruidos de las observaciones para representar los datos 2
observados en un vector de estado. El algoritmo de fusin proporciona una estima
del vector de estado que mejor se ajusta (en cierto sentido matemtico) a los datos 2
observados. Para conseguir esta estima, estos algoritmos realizan correcciones o
refinamientos sucesivos del vector de estado por medio de la diferencia entre los
ejemplo esquinas q patrones artificiales fijos), etc., aunque pueden existir sensores
3
que proporcionen directamente declaraciones de identidad.
(balizas, radio )
o como entidades fsicas <esquina, pared, ...). En
2
niveles altos se infieren relaciones entre distintos componentes o
2
deduccin de caractersticas ms intangibles como por ejemplo la
2
2
Captulo 1. Aspectos generales 31
As, aunque el uso de modelos para estimar los datos observados por los
sensores y deducir su identidad (mediante la comparacin entre las observaciones
predichas por el modelo y los datos actuales mediante tcnicas de estimacin
clsica) es perfectamente factible, pueden ser, muy complejos y la estima de la
identidad muy costosa. Esto lleva a que se planteen otras formas de fusin de
caractersticas como son,
2
2
2
2
3
2
3
2
2
2
3
2
2
Captulo 1. Aspectos generales 33
1.2.1 Industriales
~piezasoelementoscuyocostedefabricacinsilorealizasenoperarios
humanos sera mucho mayor. Por ejemplo, se pueden encontrar
robots realizando trabajos de soldadura [Hedenborn 94] o en el
3
-
pulido de piezas.
Inspeccin: aunque depende de la naturaleza de las piezas 2
inspeccionadas, cualquier tcnica de fusin e integracin
multisensorial puede ser aplicable. Esta puede ser: 2
- explcita, es decir, como una operacin separada durante o
despus del proceso de manufactura para coniprobar la
integridad de las piezas fabricadas y realizarun control de 2
calidad [Hedenborn 95], por ejemplo la inspeccin de la
calidad de las baldosas producidas [Fernndez 98] un
sistema multisensor de inspeccin de soldaduras [Lacey 93].
2
- implcita, cuando verifica la integridad de las piezas mientras 2
se manipulan. Los sensores ms utilizados son visin, por
ejemplo [Conners 97] para inspeccin de la calidad de los 2
tableros producidos en una industria maderera, sensores
tctiles [Shimoga 96] y ultrasonidos. 2
- Ensamblaje: esta es una de las aplicaciones ms complejas de la
robtica industrial, puesto que adems de las tpicas necesidades de
2
3
Captulo 1. Aspectos generales 35
1.2.2. Militares
1.2.3. Espaciales
disminuidos fsicos como son sillas de ruedas autnomas [Bel 94; Yanco 98;
Pires 98] o perros lazarillos [Borestein 98] basados normalmente en
sensores de ultrasonidos o sonar. Tambin se incluyen aqu multitud de 2
2
2
Captulo 1. Aspectos generales 37
2
2
Captulo 1. Aspectos generales 39
El JPL Mars Rover [Thompson 77; Gat 90] estaba englobado en un proyecto
iniciado a primeros de los setenta, del Jet Propulsion Laboratory de la NASA para
desarrollar un prototipo de vehculo para exploracin planetaria. La suspensin del
proyecto en 1978 provoc un retraso en el desarrollo del prototipo que fue
retomado a primeros de 1990 para desarrollar un prototipo para una exploracin
de Marte. El vehculo constaba de cmaras de TV, radar lser y un brazo para
tomar muestras.
EL NAVLAB y Terregator [Thorpe 88; Herbert 88; Thorpe 91b] son dos
vehculos terrestres autnomos desarrollados por el Instituto de Robtica de la
Universidad Carnegie-Mellon (CMU). Su principal finalidad era la investigacin en
el desarrollo de una arquitectura capaz de soportar procesamiento paralelo y
desarrollar nuevas tcnicas de percepcin, fusin e integracin multisensorial y
navegacin [Torpe 91a]. Utilizaba sensores de visin <cmaras TV de color>, radar
lser y sonar. El sistema de control constaba de distintos mdulos ejecutndose
independientemente relacionados entre s a travs de una estructura denominada
pizarra-blanca, que difiere de la pizarra clsica en que cada mdulo continua su
ejecucin mientras se realizan las peticiones de lectura de datos y sincronizacion.
Otro interesante vehculo del CMU es Alvin que desarrolla VITS [Turk 88], un
nuevo mtodo para extraccin de bordes y segmentacin para circulacin en
carreteras que es robusto ante cambios en condiciones atmosfricas,
modificaciones en el sensor, en la navegacin, etc. Este vehculo dio lugar a
ALVINN (Autonomous Land Vehicle In A Neural Network> [Pormeleau 93;
Jochem 93] que utiliza un red neuronal Backk-Propagation pard analizar la imagen
de la carretera y obtener la direccin que debe mantener el vehculo para no
salirse de la carretera.
La serie HERMIES [Weisbin 89] (tlostile Enviroment Robotic Mac/Une
Intelligence Experimental Serves) son robots mviles desarrollados por la Oak
Ridge National Laboratory para investigar plataformas capaces de navegar y
manipular objetos autnomamente en entornos complejos con total seguridad,
tales como edificios de reactores nucleares. Utiliza un array sonar para detetar
obstculos y mltiples cmaras para buscar objetos conocidos en el entorno <como
paneles de control) para su manipulacin. El mundo es modelado a priori
mediante una estructura en forma de red <o grafo). Si un obstculo es detectado
3
40 1.3. Integracin multisensorial en robots mviles 22
bloqueando un enlace entre dos nodos se vuelve al ltimo nodo visitado y se
calcula un nuevo camino. Utiliza un sistema de reglas para planificacin de alto 2
nivel y toma de decisiones, incluyendo integracin y fusin.
Blanche [Nelson 88; Cox 89] es un robt experimental desarrollado por los 2
laboratorios AT&T Bel Labs diseado para operar autnomamente en entornos
estructurados, realizando sobre l pruebas de lenguajes de programacin de
robots, integracin de sensores y deteccin de errores. Como sistema sensorial 2
para el entorno utiliza un radar lser.
El ALV (Autonomous Latid Vehicle> [Payton 90; Payton 91] fue desarrollado
2
como parte del Programa de Computacin Estratgica de la Agencia de Proyectos
de Investigacin Avanzada de Defensa <DARPA) del Departamento de Defensa de
Estados Unidos. Fue diseado para probar distintas tcnicas existentes e investigar
2
en el estado del arte sobre vehculos autnomos. La finalidad inicial del proyecto 2
era el desarrollo de vehculos capaces de circular por una carretera de forma
autnoma. Posteriormente se utiliz tambin para desarrollar vehculos capaces de 3
navegar campo a travs y probar algoritmos de esquiva de obstculos [Olin 91].
puramente distribuida.
2
Otros robots histricos que se pueden mencionar, aunque no sea una lista
completa <por otra parte inmensa), de robots mviles terrestres son el MARS <o
2
Mobi) de Stanford [Kriegman 87; Kriegman 89], el robot KAMRO de la
universidad de Karlsruhe [Rembold 88], etc. 2
En la actualidad podramos mencionar muchos otros robots desarrollados en
multitud de universidades y centros de investigacin. Podemos destacar el
numeroso desarrollo e investigacin sobre robots de la Universidad de Michigan,
2
dirigido por Borenstein, en el estudio de tcnicas de localizacin de robots 2
[Borestein 95a], esquiva de obstculos [Borestein 95b] y nuevos robots mviles
como el OmniMate [Borestein 97], robot de mltiples grados de libertad capaz de 2
moverse en cualquier direccin y girar al mismo tiempo. Otros centros de
investigacin en robots mviles son el MIT, .ya indicado anteriormente, que
3
continua investigando en nuevas tecnologas como visin artificial y lenguaje
2
3
Captulo 1. Aspectos generales 41
natural y ha desarrollado software y hardware para robots de bajo coste [Ferrel 93]
y robots humanoides como Cog [Brooks 98]. El instituto de robtica Georgia Tech,
que investiga en comportamiento reactivo y comportamiento natural basado en
esquemas de comportamiento <Schemas) [Arkin 95; Arkin 97a; Arkn 97b],
tambin en percepcin, navegacin, etc.[Arkin 91; Arkin 93]. La Universidad de
Massachusetts <UMASS) que investiga en temas relacionados con ensamblaje,
navegacin, modelos biolgicos, etc.[Grupen 93; Gon~alves 98]; o el instituto
francs INRIA (Institut National de Recherche en Informatique et en
Automatique) con una amplia variedad de reas de investigacin de las que nos
interesan percepcin, visin artificial y robots mviles.
Modelo sensorial
43
2
44 2.1. Introduccin 2
2.1. Introduccin 2
Los sensores son la parte ms importante de un robot mvil, representan sus 2
cinco sentidos y sin ellos no puede averiguar donde se encuentra, que le rodea, ni
por supuesto, moverse con seguridad. Por ello, antes de realizar un sistema de 3
integracin verstil, reconfigurable e independiente del tipo y nmero de sensores
utilizados, es imprescindible conocer los diferentes tipos de sensores que pueden
presente).
2
m-aria, cuando se aplican mltiples hiptesis sobre los datos
j
2
3
Captulo 2. Modelo sensorial 45
descentralizada.
2
As, en la seccin 2.2 se describen los sensores que pueden utilizarse en un 2
robot mvil terrestre autnomo, su aplicacin y ventajas e inconvenientes de su
utilizacin. A partir de esta descripcin, en la seccin 2.3 se obtiene una
clasificacin de los sensores que pueden utilizarse en nuestro sistema de 2
integracin y se realiza un estudio de qu informacin puede considerarse comn a
estos sensores y qu funciones son necesarias para su utilizacin. Estas 3
conclusiones son e punto de partida de la seccin 2.4, donde se define a partir de
la metodologa orientada a objetos un tipo abstracto de sensor, denominado sensor
lgico. A partir de este sensor lgico se disea el sistema de fusin general que
utiliza estos sensores y se muestra un ejemplo para clarificar su funcionamiento.
u
2
2
3
u
2
2
u
u
Captulo 2. Modelo sensorial 47
~- Potenciometros
3
Sistemas de Navegacion Inercial (Acelermetros)
Posicin (Altmetros)
4
Mecnicos
l.-ESTADO< Orientacin
Girscopos
L Opticos
-3
Absolutos
- Geomagnticos (Brjula magntica)
3
- Activas
{i
Emisores de radio (Loran)
(CPB)
2
- Balizas
[-Naturales (Estrellas)
Inactivas~
[- Artificiales (Marcas)
3
2.- ENTORNO
[- Base de datos (Mapas)
Emision de ondas
4- Sensores de tiempo de eco (Ultrasonidos)
de medida de fase (Laser)
u
{i U de modulacion de frecuencia (1?. Doppler) 2
Vision artificial (Cmaras color o blanco y negro)
Los sensores de estado del robot, son aquellos que permiten estimar el
3
estado actual del mvil. En este tipo de sensores se pueden incluir cualquier
estado del funcionamiento del robot. En nuestro caso nos centraremos 2
exclusivamente en sensores de posicin. Por posicin entendemos el estado de
movimiento del vehculo, es decir, sus coordenadas x, y. z, orientacin o cualquier
otra variable de inters que represente el estado del movimiento del mvil como
3
por ejemplo su velocidad, balanceo, etc. En nuestro caso se estimarn nicamente
x, y, y orientacin <al considerar vehculos terrestres no tendremos en cuenta la
2
altura). Por supuesto, no todos los sensores de posicin tienen por qu
2
3
3
Capitulo 2. Modelo sensorial 49
proporcionar informacin sobre todas las variables de posicin. Por ejemplo, una
brjula slo es capaz de tomar medidas sobre la orientacin del mvil.
Estos sensores permiten contestar a una de las preguntas claves en la
navegacin: Dnde estoy? [Borenstein 95]. La localizacin del robot dentro de su
entorno se realiza a partir de las medidas proporcionadas por esta clase de
sensores. Estas medidas pueden clasificarse en medidas de posicin incrementales
o relativas, que necesitan como referencia una posicin anterior del robot e
integraciones sucesivas para estimar la posicin actual, como por ejemplo la
odometra (dead-reckoning) y los sistemas de navegacin inercial (INS); y en
medidas de posicin absolutas, que permiten calcular la posicin actual del robot
con respecto a un cierto sistema de referencia fijo y sin tener en cuenta estados
anteriores. Sensores de este tipo son la brjula magntica, las balizas activas <por
ejemplo, los emisores de radio o el GPS ) o las balizas pasivas, tanto artificiales
como naturales. Las medidas absolutas son ms precisas que las primeras pero
tienen el inconveniente de que dependen de objetos o sistemas externos al robot y
no siempre estn disponibles. As, un buen procedimiento es la utilizacin de
ambos tipos de medidas, utilizando las medidas relativas en ausencia de referencias
absolutas.
Un esquema de estos sensores puede verse en la figura 2-2, donde los
sensores se clasifican en dos grandes grupos:
-
r
E. directa Autonoma} Odometra
- j.
Geomgntbos
-
2
2
{
[-GPS
Emisorde radio
SENSORESDE POSICIN F. externa1 Balizasactivas{j
2
-
<rs
- Ultrasonidos
E. basadaen
percepcin
> Balizaspasivas
naturalesMrtificiales -
-
Sonar
Visin 3
- etc.
-3
Figura 2-2 Sensores de posicin
2
.
-3
2
Captulo 2. Modelo sensorial 51
De
posicin Altmetro Posicin Local ejes geogrficos
Aconsejable ayuda de
Absoluto De Girscopo Local ejes del robot otros sensores.
Entre estos sensores cabe destacar a los odmetros y a los sensores inerciales.
Caractersticas comunes a este tipo de sensores se encuentran recogidas en la tabla
2.1.
Sensores odomtricos
El odmetro es un dispositivo que se incorpora en el propio vehculo y se
encarga de medir el desplazamiento o velocidad de ste. Dependiendo del
mecanismo que utilicen <propio del mtodo fsico aplicado> pueden ser pticos,
magnticos, inductivos o capacitivos, potencimetros, etc.
3
-3
52 2.2. Sensores en un robot mvil 2
En los robots mviles, el sensor odomtrico ms popular es el dmetro
ptico. Bsicamente, su mecanismo es un foco de luz dirigida a un fotodetector 3
que es interrumpido por un disco rotante con un cierto patrn opaco/transparente
a dicha luz. La recepcin o no del haz luminoso debido a la rotacin del disco que
est unido al eje de inters, representa una relacin directa de la rotacin
<velocidad o posicin) de dicho eje.
3
Existen bsicamente dos tipos de encoders pticos: el incremental y el 3
absoluto. El encoder incremental mide la velocidad de rotacin de un eje y por
tailto puede inferir posicin relativa. El encoder absoluto mide directamente
posicin angular y por tanto puede inferir velocidad. Si la inestabilidad en la
-3
informacin de posicin no es tenida en cuenta (se corregir con otros elementos) 2
los encoders incrementales poseen un interfaz ms sencillo y proporcionan una
resolucin equivalente a los absolutos con un coste mucho menor [Everett 95]. 2
Debido a su sencillez y naturaleza digital, estos sensores representan un
sensor de bajo coste y buena inmunidad al ruido, lo que explica su amplia 4
utilizacin en todo tipo de robots mviles y su uso prcticamente obligado. Su
mayor problema es que utiliza el desplazamiento relativo de cada rueda para
1 milla nutica por hora. Por ello normalmente sus medidas se integran, mediante
un filtro de Kalman, con otras fuentes externas para conseguir altas precisiones
[Maybeck 79]. Uno de los sensores ms utilizados que mejor se complementa con
el INS es el GPS, que suelen integrarse juntos mediante un filtr de Kalman, un
ejemplo de simulacin de un sistema INS con ayuda de GPS puede encontrarse en
[Lpez-Orozco 95b]. Un ejemplo en un robot mvil terrestre en exteriores puede
encontrarse en [Barshan 95].
La principal dificultad en su utilizacin, es la correcta colocacin sobre el
vehculo para evitar errores, lo que implica diseos muy precisos y diversas pruebas
para deteccin de errores en la ortogonalidad de la disposicin de los elementos
utilizados, lo que se conoce como alineamiento. Tcnicas de alineamiento de
sistemas de navegacin ligados pueden encontrarse en [Aranda 89; Ruiprez 94].
Girscopos
Pueden ser clasificados en dos amplias categoras dependiendo del principio
fsico en el que se basan: girscopos mecnicos y girscopos pticos.
[Stieler 82].
-3
Sensores geomagnticos 3
El sensor ms conocido de este tipo es la brjula magntica, que se encarga
de marcar la direccin del flujo del campo magntico terrestre. 2
Este sensor presenta una serie de problemas: la no estabilidad del campo
magntico, debido a fluctuaciones en e tiempo y en el espacio; la diferencia de 3
localizacin de los poos magntico y geogrfico <el magntico est inclinado unos
110) que debe ser corregida; y la dificultad de su uso en interiores, ya que el campo
magntico se ve afectado por lneas elctricas o por estructuras metlicas.
4
Estos inconvenientes aconsejan que su uso sea complementado con medidas 3
de otros sensores, eliminando o reduciendo as las imprecisiones cometidas en el
clculo de la orientacin. Como proporcionan medidas absolutas de orientacin,
nicamente necesita realizar la traslacin de ngulos al sistema de referencia del -3
robot. 2
2.2.1.3. Balizas actiVas
En este apartado se enumeran sensores utilizados para el segimiento o la 2
recepcin de seales de fuentes externas (balizas). Las balizas se clasifican en
activas e inactivas. 3
Se entiende por balizas activas aquellas que emiten alguna clase de seal, ya
sea luz (espectro visible o no>, acstica, etc. Podemos distinguir aqu entre balizas
activas naturales, signos o seales utilizados como orientacin y localizacin pero
no expresamente diseadas para ello, como por ejemplo las estrellas, luces de una
casa, etc.; y las balizas activas artificiales, expresamente construidas por el hombre 2
para utilizarlas como seales de localizacin, por ejemplo transmisores de
ultrasonidos o de radio, GPS, fuentes de luz como faros, etc.
2
La estima de la posicin a partir de ellas no se basa en la interpretacin del
3
entorno, sino en el principio de triangulacin, bien a partir de medidas de ngulos,
-3
3
Captulo 2. Modelo sensorial 55
GPS
GPS (Global Positioning System) o NAVSTAR <NAVigation Satellite Timing
And Ranging> [Parkinson 83, Bruin 87, Ellowitz 92] es un sistema de localizacin
por satlites que fue desarrollado en 1973 por el Departamento de Defensa de los
Estados Unidos. Como sucesor del sistema de posicionamiento TRANSIT
[Danchik 90], se dise para mejorar algunas de las deficiencias de ste, de forma
que fuese capaz de cubrir no slo las necesidades de navegacin y tiempo de la
poca, sino tambin las necesidades de futuros compromisos militares.
Posteriormente, en 1983, el sistema fue modificado para que pudiera ser utilizado
por cualquier usuario. As surgieron dos servicios: el PPS (Precise Positioning
Service), de muy alta precisin y uso restringido a aplicaciones militares de Estados
Unidos y otras autorizadas; y el SPS (Standard Positioning Service) cuya seal, al
estar degradada debido a la introduccin deliberada de un error en el reloj y en los
mensajes transmitidos por los satlites <SA, Selective Availability), slo permite
precisiones de aproximadamente 100 metros [Leick 90], aunque peden ser
mejorados hasta precisiones del orden de centmetros con el uso de GPS
diferenciales [Snyder 92].
Estos sensores proporcionan datos relativos sobre el entorno del robot. Estos 2
datos pueden ser utilizados de dos formas distintas: para la localizacin del mvil o
proporcionada por el sensor es contrastada con una base de datos o uh mapa del
2
inundo incorporado en el robot para, por medio una simple comparacin
<matching), estimar la posicin del robot en el entorno. Estos sensores se 3
denominan balizas inactivas y balizas activas naturales.
-3
2
2
3
-3
43
Captulo 2. Modelo sensorial 57
ultrasonidos
2.- MAPAS Y OBSTACULOS. Emisionde ondas- - laser
sonar, etc.
- Vision artificial
3
2
Captulo 2. Modelo sensorial 59
sistemas de visin suelen utilizar una cmara o dos. El uso de una nica cmara
2
est restringido a menudo a la bsqueda de balizas (naturales o artificiales) y al
reconocimiento de patrones para la localizacin del mvil. La aplicacin de dos
cmaras lleva a la visin estereoscpica que permite calcular la distancia de los
2
objetos observados y por tanto la construccin de mapas. 3
Las operaciones bsicas en un sensor de visin son: la adquisicin de
2
Es el tratamiento de la seal de vdeo para resaltar los objetos buscados o
3
para destacar formas o caractersticas ocultas. Las operaciones ms comunes son,
- Conversin de los niveles de gris, que se basa en una transformacin 3
de los niveles de gris de la imagen para facilitar su tratamiento.
celdas
Tipo
de objetos
2
INS
Odmetro
Acelermetros
(INS)
Torreta de
ultrasonidos
2-visin
Torreta de
1-2 visin
Mapa
2
CPS
Mapa/Balizas
1-2 visin
Odmetro
Girscopos
(INS>
ultra-sonidos
Ultrasonidos 2
2
pasivas y visin. GPS Brjula Lser
2
2.3.1. Datos proporcionados por los sensores
2
Entre la gran variedad de datos que pueden ofrecer los sensores, los ms
representativos pueden encontrarse en la tabla 2-3, nos ocuparemos 2
2
2
Captulo 2. Modelo sensorial 63
Probabilidad de certeza
Tipo de objeto detectado
-
Funciones de mantenimiento: 2
Son funciones ms propias de la configuracin inicial del sistema que del
momento de la navegacin. Aun as, estas funciones pueden utilizarse, y algunas se 2
utilizan, en la navegacin propiamente dicha. No manipulan los datos ofrecidos por
lugar donde se usa cada sensor. Recordemos que los sensores son tratados como
sistemas distribuidos donde es importante que todos tengan una misma referencia
de tiempo.
- Solicitud de Entorno
El sensor al recibir esta peticin, proporciona datos sobre la ocupacin de las
celdas que han cambiado significativamente desde su ltima actualizacin; tambin
proporciona la distancia y tipo de objetos reconocidos recientemente o que han
modificado su tipo. Todos estos datos deben ir acompaados de su
correspondiente tiempo y probabilidad de certeza.
2
66 2.4. Sensor general propuesto 22
24. Sensor general propuesto
Para construir un sistema de fusin verstil, capaz de fusionar medidas de 2
sensores tan dispares es necesario encontrar un mtodo que permita al sistema de
fusin la abstraccin de los sensores utilizados. De esta forma se permite que el 2
sistema sea portable, que pueda sustituir o aadir ms sensores de forma sencilla y
que sea adaptable a distintos tipos de sensores. Por tanto, la idea bsica es definir
2
2
Captulo 2. Modelo sensorial 67
A
~dato
4Vectinfo() 1
2
~EstadoFuncin(>/
- -
2
1
1 __
Timer SensorBajo j 2
2
<
7
tsetTmer() tLe Nivel
erdatoQ)
2
Captulo 2. Modelo sensorial 69
Robot
%4odcranc(>
2
Nc pertenece el
sistema de fusin
Mapa
Ieerinfc(
%ctualiza
-,BaseEntorno
toorinfo(>
aciualizar(
1
2
2
-ocr
~-->1
FusinBro mo
BaseEntorno
infoFusirr(
Operacion( 1 FusinEstado
o: Modelo
tinfoFusin( 1
Opereoion(
-3
Ocr
-. SensorLogico
Vectnfo(
Estadourtcion
5,
2
SenEntorno
3
O..n
o Baseeeracteristices
VectEntomo<) - SenEstado
Modelo 1
4VectEatado<
o:
~~1.--~~ 2
tVelida< 1 _ _
Timar Sensor BaioNivel
setTimer< 1 1 leerdato< 1
Sdeto
Base
Caraclerislicas EvalEstado< 1
2
IeerMatrizl(>
teednfoo,
2
-2
E
-w
a
E-
E 2
1~1 22
E
2
<E I~.os E
E
<E
2
o,
(E
CC
2
o -3
-t
-s
o-
he AS---
E
4~
E
e.
2
2
C
lo
3
e
3
o.
a
3
-c - - - -
3
-3
-3
Capitulo 2. Modelo sensorial 75
-3
2
2
2
2
2
2
3
2
3
3
3
3
-3
-3
3
Captulo 3
77
Introduccin 3.1 Introduccin
j
Captulo 3. Integracin multisensorial de medidas & posicin 79
j
Capfrua 3. Integracin multisensorial de medidos de posicin 81
caso de utilizar otros estados la sustitucin del modelo requerir una manipulacin
ms compleja.
u, =[y(k)zjk)] (3.3)
Para hacer que u~ sea mnimo se utilizan distintos criterios de optimizacin
[Gil 81; Fletcher 87] que se basan en encontrar el vector de estado, 4k), que
2
mimiza (o mxdmiza) una determinada funcin. As, segn la funcin a optimizar
tendremos mnimos cadrados, mnimos cuadrados ponderados (o con pesos),
funciones objetivo probabilisticas (criterios bayesianos) y funciones de mxima
verosimilitud.
Es conveniente destacar que el criterio de optimizacin escogido depender
del conocimiento a priori de los datos observados. En nuestro caso utilizaremos 4
para el tipo y mido de los datos, las siguientes condiciones (ampliamente utilizadas
enlaliteratura): 4
a) El error de medida (los residuos encontrados) tienen una
distribucin Gausiana de media cero,
5kj
E[v, (k) . < (j)]
R1 (k) .
=
E[w,(k).v[(j)] = 0 (3.6)
u
Capfrisio 3. Integracin multisensorial de medidos de posicin 85
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
Capitulo 3. Integracin multisensorial de medidos de posicin 87
El modelo de estado del mvil puede ser distinto para cada sensor; depende J
de la dinmica del robot, e tipo de ruedas motrices utilizadas, la seal de control
necesaria, etc. Por ejemplo pueden utilizarse modelos como los utilizados por
2
[Nelson 88] o [Kam 97] donde la seal de control es u = [y,7] (y, s la velocidad
2
u
Captulo 3. Integracin multisensorial de medidas de posicin 89
lineal del mvil y yel giro demandado. Otros modelos como el utilizado en [Hongo
87; Feng 93 o Manyika 94] utilizan las velocidades de cada una de las ruedas
independientemente u = [~z~,~der]~ Este esel modelo continuo utilizado:
izq <Ser
Q)= ~ . cos.9(t)
2
~iz~ +v~~er
5f(x,u,kl
(3.13>
9x x=i,(klk1)
6h(x,k1) (3.14)
tx x=Z (kk-I)
)
2
2
90 3.3 Fusin de medidas de posicin mediante un filtro de Calman
a) Prediccin:
Se utiliza la estima del estado conocida para, a partir del modelo del sistema y 2
de medida, predecir cual debera ser el estado y la medida en el instante
actual. J
i(kkl)=f(k(klk1),u(k1),k) (3.15>
4kkl)=/i(k(kkl),k) (3.16>
rT(k).S<(k).r(k)=y (3.18) 2
r(k)=z
1(k)2(k~k1) (3.19) J
8(k) = R(k) + H (k)P(k k l)H (k) (3.20)
Una vez que se ha comprobado que las medidas son vlidas, sino seran
descartadas, se realizar el ltimo paso: se actualiza el filtro con la medidas
nuevas a fin de obtener una estima del estado actual lo ms precisa posible.
Estas ecuaciones son,
x(k 1k) = Q(k kI) + K(k) [z, (k) i(k 1k 1)]
(3.21)
Control
2
2
2
Figura 3-1 . Sensores distribuidos y control
2
Cada sensor lgico de posicin realiza una inicializacin, en la que toma el 2
modelo del sistema, de observacin y cualquier otro valor que necesite para iniciar
su funcionamiento. A partir de aqu el funcionamiento, mostrado en la figura 3-1,
sera el siguiente:
2
1.- El sensor fisico realiza una medida de la posicin del mvil. Esta 2
medida, despus de ser procesada de forma conveniente
(preprocesamiento, alineamiento, etc.) es recibida por el sensor J
lgico de posicin correspondiente (vase la figura 3-1).
5.- Cada sensor lgico recibe la posicin que han estimado los dems
sensores y a partir de esta informacin y, siempre que compmebe
que esta informacin es correcta, la utilizar para actualizar y
mejorar su propia estima.
6.- Una vez que se confirma qu datos son vlidos, estos deben ser
fusionados para obtener una estima mejor del estado global.
No hay
En todo este proceso debe tenerse en cuenta que los sensores funcionan de
forma asncrona y, por tanto, deben realizarse las correcciones pertinentes para
que todos los sensores obtengan la estima correcta. A continuacin se muestran las
ecuaciones necesarias para realizar cada uno de los pasos indicados.
a) Ecuaciones de prediccin: 2
}k!k1)=f,(&1(k1kl),u(k),k) (3.24>
Obsrvese que en este caso las ecuaciones (3.24> y (3.25) difieren de las 2
ecuaciones (3.15) y (3.16) en el subndice i. Esto indica que estas ecuaciones son
locales y son realizadas en el sensor i. Esto ocurre tambin en las siguientes 2
ecuaciones.
Utilizando las ecuaciones (3.13) y (3.14) para realizar la correspondiente 2
linealizacin del modelo, obtenemos la matriz de covananza de la estima que viene
dada por, 2
P}kjk 1)=F, (k)Pjk lJk l)FJ (k) G,Qc)Q(k)G[(k) (3.26>
b) Validacin local: 2
La validacin local o interna hace referencia a la comprobacin de que el
dato observado es coherente con el estado del mvil. Para ello, al igual que en las
ecuaciones (3.18)-(3.20) se realizar el contraste de hiptesis de una x
2 sobre el
u2
residuo obtenido de la comparacin entre la medida observada y la predicha. Esto
es,
rj(k).S;(k).r,(k)=r (3.27) 2
r,(k)=z(k)2(k!k1) (3.28) J
8, (k) = R (k) + H;(k)P, (k k 1)H (k) (3.29)
K,(k)=P}klk).H!T(k).J?jkk) (3.32)
(3.38) 2
PV1 (kk) =P~1(kIk1)+{FJ1T(k)R;(k)HI(k) (&39) 2
Estas ecuaciones, equivalentes a (3.33> y (3.34) respectivamente, permitirn J
que la comunicacin asncrona sea mucho ms sencilla de realizar que si se
2
utilizasen las anteriores.
3.3.2.2 Validacin de datos externos J
La informacin procedente de otros nodos debe ser validada en el nodo
receptor antes de ser utilizada. Esto es necesario porque, J
1.- Permite al nodo receptor detectar que un nodo est funcionando
incorrectamente y por tanto no se realizar la asimilacin de la 2
informacin que procede de l.
2.- Impide que medidas procedentes de otros nodos sean asociadas 2
con medidas que no le corresponden en el nodo receptor (uno de
los principales problemas en el seguimiento de mltiples objetos). 2
3.- Detecta errores en la transmisin de la informacin, de forma
que no utilizar datos que se hayan corrompido durante la J
transmsion.
2
2
2
Capitulo 3. Integracin multisensorial de medidos de posicin 97
vJ(k).SJ(k).v~}k) =y (3.42)
Donde, y
4 (k) es el error entre la medida observada por el sensor
z/k>, y la prediccin de la medida que observara el sensorj hecha por
el sensor 1,
~z}k 1k 1) = h~(~1(k 1k 1),k) (3.44)
Esto se hace as, debido a que cada sensor puede observar medidas
referentes a subespacios de estado distintos y, por tanto, no tienen por
qu ser comparables. Lo nico que puede ser utilizado en el contraste
es la parte del estado 4k) que es observado tanto por el sensorj omo
por el sensor 1.
vj,(k).S;(k).v11(k)=y (3.47) 2
Tngase en cuenta que los trminos zjk) y F/k) no son comunicados
directamente al nodo i, pero pueden ser obtenidos a partir de la 2
informacin que recibe el sensor 1 del sensor): LXXk), Yk) y H/k)}. De
2
esta forma las ecuaciones anteriores quedan,
v~(k)=Y;(k).X~(k)HY(k).H1(k).}klk1) (348) 2
S0 (k) H}
7 (k). (k)Yj,. (k)HJ (k)} + H} (k)P, (k 1k 1)H}T (k)]. H}(k) (3.49) 2
donde,
8
4(k)=H(k).H:. (k)~Y~ (k). +P, (k 1k 1)]. H(k) <~ QQ (3.51)
2
2
2
Capitulo 3. Integracin multisensorial de medidns de posicin 99
vjk) = 1 k 1)]
H}k) . [z~(k)J(k (3.53>
SJk)=H;(k).H(k).[YIk)+P,(k)iH(kHYk) (3.55>
2
2
100 3.3 Fusin de medidw de posicin mediante un filtro de Kalman J
Esto es vlido siempre que exista la inversa de S~(k). Pr cuando II tiene ms
columnas 4ue filas, como ocurre usualmente, no se puede calcular la inversa de J
Sq(k).
Esta reconstruccin, aunque nos asegura la reconstruccin optima del J
estado, tampoco nos es vlida, como ocurra en el planteamiento de Rao, puesto
que de nuevo no se puede calcular la inversa de Sq(k). Ser vlida en los casos
2
en los que es vlido el mtodo de Rao [Rao 93], pero para un caso general.
b) Mocftficacin del residuo utilizado: J
Para mejorar el caso anterior y utilizarlo con cualquier modelo se necesita
reconstruir el estado del sensor) en el sensor i. Para hacerlo hay que transmitir
del sensor i. Recordemos que siempre que se observa una medida, y es vlida, se
realiza una prediccin y una actualizacin.
Observaciones
SENSOR
t
k- 1
4
t
k t k+ 1
1
t k4t 41t, 1
1-
ltima actualizacin
k k
1 Intervalo
datos obsoletos
Intervalo de
asimilacin
><><- --->
Intervalo de
prediccin y asimilacin Actualizacin:
tiempo
Vt] e{4<,4<,...,t~}
.3*1
4< <(4<e) (3.61>
se encuentre el mvil.
datos en el instante 4< y el sensor j observ los datos en el instante 4<. Las
ecuaciones para esos tres casos seran,
1.- Intervalo de datos obsoletos: t <(4< e)
En este caso el sensor i ignora el dato recibido por ser obsoleto.
2.- Intervalo de asimilacin: (4< e) =0
1 =(tk+e)
k 5
El dato recibido se asimila directamente, ti
El estado estimado por el sensor i hasta la recepcin del dato procedente del
sensorj sera:
Prediccin en el sensor i:
P, (4< 1 47) = F, (8 t~) P, (471 47) . EJ (8 t,) + G~(S t,) Q, (4<) G[ (3 t,) (3.66)
donde 3 t, =4< 47
Actualizacin de la medida observada por el sensor i:
Prediccion: 2
14<) = F}St4i,(4< 4<) (3.74)
21Q 4<)=HQYt$/).&,(4< [4<) (3.75) 2
P,(4< 4<) =F,Q5t~) .p(tk ).FT(dt) G,(3t
4).Q(4<) .G[(St~) (3.76> j
donde 8 t~ = y~. =4<4<
Asimilacion:
2
si
Capitulo 3. Integracin multisensorial de medidas de posicin 107
Seales de
control
Medida y Medida
u U U U taceptal tiempo
~ tE>
A
Prediccin> prediccin
At
asimilacin
Pred,ccxon
1~>
2 b
demandado, b es la separacin entre las dos medas) como las seales de control al
mvil u(t) = [V(t),y(t)] se obtiene el siguiente modelo no lineal:
*~(t)=V.cos,9}t)
1>1 (t) = V . sen.9, (t) (3.79>
= y
a) Brjula magntica:
La brjula magntica puede considerarse como un sistema de primer
orden con una constante de tiempo t de 4 seg.
c> Odmetro:
El modelo de los odmetros vienen dados por la adicin de un random
walk a la lectura de la variacin de posicin estimada.
realiza una curva de 180 grados. De esta forma se puede observar el efecto del
filtro en el momento ms comprometido, cuando se realiza una curva con
velocidad mxima. Las simulaciones distinguen dos casos claramente diferenciados:
La primera simulacin muestra el funcionamiento del sistema de fusin
cuando todos los sensores funcionan correctamente. En esta simulacin se pone de
manifiesto el comportamiento del filtro subptimo diseado.
La segunda simulacin presenta el comportamiento del sistema ante distintos
fallos de los sensores, de forma que se pueda observar la evolucin y
comportamiento del sistema de fusin ante distintos fallos. Se han estudiados dos
tipos de fallos: cuando un nodo del filtro deja de funcionar debido a que no puede
utilizar su sensor y cuando falla su comunicacin con los dems sensores y por
tanto slo puede utilizar su propia estima.
Trayectoria real
40 4
1 m/s Y%Q).5 m/s
met
ros 20
0.5 ns
1 m/s
o
o 5 10 15 20 25
Angulo de giro
200
gra
dosioo
o
o 5 10 15 20 25 30
metros
39
- 2
20 38
10
37
36
35
si
o.10 0 10 20 30
_______________________________________________________
2 4 6 8
N~TROS
a) Posicin medida por la bauza y os odmetros
NETROS 2
200 J
150
ti loo
MEmOS 20 25 30
II 12
METROS
13 14
2
b) Orientacin medida por cada sensor.
si
Figura 3-7. Posicin y orientacin medidos por cada sensor.
Con estas medidas se realizan los siguientes experimentos: 2
Caso 1: Funcionamiento sin fallos de los sensores 2
En este caso no se producir ninguna anomala en la informacin obtenida
por los sensores ni en la transmisin de esta informacin. Los nicos errores que
Conviene destacar que con este mtodo todos los sensores conocen el estado
completo del mvil, aunque por s solos nicamente pudiesen estimar parte de ese
estado. Por ejemplo, la brjula magntica slo observa la orientacin del mvil. Sin
embargo, gracias a la informacin recibida, es capaz de estimar el estado completo
del mvil, que puede utilizar en posteriores estimas. De esta forma se evita, como
buscbamos, el uso de un nodo de fusin central que realice la fusin de las
medidas de todos los sensores y el posterior envo del resultado de vuelta a todos
los sensores.
50
40
n30
o
~20
lo
o
-10 0 10 20 30
METROS
Figura 3-8 Trayectoria estimada
.
0 10 20 30 40 50 60
si
TIEMPO (seg)
Brjula magntica (SI> si
a
10
>
>
><
5
S
S2
S2
obsoleto
no recit/no val
obsoleto
no recib/no val
si
l
si
ji iL
10
o aa
lo -2 si
1 o 0
si
10 20 30 40 50 60
TIEMPO
Odmetros (SS)
(seg)
si
Figura 3-9. Varianza de la orientacin. Caso centralizado y distribuido.
2
si
si
CapQuo 3. Integracin multiserworfal de medidos de posicin 115
Para comprender mejor los instantes en los que cada sensor rechaza las
medidas en una validacin de datos se representan en la figura 3-10 el lugar donde
se ha producido un fallo para la situacin mostrada en la figura 3-Ya.
50
40
cn3Q
o
~20
10
o
-10 0 10 20 30
METROS
b.- La tabla 3-2, presenta las validaciones externas que realiza cada sensor, es
decir, el nmero de datos que acepta y rechaza procedente de otros sensores.
2
2
116 Resulta&s experimentales
si
3.5
51 599/50 5
52
565
S3
573
51
0
SS
-
SS
0
si
52
53
599/1O
599/15
570
572
-
565
567
-
0
0
-1
3 2
Tabla 3-3: Dato obsoleto
si
Si
Sl
2
52
23
53
26
si
52
SS
28
26
-
26
31
-
2
2
si
CapQuo 3. Integracin multisensorial de medidas de posicin 117
50
si
cn3O
o
~20
si
10 si
o
0 5 10 15 20 25 30
si
METROS
si
io2
2
10
si
10
o
2
10
1
.2
si
10
10
.3
2
0 10 20 30 40 50 60
50
40
~n30
o
20
I0
O
-10 0 10 20 30
METROS
a> Posicin estimada por los seilsores
10
10
-2
10
iwW ~LLUJ
.3
10
0 10 20 30 40 50 60
Las tablas 3-4, 3-5 y 3-6 muestran el comportamiento de cada uno de los
sensores para el caso mostrado. Su interpretacin es la misma que en el caso 1,
pero destacar aqu que el sensor Si y el sensor 53 no reciben~un nmero alto de
medidas procedentes del sensor S2 (84 en concreto) debido a que son debidas a la
no validacin interna o a que el sensor propio no responde y por tanto no se tiene
informacin que enviar.
2
si
120 3.5 Resultados experimentales
2
Tabla 3-4: Validacin interna
Total Errores
si
Sensor 1
Sensor2
599
599
0
0
si
Sensor 3 599 0 si
Tabla 3-5: Validacin de datos externos si
Total/no recibido
Si/Sj-Sk Si
Valida
S2 SS S
NO valida
S2 SS
si
Sl
S2
599/840
599/1O
5
570
489
-
573
567
0
0
3
3
-
-
si
SS 599/184 572 491 - 0 3 -
2
Tabla 3-6: Dato obsoleto si
S 52 53
S 2 20 26 2
52 28 - 31
53 26 21 - si
Experimento 2: Fallo en la comunicacin entre sensores
loI
7
o
2
lo
o
LLiL 1 k4LL..AJI 1432 lij Ji A
MtJdu
o
10 20 30 40 50 0 10 20 30 40 50 60
Total Errores
Sensor 1 599 0
Sensor2 599 0
Sensor3 599 0
Si/Sj-Sk Si 52 53 - Si 52 53
S S2 SS
2
S 2 19 20 2
52 22 - 14
S3 33 30 - 2
3.5.3 Decisin de la estima mejor
2
El ltimo paso en el sistema de fusin es la eleccin de la mejor estima de los
distintos sensores distribuidos. Cada estima de posicin calculada por un sensor es
si
enviada a un nodo central que se encarga de llevar el registro de la posicin del
mvil y ofrecer esta informacin a toda tarea que lo necesite. Este nodo no realiza
4
ningn tipo de fusin, sino que toma las medidas de posicin de los distintos
sensores y enva al robot aquella que considera mejor, es decir, la ms precisa. En 2
teora, todos los sensores deberan tener la misma estima, y con la misma precisin,
cuando no existe ningn rechazo en las medidas (validacin interna y validacin U
externa); es decir, el comportamiento del filtro distribuido es semejante al del
centralizado y por tanto no existe ningn problema en la eleccin de una medida,
cualquiera sera vlida al ser todas estimaciones similares. El problema surge
si
cuando alguna de las estimas del sensor es distinta a las dems (normalmente ser
peor que la que indique la mayora> debido a un error o fallo en la validacin o en
si
el sensor. Para evitar tomar una medida incorrecta se debe realizar un test que nos
indique qu estima final es conveniente escoger. 2
Existen multitud de tests de decisin, tests de hiptesis o distintos tipos de
medidas para escoger entre cierto nmero de elementos. Por ejemplo se dispone 2
de la regla de decisin bayesiana, la regla de decisin bayesiana de coste mnimo, el
test de Neyman-Pearson, el test Minimax, coeficientes de correlacin y medidas de si
concordancia, tcnicas de votado, plantillas, medidas de distancia, etc. Estos tipos
de tests estn orientados, por ejemplo, a la asociacin de datos [Hall 92], la
clasificacin o reconocimiento de patrones [Fukunaga 90; Fukunaga 93] o la
2
deteccin, distribuida o no, [Varshney 96].
Tengamos en cuenta que ya han sido evaluados los errores debido a
2
desviaciones de un sensor respecto a los otros y rechazadas aquellas medidas que
2
2
u
CapQuo 3. Integracin multisensorial de medidos de posicin 123
si
2
2
si
si
Tabla 3-7. Ejemplos de medidas de distancias.
error [Duda73] y por tanto un volumen menor indicar una mayor precisin de la
medida. Como se puede observar en la figura 3-14, ahora se ha reducido de forma
apreciable el clculo necesario para determinar la estima que se debe seleccionar.
En este caso slo es necesario calcular un determinante para cada estima recibida.
Media y
Varianza de la media
(M, Z~)
10
2
lo 2
10
114
o- 10 o 2
lo1
10
i2LJ) 1 hhut~i si
10
o 10 20 30 40 50 60
2
TIEMPO (seg)
a) 2
io 2
lo
o lo
tu
2
10o
2
U
10
102
t., liii 2
10
10 20 30 40 50
2
60
TIEMPO (seg>
o
loo
2
z
oiD
z
-1
2
114
o
tu
o
& 10
2
II~il~j ~Ij ~II
10 20 30 40 50
lo-3,
o 60
TIEMPO (seg)
b)
Figura 3-15. Varianza de la medida aceptada.
CapQuo 3. Integracin multisensortal de medidos de posicin 127
129
si
si
130 4.1 Introduccin 2
y sobre la informacin externa sensorial, que permiten ajustar de forma fina el
funcionamiento del sistema de fusin de entorno. si
2
2
2
si
2
2
si
2
si
si
2
2
si
si
si
2
2
CapQuo 4. Fusin multisensorial de medidos de entorno 131
4.1 Introduccin
Los diseadores de robot mviles suelen utilizar diferentes tipos de robots
debido a las ventajas y limitaciones que cada uno presenta e distintas aplicaciones,
entornos, situaciones, etc. Aunque existe la posibilidad de cambiar el robot, en
muchos casos ciertas limitaciones como la falta de resolucin en determinados
entornos, la velocidad de muestreo o restricciones econmicas o tcnicas, suelen
resolverse mediante el uso de nuevos o mejores sensores y actuadores, o la adicin
de sensores redundantes y complementarios. En este Captulo se desarrolla un
mtodo sencillo y eficaz que permite la fusin de medidas de entorno de diversos
sensores sin necesidad de grandes modificaciones o adaptaciones en el sistema de
fusin. De esta forma, un mismo sistema puede utilizar unos sensores
determinados y en cualquier momento suprimir, cambiar o aadir uno nuevo. As,
sin necesidad de realizar cambios importantes en el sistema de control del robot, se
puede hacer un estudio o desarrollo de distintos conjuntos de sistemas sensoriales
dependiendo de la disponibilidad de los sensores y del entorno o uso que tendr el
robot mvil, o configurar el sistema sensorial de forma que se obtenga el mximo
rendimiento posible de los sensores existentes.
cierta, es decir, los datos se toman como no contrarios a H0. Al contrastar una
hiptesis H0 podemos adoptar dos decisiones, aceptarla o rechazarla; y adems
2
dicha hiptesis puede ser cierta o falsa, yanse las distintas definiciones en la tabla si
4-1.
2
2
CapQuo 4. Fusin multisensorial de medidas de entorno 135
posible el error de tipo II. Esto no es otra cosa que elaborar una regla que nos
permita dilucidar la aceptabilidad o no de la hiptesis considerada, es decir, un
contraste. Existen distintas reglas o contrastes para tomar dicha decisin [Duda73;
Hall 92], como son el mximo a posteriori, el de mxima verosimilitud, el test de
Neyman-Pearson, el minimax o un test bayesiano.
donde
P(H,E), la probabilidad de que la hiptesis i, EL, sea verdad dada la 2
evidencia E.
P(E II,), la probabilidad de que se observa la evidencia E dada la
hiptesis i como verdadera.
P(H,), la probabilidad a priori de que a hiptesis i sea cierta, 2
independientemente de cualquier evidencia especfica.
el nmero total de hiptesis posibles.
si
si
CapQuo 4. Fusin multisensorial de medidas de entorno 137
2
140 4.2 Algoritmos defusin de identidad 4
deducir la hiptesis fi es necesario considerar la combinacin de probabilidades.
Esta modularidad de sus reglas provoca tambin su principal desventaja: siempre
existe el peligro de que las justificaciones de una creencia sean importantes para la
2
determinacin de sus consecuencias, provocando entonces deducciones cclicas.
Esto debe evitarse a toda costa. Por ejemplo, si una regla describe una relacin de
causalidad inversa, es decir, la evidencia se deriva de un indicio a partir de su causa
2
y otra regla describe la causa a partir de la observacin del indicio; se debe 4
procurar que la evidencia se derive de una forma que no se utilice de nuevo en
otra regla, para no volver a deducir la informacin inicial, que dara lugar a
deducciones errneas [Bici94].
si
st
Capitulo 4. Fusin multisensorial de medidas de entorno 143
si
st
CapQuo 4. Fusin multisensorial de medidos de entorno 145
aprendizaje).
st
En la prctica, las redes suelen integrarse en un sistema ms complejo, es
decir, el problema complejo a tratar se descompone en un nmero de tareas 2
relativamente simples y las redes neuronales son asignadas a un subconjunto de
estas tareas que se ajustan a sus inhenerentes capacidades (por ejemplo,
reconocimiento de patrones, clasificadores, memorias asociativas, control, ...).
si
si
CapQuo 4. Fusin multisensorial de medidas de entorno 147
Red
Es una relacin semntica entre distintos atributos. Los arcos de dicha red 2
representan la relacion causa/efecto entre los atnbutos (nodos> que componen la
red. Un atributo puede tener una nica causa, como en la figura 4-3a donde un
Matrices bavesianas
Representan el modelo de las relaciones entre los nodos de la red. En
si
nuestro caso, pueden considerarse como el peso que cada uno de los distintos
atributos (causas) ejerce sobre sus efectos. Esto es, el peso o seguridad con que
un sensor observa (efecto) cada uno de los valores posibles de un determinado
si
atributo de un objeto (causa). J
2
si
CapQuo 4. Fusin multisensorial de medidas de entorno 149
Por ejemplo, en el caso de una relacin del tipo X implica Y (una nica flecha
llega a Y), como en la figura 4-3a, la matriz de relacin entre ambos conceptos se
muestra en la tabla 4-2.
X\Y Y Y2 Ym
XI
Xi
L
Tabla 4-2. Modelo de probabilidad para una causa.
VI V2 Vn X P
y. P(xlv:,vo,va,.. .Vn>
sobre las causas de la red: el conjunto de ambos definir la credibilidad. Los dos
st
conceptos bsicos para comprender cmo se propaga la evidencia son la
independencia condicional y la separacin direccional [Pearl 88]. Una breve st
descripcin de ambos puede encontrarse en el Apndice A.
Los mtodos y algoritmos para propagar las estimas dependern de los tipos
de estructuras de la red (relaciones) existentes. El pilmer algoritmo importante
para la evaluacin de redes de decisin fue diseado por [Shachter 86], pero el
algoritmo ms representativo es el diseado por Pearl para redes en forma de
rboles [Pearl 82] que utiliza un procedimiento de paso de mensajes (mensajes it-
A> para la comunicacin de evidencia. Posteriormente [Kim 83] generaliz el
algoritmo de Pearl para polirboles. En el apndice A, se muestra cmo se calculan
los mensajes it y A para propagacin de evidencia en distintas redes, como la red en si
cadena y el polirbol.
si
si
Captulo 4. Fusin multisensorial de medidos de entorno 151
medicina interna.
si
Tngase en cuenta que cuando se utilizan aproximaciones en el clculo de la
si
si
st
si
si
si
si
si
si
si
CapQuo 4. Fusin multisensorial de medidas de entorno 153
la probabilidad de que esa celda contenga algn atributo del entorno. El atributo
si
ms utilizado en cualquier representacin es el grado de ocupacin, es decir, si la
P(ocu {r}~~1) = ocu) . P(ocu {r},) + P(r~~1 ~ac). P(vac {r}1) (4.7)
p(r S(C,) = ocu) = ~ p(r 8(C,) = ocu, G~ (C,)) . P(G~ (C,) 8(C,) = ocu) (4.8>
(G,(q))
1
0.9
0.8
0.7 J -
J
0.6
0.5
4-
0.4
0.3
.1
-1-- J
0.2
1 -L
0.1
oo 2 3 .4 5
o si
20 ext 2
Sensor fisico
EWIORNO
st
Figura 4-5. Red hayesiana sencilla para el Mapa de ocupacin. st
A continuacin podemos desarrollar las ecuaciones (A.13> y (A.14), que para
el caso estudiado quedan unas expresiones muy sencillas, con el fin de estudiar su
semejanza con la ecuacin (4.7) de Elfes, 2
P(8(C,) = ocu +s) = a >r(S(C,) = ocu) . 2(8(C,) = ocu) (4.10)
Y tenemos,
r(8(C,) = ocu) = P(S(C,) = ocu) (4.12)
2
si
st
Captulo 4. Fusin multisensorial de medidos de entorno 159
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2 .0 .0
0.1 .0 .0 L
1 2 3 4 5
detectar y evitar obstculos con rapidez [Borenstein 91a; Borenstein 91b]. Adems
en este caso es necesario aplicar un factor de olvido a las celdas para eliminar si
medidas espunas.
2
.1 -I .1 .1 -I .1 .1 4-3
2
si
Figura 4-7. Valores asignados a las celdas por medida en el Histograma de campo. si
Para emular un funcionamiento semejante al histograma de campo con la red
bayesiana diseada, nicamente es necesario utilizar una nica 2(s~+~) (o un
st
pequeo conjunto de lamdas en e ejemplo de la figura 4-7) para cada medida del
sensor, lo que permite actualizar una nica celda, o un conjunto reducido de
si
celdas. Por ejemplo supongamos un sencillo modelo sensorial en el que se supone
que cuando se detecta un objeto las celdas de delante no estn ocupadas, figura 4-
st
8a. En este caso, la red bayesiana de la figura 4-5 producir un resultado como el
de la figura 4-8b, donde la probabilidad de que estn ocupadas las celdas st
anteriores al objeto disminuye y la del objeto aumenta.
st
si
si
st
2
si
si
st
si
CapQuo 4. Fusin multisensorial de medidas de entorno 161
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0 2 4 6 8 10
0.9
0.8
0.7
0.6
0.5
0.4
4 0.3
0.2
0.1
O
o 2 6 8 10
Las situaciones de las secciones 4.4.1 y 4.4.2 son casos extremos: desde el
clculo de la probabilidad de todas las celdas del mapa en cada medida (modelo)
del sensor hasta la actualizacin de una nica celda (o un conjunto mnimo de
celdas).
En estos casos se han utilizado las redes bayesianas con un modelo del sensor
que corresponde a los modelos de medida del sensor de Elfes o de Borenstein y no
se aprovechan la versatilidad ni las ventajas que nos ofrece la utilizacin de redes
bayesianas. En los casos anteriores, y sobretodo en el primer caso, el sensor ofrece
una estima de la celda que tiene en cuenta la situacin del enrejado, el modelo del
sensor y su fiabilidad, lo que deja nicamente al sistema sensorial la funcin de
acumulador de estimas. Esto es delegar demasiada responsabilidad en la estima
que ofrece el sensor fsico, complicando excesivamente los clculos que puede
realizar este. Adems, no todos los sensores pueden actuar de igual manera, por lo
st
si
162 4.4. Utilizacin de la red lrnyesiana en ejemplos clsicos st
que el mtodo puede variar de un tipo de sensor a otro. Por lo tanto, sera mejor
descargar parte de la responsabilidad de la estima del sensor en el sistema de
fusion.
si
Para descomponer el trabajo de fusin entre el sensor y el sistema de fusin,
el modelo del sensor se divide en dos partes: una correspondiente a la medida
sensorial (estima del sensor> y la otra correspondiente a la confianza que se tiene
si
st
CapQuo 4. Fusin multisensorial de medidas de entorno 163
Por ltimo indicar que para que el sistema funcione con un modelo de sensor
semejante a los histogramas de campo es necesario dotar al sistema de fusin de la
posibilidad de utilizar un factor de olvido. Esto tambin puede incluirse y utilizarse
de forma sencilla en las redes bayesianas como se mostrar en la seccin 4.5.3.
2
st
164 4.5. Red bayesiana de fusin multisensorial en nuestro robot st
4.5. Red bayesiana de fusin multisensorial en nuestro robot 2
Una vez se ha mostrado el mtodo para propagar evidencias en la red, cmo
representar el conocimiento que se posee del sistema y su funcionamiento como
sistema de fusin frente a otros mtodos clsicos, en esta seccion se describe su
funcionamiento como sistema de fusin en un robot mvil. Para ello veamos 2
primero cmo se ha diseado el sistema general de fusin de entorno para un
robot mvil autnomo terrestre. A continuacin se muestra cmo se disea el
sistema de fusin, cmo definir el modelo sensorial desde e punto de vista de las 2
redes bayesianas y su funcionamiento en distintos ejemplos.
sistema de fusin, sino slo aquellas para las que est capacitado en cada momento,
2
llegando incluso a observar espacios complementarios (en este caso no existir
fusin, sino integracin>. 2
La arquitectura para implementar este sistema de fusin ser una red de
procesos distribuidos, donde cada proceso representa una etapa de fusin o nodo 2
en la red bayesiana. Estos nodos los clasificamos en:
- Nodo sensor, vase la figura 4-9, que corresponde al nodo hoja de la 2
red bayesiana. Se encarga de recibir evidencia externa procedente
de la sensorizacin, es decir, se ocupa de convertir la informacin j
sensorial del sensor fsico en informacin comprensible por la red.
Realiza una fusin de la informacin externa recibida y de la 2
2
si
Cap Quo 4. Fusin muitisensorial de medidos de entorno 165
En la figura 4-9, adems del sistema de fusin formado por los nodos sensor y
nodos fusin, se muestra la parte sensorial correspondiente al usuario, como son:
2
si
186 4.5. Red bagesiana de fusin multisensorial en nuestro robot 2
Sensorfsico (5<), que corresponde a los sensores reales. Los datos que
2
-
Drives, que son las rutinas que permiten leer y manejar los datos que
2
-
correspondiente. Esto es, la distancia puede codificarse como una funcin que ir
incluida en el modelo de cada uno de los sensores.
Ahora queda una red bayesiana mucho ms simple, figura 4-11, que puede
implementarse directamente sin la necesidad de aplicar tcnicas de eliminacin de
ciclos.
Modelo
de distancia
VISIN
Sensor
visin
P(+u+e) = f~(r,O)
P(ue) =f~(r,O) (4.19>
M(ocupado Sensvisin) C
P(+x]
)
y)
(
P(x
~jj
y) (4.22)
22
En cualquier caso se debern hacer estudios sobre el funcionamiento de cada
sensor y del conjunto para sintonizar correctamente la red. 2
Recordemos que las probabilidades de las ecuaciones (4.21) y (4.22) se
corresponden con las probabilidades de acierto y de fall (errores de tipo 1 y tipo 2
II) que se mostraron en la tabla 4.1
0.35
0.3
0.25
0.2
0.15
01
0.05
10 10
o
5 15 20
<vn) 20 0 r Qn>
0.4
0 5 10 15 20
2
(m)
0.75
0.7
0.65
0.6
0.55
0.5
0 2 4 6 8 10
(metros)
Figura 4-14. Probabilidad de ocupacin para cada sensor dependiendo de la distancia de la celda.
2
si
172 4.5. Red bayesiana de fusin muitisensorial en nuestro robot 2
(o ultrasonidos, + visin>
2
si
si
Cap Quo 4. Fusin multisensorial de medidas de entorno 173
En la figura 4-15 se puede ver que la fusin de la estima de los dos sensores
siempre da lugar a una certeza mayor de que la celda se encuentre ocupada que en
el caso de utilizar un nico sensor.
Por supuesto, en el caso de que la estima de los sensores sea contraria a la
existencia de un objeto en la celda en cuestin, la fusin de estimas de este tipo
dar lugar a un reforzamiento de la creencia a posteriori sobre la no ocupacin de
esa celda. Es decir, obtendremos una mayor certeza de que la celda est vaca, por
lo que la probabilidad a posteriori conjunta ser siempre menor que la calculada
por los sensores individualmente, como puede verse en la figura 4-16. El aumento
de la creencia con la distancia no quiere decir que est menos seguro de la
existencia de un objeto, sino que a medida que aumenta la distancia, la
incertidumbre sobre la existencia de un objeto aumenta (por eso tiende a 0.5).
Recordemos que se indica la probabilidad de existencia de un objeto sealada por
cada sensor con (ultra,vis), y se pone un guin, -, si el sensor no est funcionando.
0.45
lo
(metros>
0.4,
2
0,35
2
0.3
0.25 2
0.2
0 2 4
r (mefros)
8 8 IC 2 4
r (n~etros)
6 8 10
2
a) Fusin de medidas de sensores de ultrasonidos b> Fusin de medidas de sensores de visin 2
Figura 4-17. Probabilidad a posteriori cuando la informacin es negativa
0.95 0.9
g-LanxtEoteRxnNnxflflflwanuBxyjUn-OR
2
0.9 0.8 (0.7,->
2
1~
0.7 0
0.75
Oh
0.6
0.5 R=1 m 2
0.7
0.66 0.4
<-01) (-0.2)
O R=lm [4+ It-4--LI--F-4--1I-+[-4--F.4.+ -+~4-4 4 +
0.6 0.3
0.9
0.86
0.8
0.75
0.7
0.65
0.6
0.55
0.6 0 5 10 15 20
t (seg)
Por tanto, lo que nos interesa es construir una red bayesiana con un nodo por
cada estado y variable sensor en cada etapa temporal (vase la figura 4-22). Esto se
conoce como red de Bayes dinmica. Las redes de bayes dinmicas pueden verse
como una codificacin distribuida de un proceso de Markov. Fueron utilizadas
2
180 4.6. Funcionamiento temporal 22
inicialente por Dean y Nicholson [Dean 89; Nicholson 92; Kjaerulff 92 o
Nicholson 94] entre otros. 2
Por medio de esta red se puede estimar la probabilidad de un estado en el
momento actual t. Hay que tener en cuenta que, aunque no ser utilizado en 2
nuestro sistema, se puede predecir el estado futuro de una celda (lo que se conoce
como proyeccin probabilista), aunque para ello es necesario presuponer unas 2
ciertas entradas sensoriales futuras.
Aunque la prediccin puede parecer intil en este caso, puede llegar a ser
una herramienta muy potente. Por ejemplo, mediante una red de creencia 2
dinmica se puede disear un filtro de Kalman con slo una red dinmica con dos
periodos de tiempo y tres etapas (prediccin, observacin y estimacin) [Russell
95].
2
2
2
2
2
2
2
Figura 4-22. Estructura genrica de una red bayesiana dinmica.
2
Puesto que se considera un modelo para la evolucin temporal que depende
de instantes anteriores al estado actual, la figura 4-22 es suficiente para representar 2
cualquier sistema sensorial en el tiempo. Sin embargo, puesto que no nos interesa
guardar la evolucin temporal de la celda ni la secuencia de observaciones 2
realizadas, es suficiente con mantener un modelo con e estado actual y el estado
siguiente y realizar tres fases cclicamente, vase la figura 4-23. Esta fases son 2
semejantes al caso de un filtro de Kalman: prediccin, observacin y actualizacin.
2
2
2
Capitulo 4. Fusin multisensorial de medidos de entorno 181
M S 17.7..
Percepcin Peredpcini
t1 t
En la figura 4-23, se muestra cada una de las etapas en el clculo del estado
de la celda en el instante t, en ella se muestran sombreados los nodos que se
encuentran involucrados en cada una de las fases. En la figura tambin se muestra
el modelos sensorial, Ms, y el modelo de transicin de estado, Mx.
El modelo temporal del estado de las celdas puede ser variable sin ms que
modificar adecuadamente la matriz de transicin de estados, Mx. Esta puede
depender de aquellas variables que se considere que afectan al factor de olvido. En
nuestro caso consideraremos que el factor de olvido es independiente de la celda
en cuestin, por lo que se utilizar una matriz que slo depende del periodo de
refresco,
= L
1 -s
~ e,
E
(4.25)
2
2
182 4.6. Funcionamiento temporal 2
Por supuesto r0 debe ser calculado experimentalmente y depender del tipo
t1 t tl
2
st
2
0 Figura 4-24. Red de Fusin temporal.
2
2
A continuacin se mostrarn varios ejemplos del funcionamiento temporal de
dicha red para mostrar la utilizacin del factor de olvido en distintos casos.
2
4.6.1. Ejemplos de funcionamiento temporal 2
A continuacin se presentan distintos ejemplos del funcionamiento temporal
del sistema de fusin de entorno para mostrar cmo se comporta la creencia de la
red bayesiana dinmica y el factor de olvido del sistema. En todos estos ejemplos se
2
utiliza la matriz de transicin de estados mostrada en la ecuacin (4.25) con un
valor para y0 de 5.85s., que para un periodo de refresco de 03 s da la matriz
2
2
C05
constante,
=
O:O5j (4.26) 2
Debe tenerse en cuenta que la red bayesiana dinmica engloba a la
anteriormente definida y que se obtiene con slo dejar de aplicar el factor de 2
olvido, es decir, sin tener en cuenta ningn cambio temporal del estado de los
nodos. Esto se consigue dejando la matriz de transicin, Mx, como la matriz 2
identidad.
2
si
2
CapQuo 4. Fusin multisensorial de medidas de entorno 183
0.97
0.961
0.96
0.94
0.931
o
o- 0.92
0.91
0.
0.88 10 20 30 40 50
o seg
Figura 4-26. Creencia de una celda: olvido de la probabilidad a priori y entrada sensorial.
0.92 0.9
9.
0.91 0.88 .5
2
5
2
0.9 0.88
0.89 0.84 2
0.88 0.82
0 5 10 15 20 25 30
st
889
0 10 20 30 40 50 60 70
a) Afirmacin dbil.
70
b) Afirmacin fuerte.
Figura 4-28. Cambio de opinin en la entrada sensorial del sensor.
En el caso de que el sensor no est muy seguro del cambio percibido y emita
una informacin contraria a la anteriormente emitida pero de forma dbil, el
tiempo de reaccin es grande (unas 15 medidas), figura 4-28a. Esto es lgico
puesto que si no est muy seguro del cambio en el entorno, necesita cerciorarse
con varias medidas para compensar su inseguridad. En el otro caso, figura 4-28b,
debido a que el sensor se encuentra muy seguro de la inexistencia de un objeto
si
st
188 4.6. Funcionamiento temporal 2
(afirmacin fuerte>, se puede ver como en muy pocas observaciones (2 medidas) se
recoge el cambio percibido. st
Por lo tanto, el sistema es capaz de reaccionar adecuadamente a las entradas
sensoriales, siendo su respuesta a un cambio en el entorno proporcional a la 2
certeza con la que se detecta dicho cambio. La diferencia entre los instantes en los
que comienza a cambiar la certeza debido a la entrada sensorial en cada uno de los
0.9 2
0.8 2
0.7 2
0.6
0.5 2
0.4
26 30 35 40 46 60 55
2
Figura 4-29. Comparacin del tiempo de respuesta del sensor. 2
Siempre que se utilice informacin de un mapa como informacin a prion, 2
puede ser eliminada mediante este factor de olvido, evitando as errores en la
lectura de la informacin del mapa o en la utilizacin de informacin incorrecta. 2
4.6.1.2. Factor de olvido en las medidas sensoriales
Otro tipo de informacin que es recomendable olvidar en muchas ocasiones 2
es la referente a la informacin sensorial. Cuando un sensor realiza una estima a
partir de una cierta medida, sta es susceptible de errores y por tanto deber 2
tenerse en cuenta esta posibilidad. La forma de hacerlo, debido a que estos errores
suelen ser aleatorios, es disminuyendo su certeza de forma que al cabo de un cierto 2
tiempo slo queden aquellas medidas que han sido repetidas cierto nmero de
veces. 2
2
2
Capitulo 4. Fusin muitisensorial de medidos de entorno 189
0.97
~ 093
2.
o- 0.92
0.88
0 5 10 15 20 25 30 35
389
o
9.
o-
36
seo
b> Olvido sin medidas sensoriales
Figura 4-30. Factor de olvido en las medidas sensoriales.
2
si
190 4. & Funcionamiento temporal 2
Por ejemplo, para ver su efecto, supongamos un sensor que percibe un
objeto, estima de X=[09, O3] y un conocimiento a priori de la celda de (08, 02), y
Ejemplos en los que se puede ocurre esto se pueden observar en las figuras 4-27b
st
y 4-28a, donde al cabo de un cierto tiempo de permanecer la entrada sensorial fija
el sensor alcanza una creencia externa de (1,0) y por tanto la creencia de la celda
permanece constante ya que no hay ningn cambio en el estado sensorial. Slo se
si
pueden producir cambios debido a una opinin en contra de este sensor, o de otro, 2
o a la disminucin, o aumento, de la informacin a priori. En las figuras 4-27b y 4-
28a los escalones observados se deben a la disminucin de la informacin a priori. 2
2
si
si
CapQuo 4. Fusin multisensorial de medidos de entorno 191
2
Modelo
st
Sensor Sensor
ultrasonidos st
Figura 4-31. Red bayesana para integracin multisensorial en el ejemplo practico. 2
El modelo de sensibilidad y especificidad de cada sensor debe ser calculado
por el usuario realizando distintas pruebas experimentales sobre sus sensores para st
comprobar como afectan distintas circunstancias sobre el modelo de deteccin de
sus sensores. El modelo diseado por el usuario puede ser tan complejo como se
desee. En nuestro caso utilizaremos el modelo de los sensores indicado en la
2
seccin 4.4.2, modelo que es dependiente de la distancia al objeto detectado. J
Para mostrar el funcionamiento del sistema de fusin sobre un entorno real
el robot se desplaza por nuestro laboratorio, vase figura 4-32, midiendo el entorno 2
que le rodea. Las pruebas realizadas se presentan a continuacin en dos ejemplos
distintos: medidas reales de ultrasonidos y medidas simuladas de ultrasonidos y st
visin.
2
st
si
2
si
2
si
J
Capitulo 4. Fusin muitisensortal de medidas de entorno 193
(16)
(II)
10 m
x
(0,0) 7.5 m.
12
o
lo 0 01000 0010
00
8
6
6
o 000000 0~~.000
-2
-2 0 2 4 6 8 10
a) Posicin 1
2.5 o
o o
0 0
2 o o
o o
0
1 .5 o o-
o
0 0
o o
o
OS 0,
o
o o 0
-0.5 o
-2 0 2 4 6 8
b). Posicin 2
2.5
o
o
2 o,
O
o
1.5 o
o
o
-O
14 0-
O
O o
o
0.5 o
o o
o
0
-0.5 -o o -
o
1 o
-IB
o 1- 2 3 4 5 6 7 8
En la figura 4-34b se muestra el mismo resultado de fusin pero slo para las
celdas que considera el robot como ocupadas. Esto es un factor experimental que
depende de la frecuencia de medida de los sensores, la certeza de estos, etc.; en
este ejemplo se han considerado como ocupadas (aquellas celdas cuya creencia es
superior a 064>. Se puede observar que las medidas errneas o espurias han sido
observadas una o muy pocas veces y por tanto no ha crecido su certeza hasta ser
consideras como ocupadas, por lo que se obtiene un mapa ms preciso. Por
supuesto si existen errores en la medida que se repiten, como el caso de la columna
o de las esquinas, no podrn eliminarse. La nica forma de corregir estos errores es
con la ayuda de otro sensor.
2
si
196 4,7 Resultados experimentales 2
12
10-
st
8
2
xii
6 1 tioo
-~
U ~
1
st
0 2
12....
0 2 4 6 8 10
2
10 *CYs42sa,
4 2
8 a
a
6
46 ji
2
2
8
4
1
2
0
7
al
apertura de campo y los parmetros de las cmaras como tamao de pixel, distancia
focal, etc. Con l se simula si el robot reconoce o no un objeto y, en caso
afirmativo, a qu distancia estima su posicion. -
10 . . 10 -
--~- ~
a a
8 8
1:
6 6 t
dc. E
Q
e t
4 4
2 2 -
1.
o o -
0 2 4 6 0 2 4 6 8
a) Mapa de creencia obtenido b) Mapa de celdas consideradas ocupadas
Figura 4-35. Fusin de medidas del sensor de ultrasonidos.
reconocer con precisin el borde del objeto de la parte superior (el que queda en st
su ngulo de visin) y las esquinas superiores, sobre todo la esquina y la pared que
se encuentran justo enfrente del robot. 2
10
~4 ~
10
a
2
2
8
1 8 1
st
6 1 6
4
st
4
2 2
st
o o 2 4 6
o o 2 4 6 8
st
a) Mapa de creencia obtenido b) Mapa de celdas consideradas ocupadas
Figura 4-36. Fusin de medidas de sensores de visin estereoscpica. si
La fusin de ambas medidas da lugar a una estima mejor del entorno, vase 2
la figura 4-37. En el caso mostrado, existe un error entre las medidas de
ultrasonidos y las de visin en el clculo de la posicin de la pared de enfrente, lo
que impide su correcta fusin. Sin embargo, podemos ver como se reconoce con
st
Thayor precisin las esquinas del objeto que es observado por los dos sensores y se
detecta la esquina que se encuentra enfrente del robot y que no se podra estimar
st
con ultrasonidos.
st
st
si
2
si
si
si
st
CapItulo 4. Fusin muitisensorial de medidas de entorno 199
4.
8 .~
vi
te E
4
6 6 1~.
ev e
.4..
2
-e t
e.
.1 4
4
4
4
2 2
0 ---- o
0 2 4 6 0 2 4 6 8
fusin. Esto permite que sea muy adecuado para su utilizacin por distintos
st
usuarios y en distintas aplicaciones. Adems las redes permiten su uso de modo
2
-
utilizacin con los mapas de creencia diseados por Elfes, pero adems se ha
mostrado su capacidad para ampliar y modificar los modelos utilizados, as como la
2
posibilidad de su uso en otro tipo de mapas como los histogramas de campo d 2
Borenstein o la utilizacin de ambos mtodos simultneamente segn las
necesidades del entorno, sensores o problema planteado. 2
La utilizacin de las redes bayesianas para crear histogramas de campo llevan
a la necesidad de disear redes temporales. Las redes dinmicas planteadas 2
resuelven el problema del uso del sistema de fusin de entorno cuando se
necesitan propiedades temporales, como por ejemplo es la inclusin de un factor
2
2
2
2
2
si
st
Captulo 5
Las tareas escogidas son muy generales para que el sistema sea
utilizable en diferentes robots. Su implementacin es muy sencilla y se
deja la posibilidad de cambiar los algoritmos utilizados por otros ms
complejos. Por supuesto para que este sistema sea fcilmente
reutilizable es necesario realizar un diseo muy claro que sea de fcil
comprensin y cuyo interfaz est claramente especificado. Esto se ha
realizado utilizando el lenguaje de especificacin grfica orientado a
objetos en tiempo real, ROOM.
Finalmente, una vez desarrollado todo el sistema de control, se
simulan diferentes situaciones en las que el sistema puede encontrarse:
se presentan situaciones de fallo de alguno de los sensores, esquiva de
obstculos imprevistos en la trayectoria fijada. o utilizacin del robot.
para exploracin de su entorno y construccin de mapas.
201
202 Introduccin
Introduccin
Para implementar el sistema de fusin multisensorial en un robot mvil es
necesario definir su relacin o interfaz con otras tareas necesarias para el correcto
funcionamiento del robot mvil. Por ello, la mejor forma de mostrar su utilizacin j
en un sistema robtico es presentar su funcionamiento dentro de todo el conjunto
de tareas existentes en un robot mvil.
Por supuesto, el tipo, nmero y frmncin de cada una de las tareas que
componen un robot autnomo mvil es diferente y depende del diseador y de la
labor que desarrollar el robot. Sin embargo, todos presentan ciertas caractersticas
comunes que ayudan a com1Srender la importancia del sistema de fusin dentro de
un robot mvil.
Por lo tanto, siguiendo la fllosofla de generalidad que se ha buscado en el
sistema de fusin multisensorial, se define una organizacin del sistema robtico J
en tareas que pueden ser fcilmente comprensibles y modificables por el usuario.
u
Capitulo 5. Implementacin del Sistema de Fusin 205
1. Control del Robot; Este nivel se encarga del control fsico de los j
diferentes sensores y actuadores del vehculo: primitivas para e
movimiento, control de sensores (internos y externos), adquisicin
de datos, etc. Acta como interfaz entre los niveles superiores del
u
II.
sistema y los detalles de bajo nivel.
1V. Modelizacin del mundo real; Para llevar a cabo cualquier grado de
autonoma, el robot debe tener un modelo, cuanto ms rico mejor,
de todo cuanto le rodea. Este modelo se basa en afirmaciones
sobre los datos integrados de varios sensores, y se encarga de
contrastar los datos obtenidos y proponer una hiptesis adecuada.
Supervisin
Navegacin
Planificacin
Control
Modelizacin del mundo real
Integracin sensorial
Interpretacin sensorial
Control del Robot
Figura 5-1. Niveles de actuacin en todo robot mvil
percepcin (Local, Mundo, Misin y Monitor del sistema) y desciende para actuar
j
con el sistema por los niveles de planificacin (Misin, Ruta, Local y Reflejo). Cada
pieza debe ser construida a fin de ejecutar el robot como un todo. Por supuesto, en
J
este caso, los cambios posteriores en cualquier parte (para mejorar o extender
alguna funcin) deben hacerse de modo que las interfaces entre mdulos no
cambien o los efectos del cambio deben propagarse a los niveles vecinos
cambiando tambin su funcionalidad. Cada uno de estos pedazos representan los
niveles en los que se descomponen las tareas de un robot mvil.
J
J
j
CapItulo 5. Implementadn del Sistema de Fusin 209
O~T T
Interpretacin
U
del
E
R R
E Entorno
y
<Planificador> 1
s
0 6 0
~jj9~N _______________ E
u
Figura 5-3 Descomposicin horizontal de las tareas
u
Esta arquitectura, tpicamente distribuida, denomina a cada mdulo como
niveles de competencia [Brooks 86] y son una especificacin informal de una clase
de comportamiento para un robot sobre todos los entornos que encontrar. En la
u
figura 5-3, se puede observar que cada nivel de competenqia incluye como un
subconjunt de herramientas a cada nivel anterior de competencia. La ventaja de
los niveles de competencia es que podemos construir capas de un sistema de
control correspondientes a cada nivel de competencia y simplemente aadir una
nueva capa a un conjunto existente para desplazarlo al nivel superior ms prximo.
Por esto, a esta arquitectura se le llama tambin arquitectura asumida.
1 Seal de referencia
Integraci
J
Zsensorialj
4 ji Seal de control
Medidas
de entorno
e J
[jre~rocsieo~
a
Pep amento 3 Pepo
J
4.
~er~nterf~
J
J
J
Entorno
del plan; y una posibilidad de actuaciones reflejas (mdulos de bajo nivel como los
Actuadores> aunque slo en situaciones urgentes o peligrosas como en un cambio
brusco y peligroso del entorno o en un fallo del sistema.
Sensores diversos; Un robot mvil necesita una gran cantidad de sensores de
distintos tipos (cmaras de TV, encoders, sistema GPS, barmetro, brjula, sistema
de navegacin inercial, etc.) que le permita adquirir y manipular un modelo de su
entorno rico y completo. La estructura propuesta dispone de la integracin e
interpretacin (mdulos Planificacin e Integracin y fusin sensorial) de los datos
provenientes de todos los sensores disponibles, sin que los dems mdulos tengan
conocimiento de la existencia de estos sensores.
Robustez. Cuando alguno de los sensores falla o algn tipo de los sensores no
est operativo debido a cambios del entorno, el robot debe ser capaz de adaptarse
y seguir funcionando perfectamente con los restantes sensores. Esto es posible por
medio del mdulo Integracin y fusin sensorial, puesto que todas la medidas son
filtradas y tratadas estadsticamente segn su error actual, unindose en un nico
resultado.
Extensibilidad; Poder ampliar las posibilidades del robot aadiendo sin
problemas nuevos sensores con mejores capacidades que aparezcan en el mercado.
La adicin de nuevas capacidades en nuevos algoritmos tambin debe ser
contemplada. La posibilidad de cambiar un algoritmo por otro es muy simple.
Sencillamente se crea el nuevo algoritmo, se prueba y depura externamente y
entonces se sustituye por el mdulo antiguo sin prejuicio en el funcionamiento de
los dems mdulos. Los nuevos sensores u otros del mismo tipo de alguno de los
existentes tambin pueden ser aadidos sin problemas dada la estructura en
mdulos independientes del sistema.
Posidonadores
Son los elementos necesarios para encontrar el estado y el entorno en el
que se encuentra el mvil, figura 515. Podemos destacar distintos mdulos segn la
informacin que utilizan y su nivel de abstraccin.
Posicionador 1
Conoce el estado del mvil y en concreto su posicin absoluta en el entorno, J
Tambin dispone de la posicin de los obstculos previstos o baliza naturales como
paredes, columnas, puntos de bifurcacin, etc. J
Capitulo 5. Implementacin del Sistema de Fusin 215
USUARIO
SUPERVISOR
Planificador Algoritmo
-
caminos
NAVEGANTE
dontrol de planes1
4
Control
NAVEGANTE 2
Control de Trayectoria 3
u
L- POSICIONADOR 1
Planificador u
Control de motores
NAVEGANTE3
1
BUS d0COMUNICACIONES>
A
IPOSICIONADOR2 POSICIONADOR3S
[~~gr~inMultisenso~alj Multisensorial
POSICIONADOR 4 POSIcIONADOR4
Imagen
TV
Ultra
sonidos
Mapas U Lector
Encoder
Lector
GPS
Lector
NS
~
~ves~ ~
~Y
_
E~eob~a
Posicionador 2
Su misin es integrar los datos procedentes de los sensores de deteccin de
obstculos y de entorno procedentes del Posicionador 4 (descrito ms adelante>. Es
decir, se encarga de detectar cualquier obstculo existente en el entorno del robot
si
si
216 5.1. Arquitectura de control propuesta
los otros sensores. En este caso el Control detiene el carro y se lo comunica a todos
los elementos de la navegacin.
Navegantes
Son los mdulos que determinan las acciones a realizar por el vehculo.
Toman decisiones sobre el camino a segir, la existencia o no de obstculos, la
forma de seguir correctamente la trayectoria y de esquivar los obstculos
imprevistos. Tambin se dividen en varios tipos segn su grado de decisin:
Navegante 1
Es el que conoce la misin a realizar, comunicada a partir del Supervisor.
ste es el que se encarga de estudiar el mapa global para detenninar la trayectoria
a seguir para alcanzar la meta final a partir de las premisas indicadas por el
Supervisor.
Tambin es el que planifica la trayectoria sobre un mapa local para llevar a
cabo el movimiento inmediato. Si en la trayectoria calculada iicialmente en el
plano global se encuentra un obstculo, calcula sobre el mapa local (mapa ms
preciso) la trayectoria que permita esquivarlo y volver a recuperar la trayectoria
global trazada. De esta forma acta de manera reactiva, teniendo en cuenta la
situacin actual.
Navegante 2
Determina los puntos de consigna concretos que debe enviar al control de los
motores (Navegante 3) para que siga lo ms fielmente posible la trayectoria trazada
por el navegante 1, teniendo en cuenta a su vez las restricciones fsicas y del
entorno para mantener la seguridad en el trayecto del mvil.
Adems controla que la trayectoria que realmente sigue el mvil se
corresponda con la solicitada y que no corre ningn riesgo cuando se desva o
cuando surgen objetos en cualquier zona prxima al camino previsto.
Navegante 3
Representa el control directo de los motores de las medas. Por lo tanto es el
responsable de producir las salidas de control necesarias para controlar los
motores, de forma que se consiga llevar la velocidad, direccin o radio
determinados. Para ello debe compensar errores de desplazamiento lateral debido
si
si
218. 5.1. Arquitectura de control propuesta si
a diferencias geomtricas o fsicas de las ruedas y controlar por ejemplo las dos
ruedas de forma diferente en caso de poseer controles separados.
si
si
si
si
si
si
si
si
si
si
si
si
si
u
si
Captulo 5. Implementacin del Sistema de Fusin 219
Ud
Captulo 5. Implementacin del Sistema de Fusin 223
PRESENTACIN
GRAFICA
Datos de eiilorno
Sehales de contiol
Datos alineados
CONTROLADORAS
PREPROGESAMIENTO
Datos ea boato Ii y
41 1
QQ~
1 1 ~t
1 MOTORES DEL ROBOT
1
fi
~POSIClN
BOOM [Selic 95]. As, se considerar al robot y a cada una de sus tareas com si
actores.
En la figura 5-8 se muestra su interfaz con el exterior. El actor mostrado en la
Ud
figura, actor ROBOT, presenta una serie de puertos para comunicarse con el
exterior y slo podr hacerlo a travs de ellos. En esta figura cabe destacar que el si
actor BOBOT es independiente de los sensores que se utilicen, de la plataforma
donde se ejecute (se ha utilizado C++ y la representacin grfica es un actor
independiente del robot para evitar particularidades) y del mtodo de conduccin
si
utilizado. Esto siempre es posible si los drivers correspondientes satisfacen el
interfaz especificado.
Representacin grafica si
Interfhz de usuano.
si
ROBOT
si
Ud
si
u
Sensores
fsicos
Sensores
fsicos
u
u
Figura 5-8. Relacin del actor ROBOT con el sistema sensorial.
u
u
Capitulo 5. Implementacin del Sistema de Fusin 225
3.- Distintos puertos que se conectan a los actores que actan como interfaz
de cada uno de los sensores utilizados. El nmero de puertos ser variable y
depender del nmero de sensores (de entorno y de estado> disponibles.
Figura 5-9. Interconexin entre los actores componentes del actor ROBOT.
De las conexiones entre actores de la figura 5-9, cabe destacar que el estado
calculado por el mdulo fusin de estado es enviado a todos los actores (por el
puerto de comportamiento denominado DatoEstado) ya que todos necesitan
conocer la posicin del mvil. El puerto Pcpeligro permite enviar mensajes de alta
si
prioridad desde el Planificador al Navegante para que decida que se debe hacer en u
caso de un objeto en la trayectoria calculada. Otros puertos son DatoEntorno, por
el que circulan datos de objetos detectados para que el Planificador construya su j
modelo del mundo; camino, por el que se comunica al Navegante el mejor camino
de acuerdo a la eleccin del usuario; y Pconsigna, por el que circulan la consigna u
que el navegante enva al Control de los Motores para que gue al robot por la
trayectoria indicada.
u
si
u
a
si
u
u
u
si
a
u
Captulo 5. Implementacin del Sistema de Fusin 227
xP
u t1 xp
u
xP
si
si
Ud
FusEstado
NODO KAL1
eX,eP
4-
FusEstado
NODO KAL2
eX,eP FusEstado
NODO KALS
Ud
4-
y
u
datos 1 datos2 datos3 u
SensorLgico SensorLgico SensorLgico
SENSOR KAL1 SENSOR KAL2 SENSOR KAL3 2
Figura 5-10 Informacin transmitida en el sistema de fusin de estado.
.
si
Este esquema de funcionamiento se puede sintetizar en la clase actor a
FusinEstado, figura 5-11, donde se puede ver que se compone de dos actores:
fusin que pertenecen a la clase FusEstado y el actor sensorFusion, de tipo
SensorFusion. El actorjtsion se encarga de recoger la estima de todos los sensores
si
y comunicar aquella que sea mejor al planificador. Se entiende por mejor aquella
estima de posicin ms precisa o ms actual.
a
La clase SensorFusion se compone a su vez de dos actores, el actor
sensorlogico correspondiente a la clase SensorLgico encargado de temporizar e
Ud
interpretar las lecturas sobre el dispositivo fsico y el actor nodoKalman
perteneciente a la clase FusEstado, que recibe las estimas de los otros nodos y
a
calcula las suyas a partir de stas y de las medidas obtenidas. Para cada sensor
utilizado se replica un actor del tipo SensorFusion para el tratamiento de sus datos. a
El actor FusinEstado puede utilizar mltiples sensores de estado que pueden
conectarse en el puerto externo sensorEstado. Ud
si
u
CapItulo 5. Impleinentacin del Sistema de Fusin 229
datoEstado
a
t:fmerisajemisensordatoObserv.z)
t:{resel,eslin,aEsladoest}
a:{aclualizaeslado(est);
enviar reset(est,datoObserv. res
si
t:<rrenaajeuest]maEsladou)
a:{soli&tar timer(T,T fallo):) x:{predecirestado(>,
val=actualizarestado<z}
si
resal) va = O
t(val).envarjnfo(infoxP otros_nodos mensajexP
t:<mensajamisansor,daloos}
a
a:<lnioislizao; aperando u inicial a:{predecireslado:
solicitar_limerff,T espera :} t:{TesperaTimar}
a:<deaacliva(Tfafo>;}
x:{solicitarlimer(TTfallo);
if(lreset),
A
si
l:{mensajefinealimaEslado) aipre~eoir slado():} asimilarjnforrraoion<):
e
a:<enviaraenhal(daloObserv, mensaje fin viar datos<info
t:{Tfallo.Timer}
alpredecir estado
4 nodo,estimaEstado medidas
t:<mensajeXP.otrosnodosinfoXP)
si
Fin
t:(mensaje fin, eslimaEslado)
a: <enviar senha 1 datoObs mensaje f
t:{mensaje_u estimaEstado u>
predecir esladoO:}
a
Figura 5-13. Comportamiento del actor nodoKalman.
si
a
si
4
Captulo 5. Implementacin del Sistema de Fusin 231
it(Ci>
MOiX
a
u
2(C)
.4
FusEntorno FusEntorno
a
t
SensorLgico
datos, X
datos, X
SensorLtigico
si
SENSOR VISIN SENSOR UVERAS
dasoErlonio
Esto puede verse como una serie de planos transparentes que se van
complementando para obtener una imagen completa y mejorada del entorno,
vase la figura 5-17.
Sn
(nodoBayes). Su modo de actuacin vendr dada por las rdenes que haya recibido a
mediante el mensaje FuncionModo.
a
u
a:<Inioializa<); solicitar_timer<T,T medida);> a
a
t:{mensaje fin.datoobserv
Fin
t:<Funoionwodo.datoobserv, modo)
a:<esta b acer modo(m odo):> a
a
Figura 5-18. Comportamieito del actor sensorlgico. si
a
a
si
a
a
si
si
Figura 5-19. Comportamiento del actor nodoBayes.
a
a
a
si
Capitulo 5. Impleinentadn del Sistema de Fusin 235
El control de los motores es una mquina lgica (actor> muy dependiente del
robot mvil que se utilice. Esto se debe a que se dispone de distintos algoritmos y
mtodos de control dependiendo del tipo de robot utilizado. Principalmente el
control depende del tipo de traccin motriz y ruedas gua disponibles, por ejemplo:
cuatro ruedas (dos traseras motrices y dos delanteras gua> como en los
si
a
236 5.3. Tareas en el control del robot mvil autnomo a
automviles; tres ruedas (dos traseras motrices y una delantera gua), como los
triciclos; dos ruedas motrices independientes, como en los tanques Pero no slo
pueden utilizarse ruedas como elemento de traccin, sino que pueden utilizarse
a
otros mecanismos conio patas, adenas, etc. Un anlisis de la cinemtica y distintas
En nuestro caso los puntos de consigna son posiciones (x,y, 9) por las que se
desea que pase el robot, y el control debe encargarse de dar las rdenes necesarias
a las ruedas para que realicen el trayecto solicitado. Por lo tanto, primero ser
a
necesario calcular la trayectoria que el robot debe seguir para pasar por los puntos a
de consigna marcados por el Planificador. As, tenemos dos tareas principales:
generacin de trayectoria y control de trayectoria. a
53.2.1 Generacin de Ja trayectoria
A partir de la posicin actual del robot y de los puntos de consigna que el a
Planificador le manda al control de los motores, se calcula la trayectoria de
referencia. Esto es, el conjunto de valores (x,y, 9) posicin y orientacin que
a
debe seguir el robot en cada instante de muestreo. Esta trayectoria debe seguir lo
ms fielmente posible los puntos de consigna marcados, pero adems debe cumplir a
unas serie de restricciones como que el movimiento del robot sea suave, sea
fsicamente realizable por el mvil o la miimizacin de ciertas variables como la a
energa consumida [flelingette 95], la curvatura de la trayectoria [Kanayama 96;
Biss 95], etc. a
La solucin a la generacin de tryectoria depender del tipo de robot
utilizado. La mnima restriccin que debe cumplir es que sea continua, pero
existen mtodos para calcular una curva de ajuste C o incluso C2. Ejemplos de
a
curvas de este tipo son las curvas de Bezier o los B-Splines, que pueden
Vder +V&q
__________ co s(9)
[$L:
2
9 _ 1 V~<~V 1
(5.2>
Vd y k
{x(k),y(k),e(k)}
{xr(k),yr(k),Or(k)}
Vder
Control vRef
do f2(e,on,enor,ea) (04) u
La ley de control necesaria para calcularfi yf2 se basa en minimizar el error a
cometido en la trayectoria del robot [Nelson 88]. Como se puede ver en la figura 5-
22, el error se puede dividir en tres tipos:
a
- error de orientacin, e5, que se define como la diferencia entre la
orientacin de referencia del robot y la orientacin real que tiene. ja
- error normal, e~, que representa la distancia, perpendicular a la
trayectoria de referencia, que separa la posicin de referencia y la
posicin real del robot. si
- error tangencial, e,, se define como el error de seguimiento de la si
trayectoria, es decir, cunto se aleja el robot de la posicin de
referencia si no existiese error normal ni error de orientacin. a
ref Orea
a
Pnv
si
e
a
Figura 5-22. Errores de la trayectoria real con respecto a la definida. si
a
Captulo 5. Implementacin del Sistema & Fusin 239
As se pueden obtener las expresiones (5.5), (5.5) y (5.7) para cada uno de los
errores:
es=I
9Re $eol (5.5)
Vizqjef viz~cont
Vizqjeal
no de algo en nuestro camino y los puntos por los que deberamos pas@r. Por tanto
a
basta con indicar la zona del espacio, si est ocupada o no; y los puntos del
recorrido a seguir. Teniendo esto en cuenta existen diversos mtodos para
representar e entorno por el que se puede mover el robot:
si
a.- Mediante un conjunto de nodos conectados entre si, por ejemplo en Ud
[Meng 93] donde los nodos representan corredores, intersecciones
entre corredores, etc, y en su interior se guarda la informacin
relevante para el movimiento (puertas, tablones
a
b.- Como regiones poligonales que rodean a todos los objetos. Esta Ud
representacin es la apropiada para el uso de los diagramas de
Voronoi [Edelsbrunner 87; Aurenhammer 91]. a
c.- Dividir la regin del espacio en celdas o cuadrculas. Esta divisin
de celdas puede, segn el punto de vista del que se hable, a
clasificarse en: exacta o aproximada; o en, igualesj o desiguales. Por
divisin en celdas iguales indicamos que la celda tiene un objeto o a
no, por ejemplo en [Gat 90; Elfes 90], pero no puede contener a la
vez parte de un objeto y zonas vacas. Por el contrario la divisin
si
(4-3) (3-1-3>
(3) (4) u
-1) (4-2) (4-3) (414) a
u
si
u
a
(3-1-1> (3-1-2) (3-1-3) (3-1-4)
Camino escogido
Punto destino
Figura 5-27. Clculo de la trayectoria inicial y la trayectoria seguida.
Ud
Captulo 5. Implementacin del Sistema de Fusin 247
j Nodo
Y
0 a
Obstculo
Trayectoria inicial
Nodo anterior vlido
Obstculo
detectado
Nodos nuevos
bj eto
a existente
una buena actualizacin del entorno. Esta actualizacin es realizada por el mdulo
si
encargado de la integracin multisensorial. Este es el mdulo bsico del robot, sin
l no podra percibir el entorno en el que se mueve y sobre el que trabaja el Ud
planificador de caminos.
Ud
Ud
Ud
si
a
Capitulo 5. Implementacin del Sistema de Fusin 251
datoEstado
ptjeligtu
datoEntorno
Ud
t:<nuevos...ptos, DatoEntornodatos>
a:<actualizarmapa<datos);
datos peligro=comprobar(datos,pos):
it datos peligrol=nulI
enviaPtos(datos peligro, Pt.peligro, peligro>:>
a
<4 Ud
a) Planificador global
a
Ud
Ud
Ud
Ud
Ud
Ud
Ud
Ud
Ud
b) Planificador local
Figura 5-31. Comportamiento del Planificador. Ud
si
u
Captulo 5. Implementacin del Sistema de Fusin 253
5.3.4. El navegante
2.- Se ocupa de la seguridad del movimiento del robot. Para ello se definen
varias zonas dentro del mapa local, vase la figura 5-32:
- Circulo de seguridad. Zona donde se vigila que el movimiento del
robot sea seguro e instante donde se debe pedir un nuevo mapa local.
Circulo de seguridad
Camino seguro
Mapa Local
cuestin est ejecutando rutinas para comunicacin y control de tareas del sistema
Ud
PVM; el color de Waiting indica cundo la tarea est suspendida, por ejemplo si
se encuentra en espera de mensajes de otros procesos. Las lineas entre dos barras
representan los mensajes intercambiados entre esas treas. Cada mensaje viene
Ud
representado por una lnea que parte de una barra (mensaje enviado) hasta el Ud
instante donde lo recibe la otra tarea (mensaje recibido>.
comunicar al robot la mejor estima de todas (seria la lectura del estado actual por
Ud
parte del robot). Es decir, equivale al ciclo de lectura del sensor: en el se realiza la
asimilacin de las medidas recibidas por cada sensor y su envo al sistema externo Ud
que escoge la estima ms precisa.
Ud
Ud
Ud
Captulo 5. Implementacin del Sistema de Fusin 259
Ud
Ud
c) Zona A medida, asimilacin y actualizacin. Ud
Figura 5-35. Integracin de medidas de estado. a
u
Ud
Capitulo 5. Implementacin del Sistema de Fusin 261
01310NdlstrI
ORlON:nodoRal~
ORION:SOflIWl
ORION:ndokaI
ORION.s~kaI
ORI~N nodokBI
ORION3or~kaI
ORIONhIJotn,~
p~ONI?lctas
ORION hilotas
ORIONhilotas
ORION.hIloln
a) Ciclo sm fallo del sensor.
ORION.dlstd
ORIONncdokal
ORION senkal
ORLON,nodokal
ORION s.hkal
ORION nodokal
ORlO N.sonk~I
ORlO N1J~iJotas
ORION hijotas
ORION.hljoias
ORI?l~l:hIjot
9s
ORIONhljotas.
Ud
Ud
si
u
a
Capitulo 5. Implementacin del Sistema de Fusin 263
IICjIIZCIO
ir
slung
1:
1
ji.
u
-
resultados en pantalla y es utilizado como interfaz grfico con el
usuano. Es el actor Navegante comentado en la seccin 5.3.4. Ud
- Motores. Es el actor encargado de realizar el control de los motores, si
vase la seccin 5.3.2.
orlon.runpvm
crion.dsplay
qrlon.Navqante
crion motores
*rLan:PlanLooI
orlon PlanGlobal
*ri~n:dLstI
Orlonmap;
u
a
Captulo 6
Resultados Experimentales
En este Captulo se muestra el comportamiento de todas las
herramientas desarroladas (el sistema de fusin multisensorial y la
arquitectura de control) actuando juntas en el manejo de un robot mvil.
Las experiencias presentadas se dividen en dos clases: simulaciones y
pruebas reales.
Las simulaciones penniten destacar detalles del comportamiento del
sistema que no pueden realizarse con facilidad en pruebas reales, pero
que mediante simulacin son fciles de provocar y repetir cuantas veces
sean necesarias. Con estos experiencias se destaca el comportamiento del
robot y del sistema sensorial en distintas situaciones como por ejemplo,
reconocimiento de entorno, construccin de mapas, navegacin reactiva o
deteccin de objetos en movimiento.
Las pruebas en un robot real ponen de manifiesto la utilidad
prctica del sistema de fusin y la arquitectura de control desarrollados.
Este caso permite mostrar cmo trabaja el sistema en tiempo real, aunque
la velocidad del robot debe ser lenta puesto que la carga en una nica
computadora es muy grande y no se pueden exigir velocidades ms altas.
Adems, con este ejemplo se muestra cmo se adapta el sistema
implementado para trabajar con un robot y sensores reales, destacando su
fcil manejo, sencilla adaptacin para trabajar con los disponibles y su
simple configuracin segn el comportamiento del robot que se desee.
267
u
268 6.1. Introduccin
6.1. Introduccin a
Para mostrar la eficacia y versatilidad del sistema de fusin desarrollado y su a
integracin en la arquitectura descrita en el Capitulo 5 se utilizar un robot mvil
de dos medas independientes en entornos interiores. Se realizan dos tipos de a
experiencias: simulaciones (para comprobar su funcionamiento en distintas
situaciones) y pruebas reales (para comprobar su funcionamiento en tiempo real).
u
u
Capitulo 6. Resultados Experimentales 269
A. Mapa Global. Presenta el mapa completo por el que se mueve el robot (si
se dispone de l). En ste se representa la informacin correspondiente a
la creencia del estado de cada celda obtenida mediante fusin (creencia
global>. La probabilidad de ocupacin se representa con diferentes
colores.
a
272 6.2. Simulacin del sistema implemeutado
si
u
a
Captulo 6. Resultados Experimentales 273
los rodeamos (debido a la perspectiva que los sensores tienen de los objetos) y por
lo tanto el camino local se ir modificando de acorde a esa peicepcin del entorno.
a) b) c)
Figura 6-3. Distintos mapas locales en la observacin de un objeto en movimiento.
Receptores de
balizas artificiales
Brujula
magntica
.~Torreta de
ultrasonidos
4 Cinturn de
ultrasonidos
Para trabajar con estos sensores es necesario construir ciertas rutinas que
permitan su manejo. Estas rutinas son propias de cada tipo de sensor y es lo que
cada usuario debe definir del sistema de fusin y control del robot. Estas fuhciones
son,
- Funciones de alto nivel. Corresponden a la redefinicin de la
funcin Vectinfo() y de la funcin EstadnFuncion<) indicadas en el
Captulo 2. La funcin Vectjnfo() se utiliza para tratar la
infonnacin procedente del sensor de bajo nivel y construir el vector
de estado (o de entorno) que es necesario enviar al sistema de
fusin. Sus funciones son sincronismo, conversin de unidades,
asociacin de datos, etc. La funcin EstadoFunciono se ocupa del
comportamiento de cada sensor: se encarga de recibir rdenes para
variar la actuacin del sensor de bajo nivel y para indicar el estado de
un sensor determinado.
a
u
280 6.3: Resltados en pruebas reales a
- Funciones de bajo nivel. Corresponden a las funciones prximas al
sensor y se encargan de la lectura y control de los sensores
si
si
Ud
Capitulo 6. Resultados Experimentales 281
a >~ e y e x > e
Por otro lado, en la tabla 6-2 se indica el periodo de medida de los sensores
fisicos y el periodo de actualizacin del estado por parte de cada uno de los
sensores lgicos de estado, as como el periodo de medida y de olvido para los
sensores de entorno. Todo ello seleccionado por el usuario para obtener un
comportamiento concreto.
Brujula magnetica 1 1 -
Cinturn de ultrasomdos 1 - 10
E
o,
E>
E
e
8
Li
.0
C
~.0
E
<u
.0
C
<E
.0 0>1 >
u
u
284 6.3. Resultados en pruebas reales
si
a
u
a
a
a
Figura 6-7. Mapa del entorno de pruebas.
a
En la figura 6-7 se han incluido dos obstculos que no se encuentran en el
mapa disponible por el robot y que utiliza como informacin a priori en su mapa a
de ocupacin.
En la prueba realizada el robot se mueve desde el punto (1) hasta el (2), pero u
en su camino se encontrar el obstculo que no estaba incluido en el mapa, lo
esquiva y alcanza su destino marcado. El recorrido realizado puede verse en la
figura 6-8, en ella se muestra tambin el mapa de ocupacin cuando ha realizado-el
a
recorrido. Aqu se pueden destacar los dos objetos que no aparecan en el mapa a
priori del robot.
Ud
Ud
u
u
Captulo & Resultados Experimentales 285
16
14
12
lo
6
6
2 4 6 8 10
350
300
250
(0 4,
200
E o>
160
100
50
5.5 e0
6.5 lOO 200 300 400 500 600
metros tiempo
a> Posicin b) Orientacin
a
u
286 6.3. Resultados en pruebas reales a
Figura 6-9. Posicin y orientacin obtenida de los sensores fsicos
(Si, brujula magntica; S2, l)aliyas artificiales; SS, odometros) Ud
En figura 6-10, se muestran las estimas del estado del robot, para cada uno
de los sensores de estado. En este caso si que todos los sensores (nodos de fusin)
a
son capaces de estimar el estado final del robot, que- posteriormente enviarn al
nodo de fusin para que lo comunique a las dems tareas del robot. Ud
posicin estimada de S1-S2-SS Orientacin estimada de 81-82-Sa Ud
9
7
u
(0 o
o oo
(U
o>
E Ud
a
24 5 metros
6 7 8 0 100 200 tiempo
300 400 500 600 u
a) Posicin b) Orientacin
Figura 6-10. Posicin y orientacin obtenida en el sistema de fusin de estado a
(Si, brujula magntica; S2, balizas artificiales; SS, odometros) a
En las figuras 6-lOa y 6-lOb se puede observar como la estima de cada uno
de los sensores, debido a que intercambian informacin entre ellos, es
prcticamente la misma. Slo en algunas ocasiones, debido a fallo de los sensores, a
Ud
no validaciones de los datos externos o a errores en la comunicacin entre nodos, Ud
se producen divergencias en las estimas, pero son corregidas en cuanto se
normaliza la situacin. La causa de las diferencias entre las estimas se describe con
a
Ud
Captulo 6. Resultados Experimentales 287
de sus sensores. Esto es debido a que el robot pierde la seal de las balizas debido
a que uno de los emisores queda oculto por uno de obstculos. Sin embargo, a
pesar de este inconveniente, se puede observar que el robot sigue funcionando
correctamente gracias a la informacin redundante que ofrecan los encoders y la
brjula magntica.
Varianza Sensor 2
1 o5
100
1
sO 100 200 300 400 500 600
10
100
10~~
0 100 200 300 400 500 600
100
1
0 100 200 300 400 500 600
tiempo
Figura 6-11. Varianza de tas balizas artificiales (S2).
eliminadas gracias al factor de olvido. Indicar aqu que las torretas funcionan a
apuntando al objeto ms cercano al robot para reforzar la medida del cinturn de
ultra~nidos ya que puede ser un objeto potencialmente peligroso. En este caso al Ud
no existir obstculos, apuntan a las paredes.
Ud
14
12-
o a
10- Ud
Y- O
8
O Ud
6- 0
4,
Ud
2 Ud
o
o 2 4 6 a 10 Ud
Figura 6-12. Recorrido del robot y observaciones realizadas por los sensores de entorno
(o, cinturn de ultrasonidos; * torretas>
si
La figura 6-12 se muestran todas las medidas realizadas por los sensores de Ud
entorno (cinturn de ultrasonidos y torretas) y que son utilizadas para construir el
mapa de ocupacin a partir de la fusin de estas. El mapa de ocupacin resultante
puede verse en la figura 6-13 donde se puede destacar la eliminacin, mediante la
u
utilizacin de un factor de olvido, de las medidas que obstruan el camino del robot
(debido a ecos errneos). La figura 6-13a muestra el mapa de ocupacin resultante,
Ud
donde se sealan todas las celdas cuya creencia sea superior a la incertidumbre
(0.5) aunque realmente no se consideren ocupadas para el robot. En esta figura se
Ud
ha dibujado tambin el mapa real para que se observe la correspondencia entre la
estima y el entorno real. En la figura 6-13b se muestran slo las celdas que son a
consideradas ocupadas (su valor de creencia supera el 0.64). El valor considerado
como ocupado es seleccionado por el usuario y totalmente experimental. a
a
si
u
Captulo 6. Resultados Experimentales 289
1 le
14 14
12] 12
10 10
&
8
6
-
1
9
1
-
4 4
21 2 1
2 4 6 8 10 2 4 6 8 10
Ud
ji
1. ~ 1 Ii ~ii1 l~ u.U
4
Ud
ji
1 ~
-~
~ri~iIII1uI
~-~hii X Ccna
SSS
.eI...izq
Y (en.>
207
ori(1>
129
a
t~ II LI
____________
velder <nts>
0.06 0.00
11flU: ~E11SAJE30S
PLflHLOC: NUEVAYOS 101011
Ud
PLAN OLOR: ~UEV&J1ED DAS
~OTC0N: NUEUA.POSICIORSED
DAVES:rus1011 <ULT> Ud
CARGA CPU: 2.5 TIEMPO: 395.04
Ud
Figura 6-14. Exploracin para construccin de mapas.
a
El algoritmo utilizado por el planificador de caminos es el preparado para
exploracin y ya ha sido comentado en la seccin 6.2.1. En la figura 6-14 se puede
observar que el robot se aproxima a la pared detectada y la sigue para construir un
a
mapa del entorno que le rodea. En robot no utiliza ningn mapa a priori.
a
16 Ud
14
12
10
u
8
6
Ud
4
2
Ud
2 4 6 8 10 Ud
Figura 6-15. Mapa del entorno
a
u
u
Capitulo 6. Resultados Experimentales 291
Por ltimo destacar que en las pruebas reales, los algoritmos de control de las Ud
ruedas y el planificador de caminos utilizan unos algoritmos muy sencillos puesto
que no nos hemos centrado en estos aspectos del problema de un robot mvil, sino Ud
en la integracin y fusin de mltiples sensores y en la construccin de un sistema
fcilmente paralelizable, adaptable a cualquier tipo de sensor e independiente del
u
Ud
Ud
a
u
Ud
Conclusiones
Conclusiones y resultados
La investigacin realizada en esta tesis se ha centrado en dos objetivos
principales:
1. Desarrollo e implementacin de un sistema de integracin y fusin
multisensorial para vehculos mviles terrestres autnomos. Se ha
realizado un diseo abierto que sea independiente del nmero y del
tipo de sensores utilizados (dentro de una amplia variedad de
sensores). Adems, teniendo en cuenta que puede ser utilizado en
sistemas de tiempo real con fuertes restricciones en el tiempo de
respuesta, se han escogido aquellas tcnicas ms convenientes para
trabajar de forma distribuida y asncrona.
293
J
utilizados. Para ello, el primer paso es hacer una abstraccin de stos con
J
el fin de separar las tcnicas utilizadas de la amplia variedad de
dispositivos existentes. Esta abstraccin da lugar al sensor lgico.
En esta Tesis se han utilizado redes bayesianas porque tienen una serie
de propiedades que las hacen muy adecuadas para su utilizacin en un
sistema verstil y general: (1) su configuracin sencilla y directa, que abre
posibilidad de la utilizacin de mtodos grficos para su descripcin y
configuracin; (2) el uso de sensores distribuidos y la estructuracin del
sistema en capas; (3) la natural adaptacin del sistema para su
implementacin paralela; y (4) la utilizacin de sensores de forma
J
296 Conclsiones
u
u
____u_
Conclusiones 299
Por ltimo, con este trabajo se dispone de una plataforma para futuras
investigaciones en robtica e integracin multisensorial. El sistema de fusin y la
arquitectura de control implementadas asientan la base sobre la que se pueden
disear y probar distintos algoritmos de planificacin, control y fusin entre otras, e
investigar en tcnicas de visin artificial, redes neuronales artificiales, control
mediante lgica difusa, etc.
Esta Tesis engloba muchas reas de investigacin y es imposible abarcarlas a
todas. As, la construccin de los circuitos que manejan el sistema sensorial y el robot,
el software para su manejo, las comunicaciones entre procesos, el uso de sistemas
distribuidos o el control del robot entre otros, implican la colaboracin de distintos
grupos de trabajo. En este caso han participado, adems del grupo del rea de
Ingeniera de Sistemas y Automtica de esta Universidad, investigadores del
j
300 Conclusiones
4
Conclusiones 301
Publicaciones realizadas
Con motivo del trabajo desarrollado se han publicado los siguientes trabajos:
2
2
2
2
4
4
2
4
4
4
u
Bibliografa
Abid 92 MA. Abidi y R.C. Gonzalez The Use of Multisensor Data for Robotio
Applications. IFEE Transactions on Robotie and Automation, Vol. 6, No 2.
1992.
Agapito 93 de Agapito JA., de Agapito L., Schneider M., Garca Rosa E. Y de Pedro T.
Fuzzy logie applied to gas sensors. Sensors and Actuators B, 15-16, Pp. 105-
109, 1993.
Alami 98 Alami B., Chatila E., Fleury S., Gballab Xl. y Ingrand F. An Architecturefor
Autonomy. International Jonrual of Robotics Besearch, Vol. 17, No. 4. Abril,
1998.
Alen 87 Alen P.K A Framework for Implementing Multisensor Robotie Task. . Proc.
ASME mt. Comput. Engr. Conf. And Exhibition. New York, 1987.
Almond WWW Russell Almond. Pgina Wed sobre Software de Redes de Creencia.
hup.//bayes.stat.wa9hintong.edu/alnwnd/belief html.
Andersen 89 Andersen K., Olesen KG., Jensen F.V. y Jensen F. HUCIN a shell for
building Bayesian belief universesfor expert systems. Proes. Of the Eleventh
mt. Joint Conference on Artificial Intelligence. Detroit, 1989.
Anderson 79 Anderson B.D.O., Moore J.B. Optimal Filtering. Ed. Prentice-Hall, New
Jersey, 1979.
303
4
304 Bibliografa
2
sistemas ligados (strapdown). Tesis doctoral. Dpto. Informtica y
Automtica. UNED, 1989. 4
Arkin 87 Arkin, HG. Motor Sehema Based Navigation For a Mobile Robot: A
Approach to Programming by Behavior. Proc. of tbe JEFE International 4
Conference on Roboties and Autornation. PP. 264-271. 1987
Assi 98 Assi Abdel-Azim. Data Fusion for Medical Applications. Proc. of the 4
International Conference on Xlultisource-Multisensor Information Fusion.
FUSION98. Las Vegas, USA. Julio, 1998. 2
Astrom 80 Astrom K.J. Maximum Likelihood ami Prediction Error Methods.
Automtica. Vol. 16, 1980. 2
Aurenbammer 91 Aurenbammer F. Voronoi diagrams: a survey of a fundamental geometric
dista structuie. ACM Comput. Surv., 23. 1991. 4
Avolio 93 Avolio, O. PrincipIes of Rotary Optical Encoders. Sensors. pags. 10-ls. Abril
1993,
Beer9l Beer lID., Chiel H.J. y Sterling LS. A biological perspective on autonomaus
agent design. Iii Designing Autonomous Agents: Tbeory and Practice from
Biology to Engineering and Back. Edited by P. Maes. MIT Press, 1991.
Bel 94 Bel D.A., Levine SP., Koren Y., Jaros LA., Borenstein J. Design Crtteriafor
Obstade Avoidance in a Shared-Control System. RESNA94 Annual
Conference, June 1994.
Berg 83 Berg, II. E. Estimation and Prediction for Maneuvering Target Trajectories.
IFEE Transactions on Automatie Control. Marzo, 1983
Bishop 95 Bishop CM. Neural Networks for Fattern Becognition. Oxford University
Press. Oxford, 1995.
Bishop 97 Bisbop II. Tite Potentialfor Vehicle-Higway Automation in tite United States.
Proc. lEE International Conference on mt. Bob. and Sys. pp. 1215-1216.
1997.
Borenstein 91a Borenstein J. y Koren Y. Tite vectorfield histogram .-fast obstacle avoidance
for mobile robots. IFEE Journal of Hobotics and Automation, Vol. 7, No. 3.
Junio, 1991.
Borenstein 91h Borenstein J. y Koren Y. Histogramic in-motion mapping for mobile robot
obstacle avoidance. JEFE Journal of Robotics and Automation, Vol. 7, No. 4,
1991.
Borenstein 95a Borenstein J., Everett H.R., y Feng L. Where Am 1? - Systems and Method9
for Mobile. Edition of a University of Michigan internal report, Septiembre
1995.
4
306 Bibliografa
4
Borenstein 95b Borenstein J., Wehe D., Feng L. Y Koren Y. Mobile Robot Navigation in
2
Narrow Aisles witit Ulrasonic Sensors. ANS
and Bemote Systems. Monterey, CA. Febrero, 1995.
5L Topical Meeting on Boboties
2
Borenstein 97 Borenstein J., Everett HE., Feng, L. y Wehe D. Mobile Robot Positioning C.
Sersors and Techniques. Journal of Robotic Systems. Monogrfico, Mobile
2
Robots. Vol. 14, No. 4, Abril 1997. 1
Borenstein 97a Borenstein J. Tite CuideCane - A Computerized Travel Aid for tite Active
mt.
Cuidance of Bliud Pedestrians. Proc. Of the JEFE
and Automation, Albuquerque. Abril, 1997.
Conf. on Roboties
4
Borenstein 97b Borenstein J. y Evans J. Tite OmniMate Mobile Robot- Design,
Implementation, and Experimental Results. IFEE International Conf On 4
Robotics and Automation. Alburqueque, 1997.
Britting 71 Britting, KB. Inertial Navigation System Analysis. Wiley, New York, 1971.
Brook.s 86 E. A. Brooks. A Robust Layered Control System Por A Mobile Robot. IEEE
Journal of Bobotics and Automation, vol. RA-2, n0 1. Marzo, 1986
2
Brooks 91 Brooks RA. Elepitants dont play ch ess. In Designing Autonomous Agents:
Theory and Practice from Biology to Engineering and Back. Edited by P.
Maes. MIT Press, 1991.
u
Bruin 97 Bruin L. Et al. Navstar CPS User Equipment and Applications. NATO team.
4
US Air Force Space Division, NAVSTART CPS Joint Program Office. Los
Angeles. Junio, 1987. 2
Buchanan 94 Buchanan, B.G, y Sbortliffe, EH. EuleRased Expert Systems: Tite lVflCIN
Experiments of tite Stanford He>uristic Programming Project. Reading. Ed. 4
Addison-Wesley, 1984.
Chang 96 Cbang C.C. y Song K. Ultrasonie Serwor Data Integration ant! its Application
to Environment Perception. Journal of Robotics Systems, Vol. 13, No. 10,
1996.
Chee 96 Chee B.Y., Sherman Y., Lang T. Y Tse P.W.T. Fuzzy Mobile Robot
Navigation ant! Sen-mr Integration. Proeeedings of tbe Fiftb IFEE mt. Conf
on Fuzzy Systems (FUZZ-IEEE 96). Septiembre, 1996.
Conners 97 Conners R.W., Cine D.F. y Drayer T.H. Macitine Vision Technologyfor tite
Forest Products Industry. IFEE Computer. Julio, 1997.
Cox 89 Cox, I.J. Blance: Position Estimationfor an Autonomous Robot Vehicle. Proc.
of the IEEE/RSJ International Workshop on Robots and Systems Japan,
1989.
Dam 96 Van Dam J.W.M., Krse JA. y Groen F.C.A. Adaptative Sen-mr Modets.
IEEE/SICE/RSI mt. Conf on Multisensor Fusion and Integration for
Intelligent Systems, Washington D.C. Diciembre, 1996.
Doyle 95 Doyle RS. y Harris C.J. Multi-Sensor Data Fusionfor Helicopter Guidance 2
using neuro-fuzzy estimation algorithms. Int. Conf on System, Man, and
Cybernetics. Octubre, 1995. 2
Dubois 92 Dubois D. y Frad H. Combination of Fuzzy Informution in Tite Framework
Duda 73 Duda, RO. y l-Iart, P. Pattern Cla9s~fication aud sccne analysis. J. Wiley & 2
Sons. New York, 1973,
Duda 81 Duda, R., Gaschinig, J. y Hart, P. Modal design in tite prospector consultant
Bibliografa 309
Durrant-Whyte 96 Durrant-Whyte 96, H.F. Cuided Vehiele for Cargo Handing Applications.
International Journal Robotics Researcb. Pp. 407-440. Octubre, 1996.
Ellowitz 92 Ellowitz Hl. Tite Global Positioning Systern. J. Microwave. Special Report.
Abril, 1992.
Espinosa 98 Espinosa F., Garca B., Mazo M., Lpez E. y Mateos E. Modelling and
simulation of tite Kinematie ami Dunamic Behavior of a Fork-Lift-Turck. 3
IFAC Symposium on Intelligent Autonomous Vebicles. PP. ~ Marzo,
1998. Espaa.
Everett 95 Everett, 1-1. E. Sertsors for mobile Robots. Titeory ant! Application. A. K.
Peters. Wellesley, Massachusetts, 1995.
Becognition aud Computer Vision. Eds. Chen CH., Pau L.F. y Wang PSP.
4
World Scientific Publisbing Company, 1993.
4
Fung 83 Fung, P. T. y Crimble, M. J. Dymanic Sitip Positioning lAing a Self-Tuning
Kalman Filter. IEEE Transactions on Automatic Control. Marzo, 1983. 4
Gat 90 Gat, E., Slack, M. C., Miller, O. P., Firby, R.J. Patit Planning ant! Execution
Monitoringfor a Planetary Boyer. Proc. of EFE International Conference
Ceist 94 Geist A., Beguelin A., Dongarra J. Manchek E., Jiang W. y Sunderani V.
EVA!: A User~s Cuide ant! Tutonial for Networked Parallel Computing. MIT
Press, 1994.
4
Ceist 96 Ceist CA., Kohl JA. y Papadopoulos P.M. PVM ant! MPL a Compantsion of
2
Gelb 74
Features. Calculateurs Paralleis. Vol. 8, No, 2, 1996.
Gelb A., Appliet! Optimal Estimation. Tbe MIT Press, Cambridge, 1974. 4
Gerter 92 Gerfler J.J. y Anderson KG. Art evidential rea.soning extension te quantitative
met!el-based failure diagnosis. JEFE Transactions on Systems, Man, and 4
Cybernetics, Vol 22, No ??. Marzo, 1992.
Gil 81 Cil F.P., Murray W. y Wrigtb M.H. Practical Optimization. Academic Press. 4
San Diego, 1987.
4
Bibliografa 311
Colub 89 Golub, CH. and Van Loan, CF. Matrix Computations. The Jobns Hopkins
University Press, Baltimore 1989.
Gomma 93 Gomma 14. Software Design Metitods for Concurrent ant! Real-Time
Systems. Beading, MA. Addison-Wesley, 1993.
Croover 89 Groover M.P., Weiis M., Nagel lIN. y Odrey NG. Bobotica industrial.
Tecnologa, programacin y aplicaciones. Mc. Graw-HiII, 1989.
Gullekson 97 Gullekson C. ATM Protocol Stack Design with tite BOOM Methodology.
Communications Systems Design. Vol. 3, No 12. Diciembre, 1997.
Harmon 87 Harmon S.Y. The Cround Surveillance Robot <CSR): Att Autonomous Veitile
Designed to Transit Unkown Terrain. IFEE Journal of Rohotics aud
Automation, Vol 3, No 3, June 1987.
Hopfield 82
Holle, 8. Incremental Encoders Basics. Sensors, pags 22-30. Abril 1990.
Jain 95 Jain Ze-Sun y Chau YA. Optimum Multisensor Data Fusion for Image 2
Change Detection. IFEE Trans. on Systems, Man, and Cybernetics. Vol. 25,
No, 9, Septiembre, 1995. 2
4
Bibliografa 313
Jeffexys 92 Jefferys W.H. y Berger JO. Ockham~ Bazor and Bnayesian Analysis.
Americau Scientist, Vol. 80. Enero, 1992.
Jensen 96 Jensen EV. An introduction te Bayesian networks. Fd. Springer Verlag. New
York 1996.
Kalata 84 Kalata, P. R. Tite Tracking Index: A Ceneralized Parameterfor a-/3 ant! a-II- r
Target Trackers. IFEE Transactions on Aerospace and Flectronie Systems.
Vol 20, No. 2, pags. 174-182. Marzo 1984.
Kam 97 Kam, M., Zbu, X. Y Katala, P. Sensor Fusion for Mobile Robot Navigation.
Proceedings of the EFE. Vol 85, No. 1. Enero 1997.
Kauayama 97 Kauayama Y.J. y Hartman B.I. Smootit Local-Patit Planning for Autonomaus
Vehiles. International Journal of Bobotics Research. Vol. 16, No. 3, Junio,
1997.
Kessler 92 Kessler et al. Functional Description of tite Data Fusion Process. Tecb. Rep.
Office of Naval Technol. Naval Air Development Genter. Enero 1992.
Kim 83 Kim J.H y Pearl J. A computational model for combined causal ant!
diagnostic reasoning in inference systems. Proceedings of tbe Eigbth mt.-
Joint Conference on Artificial Intelligence. Alemania. Karlsruhe, 1983.
Kohl 96 Kohl JA. y Ceist CA. XPVM 1.0 Useri9 Cuide. Computer Sicence aud
Matbematics Division. Oak Hidge National Laboratory. ORNJJIM-12981.
Noviembre, 1996.
Kriegman 87 Kriegman D.J., Triend E., Binford TO. A Alobile Robot: Sensing, Planning,
ant! Locomnotion. TEFE International Conference on Robotics and
Automation, 1987.
Kriegman 89 Kriegman D.J., Triend E., Binford TO. Stereo Vision ant! Navigation in
Buildings for Mobile Bobots. IFEE Transsctions on Robotics and
4
314 Bibliografa 2
Automation, Vol 5, No 6, December 1989, 2
Krotkov 96 Krotkov E. y Simmons R. Perception, Planning ant! Controlfor Autonvmous
Walking Witit tite Ambler Planetary Boyer. International Journal of Robotics
Langsam 97
on Intelligent Autonomous Vebicles. Madrid. Marzo, 1998.
Leonard 90 Leonard J. Directed Sonar Sensing for Mobile Robot Navigation. Tesis U
doctoral. Robotic Research Croup. Department of Engineering Science,
University of Oxford, 1990. 2
Leonard 92 Leonard J. y Durrant-Whyte H.F. Directed Sonar Sensingfor Mobile Robot
Navigation. Kluwer Academie Publisher. Boston, 1992. 4
Lewis 86 Lewis F.L. Optimal Estimation witit art introduction to Stochastic Control
Titeory. John Wiley & Sons, Inc. 1986. 4
Libby 96 Libby, E.W. y Maybeck, PS. Sequezwe Comparison Techniques fer
Multisensor Data Fusion ami Target Becognitien. JEFE Traus. On U
Aerospace and Electronic systems, vo 32, No 1, enero 1996.
4
U
Bibliografa 315
Luo 92 Luo lID: y Kay M .C. Data Fusion ant! Sensor Integration: State-of-art
1990s. En Data Fusion in Robotics aud Machine Intelligence. Eds. Abidi
MA. y Gonzalez HG. Academic Press, 1992.
Maes 91 Maes P. Situated agents can itave goals. In Designing Autonomous Agents:
Theory and Practice from Biology to Engineering and Back. Edited by P.
Maes. MIT Press, 1991.
Martin 86 Martin, G. J. Cyroscopes May Cease Spinning. TEFE Spectrum, pags. 48-53.
Febrero, 1986.
Xlatthies 88 M atthies L y Ffes A. Integration of Sonar ant! Stereo Ron ge Data Using a
Grid-Based Representation. Proc. of the JEFE mt. Conf. on Robotics and
Automation, PP 727-733, 1988.
McMillan 88 McMillan J.C. Art integrated Land Navigations System. IFEE Position
Location aud Navigation Symposium, 1988.
Menezes 95 Menezes P, Dias J, Araiijo H. y Almeida A. Low Cost Sensor Based Obstacle
Detection ant! Description. Experiments witit Mobile Robots using ant!
Representation. Proc. Of the Fouth Int. Symposium on Experimental
Roboties. ISFR95. Agosto, 1995.
Meng 93 Meng, Xl. y Kak, A.C. Mobile Robot Navigation Using Neural Networks ant!
Nonmetrical Environment Models. IFEE Control Systems Octubre 1993.
2
Bibliografa
316
Pags. 30-39
2
Minsky 69 Minsk> Xl. y Papal 5. Perceptrons. MIT Press, 1969. 4
Xl itehel 88 Mitehel, J.S. Art algorithmic Approacit to Some Probletns in Terrain
Navigation. Artificial Intelligence, 37. 1988, pags 171-201 4
Mitchell 88 Mitchell J.S .B. art Algorititmic Approach to Sorne Problems in Terrain
Navigation. Artificial Intelligence, 37, 1988. 2
Moravec 88 Moravec 1-IP. Sen-sor fusion in certainty gnids for mobile robots. Al
Magazine. Pp 61-74, 1988. 2
Morawsld 89a Morawsld P.
1989.
Understanding Baqesian Networks. Al Exped, Pp. 44-48. Mayo,
U
Morawski 89b Morawski P. Programming Bayesian Belief Networks. Al Expert, pp. 74-89.
Agosto, 1989.
2
MP194 MPI Forum. AIPI: A rnessage passing interface standard. International
Journal of Supercomputer Applications. Vol 8, No. 3/4, 1994.
2
Miiller 96
Mller J.P. Tite Design of Intelligent Agents. A Layared Approach. Lecture
Notes iii Artificial Intelligence. Springer, 1996.
4
Murphy 98 Murphy BR. Dempster-Sitafer Theory for Sen-sor Fusion in Autonomaus
Mobile Robots. IEEE Trans. on Systems, Man, and Cybernetics. Vol. 14, No.
2
Nandhakumar 97
2. Abril, 1998
Nicholson A.E. y Brady J.M. Tite dista asociation problem witen monitoning
U
robot vehicles using dynamic belief networks. Proc. of
Conference on Artificial Intelligence. Viena. Austria, 1992.
10h European 2
Nicholson 94
Nicholson A.E. y Brady J.M. Dynamic Belief Networks for Discrete 2
2
u
E
317
-Monitorfng. IFEE Trans. on System, Man, and Cybernetics. Vol. 24, No. 11
Noviembre, 1994.
Parkinson 83 Parldnson B.W. y Cilbert 5W. NAVSTAFc Global Positioning System Ten
Years Later. Proceedings of the IEFE, Vol. 71, No 10. Octubre 1983.
Payton 90 Payton D.W., Rosenblantt J.K., Keirsey DM. Plan Cuided Reaction. IEEE
Transactions on Systems, Man, and Gybernetics, Vol 20, No 6, Nov. 1990.
Pbam 92 Pham T.M. Kalman Filter Mecitamization for INS Airstart. IFEE AES
System Magazine, Januar>, 1992.
Bao 93 Rao, B.S.Y., Durrant-Whyte, H.F. y Sheen, JA. A Fully Decentralized Multi- 4
Sensor system For Tracking ant! Surveillance. The mt. Journal of Robotics
Besearch, vol. 12(1), Feb. 1993. 4
Rembold 88 Bembold U. Tite Kalrsruhe Autonomous Mobile Assembly Robot. Proc, of the
IFEE International Conference on Bobotics and Automation, 1988. 2
Rieti 94 Rich, E. y Knight, K. Artificial Intelligence. Ed. Mc Craw-Hill, 1994.
Bichardson 88 Richardson, J.M Marsh K.A. Fusion of Multisensor Data. mt. Journal of 4
Boboties Research Vol 7, No 6, 1988.
General Clauses. Trans. on Systems, Man, and Cybernetics. Vol. 24, No. 11.
Noviembre, 1994.
U
Salcudean 94 Salcudean SE. y Yan J. Towards a Force-Reflecting Motion-Scaling System 4
for Microsurgey. Proc. Interantional IEEE Conf? On Rohoties. and
Automation. Vol 3. Pp. 2286-2289.1994. 4
Salgian 98 Salgian C. y Ballard D. Using Visual Bontines to Drive in a Virtual
Enviroment. 3 IFAC Symposiunt on Intelligent Autonomous Vehicles. PP. 2
U
u
Bibliografa 319
Santos WWW Fugene Santos. Pgina Wed sobre herramientas de Redes de bayesianas.
http://www.afit.afmil/Schoots/EN/ENG/LAB S/AI/BayesianNetworks/tools3. h
tml.
Shachter 86 Shachter H.D. Evaluating influente diagrams. Operations research, 34. Pp.
871-882. 1986.
Shetty 96 Sheuy 5., Alouani A.T. A multi.sensor Tracking System With att Image-Based
Maneuver Detector. IFEE Trans. On Aerospace and Electronic systems, vol
32, No 1, enero 1996.
Shimoga 96. Shimoga, KB. Robot Crasp Synthesis Algoritrns: A Survey. Pp. 230-266.
Junio, 1996.
Shortliffe 75 Shortliffe, EH, y Buchanan, B.G. A model of inexact reasoning itt medicine.
Mathematical Biosciences, pags. 351-379, 1975.
Simmons 94 Simmons R.G. Structured Control for autonomous robots. IEEE Trans. on
Snir 95 Snir M., Otto 5., Huss-Lederman 5., Walker D. y Dongarra J. MPL The
Complete Reference. MIT Press, 1995.
Stieler 82 Stieler B. y Winter II. Cyroscopic instruments ant! their application to fligitt
testing. AGARD Flight Test Inti-umentation Series. NATO. Septiembre,
1982.
Synder 92 Snyder, 5., Schipper B., Vallot L., Parker N. y Spitzer C. Differetttial
CPS/Inertial Navigation Approach/Landing Fligitt Test flesults. TEFE AFS
Magazine., May, 1992.
4
320 Bibliografa
2
Thomopoulos 90 Thomopoulos, SCA. Serwor Integration ant! Data Finisit. J. Bobotic Syst.
Vol. 7, No 3, Junio 1990, pags. 337-372. 2
Thompson 77 Thompson, A.M. Tite Navigation System of tite JEL Robot. Proceedings of
the International Joint Conference on Artificial Intelligence, 1977. pp. 749- 4
757.
Thorpe 88 Thorpe C, Herbert M.H., Kanade T., Shafer SA. Vision and Navigationfor 2
tite Carnegie-Mellon Navlab. JEFE Transactions on Pattern Analysis and
Machine Intelligence, Vol 10, No 3, May 1988. 2
Thorpe 91a C. Thorpe, M. Herbert, T. Kanade and 5. Shafer, Toward Autonomous
Driving: Tite CMU Navlab. Pan 1 - Perception. JEFE Expert 2
(DARPA/VISION & NAVICATION). PP. 31-42. Agosto 1991.
Thorpe 91b C. Thorpe, Xl. Herbert, T. Kanade and 5. Shafer. Toward Autonomaus 4
Driving: Tite CMU Navlab. Pan 11 Architecture ant! Systems. IFEE Expert
-
Valavanis 97 Valavanis K.P., Cracanin D., Matijasevie M., Kolluru R. y Demetriou CA. 4
Control Architecturesfor Autonomous Underwater Vehicles. IEEE Control
Systems. Diciembre, 1997. 2
Varshney 96 Varshney P.K. Distributed Detec-tion ant! Data Fusion. Springer-Verlag. New
York, 1996. 4
Viswanathan 97 Viswanathan E. And Varshney P. K. Distributed Detection With Alultiple
Sensors: Pan 1- Fundamental,s. Proceedings of the IEEE, 85 (1), pags. 54-63. 2
Enero, 1997.
White 88 White, E. et al. A Model for Data Fusion. SPIE Conference on Sensor
Fusion. Orlando. Abril 1988.
White 91 White, F. Data Fusion Lexiton. Data Fusion Subpanel for G3. Code 4202
California, 1991.
Yager 94 Yager R.R., Fedrizzi M. Y Kacprzyk J. Eds. Advances itt the Dempster-Shafer
Titeory ofEvidence. New York. Wiley, 1994.
Yang 94b Yang J. Y Sen P. A general multilevel evaluation process for itybrid MADM
witit uncer#ainty. IFEE Transactions on Systems,.Man, and Cybernetics; Vol
24, No ??. Octubre, 1994.
Yeddanapudi 97 Yeddanapudi Xl., Bar-Shalom Y. aud Pattipati K.R. IMM Estimation for
Multitarget-Multi.sensor Air Traffic Surveillance. Proceedings of the IFEE,
vol. 85, No. 1, Enero. 1997
Yen 90 Yen J. Generalizing the Dempster-Sitafer Theory tu Fuzzy Sets. IFEE Trans
on Systems, Man, aud Cybernetics. Vol, 20, No. 3. Mayo, 1990.
Zadeh 75 Zadeh, LA. Fuzzy Logic ant! approximate reasoning. Synthese, No 30, pags
407-428, 1975.
Zadeh 78 Zadeh, LA. Fuzzy Sets as a basisfor a theory of possibility. Fuzq Sets and
Systems, vol. 1 No 1, pags. 3-28, 1978.
Zheng 89 Zheng YE. Integration of Multiple Sensors into a Robotic System ant! its
Peiformance Evaluation. IEFE Trans. on Robotics and Automation, Vol 5
NoS Oct. 1989.
,
-
Intelligent Autonomous 4
Escalera 95 De la Escalera A. Percepcin del entorno y localizacin de robots mviles
autnomos. Tesis doctoral. E.T.S.I. Industriales. Universidad Politcnica de
4
Castellanos 98
Madrid, 1995.
Lpez-Orozco 95a Lpez Orozco J. A., Ruiperez P., Aranda J., de la Cruz J. M, Prez J. Xl. y
Minguez J.: Simulacin de un sistema GPS en Matlab. 1 Congreso de
Usuarios de MATLAB (MATLAB95). Madrid, 1995.
Jochem 93 Jochem T.M, Pomerleau D.A. y Thorpe C.E. MANIAC: A Next Ceneration
Neurally Based Autonornous Road Follower. Proc. of the mt. Conf. en
Intelligent Autonomous Systems.Pittsburgli, Pennsylvania, USA. 1993.
Pomerleau 93 Pomerleau DA. Neural nertwork for mobile robot guidance. Kluwer
Academic. Boston, 1993.
Rumbaugh 91 Bumbaugh J., Blaha Xl., Premerlani W., Eddy F. y Lorensen W. Ohject-
Oniented Modeling ant! Design. Prentice Hall, 1991.
Gass 99 Cass J. Integration Linguistic Descriptions ant! Sensor Observations for tite
Navigation ofAutonornaus Robots. Para aparecer en Fuzzy logic techniques
for autonomous vehicle navigation. A. Saffioti y D. Driankov, Editores.
Lecture Notes in Computer Seiences. Springer-Verlag, 1999.
Powel 98 Powel B.D. Real-Time Um: Developing Efficient Object for Embeddet!
Systems. Object Technology Series. Addison-Wesley. Enero, 1998.
Samet 89 Samet 14. Applications of &patial data structures: computer graphics, image
protessing, ant! GIS. Series in Computer Science. Addison-Wesley. 1989.
Fletcher 87 Fletcher, fi. Practical Methods of Optimization. John Wiley & Sons. 2~
Edicin. 1987.
324 Bibliografa
Benett 94 Benett, 5. Real Time Computer Control: Att Introduction. Ed. Prentice Hall.
New York, 1994.
Apndice A
Definiciones
325
4
4
326 Clculo de la credibilidad en redes bayesianas 4
Debe tenerse en cuenta que en las redes bayesianas no slo los arcos aportan
informacin sobre las dependencias entre variables, sino que la ausencia de un 4
arco es una forma implcita de aportar informacin. Por ejemplo, en la figura A-1,
X y U son independientes y por lo tanto P(x u) = P(x). Sin embargo, si se conoce
el valor de Y~ = +y2, se vuelven dependientes:
4
P(x u,+y2) !=
P(x [+y2) (A.3) 4
Esta asimetra, reflejo de la causalidad implcita en la red, es la caracterstica
esencial de las redes bayesianas y se conoce como separacin direccional. 4
4
4
4
4
Figura A-1. Red bayesiana de ejemplo 4
Separacin direccional
Llamada d-separacin por Pearl [Pearl 88], se dice que existe separacin 4
direccional en un grafo dirigido acclico y conexo si, dada una distribucin de
probabilidad sobre sus variables, en un nodo cualquiera X el conjunto de sus
padres, pa(X), separa condicionalmente este nodo de otro subconjunto {Y} en el
que no haya descendientes de X. Esto es,
4
P(x pa(x),y) = P(x pa(x)) (A.4) 4
Se indica conexo aunque no es necesario por dos motivos, primero porque la 4
mayora de los algoritmos y propiedades de las redes bayesianas slo son correctos
para grafos conexos; y segundo, porque en caso de tener, por ejemplo, dos partes
inconexas se podran considerar como dos modelos independientes y trabajar con 4
ellos como dos redes separadas.
4
4
Apndice A 327
As, a partir de las definiciones anteriores se puede definir una red bayesiana
como: un grafo acclico dirigido y conexo mas una distribucin de probabilidad
sobre sus variables, que cumple la propiedad de separain direccional.
Por ltimo, destaquemos algunas propiedades de las redes bayesianas que se
deducen de las anteriores:
1.- Si un nodo no tiene padres, por ejemplo el nodo y de la figura A-1,
entonces la ecuacin (A.4) se traduce en P(v pa(v)) = P(v O) = P(v) que es la
probabilidad a priori del nodo V. Adems, aplicando la misma condicin tenemos
que P(s u) = P(s), puesto que el nodo U no pertenece a los padres de S. Por lo
tanto se puede concluir que dos nodos cualesquiera que no tengan un antepasado
en comn son independientes a priori.
2.- Si V es antepasado de S y ste es a su vez antepasado de P y no existe
ningn otro camino que permita llegar desde V a P, entonces V y P quedan
condicionalmente separados por S.
P(xw,p)=P(xp) (A.6)
Esta propiedad es muy importante, puesto que permite describir una red en
trminos de la probabilidad condicionada en cada nodo (o la probabilidad a priori
en nodos sin padres), en lugar de dar una probabilidad conjnta en funcin de los
nodos existentes, lo que necesitara un nmero exponencial de parmetros. Sin
embargo, el nmero de parmetros necesarios para dar la probabilidad condicional
es proporcional al nmero de nodos (siempre que el nmero de padres y valores
de cada variable sean finitos).
4
4
328 Clculo de la credibilidad en redes bayesianas 4
Algoritmo para propagacin de la evidencia
Cr(x)=P(xe) (AS) 4
Aplicando el teorema de -Bayes pero condicionado a la evidencia existente
sobre las causas del nodo X,
obtendremos,
&, y la evidencia sobre los efectos de X, ej 4
Cr(x) = P(x e4,e)
P(ex,e~).P(xe4)
PV el)
= 4
Pero como sabemos que ningn arco puede ir de la zona & a la zona de e y 4
aplicando la separacin direccional, se pueden considerar -independientes puesto
4
4
<4
Apndice A 329
r(x)=P(xe+)=ZP(xu,e).P(ue)=XP(xu1Yff(uj) (A.13)
u u
=>
zr(X)=P(x ej =EP(xiefl.PQ7,ek) =
u
ZP(xllPflffx(ui)
u =1
donde,
. fl
,r~, (x) = ~r(x) 4 (x) (A.17)
kj
2~(x)=P(eL, x)=ZZP(e~,y~,eX,vx)=
(A.18)
ZZP(e~ y~)P(y~ x,v)P(et< ,v x)
y, y
(y, )I1 (Aig)
4 (x) = ~[2YJ~PYJ x,V)fl~~
1-1 ~ J
Y finalmente 2(x) se calcula como anteriormente:
tu
Implenientacin distribuida
2~(u1) 2~(u~)
u
u
u
u
u
u
1
u
u
1
u z~ (x) ... iry (x) 4, (x) ... 4
4
4
Apndice A 335
y compatible con sistemas Unix y Windows 95, es una herramienta grfica para
desarrollar redes bayesianas, permitiendo introducir incertidumbre en sus
parmetros [Andersen 89; Jensen 96]; etc.
4
4
336 Clculo de la credibilidad en redes bayesiatas
4
4
4
4
4
4
4
2
Apndice B
Metodologa ROOM
BOOM (Real-Time Object-Orient Modeling) [Selic 95] es un lenguaje de
especificacin grfica, orientado a objetos, para modelar sistemas de tiempo real.
Sus principales caractersticas son:
337
4
338 Metodologa BOOM
mquina de estados jerrquica en la que los estados se descomponen
en subestados hasta el nivel de profundidad necesario. 4
Modelado incremental, permite la expresin y verificacin de las
4
-
Los datos sobre los que trabajan los actores no son compartidos entre ellos, 4
sino que se comunican mediante paso de mensajes. Un actor abstrae la
informacin que contiene y no deja que sea manipulada por e exterior. 4
Interfaz entre actores
BOOM define tres formas diferentes de interfaz: Puertos, Puntos de acceso 4
a servicios (SAP, Service Access Points) y los Puntos de provisin de servicio (SPP,
Service Provision Points).
4
a
Apndice B 339
Notacin grfica
Una referencia de una clase actor viene representada por un rectngulo con
un nombre nico. Los puertos se representan por pequeos cuadrados situados en
su permetro, vase la figura B-la). Si son negros son tal como se explican en su
definicin, si son blancos representan el conjugado del puerto indicado (los
mensajes de entrada son de salida y viceversa).
Por supuesto, los nombres de los puertos deben ser los utilizados en la
definicin del actor. En la definicin de la clase de la que se instancian diferentes
actores, la representacin de los puertos cambia para indicar que es una clase y no
una instancia concreta de dicho actor. En este caso su permetro ser con trazo
grueso y sus puertos se representarn por cuadrados con un crculo inscrito
(cuadrado negro y crculo blanco, o a la inversa para el conjugado) como se
muestra en la figura B-lb).
Ptconsigna NavegonteaFusion
[T~9V7L
~jj1 DriverMotor
iv Motor_a_Driver
Mensajes yprotocoos
Out:
_ _ 4
Protocol class Fusion a Motor
lo: { { (nuevo_est,
Cur: _ nuil>,
_
tipo_estado
(mensaje fin, _ u>
<mensaje_u, 4
Protocol cines Motor a Driver
In: { {lectura_seal, tipo lectura
Our: { {seal_control, tipo control}
4
4
Composicin de los actores 4
Los tipos de relaciones estructurales posibles son: relaciones de
comunicacin y relaciones de contencin. 4
Las relaciones de comunicacin se representan mediante uniones fsicas
entre dos puertos, que deben ser compatibles. La unin entre dos actores viene 4
dada por un puerto y su conjugado. Por supuesto, la secuencia de mensajes deben
ser compatibles. Un puerto que no est conectado no podr recibir mensajes y lo
4
que se enve por l no lo recibir nadie.
Las relaciones de contencin, permiten construir actores a partir de otros 4
actores encapsulando propiedades y funciones de distintos actores. Esto permite
una mayor abstraccin de la funcionalidad del actor y de su implementacin,
4
permitiendo a su vez una mejor depuracin.
2
4
Apndice B 341
Puertos
Puertos finales: (los puertos pl, p2, eS) pueden ser acreditados o
referenciados por el comportamiento. Son el enlace entre la estructura y el
comportamiento puesto que son visibles en ambas dimensiones. Pueden ser de dos
clases:
- Puertos finales externos: puertos parte del int~rfaz del actor
conectados directamente con el comportamiento, por ejemplo los
puertos pl yp2 de la figura B-2.
- Puertos finales internos: conectan el componente comportamiento
con un actor interno, por ejemplo el puerto eS.
4
4
342 Metodologa BOOM 4
4
2~
p3
4
4
Figura B-2. Tipos de puertos.
4
Rplicas o Reproducciones (Ileplicatives) 4
BOOM proporciona rplicas de actores y rplicas de puertos: se utilizan para
modelar referencias mltiples a una clase actor o a una clase protocolo. La rplica
es un atributo de la referencia y no de la clase.
4
Una rplica de un actor retresenta mltiples referencias a actores iguales. Se 4
denomina factor de rplica a un entero que indica el nmero mximo de replicas
de un actor que pueden utilizarse simultneaffiente en tiempo de ejecucin. Su
representacin es mediante borde doble y un rectngulo en su esquina superior
4
derecha donde se indica el factor mximo de rplica como puede verse en la figura 4
B-3a).
Las rplicas pueden ser de un actor fijo (el factor es fijo), de un actor 4
opcional (se puede crear dinmicamente hasta el mximo indicado en el factor de
rplica) o de irn actor importado (igual que en los actores opcionales). 4
Rplica de puertos: coleccin de puertos en un actor que tienen el mismo
protocolo y nombre. Lo normal es que sirvan para conectarse a actores replicados. 4
Los mensajes enviados/recibidos a un puerto replicado son difundidos a todas las
copias de puertos de ese tipo. Se representan, como puede verse en la figura B-Sb,
4
por un doble borde.
4
4
4
4
Apndice B 343
Estructuras dinmicas
Actores dinmicos
Estos actores, denominados actor opcional, no son creados cuando es creado
el actor que lo contiene sino posteriormente. Incluso, una vez creado puede ser
destruido. La notacin grfica para un actor opcional puede verse en la figura 0-4.
La opcionabilidad de un actor es un atributo del objeto actor en lugar de un
atributo de la clase, lo que permite una mayor reusabilidad. Cuando un actor es
creado dinmicamente todos sus componentes son creados automticamente con
l y los puertos que poseen son activados de modo que los canales de
comunicacin se encuentran preparados para aceptar mensajes inmediatamente.
La creacin Sz destruccin de actores opcionales es realizado por el componente
comportamiento del actor continente. Por esta razn es imposible destruir el
componente comportamiento.
Pl
figura B-5. Este actor es semejante a una plantilla en la que es posible insertar
4
dinmicamente un actor ya existente de otro marco. Como analoga con los
lenguajes de programacin, podra ser comparado a una declaracin de tipo
puntero.
4
Un actor particular puede ser colocado en el hueco de un actor importado 4
por el comportamiento del actor que lo contiene. Esta operacin se conoce como
importar, la operacin inversa se denomina deportar. 4
Un actor puede ser insertado en una referencia importada slo si es
equivalente al actor de referencia importado. Esto es, slo componentes que han 4
sido explcitamente diseados pueden ser importados en un hueco dado.
Descomposicin en capas
Transiciones
Toda transicin ocurre por la llegada de un mensaje por uno de los
componentes de interfaz. Una especificacin de disparo consta de los siguientes
tres elementos
A las transiciones se le asignan nombres que tienen que ser nicos para cada 4
estado. En otros estados se pueden usar el mismo nombre. En el ejemplo de la
figura B-7 se han denominado los distintos eventos con evN adems de mostrar la 4
transicin y la accin que lleva asociada.
La especificacin de transiciones con clusulas del tipo and se pueden 4
hacer utilizando estados intermedios, de modo que cuando se recibe se pasa a otro
estado donde se espera otra seal y as sucesivamente, lo que lleva a crear un rbol
de estados con todas las combinaciones posibles de las seales.
4
4
4
4
4
4
4
4
4
Figura B-7. Ejemplo de un diagrama de estado
4
Acciones de entrada y acciones de salida del estado 4
Son opcionales (por ejemplo el evento ev5 no tiene asociada ninguna accin
en la accin>. Las acciones a realizar pueden realizarse en la transicin de un 4
estado a otro (por ejemplo el evento ev3> o en ese estado (a la entrada del estado
Esperan..pos). Cuando es una autotransicin (ev4) se realiza de la misma forma.
Siempre se ejecuta la accin de la transicin que se realiz en ese estado.
4
4
4
u
Apndice C
Sensores de estado:
Encoders. En cargados de medir el giro de cada una de las
ruedas, permiten obtener el desplazamiento y giro del robot. Los
encoder utilizados son un modelo de HP de la serie HEDS-5500
con una precisin de 2000 pasos por vuelta. El circuito de
adaptacin que se encarga de la cuenta de los pasos de encoder es
el HCTL-2020 que dispone de un contador de 16 bits.
349
4
4
350 Sistema sensorial del robot 4
Brjula magntica. Permite conocer la orientacin del robot con
respecto al norte magntico. Tiene una precisin de hasta una 4
dcima, de grado aunque su error en las dcimas de grado es
grande. La brjula digital es una Azimuth 314AC con una unidad
display de 25. Se comunica con la computadora por el puerto
serie con una frecuencia de 1 mensaje por segundo codificados
<4
segn el estndar NMEA 0183 de la marina de los EEUU. 4
Balizas activas. Permiten conocer la posicin del robot con una
Sensores de entorno: 4
Cinturn de ultrasonidos. El cinturn de ultrasonidos alrededor
del robot permite localizar obstculos en su entrno. Consta de 12 4
emisores d 40 Kciclos y de un rango de medida ajustable, que en
nuestro caso es de 30 cm. hasta 5 m. Su disposicin es la mostrada 4
en la figura. -
4
Torretas
mviles
4
4
4
Receptores de
balizas artificiales 4
Figura C-8. Sensores de entorno 4
4
4
2
Apndice C 351
353
4
4
Matrices del modelo del sistema y de los sensores
354
4
Y la estima inicial del estado del mvil y su covarianza son,
X1(0[0)=(0,O,0,0,O,O/ (0.23)
4
1000 o o o o o 4
o 1000 o o o o
o
0
o
o
1000
O 1000
o o
o
o
o
(0.24) 4
O
0
o
o
o
o
o
o
1000
o
o
1000
4
- Matrices del modelo de los sensores 4
La covarianza del ruido Gaussiano de los estados (Q) su matriz de ganancia
(G) y la covarianza de la precisin en la observacin (E) correspondiente a cada
uno de los sensores son:
4
a) Brjula magntica: 2
(0.25)
4001
4
14 21 (0.28)
4
St
o
o
St,
o
O
4
G~Q,) =
o
o
o
o
St,
o
(0.29> 4
o
o
o
o
o
o 4
0.01 0111 (0.30)
4
4
4
4
Apndice D <355
c) Odmetros:
00 0
00 0
o o (0.32)
00 0
o St, O
o o 5t,~
0 01
ReO~) = 0 0.2 0 (0.33)
Lo o 0.2j
Estas matrices pueden utilizarse en los sensores distribuidos de la forma
descrita en el Captulo 3. El uso de este tipo de matrices permite la comparacin
directa con el filtro centralizado, pero provoca un aumento en el tamao de las
matrices utilizadas.
~ StgV.~9Q,) - (0.34)
4
4
356 Matrices del modelo del sistema y de los sensores
u]
Y la estima inicial del estado del mvil y su covarianza son,
o St 4
F] (5 t,) = (0.37)
1
o
Se,V
4
10 5 t y 00
4
0 1 St, V.9(t,)
F(St,)= O o 1
00
00 (0.38) 4
00 o 00
o o o 00 4
Y las matrices de covarianzas son semejantes a la de la brjula.
Q~ (t,) = 20 (0.39>
4
G, (9 = [o O St, OF (0.40) 4
(0.41)
4
b) Balizas artificiales:
001 4
9b(t,) = 14 0 (0.42)
o 4j 4
4
4
4
u
u
u Apndice ID ~ ~ 1
u ~ (0.43>
u [0.01 0
u c) Odmetros:
3 Q~(t1)=[O ~ (0.45>
u
u Ge(tj= O
o
O
st, St,
o
(0.46)
u st,
0.2
o
0 01
u Re(t,)=~ 0
o 0.2
O 0
0.2j
(0.47>
u
u
1
u
u
u
u
u
u
358 Matrices del modelo del sistema y de los sensores
u]
4
u]
4
u]
4
4
4
u]
u]
4
4
4