Sistema de interacción humano-robot basado en diálogos multimodales y adaptables


Tesis Doctoral / Disertación, 2014
302 Páginas, Calificación: Cum Laude

Leer texto completo

TESIS DOCTORAL
Sistema de Interacción
Humano-Robot basado en
Diálogos Multimodales y
Adaptables
(Human-Robot Interaction System based on Multimodal
and Adaptive Dialogs)
Autor:
Fernando Alonso Martín
Directores:
Miguel Ángel Salichs Sánchez-Caballero
Javier Fernandez de Gorostiza Luengo

DEPARTAMENTO DE INGENIERÍA DE SISTEMAS Y
AUTOMÁTICA
Leganés, 13 Octubre 2014

TESIS DOCTORAL (DOCTORAL THESIS)
Sistema de Interacción Humano-Robot basado en Diálogos
Multimodales y Adaptables
(Human-Robot Interaction System based on Multimodal
and Adaptive Dialogs)
Autor (Candidate): Fernando Alonso Martín
Director (Adviser): Miguel Ángel Salichs Sánchez-Caballero
CoDirector (Adviser): Javier Fernandez de Gorostiza Luengo
Tribunal (Review Committee)
Firma (Signature)
Presidente (Chair):
Vocal (Member):
Secretario (Secretary):
Título (Degree): Doctorado en Ingeniería Eléctrica, Electrónica y Automática
Calificación (Grade):
Leganés,
de
de


Al recuerdo de Luis Alonso Busnadiego,
mi padre, que estará siempre presente.
"Si se puede imaginar... se puede programar."
-- Fernando Alonso Martín
i

ii

Agradecimientos
Es difícil entender la importancia de los agradecimientos de una tesis doctoral
hasta que no se ha terminado. En ese momento te das cuenta de cuánto tienes que
agradecer a tanta gente. Intentaré resumir en unas líneas la gratitud que siento a
todas las personas que han estado presentes durante esa etapa, haciendo posible que
hoy deje de ser un sueño para ser una realidad.
Al Dr. Miguel Ángel Salichs, director de esta tesis, por toda su ayuda y sabios
consejos. Le agradezco que me haya abierto hace ya varios años las puertas del grupo
de trabajo RoboticsLab, dándome la oportunidad de tener una visión más amplia
del mundo de la investigación y descubrir cuánto me motiva. Agradezco también al
Prof. Javier Gorostiza, el codirector de la tesis, por su disponibilidad y colaboración.
Especialmente el trato cercano y cordial que hemos mantenido y espero conservar.
A María Malfaz, que tanto me ha ayudado en la elaboración, redacción y escri-
tura de artículos, tesis de master y este documento. A Ramón Barber, por ser una
persona tan entrañable y predispuesta a ayudar siempre en la medida de lo posible.
A Álvaro Castro, siempre con una sonrisa en la boca y dispuesto a trabajar en grupo,
y por su puesto a su paisano Alberto Ramón, al que los mismos calificativos se le
pueden aplicar. Al monsieur Arnaud Ramey, que vino desde Francia para revolucio-
nar el grupo y hacernos avanzar a velocidad de crucero. A Victor Gonzales-Pacheco
y su visión global de la tecnología y del software. A David G. Godoy por ponerme
a mi disposición el hardware adecuado en cada momento, que desde el comienzo de
esta tesis ha sido mucho. A los nuevos compañeros Jonathan y Ester con los que ya
hemos vivido momentos entrañables, y especialmente a Irene, que se ha tomado la
molestia de revisar en profundidad la redacción de este documento. No me gustaría
olvidarme de los que ya no están, como fueron los técnicos de laboratorio Quique y
Luís; Ana Corrales, que fue la primera persona del grupo que conocí y que también
iii

fue mi profesora de prácticas de robótica en mi etapa como alumno. A los innumera-
bles proyectantes que han pasado por el laboratorio durante estos años, que también
pusieron su granito de arena, como fueron Enrique, Genis, Oscar, Javi, etc. No me
gustaría olvidarme de los miembros del departamento, que pese a no formar parte
del grupo de trabajo propiamente dicho, también han aportado ideas, traducciones o
simplemente su amistad.
A los supervisores de las estancias internacionales, el profesor Joao Sequeira del
IST (Lisboa), y a Tony Belpaeme de la Universidad de Plymouth (UK), por su agra-
dable recibimiento y colaboración. Especial dedicación a los compañeros y amigos que
conocí en esos tres meses, en especial a Jorge Gallego Pérez (Madrid), Jacobo Va-
lle (Galicia), Tiger (Taiwan), Aitor Álvarez (Asturias), Jimmy y Edwin (Ecuador)...
gente de muy diversos lugares que me hicieron sentir como en casa.
Al gobierno de España y a la Unión Europea, que han financiado varios proyectos
en los que se ha enmarcado esta tesis: "Peer to Peer Robot-Human Interaction", del
MEC (Ministerio de Ciencia y Educación), "A new approach to social robotics", del
MICINN (Ministerio de Ciencia e Innovación). Sin esta financiación, especialmente
en estos años de crisis económica, no hubiera sido posible el desarrollo de este tra-
bajo. Espero poder devolver la inversión realizada en mi persona, con la presente
contribución a la comunidad científica.
A mis padres por haberme enseñado que la vida es para los valientes. A mi hermana
Ana Belén que siempre está ahí para lo que sea y a mi hermano mayor Luis María,
por marcar el camino de estudio que posteriormente seguimos los demás hermanos.
A mi madre Leonor, que además de darme la vida ha estado siempre pendiente de
mis luchas diarias. A mi padre Luis, que pese a que ya no está con nosotros, le debo
agradecer gran parte de lo que soy. Espero que si no nos hubiera dejado, estaría orgullo
de mi.
A mis amigos, que han sabido disculpar mis ausencias y siempre han tenido una
palabra de ánimo. Estoy absolutamente convencido de que si de algo puedo presumir
en esta vida es de los grandes amigos que tengo, lo que me hace sentir una persona muy
afortunada. No hace falta que los nombre, ellos saben quienes son y lo importantes
que son para mi y, aunque algunos están lejos, tengo la suerte de poder sentirme
siempre acompañado.
A las personas que, aunque no aparecen aquí con nombres y apellidos, han estado
presentes de alguna forma durante el desarrollo de este trabajo y han hecho posible
que hoy vea la luz.
A todos mi eterno agradecimiento.
iv

Resumen
Durante los últimos años, en el área de la Interacción Humano-Robot (HRI), ha
sido creciente el estudio de la interacción en la que participan usuarios no entrenados
tecnológicamente con sistemas robóticos. Para esta población de usuarios potenciales,
es necesario utilizar técnicas de interacción que no precisen de conocimientos previos
específicos. En este sentido, al usuario no se le debe presuponer ningún tipo de habi-
lidad tecnológica: la única habilidad interactiva que se le puede presuponer al usuario
es la que le permite interaccionar con otros humanos. Las técnicas desarrolladas y
expuestas en este trabajo tienen como finalidad, por un lado que el sistema/robot se
exprese de modo y manera que esos usuarios puedan comprenderlo, sin necesidad de
hacer un esfuerzo extra con respecto a la interacción con personas. Por otro lado, que
el sistema/robot interprete lo que esos usuarios expresen sin que tengan que hacerlo
de modo distinto a como lo harían para comunicarse con otra persona. En definitiva,
se persigue imitar a los seres humanos en su manera de interactuar.
En la presente se ha desarrollado y probado un sistema de interacción natural, que
se ha denominado Robotics Dialog System (RDS). Permite una interacción entre el
robot y el usuario usando los diversos canales de comunicación disponibles. El sistema
completo consta de diversos módulos, que trabajando de una manera coordinada
y complementaria, trata de alcanzar los objetivos de interacción natural deseados.
RDS convive dentro de una arquitectura de control robótica y se comunica con el
resto de sistemas que la componen, como son los sistemas de: toma de decisiones,
secuenciación, comunicación, juegos, percepción sensoriales, expresión, etc.
La aportación de esta tesis al avance del estado del arte, se produce a dos nive-
les. En un plano superior, se presenta el sistema de interacción humano-robot (RDS)
mediante diálogos multimodales. En un plano inferior, en cada capítulo se describen
v

los componentes desarrollados expresamente para el sistema RDS, realizando contri-
buciones al estado del arte en cada campo tratado. Previamente a cada aportación
realizada, ha sido necesario integrar y/o implementar los avances acaecidos en su
estado del arte hasta la fecha. La mayoría de estas contribuciones, se encuentran
respaldadas mediante publicación en revistas científicas.
En el primer campo en el que se trabajó, y que ha ido evolucionando durante todo
el proceso de investigación, fue en el campo del Procesamiento del Lenguaje Natural.
Se ha analizado y experimentado en situaciones reales, los sistemas más importantes
de reconocimiento de voz (ASR); posteriormente, algunos de ellos han sido integrados
en el sistema RDS, mediante un sistema que trabaja concurrentemente con varios
motores de ASR, con el doble objetivo de mejorar la precisión en el reconocimiento
de voz y proporcionar varios métodos de entrada de información complementarios.
Continuó la investigación, adaptando la interacción a los posibles tipos de micrófonos
y entornos acústicos. Se complementó el sistema con la capacidad de reconocer voz
en múltiples idiomas y de identificar al usuario por su tono de voz.
El siguiente campo de investigación tratado corresponde con la generación de
lenguaje natural. El objetivo ha sido lograr un sistema de síntesis verbal con cierto
grado de naturalidad e inteligibilidad, multilenguaje, con varios timbres de voz, y
que expresase emociones. Se construyó un sistema modular capaz de integrar varios
motores de síntesis de voz. Para dotar al sistema de cierta naturalidad y variabilidad
expresiva, se incorporó un mecanismo de plantillas, que permite sintetizar voz con
cierto grado de variabilidad léxica.
La gestión del diálogo constituyo el siguiente reto. Se analizaron los paradigmas
existentes, y se escogió un gestor basado en huecos de información. El gestor escogido
se amplió y modificó para potenciar la capacidad de adaptarse al usuario (median-
te perfiles) y tener cierto conocimiento del mundo. Conjuntamente, se desarrollo el
módulo de fusión multimodal, que se encarga de abstraer la multimodalidad al gestor
del diálogo, es decir, de abstraer al gestor del diálogo de los canales por los que se
recibe el mensaje comunicativo. Este módulo, surge como el resultado de adaptar la
teoría de actos comunicativos en la interacción entre humanos a nuestro sistema de
interacción. Su función es la de empaquetar la información sensorial emitida por los
módulos sensoriales de RDS (siguiendo un algoritmo de detección de actos comuni-
cativos, desarrollado para este trabajo), y entregarlos al gestor del diálogo en cada
turno del diálogo.
Para potenciar la multimodalidad, se añadieron nuevos modos de entrada al siste-
ma. El sistema de localización de usuarios, que en base al análisis de varias entradas
de información, entre ellas la sonora, consigue identificar y localizar los usuarios que
rodean al robot. La gestión de las emociones del robot y del usuario también forman
parte de las modos de entradas del sistema, para ello, la emoción del robot se gene-
ra mediante un módulo externo de toma de decisiones, mientras que la emoción del
vi

usuario es percibida mediante el análisis de las características sonoras de su voz y de
las expresiones de su rostro. Por último, otras modos de entrada incorporados han
sido la lectura de etiquetas de radio frecuencia, y la lectura de texto escrito.
Por otro lado, se desarrollaron nuevos modos expresivos o de salida. Entre ellos
destacan la expresión de sonidos no-verbales generados en tiempo real, la capacidad de
cantar, y de expresar ciertos gestos "de enganche" que ayudan a mejorar la naturalidad
de la interacción: mirar al usuario, afirmaciones y negaciones con la cabeza, etc.
vii

viii

Abstract
In recent years, in the Human-Robot Interaction (HRI) area, there has been more
interest in situations where users are not technologically skilled with robotic systems.
For these users, it is necessary to use interactive techniques that don't require previous
specific knowledge. Any technological skill must not be assumed for them; the only
one permitted is to communicate with other human users. The techniques that will
be shown in this work have the goal that the robot or system displays information
in a way that these users can understand it perfectly. In other words, in the same
way they would do with any other human, and the robot or system understands what
users are expressing. To sum up, the goal is to emulate how humans are interacting.
In this thesis a natural interaction system has been developed and tested, it has
been called Robotics Dialog System (RDS). It allows users and robotic communication
using different channels. The system is comprised of many modules that work together
co-ordinately to reach the desired natural interactivity levels. It has been designed
inside a robotic control architecture and communicates with all the other systems:
decision management system, sequencer, communication system, games, sensorial and
movement skills, etc. This thesis contributes to the state-of-the-art in two levels. First,
in a high level, it is shown a Human-Robot Interaction System (RDS) with multi-
modal dialogs. Second, in the lower level, in each chapter the specifically designed
components for this RDS system will be described. All of them will contribute to the
state-of-the-art individually to their scientific subject. Before each contribution it has
been necessary to update them, either by integrating or implementing the state-of-
the-art techniques. Most of them have been checked with scientific journal papers.
The first works were done in the Natural Language Processing system. Analysis and
experiments have been carried out with the most important existing voice recognition
ix

systems (ASR) in daily real situations. Then, some of them have been added into
the RDS system in a way that they are able to work concurrently, the goal was
to enhance the voice recognition precision and enable several complementary input
methods. Then, the research focus was move to adapt the interaction between several
types of microphones and acoustic environments. Finally, the system was extended to
be able to identify several languages and users, using for this later their voice tone.
The next system to be focused was the natural language generator, whose main
objectives within this thesis boundaries were to reach a certain level of intelligence
and naturalness, to be multilingual, to have several voice tones and to express emo-
tions. The system architecture was designed to be comprised of several modules and
abstraction layers because several voice synthesis engines needed to be integrated.
A pattern-based mechanism was also added to the system in order to give it some
natural variability and to generate non-predefined sentences in a conversation.
Then the Dialog Management System (DMS) was the next challenge. First of
all, the existing paradigms whose behaviour is based in filling information gaps were
analysed to choose the best one. Secondly, the system was modified and tailored to
be adapted to users (by means of user profiling) and finally, some general knowledge
was added (by using pre-defined files). At the same time the Multi-modal Module was
developed. Its goal is to abstract this multi-modality from the DMS, in other words,
the DMS system must use the message regardless the input channel the message
used to reach it. This module was created as a result of adapting the communicative
act theory in interactions between human beings to our interaction system. Its main
function is to gather the information from the RDS sensorial modules (following an
ad-hoc communicative act detection algorithm developed for this work) and to send
them to the DMS at every step of the communicative process. New modes were
integrated on the system to enhance this multi-modality such as the user location
system, which allows the robot to know the position around it where the users are
located by analysing a set of inputs, including sound. Other modes added to the
system are the radio frequency tag reader and the written text reader. In addition,
the robot and user emotion management have been added to the available inputs, and
then, taken into account. To fulfil this requirement, the robot emotions are generated
by an external decision-maker software module while the user emotions are captured
by means of acoustic voice analysis and artificial vision techniques applied to the user
face. Finally, new multi-modal expressive components, which make the interaction
more natural, were developed: the capacity of generating non-textual real-time sounds,
singing skills and some other gestures such as staring at the user, nodding, etc.
x

Índice general
Agradecimientos
iii
Resumen
v
Abstract
ix
1. Introducción
1
1.1. Planteamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2. Aportaciones principales . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2.1. Aportaciones generales del sistema de interacción . . . . . . .
2
1.2.2. Aportaciones específicas de cada componente . . . . . . . . . .
4
1.3. Estructura del documento . . . . . . . . . . . . . . . . . . . . . . . .
5
2. Sistemas de interacción o diálogo
9
2.1. Introducción: el diálogo como el proceso de interacción natural . . . .
10
2.2. Evolución histórica de los sistemas de interacción . . . . . . . . . . .
11
2.3. Los sistemas de interacción en robótica social
. . . . . . . . . . . . .
14
2.4. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
3. Robotics Dialog System (RDS): propuesta de un sistema de inter-
acción natural
21
3.1. El ecosistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
3.1.1. Entorno software . . . . . . . . . . . . . . . . . . . . . . . . .
22
3.1.2. Entorno hardware . . . . . . . . . . . . . . . . . . . . . . . . .
24
3.2. La multimodalidad soportada por el sistema . . . . . . . . . . . . . .
24
xi

3.2.1. Modos de entrada de información . . . . . . . . . . . . . . . .
25
3.2.2. Modos de salida de información . . . . . . . . . . . . . . . . .
27
3.3. Componentes de RDS
. . . . . . . . . . . . . . . . . . . . . . . . . .
27
3.4. Principales características de RDS . . . . . . . . . . . . . . . . . . . .
34
3.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
4. Gestión del diálogo
37
4.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
4.2. Gestores de diálogo en robots sociales . . . . . . . . . . . . . . . . . .
39
4.2.1. Estructuras para la gestión del diálogo: arquitecturas y escala-
bilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
4.2.2. Expresividad y multimodalidad . . . . . . . . . . . . . . . . .
41
4.2.3. Representación del conocimiento: modelo del mundo y del usuario 42
4.2.4. Conocimiento compartido . . . . . . . . . . . . . . . . . . . .
44
4.2.5. Comunicación cooperativa y coordinada . . . . . . . . . . . .
46
4.2.6. Contextualización del diálogo . . . . . . . . . . . . . . . . . .
47
4.2.7. Diálogo y aprendizaje . . . . . . . . . . . . . . . . . . . . . . .
48
4.2.8. Conversación multiparte (varios interlocutores simultáneos) . .
49
4.2.9. Evaluación: escenarios y métricas . . . . . . . . . . . . . . . .
50
Cuidado, rehabilitación y otras terapias . . . . . . . . . . . . .
50
Guías en museos,centros comerciales, y otros centros públicos .
52
Robots que aprenden de, en, y para el entorno . . . . . . . . .
53
4.3. Contexto del diálogo . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
4.3.1. Aspectos estructurales . . . . . . . . . . . . . . . . . . . . . .
53
4.3.2. Aspectos temporales . . . . . . . . . . . . . . . . . . . . . . .
55
4.4. IDiM: el gestor en RDS de diálogos interpretados . . . . . . . . . . .
58
4.4.1. IDiM y la arquitectura de control del robot . . . . . . . . . . .
58
4.4.2. Implementación y gestión del diálogo . . . . . . . . . . . . . .
60
4.4.3. La fusión multimodal para IDiM
. . . . . . . . . . . . . . . .
62
4.4.4. Atributos semánticos y huecos de información . . . . . . . . .
63
4.4.5. El gestor de diálogo basado en formularios y huecos de información 64
4.5. Implementación de un diálogo . . . . . . . . . . . . . . . . . . . . . .
66
4.5.1. Diseño del lenguaje formal . . . . . . . . . . . . . . . . . . . .
68
4.5.2. Actos comunicativos de expresión . . . . . . . . . . . . . . . .
68
4.5.3. Mapa semántico del dominio del diálogo . . . . . . . . . . . .
69
4.5.4. Atributos semánticos, acciones de consulta y acciones de com-
pletado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
69
4.5.5. Parámetros temporales para el control del diálogo . . . . . . .
70
4.6. IDiM respecto a otros gestores del diálogo . . . . . . . . . . . . . . .
70
4.7. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
xii

5. Sistema de fusión multimodal
75
5.1. Introducción: la teoría de actos comunicativos en la interacción entre
humanos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
76
5.2. Adaptación de la teoría de actos comunicativos al sistema RDS . . . .
76
5.3. Cuatro ejemplos de diálogos multimodales . . . . . . . . . . . . . . .
79
5.3.1. El integrador de habilidades por diálogo . . . . . . . . . . . .
79
5.3.2. El Diálogo de teleoperación multimodal . . . . . . . . . . . . .
82
5.3.3. Diálogo de reproducción de música en línea . . . . . . . . . . .
85
5.3.4. Diálogo de pregunta abierta . . . . . . . . . . . . . . . . . . .
87
5.4. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
88
6. Sistema de reconocimiento automático del habla
89
6.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
90
6.2. Mecanismos de captura de sonido y voz humana . . . . . . . . . . . .
92
6.3. Dificultades en la interacción por voz: "Cocktail Party Problem"
. . .
94
6.3.1. Cocktail Party Problem . . . . . . . . . . . . . . . . . . . . .
94
6.3.2. Ruido de ambiente de fuentes diversas . . . . . . . . . . . . .
96
6.4. Paradigmas en el reconocimiento automático de voz . . . . . . . . . .
98
6.4.1. Basado en gramáticas . . . . . . . . . . . . . . . . . . . . . . .
99
6.4.2. Basado en un modelo estadístico del idioma (SLM) . . . . . . 100
6.4.3. Basado en un modelo estadístico de un contexto específico . . 100
6.5. Requisitos para el sistema de reconocimiento de voz efectivo . . . . . 101
6.6. Análisis de los entornos de reconocimiento de voz disponibles . . . . . 103
6.7. Integración con la arquitectura de control . . . . . . . . . . . . . . . . 106
6.8. Motores de reconocimiento concurrentes . . . . . . . . . . . . . . . . 107
6.9. Experimentos sobre la precisión del reconocimiento . . . . . . . . . . 111
6.9.1. Utilizando micrófonos auriculares inalámbricos . . . . . . . . . 112
Sin ruido importante de fondo
. . . . . . . . . . . . . . . . . 112
Con ruido de fondo
. . . . . . . . . . . . . . . . . . . . . . . 113
Con ruido cerca del usuario . . . . . . . . . . . . . . . . . . . 113
Diferentes volúmenes de voz . . . . . . . . . . . . . . . . . . . 114
Diferentes entonaciones . . . . . . . . . . . . . . . . . . . . . . 115
Diferentes géneros . . . . . . . . . . . . . . . . . . . . . . . . . 115
Diferentes grupos de edad . . . . . . . . . . . . . . . . . . . . 116
6.9.2. Utilizando micrófono incorporado en el robot (omnidireccional) 116
6.9.3. Utilizando array de micrófonos
. . . . . . . . . . . . . . . . . 118
6.10. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
xiii

7. Proxémica y sistema de localización multimodal del usuario
123
7.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
7.2. Localización de la fuente sonora y de usuarios en robótica social . . . 125
7.2.1. El problema de la localización sonora . . . . . . . . . . . . . . 125
7.2.2. Fonotaxis vs proxémica . . . . . . . . . . . . . . . . . . . . . . 127
7.2.3. Análisis proxémico en la interacción entre humanos . . . . . . 128
7.2.4. Análisis proxémico en interacción humano-máquina y humano-
robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
7.3. Factores en análisis proxémico entre el usuario y el robot social Maggie 132
7.3.1. Experiencia de uso . . . . . . . . . . . . . . . . . . . . . . . . 133
7.3.2. La edad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
7.3.3. La personalidad . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7.3.4. El género . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7.3.5. El aspecto del robot . . . . . . . . . . . . . . . . . . . . . . . 135
7.3.6. El número de usuarios . . . . . . . . . . . . . . . . . . . . . . 135
7.3.7. Conclusión: reglas proxémicas observadas en la interacción
usuario-Maggie . . . . . . . . . . . . . . . . . . . . . . . . . . 136
7.4. Descripción del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 137
7.4.1. Sistema hardware: sensores usados . . . . . . . . . . . . . . . . 137
7.4.2. Sistema software . . . . . . . . . . . . . . . . . . . . . . . . . 140
7.4.3. Integración de la habilidad de localización de usuarios dentro
de RDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
7.5. Experimentos de localización de usuarios . . . . . . . . . . . . . . . . 143
7.5.1. El módulo de localización de fuente sonora . . . . . . . . . . . 143
7.5.2. El módulo completo de localización de usuarios multimodal . . 144
7.6. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
8. Sistema de detección y gestión de emociones
149
8.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
8.2. Trabajo relacionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
8.2.1. Las emociones a detectar . . . . . . . . . . . . . . . . . . . . . 151
8.2.2. Canales utilizados para la detección emocional . . . . . . . . . 152
8.2.3. Nivel al que se fusiona la información de cada canal . . . . . . 153
8.2.4. Tipos de entrenamiento del sistema . . . . . . . . . . . . . . . 155
8.3. Características del sistema multimodal de detección de emociones pro-
puesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
8.3.1. Representación de las emociones a detectar . . . . . . . . . . . 155
8.3.2. Canales utilizados para la detección de emociones . . . . . . . 158
8.3.3. Nivel al que se fusiona la información de cada canal . . . . . . 158
8.3.4. Tipos de entrenamiento del sistema . . . . . . . . . . . . . . . 159
xiv

8.4. El sistema de detección por voz propuesto: GEVA . . . . . . . . . . . 159
8.4.1. La extracción de características sonoras . . . . . . . . . . . . . 160
8.4.2. La clasificación por voz . . . . . . . . . . . . . . . . . . . . . . 162
8.5. El sistema de detección visión del rostro propuesto: GEFA . . . . . . 165
8.5.1. Detección de la cara . . . . . . . . . . . . . . . . . . . . . . . 166
8.5.2. Extracción de las características del rostro . . . . . . . . . . . 166
8.5.3. Clasificación de la expresión del rostro . . . . . . . . . . . . . 167
8.5.4. Trabajos completos que agrupan las tres fases . . . . . . . . . 168
8.6. Integración de GEVA y GEFA: sistema completo propuesto . . . . . . 169
8.6.1. Regla de decisión . . . . . . . . . . . . . . . . . . . . . . . . . 171
8.7. Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
8.7.1. Configuración del experimento . . . . . . . . . . . . . . . . . . 173
8.7.2. Experimentos con GEVA: audio . . . . . . . . . . . . . . . . . 176
8.7.3. Experimentos con GEFA: visión . . . . . . . . . . . . . . . . . 177
8.7.4. Experimentos con el sistema completo . . . . . . . . . . . . . 178
8.7.5. Rendimiento del sistema completo calculado estadísticamente
180
8.7.6. Rendimiento del sistema de detección de emociones multimodal
calculado mediante experimentos con usuarios . . . . . . . . . 181
8.8. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
9. Sistema de síntesis de voz con emociones
185
9.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
9.2. Requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
9.3. Principales sistemas de síntesis de voz . . . . . . . . . . . . . . . . . . 188
9.4. Descripción del sistema software . . . . . . . . . . . . . . . . . . . . . 190
9.5. Generación de lenguaje natural . . . . . . . . . . . . . . . . . . . . . 193
9.6. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
10.Otras modalidades de expresión
195
10.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
10.2. Los lenguajes musicales . . . . . . . . . . . . . . . . . . . . . . . . . . 197
10.3. Implementación de la expresión de sonidos no verbales y canto . . . . 201
10.4. Gestos expresivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
10.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
11.Conclusiones y trabajos futuros
207
11.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
11.2. Trabajos futuros o en desarrollo . . . . . . . . . . . . . . . . . . . . . 210
11.3. Publicaciones surgidas de este trabajo . . . . . . . . . . . . . . . . . . 212
11.3.1. En revistas científicas . . . . . . . . . . . . . . . . . . . . . . . 212
11.3.2. En congresos de robótica . . . . . . . . . . . . . . . . . . . . . 213
xv

11.4. Comentarios finales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
12.Conclusions
215
12.1. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
12.2. Current and future work . . . . . . . . . . . . . . . . . . . . . . . . . 218
12.3. Last comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
A. Primeros resultados experimentales con el sistema RDS
221
A.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
A.2. Descripción de los experimentos . . . . . . . . . . . . . . . . . . . . . 222
A.2.1. Caso I: interacción individual con adolescentes inexpertos . . . 223
A.2.2. Caso II: interacción en pequeños grupos de niños inexpertos . 224
A.2.3. Caso III: Interacción en pequeños grupos con niños supervisados 225
A.2.4. Caso IV: interacción en grandes grupos con niños supervisados 226
A.3. Análisis de los vídeos . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
A.3.1. Caso I: interacción individual con jóvenes inexpertos
. . . . . 226
A.3.2. Caso II: interacción en pequeños grupos con niños inexpertos . 228
A.3.3. Caso III: interacción supervisada en pequeños grupos de niños
230
A.3.4. Caso IV: interacción supervisada en grandes grupos de niños . 231
A.4. Análisis de los cuestionarios . . . . . . . . . . . . . . . . . . . . . . . 231
A.4.1. Caso I: interacción individual con adolescentes inexpertos . . . 231
A.4.2. Caso II: interacción en pequeños grupos con niños inexpertos . 233
A.4.3. Caso III: interacción supervisada en pequeños grupos de niños
234
A.4.4. Caso IV: interacción supervisada en grandes grupos de niños . 234
A.5. Conclusiones sobre los experimentos . . . . . . . . . . . . . . . . . . . 235
B. Gramáticas y diálogos de ejemplo
237
B.1. Ejemplos de gramáticas usadas . . . . . . . . . . . . . . . . . . . . . 238
B.1.1. Gramática de bienvenida . . . . . . . . . . . . . . . . . . . . . 238
B.1.2. Gramática Integrador . . . . . . . . . . . . . . . . . . . . . . . 238
B.1.3. Gramática para la teleoperación multimodal del robot . . . . . 240
B.1.4. Gramática para la selección de juegos . . . . . . . . . . . . . . 240
B.1.5. Gramática para el control de la televisión . . . . . . . . . . . . 241
B.2. Diálogos de voz siguiendo el estándar VoiceXML . . . . . . . . . . . . 241
B.2.1. Diálogo de entrada al sistema . . . . . . . . . . . . . . . . . . 241
B.2.2. Diálogo de registro en el sistema . . . . . . . . . . . . . . . . . 246
C. Glosario de Acrónimos
249
Bibliografía
253
xvi

Índice de Tablas
6.1. Comparación de los principales entornos de reconocimiento de voz (2011)105
6.2. Tabla de definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
8.1. Matrices de confusión para GEVA . . . . . . . . . . . . . . . . . . . . 176
8.2. Matrices de confusión para GEFA . . . . . . . . . . . . . . . . . . . . 178
8.3. Matriz de confusión del sistema completo calculada estadísticamente . 180
8.4. Matriz de confusión del sistema completo calculada mediante experi-
mentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
9.1. Resumen comparativo de diferentes motores de síntesis de voz . . . . 189
10.1. Comparación de los principales lenguajes de programación musical . . 199
10.2. Detalles técnicos de los lenguajes de programación musical . . . . . . 201
A.1. Resultados tras en análisis de los vídeos del Caso I
. . . . . . . . . . 227
A.2. Valores relativos interesantes del análisis de los vídeos para el Caso I)
227
xvii


Índice de figuras
2.1. El sistema de interacción como interfaz . . . . . . . . . . . . . . . . .
10
2.2. Sistema de diálogo clásico . . . . . . . . . . . . . . . . . . . . . . . .
12
2.3. Sistema de diálogo multisonido
. . . . . . . . . . . . . . . . . . . . .
15
2.4. El robot Biron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
2.5. El robot HRP2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
3.1. Contexto del Sistema de Diálogo Robótico (RDS) . . . . . . . . . . .
23
3.2. Robots sociales del RoboticsLab . . . . . . . . . . . . . . . . . . . . .
25
3.3. RDS: Robotic Dialog System . . . . . . . . . . . . . . . . . . . . . . .
28
3.4. Niveles de Fusión Multimodal . . . . . . . . . . . . . . . . . . . . . .
30
4.1. Aspectos estructurales de un proceso de interacción . . . . . . . . . .
55
4.2. Aspecto temporal de un proceso de interacción. . . . . . . . . . . . .
57
4.3. El robot social Maggie interactuando . . . . . . . . . . . . . . . . . .
59
4.4. IDiM en un vistazo . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
4.5. Cambios de contexto del gestor de diálogo . . . . . . . . . . . . . . .
61
4.6. La fusión multimodal y el gestor de diálogo . . . . . . . . . . . . . . .
62
4.7. Gramática para controlar la televisión mediante voz . . . . . . . . . .
64
4.8. Implementación del diálogo de control de la televisión . . . . . . . . .
67
5.1. Actos comunicativos del diálogo . . . . . . . . . . . . . . . . . . . . .
77
5.2. Etiquetas de radio frecuencia con pictogramas . . . . . . . . . . . . .
78
5.3. Flujo del diálogo . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
80
5.4. Capturas del diálogo de teleoperación . . . . . . . . . . . . . . . . . .
84
5.5. Esquema del diálogo de teleoperación . . . . . . . . . . . . . . . . . .
84
5.6. Ejemplo de la fusión multimodal de dos actos comunicativos . . . . .
86
xix

6.1. Tipos posibles de micrófonos . . . . . . . . . . . . . . . . . . . . . . .
92
6.2. Fuentes de audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
95
6.3. Cocktail Party Problem
. . . . . . . . . . . . . . . . . . . . . . . . .
95
6.4. Cancelación activa del eco . . . . . . . . . . . . . . . . . . . . . . . .
97
6.5. Mezcla a la entrada y separación a la salida de los canales de audio .
98
6.6. Arquitectura del sistema de reconocimiento de voz . . . . . . . . . . . 106
6.7. Tasa de acierto vs SNR: función de probabilidad de tasa de acierto (PSR)110
6.8. Confianza media vs típica confianza . . . . . . . . . . . . . . . . . . . 110
6.9. Receptor-emisor: micrófonos inalámbricos Sennheiser . . . . . . . . . 111
6.10. Resumen de la precisión de reconocimiento usando micrófonos auriculares114
6.11. Precisión del reconocimiento con distintos volúmenes de voz . . . . . 115
6.12. Micrófono omnidireccional MP33865 . . . . . . . . . . . . . . . . . . 117
6.13. Micrófono de array . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.14. Array de micrófonos en la base del robot . . . . . . . . . . . . . . . . 119
6.15. Precisión de reconocimiento usando distintos tipo de micrófonos . . . 120
7.1. Espacios personales en la interacción humano-humano según Lambert
130
7.2. Diferencia de aspecto externo entre un robot humanoide y uno meca-
trónico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7.3. Interacciones con niños de entre 8 y 10 años . . . . . . . . . . . . . . 134
7.4. Interacciones con personas mayores de 10 años . . . . . . . . . . . . . 134
7.5. Interacción grupal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
7.6. Niños imitando al robot bailando . . . . . . . . . . . . . . . . . . . . 136
7.7. Reglas proxémicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
7.8. Micrófonos en el robot Maggie
. . . . . . . . . . . . . . . . . . . . . 139
7.9. Esquema de situación de los micrófonos en Maggie . . . . . . . . . . . 139
7.10. Localización de usuarios en el sistema de diálogo multimodal . . . . . 143
7.11. Áreas de localización . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.12. Fases de la localización respecto al usuario . . . . . . . . . . . . . . . 146
8.1. Nivel en el que se realiza la fusión . . . . . . . . . . . . . . . . . . . . 154
8.2. Sistema de detección de emociones multimodal implementado . . . . 156
8.3. Esquema del proceso de toma de decisión para determinar la emoción
del usuario en cada acto comunicativo . . . . . . . . . . . . . . . . . . 171
8.4. Los robots empleados en los experimentos . . . . . . . . . . . . . . . 174
8.5. Imagen tomada durante los experimentos llevados a cabo en el IST de
Lisboa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
9.1. Arquitectura del sistema de síntesis de voz . . . . . . . . . . . . . . . 190
10.1. Interfaz para construir canciones sintéticas mediante Vocaloid . . . . 203
xx

10.2. Robot social Maggie realizando gestos de enganche para el diálogo . . 203
A.1. Interacción individual con adolescentes sin experiencia previa con el
sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
A.2. Grupo de niños interactuando con el robot sin ayuda . . . . . . . . . 225
A.3. Investigador presentando a Maggie . . . . . . . . . . . . . . . . . . . 225
A.4. Interacción en grandes grupos con niños supervisados . . . . . . . . . 226
A.5. Tarjetas con pictogramas y etiquetas de radio frecuencia . . . . . . . 229
A.6. Niños jugando al juego de los peluches . . . . . . . . . . . . . . . . . 231
A.7. Caso I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
A.8. Caso II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
A.9. Caso III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
A.10.Caso IV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
xxi


CAPÍTULO
1
Introducción
"Las mayores innovaciones del siglo XXI vendrán de la intersección de la biología y
la tecnología. Una nueva era está comenzando." -- Steve Jobs
1

2
Capítulo 1. Introducción
1.1.
Planteamiento
La interacción humano-robot constituye un campo de investigación amplio. Es en
este campo de investigación donde se enmarca el contenido de esta tesis doctoral.
Este trabajo de investigación surge como respuesta al problema de que no existe un
sistema suficientemente avanzado como para plantear la interacción humano-robot de
una manera similar a como se plantea la interacción humana. Por ello, se persigue el
objetivo de crear un sistema que posibilite la interacción entre los robots y los huma-
nos de la manera más natural posible. Para lograrlo, ha sido necesario llevar a cabo
tareas de investigación, desarrollo, e integración en diversos campos relacionados con
la interacción humano-robot: diálogos, multimodalidad, expresividad, computación
afectiva, etc.
Debido a la complejidad de la interacción natural entre humanos y robots sociales,
que involucra muchos campos de investigación, resulta difícil encontrar un sistema
general que cubra todos los aspectos que conciernen a la interacción humano-robot.
Es a este desafío donde esta tesis pretende dar una respuesta, creando un sistema que
facilita la interacción entre ambas partes sin la necesidad de ayuda externa.
Se considera, por parte del autor, que con el trabajo aquí expuesto se da un paso
en mejorar la interacción humano-robot en pos de lograr una mayor naturalidad, "hu-
manizando la interacción". Se ha puesto especial hincapié, en que el sistema expuesto
funcione de manera robusta y sin la necesidad de personal de apoyo. En este sentido,
este trabajo logra que una vez que el robot se enciende funcione correctamente el
sistema, sea cual sea el usuario y el tiempo de interacción empleado. En un futuro
cercano, se espera que el sistema genérico, aquí presentado, constituya la base para
la interacción en robots asistenciales.
1.2.
Aportaciones principales
A continuación se describen las principales aportaciones realizadas con el desarro-
llo de este trabajo. Se comienza con las aportaciones realizadas por el sistema general
de interacción RDS. Posteriormente, se enumeran las aportaciones realizadas en ca-
da uno de los componentes concretos del sistema, en los que se considera que se ha
realizado una aportación relevante.
1.2.1.
Aportaciones generales del sistema de interacción
Sistema de interacción general, llamado RDS, capaz de trabajar con múltiples
modos de interacción tanto a la entrada del sistema (fusión de la entrada mul-
timodal), como a la salida expresiva del mismo (fisión multimodal). Entre estos

1.2. Aportaciones principales
3
modos, destacan principalmente los relacionados con el audio (sistema multiso-
nido), siendo capaz de aprovechar la entrada de información multimodal para
las siguientes tareas: reconocimiento de voz, identificación del usuario, localiza-
ción espacial del usuario respecto al robot, detección de emociones del usuario;
mientras que los canales de salida se información se usan para: síntesis de voz
con emociones, síntesis de sonidos no verbales y generación musical. Al modo
sonoro (multisonido) se lo complementa con el resto de modos para comple-
tar la multimodalidad: sistema visual, gestual, de radio frecuencia, táctil. Los
primeros resultados han sido publicados en [Alonso-Martin et al., 2013a].
La entrada multimodal del sistema se gestiona inspirándose en la teoría de
actos comunicativos que tiene lugar en la interacción entre humanos. De esta
manera, se abstrae al "gestor de la interacción" de los modos/canales mediante
los que se obtiene el mensaje comunicativo. Cada acto comunicativo, consiste
en un paquete de información formado por atributos-valores relativos al diálogo
multimodal. Se ha desarrollado el componente capaz de agrupar estos valores
semánticos de manera coherente temporalmente en paquetes de información
(fusión multimodal) correspondientes a cada turno del proceso comunicativo.
Publicado en [Alonso-Martín et al., 2013].
El sistema de interacción es adaptable al usuario. Esta adaptación se realiza
mediante el uso de perfiles de usuario que el sistema es capaz de generar y
actualizar mediante el propio sistema de interacción natural. La adaptación
consiste en:
1. Adaptación al idioma (multilingüismo): el sistema es capaz de hablar en
el idioma con el que se expresa el usuario. Esta adaptación es válida para
cualquier idioma reconocido, pero trabaja especialmente bien para espa-
ñol e inglés. Basta con que el usuario salude al sistema para detectar la
identidad del usuario y el idioma usado en la comunicación. Publicado en
[Alonso-Martin et al., 2011].
2. Adaptación de la distancia de interacción (proxémica): el sistema es capaz
de determinar cual es la distancia de interacción a mantener con cada
usuario en concreto. Publicado en [Alonso-Martín et al., 2012].
3. Adaptación a la familiaridad con el sistema: dada la experiencia de uso del
usuario con el sistema (en este caso el robot), la interacción puede ser adap-
tada. De este modo, un usuario novel con el sistema puede ser "tutorizado"
por el propio robot en su uso, mientras que un usuario "experimentado"
apenas necesita de diálogos de aclaración o de sugerencias.
4. Adaptación emocional: el sistema puede adaptar la interacción a la emoción
detectada en el usuario, así como al propio estado emocional del robot.

4
Capítulo 1. Introducción
El sistema está integrado en una arquitectura ampliamente extendida en la
comunidad científica que trabaja en robótica, ROS
1
. Esto facilita su uso en casi
cualquier plataforma robótica que use ROS sin la necesidad de realizar grandes
esfuerzos de integración y configuración del sistema aquí propuesto.
1.2.2.
Aportaciones específicas de cada componente
Vista las aportaciones generales, se describen las principales aportaciones parti-
culares realizadas en cada componente que forman parte del sistema de diálogo, que
a su vez se enmarcan dentro de un campo de investigación independiente
2
.
1. Se ha desarrollado un sistema de reconocimiento de voz capaz de trabajar simul-
táneamente en varios modos: sujeto a gramáticas o de texto libre (ver capítulo
6 y apéndice C). Para ello, se realiza el reconocimiento de la voz usando dos
reconocedores en paralelo, es decir en ejecución concurrente. Adicionalmente,
se han analizado las configuraciones software-hardware necesarias para realizar
esta tarea de manera satisfactoria con robots sociales y los problemas que son
necesarios de solventar. Publicado en [Alonso-Martin & Salichs, 2011].
2. Se ha desarrollado un sistema multimodal de localización de usuarios respecto
al robot y se ha integrado dentro del sistema de diálogo. Con esto y un conjunto
de reglas (obtenidas tras un estudio proxémico de los usuarios con el robot
3
), se
logra adaptar la distancia de interacción a cada usuario en concreto. Publicado
en [Alonso-Martín et al., 2012].
3. Partiendo de una tesis anterior y del estándar VoiceXML, se ha extendido la
interpretación que se hace del mismo, para soportar todas las mejoras introdu-
cidas. De esta manera, se permite en la propia especificación del diálogo el uso
del multimodo, del multilingüismo, consultas a web semánticas para responder
a preguntas generales, uso de servicios de reproducción de música en-linea, etc.
4. Se ha desarrollado un sistema de síntesis verbal y no verbal, capaz de sinteti-
zar voces y sonidos "con emociones". El sistema verbal desarrollado funciona de
manera distribuida, con múltiples motores de síntesis de voz al mismo tiempo
(actualmente cuatro) y gestionar temporalmente la cola de locuciones, con fun-
ciones de síntesis tales como: pausar/reanudar la locución en curso, cancelar,
cambiar la emoción, "secuestrar" la síntesis sonora, generar sonidos no verba-
les de síntesis en tiempo real que "concuerdan" con los sonidos percibidos, etc.
1
http://www.ros.org/
2
Muchas de estas aportaciones se encuentran refrendadas por su publicación en revistas y confe-
rencias
3
En este caso concreto estás reglas se han obtenido con el robot Maggie

1.3. Estructura del documento
5
El sistema de síntesis de sonidos no verbales es capaz de expresar sonidos que
simulan emociones del propio robot o replicar la voz del usuario en el propio
lenguaje sonoro del robot
4
. Publicado en [Alonso-Martin et al., 2012].
5. Se ha desarrollado un sistema de detección de emociones multimodal integrado
con el sistema de interacción. El sistema usa como entrada de información:
la detección emocional por análisis de la voz del usuario y el análisis de las
expresiones de su rostro mediante técnicas de visión artificial. Esta detección
emocional se puede usar para adaptar los diálogos en su especificación en ficheros
VoiceXML. Publicado en [Alonso-Martin et al., 2013b].
1.3.
Estructura del documento
Esta tesis comienza con una introducción sobre el proceso de interacción natural en
la comunicación entre humanos. Se presenta una descripción de los estudios realizados
en ese campo, en los que se introduce al diálogo como un proceso de interacción
multimodal. Seguidamente se revisa el estado del arte sobre los trabajos que tienen
el objetivo de adaptar la manera de interactuar entre los humanos, para llevarlo
al ámbito de la comunicación humano-máquina, con especial interés en el proceso
comunicativo en el que la máquina es un robot con capacidades de interacción sociales.
A continuación, se presenta el sistema de interacción desarrollado en este trabajo,
denominado RDS (Robotic Dialog System). Este sistema se enmarca dentro de una
arquitectura de control de robots sociales y se detallan sus principales características.
Una vez presentado RDS, en cada capítulo se describen los principales componentes
desarrollados expresamente por el doctorando para este trabajo, y que forman parte
del sistema RDS. Se finaliza con los resultados experimentales llevado a cabo con
usuarios que sirven para dar validez a este sistema.
Es importante remarcar que se ha seguido una aproximación "top-down" (de
arriba hacia abajo), de tal manera que primero se presenta el sistema de interacción
general desarrollado, y posteriormente se describirse en detalle cómo se ha resuelto
cada uno de los sub-problemas que conforman el problema general de interacción na-
tural y que por sí mismos, se pueden consideran un campo de investigación propio.
Se ha seguido esta aproximación para primero mostrar una visión general del sistema
que permita comprender la integración de cada módulo con el sistema general. Por
supuesto, se podía haber optado por un orden diferente a la hora presentar los ca-
pítulos (cronológico, de abajo hacia arriba, siguiendo el flujo de la información, etc),
pero se ha considerado que este es el más adecuado.
En los sucesivos capítulos se describen los componentes que forman parte del
sistema. De esta manera, se han adaptado las técnicas más recientes al sistema RDS,
4
Recordar al robot R2D2 de La guerra de las galaxias

6
Capítulo 1. Introducción
además de realizar alguna aportación significativa al avance del estado del arte en
cada campo de investigación abordado. Estas aportaciones, en su mayoría se han
visto reflejadas en forma de publicación científica. Siguiendo esta aproximación, cada
capítulo tienen su propio estado del arte, aportaciones y resumen.
El contenido es explicado en capítulos del siguiente modo:
Capítulo 1. Corresponde con el capítulo actual y en él se introduce al lector
en el problema tratado por esta tesis, así como las soluciones adoptadas. Se
enumeran las principales aportaciones realizadas y la estructura interna de este
documento.
Capítulo 2. En este capítulo se establecen los principales conceptos que inspi-
ran el resto del documento. Se introduce al lector el problema de la interacción
natural entre humanos, y entre humanos y máquinas. Se describen los estudios
realizados, que investigan la interacción natural entre los humanos, para pos-
teriormente realizar un análisis exhaustivo del estado del arte en la interacción
humano-máquina y especialmente en la interacción humano-robot.
Capitulo 3. En este capítulo se presenta el sistema de interacción propuesto:
RDS (Robotic Dialog System). Este sistema queda enmarcado dentro de la
arquitectura software de control AD-ROS, usada para el control de todos los
sistemas del robot, no sólo los de interacción. Se muestra un diagrama general
de los componentes que conforman el sistema RDS y de su relación entre ellos.
Seguidamente se detallan las principales funciones de cada componente y las
características generales que identifican al sistema RDS.
Capitulo 4. En este capítulo se comienza con la descripción del primero de los
subsistemas que conforman el sistema general de interacción, es el encargado de
la gestión del diálogo. Se realiza un estudio del estado del arte pormenorizado,
con los principales gestores de diálogos agrupados en categorías. Seguidamente
se presenta nuestro gestor de diálogo, IDiM (Interpreted Dialog Management),
basado en el relleno de huecos de información. Se describe como implementar
diálogos usando este gestor y se compara con el resto de gestores analizados.
Capítulo 5. En este capítulo se muestra cómo se realiza el proceso de fusión
multimodal, que logra abstraer al gestor del diálogo de los canales (modos) usa-
dos para la extracción de la información que subyace en cada turno del diálogo.
Esta manera de fusionar la información adapta la teoría de actos comunicativos
de la interacción humana al entorno de la interacción humano-robot. Para su
compresión, se describen y detallan los principales diálogos implementados en
esta tesis.

1.3. Estructura del documento
7
Capítulo 6. Aquí se muestra cómo se ha integrado, dentro del sistema de
interacción, el proceso de reconocimiento automático del habla. Se ha realizado
un estudio exhaustivo de las diversas configuraciones software/hardware que
posibilitan esta tarea y de los desafíos que actualmente están por resolver. Se
presenta la solución adoptada y experimentos sobre la misma.
Capítulo 7. En este capítulo se trata el problema de la localización de los
usuarios espacialmente respecto al robot. Se analiza cómo se ha resuelto en
la literatura este problema. Seguidamente mediante experimentos con usuarios
(estudios proxémicos), se comprueba como se sitúan respecto al robot social
Maggie, en función de diversos aspectos, para establecer reglas válidas para
nuestro sistema de interacción. Con estas reglas y el sistema bimodal de loca-
lización de usuarios (sonora y visual), se logra que el sistema pueda localizar
espacialmente al robot en una situación adecuada al contexto comunicativo.
Capítulo 8. En este capítulo se presenta la detección y gestión de las emo-
ciones y el género dentro del sistema de interacción. Se realiza un estado del
arte de las metodologías y técnicas usadas. Se presenta nuestro subsistema de
detección de género y emociones multimodal basado en: voz y rasgos faciales. Se
ha desarrollado un módulo de detección de género y emociones por voz, además
de integrado dos sistemas comerciales (CERT y SHORE) de detección de emo-
ciones y género mediante visión del rostro del usuario. Sobre estas tres fuentes
de información se toma una decisión de la emoción predominante en el usuario
y su género, esta información se incorpora como entrada multimodal en el acto
comunicativo correspondiente.
Capítulo 9. Con este capítulo se comienza con la descripción de los componen-
tes expresivos del sistema, en concreto con el de la síntesis de voz. Se hace un
análisis de las soluciones posibles. Se presenta el sistema de síntesis de voz, ca-
paz de sintetizar voz con emociones y con varios motores de síntesis. Finalmente
se describe sus características y como ha sido introducido dentro del sistema de
interacción.
Capítulo 10. En este capítulo se describe el resto de componentes expresivos
del sistema como son: los gestos, los sonidos no verbales, y la capacidad de
cantar. Cada uno de ellos se describe individualmente y su integración con el
sistema. Se proponen nuevas vías de desarrollo en cada uno de ellos.
Capítulo 11. En este capítulo final se reflexiona sobre el trabajo realizado a
modo de conclusiones y se establecen las futuras líneas de trabajo en la mejora
del sistema de interacción natural planteado.

8
Capítulo 1. Introducción
Apéndice 1. Experimentos realizados con usuarios reales, en una fase interme-
dia en el ciclo de desarrollo de esta tesis. Provocó la introducción de importantes
mejoras en la interacción.
Apéndice 2. Código fuente de algunos componentes específicos del sistema de
diálogo como son gramáticas, diálogos VoiceXML, etc. que facilitan la compren-
sión del sistema y del texto.
Apéndice 3. Constituye el glosario de acrónimos usados durante la redacción
del manuscrito.
Dado que la presente tesis se enmarca dentro de tesis con mención internacional,
el texto que aparece en las figuras está en inglés, para facilitar la comprensión
del mismo por los revisores expertos de habla no castellana.

CAPÍTULO
2
Sistemas de interacción o diálogo
"El dialogo es el mejor arte en una sociedad, sin él no existiría."-- anónimo
9

10
Capítulo 2. Sistemas de interacción o diálogo
2.1.
Introducción: el diálogo como el proceso de in-
teracción natural
La RAE define el diálogo como "La plática entre dos o más personas que alterna-
tivamente muestran sus ideas o afectos". Otra definición que se puede encontrar es la
que da la Wikipedia: "El diálogo es una forma oral y escrita en la que se comunican
dos o más personajes en un intercambio de ideas por cualquier medio". Finalmente,
en WordReference, se encuentra la siguiente definición: "Conversación entre dos o más
personas que intercambian el turno de palabra".
Como intuitivamente sabemos desde que somos niños, la acción de conversar es el
modo más natural para resolver un gran número de acciones cotidianas entre los hu-
manos. Por otro lado, es una herramienta clave para lo que se ha venido a denominar
"interacción natural", o "natural interaction"(NI) en su traducción al inglés. Los estu-
dios en NI se centran en en el análisis de las características esenciales y descriptivas
de la interacción entre humanos. Estos estudios no resultan sencillos, primero porque
el potencial del lenguaje es mucho mayor que un mero mecanismo de "intercambio
de información", como es normalmente se asume. Segundo, porque la cantidad de
información intercambiada es a menudo mayor que la información adquirida (por el
receptor).
El objetivo es disponer de sistemas que faciliten la comunicación persona-máquina
del modo más natural posible, es decir, a través de la conversación. Se persigue imitar
a los seres humanos en su manera de actuar de tal manera que el sistema de interacción
actúe como un intermediario entre el humano y la máquina (ver Fig. 2.1).
Figura 2.1: El sistema de interacción actúa como una interfaz, o intermediario, entre
el humano y la máquina
.

2.2. Evolución histórica de los sistemas de interacción
11
2.2.
Evolución histórica de los sistemas de interac-
ción
La creencia de que los humanos seremos capaces de interactuar con las máquinas
en una conversación natural ha estado presente como un tema recurrente desde los
inicios de la ciencia ficción, recordar por ejemplo: ("2001: Una odisea del espacio"
(1968), "Blade Runner" (1982), o "Yo, Robot" (2004). Con las recientes mejoras en
el campo de la interacción natural por voz, tales sistemas están empezando a ser
factibles. El diálogo es el modo más natural para resolver un gran número de acciones
cotidianas entre los seres humanos: obtener una determinada información, contratar
un servicio, conocer el estado de un determinado proceso, etc.
Los sistemas de interacción son comúnmente conocidos como sistemas de diálo-
go, entendiendo el diálogo como el proceso de comunicación entre varias partes, que
involucra no sólo al lenguaje como mecanismo de interacción, sino también, gestos,
sonidos, emociones, etc. Dichos sistemas y más en concreto los sistemas multimodales,
son un área activa de investigación.
La interacción por diálogo no es un tema de investigación nuevo, y existen nu-
merosas aproximaciones al problema del diálogo natural. Varias investigaciones se
centran en dicho problema, por citar algunos se pueden leer ([Bach & Harnish, 1979],
[Bruner, 1975], [Searle, 1975, Searle, 1969]). Sin embargo, los sistemas de diálogo más
desarrollados se han implementado en contextos de comunicación muy restrictivos,
como el teléfono o sistemas de acceso mediante PC. La implementación de siste-
mas de diálogo dentro de la robótica no sigue el mismo nivel de desarrollo. Esto
es debido, principalmente, a que los robots tienen cuerpo físico y se mueven por el
entorno natural. Los sistemas de diálogo tienen que estar coordinados con los siste-
mas de percepción y actuación dentro de un entorno real y desestructurado, siendo
una tarea mucho más compleja que la realizada para entornos de atención al cliente
telefónicos o para controlar un smartphone. Sin embargo, es precisamente en es-
tos entornos de interacción con robots, donde la multimodalidad cobra su mayor
importancia ([Cheyer et al., 1998], [Gorostiza et al., 2006a], [Niklfeld et al., 2001],
[Seneff et al., 1996], [Wahlster, 2003a], [Waibel & Suhm, 1997]).
Beneficiándose de las interesantes mejoras en las áreas del reconocimiento del ha-
bla, el procesamiento del lenguaje natural y de la síntesis del habla, las primeras
iniciativas de investigación relacionadas con los sistemas de diálogo oral surgen a
principios de los años 80. El origen de esta área de investigación está ligado a dos
grandes proyectos: el programa DARPA Spoken Language System en E.E.U.U y Es-
prit SUNDIAL en Europa. DARPA se centraron en usar las tecnologías del habla
al dominio de la reserva de vuelos vía telefónica ([Walker et al., 2001]). El proyecto
SUNDIAL trataba con información sobre horarios de avión o tren en cuatro idiomas
europeos. Esta investigación fue el origen de otros numerosos proyectos financiados

12
Capítulo 2. Sistemas de interacción o diálogo
por la Comunidad Europea relativos principalmente al modelado del diálogo, por
ejemplo VERMOBIL, DISC, ARISE, CSELT, LIMSI, etc.
Un sistema de diálogo oral tradicional suele ser un sistema que, para gestionar de
forma exitosa la interacción con los usuarios, incorpora cinco módulos: reconocimien-
to automático del habla (Automatic Speech Recognition o ASR), entender el lenguaje
natural (Natural Language Understanding o NLU ), gestión del dialogo (Dialog Ma-
nager o DM ), generación del lenguaje natural (Natural Language Generation o NLG)
y conversión de texto a voz (Text to Speech o TTS ). Ver fig 2.2.
Figura 2.2: Esquema clásico de un sistema de diálogo sin multimodalidad. Este tipo
de sistemas se usa frecuentemente en sistemas de atención automática de llamadas
(call centers). La voz representa el único modo de entrada y salida de información
del sistema.
En los años 90 se introduce la capacidad de multimodo, en ese sentido destaca
Communicator. Este proyecto, que forma parte de la iniciativa DARPA, tuvo como
objetivo el desarrollo de tecnologías del habla novedosas que pudiesen emplear como
entrada no sólo la voz sino también otras modalidades. Los sistemas desarrollados
en E.E.U.U y Europa eran capaces de interactuar con los usuarios en múltiples do-
minios, en los cuales el usuario y el sistema podían iniciar la conversación, cambiar

2.2. Evolución histórica de los sistemas de interacción
13
de tema o interrumpirse. En el se basaron otros proyectos como el Carnegie Mellon
Communicator ([Rudnicky & Thayer, 1999]). Las líneas de investigación durante es-
tos años estuvieron relacionadas con la mejora de las tasas de éxito de los diversos
módulos de los sistemas de diálogo, sobre todo en la precisión del reconocedor de voz
y la independencia del locutor. A finales de los años 90 y con la proliferación de la
telefonía móvil, la investigación puso el foco en mejorar la interacción en ambientes
muy ruidosos ([Lamel, 2002],[Gauvain, 2002]), y de manera general en aumentar la
robustez de los módulos anteriormente presentados.
A partir de 2003, los expertos han propuesto objetivos de más alto nivel, tales
como proveer al sistema de razonamiento avanzado (mediante planificación, agentes,
sistemas de aprendizaje automático), facultad de adaptación, proactividad, multi-
modalidad y multilingüismo. Estos nuevos objetivos hacen referencia al sistema en
su conjunto y representan tendencias importantes que se alcanzan, en la práctica, a
través del trabajo común en diversas áreas y diversos componentes del diálogo. Así
en contraste con la década anterior cuando los objetivos se definieron por cada área
(módulo), las tendencias actuales de investigación se definen en grandes objetivos
compartidos.
La proactividad es necesaria para que las máquinas pasen de ser consideradas
herramientas y se conviertan en verdaderas entidades conversacionales. Los sistemas
proactivos tienen la capacidad de entablar una conversación con el usuario incluso
cuando este aún no haya solicitado explícitamente la intervención del sistema.
El interés por el desarrollo de sistemas con los cuales obtener una conversa-
ción tan natural y rica como la producida entre seres humanos, fomenta la in-
vestigación sobre interfaces multimodales. En ellas, al contrario que con el
uso de las interfaces tradicionales existe flexibilidad en los modos de entrada y
de salida. Los primeros sistemas de diálogo multimodales combinaban el habla
con mapas gráficos ([Cheyer et al., 1998]) o con escritura ([Waibel & Suhm, 1997])
. La mayoría de estos sistemas usan la multimodalidad a la entrada o a
la salida del sistema. Es en la década de 2000 cuando nuevos proyectos co-
mo Smartkom ([Wahlster, 2003a, Wahlster, 2001a, Wahlster, 2001b, Wahlster, 2006,
Reithinger & Alexandersson, 2003]) se han dirigido en lograr la multimodalidad tan-
to en la entradas del sistema como en la salidas del sistema, lo que se conoce como
simetría multimodal. El citado proyecto Smartkom, con numerosas publicaciones,
patentes y productos comerciales, introduce un sistema de diálogo en el que la sime-
tría multimodal es su principal virtud. En este sistema se habla de fusión multimodal
de las entradas al sistema de diálogo, y de fisión multimodal, de las posibles salidas del
sistema([Wahlster, 2003b]). La aportación de Smartkom no sólo radica en tratar esta
multimodalidad de entrada y salida, sino también en los mecanismos de: gestión del
diálogo, desambiguación mutua, sincronización de las entradas multimodales, resolu-
ción de elipsis multimodal. Sin embargo, su campo de acción no es el de la robótica,

14
Capítulo 2. Sistemas de interacción o diálogo
sino interacción causal en aeropuertos, estaciones de tren, hoteles, restaurantes, etc.
La adaptabilidad se refiere a la adaptación del sistema de diálogo a cada usuario
particular. Los usuarios novatos y los usuarios experimentados pueden desear que el
interfaz se comporte de forma diferente. Otro ejemplo de adaptabilidad es el multilin-
güismo, un mismo sistema de dialogo puede reconocer y expresarse en varios idiomas,
en función del idioma del locutor. Tal y como se describe en ([Jokinen, 2003]) , existen
dos niveles en los que el sistema puede adaptarse al usuario. El más simple es a tra-
vés de perfiles de usuario, con las particularidades de cada usuario, idioma preferido,
nivel de experiencia actual con el sistema, edad, nombre, interacción sobre su tipo de
voz, etc. Un enfoque mas complejo, trata de adaptarse a los aspectos más dinámicos
del usuario, como son sus intenciones y el estado emotivo del mismo. Siguiendo esta
aproximación, surge la computación afectiva.
Desde 2004, existen numerosos proyectos basados en la inteligencia emocional o
computación afectiva para mejorar los sistemas de diálogo. Los sistemas de diálogo con
inteligencia emocional tratan el comportamiento emocional del usuario para mejorar
la interacción entre ambos, reduciendo el número de interrupciones, mal entendidos
y en general frustración con el sistema ([Martinovsky, 2006]).
En cuanto a la portabilidad, trata sobre la independencia del dominio, del idioma
y de la tecnología. Idealmente, los sistemas deberían poder trabajar en diferentes
dominios de aplicación, o al menos ser fácilmente adaptables entre ellos.
En este trabajo se ha añadido un nuevo concepto a los ya presentados en la
evolución de los sistemas de diálogo. Este concepto es el de multisonido (ver la fig.
2.3). Se trata de usar el canal de audio de entrada y salida del sistema para funciones
adicionales al modo verbal (entender y generar voz). Entre estas funciones destacan
la capacidad de analizar el mensaje verbal para obtener la emoción con la que se
comunica el interlocutor, analizar las diferentes señales de audio que se reciben por
cada micrófono para intentar localizar el origen espacial de la fuente sonora, analizar el
nivel de excitación del entorno, identificar y verificar el interlocutor, expresar sonidos
no verbales o generar melodías de voz (capacidad de cantar).
2.3.
Los sistemas de interacción en robótica social
Hasta ahora, se ha descrito qué es el diálogo natural y cómo sirve a los humanos
para transmitir ideas, conocimientos, sentimientos, etc. por medio de diversos canales
de comunicación, siendo el verbal el que cobra mayor importancia. Posteriormente se
ha hablado de los sistemas de interacción natural que tratan de imitar la manera en
que se comunican los humanos, para adaptarlo a la comunicación humano-máquina.
Además se ha visto como estos sistemas han evolucionado a lo largo de las últimas
décadas. Sin embargo, no se ha hablado de sistemas de interacción/diálogo aplicados
a nuestro campo de investigación: la robótica social.

2.3. Los sistemas de interacción en robótica social
15
Figura 2.3: Un sistema de diálogo multisonido usa el canal de audio de entrada y
salida para más tareas que procesar o generar voz (modo verbal de un sistema de
diálogo clásico). Entre estas tareas adicionales, destacan mecanismos para captar
emociones, detectar la excitación del entorno, localización de la fuente sonora, detectar
la actividad de voz, identificar y verificar el interlocutor, expresión de sonidos no
verbales, etc.

16
Capítulo 2. Sistemas de interacción o diálogo
En este trabajo, se entiende un un robot social como aquel que interactúa y se
comunica con las personas, de forma sencilla y agradable, siguiendo comportamientos,
patrones y normas sociales. Por ello, necesita de ciertas capacidades que se enmar-
can dentro del dominio conocido como inteligencia social. La mayoría de los robots
actuales funcionan relativamente bien en entornos controlados, como ­ por ejemplo ­
los laboratorios, pero surgen problemas cuando operan en entornos con condiciones
variables, como oficinas, casas o fábricas. No obstante, es de esperar que en poco
tiempo el robot social se convertirá en un componente habitual en la vida de cual-
quier humano, como alguna vez lo hizo el teléfono, la televisión, el automóvil, y la
computadora personal.
Como se ha comentado, la implementación de sistemas de diálogo dentro del campo
de la robótica no sigue el mismo nivel de desarrollo que los sistemas vistos en la
sección anterior. Esto es debido principalmente, a que los robots tienen cuerpo físico
y se mueven por el entorno natural. Por tanto, los sistemas de diálogo tienen que estar
coordinados con los sistemas de percepción y actuación dentro de un entorno real,
variable, y desestructurado, siendo una tarea mucho más compleja que la realizada
en laboratorios, en call-centers o para el control de un smartphone. Como se ha
comentado en la introducción, es precisamente en el ámbito de la robótica social,
donde la multimodalidad cobra su mayor importancia, debido a la variedad sensitiva
y expresiva de los robots sociales, donde el número de sensores y actuadores es más
elevado que en cualquier otro sistema [Cheyer et al., 1998] [Gorostiza et al., 2006a]
[Niklfeld et al., 2001] [Seneff et al., 1996] [Wahlster, 2003a] [Waibel & Suhm, 1997].
En sentido general, un sistema multimodal soporta la comunicación con el usua-
rio a través de diferentes modalidades como la voz, los gestos, la escritura, sonidos
no verbales, etc.[Laurence & Nigay. Coutaz, 1993]. Literalmente, "multi" se refiere a
"más de uno" y el termino "modal" cubre la noción de "modalidad" así como la de "mo-
do". Modalidad se refiere al tipo de canal de comunicación utilizado para transmitir o
adquirir información. También abarca a la forma en que se expresa o se percibe una
idea, o la manera en que se realiza una acción. Nuestra definición de multimodalidad
transmite dos características principales que son relevantes para el diseño de software
de los sistemas multimodales: la fusión de diferentes tipos de datos desde/hacia dife-
rentes dispositivos de entrada/salida (E/S), y las limitaciones temporales impuestas
en el procesamiento de información desde/a dispositivos de E/S.
Hasta la fecha, no se encuentra mucha literatura sobre la implementación de sis-
temas de dialogo multimodales en HRI. En esta sección, se describen los principales
sistemas que se pueden encontrar:
Para el robot Jijo-2, en el artículo [Fry et al., 1998] se presenta un sistema de
diálogo que únicamente usa la modalidad de la voz como medio de interacción. En
otros, más avanzados se introduce el concepto de multimodalidad, por citar algu-
nos: [Cassimatis et al., 2004], [Perzanowski et al., 2001a], y [Lemon et al., 2002]. En

2.3. Los sistemas de interacción en robótica social
17
ellos la información es transmitida verbalmente y mediante pantallas táctiles. Ambas
fuentes de información complementaria son fusionada de manera que son capaces de
resolver frases como: "vete allí", al mismo tiempo que se apunta con el dedo una lo-
calización en el mapa de la pantalla táctil. En [Lemon et al., 2002], la interfaz visual
es también usada por el sistema de diálogo para mostrar vídeos al mismo tiempo que
se sintetiza voz. Por ejemplo, el robot pregunta "¿Es ese el coche rojo que estabas
buscando?", mientras se muestra en la pantalla táctil el flujo de imágenes que el robot
percibe a través de su cámara.
En [Hüwel et al., 2006] y [Toptsis et al., 2004] se presenta el robot Biron (ver Fig.
2.4). Su sistema de diálogo fusiona conjuntamente información verbal con información
gestual, siendo capaz de resolver oraciones como: "esto es una planta", mientras se
señala con el dedo a la planta. Este tipo de fenómenos, en que el artículo demostrativo
(en este caso "esto") es sustituido por el objeto físico que se señala, se le conoce como
deíxis verbal
1
.
Figura 2.4: El robot Biron es un robot móvil y social capaz de interactuar con las
personas. Construido en la universidad de Bielefeld (Alemania) y presentado en 2004 .
La interacción es controlada por un sencillo sistema de interacción natural multimodal
basado en voz y una pantalla táctil.
Ademas, sistemas con fusión multimodal han sido usados en varios trabajos de
1
es la parte de la semántica y la pragmática que está relacionada con las palabras que sirven para
indicar otros elementos. Palabras como tú, hoy, aquí, esto, son expresiones deícticas, que nos sirven
para señalar personas, situaciones, lugares, etc. En pragmática, las expresiones deícticas dependen,
para su correcta interpretación, del contexto del hablante, sobre todo del contexto físico, de los
elementos extralingüísticos.

18
Capítulo 2. Sistemas de interacción o diálogo
"sistemas de programación natural". Por ejemplo, en [Iba et al., 2002] un robot as-
piradora es programado usando gestos y voz, por lo que el robot es capaz de fusio-
nar dicha entrada multimodal para inferir acciones que el usuario quiere que realice.
Trabajos similares pueden ser encontrados en [Dominey et al., 2007], donde el robot
HRP-2 (ver Fig. 2.5) fusiona información visual y verbal para la manipulación de
objetos.
Figura 2.5: El robot social HRP-2 integra en su cabeza una cámara y un array de
micrófonos que le permiten interactuar con humanos mediante un sistema de inter-
acción bimodal (visión y voz). Fue presentado en 2004 por el instituto técnico AIST
de Japón
.
En [Stiefelhagen, 2004], Stiefelhagen presenta un sistema multimodal que usa voz,
gestos y el análisis de la orientación de la cabeza del usuario. Los componentes son:
reconocimiento de voz, seguimiento de cara y brazos en 3D, reconocimiento de gestos
de apuntar, reconocimiento de la pose de la cara, un gestor de diálogo, síntesis de voz,
una plataforma móvil y un cámara de visión estéreo. Cada uno de estos componentes
es descrito en el artículo conjuntamente con resultados experimentales. El trabajo
y los componentes presentados constituyen los bloques básicos para la interacción
multimodal. Estos son usados por robot humanoides cooperativos del grupo de trabajo
alemán (Sonderforschungbereich).
En los últimos tiempos, otros proyectos se han dirigido hacia el desarrollo pleno de
la multimodalidad a la entrada y salida del sistema: (simetría multimodal). Como
ya se mencionó, por sistema de diálogo con simetría multimodal se entiende, que se
gestiona tanto la entrada multimodal como la salida multimodal, no teniendo por qué
ser exactamente el mismo número de canales usados en ambos casos. La gestión de
la entrada multimodal se conoce como fusión multimodal, mientras que la gestión de
la salida multimodal se conoce como fisión multimodal. No obstante, resulta difícil
encontrar en la literatura sistemas de interacción con simetría multimodal aplicados
al campo de la robótica social.

2.4. Resumen
19
2.4.
Resumen
En las dos últimas décadas estos sistemas han ido evolucionando, desde una ver-
sión clásica a principios de los años 80, con básicamente cinco módulos (ASR, NLP,
DM, NLG, TTS)
2
, hasta los modernos sistemas actuales, que incluyen nuevos com-
ponentes y multimodo. El uso tradicional de los sistemas de diálogo telefónicos se
está desplazando hacia nuevas áreas. Es en su aplicación práctica en el campo de la
robótica social, donde el multimodo logra su máxima expresión. Recientes trabajos
han supuesto avances en el estado del arte incorporando nuevos componentes, con
el objetivo de conseguir interacciones más naturales. Además del multimodo, se han
introduciendo mejoras en la interacción relativas a: la proactividad, la adaptabilidad,
la gestión de emociones, y la portabilidad.
2
Ver glosario de términos en el apéndice primero

20
Capítulo 2. Sistemas de interacción o diálogo

CAPÍTULO
3
Robotics Dialog System (RDS): propuesta de un sistema de
interacción natural
name,
language,
age,
voiceprint,
experience,
dialogHistory
User
Profile
Automatic
Speech
Recognition
(ASR)
Audio
Extraction
Features
Natural
Language
Proccesing
(NLP)
User
Localization
Emotion
Detection
Multimodal
Fusion
(NLSML)
DIALOG
MANAGER
IDIM
DIALOGS: VXML
FILES
Natural
Language
Generation
(NLG)
Emotional
Text To
Speech (eTTS)
Sing
Generaton
(Vocaloid)
Non-Verbal
Sound
Generation
text
features
features
semantic:
atribute-value
localization
emotion/arousal
User Communicative Act xml
vxml
song
semantic,emotion,features
semantic, language,
emotion, character
words,language,
emotion, character
User
Identification
name
features
AUDIO
acustic signal
VOICE
REAL-TIME
SOUNDS
MUSIC
Engagement
Gestures
MOTOR/VISUAL
GESTURES
gesture
Body
Sensibility
TOUCH
capacitive signal
body part
VISION
images
Robot
Emotional
State
emotion
RFID
VISION
OCR
text
written
text
RFID
Reader
MULTIMODAL FISION
LASER
distance
information
Gesture
Recognition
rfid card
text
grid
points
gesture
image
Google/
Microsoft
Translate
Wolfram
Alpha
"La mejor forma de predecir el futuro es implementarlo." -- David Heinemeier
Hansson
21

22
Capítulo 3. Robotics Dialog System (RDS): propuesta de un sistema de interacción
natural
3.1.
El ecosistema
3.1.1.
Entorno software
El sistema de interacción
1
que se presenta a continuación está formado por mul-
titud de módulos que conviven a su vez con otros pertenecientes a la arquitectura de
control. La arquitectura de control se encarga de gestionar todas las acciones, tareas,
y procesos del robot. Entre estas tareas algunas tienen que ver con la interacción, y
por lo tanto con el sistema de interacción, mientras que otras tienen que ver con otros
aspectos, como pueda ser la toma de decisión, la exploración del entorno, etc.
Siguiendo un esquema basado en la modularidad y la abstracción (ver Fig. 3.1)
se puede entender el ecosistema en el que funciona el sistema de diálogo. En el nivel
inferior se encuentran los componentes hardware: sensores, motores, computadoras,
etc. Cada computadora ejecuta un sistema operativo; en el caso de nuestros robots,
concretamente la distribución Ubuntu de Linux. A su vez, cada sistema Ubuntu,
ejecuta la arquitectura de control robótica. La arquitectura de control es capaz de
comunicar los distintos módulos que la conforman, proporcionando los mecanismos
de comunicación necesarios. A lo largo de los años que ha durado la elaboración de
la tesis doctoral, esta arquitectura de control ha ido evolucionando.
Partiendo de una arquitectura definida teóricamente conocida como AD (arqui-
tectura automática-deliberativa), que fue descrita e implementada en trabajos previos
[R. Rivas, A. Corrales, R. Barber, 2007, Barber & Salichs, 2001a], se ha ido evolucio-
nando hasta llegar a la arquitectura actual: una arquitectura híbrida entre AD y el
nuevo "estándar de facto" en las arquitecturas robóticas, la arquitectura ROS (Robot
Operating System) [Quigley et al., 2009]. Esta nueva arquitectura de control, que se
la puede denominar como AD-ROS, permite la convivencia de cualquier módulo desa-
rrollado en "la antigua AD" y "la moderna ROS", de manera que se conserva todo el
trabajo desarrollado durante años por nuestro grupo de investigación y se incorpora
la posibilidad del uso de los miles de módulos desarrollados por la comunidad ROS.
Esto, posibilita que cualquiera de los componentes desarrollados para este trabajo,
y del sistema de diálogo completo, puedan ser usados por cualquier investigador, de
cualquier lugar del mundo, sobre cualquier robot capaz de ejecutar ROS. La arqui-
tectura de control facilita la tarea de distribuir el software, ya que cualquier módulo
puede estar corriendo en cualquier computador, incluso fuera del robot; en este senti-
do, la única restricción es dada por el módulo (o los módulos) que necesite interactuar
directamente sobre un actuador y/o sensor, ya que necesitará comunicarse con él (de
manera local o a través de la red).
1
Recordar que durante todo el documento se usa indistintamente los términos de "sistema de
interacción" y "sistema de diálogo", ya que el diálogo es entendido como un proceso de interacción
multimodal

3.1. El ecosistema
23
Figura 3.1: El sistema de interacción propuesto (RDS) convive con otros sistemas
pertenecientes a la arquitectura de control. En la figura se representa el sistema de
interacción RDS, el sistema de toma de decisión ("Decision Making"), el sistema
de navegación por el entorno ("Navigation"), y el secuenciador ("Sequencer "). Estos
sistemas se comunican entre sí mediante diversos mecanismos de comunicación que
proporciona la arquitectura de control, en este caso la arquitectura ROS. A su vez
la arquitectura de control ROS corre sobre sistemas operativos Ubuntu (una de las
distribuciones más populares de Linux).

24
Capítulo 3. Robotics Dialog System (RDS): propuesta de un sistema de interacción
natural
Dentro de la arquitectura robótica AD-ROS conviven multitud de sistemas: el
sistema de toma de decisiones, el sistema de navegación, el secuenciador, etc. En ese
sentido, el sistema de diálogo es un sistema más dentro de la arquitectura de control,
capaz de interactuar con el resto de sistemas, proporcionándoles la capacidad y la
abstracción de realizar una interacción de alto nivel con el usuario.
3.1.2.
Entorno hardware
Actualmente, el sistema RDS constituye el sistema de interacción de los robots
desarrollados por el grupo de trabajo de robots sociales del RoboticsLab
2
. Está siendo
utilizado con éxito en los robots Maggie, Mopi, y Flory. Recientemente, se ha incor-
porado también en dos nuevas plataformas: el robot Mini, enmarcado en un proyecto
de investigación incipiente en colaboración con la fundación Alzheimer
3
(ver Fig. 3.2),
y los robots del proyecto europeo Monarch
4
.
El robot social Maggie constituye una plataforma de investigación so-
bre la que han versado numerosos trabajos del grupo, por citar algu-
nos [Gonzalez-Pacheco et al., 2011, Alonso-Martin et al., 2011, Salichs et al., 2006a,
Gorostiza et al., 2006b]. En estos trabajos, el robot Maggie ha sido ampliamente des-
crito. En este trabajo ha sido la plataforma preferida del autor, puesto que consta
con el mayor tipo de modalidades de comunicación posibles, además de ser el primero
de los robots creados y con el que comenzó el desarrollo de esta tesis.
Como se ha comentado, el sistema también ha sido probado satisfactoriamente
en los demás robots sociales del grupo
5
. El robot modular Mopi, es el encargado de
dotar de movilidad al robot modular Flory.
Recientemente se está trabajando en la integración del sistema en la nueva plata-
forma robótica destinada al cuidado y estimulación de personas mayores con proble-
mas de Alzheimer.
3.2.
La multimodalidad soportada por el sistema
El sistema RDS está concebido para establecerse como el sistema básico de inter-
acción en cualquier robot que use la arquitectura de control ROS. A continuación se
va a detallar cuales son estos canales de entrada y salida que soporta nuestro sistema
6
.
2
http://roboticslab.uc3m.es/roboticslab/
3
http://cuidadoalzheimer.com/tag/uc3m/
4
https://mis.u-picardie.fr/R-Discover/images/stories/workshop/sequiera_erf.pdf
5
El sistema ha sido probado, pero no al mismo nivel que el robot Maggie. Esto se debe a que
se han realizado numerosos shows en conferencias, reuniones, televisiones con el robot Maggie, y no
tantos con el resto de robots, que se encuentran actualmente en un nivel de menor madurez
6
Pese a que el sistema es válido para cualquiera de los robots que presenten algunos o todos estos
canales de entrada y salida, esta descripción se centra en el robot Maggie. Sobre esta plataforma

3.2. La multimodalidad soportada por el sistema
25
Figura 3.2: Los robots sociales construidos y programados por el grupo de robots
sociales de la Universidad Carlos III sirven como plataforma para numerosos trabajos
de investigación. Estos robots han servido como soporte para la realización del trabajo
aquí presentado, especialmente el robot social Maggie (a la izquierda en la figura)
3.2.1.
Modos de entrada de información
Audio. Para recibir audio, es necesario del uso de uno o varios micrófonos si-
tuados estratégicamente. En el robot Maggie, el audio es recibido a través de
los micrófonos incorporados en su cuerpo. En la base del mismo, formando una
circunferencia de 40 cm de radio y a 21 cm del suelo, se encuentran 8 micrófonos
que se conectan por USB al ordenador interno del robot. Estos 8 micrófonos se
usan fundamentalmente para tareas de localización de la fuente sonora. Para el
análisis de voz, el robot incorpora dos micrófonos en la cabeza. Para una in-
teracción en entornos especialmente hostiles (mucho ruido ambiental), también
es posible interactuar con el robot mediante auriculares inalámbricos o blue-
tooth
7
, con la consiguiente perdida de naturalidad (ver el capítulo 6 donde
se describe todo con mayor nivel de detalle). El audio captado por el robot se
usa fundamentalmente para las siguientes tareas: reconocimiento de voz basado
en gramáticas, reconocimiento de voz de texto libre, detección de emociones
en la voz, localización espacial de usuarios, cálculo de nivel de arousal (excita-
ción) del entorno, generación de sonidos y acompañamiento musical que casen
perfectamente con la voz recibida.
de investigación se han realizado la mayor parte de las pruebas, y consta de todos los canales de
entrada y salida aquí enumerados
7
http://en.wikipedia.org/wiki/Bluetooth

26
Capítulo 3. Robotics Dialog System (RDS): propuesta de un sistema de interacción
natural
Visión. El robot puede estar dotado de tres mecanismos basados en visión de
percibir el entorno físico que le rodea: mediante cámara web (Maggie la incor-
porada en su boca
8
), cámara de profundidad (Maggie, usa una cámara Kinect
9
) y telémetros laser (Maggie incorpora un láser situado encima de la base móvil
10
). Estos sensores están dedicados a tareas, algunas actualmente en desarrollo,
de: navegación por el entorno, detección e identificación de usuarios, detección
de gestos y poses, detección de objetos y lectura de texto escrito (OCR).
RFID. El robot puede estar equipado de uno o varios lectores de etiquetas de
radio frecuencia (RFID), concretamente el robot Maggie, consta de varios lec-
tores incorporados en su cuerpo, uno en la cabeza y otro en la base, ambos
de corto alcance (unos 20 cm. para leer una tarjeta), y otros dos en sus cos-
tados de mayor alcance (unos 100 cm. aproximadamente). La interacción por
etiquetas está destinada fundamentalmente a tareas de identificación de obje-
tos, como por ejemplo medicamentos, o incluso al control del robot por diálogos
por etiquetas. En este modo por etiquetas de radio frecuencia, cada una de ellas
representa, mediante un dibujo adecuado (pictograma), cada una de las posi-
bles habilidades del robot
11
. Este tipo de interacción es adecuada para niños
pequeños, personas muy mayores o entornos muy ruidosos donde la interacción
por voz se ve notablemente afectada.
Tacto. El robot puede estar dotado de varios sensores capacitivos
12
capaces de
detectar cuándo el usuario está tocando el robot en la parte del cuerpo donde
esta situado dicho sensor. El sensor capacitivo no es capaz de notar diferencias
de presión en el tacto, siendo únicamente binario (tocado / no tocado). Se usa
como posible de entrada de información para el sistema de diálogo, así como
para simular cosquillas en el robot.
Smartphones
13
y tablets
14
. Es posible también la entrada de información me-
diante la tablet incorporada en el pecho del mismo o mediante teléfonos in-
teligentes. En ambos se presentan un conjunto de opciones (dependiendo del
diálogo y la finalidad concreta de la interacción), que el usuario puede ir acti-
vando/desactivando mediante sus dedos.
8
http://www.logitech.com/es-es/webcam-communications/webcams
9
http://www.xbox.com/es-es/kinect
10
http
: //www.sick.com/group/EN/home/products/product
p
ortf olio/optoelectronic
p
rotective
d
evices/P ages/saf ety
l
as
11
El repertorio de habilidades del robot Maggie es muy variado. Cada habilidad tiene su tarjeta
de radio frecuencia asociada
12
http://en.wikipedia.org/wiki/Capacitivesensing
13
http://en.wikipedia.org/wiki/Smartphone
14
http://en.wikipedia.org/wiki/Tabletcomputer

3.3. Componentes de RDS
27
3.2.2.
Modos de salida de información
Como sistema de diálogo multimodal simétrico, la multimodalidad se presenta
tanto a la entrada del sistema como a la salida del mismo, por lo que son necesarios
diversos canales de salida o expresión de información:
Audio. El robot Maggie tiene un sistema de cuatro altavoces situados debajo
de su cabeza, los cuales permiten comunicarse con el usuario mediante voz y
sonidos. Estos altavoces son usados para la generación de voz con emociones,
sonidos no verbales, generación musical y reproducción de música.
Gestos expresivos del diálogo (o como se conoce en inglés, "engagement ges-
tures"). Mediante brazos, cabeza, párpados y base móvil el robot es capaz de
realizar gestos que complementan el diálogo. Dentro de este repertorio de gestos
se encuentran algunos como: negaciones, afirmaciones, seguir con la mirada al
usuario, baile, navegación por el entorno. Estos gestos se realizan de manera
sincronizada con la voz y los sonidos mediante el propio gestor de diálogo.
Infrarrojo. Maggie es capaz de controlar electrodomésticos mediante comunica-
ción por infrarrojos. En este sentido, el robot incorpora un mando de infrarrojos
programable que permite emitir la señal adecuada para encender/apagar tele-
visores, aires acondicionados, cadenas musicales, etc.
3.3.
Componentes de RDS
El sistema de diálogo propuesto para nuestro robot (ver Fig. 3.3), necesita una
entrada de información coherente en el tiempo y de contenido semántico, obtenida
de fusionar la información que proporcionan cada uno de las entradas sensoriales
posibles.

28
Capítulo 3. Robotics Dialog System (RDS): propuesta de un sistema de interacción
natural
.-)'-%
*!!$
!)#(%-%)(
. %)
1-+-%)(
!-.+!,
-.+
(#.#!
+)!,%(#
,!+
)%3-%)(
')-%)(
!-!-%)(
.-%')
.,%)(
,!+
+)4!
-.+
(#.#!
!(!+-%)(
')-%)(
!1-
)
*!!$!
%(#
!(!+-)(
))%
)(
!+
).(
!(!+-%)(
-!1-
!-.+!,
!-.+!,
,!'(-%
-+%.-!/.!
)%3-%)(
!')-%)(+).,
('!
(#.#!
#!
/)%!*+%(-
!1*!+%!(!
%)#%,-)+2
,!+ )''.(%-%/!
-1'
/1'
,)(#
,!'(-%!')-%)(!-.+!,
,!'(-%(#.#!
!')-%)($+-!+
0)+ ,(#.#!
!')-%)($+-!+
,!+
!(-%4-%)(
('!
!-.+!,
.,-%,%#(
(##!'!(-
!,-.+!,
#!,-.+!
) 2
!(,%%%-2
*%-%/!,%#(
) 2*+-
%'#!,
))-
')-%)(
--!
!')-%)(
-!1-
0+%--!(
-!1-
! !+
%,-(!
%()+'-%)(
!,-.+!
!)#(%-%)(
+4 +
-!1-
#+%
*)%(-,
#!,-.+!
%'#!
))#!
%+),)-
+(,-!
)+'
*$
Figura
3.3:
Esquema
general
del
sistema
de
in
teracción
RDS.
A
la
derec
h
a
se
represen
tan
los
actuadores,
en
la
parte
inferior
los
sensores,
y
en
la
p
arte
cen
tral
el
gestor
d
el
diálogo.
En
tre
los
sensores
y
el
gestor
de
diálogo
se
ilustran
varios
dulos
que
p
ro
cesan
la
información
sensorial
para
en
tregarla
al
gestor
de
diálogo.
En
la
parte
derec
ha
se
encuen
tran
los
dulos
relacionados
con
la
expresividad
del
rob
ot.
El
esquema
general
del
sistema
RDS
actualmen
te
esta
siendo
mejorado
con
la
inclusión
de
un
n
u
ev
o
m
ó
dulo
d
e
"fisión
m
u
ltimo
dal"
que
actúe
d
e
in
termediario
en
tre
el
gestor
del
d
iálogo
y
los
dulos
expresiv
o
s
.

3.3. Componentes de RDS
29
El sistema de diálogo está compuesto por diversos componentes que realizan ta-
reas específicas de manera desacoplada y distribuida. Estos componentes se pueden
agrupar en:
1. Gestor del Diálogo (IDiM): se encarga de gestionar los turnos de comu-
nicación y dadas unas entradas de información, generar unas salidas. Es un
gestor basado en el paradigma de rellenado de huecos de información, con-
cretamente basado en el estándar Voice XML 2.1
15
extendido con funcio-
nes multimodales. Otros autores, entre los que destacan [Bennett et al., 2002]
Eberman,
[Eberman et al., 2002]
[Kibria Hellström, 2007]
[Lucas, 2000]
[Niklfeld et al., 2001], también usan este sistema de interacción, si bien casi nin-
guno de los estudios se ha realizado sobre robots sociales, estando la mayoría
de ellos centrados en entornos telefónicos o web.
Este paradigma trata de rellenar un hueco de información antes de pasar al
siguiente. Para rellenar cada uno de los huecos de información es posible hacerlo
mediante cualquiera de los canales de comunicación posible: voz, tacto, gestos,
etc. o la combinación de ellos en un mismo mensaje. Un ejemplo sencillo puede
ser intentar reservar un vuelo, en el que los huecos de información podrían
ser: hora de salida, hora de llegada, ciudad origen, ciudad destino y compañía
área. Todos estos huecos se pueden ir rellenando mediante sucesivas preguntas
y respuestas entre el usuario y el sistema, o mediante una única frase, como por
ej: "quiero salir de Madrid a las 7 de la mañana y llegar a París a las 9 de la
mañana con Raynair".
Recientemente se esta trabajando en la integración de un nuevo gestor de diá-
logo, conocido como Iwaki. Este gestor continua usando huecos de información
(slots), pero con la ventaja de que es capaz de planificar la interacción mediante
el uso de pre y post condiciones.
2. Módulo de fusión multimodal: cuando se habla de fusión multimodal es
importante resaltar que esta se puede hacer a dos niveles (ver Fig 3.4). En el
más bajo se encuentra la fusión que se realiza a nivel de módulos de percepción.
Veámoslo con un ejemplo, para la tarea de localizar una persona respecto al
robot, suele ser necesario de varias entradas de información que son fusiona-
das para conseguir una mayor precisión en dicha localización (audio, visión y
láser). Este tipo de fusión de información, al nivel más bajo, para obtener una
información más relevante semánticamente para el diálogo es lo que se entiende
como fusión multimodal de bajo nivel.
Aquí se hace referencia a un tipo de fusión multimodal de un nivel de abstracción
más alto, en el que toda la información semánticamente relevante para el diálogo
15
http://www.w3.org/TR/voicexml21/

30
Capítulo 3. Robotics Dialog System (RDS): propuesta de un sistema de interacción
natural
(que es suministrada por otros módulos) tiene que ser fusionada temporalmente
y entregada al gestor del diálogo. En este sentido, la fusión multimodal de
alto nivel tiene más que ver con aspectos temporales y de identificación de
los actos comunicativos que con las diversas fuentes de entrada de información
([Falb et al., 2007] [Shimokawa Sawaragi, 2001]).
Figura 3.4: Niveles de Fusión Multimodal
Por lo tanto, la multimodalidad del sistema de diálogo nos brinda la posibilidad
de comunicarnos con el sistema de diálogo por diferentes canales de comunica-
ción: voz, gestos, tacto, tarjetas de radio frecuencia, sonidos, etc. La información
o el mensaje transmitido simultáneamente por cada canal de comunicación con-
forma un mensaje comunicativo global a todos ellos. Por cada canal se transmite
cierta información que complementa la transmitida por el resto de canales. Es-
ta información que viaja por cada canal tiene cierto significado semánticamente
relevante para el gestor del diálogo, y es generada por los distintos módulos del
sistema de diálogo que trabajan directamente con los sensores del robot.
Es el módulo de fusión multimodal el que se encarga de agrupar la entrada de
información recibida por cada uno de los canales en paquetes de información

3.3. Componentes de RDS
31
mayores con un significado o mensaje global. En este mensaje global, que lo
se conoce como acto comunicativo, el canal o los canales usados carecen de
importancia. Por lo que, se puede afirmar que el módulo de fusión multimodal
proporciona al gestor de diálogo la abstracción necesaria para obviar los canales
usados para obtener la información relevante para el diálogo. Es la información
recibida en los actos comunicativos la que sirve al gestor de diálogo para rellenar
los huecos de información planteados en cada diálogo concreto.
3. Módulos de entrada de información: los componentes que trabajan sobre
las entradas sensoriales para procesar dicha información y entregar al Gestor de
Diálogo (IDiM) información relevante. Son los siguientes:
Reconocimiento automático del habla (ASR): Se encarga de traducir voz
a texto. Para ello, se ha implementado un sistema modular que permite
conectar varios reconocedores de voz, que pueden trabajar en paralelo sobre
las mismas muestras de audio. Actualmente se trabaja con el reconocedor
de voz basado en gramáticas de Loquendo y el reconocedor basado en el
servicio web de Google ASR.
Procesamiento del lenguaje natural (NLP): se encarga de extraer informa-
ción relevante del mensaje recibido ("semantic extraction"), con indepen-
dencia del canal por el que se ha recibido dicho mensaje (reconocimiento
de voz, de texto escrito, radio frecuencia...). Esta información extraída se
enriquece o complementa con información del mundo ("semantic enhace-
ment "). Esta información del mundo suele almacenarse en las llamadas
bases de conocimiento, por lo que el enriquecimiento semántico se lleva a
cabo mediante consultas a estas enormes bases de conocimiento.
El tipo de información extraída suele corresponder a: pares atributo-valor,
entidades, conceptos, la temática del discurso, "sentiment", expresiones
temporales, dirección de correo, etc. Existen numerosos desarrollos que
facilitan de manera comercial la extracción de esta información como son:
Semantria
16
, Bitext
17
, TextAlytics
18
, etc.
Las bases de conocimiento más usadas son Google FreeBase
19
, Wolfram
Alpha
20
, Classora
21
, etc.
16
https://semantria.com/
17
http://www.bitext.com/es/
18
https://textalytics.com/inicio
19
http://www.freebase.com/
20
http://www.wolframalpha.com/
21
http://www.classora.com/

32
Capítulo 3. Robotics Dialog System (RDS): propuesta de un sistema de interacción
natural
Conversor de texto escrito a texto máquina (OCR): reconoce y digitaliza
el texto escrito a mano, para ello se usan técnicas de OCR. Para mayor
detalle ver [Alonso-Martin et al., 2011].
Lectura de etiquetas de radio frecuencia (RFID): lee la información escrita
en etiquetas de radio frecuencia tanto activas como pasivas. Para ampliar
información consultar [A.Corrales, R.Rivas, 2009].
Identificación de usuarios: este componente se encarga de identificar al
usuario con el que está dialogando por su tono de voz. Para ello, en la fase
de registro del usuario con el sistema, el sistema guarda información del
timbre del usuario (voiceprints).
Identificación de emociones en los usuarios: las emociones del usuario son
captadas en función del tono de voz percibido por el sistema. Para ello,
es necesario construir un clasificador que determine que emoción se co-
rresponde, para dicho usuario, con las características sonoras extraídas de
su voz, las voiceprints y la historia previa con el diálogo. Para ampliar
consultar la publicación [Alonso-Martin et al., 2013b].
Localización de usuarios: este componente se encarga mediante el sistema
auditivo del robot, formado por 8 micrófonos y diferencias en amplitud de
la señal recibida por cada uno de ellos, de localizar el origen de la fuente
sonora. La localización sonora se apoya en la localización mediante láser
para determinar con mayor precisión dónde se encuentra el usuario. Con
esta información de disposición espacial, más la información que se han
obtenido previamente en experimentos proxémicos del robot con usuarios
reales, el sistema de diálogo puede determinar la situación más adecuada
del robot frente al usuario. Para profundizar se recomienda leer la publi-
cación [Alonso-Martín et al., 2012]. Recientemente se esta ampliando este
sistema por uno más avanzado y preciso que incluye la información de
profundidad suministrada por una cámara 3D.
Sistema del tacto: este componente es capaz de detectar cuándo una extre-
midad del robot ha sido tocada. Actualmente no es capaz de determinar la
presión ejercida por el usuario ni exactamente el gesto con el que ha sido
tocado.
Detección de poses del usuario: este componente se encarga de determinar
la pose, es decir de clasificar la posición del cuerpo del usuario de entre
las posibles. Es capaz de determinar si una persona está sentada, de pie,
señalando a la izquierda, derecha o al frente, entre otros. Este sistema usa
una cámara estereoscópica de profundidad y mecanismos de aprendizaje
automático.

3.3. Componentes de RDS
33
Otros: existen componentes que se encargan de facilitar la conexión de
entrada de información por tablet, smartphone o joypad.
4. Módulos de salida de información: los componentes que se encargan de
expresar o transmitir el mensaje suministrado por el gestor del diálogo (IDiM)
al usuario y que trabajan con las salidas del sistema. Ver la figura 3.3. Estos
componentes son:
Sistema de expresión verbal y sonora: el módulo de eTTS (texto a voz con
emociones) permite realizar tareas complejas, como son: gestionar la cola
de luciones, traducir textos entre mas de 40 idiomas, además de adoptar
distintos tonos de voz en función de los motores usados (Loquendo, Fes-
tival, Microsoft TTS y Google TTS ). El módulo de "Non-Verbal Sound
Generation" permite sintetizar sonidos no verbales en tiempo real, que
permiten expresar al robots mensajes de manera similar a los producidos
por la voz, pero en su propio lenguaje "robótico". Este tipo de sonidos se
generan mediante el lenguaje de programación musical Chuck
22
. "Sing Ge-
neration" permite que el robot sea capaz de cantar mediante el software
musical Vocaloid
23
.
Generación de lenguaje natural (NLG): Este sistema de se encarga de con-
vertir información codificada en la computadora a lenguaje natural enten-
dible por las personas. En la práctica se utiliza para construir frases en
tiempo real partiendo de una idea. De esta manera, se consiguen diálogos
más variados y naturales. Por ejemplo si la idea a transmitir es la de "sa-
ludar", puede ser convertido a los siguientes textos: "Hola, estoy encantado
de hablar contigo", o bien "Hola, amigo", entre otros. Este mecanismo de
convertir valores "semánticos" a "texto enlatado" puede hacerse de diver-
sas formas. En nuestro sistema se ha usado un modelo muy sencillo de
gramáticas o plantillas, muy similar a los usados en el reconocimiento de
voz.
Gestos expresivos: permite al robot mediante sus extremidades (brazos,
parpados, cabeza, cuello y base) realizar gestos típicos de cualquier diálogo,
como son, negaciones, asentimientos, exclamaciones, incluso pasos de baile.
Finalmente y aunque no es un componente propiamente dicho, el robot es
capaz también de comunicarse mediante imágenes proyectadas en el tablet-
PC, controlar componentes electrónicos mediante un mando infrarrojo,
reproducir música descargada bajo demanda de Internet.
22
http://chuck.cs.princeton.edu/
23
http://www.vocaloid.com/en/

34
Capítulo 3. Robotics Dialog System (RDS): propuesta de un sistema de interacción
natural
5. Otros módulos: además existen ciertos componentes presentes en el sistema de
diálogo, que comunican con servicios web, que suministran entrada de informa-
ción necesaria para el gestor de diálogo. Estos servicios usados son traductores
automáticos (Google Translate
24
y Microsoft Translate
25
), buscador semántico
(Wolfram Alpha
26
) y reproductor musical Goear (
27
).
3.4.
Principales características de RDS
Las principales características que describen al sistema aquí presentado son las
siguientes:
Interpretado. El sistema es interpretado, es decir se desacopla la especificación
del diálogo concreto a cada situación (en ficheros de texto plano XML) de
su interpretación y ejecución por el gestor del diálogo. Por lo tanto, se puede
hablar de dos partes: la parte software, que es el propio Gestor de Diálogo IDiM,
que ejecuta y interpreta los diálogos propiamente dichos. Y por otra parte, los
diálogos quedan especificados en ficheros XML
28
que establecen ciertos huecos
de información a rellenar.
Adaptable. El diálogo puede adaptarse a cada usuario en base a características
estáticas y dinámicas. Las estáticas son almacenadas en perfiles de usuario, que
son aprendidas durante la interacción mediante diálogo natural con el usuario:
idioma, nombre, edad y huellas de voz. Los factores dinámicos del usuario como
son la experiencia con el sistema, la emoción detectada (computación afectiva),
la situación espacial respecto al robot (proxémica) también sirven para persona-
lizar la interacción. Los factores dinámicos del propio robot, como es su estado
emocional también puede ser tenido en cuenta por cada diálogo específico. Esta
adaptabilidad también se refleja en el multilingüismo: el diálogo es capaz de
llevarse a cabo en multitud de idiomas.
Simétrico multimodal. La interacción puede ser llevada por varios canales de
entrada y salida de información. En este sentido, la multimodalidad se tiene en
cuenta tanto a la entrada del sistema (fusión multimodal) como en las salidas
(fisión multimodal). Los componentes del sistema de diálogo que lo convierten
en simétrico multimodal han sido mencionados previamente.
24
http://translate.google.es/
25
http://www.microsofttranslator.com/
26
http://www.wolframalpha.com/
27
http://www.goear.com/,http://www.splitcc.net/Downloads/playgoear.pl
28
http://en.wikipedia.org/wiki/VoiceXML

3.5. Resumen
35
Multisonido. Por multisonido se entiende un sistema en el que la entrada y sa-
lida sonora no se limita única y exclusivamente al reconocimiento y síntesis de
voz. La voz puede ser usada para más tareas, además de existir otros medios
sonoros no basados en voz. Siguiendo esta definición, el sistema multisonido
aquí propuesto es capaz de analizar el audio de entrada para: realizar locali-
zación sonora, clasificar la voz del usuario en emociones, detectar el nivel de
excitación-arousal del entorno, reconocer la voz, identificar al usuario. Es ca-
paz de sintetizar sonidos para: generar voz con emociones, generar sonidos no
verbales robóticos en tiempo real que aumentan notablemente la expresividad
del robot, expresarse musicalmente mediante cante y finalmente la capacidad
de reproducir de música online.
3.5.
Resumen
En este capítulo se presentó el sistema de interacción natural entre robots y huma-
nos llamado RDS. Este sistema convive con el resto de sistemas que forman parte del
sistema operativo que controla cada robot, AD-ROS. Se ha realizado una descripción
general del sistema y de los componentes que lo forman, los canales/modos que gestio-
na el sistema así como sus principales características. Una descripción pormenorizada
de cada componente se hace en los siguientes capítulos.

36
Capítulo 3. Robotics Dialog System (RDS): propuesta de un sistema de interacción
natural

CAPÍTULO
4
Gestión del diálogo
name,
language,
age,
voiceprint,
experience,
dialogHistory
User
Profile
Automatic
Speech
Recognition
(ASR)
Audio
Extraction
Features
Natural
Language
Proccesing
(NLP)
User
Localization
Emotion
Detection
Multimodal
Fusion
(NLSML)
DIALOG
MANAGER
IDIM
DIALOGS: VXML
FILES
Natural
Language
Generation
(NLG)
Emotional
Text To
Speech (eTTS)
Sing
Generaton
(Vocaloid)
Non-Verbal
Sound
Generation
text
features
features
semantic:
atribute-value
localization
emotion/arousal
User Communicative Act xml
vxml
song
semantic,emotion,features
semantic, language,
emotion, character
words,language,
emotion, character
User
Identification
name
features
AUDIO
acustic signal
VOICE
REAL-TIME
SOUNDS
MUSIC
Engagement
Gestures
MOTOR/VISUAL
GESTURES
gesture
Body
Sensibility
TOUCH
capacitive signal
body part
VISION
images
Robot
Emotional
State
emotion
RFID
VISION
OCR
text
written
text
RFID
Reader
MULTIMODAL FISION
LASER
distance
information
Gesture
Recognition
rfid card
text
grid
points
gesture
image
Google/
Microsoft
Translate
Wolfram
Alpha
"Todo el mundo en este país debería aprender a programar un ordenador, porque eso
te enseña a pensar."-- Steve Jobs
37

38
Capítulo 4. Gestión del diálogo
4.1.
Introducción
En el capítulo anterior se ha presentado los rasgos generales del sistema de diálogo
RDS en su conjunto, haciendo una descripción por módulos y funcionalidad. Este
capítulo se centra en describir el componente principal del sistema, ya que es el que
se encarga de la gestión del diálogo propiamente dicho.
Los gestores de diálogo implementados hasta la fecha en robots sociales suelen
estar fuertemente acoplados a una habilidad concreta del robot cuyo fin es bastante
específico. Esto supone una serie de limitaciones claras, tanto si se quieren realizar
modificaciones en el diálogo, como si el conjunto de habilidades del robot es amplio,
dinámico y variable. En este trabajo se presenta un nuevo gestor de diálogo, al que
se ha denominado IDiM, que separa el manejador de diálogo de la implementación
del diálogo en sí misma. De este modo, el manejador de diálogo carga, interpreta y
navega entre distintas implementaciones de diálogos en tiempo de ejecución. El gestor
presentado consigue unir las necesidades semánticas de cada habilidad interactiva del
robot, con una implementación de diálogo para cada habilidad. Se forma así un mapa
semántico o un contexto de diálogo concreto que se va modificándose de acuerdo a la
ejecución secuencial de cada una de sus habilidades.
En este capítulo se muestra el diseño e implementación del manejador de sistema
de diálogo dinámico, IDiM. La principal contribución del sistema es que es capaz
de cambiar el contexto del diálogo dinámicamente, esto es, sin hacer ningún cambio
en el sistema propiamente dicho. Otra ventaja de IDiM es que es capaz de manejar
diferentes e ilimitadas interfaces multimodales debido a su modo estandarizado de
representar la información relevante por todos los módulos de percepción. Finalmente,
y como ejemplo de su uso se presenta IDiM como un integrador de habilidades
1
, siendo
capaz de arrancar y parar mediante interacción natural cualquiera de ellas.
El hecho de que diferentes implementaciones de diálogos puedan ser cargados y
descargados en tiempo de ejecución tiene varias ventajas: sólo hay un gestor del diá-
logo (DMS) para cualquier número de diálogos; es posible asociar diferentes diálogos
para cada habilidad interactiva; el sistema hace sencilla la tarea de implementar nue-
vos diálogos, dado que es interpretado en tiempo de ejecución, puede ser modificado
sin necesidad de modificar el código fuente de la habilidad. El código fuente de la ha-
bilidad permanece mientras que el diálogo se especifica mediante un sencillo lenguaje
1
En el siguiente capítulo se mostrará detalladamente un diálogo implementado en el que el gestor
se encarga de ir activando o desactivando habilidades del robot. Por habilidad se entiende una
capacidad del robot para desempeñar una cierta tarea. El repertorio de habilidades del que consta el
robot Maggie es bastante amplio. Algunas de estas habilidades son puramente sensoriales, mientras
que otras son puramente motoras, otras en cambio son una combinación de ambos tipos. El nivel de
abstracción y complejidad de cada una de estas habilidades es muy variado, siendo muy común la
cooperación entre ellas para lograr tareas más complejas

4.2. Gestores de diálogo en robots sociales
39
en un fichero independiente, que no es necesario recompilar
2
.
4.2.
Gestores de diálogo en robots sociales
Esta sección corresponde con un estado del arte de los gestores de diálogo en la in-
teracción humano-robot atendiendo a lo que se ha considerado las características más
importantes extraídas del análisis de la literatura: estructuras de gestión del diálogo,
expresividad y multimodalidad, representación del conocimiento, conocimiento com-
partido, comunicación cooperativa y coordinada, diálogos y aprendizaje, conversación
multiparte, escenarios y métricas para una evaluación apropiada del sistema.
Hay algunas aproximaciones teóricas de alto nivel sobre un gestor de diálogo; tam-
bién hay implementaciones de gestores de diálogo de alto nivel para agentes virtuales.
Sin embargo, y poniendo énfasis en la importancia de un cuerpo físico y robótico
(embodiment) y cómo esta característica afecta a la interacción natural, este trabajo
se ha focalizado en la implementación y evaluación de estos sistemas en robots reales.
4.2.1.
Estructuras para la gestión del diálogo: arquitecturas y
escalabilidad
La gestión del diálogo ha sido ampliamente estudiada en sistemas de inteligencia
artificial (agentes y agentes virtuales). Analizando tales sistemas se pueden consi-
derar dos aproximaciones diferentes: gestores que están basados en patrones, y no
tienen en cuenta el significado semántico de las oraciones, como por ejemplo ELI-
ZA ([Weizenbaum, 1966]), AIML o ALICE ([Wallace, 2000]); y gestores que trabajan
usando algún tipo de razonamiento semántico o teoría de diálogo natural, como por
ejemplo TRINDI [Larsson et al., 2004], o, enfocándonos directamente a la robótica,
RavenClaw ([Bohus Rudnicky, 2009]).
Los gestores del diálogo (Dialog Management System: DMS) se encargan de man-
tener y actualizar la información del contexto del diálogo así como decidir la siguiente
acción a tomar, o el siguiente diálogo a ejecutar. En ese sentido, actúa como interfaz
entre los diversos componentes de la arquitectura de control y el usuario.
EL DMS elige que acto comunicativo (AC ) debe ser interpretado en un estado
concreto del diálogo. Normalmente, los posibles AC se encuentran codificados de
antemano por el desarrollador del sistema: en cada estado del diálogo, el desarrollador
ha codificado un conjunto posible de tipos de acciones y es el DMS el que elige la
apropiada de entre el conjunto de posibles.
La interacción natural responde a algunos patrones estándar de comportamiento
([Schegloff Sacks, 1973]). Algunos DMS aplicados a robótica están basados en esos
2
http://es.wikipedia.org/wiki/Compilador

40
Capítulo 4. Gestión del diálogo
patrones de interacción. Por ejemplo PAMINI DMS ([Peltason Wrede, 2010b]),
donde esos patrones son independientes de la tarea del diálogo para la que fueron
concebidos.
En [Henderson et al., 2008] se usa un método híbrido, que combina como estrate-
gias de gestión de diálogo ``aprendizaje por refuerzo"
3
con "aprendizaje supervisado"
4
.
El proceso de aprendizaje es hecho usando gran cantidad de ejemplos de diálogos de
un corpus. Este método fue aplicado en el sistema de diálogo COMUNICATOR.
Aproximaciones similares usando aprendizaje por refuerzo son encontradas en
[Goddeau Pineau, ], donde un método de aprendizaje por refuerzo fue aplicado
al sistema DIALER de ATT. El DMS seleccionaba entre una gran cantidad de po-
sibles actos comunicativos para alcanzar un objetivo concreto. Por ejemplo, obtener
un número de teléfono de una larga lista telefónica haciendo preguntas al usuario.
En otro trabajo, el estado del diálogo se corresponde con las intenciones del usua-
rio. Por ejemplo en [Roy et al., 2000] usando un pseudo POMDP (Parcialmente Ob-
servable Proceso de Decisión de Markov), el DMS es capaz de compensar la alta incer-
tidumbre del proceso de reconocimiento de voz (baja precisión), en base a mantener
"n" hipótesis del estado del diálogo simultáneamente, basándose en los resultados de
reconocimiento de voz obtenidos. Las acciones son las respuestas llevadas a cabo por
el sistema, de las cuales se tienen 20 diferentes (10 se corresponden a habilidades del
robot y las otras 10 para tareas de aclaración o confirmación). El POMDP planifica
sobre un espacio de creencias; cada creencia consiste en una distribución de probabi-
lidades sobre el conjunto de estados, representando la probabilidad de que el diálogo
se encuentre en ese determinado estado. Las observaciones son obtenidas a través del
reconocimiento de voz y como se ha comentados las acciones son las respuestas que
el sistema lleva a cabo (en este caso 20 posibles).
Existen otros gestores de diálogo basados en agentes inteligentes que colaboran
para llevar a cabo una determinada tarea. Son muy adecuados para tareas complejas.
Finalmente, se puede traducir la interacción entre agentes como un grafo o árbol
dinámico con reglas: precondiciones-postcondiciones, por ello también son conocidos
como sistemas basados en reglas.
Ravenclaw/Olympus [Bohus et al., 2007] o JASPIS [Turunen et al., 2005] se basan
3
Programas capaces de generalizar comportamientos a partir de una información no estructurada
suministrada en forma de ejemplos. Es, por lo tanto, un proceso de inducción del conocimiento.
4
Es una técnica para deducir una función a partir de datos de entrenamiento. Los datos de
entrenamiento consisten de pares de objetos (normalmente vectores): una componente del par son los
datos de entrada y el otro, los resultados deseados. La salida de la función puede ser un valor numérico
(como en los problemas de regresión) o una etiqueta de clase (como en los de clasificación). El objetivo
del aprendizaje supervisado es el de crear una función capaz de predecir el valor correspondiente
a cualquier objeto de entrada válida después de haber visto una serie de ejemplos, los datos de
entrenamiento. Para ello, tiene que generalizar a partir de los datos presentados a las situaciones no
vistas previamente.

4.2. Gestores de diálogo en robots sociales
41
en arquitecturas con varios agentes inteligentes, que consisten en módulos indepen-
dientes trabajando en paralelo para lograr una cierta tarea. Olympus está basado en
el CMU Communicator/Galaxy [Seneff et al., 1996]. Cada módulo está conectado a
los otros mediante un nodo central (hub). El DMS RavenClaw representa el dialogo
como un conjunto de árbol de nodos con sus respectivas pre y post condiciones.
4.2.2.
Expresividad y multimodalidad
La expresividad esta relacionada con cómo el robot puede expresarse usando to-
das sus modalidades, esto es, cómo afronta el problema de la "fisión multimodal".
Tradicionalmente la multimodalidad ha estado más relacionada con el problema de
"fusión", es decir, de cómo unificar o agrupar la información recibida por diferentes
módulos en un mensaje comunicativo coherente con información relevante para el
gestor del diálogo.
Desde un punto de vista verbal, las oraciones expresadas verbalmente son muy di-
ferentes de las escritas. Una oración verbal, incluye o puede incluir falsos comienzos,
dudas, repeticiones, frases cortadas o incompletas, y otras muchas variantes a lo largo
del tiempo. Estos factores dificultan el reconocimiento de voz, por ser componentes
básicos en la expresividad de lenguaje natural, dado que además de transmitir in-
formación puramente verbal, también transmiten cierta información no verbal, como
velocidad y ritmo comunicativo, características prosódicas como el timbre y frecuen-
cia de la voz, volumen, etc. que sirven para tareas como: identificación del usuario,
género, edad, intención, humor, aptitud, emoción, etc.
Por otro lado, el discurso es normalmente acompañado de expresiones no verbales
como acciones kinésicas
5
, indicadores visuales, aspecto físico del interlocutor, etc. Por
lo tanto, aparte del discurso, un robot que quiera llevar a cabo una interacción natural
por voz debería manejar estas modalidades no verbales de percepción y expresión
para reconocer/expresar gestos, disfluencias prosódicas
6
, mensajes audioviusales, etc.
de una manera sincronizada.
Los gestos en un robot normalmente son implementados usando un
5
La kinésica también es conocida con el nombre de comportamiento kinésico o lenguaje corporal.
También puede definirse como el termino para las formas de comunicación en los que se intervienen
movimientos corporales y gestos, en vez de (o además de) los sonidos, el lenguaje verbal u otras
formas de comunicación.
6
Los titubeos, las repeticiones, los falsos comienzos y las pausas representan disfluencias
lingüísticas. Los hablantes no tendemos a percibir la presencia de estas interrupciones en el ritmo
continuo del habla espontánea, a pesar de su frecuente ocurrencia. Se ha demostrado que las
vacilaciones o pausas vacías surgen normalmente tras un intervalo de siete u ocho palabras durante
el intercambio lingüístico. Para ampliar consultar: http://www.alonsoquijano.org/cursos2004/
animateca/recursos/Biblioteca%20virtual/Lectuario%202002/Febrero-Estudios%20de%
20linguistica/Eloy%20%20Juan%20de%20Dios.htm

42
Capítulo 4. Gestión del diálogo
diccionario de gestos, llama gestionario. Por ejemplo, los gestos del ro-
bot Leonardo ([Breazeal et al., 2004]) son basados en un gestionario; Robovie
([Ishiguro et al., 2002]) integra un gestionario dentro de los propios "prompts" a sin-
tetizar por el TTS (menajes "enlatados" con el texto a sintetizar por la herramienta
de texto a voz en los que se entremezclan gestos del diálogo). Otras aproximaciones,
no basadas en gestionarios, tratan de generar gestos icónicos sin dar una información
explícita del gesto a realizar.
En
los
sistemas
mostrados
en
[Cassimatis et al., 2004],
[Perzanowski et al., 2001b], [Lemon et al., 2002], y otros muchos trabajos simi-
lares, la información verbal es fusionada con gestos táctiles sobre una pantalla
capacitiva, que muestra algún tipo de información, como mapas y menús. Este
tipo de sistemas son capaces de interpretar oraciones como "ve allí" (mientras se
señala un punto en el mapa de la pantalla). En [Lemon et al., 2002] la interfaz
visual es también usada por el DMS para mostrar vídeos mientras se genera y
sintetiza el lenguaje verbal. Por ejemplo, preguntando "¿es ese el coche rojo que estás
buscando?" (mientras se muestra un vídeo de lo que la cámara del robot detecta).
En [Hüwel et al., 2006] y [Toptsis et al., 2004] el robot BIRON es presentado. Su
sistema de diálogo fusiona conjuntamente información visual con información verbal
(deíxis), por lo que es capaz de resolver oraciones como "eso es una planta (mientras
señala una planta)".
La fusión multimodal ha sido usada en algunos trabajos de "sistemas de progra-
mación natural". Por ejemplo, en [Iba et al., 2002] un robot aspiradora es programado
usando gestos y voz, con lo que el robot es capaz de fusionar dos canales de infor-
mación e inferir acciones que el usuario quiere llevar a cabo. Se encuentran trabajos
similares en [Dominey et al., 2007], donde el robot HRP-2 fusiona información visual
y verbal para manipulación de objetos.
El gestor de diálogo TRINDI ([Larsson et al., 2004]) ha sido usado en escenarios
e interacción humano-robot multimodales, donde ambos colaboraban para resolver
una tarea que requería diálogo en ([Burke et al., 2002]). Trabajos similares se han
realizado con agentes virtuales, usando el gestor DIPPER, una secuela de TRINDI
([Bos Oka, 2003]).
4.2.3.
Representación del conocimiento: modelo del mundo y
del usuario
Hablar con robots implica que el robot implementa o debería implementar un
modelo del mundo, sobre el que el sistema pueda cargar y grabar información sobre el
humano y el entorno con los que interactúa. Cómo representar ese modelo supone un
problema realmente importante, sin embargo ese modelo del mundo tiene que estar
unido al propio diálogo.

4.2. Gestores de diálogo en robots sociales
43
Una de las primeras organizaciones de diferentes elementos del discurso fue la
usada en [Grosz Sidner, 1986]. El contexto del diálogo, fue dividido en tres com-
ponentes diferentes: uno para la estructura de la secuencia de oraciones, otro para la
estructura del propósito o intención embebida en dicha oración, y otro componente
para el estado atencional, es decir, un registro "de los objetos, propiedades y relaciones
que son de interés en cada punto del discurso".
Un ejemplo robótico de un gestor que usa un modelo del entorno puede ser en-
contrado en [Kruijff et al., 2007]. En él, un robot móvil aprende características del
entorno. El sistema descrito representa como el entorno es estructurado usando onto-
logías. Las representaciones espaciales son realizadas en tres capas: mapa de métricas,
con información geométrica o de odometría
7
, para la navegación del robot; mapa to-
pológico, que divide el grafo de navegación en áreas delimitadas por "nodos puerta";
y finalmente el mapa conceptual que guarda nombres de áreas y objetos presentes en
ellas, y permite inferencias como que un "concepto" (habitación o objeto) pueda ser
verbalmente referenciado. La representación está unida con el diálogo mediante una
" `Combinatorial Categorical Grammar (CCG)" ' que representa oraciones (tanto de
reconocimiento como de generación de lenguaje) desde un punto de vista semántico.
En el sistema TRINDI ([Larsson et al., 2004]) o en DIPPER ([Bos et al., 2003])
el sistema de conocimiento es implementado con "estados de información" (EI). Bá-
sicamente cada EI esta formado por un conjunto de huecos de información asociados
con unas reglas de actualización (escritas en el lenguaje de programación lógica PRO-
LOG) con la siguiente estructura: nombre, condiciones, efectos. Esas reglas definen
cómo obtener la información. El principal objetivo del sistema es rellenar esos huecos
de información para cada EI. Cuando hay algún cambio en dichos EI, se dice que hay
un "movimiento en el diálogo" ([Traum, 2000]).
Los llamados sistemas basados en formularios, como cabía esperar por su nom-
bre, representan el diálogo como formularios anidados compuestos a su vez por hue-
cos de información a rellenar. El estándar W3C VoiceXML
8
implementa este ti-
po de paradigmas y ha sido llevado al campo de la robótica con éxito en siste-
mas tales como [Niklfeld et al., 2001], [Nyberg et al., 2002], [Bennett et al., 2002] o
en [Schmitz et al., 2008] donde el robot humanoide ROMAN es descrito. Este robot
social es capaz de buscar y encontrar gente en el entorno. El principal objetivo es
dialogar con ellos de manera natural. Su DMS está basado en una descripción XML
muy similar a la realizada por VoiceXML. Nuestro sistema, como se verá posterior-
mente a lo largo del capítulo, se corresponde con un sistema basado en formularios y
huecos de información.
7
La odometría es el estudio de la estimación de la posición de vehículos con ruedas durante la
navegación. Para realizar esta estimación se usa información sobre la rotación de las ruedas para
estimar cambios en la posición a lo largo del tiempo
8
http://en.wikipedia.org/wiki/VoiceXML

44
Capítulo 4. Gestión del diálogo
En los últimos tiempos, el modelo del mundo se está centrando, en lo que con-
cierne a los gestores de diálogo, en los usuarios. En este sentido, en sistemas como
[López-Cózar Callejas, 2006] desarrollado en la Universidad de Granada (España),
y nuestro propio sistema aquí presentado, mantiene un "perfil de usuario" de cada
uno de los usuarios conocidos en la interacción con el sistema. Este perfil de usuario
es almacenado en una base de datos, en la que se mantiene información relativa al
usuario, como son: el nombre, la edad, la experiencia, el idioma preferido, las carac-
terísticas de su timbre de voz, el esquema de colores de la vestimenta, la experiencia
total de uso con el sistema, la historia previa del diálogo, determinada información
proxémica, etc. Todos estos factores constituyen información muy valiosa para la
personalización/adaptación de los diálogos a cada usuario concreto.
4.2.4.
Conocimiento compartido
Los conceptos de "conocimiento compartido (Common Ground )" ([Clark, 1996])
y "campo de experiencia (Field of Experience)" ([Schramm, 1954] ) son introducidos
en sendos trabajos. En diálogos naturales, el "conocimiento" es obtenido mediante
interacción: una interacción da una idea de alguna cosa y el otro/s interlocutor/es
da/n su feedback positivo o negativo (realimentación positiva o negativa), o solicita
dicha realimentación. Feedback positivo podría ser solo una confirmación implícita o
explícita. En cambio, feedback negativo podría indicar una falta de entendimiento del
mensaje, una petición para repetir la oración o una petición de aclaración.
Se puede definir el concepto de "Grounding" como el proceso en el que el robot
realiza la unión de cierta abstracción de sus medidas sensoriales, relacionados con un
elemento delimitado externo, o de cierto acto dentro de sus habilidades, para el cual
se asigna una etiqueta o referencia en el lenguaje. Por ejemplo, si el robot es capaz
de encender una televisión externa mediante un actuador por IR, existirá grounding,
cuando sea capaz de realizar la unión entre los actos comunicativos que referencian
el acto de "encender la tele" con el propio acto de encenderla.
Notar el papel importante del silencio en la interacción natural. La mayoría de los
DMS actualizan el estado del diálogo cuando reciben una oración por parte del usua-
rio, es decir cuando detectan cierto tiempo de silencio ([Roy et al., 2000] y muchos
otros); pero el silencio también puede ser visto como un acto comunicativo propia-
mente dicho, que debería ser manejado, con significados semánticos adecuados, como
por ejemplo que el usuario no ha entendido, o que no escucha, que esta dubitativo y
no sabe que acción llevar a cabo, que se ha "desenganchado", etc.
Los modelos de "conocimiento" en humanos constan de varios niveles, desde el
conocimiento compartido sobre el mundo físico (leyes física, reglas para manipular
objetos, ciertos conocimientos específicos, etc) hasta convenciones sociales y reglas
culturales sobre como comunicarse. Los humanos entienden o tratan de entender las

4.2. Gestores de diálogo en robots sociales
45
intenciones que se esconden detrás de cada acto comunicativo. A mayor nivel de "co-
nocimiento compartido" entre los usuarios, menor es la cantidad de señales necesarias
para la interacción. Un importante componente del "conocimiento" es el conocido co-
mo "mantener la atención (Joint Attention)' ([Tomasello, 2008]) o el "reconocimiento
de la intención" ([Allen et al., 2001]). El "mantener la atención" es la capacidad de los
interlocutores de coincidir en el interés por el asunto (físico o conceptual) por el que se
está dialogando. El reconocimiento de la intención implica que los usuarios reconocen
planes y objetivos del otro interlocutor, gracias a la percepción e interpretación de
sus actos comunicativos.
Dado que el conocimiento compartido ayuda a hacer más efectivo el diá-
logo, también es tenido en cuenta en robótica social, como es mostrado en
[Iwahashi et al., 2010]. El robot CoBot ayuda a los usuarios en reuniones dando infor-
mación relevante para las peticiones de los usuarios y también tomando la iniciativa
si el robot llega a no estar seguro de su estado actual. El robot pasa un día entero
con el usuario (interacción a largo plazo). Durante ese día, el sistema intenta reducir
la repetición de diálogos, dando más detalles a cada usuario que pasa por la misma
localización, usando sinónimos en el proceso de generación de lenguaje natural. Por
lo tanto, el sistema añade nueva información sobre la experiencia compartida: lugares
que ellos han ya visitado, que pasa a ser parte del conocimiento compartido entre el
usuario y el robot.
"Generalized Grounding Graphs (G
3
)" es un entorno de desarrollo usado para rela-
cionar palabras con aspectos del mundo exterior: objetos concretos, lugares, caminos
y eventos ([Tellex et al., 2011]). Algo similar al trabajo que está desarrollando Goo-
gle con el llamado "grafo del conocimiento", para hacer búsquedas semánticas más
inteligentes, que una simple búsqueda en páginas webs
9
. La mayoría de los sistemas
manualmente conectan entidades del lenguaje (básicamente expresiones regulares de
palabras) sobre un delimitado espacio de acciones fijadas por el desarrollador. Por
ejemplo, el robot Florence Nightingale (Flo), es un robot enfermero que realiza una
relación entre las creencias y acciones del diálogo (normalmente acciones de hablar),
que son especificadas, a priori, por el programador. G
3
también ha sido usado para
tareas de manipulación, donde un robot manipulador móvil obedece a ordenes como
"pon el brazo neumático sobre el camión". El robot lleva a cabo inferencias sobre este
tipo de comandos en lenguaje natural para crear y ejecutar un plan correcto.
Un ejemplo de "mantener la atención" en robótica podría ser el encontrado en
[Haasch et al., 2004]. BIRON es usado para estudiar como el robot es capaz de de-
tectar y seguir el "asunto" expresado por el usuario. El robot interactúa relacionando
objetos con palabras.
9
http://www.fayerwayer.com/2012/05/google-presenta-el-grafo-del-conocimiento-para-darle-
sentido-a-las-busquedas/

46
Capítulo 4. Gestión del diálogo
4.2.5.
Comunicación cooperativa y coordinada
La comunicación natural, como debe ser tomada en el proceso de diálogo
Humano-Robot, implica una adaptación recursiva entre el comunicador y el oyente
([Tomasello, 2008]). Por lo tanto, la comunicación puede ser vista como una activi-
dad cooperativa. La cooperación tiene que estar bien coordinada a lo largo del tiempo
(ritmos comunicativos, velocidades, etc) y tiene que ser coherente, desde un punto de
vista semántico.
En interacción natural, cada turno es intercambiado asíncronamente durante el
proceso de interacción. Ese intercambio de turno es normalmente establecido gracias a
señales no verbales. Durante la interacción cada interlocutor puede tomar la iniciativa,
esto en un DMS puede ser gestionado de tres formas diferentes:
La iniciativa la lleva el sistema: el sistema pregunta para obtener cierta infor-
mación, mientras que el usuario se limita a contestar a dichas preguntas. Por
ejemplo, un sistema de huecos de información para por comprar un billete de
tren.
La iniciativa es del usuario: igual que el anterior, pero es el usuario el que ha-
ce las preguntas y el sistema responde. Ejemplos de este sistema, son aquellos
que responden a todo tipo de preguntas en lenguaje natural (por ejemplo rea-
lizando consultas a buscadores semánticos) o robots que actúan como esclavos
limitándose a ejecutar las ordenes que ordena "el amo" (el humano).
De iniciativa mixta: ambos, el sistema o el usuario son capaces de iniciar e in-
terrumpir la conversación, tomando la iniciativa bruscamente en el intercambio
de turno, o solicitándola mediante lenguaje no verbal. Un ejemplo de este tipo
de iniciativa es la que se puede observar en programas de debate, en el que los
contertulios, constantemente toman la iniciativa, llegando incluso a cortar al
interlocutor que se encontraba en el uso de la palabra.
La iniciativa mixta ha sido usada en robótica gracias a algunos DMS's
([Allen, 1999]). Por ejemplo, el robot móvil descrito en [Kruijff et al., 2006] es ca-
paz de aprender cosas del entorno gracias a la interacción con el usuario, en modo
iniciativa mixta; el robot puede preguntar por cierta información, y a su vez el usua-
rio puede solicitar información sin petición previa del robot. También el sistema de
diálogo PAMINI [Peltason Wrede, 2010b] fue concebido para una interacción con
iniciativa mixta, usando patrones de interacción.
La colaboración también esta presente a otros niveles, por ejemplo participando en
una tarea común y compartiendo planes. En [Kidd et al., 2004], es presentada la idea
de un robot humanoide como un socio colaborador del humano. Otro robot, bastante
conocido en la literatura es el robot Leonardo, que también tiene ciertas capacidades

4.2. Gestores de diálogo en robots sociales
47
de interacción no verbales, para llamar y mantener la atención, como la mirada y
señalando. Es capaz de aprender nombres de objetos desde actos comunicativos del
usuario. Por ejemplo, para la oración "Lenardo, eso es (gesto deíctico) un botón azul",
el robot incorpora la etiqueta lingüística "botón azul" a la información visual recibida
sobre el objeto percibido. A su vez como se ha comentado, Leonardo tiene varios
gestos no verbales, que ayudan en el aspecto colaborativo de la comunicación, como
por ejemplo, si hay una falta de compresión, Leonardo lo puede expresar con un
determinado gesto (por ejemplo arquear las cejas), o si el usuario comienza a hablar,
el robot expresa mediante un determinado gesto, como puede ser una mirada, que
está manteniendo la atención, etc. Por otro lado, tanto el robot como el usuario son
capaces de colaborar en un mismo plan: Leonardo completa con una acción (por
ejemplo pulsar un botón) una secuencia aprendida (plan) si el usuario no lo hace.
Otro robot humanoide colaborativo y de iniciativa mixta es ROMAN
[Schmitz et al., 2008], dotado de un complejo sistemas de diálogo. El objetivo de
ROMAN es lograr una interacción con humanos lo más natural posible en entornos
públicos, para ello usa un gestor de diálogo multimodal, que trabaja con información
verbal y no verbal. El comportamiento del humanoide es como sigue: el robot está
mirando a su entorno buscando personas. Una vez que una persona es detectada, RO-
MAN trata de atraer la atención del humano hablándole. El humano puede mostrar
interés respondiéndole. Si en cambio, no muestra interés el robot dice "es una lástima"
y busca otras personas. En cambio, si el humano muestra interés, el robot se presenta
y responde a las preguntas que el humano pueda hacer sobre el mismo y el grupo
que lo desarrolla. Si el humano pierde el interés y se aleja del robot la conversación
finaliza. Los diálogos están formalizados en documentos XML siguiendo el paradigma
de VoiceXML.
En [Carnegie Kiesler, 2002] es estudiado como un humano y un robot pueden
cooperar en tareas diarias. El artículo esta enfocado sobre como los humanos crean
modelos mentales sobre el comportamiento de un robot asistente con diferente per-
sonalidades.
4.2.6.
Contextualización del diálogo
Los robots, como agentes conversacionales dotados de cuerpo físico, mientras se
encuentran en un entorno dinámico, tienen que adaptar sus diálogos a cambios en
el entorno, es decir, tienen que ser contextualmente apropiados. En este trabajo,
se entiende la contextualización como el proceso de resolución de referencias entre
un modelo del dominio del entorno y el discurso. Una apropiada contextualización
implica conocimiento externo (modelo del mundo y del usuario) e interno del robot
(propia historia previa del robot y de los diálogos realizados, información compartida
por otros robots, etc). Por ejemplo, un sistema de diálogo contextualizado trata de

48
Capítulo 4. Gestión del diálogo
resolver oraciones como "gira a mi derecha", "es la segunda habitación después del
laboratorio", "un poco más", etc. Para un diálogo contextualizado, un modelo del
entorno y del espacio de estados del usuario resolverían estas ordenes. Esos gestores
de diálogo normalmente combinan sus modeles internos con el reconocimiento de voz
y el dominio de acciones del robot.
Diálogos contextualizados son muy importantes para robots móviles cuyo obje-
tivos principales son: adquirir o aprender como el entorno es semánticamente/con-
ceptualmente estructurado ([Kruijff et al., 2007]), aprender rutas por las que moverse
en una ciudad ([Bugmann et al., ]), obedecer una orden con algún tipo de deixis
([Trafton et al., 2006]), colaborar en una tarea donde el robot tiene que tener en
cuenta el punto de vista del usuario ([Schultz, 2004], [Skubic et al., 2004] y muchos
otros).
Por lo tanto, en un diálogo contextualizado, los interlocutores tienen que tratar
con diferente información que proviene de diferentes modalidades que ayudan a que
el sistema resuelva diferentes tipos de ambigüedades en el lenguaje (deixis).
4.2.7.
Diálogo y aprendizaje
Una cuestión importante en aprendizaje es como comunicar la adquisición de nue-
vas palabras, y otro problema es el relacionado con que hacer cuando esas palabras
tienen múltiples significados ([Chauhan Lopes, 2010]). El sistema LCore combina
información multimodal (voz, visual y táctil) para lograr que el robot aumente su
espacio de creencias (modelo del entorno). En [Taguchi et al., 2009] un manipulador
robótico es capaz de dialogar para entender el significado de ciertas palabras como
"cual" o "que" gracias a un aprendizaje probabilístico. El sistema es capaz de apren-
der como unir oraciones (que involucran voz) con objetos en ciertos entornos muy
restringidos (que involucran visión).
En un modelo de aprendizaje basado en instrucciones (IBL) o "Programación
Natural de Robots (NRP)", el robot aprende nuevas tareas a través de las instrucciones
dadas por el propio usuario, sin necesidad de que el programador implemente nuevo
código fuente para la ejecución de esas tareas o instrucciones. Este tipo de aprendizaje
trata de asemejarse a la manera en que los humanos aprendemos a realizar nuevas
tareas. Por ejemplo, TRINDI ha sido usado como un DMS (manejador de diálogo)
basado en IBL (aprendizaje por instrucciones) donde un robot móvil aprende nuevos
caminos en una maqueta de una ciudad ([Lauria et al., 2002],[Lauria et al., 2001]).
Nuestro DMS, llamado IDiM, descrito en este capítulo, ha sido también usado
satisfactoriamente para tareas de NRP ; permitiendo a través de diálogos naturales
(fundamentalmente basados en voz y tacto en nuestro robot social Maggie), el apren-
dizaje de nuevas secuencias de movimientos, válidas para saludos, pasos de baile, etc
([Gorostiza Salichs, 2011]).

4.2. Gestores de diálogo en robots sociales
49
Volviendo nuevamente al robot BIRON ([Spexard et al., 2006]), este es capaz de
aprender el nombre de nuevos objetos y lugares del entorno a través de fusión mul-
timodal, mientras conversa en interacción natural con el usuario en un ambiente do-
méstico. También el robot Leonardo, como se comento anteriormente, es capaz de
aprender secuencias simples de acciones (como pulsar un botón de un determinado
color) mediante diálogos, en ese caso, más basado en interacción mediante gestos
([Kidd et al., 2004]) que mediante voz.
4.2.8.
Conversación multiparte (varios interlocutores simultá-
neos)
La mayoría de los DMS son diádicos, es decir, son concebidos para una interacción
de solo dos partes: el robot y el usuario. Un DMS multiparte tiene que tener en
cuenta un mundo abierto de interacciones y sin restricciones en el que involucran
más de dos participantes de ambos tipos, humanos y robots. Desde un punto de
vista externo, uno de los mayores problemas de tales sistemas es como distinguir
quién tiene el turno de palabra, quién está hablando, quien está escuchando, etc.
Desde un punto de vista interno, o de programación, para lograrlo se necesitan tareas
adicionales de localización de usuarios y fuentes sonoras, separación del audio en un
canal para cada interlocutor, carga de diferentes perfiles de usuario al mismo tiempo,
mantener por cada interlocutor diferentes creencias, objetivos, deseos e intenciones
([Bohus Horvitz, 2010]).
Un importante desafío es que el sistema dirija su capacidad de interrumpir una
interacción con alguien, para retomarla posteriormente en un futuro. En el ejemplo
del recepcionista, si el sistema es capaz de "desconectar" con un participante y co-
menzar la interacción con otro, únicamente diciendo "espera un momento" y retomar
posteriormente la interacción con el primero de nuevo. En el caso de nuestro sistema
de diálogo, si bien, actualmente no es capaz de mantener una conversación multiparte,
sí que es capaz de pausar la interacción con frases como "cállate un momento" para
retomarla con posterioridad con frases como "ya puedes seguir hablando".
TeamTalk [Marge et al., 2009] basado en Ravenclaw-Olympus facilita la interac-
ción entre un operador y un equipo robótico. El operador propone una tarea dando
diferentes comandos a los diferentes robots para localizar objetos específicos dispues-
tos en distintas localizaciones (el juego de la caza del tesoro). Sin embargo, el sistema
sólo ha sido implementado en un entorno virtual llamado USARSim (Unified System
for Automation and Robot Simulation).

50
Capítulo 4. Gestión del diálogo
4.2.9.
Evaluación: escenarios y métricas
El desarrollo de nuevas teorías en interacción humano-robot y sistemas de diálogos
y su implementación en robots reales es tan importante como su apropiada evaluación.
En general, se puede considerar dos tipos de métricas: objetivas y subjetivas.
Las objetivas usan diferentes parámetros que dan una idea del nivel de satisfacción
en la ejecución de una determinada tarea relacionada con el uso de diálogos. Algunos
parámetros pueden ser: tiempo invertido, número de turnos intercambiados, número
de malentendidos, número de subdiálogos de aclaración, porcentaje de errores de
reconocimiento, etc.
Los parámetros subjetivos tratan de dar una idea sobre el grado de participación
y comprensión del usuario, grado de entretenimiento, si la interacción le parece fácil
y natural, si es eficiente, coherente, etc. James F. Allen distingue tres niveles de
"engagement"
10
: inmersión, diagnóstico y fracaso. En la inmersión, el usuario se siente
muy participativo y confortable con la conversación, siendo la comunicación natural
y entretenida, como consecuencia se concentra únicamente en la consecución de la
tarea asociada a la interacción, no en la interacción en si misma. En el nivel de
diagnóstico, el usuario tiene problemas en la comunicación, pero intenta de manera
cooperativa volver a la inmersión, por lo que se centra más que en el objetivo en el
proceso comunicativo propiamente dicho. Finalmente en el nivel de fracaso, el usuario
renuncia a seguir con la comunicación, sintiéndose incapaz y/o reacio a proceder con
naturalidad, por lo que deja la comunicación o intenta obtener diversión con una
"escena tan surrealista" (intenta obtener diversión de los propios malentendidos entre
el sistema y él mismo, con el fin de lograr resultados inesperados y graciosos).
Las métricas usadas deberían depender de la población usada en el estudio: chicos,
ancianos, expertos, usuarios sin experiencia, etc. Además los experimentos pueden
hacerse con usuarios aislados o en grupo. Los resultados obtenidos de una evaluación
normalmente repercuten en el diseño y refinamiento del propio sistema de diálogo.
Es importante no olvidarse, de que los métodos usados para la evaluación de los
sistemas, deben estar muy bien especificados, y estructurados. Además es necesario un
buen diseño de los escenarios concretos, para realizar un análisis riguroso del sistema.
Cuidado, rehabilitación y otras terapias
Un escenario típico en la interacción humano-robot es el que tiene que ver con el
ámbito asistencial, en este sentido se han invertido fuertes cantidades de dinero, ya
que puede ser una de los campos donde la robótica logre "despegar" haciendo mejor
y más fácil nuestra vida diaria.
Care-O-Bot-II [Graf et al., 2004] ofrece algunas habilidades para el cuidado y
10
participación/compromiso/acoplamiento

4.2. Gestores de diálogo en robots sociales
51
rehabilitación de ancianos. Este robot no implementa un DMS propiamente dicho,
pero permite que el usuario se dirija a él mediante comandos de voz, para llevar a
cabo tareas como transportar objetos en un ambiente doméstico. Su evaluación se
hizo mediante simples cuestionarios.
Nursebot ([Pineau, 2003]) es un robot asistencial diseñado para ayudar a personas
ancianas en sus hogares. El principal objetivo es que el robot actúe como enfermero
y ayude en las necesidades diarias que le surjan al anciano. Su evaluación, en general,
mide la viabilidad de asistir a personas mayores con limitaciones cognitivas y físicas en
su día a día. Para medir la evaluación del sistema, propusieron dos métricas: tiempo
en satisfacer una necesidad y porcentaje de errores en el diálogo. El gestor de diálogo
usado estaba basado en la técnica de POMDP 's y MDP 's.
El DMS que está basado en POMDP y MDP presentado en [Roy et al., 2000] usa
diferentes métricas para evaluar como de bueno es el sistema de diálogo. El principal
parámetro tenido en cuenta es la recompensa total asociada al proceso de aprendizaje,
acumulada durante todo el proceso de evaluación. La recompensa depende de como de
bien y apropiada ha sido cada acción comunicativa (no olvidar que esta aproximación
a la gestión del diálogo es puramente estadística).
En [Carnegie Kiesler, 2002] se hace una evaluación de como las respuestas del
humano se ven influenciadas por el diseño del robot y del propio diálogo usando
un robot enfermero. El análisis de la varianza basado en el parámetro ANOVA
11
fue usado para medir características subjetivas y objetivas como: inteligencia del
robot, personalidad, agradabilidad, consciencia, extroversión, neuroticismo, grado de
apertura a nuevas experiencias, distancia de interacción, cuantos usuarios rieron o
sonrieron, etc.
En [Kidd Breazeal, 2008] se compara un entrenador personal para la perdida
de peso mediante software de ordenador, mediante una tabla de ejercicios en papel,
y finalmente mediante un sistema robótico diseñado con ese mismo objetivo. Los
participantes llevan un seguimiento de su consumo de calorías y los ejercicios reali-
zados. Su evaluación se centra en el porcentaje de uso del sistema, confianza de los
usuarios en el mismo, afinidad entre ambos, etc. Para ello, se realizaron entrevistas,
tests, y análisis en vídeo de las interacciones realizadas. Los resultados muestran que
los participantes interactúan el doble de tiempo utilizando el robot que con los otros
dos métodos, además de desarrollar una relación más estrecha con el robot. Ambos
son indicadores del éxito a largo plazo de la pérdida de peso y el mantenimiento, y
demuestran la eficacia de los robots sociales a largo plazo en HRI.
A pesar de que los robots sociales, con capacidades de interacción, han sido uti-
lizados en estudios para medir como de útiles pueden ser en tareas terapéuticas con
niños autistas ([Wainer et al., ], [Billard et al., 2007] y otros muchos), normalmente
estos trabajos carecen de complejos DMS. Probablemente, debido al hecho de que la
11
http://www.ub.edu/aplica_infor/spss/cap4-7.htm

52
Capítulo 4. Gestión del diálogo
enfermedad del autismo causa importantes dificultades a la hora de mantener una
interacción natural con un sistema automatizado.
Guías en museos,centros comerciales, y otros centros públicos
Los museos han sido también espacios usados para el desarrollo de robots guías.
Los experimentos permiten medir tareas a largo plazo y características, como por
ejemplo, si el robot tiene alguna influencia en que los visitantes vuelvan a repetir
la visita, media de tiempo de interacción, valores proxémicos como orientación y
distancia del usuario frente al robot, el rol de gestos como la mirada o señalar, etc.
Por ejemplo, el proyecto Rovint [Lucas Cuesta et al., 2008] presenta un robot au-
tónomo con un DMS basado en formularios que guía al usuario en un museo científico.
El robot es capaz de establecer diálogos simples con los visitantes.
En [Kanda et al., 2010] un robot conversacional (no móvil) fue probado en un
centro comercial, aunque se encontraba parcialmente teleoperado (el reconocimiento
de voz no es automático, es llevado a cabo por humanos). Se diseño para proporcio-
nar información sobre productos, precio y localización. Se evaluó durante 25 días en
un total de 2642 interacciones. De las cuales 235 usuarios respondieron a unos cues-
tionarios. Con los resultados obtenidos se mejoró el sistema para dotarlo de mayor
autonomía, y por lo tanto de menor cantidad de teleoperación, además se comprobó
empíricamente que el comportamiento a la hora de que la gente comprase se veía
influenciada por el robot.
El robot recepcionista Valerie, descrito en [Gockley et al., 2005], fue evaluado du-
rante un periodo de 9 meses. Durante este tiempo se midió si la gente que interactuó
con el robot, repitió posteriormente la visita y cuanto tiempo llevó cada interacción
individual. El DMS del robot está basado en reglas, dado que inspira en los sistemas
AINE, AIML y ALIZE ([Wallace, 2000]), y usa más entrada de información por tecla-
do que por voz. El dialogo llevado a cabo fue completar una biografía o diario de la
estancia, por lo cual, las interacciones se repitieron durante este periodo de tiempo,
pero fueron apenas de unos 30 segundos cada una de ellas.
El agente virtual descrito anteriormente ([Bohus Horvitz, 2009]), que imple-
menta un DMS multiparte, incluye algunas capacidades tales como detección y segui-
miento de la cabeza y de la pose, gestión de la toma de turno, análisis de la escena e
infiere algunos objetivos de los usuarios. Su evaluación mide como todos los compo-
nentes pueden funcionar conjuntamente, y el grado de atención de los usuarios en la
conversación multiparte.
En [Looije et al., 2010] se evalúan tres asistentes para gente mayor con problemas
de obesidad o diabetes: un robot real asistente (usando el robot iCat de Philips), un
asistente virtual que simula el iCat y finalmente una interfaz textual. Comparando
las ventajas e inconvenientes de cada uno de ellos. Su evaluación se hizo mediante

4.3. Contexto del diálogo
53
cuestionarios a los usuarios.
Robots que aprenden de, en, y para el entorno
En los trabajos de [Haasch et al., 2004] y [Toptsis et al., 2004]), un robot móvil
se mueve por el entorno, obteniendo nueva información mediante las preguntas opor-
tunas a los habitantes de la casa. En cambio, otros sistemas de diálogo, adquieren la
información mediante etiquetación de corpus y relacionando palabras con objetos de
una manera off-line, sin aprender en-vivo en la interacción con el usuario.
El diálogo en sistemas IBL, tables como el definido en [Bugmann et al., ] son eva-
luados comenzando con un análisis del corpus recogido, detectando las palabras clave
para dar instrucciones y que permiten relacionarlas con el proceso de aprendizaje.
Como PAMINI ([Peltason Wrede, 2010b]) fue concebido para soportar distintas
implementaciones y contextos de diálogo, de una manera similar a nuestro gestor
de diálogo, en [Peltason Wrede, 2010a] se hace una evaluación de como de fácil es
implementar nuevos escenarios con diferentes características para cada uno de ellos,
por lo tanto la evaluación está centrada en como el programador/experto desarrolla
nuevas implementaciones de diálogo usando cada DMS y como de natural funciona
con usuarios no entrenados. Un punto importante en PAMINI DM es que es indepen-
diente de la implementación del diálogo, característica fundamental de nuestro DMS
aquí presentado (IDiM ).
4.3.
Contexto del diálogo
En esta sección se propone una nueva clasificación de los elementos que definen
el contexto del diálogo que atiende a dos aspectos distintos: uno extensional y otro
temporal. El primero se refiere a elementos que tienen una presencia estática, por ejem-
plo, las frases concretas del diálogo, el vocabulario manejado, atributos semánticos
del reconocimiento, definición de los actos comunicativos que se utilizan, etc.
El aspecto temporal se refiere a elementos que influyen directamente en los cambios
en el transcurso del diálogo: ritmos, silencios, intercambio de turnos, modulaciones
no verbales, comienzo y finalización de un acto comunicativo, etc.
Esta clasificación, en estos dos aspectos de los elementos del contexto de diálogo,
permite definir de manera sintética y sistemática lo que es un diálogo concreto en
nuestro sistema.
4.3.1.
Aspectos estructurales
El aspecto estructural del diálogo incluye tanto la definición del lenguaje formal
que el robot es capaz de percibir, como la enumeración y definición de los AC's que es

54
Capítulo 4. Gestión del diálogo
capaz de expresar, así como la unión entre estos elementos del lenguaje con el modelo
del mundo, y las capacidades, habilidades o acciones del robot.
Varios aspectos se ven involucrados, como por ejemplo, cómo el reconocimiento
de voz es llevado a cabo. En el nivel fonético y morfológico la herramienta de re-
conocimiento de voz usa modelos acústicos y del lenguaje. En el nivel sintáctico se
usa normalmente "gramáticas de contexto libre" (CFG), que establecen un conjun-
to de palabras y sus posibles combinaciones en oraciones válidas para ese contexto
comunicativo; de esta manera se restringe notablemente las opciones comunicativas
válidas para ese contexto. Todo ello será analizado en un capítulo específico, dedicado
al reconocimiento de voz, en esta tesis.
Los niveles semánticos y pragmáticos
12
, como se describe en [Morris, 1946],son
más difíciles de formalizar e implementar en un robot social. Una de las soluciones
adoptadas es incluir la parte semántica como reglas en la propia gramática (CFG)
usada para el ASR ([Jurafsky Martin, 2000]), pasando de ser una CFG a una CFG
semántica (ver Fig. 4.1). Estas gramáticas establecen un conjunto finito de atributos
y los diferentes modos posibles para asignar valores semánticos a ellos. Estos valores
semánticos constituyen la información relevante para el sistema de interacción. Pero
como se verá, cuando se hable de la fusión multimodal, no sólo el ASR es capaz de
proporcionar valores semánticos al sistema.
También los gestos y otro tipo de acciones no verbales se pueden reunir en un
conjunto discreto de elementos: un gestionario, que se describirá posteriormente. El
gestionario incluye movimientos del cuerpo del robot como "afirmaciones", "saludos",
"mostrar derrota", etc., pero también rasgos prosódicos como falta de fluidez, sonrisas,
bostezos, alientos, etc.
Grosso modo, en los aspectos estructurales, se puede distinguir dos tipos de in-
formación: la información que es relevante para el robot obtenida mediante los actos
comunicativos expresados por el usuario; y la información que el robot necesita ex-
presar al usuario, mediante actos comunicativos de expresión.
Los AC 's que el robot es capaz de expresar son implementados de diversas for-
mas, mediante "texto enlatado" para su síntesis mediante el sistemas de TTS, usando
plantillas o "snippets" que realizan tareas básicas de generación de lenguaje natural
(NLG), activando gestos, mediante expresión no-verbal de sonidos robóticos gene-
rados en tiempo real o pregenerados, o generando melodías de voz. Por ejemplo, el
diálogo puede querer saludar, para ello puede activar el "snippets" que genera una fra-
se de saludo que será sintetizada por el TTS con una emoción feliz; al mismo tiempo
12
Las oraciones en sí mismas comportan un contenido semántico, pero su significado e interpreta-
ción adecuados no dependen sólo de ese contenido sino que requieren un contexto lingüístico definido
para ser interpretadas (nivel pragmático). Es un hecho elemental bien conocido que una misma ora-
ción puede tener intenciones o interpretaciones diferentes en diferentes contextos (puede ser literal,
irónica o metafórica).

4.3. Contexto del diálogo
55
Figura 4.1: Aspectos estructurales de un proceso de interacción. Son los recursos nece-
sarios para llevar a cabo la interacción, como son: las gramáticas semánticas, modelos
del lenguaje, huellas de voz, gestionarios, diálogos, plantillas para la generación de
texto no "enlatado", etc.
el diálogo activar el gesto de saludo (existe dentro del gestionario del robot); simul-
táneamente, y en un volumen menor, se generan sonidos no-verbales que también
sugieran al usuario la sensación de ser saludado, mientras que en la tablet del robot
se muestra alguna animación de bienvenida; de esta manera, para un mismo concepto
semántico: "saludar", se ha "fisionado" en varias modalidades expresivas: voz, gestos,
sonidos no-verbales y visuales.
4.3.2.
Aspectos temporales
Como la comunicación natural es un proceso que sucede a lo largo del tiempo, se
tiene que tener en cuenta sus características dinámicas, que constituyen los aspectos
temporales del diálogo. El intercambio de turnos, la velocidad de oración, la duración
y el significado de los silencios, son a los factores a los que nos estamos refiriendo.
Además, existen otros factores dinámicos ha tener en cuenta por el diálogo, como son
la distancia de interacción, el nivel de experiencia del usuario y los conocimientos que
se aprenden dinámicamente.
Los aspectos temporales determinan, en gran medida, el proceso de fusión multi-
modal, es decir qué valores se empaquetan en un mismo acto comunicativo, cuáles se
desechan y cuáles pertenecen al siguiente AC. Todo ello, se analizará detenidamente
cuando se trate el módulo de fusión multimodal. A lo largo del proceso interactivo
se comparten múltiples señales que van marcando en el tiempo el ordenamiento de

56
Capítulo 4. Gestión del diálogo
la información comunicativa. Existen así gestos no verbales que, por parte del que
escucha, indican al hablante que está siendo atendido y comprendido, o no. Por ejem-
plo, el mirar a la cara o a los ojos (gaze), la afirmación con la cabeza, o sonidos
suprasegmentales del tipo aha, mhm, silencios, etc.
La mayoría de los DMS siguen un modelo de interacción muy similar al de Shannon
and Weaver [Shannon, 1948], donde hay un emisor que habla, y un receptor que
escucha. Sin embargo, en una interacción natural es fácil encontrar solapamientos
entre los interlocutores, además de que se produce un proceso de sincronización entre
los interlocutores, en el que a la vez que hablan también escuchan, viendo y sintiendo
lo que el otro usuario quiere expresar (interacción full-duplex).
El DMS intenta sincronizar los AC que el robot expresa con los los AC percibidos
del usuario, siguiendo los siguientes parámetros:
Velocidad y Duración: las oraciones y los gestos pueden ser más o menos
rápidos.
Ritmo de Interacción. Marcado por el parámetro anterior y por cómo se van
sucediendo los actos comunicativos con los silencios.
Sincronía: Medida de la adaptación de los ritmos de interacción de cada inter-
locutor.
Gestión del Silencio: Cuando el silencio es mayor de un cierto umbral de
tiempo, el interlocutor puede perder su turno. El silencio en sí mismo puede
entenderse como un acto comunicativo, que exprese: duda, incoherencia, des-
atención, etc.
13
13
Una posible clasificación de las pausas: las pausas vacías o "silencios" y las pausas llenas o
"titubeos". El silencio derivado de las pausas abarca un considerable espacio de tiempo del habla es-
pontánea. Las interjecciones y los silencios corroboran la existencia de estas pausas. La investigación
psicolingüística ha demostrado que las pausas vacías o "silencios" surgen durante las secuencias de
desarrollo de las mismas cláusulas, es decir, se manifiestan en posición intraclausal. Por el contrario,
las pausas llenas o "titubeos" constituyen pausas no silenciosas rellenadas mediante vocalizaciones
como eh o mmmm. La mente humana aprovecha estos breves intervalos temporales como recursos
estratégicos con el fin de diseñar mentalmente el discurso. Al mismo tiempo, algunas pausas escon-
den un propósito estilístico. Por lo tanto, puede advertirse que los fenómenos pausales desprenden
múltiples funciones, fundamentalmente dos: la respiración y la planificación lingüística. La vacilación
constituye también un fenómeno de planificación del discurso. En líneas generales, las pausas del
habla espontánea reflejan las secuencias de desarrollo del proceso de codificación lingüística. Por
consiguiente, puede afirmarse que las vacilaciones y las pausas representan disfluencias del habla
espontánea. Cabe añadir que la investigación psicolingüística ha demostrado que una dosificación
adecuada de pausas resulta incluso necesaria para el desarrollo de la producción del habla. Fuente:
Dept. Didáctica de la Lengua de la Universidad de Extremadura

4.3. Contexto del diálogo
57
Intercambio de turnos: Cómo se produce la petición o cesión del turno, así
como el manejo de interrupciones del turno.
El intercambio de turnos ha sido y es objeto de estudio tanto en robótica, como en
comunicación no verbal entre humanos [Birdwhistell, 1970], etc. En [Davis, 1971] se
realiza una explicación minuciosa de cómo suele ser el intercambio de turnos. Cuando
el que escucha quiere tomar el turno, comienza a moverse al mismo ritmo del que
habla, el cual percibe la "solicitud". Ante esta petición, el que habla puede decidir
ceder el turno o no. Si es que sí, entonces comienza a adaptarse él a los ritmos del
que escucha dando así "el pie" y cediendo el turno.
La sincronía no solo se encuentra en el intercambio de turnos, sino que es parte
constante del proceso de interacción presencial: ambos intervinientes sincronizan las
velocidades e incluso las amplitudes de sus actos comunicativos ([Birdwhistell, 1970]).
Figura 4.2: Aspecto temporal de un proceso de interacción.
En la Figura 4.2 se ilustra un escenario de intercambio de turno con interrupción
(barge-in). El robot articula el CA_1 (acto comunicativo primero) pero en mitad del
turno el usuario pierde el interés por lo que expresa el robot y comienza a articular
su propio CA_2. Como el robot lo detecta, interrumpe su propio proceso de comuni-
cación y transfiere el turno al usuario. Después de que el usuario finaliza su CA_2, el
robot comienza a procesarlo (representado en la tercera línea como "dialog thinking").
El resultado de dicho procesamiento da como resultado un nuevo acto comunicati-
vo por parte del robot. Pese a que el sistema de reconocimiento de voz es capaz de
generar resultados parciales de reconocimiento
14
normalmente respeta el turno del
usuario.
De manera natural, se ha observado que los seres humanos manejan un rango de
tiempos de espera situado entre uno y siete segundos. Pasado este tiempo en el que
14
El ASR puede entregar al DMS valores semánticos antes incluso de que el usuario haya dejado
de hablar (anticipa los resultados tan pronto como los interpreta)

58
Capítulo 4. Gestión del diálogo
el hablante ha cedido el turno planteando una cuestión explícita o implícitamente, de
manera natural el turno vuelve al hablante. También es habitual, que para no perder
el turno, el que debe contestar suele emitir algún tipo de señal para mostrar que
quiere mantener el turno, mientras elabora el acto comunicativo adecuado a la cues-
tión planteada. Por ejemplo, mediante señales suprasegmentales como "mmmmm",
mientras elabora la respuesta.
4.4.
IDiM: el gestor en RDS de diálogos interpreta-
dos
Nuestro DMS es implementado dentro de una arquitectura de control: AD-ROS.
La gestión del diálogo se hace siguiendo el paradigma de rellenado de formularios,
usando atributos semánticos y huecos de información ("Information Slots" (IS)). La
Multimodalidad de entrada y salida está directamente unida al DMS. Esta sección
termina con la descripción de cómo el sistema implementa nuestro modelo de diálogo
basado en aspectos estructurales y temporales descritos anteriormente.
La relación que se establece entre los interlocutores marca el contenido de la
interacción ([Paul Watzlawick, 1967]), por eso es importante establecer a priori cómo
se espera que vaya a ser esta relación. En nuestra aplicación, los ejemplos de uso de
IDiM que se van a presentar se basan en una relación entre el usuario y el robot que
es complementaria: es el usuario quien, en principio, manda y ordena tanto al robot
como al propio proceso de interacción.
4.4.1.
IDiM y la arquitectura de control del robot
La arquitectura de control del robot ha sido presentada en diversos trabajos. Su
definición teórica la realiza Ramón Barber[Barber Salichs, 2001b] y se muestra su
aplicación en navegación. En el trabajo [Salichs et al., 2006b], se describe al robot
Maggie que implementa esta arquitectura de control. AD es una arquitectura híbrida,
basada en lo que se ha denominado como habilidades. Cada habilidad representa
un módulo independiente de ejecución. Existen habilidades básicas o primarias que
conectan directamente con los dispositivos de entrada y salida del robot: habilidades
de habla (reconocimiento y síntesis), habilidades perceptivas como la que maneja el
telémetro láser, habilidades de movimiento de las partes del robot y del robot en
sí por el entorno, habilidad de tacto que hace de interfaz con sensores capacitivos
en la carcasa del robot, habilidad de manejo del actuador de IR, etc. Dentro de
este conjunto de habilidades básicas están las habilidades esenciales de comunicación
verbal y no-verbal, que son utilizadas por el manejador de diálogo (ver Fig. 4.3).
Por otro lado, existen habilidades secundarias de más alto nivel que se sirven de las

4.4. IDiM: el gestor en RDS de diálogos interpretados
59
(a) El juego del Akinator es una
habilidad que interactúa con el
usuario usando el tacto y la voz.
(b) Cuando la habilidad "Sígueme" está
activada el robot te persigue.
(c) El usuario manejando la televisión a
través del robot.
(d) El usuario puede leer
algunas noticias de In-
ternet.
Figura 4.3: El robot social Maggie en diferentes escenarios de interacción. IDiM per-
mite cambiar dinámicamente el contexto del diálogo para cada habilidad activa.

60
Capítulo 4. Gestión del diálogo
habilidades básicas. Se tienen habilidades que son juegos, otras de domótica (manejo
de una televisión por IR, o de luces mediante RF, etc), habilidades de movimiento
(followMe, teleoperation, etc), juegos, habilidades de navegación, etc. La mayoría de
estas habilidades, en algún momento, necesitan interactuar con el usuario. Dicho de
otra forma, cada habilidad tiene sus propias necesidades comunicativas, y en conse-
cuencia, cada habilidad ha de incluir su propia implementación de diálogo, usando el
sistema de interacción aquí propuesto.
Es importante notar, la diferencia entre los diálogos, que pueden entenderse como
la capa de interfaz o presentación, y las habilidades que podrían entenderse como la
capa de "lógica de negocio". En la figura 4.4 se muestra el funcionamiento de IDiM.
Una habilidad integrada en el sistema ("Secondary Skill" en la figura) que establece
un conjunto de atributos semánticos que necesita para funcionar. En el caso de la
habilidad que maneja la televisión, este atributo corresponde con el comando que se
quiere enviar a la tele (véase figura 4.7). A su vez, la habilidad secundaria carga un
diálogo en el DMS, donde se incluyen también no solo estos atributos semánticos,
sino también acciones de Query y Filled.
Figura 4.4: IDiM en un vistazo
4.4.2.
Implementación y gestión del diálogo
IDiM distingue entre la implementación del diálogo, o simplemente diálogo y su
interpretación o manejo. Por tanto, el sistema está formado por dos partes principales,

4.4. IDiM: el gestor en RDS de diálogos interpretados
61
el manejador del diálogo y el diálogo en sí. Al separar el sistema general de diálogo (por
sus siglas en inglés, DMS) en dos partes, una que interpreta y otra que implementa,
se intenta flexibilizar los posibles diálogos que el sistema pueda mantener, ya que
la ejecución del diálogo puede ir cambiando de contexto dinámicamente, según la
evolución del flujo del diálogo.
Figura 4.5: Cambios de contexto del gestor de diálogo. Cada habilidad necesita de
diferentes diálogos. IDiM carga cada diálogo dependiendo de la habilidad que se en-
cuentre activada.
En la figura Fig. 4.5 se representa la arquitectura del sistema. En la parte superior
se muestra el DMS, que tiene el control central del robot. Cada habilidad secundaria
que requiere interacción, implementa su propio diálogo. El DMS se encarga de car-
gar e interpretar en tiempo real distintas implementaciones del diálogo definidas por
distintas habilidades.
En la figura se han representado las habilidades primarias más importantes: las
habilidades de habla (reconocimiento y síntesis de voz), de movimiento, perceptivas
(láser y tacto) y de control domótico de aparatos mediante dispositivos wireless (IR
devices, por ejemplo). La ejecución, interpretación o manejo de los sucesivos diálogos
que realiza DMS implica el envío de órdenes y compartir información tanto con las
habilidades secundarias como con las habilidades primarias.
Por otro lado, se cuenta con un único manejador del diálogo que mantiene la
misma política de diálogo para todas las habilidades que requieran de interacción
verbal
15
.
15
mantiene el mismo algoritmo de rellenado de huecos de información para todos los diálogos

62
Capítulo 4. Gestión del diálogo
4.4.3.
La fusión multimodal para IDiM
La percepción de la información para el diálogo es multimodal. Esto se realiza
mediante fusión multimodal en una representación única de toda la información de
cada acto comunicativo del usuario. Esta representación se implementa en el lenguaje
estándar NLSML (Natural Language Semantic Markup Language)
16
y se verá en
mayor profundidad en el siguiente capítulo.
Figura 4.6: La fusión multimodal y el gestor de diálogo. Los pares semánticos atributo-
valor son asignados directamente, uno a uno, a los huecos de información correspon-
dientes.
En la figura 4.6 se presenta un esquema de fusión multimodal entre la habilidad
ASR y la que capta los eventos de tacto de los sensores capacitivos del robot. Cada
habilidad cuenta con un conjunto de atributos semánticos, que van tomando distintos
valores según el funcionamiento de la habilidad. Todos estos pares atributo-valor se
fusionan en una estructura NLSML.
Por ejemplo, si el usuario dice la expresión "Maggie, sube este brazo, por favor"
mientras toca el brazo izquierdo, la fusión multimodal hará lo siguiente:
1. Primero se emite el evento USER_SPEAKING, que informa que el usuario está
comenzado a hablar, y por lo tanto comenzando un acto comunicativo.
2. Mientras el usuario habla, el evento TOUCHED es lanzado por la habilidad de
tacto, que informa sobre la parte del cuerpo del robot que ha sido tocada.
16
http://www.w3.org/TR/nl-spec/

4.4. IDiM: el gestor en RDS de diálogos interpretados
63
3. Cuando se acaba la locución y se reconoce un REC_OK será lanzado por la asrSkill,
entregando valores semánticos de los atributos semánticos definidos en la propia
gramática. El acto comunicativo finaliza.
Se creará una instancia de la información percibida cuando el acto comunicativo
finalice incorporando como atributos semánticos los valores lanzados por las diferentes
habilidades primarias, en este ejemplo: por la habilidad del tacto y la del reconoci-
miento de voz, pero otras muchas habilidades pueden estar involucradas, como son:
detección de emociones, detección de usuarios, localización de usuarios, etc.
4.4.4.
Atributos semánticos y huecos de información
La unión del sistema perceptivo multimodal con el diálogo se realiza relacionando
uno-a-uno cada atributo semántico con un Information Slot dentro del diálogo. Esto
afecta tanto al diseño de cada gramática semántica, como al resto de habilidades
perceptivas, que en conjunto deben incorporar, al menos, todos los Information Slots
de cada implementación del diálogo.
Sirva como ejemplo sencillo cómo funciona la habilidad que maneja la televisión
mediante interacción con el usuario, tendría un information slot explícito: command,
que puede tomar los siguientes valores:
ON, para encender la televisión.
OFF, para apagar la televisión.
UP, para subir un canal.
DOWN, para bajar un canal.
FM, para cambiar a modo radio.
DTV, para cambiar a modo televisión digital.
V+, para subir el volumen.
V-, para bajar el volumen.
END, para dejar de usar la televisión
Este information slot solamente va a ser completado mediante la habilidad de re-
conocimiento de voz. Por tanto, se diseña una gramática CFG semántica relacionando
los valores semánticos con el lenguaje formal que el robot es capaz de percibir (figura
4.7).
Así por ejemplo las siguientes frases distintas, provocan la misma asignación se-
mántica, commando
= on:

64
Capítulo 4. Gestión del diálogo
l a n g u a g e e s
-ES ;
t a g
-format loq -s e m a n t i c s /1.0 ;
p u b l i c
$ r o o t = [ $GARBAGE ]
$ t e l e m a n d o ;
$ t e l e m a n d o = ( e n c i e n d e
l a
t e l e v i s i o n : On | e n c i e n d e
l a
t e l e : On |
pon l a
t e l e : On | e n c i e n d e :ON | e n c i e n d e l a :ON |
a p a g a : O f f
| a p a g a l a
t e l e : O f f
| a p a g a l a
t e l e v i s i o n : O f f
|
c a m b i a de c a n a l : up | c a m b i a
e l
c a n a l : up |
c a m b i a
e l
c a n a l de l a
t e l e : up | s u b e un c a n a l : up |
c a m b i a de c a n a l : up | b a j a un c a n a l : down |
pon l a
r a d i o :FM | q u i e r o
o i r
l a
r a d i o :FM |
pon l a
t e l e : DTV | pon l a
t e l e v i s i o n
d i g i t a l
t e r r e s t r e : DTV |
s u b e
e l
v o l u m e n : V+ | b a j a
e l
v o l u m e n : V
- | un poco mas b a j o : V- |
un p o c o mas a l t o : V+ |
d e j a l o y a : ENDTV | d e j a de m a n e j a r
l a
t e l e v i s i o n : ENDTV |
d e j a
l a
t e l e : ENDTV | d e j a de m a n e j a r
l a
t e l e : ENDTV) {@comando $ v a l u e };
Figura 4.7: Gramática para controlar la televisión mediante voz
"Maggie, por favor, enciende la televisión ."
"Enciende la tele"
"Maggie, pon la tele."
En este ejemplo tan trivial puede verse la relación que existe entre el hueco de infor-
mación que necesita la habilidad, el atributo semántico asociado y cómo se relacionan
los valores semánticos con un lenguaje formal de contexto libre en el reconocedor de
habla.
4.4.5.
El gestor de diálogo basado en formularios y huecos de
información
El sistema de diálogo descrito sigue el paradigma conocido como "frame-based"
17
.
El diálogo se implementa en un lenguaje aumentado a partir de las especificaciones de
VoiceXML-2.1
18
. Entre estas ampliaciones está el manejo de información multimodal,
tanto en percepción como en expresión.
El control de la ejecución del diálogo está basado en el Form Interpretation Algo-
rithm (FIA), que va recorriendo cada hueco de información y comprobando su estado.
Los actos comunicativos que ordena el sistema de diálogo están modulados por distin-
tos parámetros temporales definidos para cada diálogo concreto: tiempos de espera,
velocidades de expresión, etc.
Tal y como se puede ver en la figura 4.8(a) la implementación de un diálogo, o
"diálogo" a secas, consta de un marco (frame) que contiene los siguientes elementos:
17
basado en formularios con huecos de información
18
http://www.w3.org/TR/voicexml21

4.4. IDiM: el gestor en RDS de diálogos interpretados
65
Huecos de información: tienen que ser rellenados a través del diálogo. Pueden
tomar dos estados: rellenandos o por rellenar.
Acciones de consulta o "Query Actions" : son llevadas a cabo por el gestor
de diálogo cuando un hueco de información no está relleno.
Acciones de completado o "Filled Actions" : una vez que el hueco de in-
formación ha sido completado se ejecutan estas acciones.
El objetivo del DMS es completar todos los Information Slots presentes en la de-
finición de un diálogo. Cada Information Slot se relaciona con un atributo semántico.
El FIA (Form Interpretation Algorithm) se encarga de ir recorriendo cada Information
Slot e ir comprobando si está o no vacío. Si el IS está vacío, el FIA ejecuta la Query
Action. Está acción está orientada a provocar en el usuario un acto comunicativo que
ayude a completar el hueco de información.
El sistema de percepción multimodal construye una estructura, donde se incluyen
los atributos semánticos con sus valores, recibidos de la percepción del robot. Cuáles
son estos atributos y el origen de sus valores es totalmente trasparente al DMS, de
tal modo que un valor semántico puede venir tanto de información verbal como de la
percepción de algún gesto del usuario, e incluso de percepciones internas de alguna
propiedad del robot (por ejemplo el estado de carga de las baterías, la temperatura
interna del robot, consumo de CPU, etc).
Las acciones asociadas a los dos estados del IS (vacío o completo) pueden ser de
cuatro tipos. En la figura 4.8(a) se han clasificado según se refieran a acciones hacia
el exterior o hacia el interior del sistema.
Acciones comunicativas. En general cualquier acto comunicativo: frases, con-
firmaciones, gestos, aclaraciones, etc.
Acciones Ejecutivas. Cualquier acción dentro de un dominio de acciones posi-
bles que no son explícitamente comunicativas: obedecer la orden de un usuario,
encender la TV, etc.
Movimientos en el flujo del diálogo. En cualquier parte del proceso de
interpretación de un diálogo, el robot puede cambiar el contexto del diálogo
cargando una nueva implementación de un diálogo
Actualizaciones internas. Rellenando variables globales como el nombre del
usuario, o autorellenando otros huecos de información, así como activar otras
habilidades.
Las acciones comunicativas y ejecutivas son externas porque actúan directamente
en el entorno del robot. Las acciones internas se refieren a movimientos de un diálogo

66
Capítulo 4. Gestión del diálogo
a otro, o bien actualización de variables utilizadas por el propio diálogo o por las
habilidades del robot.
En las asignaciones a variables internas dentro del diálogo también se considera
poder realizar una asignación a un IS, dado que internamente también son varia-
bles del diálogo. Por ejemplo, imaginar los siguientes IS como siguen: @body_action
y @body_part referidas a una acción de movimiento (subir,bajar, avanzar, mover,
etc) y la parte del cuerpo involucrada (brazo derecho, izquierdo, cuello, etc). An-
te el enunciado del usuario "levanta el brazo izquierdo" asrSkill completará ambos
IS con los valores @body_action = move @body_part = leftArm. Sin embargo, an-
te el enunciado "avanza" puesto que la parte del cuerpo involucrada intrínseca es la
base, automáticamente como acción interna dentro del diálogo se completará el IS
@body_part = base.
La figura 4.8(b) muestra cada una de las partes de un diálogo para el ejemplo con-
creto de la habilidad que permite al usuario manejar la televisión mediante interacción
con el robot.
En este ejemplo, se han escogido un conjunto de frases para la query-action, que
provoquen que el usuario diga el comando que quiera enviar a la tele, o bien que
informen de lo que puede decir. Frases del tipo "dime un comando para la tele", "si
quieres apagar la tele dime apagar", etc.
Y como filled-action, el diálogo realiza el envío del evento oportuno a la habilidad
primaria o de más bajo nivel, IRskill, que es la que maneja el dispositivo de emisión
por infrarrojos. Se trata por tanto de una Executive Action.
4.5.
Implementación de un diálogo
En esta sección se explican las principales etapas que se han de realizar para la
implementación de un diálogo. Estas etapas son:
1. Diseño de las gramáticas para el reconocimiento de voz.
2. Diseño de los actos comunicativos de expresión o reutilización de los existentes,
que permiten obtener la información necesaria.
3. Incorporar tales AC en las "Query Actions" (acciones de consulta para conseguir
rellenar los correspondientes huecos de información).
4. Identificación y enumerado de los atributos semánticos necesarios.
5. Incorporar tales atributos en las habilidades de percepción y en la implementa-
ción del diálogo.

4.5. Implementación de un diálogo
67
(a) Esquema de implementación del diálogo. El diálogo realiza una Acción de Consulta
("Query Action"). Cuando un valor semántico completa un hueco de información, el
diálogo realiza una Acción de Completado ("Filled Action").
(b) Interpretación y gestión de la implementación de un determinado diálogo.
Figura 4.8: Implementación del diálogo de control de la televisión

68
Capítulo 4. Gestión del diálogo
6. Diseño e incorporación de "Filled Actions" (acciones que se ejecutan cuando se
rellena un hueco de información) en la implementación del diálogo.
7. Ajuste de los parámetros temporales del diálogo en su implementación.
De este modo se puede automatizar para todas las habilidades que requieran
interacción, la creación del diálogo necesario. El potencial de esta automatización es
tal que nos permite plantear la posibilidad de que sea el propio robot quien genere
la implementación del diálogo, a partir de unas "necesidades semánticas" para una
tarea, lo cual se propone como trabajo para un futuro a corto plazo.
4.5.1.
Diseño del lenguaje formal
El lenguaje que el robot es capaz de reconocer se define mediante la construcción
de gramáticas de contexto libre (CFG), a partir del conjunto de enunciados posibles
por parte del usuario. Para la creación de estas gramáticas lo más habitual es proceder
a la elaboración de un corpus de diálogos y de ahí obtener un modelo representativo.
Por ejemplo, en [Bugmann et al., ] se hace un análisis exhaustivo de cómo las personas
dialogan en un contexto específico para indicar direcciones entre usuarios.
La construcción de este corpus permite enumerar un lemario con las palabras
que utilizan los usuarios, y se identifican las reglas gramaticales que las relacionan.
También permite establecer características concretas de la representación del discurso,
como por ejemplo, en qué puntos se hacen referencias a estructuras de la interacción
ya enunciadas, etc.
La CFG permite incorporar los vocablos utilizados y las reglas gramaticales que
los relacionan mediante una expresión regular ([Jurafsky Martin, 2000] y otros). En
las reglas de las gramáticas implementadas además se suele incorporar una variable,
$GARBAGE, que sirve para representar vocablos del usuario fuera del lenguaje formal del
robot. Para nuestro sistema, y diálogos implementados, se han añadido un conjunto
de recursos genéricos y específicos (gramáticas, diálogos de ejemplo, etc).
4.5.2.
Actos comunicativos de expresión
Los actos comunicativos, o también conocidos como acciones comunicativas de
expresión, son parte de la estrategia de actuación comunicativa para la generación de
un discurso coherente. Y, en cualquier caso, tienen como objetivo inmediato afectar
a la conducta del receptor.
Dentro de nuestro sistema de diálogo, los actos comunicativos se utilizan dentro
de las Query Actions y de las Filled Actions. Por ejemplo, a pesar de los datos que nos
da la elaboración de un corpus, las faltas de entendimiento (misunderstandings) son
parte habitual de la interacción natural. El robot, por tanto, debe ser capaz de actuar

4.5. Implementación de un diálogo
69
adecuadamente para mantener la coherencia del diálogo y recuperar el entendimiento
ante enunciados del usuario no reconocidos.
Por otro lado, los actos comunicativos sirven para hacer al robot más natural en
su expresividad. Por ejemplo, se utilizan movimientos reactivos naturales como son
bostezos, risas, suspiros, cosquillas, y demás actos comunicativos innatos en el ser
humano.
4.5.3.
Mapa semántico del dominio del diálogo
Cada habilidad interactiva establece un conjunto de atributos semánticos que son
necesarios para la ejecución de la habilidad, y que conforman todo un mapa que se
denomina "mapa semántico".
Por ejemplo, la habilidad domótica necesitará saber qué aparato va a manejar y
qué comando necesita, luego como mínimo requiere de dos atributos semánticos. La
habilidad que interactúa para conocer algunas características personales del usuario
necesitará atributos semánticos como su nombre, su edad, su dirección de correo, etc.
La habilidad que lee las noticias conectándose a un servidor de noticias necesitará sa-
ber qué tipo de noticias quiere el usuario: científica, deportivas, generales, información
meteorológica, y así el resto de habilidades del sistema.
4.5.4.
Atributos semánticos, acciones de consulta y acciones
de completado
Cada atributo semántico requiere de uno o varios Query Actions, de distinto nivel
de complejidad. Así, para obtener simplemente el nombre del usuario el robot puede
preguntarlo directamente, pero para habilidades más complejas, el robot puede dar
una breve explicación de qué es lo que espera percibir y de cómo lo tiene que explicar
el usuario.
Un acto comunicativo del usuario (enunciado verbal o multimodal) puede comple-
tar varios atributos semánticos a la vez. El carácter semántico del atributo reside en
cómo afecta su valor al robot, es decir, en su Filled Action. Así por ejemplo, el nombre
del usuario se utilizará siempre que el robot quiera dirigirse al usuario de un modo
más cercano, es decir, que su uso no depende de su valor. Sin embargo, el parámetro
que define el tipo de noticias que el usuario quiere obtener influirá en cómo el robot
realiza la búsqueda de dichas noticias.
Un "Filled Action" puede implicar autocompletar otros atributos semánticos que,
por tanto, también ejecutarán su respectivas Filled Actions. Por ejemplo, la habili-
dad mediante la cual el usuario programa al robot una secuencia de acciones (véase
[Gorostiza Salichs, 2011]) si el usuario pide al robot que avance, se completará no

70
Capítulo 4. Gestión del diálogo
solo el atributo "
@action = move", sino también, la parte del cuerpo involucrada
"
@body = base".
Un "Filled Action", también puede implicar un movimiento en el diálogo. Por ejem-
plo, cuando el usuario se registra o identifica, el robot cambia de contexto hablando
sobre sí mismo e informando al usuario sobre sus posibilidades.
4.5.5.
Parámetros temporales para el control del diálogo
IDiM es de iniciativa mixta, luego incorpora la propiedad barge-in, esto es, que
el usuario pueda interrumpir al robot en medio de una locución. Antes de hablar el
robot establece si la frase que va a decir es o no interrumpible.
Otra propiedad importante es el tiempo de espera de una locución del usuario.
Cuando se supera este tiempo de espera el Dialog Manager emite un evento especial, y
es la implementación del diálogo quien decide qué hacer ante este evento. Por ejemplo,
en el "menú principal" si el usuario no dice nada, el robot cambia de estado a dormido.
4.6.
IDiM respecto a otros gestores del diálogo
En la sección 4.2 se ha descrito los principales DMS aplicados a robótica hasta la
fecha actual. Esta descripción ha sido estructurada dependiendo de varios factores. En
esta sección se hace una breve reflexión sobre esos sistemas y cuál es la contribución
que se hace en esta tesis con el gestor de diálogo IDiM.
La mayoría de los DMS desarrollados para robots sociales son específicos para un
determinado contexto, es decir, se focalizan en obtener mediante interacción, algún
tipo de información que esta fijada y no se puede cambiar en tiempo de ejecución.
Por lo tanto, esos sistemas están fuertemente acoplados a un determinado contexto en
un restrictivo dominio semántico. En ese sentido los DMS descritos anteriormente se
enfocan en un asunto concreto de investigación: diálogos para el aprendizaje, diálogos
multiparte, diálogos para actuar como enfermeros, etc. Se podría afirmar que hay una
carencia general de independencia entre el DMS y la "implementación del diálogo".
También hay una carencia general de escalabilidad: la mayoría de los DMS
presentados, especialmente los estadísticos (MPD's, POMDP 's, etc.) tienen la
enorme desventaja de que necesitan enormes corpus de diálogos etiquetados
([Gibbon, Moore, 1997]). Su entrenamiento se puede hacer mediante simulación, por
ejemplo utilizando HMM (Hidden Markot Models), o usuarios reales, siguiendo un
modelo de Mago de Oz
19
. Por todo ello, les hace difícilmente escalables a entornos
19
Experimentos en los que el robot se teleopera por un operador, sin que el usuario tenga conoci-
miento de que el robot está siendo realmente teleoperado

4.6. IDiM respecto a otros gestores del diálogo
71
comunicativos muy diversos, por lo que se suelen centrar en una tarea muy concreta
(ej: obtener horarios de trenes...).
Resumiendo, esos DMS están altamente acoplados a una tarea específica, y no
permiten cambios dinámicos en el contexto del diálogo, y en general no es nada sen-
cillo el desarrollo de nuevos diálogos. Por contra, se ha tratado de proporcionar un
nuevo sistema donde implementar un nuevo diálogo y unirlo con el resto de habilida-
des/capacidades de la arquitectura de control, es sumamente sencillo. Además todos
los posibles diálogos gozan de un repertorio de información relativa a la interacción,
a su alcance (encapsulada en cada acto comunicativo) que aporta información muy
valiosa para la interacción y que se puede usar en cualquier diálogo sobre cualquier
contexto comunicativo: localización de los usuarios respecto al robot, información so-
bre su edad, sexo, edad, colores de la ropa que lleva puesta, emoción con la que se
expresa, pose, nivel de destreza con el sistema, parte del cuerpo del robot que está
siendo tocada, etc.
Por otro lado, la mayoría de sistemas de diálogo funcionan como cliente o esclavo
controlado por el sistema maestro que ejecuta un plan, siendo así el diálogo una parte
más del plan. Así por ejemplo, cuando el robot necesita interacción con el usuario,
el planificador activa el sistema de diálogo que sincroniza su información con la del
sistema, y de manera subordinada interactúa con el usuario. El diálogo es así, una
capacidad más del sistema que se activa y desactiva en ciertas situaciones.
Nuestro propósito es dar la vuelta a este modelo de control, intercambiando los
papeles de maestro-esclavo. Ahora el sistema de ejecución de tareas es controlado por
el sistema de diálogo. En este modelo, el diálogo puede actuar como control central
(integrador de habilidades), teniendo la capacidad de ir activando o desactivando ha-
bilidades/módulos (mediante paso de mensajes) desde el propio diálogo, según avanza
la conversación.
Nuestra arquitectura de control AD-ROS también concibe la hipótesis de un sis-
tema automático de decisión, basado en un modelo de las emociones humanas que
está fuera del objetivo de esta tesis, en el que este sistema de decisión, sí es el que
toma el control, y se apoya en el Sistema de Interacción aquí presentado para in-
teractuar con el usuario (ver [Malfaz Salichs, 2004] y [Castro-González., ]). Incluso
en el caso en el que el diálogo actúa como control central, activando/desactivando
habilidades, se puede comunicar con las salidas del módulo de Toma de Decisión (la
emoción del robot principalmente), para tenerlas en cuenta como una entrada más al
sistema de interacción, de una manera similar a las entradas presentes en cada acto
comunicativo.
No conviene olvidar la naturaleza multimodal del sistema
20
, tanto en la entrada de
información al sistema (después de la fusión multimodal ), como a la salida del sistema
20
El sistema presentado al completo corresponde al tipo de los llamados con simetría multimodal,
esto es multimodalidad a la entrada y salida del Gestor de Diálogo.

72
Capítulo 4. Gestión del diálogo
(fisión multimodal). Pese a que nuestro sistema de diálogo se encuentra inspirado en el
estándar VoiceXML, este estándar no está diseñado para una interacción multimodal;
no obstante, tratando de mantener nuestros diálogos de una manera fiel al estándar,
se ha incorporado de una manera elegante la manera de lograr la multimodalidad
necesaria sin alterar gravemente el estándar, mediante el uso de un módulo de fusión
21
.
El gestor de diálogo aquí presentado tiene varias fuentes de información que se
describirán en las siguientes secciones del capítulo en detalle: la encapsulada en cada
acto comunicativo (frase reconocida, pose, distancia de interacción...), la que obtiene
del Sistema de Toma de Decisión (emoción y necesidades del robot), la que obtiene
del "Perfil del Usuario" (edad, nombre, idioma, experiencia...), información directa-
mente obtenida de servicios web (servicios de web semántica, traducción en-línea...).
Todas estas fuentes de información posibilitan unos diálogos más naturales de los rea-
lizados por todos los sistemas vistos hasta ahora, ya que el programador del diálogo
puede usar directamente en cualquier contexto comunicativo todas estas fuentes de
información.
4.7.
Resumen
Se ha presentado el gestor de diálogo IDiM, dentro del sistema RDS. La ventaja
fundamental de IDiM reside en su versatilidad: en cómo el sistema permite cambiar
de contextos de diálogo dinámicamente. Este sistema de diálogo se ha implementado
para su uso en los robots social del grupo, especialmente el robot Maggie. Este robot
cuenta con un conjunto muy amplio de habilidades, que además puede aumentarse
en tiempo de ejecución. IDiM permite adaptar la capacidad de diálogo del robot
a dicho conjunto de habilidades, manteniendo un único DMS para todas ellas con
independencia de su número o función.
Se considera un avance haber formulado el diseño de un diálogo que tiene en cuenta
tres aspectos o dimensiones: espacio-temporal, verbal y de relación; y que el diálogo
pueda ser directamente implementado a partir de cuatro conjuntos de características:
lenguaje formal, atributos semánticos, query-actions y filled-actions.
Naturalmente, el sistema cuenta con numerosas limitaciones. La primera y más
clara es la falta de un modelo encargado de mantener la coherencia del diálogo en
el cambio de dichos contextos. El robot pasa de una habilidad a otra, y en este
paso la manera que tiene de conservar la información que ha ido adquiriendo no le
permite realizar sus propias deducciones: falta un modelo de aprendizaje, que permita
completar parámetros conceptuales del diálogo por inferencia, inducción o deducción.
21
para profundizar más, ver la tesis sobre la que partió el trabajo mostrado en este capítulo
[J.F.Gorostiza., 2010]

4.7. Resumen
73
Sin embargo, el sistema es suficientemente robusto para ser utilizado por cualquier
robot social cuya arquitectura esté basada en módulos de ejecución independientes
que se han llamado habilidades, y en las que cada habilidad pueda tener asociada un
contexto de diálogo concreto (parámetros conceptuales). Las pruebas experimentales
con usuarios no expertos certifican la utilidad del sistema presentado. No obstante,
para superar las limitaciones actuales se esta trabajando en el uso de un gestor de
diálogo basado en planes.

74
Capítulo 4. Gestión del diálogo

CAPÍTULO
5
Sistema de fusión multimodal
name,
language,
age,
voiceprint,
experience,
dialogHistory
User
Profile
Automatic
Speech
Recognition
(ASR)
Audio
Extraction
Features
Natural
Language
Proccesing
(NLP)
User
Localization
Emotion
Detection
Multimodal
Fusion
(NLSML)
DIALOG
MANAGER
IDIM
DIALOGS: VXML
FILES
Natural
Language
Generation
(NLG)
Emotional
Text To
Speech (eTTS)
Sing
Generaton
(Vocaloid)
Non-Verbal
Sound
Generation
text
features
features
semantic:
atribute-value
localization
emotion/arousal
User Communicative Act xml
vxml
song
semantic,emotion,features
semantic, language,
emotion, character
words,language,
emotion, character
User
Identification
name
features
AUDIO
acustic signal
VOICE
REAL-TIME
SOUNDS
MUSIC
Engagement
Gestures
MOTOR/VISUAL
GESTURES
gesture
Body
Sensibility
TOUCH
capacitive signal
body part
VISION
images
Robot
Emotional
State
emotion
RFID
VISION
OCR
text
written
text
RFID
Reader
MULTIMODAL FISION
LASER
distance
information
Gesture
Recognition
rfid card
text
grid
points
gesture
image
Google/
Microsoft
Translate
Wolfram
Alpha
"Todo debe simplificarse hasta donde sea posible, pero nada más."-- Albert Einstein
75

76
Capítulo 5. Sistema de fusión multimodal
5.1.
Introducción: la teoría de actos comunicativos
en la interacción entre humanos
Para entender el concepto de diálogo y multimodalidad, es necesario entender
la teoría de actos comunicativos o actos del habla. Esta teoría se deriva del estu-
dio de la comunicación verbal entre humanos [Bach Harnish, 1979] [Bruner, 1975]
[Searle, 1975, Searle, 1969], [Newcomb, 1953], en ellos se define claramente que los
actos comunicativos son las unidades básicas del diálogo. Debido a estos estudios
previamente citados, los ingenieros han encontrado que esta teoría es muy útil para
describir y formalizar la comunicación que se puede realizar entre los humanos y las
máquinas. Estos actos comunicativos permiten describir la interacción en interfaces
de alto nivel de abstracción, de manera que en cada acto comunicativo se refleja una
intención por parte del interlocutor.
5.2.
Adaptación de la teoría de actos comunicativos
al sistema RDS
Partiendo del estudio de las interacciones humanas y del análisis de los actos
comunicativos como unidad de intercambio de información en el diálogo, se ha tratado
de adaptar su uso al sistema de interacción aquí presentado.
Un usuario dialogando con un robot, lo hace mediante turnos que involucran
comunicación verbal y no verbal. En cada uno de estos turnos se suministra cierta
información que es relevante para el diálogo y que es necesario agrupar para que
tenga significado temporal coherente. En cada turno, el usuario intenta transmitir
un mensaje, que lo realiza mediante voz, adoptando una posición espacial respecto al
interlocutor, una pose, con una determinada expresión facial, y usando un tono de voz
de acuerdo a su emoción y al propio contenido del mensaje, etc. Toda esta información
es extraída y manejada por el gestor de diálogo al agruparse temporalmente en un
mismo mensaje comunicativo.
En la Figure 5.1 se representa este intercambio de información en un flujo de
diálogo con varios turnos de conversación. El diálogo que se ilustra es un ejemplo
concreto de diálogo producido con nuestro sistema, en el que tanto el usuario co-
mo el robot, en cada turno, tratan de transmitir un mensaje a su interlocutor. Este
mensaje lo intercambian mediante los canales que consideren mas apropiados para
sus propósitos. El usuario se comunica con el robot en el primer acto comunicativo
(en la figura corresponde con la línea primera linea temporal), el sistema de diálogo
tarda un cierto tiempo en procesar dicha información y preparar la respuesta, que
normalmente es menor a un segundo (tercera linea temporal en la figura), entonces el
robot responde con su primer acto comunicativo (segunda linea temporal); el usuario

5.2. Adaptación de la teoría de actos comunicativos al sistema RDS
77
recibe la información transmitida por el robot, pero antes de que finalice el acto co-
municativo del robot, el usuario interrumpe al robot con un nuevo acto comunicativo,
el robot interrumpe su mensaje y permanece callado hasta que el usuario finaliza su
exposición. En este sentido, se habla de un sistema de diálogo full-duplex, en el que
ambas partes pueden interrumpir el proceso comunicativo del otro interlocutor.
Figura 5.1: .
Ejemplo de diálogo full-duplex. Cada una de las partes puede iniciar la conversación
y se pueden producir solapamientos e interrupciones en el turno de palabra
Para tratar de representar la información multimodal de manera coherente, el
organismo W3C
1
ha propuesto un estándar que especifica mediante un fichero de
texto XML como tiene que estructurarse dicha información. Este estándar se ha de-
nominado NLSML (Natural Language Semantics Markup Language)
2
. Este estándar
establece las reglas y la forma que tiene que tener el fichero XML donde queda refle-
jado las entradas multicanales recibidas, para que los gestores de diálogo basados en
huecos de información puedan gestionarla.
El sistema de diálogo multimodal desarrollado permite interactuar con todos los
robots sociales desarrollados en nuestro grupo de trabajo, aunque este trabajo se cen-
tre principalmente en el robot Maggie. En esta interacción, el usuario puede ordenar
al robot que realice tareas para las que ha sido diseñado. El sistema de diálogo actúa
como la capa de interfaz entre el usuario y el repertorio de habilidades del que está
dotado el robot.
La interacción entre el usuario y el robot normalmente está guiada principalmente
por el canal de voz, pero no es estrictamente necesario que sea así. La potencia del
sistema multimodal permite al gestor de diálogo abstraerse del canal usado para la
1
http://www.w3.org/
2
http://www.w3.org/TR/nl-spec/

78
Capítulo 5. Sistema de fusión multimodal
interacción, actuando de manera similar en el caso de que la entrada de información
sea por voz, tarjetas de radio frecuencia o inclusive por texto escrito. De esta manera,
se puede dialogar con el robot, en el sentido de intercambio de información, mediante
tarjetas de radio frecuencia, con un pictograma ilustrado sobre las mismas, que indican
la acción a realizar.
Hasta ahora, se ha comentado las ventajas de la multimodalidad relativa a la
entrada de información por varios posibles canales. En este sentido, la complemen-
tariedad de la información recibida no se está teniendo en cuenta, ya que una de las
posibilidades que nos brinda la fusión multimodal, gracias a esta complementariedad
de la información recibida por distintos canales, es la de permitir resolver referencia
deícticas (deixis), que son referencias a cosas que no están presentes en el contexto
lingüístico. En este sentido, en expresiones deícticas como: "vete allí", apuntando con
el dedo en una dirección, ese "allí" se resuelve mediante el componente que entrega
al diálogo la pose con la que se expresa el usuario (la posición del cuerpo señalando
a un punto espacial). En otro ejemplo de deixis, el usuario dice "levántalo", al mismo
tiempo que toca uno de los brazos del robot, en este caso, la parte del cuerpo a resol-
ver se resuelve mediante el módulo que entrega mediante el tacto la parte del cuerpo
del robot tocada.
Dado que es necesario que la información recibida por los distintos componentes
del sistema de diálogo RDS sean gestionados de manera coherente temporalmente.
Por ello, se tiene que determinar en que instante empieza y finaliza cada acto comu-
nicativo, teniendo en cuenta que cada módulo entrega la información semántica al
módulo de fusión multimodal sin ningún tipo de sincronización. Es necesario analizar
estos aspectos temporales para conseguir un correcto desempeño de un sistema de la
complejidad que se acaba de presentar.
Figura 5.2: Etiquetas de radio frecuencia con pictogramas

5.3. Cuatro ejemplos de diálogos multimodales
79
5.3.
Cuatro ejemplos de diálogos multimodales
En esta sección se va a describir lo principales escenarios donde se está usando y
evaluando el sistema de diálogo para interaccionar de manera multimodal con usua-
rios no expertos con el mismo. En ellos, se ha podido analizar como realizar la fusión
multimodal de la manera mas acertada posible. El primero de estos escenarios se
corresponde con el diálogo principal del sistema que se encarga de gestionar la inter-
acción entre el robot y el usuario, de tal manera que el primero de ellos actúa como
esclavo del segundo, activando y desactivando habilidades según el usuario considere
oportuno. En este escenario todas las entradas y salidas de información del sistema
son usadas y fusionadas.
El segundo escenario permite controlar/teleoperar el movimiento del robot me-
diante voz. Está diseñado expresamente para probar la fusión multimodal (la salida
del sistema ciertamente no es multimodal), y permite analizar cuando empieza y
cuando finaliza cada acto comunicativo. En los dos siguientes escenarios, el repro-
ductor de música y el diálogo en la nube, se presentan sistemas bastante novedosos,
sencillos pero muy potentes, en los que fundamentalmente la fusión de información
se realiza mediante el uso de dos reconocedores de voz, de propósitos diferentes, pero
trabajando simultáneamente.
5.3.1.
El integrador de habilidades por diálogo
El sistema de diálogo multimodal permite controlar al robot, de tal manera que
este último actúa como esclavo del usuario satisfaciéndole, dentro de sus posibilidades
de interacción. Para ello, el robot consta de un repertorio de habilidades o capacidades
que es capaz de realizar, mientras que el diálogo es capaz de activar/desactivar dichas
habilidades mediante interacción entre el usuario y el robot.
La arquitectura de control AD-ROS contempla las múltiples capacidades del robot
en habilidades independientes. Cada habilidad puede tener dos estados principales:
puede estar activa o bloqueada. Cada una de estas habilidades tiene asociada una
implementación concreta del diálogo, y el conjunto total de habilidades se integra y
se controla mediante un sistema de control central. Este sistema se ha implementado
mediante un diálogo principal que se encarga de secuenciar las habilidades en tiempo
real según vaya ocurriendo la interacción con el usuario.
Desde el diálogo principal (integrador), se puede transitar a otros subdiálogos
(ver la Fig. 5.3). En este sentido, la especificación del diálogo puede verse como
una máquina de estados o un grafo dirigido. Cada estado se corresponde con un
determinado contextos comunicativo. Cada vez que se transita de un estado a otro,
se produce un cambio en el contexto comunicativo. Estas transiciones consisten en
cargar el nuevo subdiálogo correspondiente, con su/s gramática/s asociadas.

80
Capítulo 5. Sistema de fusión multimodal
Figura 5.3: Ejemplo de diálogo como integrador de habilidades en el robot social
Maggie. El robot actúa como esclavo, obedeciendo y ejecutando las acciones que
ordena el usuario
.

5.3. Cuatro ejemplos de diálogos multimodales
81
La interacción comienza con el saludo del robot al usuario, mediante voz y sonidos
no verbales. De esta manera el robot trata de atraer la atención del usuario, para
iniciar una interacción. Si el usuario responde al robot devolviendo el saludo, se puede
considerar que ha comenzado una interacción que es deseable mantener. Como se ha
comentado en numerosas ocasiones la interacción es multimodal, de tal manera que
el usuario puede saludar al robot no sólo mediante la voz, sino también mediante la
etiqueta de radio frecuencia que representa el pictograma de saludar.
Cuando la interacción se realiza por voz, si el robot reconoce el timbre de voz del
usuario automáticamente carga su perfil para adaptar mejor el diálogo a su interlocu-
tor (idioma de voz usado, nivel de experiencia, estado emocional, preferencias, etc)
3
.
Si por el contrario, el sistema no logra identificar al usuario, le pregunta si desea que
se conozcan mejor. Si el usuario acepta, responderá a una serie de preguntas que le
hace el robot, relacionadas con su nombre, edad, idioma preferido, etc. Durante este
proceso de "registro" en el sistema, el robot aprende las características de la voz del
usuario para futuras identificaciones o detección de emociones, así como sus prefe-
rencias personales. Si el usuario no desea "registrarse" en el sistema, la interacción
continua pero sin ser adaptada al usuario.
La adaptación del diálogo al usuario se realiza en varios sentidos. Alguna de estas
adaptaciones son las siguientes: el idioma en el que se conversa, la posición del robot
respecto al usuario, más o menos diálogos explicativos del sistema en función del ni-
vel de experiencia del usuario, la edad para sugerir o no ciertos juegos/habilidades, el
nombre del usuario para dirigirse a él por su nombre además de poder consultar cuen-
tas personales como la de su correo electrónico, el sistema de detección de emociones
también se adapta al tono del usuario para aumentar la precisión de la clasificación,
etc.
Una vez que el usuario ha sido identificado puede ordenar al robot que realice
cualquier acción de entre las disponibles
4
. En este estado, el robot se encuentra en
un modo de pregunta abierta, en el cual el robot actúa como un asistente capaz
de obedecer a un conjunto bastante amplio de opciones disponibles. Actualmente el
sistema tiene integrado unas veinte habilidades entre juegos interactivos, habilidades
de información (dar las noticias deportivas o el tiempo meteorológico), reconocimiento
de medicamentos mediante RFID, etc. No obstante, este dominio de habilidades es
fácilmente ampliable e integrable en el sistema global.
El usuario puede ordenar al robot cualquier acción, por ejemplo su deseo de que-
rer que le acompañe moviéndose por el entorno. Cuando se procede a activar una
3
Se está trabajando en un sistema mas complejo de identificación de personas, en las que se
combina la voz con aspectos visuales como: reconocimiento facial, de género e incluso de la ropa que
lleva o llevaba puesta
4
Sino ha sido identificado y no ha querido registrarse también llega a este estado del diálogo,
pero sin adaptación

82
Capítulo 5. Sistema de fusión multimodal
habilidad que pueda comprometer la seguridad del robot o del usuario, el robot pide
confirmación. Por ejemplo, la habilidad followMe implica que el robot pueda moverse
libremente por el entorno. Si el usuario confirma afirmativamente, el dialogo realiza
la activación de la habilidad. A su vez, esta habilidad gestiona su propio subdiálogo
que intercala síntesis de sonidos y de frases. El usuario puede desactivar la habilidad
y volver al diálogo principal mediante otro comando de voz.
Volviendo al estado del diálogo principal que permite activar y desactivar habili-
dades del robot, el usuario puede, por ejemplo, pasar al subdiálogo que se encarga de
controlar la televisión. Mediante este diálogo se puede controlar todas las funciona-
lidades que ofrece la televisión, y de forma general cualquier dispositivo controlarse
mediante un mando infrarrojo universal. De la misma forma, el diálogo permite con-
trolar cualquier habilidad de las que consta el repertorio de nuestra arquitectura de
control.
Si el usuario desea finalizar la interacción, bastará con despedirse del robot o
"mandarle a dormir". En ese momento, el robot se despide del usuario y transita al
estado de "bienvenida" en el que puede establecer una interacción con cualquier otro
usuario.
El diálogo desarrollado para la interacción con los usuario, hasta la fecha no es
multiparte. Esto es, no es posible cargar más de un perfil de usuario, ni tampoco
identificar varios usuario concurrentemente, ni separar la señal de audio recibida en
varios canales de voz, por lo que no se puede mantener una interacción coherente y
concurrente con varios usuarios simultáneamente.
5.3.2.
El Diálogo de teleoperación multimodal
Centrándonos en la multimodalidad del sistema capaz de resolver referencias deíc-
ticas, se ha construido un diálogo que permite mover/teleoperar el robot para evaluar
la fusión multimodal del sistema. Para ello, el usuario deberá indicar mediante cual-
quiera de los canales disponibles (voz,tacto, visión, RFID y gestos) la acción a realizar
(Fig. 5.4). Veamos unos ejemplos de interacción gestionada por el sistema:
El usuario dice "sube el brazo derecho". No toca ninguna parte del robot y no
realiza tampoco ningún gesto con su cuerpo (pose neutra). Simplemente desea
que el robot levente su brazo derecho. Para ello, toda la información necesaria
está presente en la frase de voz: Action
: Up, BodyP art : Right
A
rm. Por lo
tanto, mediante el uso de un único modo.
El usuario dice "súbelo" al mismo tiempo que toca el brazo que desea que suba
el robot. Es necesario que toque el brazo del robot antes de que se finalice el
reconocimiento de la frase pronunciada, sino el sistema no sabría que parte del

5.3. Cuatro ejemplos de diálogos multimodales
83
cuerpo tiene que subir. En este caso nuevamente los huecos de información son:
Action
: up, BodyP art : Right
a
rm. Ver figura 5.4 a).
El usuario dice "gíralo a la derecha" al mismo tiempo que le toca la cabeza.
En este caso el usuario desea que el robot gire su cuello a la derecha: Action
:
T urn
l
ef t, BodyP art
: Head. Ver figura 5.4 b).
El usuario dice "gira la cabeza a la izquierda" sin tocar ninguna parte del
robot. Este caso es equivalente al anterior, sin embargo toda la información
necesaria está contenida en la frase de voz, esto es, no hay deíxis. Action
:
T urn
l
ef t, BodyP art
= Head.
El usuario dice "vete en esa dirección" indicando con su brazo la dirección a
la que quiere que se mueva el robot. En este caso la pose del usuario indica la
dirección del movimiento. Action
: Move
L
ef t, BodyP art
= Base. Ver figura
5.4 c).
El usuario dice "vete a la derecha" sin tocar ni indicar con ningún ges-
to nada. Toda la información está presente en al frase de voz: Action
:
M ove
r
ight, BodyP art
: Base.
El usuario dice "vete al cargador" sin tocar ni hacer ningún gesto. En es-
te caso, el robot se irá a la posición donde se encuentra la estación de car-
ga par recargar sus baterías. En este caso nuevamente toda la información
necesaria se encuentra en la frase de voz, no obstante, para saber la posi-
ción del cargador se usan las habilidades de navegación geométrica presen-
tes en el robot, que le permite moverse hacia sitios conocidos una vez se ha
localizado.Action
: Move
c
hargeStation, BodyP art
: Base. Por lo tanto, uno
de los huecos de información se rellena mediante el acceso al modelo del mundo
del robot.
El usuario dice "vete a la puerta" sin tocarle ni hacer ningún gesto. Nos encon-
tramos en un caso similar al anterior. Action
: Move
d
oor, BodyP art
: base.
El diálogo concreto encargado de realizar la teleoperación se especifica en un
fichero XML que actúa como capa de interfaz entre los sensores (mediante fusión) y de
los actuadores (mediante fisión). En dicho dialogo se tienen tres huecos de información
a rellenar: acción a realizar, parte del cuerpo involucrada y dirección de dicha acción.
En la figura 5.5 se puede ver un diagrama con la estructura conceptual del dialogo
aquí presentado. Obsérvese que no todas las entradas multimodales son tenidas en
cuenta. Las salidas multimodales del sistema son los gestos motrices involucrados en
la intención del acto comunicativo: desplazarse por el entorno, mover una extremidad

84
Capítulo 5. Sistema de fusión multimodal
(a) Up the right arm
(b) Turn the head right
(c) Go there
Figura 5.4: El usuario da ordenes de movimiento al robot mediante voz, o una com-
binación de voz, gestos y/o tacto
arriba o abajo, girar la cabeza a izquierda o derecha y hablar para comunicar la acción
a realizar.
Figura 5.5: Esquema del diálogo de teleoperación
Para el relleno de estos huecos de información, el módulo que aquí se está des-
cribiendo de fusión multimodal debe saber como realizar dicha fusión en actos co-
municativos. Para ello es necesario establecer cuando empieza y finaliza cada acto
comunicativo. Sirviéndonos de nuestro pequeño diálogo para teleoperar el robot y
analizando la evolución temporal de los eventos de resultados semánticos disponibles
por cada uno de los módulos que entregan información al módulo de fusión multimo-
dal, se ha determinado que cada acto comunicativo queda separado por la notificación

5.3. Cuatro ejemplos de diálogos multimodales
85
de final de reconocimiento de voz. Es decir, el evento que entrega el ASR (Automatic
Speech Recogniton) cuando el reconocimiento de voz ha concluido servirá para mar-
car la frontera entre diversos actos comunicativos. En el caso de tener varios motores
de reconocimiento ejecutando de manera concurrente (Loquendo y Google ASR), se
espera por la obtención de los resultados de reconocimiento de ambos motores, antes
de dar por concluido el acto comunicativo.
Si un mismo evento, con distintos valores semánticos es lanzado durante el mismo
acto comunicativo, esto es, antes de la notificación de final de reconocimiento, será la
información suministrada en el último evento de ese tipo, la que se tenga en cuenta. En
figura 5.6 se puede ver una secuencia temporal de como se realiza la fusión multimodal
en actos comunicativos. Los valores que reconoce cada uno de los módulo se entregan
al módulo de fusión multimodal en cuanto están disponibles. Esto implica que la
llegada de estos valores se hace de una manera asíncrona y desincronizada, siendo el
componente de fusión el que los agrupa en un mismo acto comunicativo. Este acto
comunicativo queda reflejado en un fichero de texto XML, que es entregado al gestor
de diálogo IdiM, para que de manera coherente trate esta información fusionada
temporalmente (en la figura, aparecen a derecha). En la figura se representan dos
actos comunicativos, en el primero de ellos, el usuario toca el brazo derecho del robot
y le dice que quiere que lo suba. En el segundo acto comunicativo el usuario toca la
cabeza del robot y le dice que la gire a la izquierda. Son solo dos sencillos ejemplos
para ilustrar como se realizar la fusión multimodal, pero cualquiera de los enumerados
previamente son posibles.
5.3.3.
Diálogo de reproducción de música en línea
Otro diálogo de ejemplo, que ilustra las posibilidades multimodales de nuestro
sistema de diálogo y que resultaría en una utilidad muy interesante para un posible
usuario, es el que permite que el robot pueda reproducir la mayoría de las canciones
de cualquier grupo que se pueda encontrar en Internet. El usuario únicamente debería
decirle al robot la canción, el grupo, o ambas cosas a escuchar, el robot casi instantá-
neamente comienza a reproducir la canción o las canciones solicitadas. En este caso,
la fusión multimodal unifica la información de los dos motores de reconocimientos
disponibles en nuestro sistema, el basado en gramáticas y el de gramática abierta (de
texto libre), cuya finalidad y uso es diferente. Por otro lado, se logra incorporar un
nuevo tipo de salida al sistema como es la reproducción de canciones.
Para su implementación, se ha usado el servicio de reproducción e intercambio

86
Capítulo 5. Sistema de fusión multimodal
comunitactivos.jpg
Figura 5.6: Ejemplo de la fusión multimodal de dos actos comunicativos
musical Goear
5
y un script
6
en lenguaje Perl
7
que sirve como interfaz para reproducir
una canción o varias de un mismo grupo musical. Esto permite que el propio sistema
de diálogo pueda acceder a los servicios del portal musical.
En este ejemplo se ilustra la fusión del reconocimiento de voz basado en gramáti-
cas (mediante Loquendo ASR) y el reconocedor de texto abierto (mediante el servicio
web de Google ASR). Cuando el usuario le dice al sistema que quiere escuchar música
está rellenando un hueco de información, basado en gramáticas, que corresponde con
la acción que se quiere realizar. Por otro lado, el diálogo se mueve a otro formulario,
donde un hueco de información es "TextPlain" que representa la canción o el grupo
a reproducir. Este texto plano es rellenando mediante el reconocedor de voz, no ba-
sado en gramáticas, de Google ASR. Este reconocedor de voz no genera resultados
5
http://www.goear.com
6
Un script es un guión o conjunto de instrucciones. Permiten la automatización de tareas creando
pequeñas utilidades. Es muy utilizado para la administración de sistemas UNIX. Son ejecutados por
un intérprete de línea de comandos. Usualmente son archivos de texto.
7
http://www.splitcc.net/Downloads/playgoear.pl

5.3. Cuatro ejemplos de diálogos multimodales
87
semánticos, sino que únicamente nos devuelve la transcripción textual de la frase pro-
nunciada verbalmente. Si se quisiera rellenar el hueco de información, relativo a la
canción o el grupo a escuchar, mediante un reconocedor basado en gramáticas (como
el de Loquendo), se hubiera necesitado una gramática de gran tamaño que recogie-
ra todas las posibles canciones y grupos a escuchar. En la práctica, constituye una
solución casi inviable, por su alto coste y dificultad de mantenimiento.
5.3.4.
Diálogo de pregunta abierta
En este escenario el robot es capaz de responder a casi cualquier pregunta que el
usuario pueda formularle mediante voz y en cualquier idioma. Preguntas como por
ejemplo:
"Cual es la distancia de la tierra a la luna"
"Donde estoy"
"Cual es la capital de Francia"
"Que sabes sobre Rafael Nadal"
"Que tiempo hace hoy en Nueva York"
"Cuanto es 12 x 3"
En este caso se ha diseñado un sistema de diálogo muy similar al famoso Siri
8
,
que es capaz de responder a preguntas complejas.
El usuario primeramente deberá decir al sistema que quiere realizarle una pregunta
y a continuación la pregunta concreta a realizar; el robot le repite la pregunta realizada
y a los pocos segundos contesta por voz con la respuesta más apropiada posible.
Internamente el sistema de diálogo funciona de manera similar al escenario ante-
rior, primero rellena el hueco de información de acción a realizar, mediante Loquendo
ASR y se mueve a un nuevo formulario donde se quiere rellenar la pregunta concreta
a formular, mediante un hueco de información de texto plano. Este hueco de informa-
ción se rellena mediante el reconocedor de Google ASR que es capaz de transcribir
en multitud de idiomas la pregunta formulada.
Si se está dialogando con el robot en un idioma distinto del inglés, se usan los
servicios de traducción en línea de Google o Microsoft para traducir dicha pregunta
al idioma inglés. Dicha pregunta en inglés, es enviada a la base de conocimiento
8
http://www.apple.com/iphone/features/siri.html

88
Capítulo 5. Sistema de fusión multimodal
Wolfram Alpha
9
que responde a dicha pregunta, con la información que es capaz de
obtener de su base de conocimiento, mediante un fichero XML.
Una vez se tiene la respuesta, se interpreta el fichero XML para obtener las partes
más interesantes de dicha respuesta (principalmente aquellas que se pueden comu-
nicar por voz), y son sintetizas por el sistema de diálogo en el idioma en el que se
estaba dialogando, siendo nuevamente necesario una traducción online si el idioma era
distinto del inglés. Si las traducciones no son correctas se puede perder información
valiosa para el diálogo, también hay ciertas preguntas para las que el sistema no tiene
ninguna respuesta, en esos casos se le comunica al usuario que no se dispone de dicha
información, en diferente posibles expresiones (no siempre dice la misma respuesta).
Otro aspecto que se ha tenido en cuenta, para que el sistema sea lo suficientemente
interactivo, es la velocidad de respuesta del diálogo. Para ello, se ha implementado a
bajo nivel un sistema de detección de comienzo y fin de voz, para enviar al servicio
de Google ASR única y exclusivamente las muestras de voz en cuanto estas están
disponibles y en un formato de audio comprimido (flac o speex), de esta manera se
obtiene la transcripción en apenas un segundo de retraso desde que se finalizó la
locución. A su vez el servicio "Wolfram Alpha" y el parseo de la respuesta demora
unos 3 o 4 segundos, tiempo que es compensado con la síntesis, por parte del robot,
de la pregunta que ha formulado el usuario antes de comunicarle su respuesta.
5.4.
Resumen
En este capítulo se ha descrito como se realiza el proceso de fusionar el conjunto de
entradas multimodales, en un único paquete de información coherente en el tiempo,
capaz de ser interpretado por el gestor de diálogo. El trabajo desarrollado se ha inspi-
rado en la teoría de actos comunicativos en la interacción entre humanos. Finalmente
y mediante ejemplos, se ha descrito y analizado los principales diálogos implementa-
dos para este trabajo y que sirven como pruebas experimentales para mostrar esta
fusión multimodal.
9
http://www.wolframalpha.com/

CAPÍTULO
6
Sistema de reconocimiento automático del habla
Automatic
Speech
Recognition
(ASR)
Audio
Extraction
Features
Natural
Language
Proccesing
(NLP)
User
Localization
Emotion
Detection
Multimodal
Fusion
(NLSML)
DIALOG
MANAGER
IDIM
User
Profile
DIALOGS: VXML
FILES
Natural
Language
Generation
(NLG)
Emotional
Text To
Speech (eTTS)
Sing
Generaton
(Vocaloid)
Non-Verbal
Sound
Generation
text
features
features
semantic:
atribute-value
localization
emotion/arousal
name,
language,
age,
voiceprint,
experience,
dialogHistory
User Communicative Act xml
vxml
song
semantic,emotion,features
semantic, language,
emotion, character
words,language,
emotion, character
User
Identification
name
features
AUDIO
acustic signal
VOICE
REAL-TIME
SOUNDS
MUSIC
Engagement
Gestures
MOTOR/VISUAL
GESTURES
gesture
Body
Sensibility
TOUCH
capacitive signal
body part
VISION
images
Robot
Emotional
State
emotion
RFID
VISION
OCR
text
written
text
RFID
Reader
MULTIMODAL FISION
LASER
distance
information
Gesture
Recognition
rfid card
text
grid
points
gesture
image
Google/
Microsoft
Translate
Wolfram
Alpha
"Asegúrate antes de hablar que tus palabras son mejores que el silencio."-- viejo
proverbio árabe
89

90
Capítulo 6. Sistema de reconocimiento automático del habla
6.1.
Introducción
Cuando se habla de interacción-humano robot, se asume que el robot tiene la
capacidad de reconocer las palabras que el humano transmite verbalmente de ma-
nera precisa, incluso entender el significado de dicha oración, es decir, de extraer la
semántica asociada a dicha frase.
Los humanos tenemos cinco sentidos básicos ­ visión, tacto, oído, olfato y gusto-
con los que percibimos nuestro entorno y nos hacemos una concepción mental
del mundo. Sin embargo, puede resultar paradójico, que siendo el habla el me-
dio de comunicación por excelencia entre las personas, la interacción con los equi-
pos informáticos se lleve a cabo casi siempre mediante teclado, ratón o pantalla
táctil[Jansen Belpaeme, 2006].
Las denominadas tecnologías del habla tienen como finalidad facilitar el uso de los
ordenadores, en nuestro caso de los robots, introduciendo y recibiendo información
de modo oral. Para alcanzar este objetivo es necesario contar, al menos, con tres
tecnologías básicas: las que posibilitan que la información escrita se convierta en voz
­ síntesis del habla-, las que permiten que un sistema informático realice las tareas
que se le solicitan verbalmente ­ el reconocimiento del habla- y las que facilitan la
interacción oral entre una persona y un servicio ­ los sistemas de diálogo - que se
basan en las dos tecnologías previamente citadas.
Por reconocimiento automático del habla (automatic speech recognition o ASR)
entendemos el proceso de capturar y convertir una señal acústica, recogida por un
micrófono, en texto escrito, mediante un computador. Las tecnologías de ASR se divi-
den en dos tipos básicos: uno es "speaker-dependent system", en el que el sistema está
entrenado para un usuario en concreto y sólo es capaz de reconocer adecuadamente la
voz de ese usuario (el reconocimiento es abierto, todas las frases son posibles y váli-
das; se les suele llamar herramientas de dictado). El otro tipo es "speaker-independent
system" el cual es capaz de transcribir las oraciones enunciadas por cualquier usuario
y sin entrenamiento previo con el sistema. En el campo de la HRI el interés se centra
principalmente en el segundo tipo de sistemas.
Según
Llisterri
[Llisterri et al., 2003],
Liddy
[Liddy, 2005]
y
Feldman
[Feldman, 1999], en cualquier sistema con reconocimiento automático del habla
existen los siguientes niveles lingüísticos de abstracción: nivel fonético, morfológico,
léxico, sintáctico, semántico, de discurso, y pragmático. Estos niveles abarcan
la construcción de palabras como conjunción de fonemas; las reglas válidas de
posicionamiento de las palabras dentro de una oración; la extracción del significado
semántico de la oración en el contexto comunicativo y en relativas al discurso general.
Este capítulo se ha centrado en los primeros niveles: léxico, sintáctico y semántico,
dejando a un lado el nivel pragmático o del discurso, en los que actualmente se está
trabajando y se está próximo a realizar una publicación al respecto.

6.1. Introducción
91
En los estudios sobre HRI encontrados en la literatura, no es habi-
tual que se facilite información sobre el software usado para realizar el re-
conocimiento automático del habla, ni tampoco los sistemas físicos de cap-
tación del audio. Se pueden encontrar algunos estudios, como por ejemplo
[Ishi et al., 2006b][Kim Choi, 2007][Kibria Hellström, 2007], que se centran en
robots móviles, por lo que el aspecto social pasa a un segundo plano. La mayoría sue-
len trabajar únicamente en idioma inglés, lo que hace muy difícil extraer y extender
conclusiones de su uso con otros idiomas. Por último, no se hace un estudio completo,
comparativo y preciso de la calidad del reconocimiento con las distintas opciones de
software/hardware actualmente disponibles y en diversos entornos.
En esta sección se persigue el objetivo de dar las pautas y una visión general de los
aspectos y tecnologías a tener en cuenta a la hora de dotar a un robot de la capacidad
de entender el lenguaje natural hablado. Nuestro objetivo no ha sido desarrollar desde
cero los algoritmos y los componentes básicos para tal función, sino la de integrar las
tecnologías existentes con nuestra arquitectura de control para conseguir la más alta
calidad posible en la HRI por voz.
Otros trabajos similares que se están desarrollando y de relevancia son: la librería
open-source HARK [Nakadai et al., 2008a], que incluye los módulos de localización de
fuente sonora, ASR y reconocimiento multicanal. Otros estudios recientes y que abren
una nueva vía de investigación, son los que fusionan la información visual de lectura
de labios, con la sonora, para mejorar el reconocimiento global [Yoshida et al., 2009].
Existen numerosos robots con la capacidad de realizar reconocimiento automá-
tico del habla. Se puede hacer una división en dos tipos de robot con esta ca-
pacidad: los primeros de ellos son los llamados "chatbot" o "robots virtuales", los
cuales carecen de cuerpo físico real, y su interacción es a través de un compu-
tador tradicional. Por otro lado, están los robots dotados de un cuerpo real, en-
tre ellos se puede mencionar algunos de los más relevantes para la HRI, como
son Honda ASIMO [Sakagami et al., 2002], SIG2, Robovie[Mitsunaga et al., 2006],
HRP-2 [Takahashi et al., 2010], todos ellos dotados del software HARK. IROBAA
[Kim Choi, 2007] es capaz de localizar la fuente sonora mediante la fusión de la
información visual y auditiva. JIJO-2 [Fry et al., 1998], es capaz de convivir con hu-
manos en un ambiente doméstico, al igual que Robovie, siendo capaz de aprender el
nombre de ciertos objetos y localizaciones por voz (short semantic memory). HER-
MES [Bischoff Graefe, 2004] es un robot capaz de entender el lenguaje natural, el
cual ha sido probado durante 6 meses como guía de museo. Todos estos robots, son
capaces de entender el lenguaje natural hablado, pero sólo en un subconjunto del
inglés y/o Japonés.
A continuación, en la sección 6.2 se describen los mecanismos hardware para cap-
tar el sonido y la voz humana. En la sección 6.3 se enumeran los problemas más

92
Capítulo 6. Sistema de reconocimiento automático del habla
importantes asociados al reconocimiento automático de voz en un robot social. Segui-
damente, en la sección 6.4 se describen los diferentes modos o paradigmas de realizar
reconocimiento automático de voz. En la sección 6.5 se enumeran los requisitos a
cumplir por el sistema de ASR. Posteriormente, en la sección 6.6 se realiza un estado
del arte de los entornos de reconocimiento de voz disponibles. En la sección 6.7, se
describe como integrar uno de estos entornos dentro de la arquitectura de control del
robot. En la siguiente sección, 6.8, se describe como se ha integrado en la arquitectura
dos motores de reconocimiento de manera concurrente. Le sigue, en la sección 6.9,
un conjunto de experimentos realizados con el sistema de ASR. Se concluye, en la
sección 6.10 con un resumen del capítulo.
6.2.
Mecanismos de captura de sonido y voz humana
Recordar que la robustez y el alto rendimiento del ASR son objetivos primordiales,
pero hasta ahora apenas se ha mencionado un aspecto crucial para el correcto desem-
peño de este tipo de interacción verbal: el sistema con el que se capturará el audio.
Los robots deberían tener capacidades de audición similares a las del ser humano para
llevar acabo una interacción natural en un contexto social. En entornos reales existen
multitud de fuentes de ruido, por ello muchos robots tratan de evitar este problema
forzando a los usuarios a interactuar usando un micrófono auricular colocado cerca
de su propia boca. Para una interacción más natural, el robot debería escuchar los
sonidos que le llegan mediante sus `propios oídos" integrados en su cuerpo, en vez de
forzar a los usuarios a llevar micrófonos auriculares inalámbricos [Breazeal, 2001].
Actualmente se puede agrupar los mecanismos de captura de audio en cinco ti-
pos de micrófonos aplicables a la robótica, con independencia del conector usado
(minijack, USB, bluetooth, WUSB, etc.). Cada uno de ellos ha sido diseñado para
un tipo de uso, y para la interacción humano robot tienen determinadas ventajas e
inconvenientes que se van a describir a continuación (ver Fig. 6.1):
(a) auricular
(b) onminidrec-
cional
(c) array
(d)
So-
bremesa
(e) Vocal
Figura 6.1: Tipos posibles de micrófonos a usar en interacción humano-robot

6.2. Mecanismos de captura de sonido y voz humana
93
El "auricular/headset", es un micrófono de tipo unidireccional, que es capaz de
captar el sonido en un solo sentido y a escasa distancia de la boca del usuario.
Este tipo de micrófono proporciona mayor calidad en el reconocimiento de voz
y de robustez frente al ruido debido a esa cercanía directa con la voz del usua-
rios. Sin embargo, fuerza al usuario a llevar consigo el auricular y una "petaca"
inalámbrica que actúa como emisor de la señal de audio. El robot necesita lle-
var incorporado la "petaca" receptora de la señal de audio emitida. Este tipo
de micrófono es muy válido en diversas situaciones: cuando el ruido ambiente
es muy alto, cuando la distancia de interacción es grande (debido a la trasmi-
sión inalámbrica de la señal, la distancia de interacción no influye en la calidad
de reconocimiento) y finalmente cuando existen varias personas conversando
simultáneamente pero únicamente uno de ellos está interactuando con el robot.
El micrófono de ambiente (omnidireccional), se caracteriza por su capacidad
para captar sonido en todos las direcciones. Normalmente se emplea para cap-
tar el sonido de ambiente en eventos deportivos o en musicales. Su uso está
muy limitado como dispositivo válido para el reconocimiento de voz, ya que el
rango de frecuencias que recoge es muy amplio y rara vez tienen mecanismos
de cancelación de ruido.
El "array de micrófonos" es un número variable de micrófonos (unidireccionales)
operando en paralelo colocados sobre una estructura fija. Se suelen montar en un
número que varía entre 3 y 8 micrófonos. Su uso esta justificado por dos motivos:
su capacidad de extraer con claridad la voz humana en ambientes ruidosos, sin
necesidad de "petacas" ni auriculares; y por otro lado por poder desempeñar fun-
ciones de localización de la fuente sonora, es decir, determinar la dirección en la
que viene el sonido y localizar al usuario respecto al robot. Estas características
son muy interesantes en HRI y han sido estudiadas en varios trabajos con robots
[Kim Choi, 2007],[Tamai et al., 2005], [Valin et al., b], [Yoshida et al., 2009],
[Tanaka et al., 2010]. Está creciendo su uso con videoconsolas [Chetty, 2009],
portátiles, teléfonos móviles, coches[Oh et al., 1992], etc. Su principal inconve-
niente es su gran tamaño, debido a que los algoritmos de localización sonora y
cancelación de ruido necesitan que los micrófonos estén suficientemente sepa-
rados unos de otros. En la actualidad existen micrófonos de array comerciales
disponibles, en esta tesis se han realizado pruebas con la captación de audio y
localización sonora de los dispositivos Voice Tracker I
1
y la Microsoft Kinect
2
.
El micrófono de sobremesa es un tipo de micrófono unidireccional que es capaz
1
http://www.acousticmagic.com/acoustic-magic-voice-tracker-i-array-microphone-product-
details.html
2
http://en.wikipedia.org/wiki/Kinect

94
Capítulo 6. Sistema de reconocimiento automático del habla
de captar audio de una manera muy direccional a distancias que pueden oscilar
entre los pocos centímetros y los varios metros. Han sido diseñados para tareas
como videoconferencias en ordenadores de sobremesa y permiten al usuario
conversar, sin necesidad de auriculares, sin por ello perder calidad de sonido.
Son muy útiles para robots que no se pueden permitir la integración de elementos
tan voluminosos como los arrays de micrófonos. La calidad de captura de voz
es similar a estos últimos, si bien son algo menos robustos frente a condiciones
de ruido ambiental.
El micrófono vocal es usado por presentadores, cantantes, etc. Presenta varias
características que hacen a estos dispositivos propicios para la interación hu-
mano robot. La primera de ellas, es que permite captar el rango de voz humana
a una corta distancia, atenuando el resto de sonidos y voces más lejanas. La
segunda, es que se puede encontrar modelos inalámbricos a un precio asequible
(por ejemplo los micrófonos del juego SingStar ). La tercera, es que puede faci-
litar la gestión del turno de palabra en una interacción con varios usuarios que
se van intercambiando el micrófono.
6.3.
Dificultades en la interacción por voz:
"Cocktail
Party Problem"
La captura de voz mediante micrófonos se encuentra con algunas dificultades que
son necesarias de tener en cuenta para logar una correcta interacción, especialmente
en el caso de micrófonos integrados en el propio robot. Existen multitud de fuentes de
ruido que pueden degradar el reconocimiento de voz, como se puede ver en la figura
6.2.
6.3.1.
Cocktail Party Problem
El "Coctkail Party Problem", literalmente traducido como el problema de la fiesta
del cóctel, o de una forma menos literal, como el proceso de "atención selectiva", es
el fenómeno por el que los humanos son capaces de focalizar la atención auditiva en
un estímulo particular, mientras que filtran inconscientemente el resto de estímulos.
El nombre viene del modo en que un asistente a una fiesta puede centrarse en una
sola conversación en una sala ruidosa ([Haykin Chen, 2005, Wood Cowan, 1995,
Bronkhorst, 2000, Conway et al., 2001]). Este efecto es el que permite a la mayoría
de gente "sintonizar" con una sola voz y "desconectar" del resto. Esto también, ocurre
en un fenómeno similar, el que ocurre cuando se detectan palabras de importancia
originadas por un estímulo no atendido, por ejemplo, cuando se oye nuestro nombre
en otra conversación. Ver Fig. 6.3.

6.3. Dificultades en la interacción por voz: "Cocktail Party Problem"
95
Figura 6.2: El robot capta muchos sonidos de su entorno, incluido el producido por
él mismo al sintetizar voz. Es necesario filtrar todos esos sonidos no deseados
Figura 6.3: Cocktail Party Problem. Multitud de sonidos no deseados son captados
por el robot. En necesario filtrar todas esas fuentes de sonido no deseadas, de manera
equivalente al proceso de "atención selectiva" que somos capaces de llevar a cabo los
humanos

96
Capítulo 6. Sistema de reconocimiento automático del habla
6.3.2.
Ruido de ambiente de fuentes diversas
Se puede hablar de ruido estacionario, o ruido blanco, al ruido constante y fácil-
mente predecible que producen elementos del entorno como son ventiladores, aires
acondicionados, etc. Este tipo de ruido es el más sencillo de eliminar y al tipo de téc-
nica que lo elimina se le denomina "cancelación del ruido estacionario". Muchos
micrófonos incorporan en su propio hardware filtros paso banda que eliminan la señal
que queda fuera del rango de frecuencias de la voz humana y/o los componentes de
señal con poca amplitud. También la mayoría de reconocedores de voz realizan esta
tarea mediante software.
Existe otra fuente de ruidos que es la generada por el propio robot cuando se comu-
nica. Es la propia voz del robot la que se puede acoplar en los micrófonos integrados
en su cuerpo entorpeciendo el reconocimiento de voz. Si se desea una interacción na-
tural, en la que el propio usuario pueda hablar al robot, inclusive mientras este último
esté también hablando, es necesario de un mecanismo de "cancelación activa del
eco" (AEC). Multitud de desarrolladores no han tratado con este problema, por lo
que simplemente tratan de evitarlo. Para ello, fuerzan al usuario a esperar a que el
robot deje de hablar, sin tener capacidad de interrumpirle. Es decir, el reconocimiento
de voz únicamente funciona por turnos, cuando el robot habla el ASR se encuentra
desactivado (modo de interacción half-duplex ). También, se colocan botones o conmu-
tadores que permitan manualmente al usuario activar/bloquear la captura de audio.
En este trabajo se ha tratado resolver el problema sin penalizar la naturalidad de la
interacción, por ello se ha probado con diversos algoritmos software de cancelación
activa de eco (Ubuntu Pulseaudio Echo Canceller ), así como tarjetas de sonido con
dicha funcionalidad incorporada.
En este trabajo se ha optado por una solución hardware, mediante la tarjeta de
sonido USB Creative Recon 3D. Incorpora algoritmos de cancelación del eco, que se
basan en restar (sumar con un desplazamiento de 180
o
en fase) la señal de audio
generada y reproducida por los altavoces a la señal recibida por los micrófonos con
algún tipo de transformación (ver Fig. 6.4). La diferencia entre la señal emitida por los
altavoces y la recogida por el micrófono se da debido al tipo de micrófono, distancia
entre ambos, etc, y necesita ser aprendida por el algoritmo de cancelación de eco.
Normalmente transcurre un cierto tiempo, que suele ser de pocos segundos, en lo que
el algoritmo "aprende" dicha transformación, en base a estimar unos parámetros.
Finalmente, existe un tercer tipo de fuente de sonidos, y son aquellos que no son ni
estacionarios (fácilmente estimables) ni producidos por la propia voz del robot (de la
que se conoce la señal), estos son sonidos producidos por los propios movimientos de
las articulaciones del robot o de su base móvil, por fuentes externas como pueda ser el
sonido del tren, u otros usuarios conversando cerca del robot. La eliminación de este
tipo de ruido se suele llevar a cabo mediante el uso de micrófonos específicos para esta
tarea ("cancelación activa del ruido mediante microfono/s dedicado/s" ). El

6.3. Dificultades en la interacción por voz: "Cocktail Party Problem"
97
Figura 6.4: Cancelación activa del eco
funcionamiento de esta técnica se basa en restar la señal recibida por estos micrófonos
dedicados a la señal recibida por el micrófono/s dedicados a captar la voz integrados
en el robot.
Este tipo de técnicas, tanto la de cancelación activa de ruido como la de cancelación
activa de eco, es frecuente de verlos integrados en teléfonos inteligentes (smartphones),
ya que dedican uno o varios micrófonos para la captación de ruido, así como chips
integrados para DSP, que procesan estas señales para la cancelación del ruido y
de la propia voz del otro interlocutor en modo "manos libres". Sin embargo, en un
robot social, es tremendamente complicado lograr una configuración de micrófonos
que permitan captar la fuente de ruidos y que no capten la voz del usuario. Si la
presencia de ruidos difícilmente estimables es muy alta, la interacción se ve abocada a
interactuar mediante micrófonos auriculares inalámbricos, que son los mas adecuados
para estas circunstancias. Además, esta fuente de ruidos no estacionarios, a parte de
entorpecer el reconocimiento de voz, también dificultan las tareas de localización de
la fuente sonora. En trabajos como [Qi, 2008], se están introduciendo algoritmos y
técnicas software para tratar el problema de la "cancelación activa de ruido" o "control
activo del ruido".
Existe otro campo de investigación relacionado con el control activo del ruido y el
reconocimiento de voz: "Voice Activity Detector" (VAD). Trata de determinar cuando
empieza y finaliza la voz humana. Tradicionalmente, se ha computado mediante el
establecimiento de un umbral de volumen. Una vez que la señal de audio recibida
supera dicho umbral de volumen, se considera el comienzo de la locución. Se considera
el fin de la locución, cuando no se supera el umbral establecido durante un instante de
tiempo determinado (normalmente 800 milisegundos). Esta aproximación presenta el
problema de que un ruido fuerte, por ejemplo, un sonido de un animal, una canción,
etc. pueden ser considerados voz humana. En la literatura se puede encontrar varias
trabajos que tratan el tema [Barrett, 2000, Freeman Boyd, 1993, Barrett, 1998,
Freeman Boyd, 1994], y que plantean sistemas más avanzados. Alguno de estos
sistemas consiguen en entornos reales, como en un coche circulando, filtrar la voz del

98
Capítulo 6. Sistema de reconocimiento automático del habla
conductor, suprimiendo los sonidos de fondo, como los de la radio, el motor, etc.
En nuestro caso, se ha desarrollado un detector de voz que tiene en cuen-
ta varios descriptores de la señal, en tres dominios de la señal diferentes
[Alonso-Martin et al., 2013].
Figura 6.5: Mezcla a la entrada y separación a la salida de los canales de audio
Además de los problemas relacionados con el ruido, existe la problemática de que
pueden existir varios usuarios hablando simultáneamente entre ellos y/o con el robot
(recordar el "coctkail party problem" y la Fig. 6.5). Si la interacción está basada en
micrófonos auriculares, la separación de dichos canales es trivial, puesto que cada uno
de ellos usa un dispositivo de audio diferente, y por lo tanto un canal independiente.
En cambio, si la interacción se realiza mediante micrófonos integrados en el propio
robot, las locuciones de cada usuario se reciben entremezcladas en un sólo canal. Para
un correcto reconocimiento de la voz de cada usuario, existen técnicas de "separación
de la fuente sonora" (SSS). El paquete de ROS, denominado HARK, incluye entre
otras funciones dicha SSS. Ejemplos de SSS aplicados a la música se pueden ver en:
http://bass-db.gforge.inria.fr/fasst/, en este sitio se puede descargar un software en
Matlab que posibilita diferenciar de una canción cada linea instrumental.
6.4.
Paradigmas en el reconocimiento automático de
voz
Como se ha dicho en la introducción, hay dos tipos de reconocedores de voz. Los
que funcionan para cualquier usuario ("independiente del hablante"), y los que
únicamente funcionan con el usuario para el que se ha entrenado el modelo ("depen-
diente del hablante"). Estos últimos, necesitan de un entrenamiento del reconocedor

6.4. Paradigmas en el reconocimiento automático de voz
99
con el usuario, que se realiza leyendo determinados textos. Por razones de naturalizad
en la interacción este trabajo se centra únicamente en los sistemas que funcionan con
independencia del locutor.
Dentro de estos "sistemas independientes del hablante", existen varios métodos o
paradigmas de llevar a cabo el reconocimiento automático de voz. Antes de explicar
cada uno de ellos es necesario entender que dentro del proceso de reconocimiento de
voz hay que distinguir dos fases: 1) transcribir la frase pronunciada verbalmente a
texto y 2) entender el significado de lo que se ha reconocido (extracción de los valores
semánticos). La segunda parte es tan importante o más que la primera, puesto que
los gestores de diálogo (especialmente los basados en rellenar huecos de información)
reciben y trabajan sobre la información semántica. Teniendo claras estas dos fases se
verán los modos de reconocimiento de voz posibles.
6.4.1.
Basado en gramáticas
Es el método más habitual, consiste en establecer un conjunto de reglas gramati-
cales. Estas reglas restringen considerablemente el conjunto de oraciones lingüística-
mente válidas para el contexto comunicativo en el que se realiza la interacción. Este
conjunto de reglas gramaticales, corresponde a lo que se conoce como gramáticas de
"contexto libre", en la que cada regla es de la forma: V == W. Donde V es un sím-
bolo no terminal y W es una cadena de terminales y/o no terminales. El término libre
de contexto se refiere al hecho de que el no terminal V puede siempre ser sustituido
por W sin tener en cuenta el contexto en el que ocurra.
En el reconocimiento basado en gramáticas, el reconocedor sólo es sensible a un
subconjunto del lenguaje natural, con la consiguiente perdida de naturalidad en la
interacción. Sin embargo, aumenta la precisión de reconocimiento. Suele ser útil pa-
ra diálogos en el que el conjunto de opciones disponibles es limitado. Otra ventaja
fundamental, a parte de su alta precisión para contextos limitados, es que permite
fácilmente extraer el significado semántico de la frase reconocida mediante el propio
uso de las gramáticas, es decir, las reglas semánticas se introducen conjuntamente
con las reglas gramaticales en un mismo fichero. Este tipo de reconocedor de voz es
ampliamente usado en ciertas aplicaciones telefónicas en el que el conjunto de opcio-
nes son limitadas (darse de alta, baja, consultar facturas...); para reservar billetes de
avión, trenes; también para interactuar con un robot a modo de asistente del humano
("leeme las noticias","preséntate",`enciende la TV" ...). Herramientas como Loquendo
ASR, Nuance Recognizer, y Sphinx, implementan este tipo de reconocimiento de voz.
Para ver ejemplos concretos de gramáticas construidas para este trabajo consultar
el apéndice de este documento.

100
Capítulo 6. Sistema de reconocimiento automático del habla
6.4.2.
Basado en un modelo estadístico del idioma (SLM)
Este método permite reconocer texto libre sin restringir el lenguaje natural a un
subconjunto del mismo (como sí lo hacen los basados en gramáticas). Dentro de estos
modelos estadísticos, existen los llamados 2-gram, 3-gram, 4-gram ... que indican la
probabilidad de que aparezca en la frase una palabra habiendo aparecido justo an-
teriormente las "n" palabras anteriores. En ese sentido, un modelo 4-gram tendrá en
cuenta las 4 palabras anteriores para determinar la quinta palabra. Para construir
estos modelos estadísticos se necesita un enorme corpus con ejemplos de diálogos en
dicho idioma. Su principal ventaja es que la interacción no se encuentra restringida a
ciertas frases, por contra sus desventajas son la importante perdida de precisión de
reconocimiento y la necesidad de un módulo adicional que realice la comprensión se-
mántica de la frase, proceso conocido como Natural Language Understanding (NLU).
Este tipo de reconocimiento es muy útil en diálogos en los que se desea obtener in-
formación sobre cualquier cosa, como por ej: "hola, ¿me podrías decir quién es Rafael
Nadal?", o "me gustaría escuchar una canción de Mecano". Un reconocedor basado en
un modelo estadístico del lenguaje, 5-gram, es Google ASR.
6.4.3.
Basado en un modelo estadístico de un contexto espe-
cífico
Una manera de aumentar la precisión de reconocimiento del modelo estadístico es
restringir en cierta medida el modelo del lenguaje. De esta manera, esta se encuentra
a medio camino de las dos anteriores. El modelo estadístico se entrena únicamente
con las posibles frases que se usan en interacciones reales con el robot y no con el con-
junto de posibles frases que se pueden decir en el idioma escogido. Esto presenta una
restricción en el conjunto de las interacciones posibles pero un aumento importante
de la precisión de reconocimiento. Por otro lado, sigue siendo necesario un módulo
adicional que realice la tarea de extracción de valores semánticos del texto reconocido
(NLU). Este tipo de reconocimiento es muy útil en diálogos de pregunta abierta, en el
que el conjunto de opciones es bastante elevado. Por ejemplo el robot puede preguntar
al usuario: "¿qué deseas hacer?" (modo pregunta abierta), en el cuál el conjunto de
opciones posibles es en cierto modo limitado por el contexto en el que se produce.
Existen herramientas que facilitan la tarea de construir este modelo estadístico del
contexto, como es Nuance SayAnything.

6.5. Requisitos para el sistema de reconocimiento de voz efectivo
101
6.5.
Requisitos para el sistema de reconocimiento de
voz efectivo
En nuestra arquitectura de control, la capacidad de reconocimiento automático del
habla debe ser implementada e integrada en la arquitectura como una "habilidad".
Esto permite que cualquier componente de la arquitectura pueda usar la funcionalidad
de reconocimiento de voz fácilmente. Para lograr este objetivo se han definido los
requisitos necesarios para lograr un actualizado y potente sistema de ASR:
Independencia del hablante: el sistema debe reconocer el lenguaje natural
con independencia de quién es la persona que esté hablando y si está tiene o
no entrenamiento previo con el reconocedor. Por lo tanto debe funcionar para
cualquier usuario, sea hombre o mujer, niño, adulto o anciano, sea experto en
tecnología o la primera vez que interactúa con el robot.
Alta precisión de reconocimiento de voz: los resultados del reconocimiento
deben ser tan precisos como sea posible. En un caso ideal, el reconocimiento
debería tener una precisión similar a la que tiene un humano de reconocer el
lenguaje hablado expresado por otro humano.
Soporte para micrófono: normalmente los sistemas de reconocimiento de
voz son diseñados para aplicaciones telefónicas, sin embargo se necesita obtener
el audio mediante micrófonos conectados al robot (computador). El micrófono
debe estar continuamente enviando muestras de audio al reconocedor de voz.
En aplicaciones telefónicas las muestras de audio suelen ser enviadas desde un
servidor al reconocedor de voz mediante ficheros.
Soporte para Linux: dado que los robot en los que se usa el sistema usan un
sistema operativo Linux, se necesita que el sistema de reconocimiento de voz
sea compatible con este sistema y con nuestra configuración software/hardware.
Cambio de gramáticas en tiempo real: el reconocimiento de voz está ba-
sado en gramáticas de contexto libre. Con el uso de gramáticas se restringe
considerablemente las opciones comunicativas, mejorando la precisión del re-
conocimiento de voz, pero con el inconveniente de perder naturalidad en la
interacción. Debería ser posible la carga/descarga de una o varias gramáticas
durante la ejecución del diálogo sin la necesidad de detenerse.
Detector de habla: el sistema debe ser capaz de distinguir la voz respecto al
silencio, un ruido puntual, o ruido de fondo. Para ello, el sistema debe tener
mecanismos de cancelación de ruido y un umbral para diferenciar silencio de
voz. Para lograr esto, suele ser necesaria de una combinación de mecanismos

102
Capítulo 6. Sistema de reconocimiento automático del habla
software y hardware. Con un sistema adecuado de detección de habla no es
necesario del uso de un botón, o cualquier otro mecanismo mediante el cual el
usuario indicaría al robot cuando empieza y cuando finaliza de hablar.
Soporte a gramáticas semánticas: las gramáticas semánticas facilitan la
tarea de extraer el significado y la información relevante para el dialogo. Las
gramáticas semánticas añaden a las gramáticas formales un post-procesado de
la información reconocida, mediante un lenguaje de script que incorporado en
la propia definición de la gramática formal, permite la extracción de los valores
semánticos.
Soporte de estándares: en tecnologías de voz y del habla se han definido
varios estándares que resultan útiles para acelerar el proceso de desarrollo de
aplicaciones de voz. Es altamente recomendable ceñirnos a estos estándares. Los
mas importantes en ASR son:
· SRGS: Speech Recognition Grammar Specification
· NLSML: Natural Language Semantics Markup Language
· SISR: Semantic Interpretation for Speech Recognition
Alta eficiencia: la posibilidad de usar el reconocimiento de voz con bajo con-
sumo de energía y CPU es deseable, puesto que se va a ejecutar conjuntamente
con el resto de módulos de la arquitectura de control del robot.
Soporte multilenguaje: debido a que el sistema de interacción permite la
comunicación en varios idiomas, es necesario que el reconocedor de voz pueda
entender y trabajar con gramáticas construidas en diversos idiomas. En nuestro
caso, se ha trabajado con español, inglés americano e inglés británico, y es
fácilmente ampliable a cualquier otro idioma.
Identificación del hablante mediante la voz: dado que el sistema de diálogo
desarrollado necesita identificar a los usuarios para cargar su perfil de usuario y
así personalizar el diálogo a cada interlocutor, se hace necesario que el recono-
cedor de voz sea capaz de reconocer no sólo la frase pronunciada sino identificar
también que usuario está hablando (de entre el conjunto de posibles).
Adaptabilidad del modelo acústico: normalmente el motor de reconoci-
miento de voz está entrenado para ambientes telefónicos de atención al ciente
(call cliente), por lo que puede ser deseable reentrenar el modelo acústico a nues-
tras verdaderas necesidades para incrementar la precisión del reconocimiento.

6.6. Análisis de los entornos de reconocimiento de voz disponibles
103
Capaz de reconocer texto libre (modo dictado): algunas veces se requie-
re interactuar con el robot en modo "dictado" o "lenguaje abierto", es decir,
sin la restricción de gramáticas. En este caso, es necesario del uso de modelos
estadísticos del lenguaje escogido. Para la construcción del modelo, es necesario
un enorme corpus lingüístico. El uso de este tipo especial de reconocimiento
de voz, es muy útil para ciertos momentos, en que el número de posibilidades
comunicativas es tan grande que es difícil recoger todas ellas en una gramática.
Por ejemplo: grupos musicales, nombres, apellidos, etc.
6.6.
Análisis de los entornos de reconocimiento de
voz disponibles
Una vez que se han definido los requisitos que debe tener nuestra habilidad de
reconocimiento, se necesita estudiar qué soluciones software se adecuan mejor a tales
requerimientos. Basándonos en la literatura [Kibria Hellström, 2007] y en nuestra
propia experiencia, se han seleccionado los sistemas de reconocimiento más conocidos
y a priori los más potentes. Se ha realizado estudio pormenorizado sobre cada uno
de ellos, comparando unos con otros, en base a los requisitos definidos en la sección
anterior.
Finalmente, los cinco sistemas sometidos a estudio comparativo han sido los si-
guientes:
Verbio ASR v8
3
(Windows).
Nuance Recognizer v9
4
(Linux).
Nuance VoCon 3200
5
(Windows).
Loquendo ASR v7.7
6
(Windows).
Sphinx IV
7
De todos ellos se consiguió una licencia de prueba. El estudio consistió, para cada
uno de ellos, en el análisis de la documentación asociada, su configuración para nuestro
3
http://www.verbio.com/
4
http://www.verbio.com/
5
http://spain.nuance.com/vocon/
6
http://www.loquendo.com/es/technology
7
http://cmusphinx.sourceforge.net

104
Capítulo 6. Sistema de reconocimiento automático del habla
entorno de trabajo, y la ejecución de una batería de pruebas para analizar cada uno
de los requisitos propuestos
8
La mayor parte del estudio que se ha realizado se resume en la Tabla 6.6. En ella,
cada columna representa un framework de reconocimiento distinto y cada fila el valor
que toma para cada uno de los requisitos analizados. La mayoría de las características
a estudio se han determinado de una manera objetiva, por ejemplo determinar si
un producto tiene o no "speech detector", en cambio otras características, como la
usabilidad del producto, es fruto de nuestra opinión subjetiva en el uso de dicha
herramienta.
Basándonos en este estudio y en nuestras necesidades para mejorar la interacción
humano-robot, finalmente se ha decidido elegir el entorno software Loquendo, para su
integración dentro de nuestra arquitectura de control. Su elección se justifica debido a
que Loquendo ASR cumple con todos los requerimientos descritos previamente. Otro
aspecto decisivo en su elección ha sido su buena relación calidad/precio.
El resto de productos han sido descartados debido a las siguientes razones:
Nuance Recognizer v9: aunque es un framework con una buena tasa de acierto,
está diseñado para aplicaciones telefónicas y hasta la fecha, no da soporte a la
entrada de audio directamente desde el micrófono. Además su coste es bastante
elevado.
Nuance Vocon: es otro producto de Nuance, con buen rendimiento, pero hasta
la fecha no tiene versión Linux disponible.
Verbio ASR v8: es el de menor precisión de entre los estudiados, además no es
capaz de proporcionar resultados parciales de reconocimiento. Es decir, hasta
que no finaliza completamente la oración el interlocutor y procesa en su totalidad
dicha frase, no es capaz de ir proporcionando resultados de reconocimiento.
Sphinx IV: es un framework de software libre, con soporte a multitud de idiomas
y sistemas operativos. Ha sido desarrollado por la universidad Carnegie Mellon,
Sun Microsystems, Hewlett Packard, entre otros, pero su mayor problema es
que tiene menos precisión de reconocimiento que Nuance y Loquendo.
8
Resaltar, que no ha sido una tarea sencilla la obtención de las licencias, la lectura de grandes
cantidades de documentación, así como la tarea de tener configurado y funcionando cada sistema en
un entorno real de trabajo; si bien todas esas fases han sido necesarias para poder hacer un riguroso
análisis comparativo de las mismas.

6.6. Análisis de los entornos de reconocimiento de voz disponibles
105
Verbio
ASR
Nuance
Recog-
nizer
V9
Nuance
VoCon
Loquendo
ASR
Sphinx
IV
País Desarrollo
España
USA
USA
Italia
USA
Sin entrenamiento
No
Independiente del in-
terlocutor
Basado en gramáticas
Modelo estadístico del
lenguaje
No
Sistema Operativo so-
portado
Linux
/
Windows
Linux
/
Windows
Windows
Linux
/
Windows
Linux
/
Win-
dows
/
Solaris
Detección del habla
Soporte PC micrófono
No
(pero
con par-
che)
Multilenguaje
Basado en fonemas
Identificador del ha-
blante
No
No
No
No
Modo "WordSpotting"
No
No
No
Gramáticas
semánti-
cas
No
No
No
Aprendizaje de nuevas
palabras
No
No
No
No
Adaptación del mode-
lo acústico
No
No
Usabilidad
Alta
Baja
Muy alta
Baja
Media
Ejemplos de uso
Suficientes Suficientes Muy bue-
nos
Suficientes Buenos
Recursos adicionales
Pobre
Suficientes Muy bue-
nos
Buenos
Normal
Soporte
No
Facilidad de compra
Fácil
Difícil
Difícil
Difícil
Muy sen-
cilla
Precisión
Media
Alta
Alta
Alta
Media
Precio
Bajo
Alto
Medio-
Bajo
Medio
Gratuito
Cuadro 6.1: Comparación de los principales entornos de reconocimiento de voz (2011)

106
Capítulo 6. Sistema de reconocimiento automático del habla
6.7.
Integración con la arquitectura de control
Una vez que se ha elegido el producto que mejor se adapta a nuestras necesidades,
se debe integrar con la arquitectura de control. Como se ha dicho, en la arquitectu-
ra de control AD, se denomina "habilidad" a cualquier componente de software que
proporciona una nueva "capacidad" al robot. El objetivo ha sido integrar la funcio-
nalidad de reconocimiento automático del habla como una "habilidad" dentro de esta
arquitectura AD.
La habilidad que se ha desarrollado está estructurada en tres capas de abstrac-
ción. En el nivel inferior se encuentra el motor de reconocimiento, que está compuesto
por las librerías proporcionadas por Loquendo. Sobre estas librerías, que son las que
proporcionan las funcionalidades de reconocimiento propiamente dichas, se han escri-
to algunas funciones básicas, a las que se han denominado "ASR primitivas". Estas
primitivas implementan las mas importantes funcionalidades necesarias, como son es-
tablecer gramáticas, arrancar y parar el reconocimiento de voz, obtener los resultados
del reconocimiento de voz, establecer el formato de la entrada de audio, etc.
Finalmente, sobre estas primitivas de voz se ha construido la habilidad propia-
mente dicha, "ASRSkill". Esta habilidad se ajusta a la misma plantilla que el resto de
habilidades que forman parte de la arquitectura de control. Cualquier habilidad que
quiera realizar funciones de reconocimiento de voz, utiliza la funcionalidad que ofrece
la habilidad que se acaba de describir.
Figura 6.6: Arquitectura del sistema de reconocimiento de voz

6.8. Motores de reconocimiento concurrentes
107
Esta estructura en capas, se puede ver en la Fig. 6.6, se corresponden con los tres
niveles de abstracción del Procesamiento del Lenguaje natural:
1
o
Nivel -léxico-: Reconocimiento de voz
Modelos acústicos del lenguaje
Gramáticas
¿Qué ha dicho el hablante?
2
o
Nivel -semántico-: Análisis de voz
Significado léxico-gramatical
¿Qué quiere decir lo que ha dicho?
3
o
Nivel -pragmático-: Entendimiento
Contexto del discurso ­ conocimiento sobre el dominio del discurso
What has the caller asked?
El primer nivel (reconocimiento del habla) se relaciona con el motor de reconoci-
miento proporcionado por Loquendo. El segundo nivel se relaciona con las primitivas
de voz, mientras que finalmente el tercer nivel casa con la habilidad propiamente
dicha. Finalmente sobre todas ellas se sitúa el "gestor del dialogo" que gestiona la in-
teracción usando los diversos módulos: ASR, TTS, Localización Sonora, Identificación
del hablante, etc.
6.8.
Motores de reconocimiento concurrentes
Normalmente, los programadores de aplicaciones de voz usan el valor de confianza
para decidir si aceptar o rechazar los resultados arrojados por el reconocedor de voz.
Para ello, es necesario fijar un umbral, de tal manera que si se supera se conside-
ra reconocimiento correcto y si no se supera se considera fallido. Existen sistemas
de diálogo basados en modelos estadísticos, como los POMDP, que mantienen si-
multáneamente varias hipótesis de los reconocimientos realizados (n-Best), pero no
está claro si en la práctica estos sistemas pueden ser usados eficientemente, debi-
do a que su carga computacional crece exponencialmente con el tamaño del proble-
ma [Young et al., 2010, Young, 2006, Williams Young, 2007, Minami et al., 2010,
Zhou Yuan, 2010, Roy et al., 2000, Roy et al., 1998].
Como se acaba de comentar, la mayoría de los sistemas de diálogo están basados en
el uso local del valor de confianza y de un umbral general. Algunas mejoras permiten

108
Capítulo 6. Sistema de reconocimiento automático del habla
adaptar dicho umbral dinámicamente o cambiar de estrategia, mediante el uso de
preguntas implícitas y/o explícitas.
En esta tesis se propone e implementa un nuevo modo de usar los resultados del
reconocimiento de voz para clasificarlos como válido o inválidos. Esta nueva vía sigue
usando los valores de confianza, pero de una manera mas inteligente. Nosotros lo
llamamos mecanismo de "segunda opinión". Para ello, se ha desarrollado un nuevo
componente que usa diferentes fuentes de conocimiento para calcular un nuevo valor
de confianza mas fidedigno.
"Segunda opinión" está basado en el uso de varios motores de reconocimiento de
voz corriendo concurrentemente (al menos dos). En este trabajo, se han usado dos
motores en paralelo, el primero de ellos Loquendo ASR, descrito anteriormente y el
segundo motor de reconocimiento ha sido Google ASR (se trata de un servicio web
online que actualmente es usado por Google en Google Chrome, Android, Youtube
Automatic Subtitles, etc), pero que haciendo "ingeniería inversa" se ha podido integrar
satisfactoriamente en nuestro sistema.
Los resultados arrojados por Loquendo y Google ASR pueden ser procesados por
el módulo que computa un nuevo valor de confianza. Para calcular ese nuevo valor,
se ha usado la ecuación 6.1.
C1 = valor confianza ASR1(es proporcionado en cada reconocimiento por el pri-
mer motor de reconocimiento y es usado para indicar la garantía que tiene el
reconocedor de que el resultado es el correcto).
C2 = valor confianza ASR2 (es proporcionado en cada reconocimiento por el se-
gundo motor de reconocimiento y es usado para indicar la garantía que tiene el
reconocedor de que el resultado es el correcto).
SNR1 = Proporción de Señal a Ruido para ASR1(es proporcionado para cada reco-
nocimiento por el primer motor de ASR y es indicativo de la calidad de señal
recibida).
SNR2 = Proporción de Señal a Ruido para ASR2 (es proporcionado para cada reco-
nocimiento por el segundo motor de ASR y es indicativo de la calidad de señal
recibida).
SR1 = pre-calculada tasa de acierto para el ASR1 (tasa de acierto obtenida empíri-
camente después de realizar test en entornos reales con el primer reconocedor,
indica el porcentaje de veces que el primer reconocedor clasifica correctamente
los reconocimientos, acertando).
SR2 = pre-calculada tasa de acierto para el ASR2 (tasa de acierto obtenida empíri-
camente después de realizar test en entornos reales con el segundo reconocedor,

6.8. Motores de reconocimiento concurrentes
109
indica el porcentaje de veces que el segundo reconocedor clasifica correctamente
los reconocimientos, acertando).
AC = confianza media final (confianza resultante de tener en cuenta los resultados
obtenidos por cada reconocedor y su relativo peso en el cálculo de esta confianza
media).
AC
=
SR
1
SR
1 + SR2
C1 +
SR
2
SR
1 + SR2
C2
(6.1)
Con esta función (6.1) se da más valor/peso al reconocedor que tiene más tasa de
acierto "a priori", pero también se tiene en cuenta el segundo reconocedor, con lo que
se da mayor fiabilidad a los resultados ofrecidos. Se ha calculado la tasa de acierto de
los distintos reconocedores probados y se muestra en la tabla 6.6.
En la ecuación (6.1) no se ha tenido en cuenta la tasa de acierto de los recono-
cedores de voz según el nivel de ruido del entorno. Como se ha visto el reconocedor
de voz está altamente influenciado por el ruido, por lo tanto la tasa de acierto no de-
bería ser una función uniforme para todos los valores de ruido. Probablemente unos
reconocedores de voz están mas afectados por el ruido de ambiente que otros. Por esa
razón parece lógico penalizar los más afectados por el ruido en condiciones adversas y
recompensarlos en condiciones de silencio. Teniendo en cuenta esta consideración, se
ha reformulado la función anterior, y la nueva ecuación (Eq. 6.2 ) relaciona la calidad
voz/ruido (SNR) con la tasas de acierto (ver Fig.ResumenHeadSets ).
El valor de la relación voz/ruido (calidad del audio que llega al robot libre de
ruidos) es arrojado por cada reconocedor en cada reconocimiento de voz y se puede,
en base a ese valor y a la tasa de acierto que se va acumulando para cada intervalo
de SNR, construir una función que se llama PSR para cada uno de los reconocedores
usados (ver Fig. 6.7).
Recordar que el valor de ruido arrojado por SNR está muy influenciado por el
tipo y modelo de micrófono, el nivel de reverberación de la sala, por el tipo de ruido,
y por supuesto por el volumen del mismo.
AC
=
P SR
1(SNR1)
P SR
1(SNR1) + P SR2(SNR1)
C1 +
P SR
2(SNR2)
P SR
1(SNR2) + P SR2(SNR2)
C2
(6.2)
En la Fig. 6.8 se compara la confianza-media calculada usando la ecuación for-
mulada anteriormente (6.2) y la confianza "tradicional" arrojada por uno sólo de los
reconocedores, en este caso Loquendo. Los dos ejes de la gráfica son "falsas alarmas"
y "ausencias" que se definen en las ecuaciones 6.3 y 6.4, con ayuda de la tabla 6.2.Bá-
sicamente en el eje X se representa las frases aceptadas que no deberían de serlo y en
el eje Y se representa las frases rechazadas que eran correctas.

110
Capítulo 6. Sistema de reconocimiento automático del habla
Figura 6.7: Tasa de acierto vs SNR: función de probabilidad de tasa de acierto (PSR)
Predicho como positivo
Predicho como negativo
Realmente positivo
Verdadero Positivo (VP)
Falso Negativo (FN)
Realmente negativo
Falso Positivo (FP)
Verdadero Negativo (VN)
Cuadro 6.2: Tabla de definiciones
F alsas
a
larmas
=
F P
F P
+ V N
(6.3)
Ausencias
=
F N
V P
+ F N
(6.4)
Figura 6.8: Confianza media vs típica confianza

6.9. Experimentos sobre la precisión del reconocimiento
111
6.9.
Experimentos sobre la precisión del reconoci-
miento
Ahora que se ha elegido un framework y que se ha integrado en nuestra arqui-
tectura de control, se necesita probar la habilidad implementada en entornos reales
y con diferentes tipos de micrófonos. Para ello, se han diseñado varios escenarios de
prueba con el objetivo de analizar la precisión del reconocedor dependiendo de: ruido
de ambiente, volumen del hablante, entonación, edad, género y el tipo de micrófono
usado.
Cada test ha sido llevado a cabo con diferentes usuarios diciendo diferentes frases,
usando la misma gramática y sin entrenamiento previo con el sistema. En los pri-
meros escenarios de test, se ha realizado la adquisición de audio usando micrófonos
profesionales unidireccionales e inalámbricos. El micrófono debe estar situado a pocos
centímetros de la boca del usuario y mirando hacia dicha boca (recordar que el micró-
fono es unidireccional, por lo que sólo capta sonido en un sentido). La señal acústica
recibida por el micrófono es transmitida inalámbricamente al receptor integrado en el
robot. Tanto el emisor como el receptor utilizados
9
se pueden ver en la Fig 6.9.
Figura 6.9: Receptor-emisor: micrófonos inalámbricos Sennheiser
Los usuarios comenzaban a decir frases válidas para la gramática establecida en
el test. Ellos decían frases continuamente, con una ligera pausa entre cada frase, sin
entrenamiento previo con el sistema, pero sí con el conjunto de posibles frases y cons-
trucciones válidas para dicha prueba. Mientras tanto, se monitorizaba el experimento
y se tomaba nota sobre los resultados arrojados por cada reconocimiento de voz.
9
El modelo específico de transmisor usado puede encontrase en: http://www.sennheiser.
com/sennheiser/home_es.nsf/root/professional_wireless-microphone-systems_
broadcast-eng-film_ew-100-series_021418
El modelo específico de micrófono auricular
puede verse en: http://www.sennheiser.com/sennheiser/home_es.nsf/root/professional_
wireless-microphone-systems_headsets_headsets_009862 (500$) y http://www.logitech.
com/en-us/webcam-communications/internet-headsets-phones/devices/3621 (40$)

112
Capítulo 6. Sistema de reconocimiento automático del habla
Una vez que el usuario completaba su turno de reconocimientos de voz, después
de decir 100 oraciones, se pasa a repetir la misma prueba con el siguiente usuario,
hasta completar un total de 10 usuarios. Por lo tanto, cada uno de los escenarios que
se han presentado ha sido probado con un total de mil frases.
Para estimar la precisión del reconocimiento, se han analizado dos parámetros: la
tasa de acierto y el valor de confianza. La tasa de acierto hace referencia al porcentaje
de veces que el reconocedor es capaz de reconocer correctamente la frase pronunciada,
mientras que el valor de confianza hace referencia a la garantía o estimación que hace
el propio reconocedor de voz de que el resultado que está ofreciendo es el correcto. Si
el valor de confianza está muy cerca de 1, el reconocedor de voz esta casi seguro que la
frase reconocida coincide con la elocución del usuario, mientras que valores próximos
a 0, indican que hay poca confianza en que el resultado ofrecido tenga que ver con lo
que el usuario dijo.
La tasa de acierto puede ser usada para comparar la precisión de reconocimiento
entre diferentes motores o software de reconocimiento de voz. Dicha tasa de acierto
rara vez es proporcionada por los comerciales (al menos no la tasa real de acierto) y
es necesario de pruebas en entornos reales para acercarnos a conocer la precisión real
de los mismos.
6.9.1.
Utilizando micrófonos auriculares inalámbricos
Sin ruido importante de fondo
En este primer escenario los usuarios se comunican con el robot en un entorno
cerrado como es el laboratorio, sin ruido de ambiente significativo. El rango de sonido
ambiente aproximado se situó entre 40 y 45 dB. Este tipo de ruido es conocido como
ruido estacionario y es producido por el propio robot, por los ordenadores, ventilado-
res, etc. Este tipo de ruido es relativamente sencillo de estimar y de eliminar.
Los resultados obtenidos nos dan un valor de confianza media de 0.722 siendo
0 el mínimo valor y 1 el máximo. En el 99 por ciento de los casos, las oraciones
pronunciadas fueron correctamente reconocidas y transcritas. Recordar que las frases
pronunciadas casan perfectamente con la gramática establecida en el test.
Con estos resultados, se puede concluir que la precisión del reconocedor de voz con
varios usuarios, en condiciones de relativo silencio, es bastante elevada (usando este
tipo de micrófonos). El valor de confianza es alto y la tasa de acierto es prácticamente
del 100 por ciento. Estos resultados experimentales se ajustan a los resultados oficiales
proporcionados por Loquendo en [Paolo Baggia, 2005] y [Dalmasso et al., ].

6.9. Experimentos sobre la precisión del reconocimiento
113
Con ruido de fondo
Este escenario es muy similar al descrito anteriormente, exceptuando que se añade
ruido de fondo. Para ello, se dejó una televisión encendida con un canal musical. La
televisión se encontraba a un distancia de 7 metros del usuario, a un volumen de entre
65 y 70 dB (medido en la posición del usuario).
Los resultados obtenidos en este test son un 0.703 valor de confianza y un 98 por
ciento la tasa de acierto. Estos valores están cercanos a los del test anterior, por lo que
se puede seguir considerando un reconocimiento de voz preciso bajo estas condiciones
de ruido ambiental y micrófonos auriculares.
Es muy importante que el micrófono esté colocado muy cerca de la boca del usua-
rio, ya que el micrófono es unidireccional (capta sólo el sonido que en un único sentido
y con poco alcance). Este tipo de micrófonos son comúnmente usados en cualquier
teléfono inteligente actual. Además, hay que tener en cuenta que los reconocedores
de voz han sido entrenados para trabajar especialmente con este tipo de micrófonos.
Con ruido cerca del usuario
En este nuevo escenario se ha colocado la fuente de ruido muy cerca del usuario,
para ellos se ha puesto a sonar música por los altavoces a menos de un metro del
usuario. El rango de sonido emitido varía entre 70 y 75 dB, lo que se puede considerar
un volumen bastante elevado.
Los resultados obtenidos son de un valor medio de confianza de 0.673 y una tasa
de acierto del 97 por ciento. Estos valores vienen a confirmar que el reconocedor de
voz, con la combinación de micrófonos auriculares, es robusto frente a condiciones
de ruido adversas. Una de las principales razones de seguir obteniendo estas tasas
de acierto tan elevadas es que se sigue obteniendo una buena relación entre señal
de voz frente a la señal generada por el ruido (SNR), debido a la propia naturaleza
del micrófono. Otro motivo es que el reconocedor ha sido entrenado bajo condiciones
de ruido. Además, el propio motor de reconocimiento es capaz de cancelar el ruido
estacionario.
En recientes estudios realizados, se ha mejorado el proceso de adquisición de voz
con la adquisición de una tarjeta de sonido que incorpora cancelación de ruido y
cancelación de eco. La cancelación de ruido se logra mediante filtros paso banda,
mientras que la cancelación activa de eco consigue eliminar de la propia entrada de
audio la voz emitida por el propio robot cuando está hablando, evitando su acople a
la señal de voz del usuario.
Se puede concluir que en ambientes ruidosos, incluso en condiciones realmente
adversas, ASRSkill es muy robusta y precisa usando la configuración hardware apro-
piada (micrófonos y tarjeta de sonido adecuada). Ver la Fig. 6.10 a modo de resumen.

114
Capítulo 6. Sistema de reconocimiento automático del habla
Figura 6.10: Resumen de la precisión de reconocimiento usando micrófonos auriculares
Diferentes volúmenes de voz
En este escenario se ha analizado como influye el volumen de la voz del usuario en
la precisión del reconocimiento. Los reconocimiento de voz fueron llevados a cabo de
la siguiente manera: todos los usuarios repitieron la misma frase diez veces a diferentes
volúmenes de voz y sin importante ruido ambiental. En esta prueba se ha medido el
volumen de la voz del usuario y la precisión del reconocedor. Los resultados son los
siguientes:
Volumen bajo - 69 dB: 0.66 valor de confianza (100 % tasa de acierto)
Volumen medio - 77 dB: 0.72 valor de confianza (100 % tasa de acierto)
Volumen alto - 83 dB: 8.80 valor de confina (100 % tasa de acierto)
Volumen muy alto - 89 dB: 0.70 valor de confianza (100 % tasa de acierto)
Con estos resultados (ver Fig. 6.11) se puede concluir que aunque el volumen de
la voz afecta al valor de confianza, las diferencias obtenidas no son muy elevadas, y
sin embargo, la tasa de acierto sigue siendo la máxima en todos los casos. A la vista
de esta prueba, se puede concluir que, cuando la pronunciación es clara y el volumen
del audio es suficientemente alto como para que el humano lo pueda escuchar (sin
llegar a saturar), la precisión de reconocimiento es óptima.
Después de varios años trabajando con herramientas de reconocimiento de voz,
se ha podido observar que la mayoría de fallos en reconocimiento de voz se deben
a problemas en la configuración del sonido, es decir, el sonido no llega claro al re-
conocedor de voz. Esto puede ser debido a que el micrófono esté mal conectado, los
volúmenes de captura no sean los adecuados, haya acoples o interferencias, etc. La

6.9. Experimentos sobre la precisión del reconocimiento
115
Figura 6.11: Precisión del reconocimiento con distintos volúmenes de voz
otra fuente principal de imprecisiones en el reconocimiento de voz, suele ser que las
frases pronunciadas no se ajustan a la gramática establecida, bien porque no está fija-
da la gramática correcta para ese contexto comunicativo o bien porque la gramática
no esté bien construida como para recoger el conjunto de frases posibles.
Diferentes entonaciones
Aquí se ha intentando determinar la relación entre la entonación de las frases y
la precisión del reconocimiento. La misma frase es dicha por el mismo usuario con
diferentes entonaciones: entonación enunciativa o "normal" y entonación interrogativa.
Los resultados son los siguientes:
Frases enunciativas: 0.74 valor de confianza y 97 % tasa de acierto.
Frases interrogativas: 0.71 valor de confianza y 96 % tasa de acierto.
A la vista de estas pruebas, se puede decir que la entonación no es un factor
decisivo que afecte al reconocimiento de voz. Aunque el tipo de oraciones que se usan
con más frecuencia son las enunciativas con una emoción "normal" o de "tranquilidad",
otro tipo de entonaciones y/o con otros estados emocionales (tristeza, nerviosismo,
furia, etc.) también son correctamente reconocidas.
Diferentes géneros
Otro escenario importante es analizar cómo afecta el género del hablante a la
precisión del reconocedor. Para ello, se han realizado pruebas de reconocimiento con
hombres y mujeres de diferentes edades, usando la misma gramática, en un mismo
entorno y con la misma configuración de micrófonos. Los resultados son:
Mujeres: 0.70 valor de confianza y 99 % tasa de acierto.

116
Capítulo 6. Sistema de reconocimiento automático del habla
Hombres: 0.69 valor de confianza y 98 % tasa de acierto.
Con estos resultados se puede afirmar que el reconocedor es independiente del
género del usuario que interactúa. Esto es lógico debido a que el modelo acústico del
reconocedor ha sido entrenado por igual con hombres y mujeres.
Diferentes grupos de edad
En este caso se ha puesto a prueba el reconocedor de voz con grupos de gente de
diferentes edades. Se ha dividido en dos grupos: niños de entre 5 y 12 años y adultos
de 13 años en adelante. Los resultados obtenidos son:
5-12 años: 0.522 valor de confianza con una tasa de acierto del 93 %.
13-90 años: 0.722 valor de confianza con una tasa de acierto del 99 %
Se puede apreciar que en el grupo de edad comprendido entre 5 y 12 años la
perdida de precisión de reconocimiento se hace notar. Esto es debido a que los niños
se expresan usualmente con una voz menos formada, menos firme y en muchos casos
incluso temblorosa o tímida. Sin embargo, la tasa de acierto todavía presenta valores
bastante elevados. Este problema ha sido descrito en la literatura, por ejemplo en
[Ishi et al., 2006a], y una solución adoptada es usar diferentes reconocedores para
diferentes edades (entrenados de manera adecuada para cada grupo de edad).
En nuestro caso, dentro el sistema completo de diálogo, el tipo de interacción
no queda únicamente restringido a voz, por lo que las personas con dificultad de
interacción con el sistema de reconocimiento de voz pueden usar otros mecanismos
alternativos de mayor tasa de acierto, como puede ser mediante etiquetas de radio-
frecuencia dotadas de pictogramas.
6.9.2.
Utilizando micrófono incorporado en el robot (omnidi-
reccional)
En todos los escenarios descritos en la sección anterior se ha usado para las pruebas
micrófonos auriculares inalámbricos unidireccionales. En esos casos, el usuario tenía
que colocarse el micrófono cerca de la boca, lo que repercutía en una buena precisión
de reconocimiento de voz pero a costa de perder un poco de naturalidad y comodidad
en la interacción. Una interacción sin mecanismos adicionales externos al robot, como
auriculares, es mucho mas natural y confortable [Breazeal et al., 2003].
En este nuevo escenario se prueba a realizar reconocimientos de voz con un micró-
fono omnidireccional (o no direccional) incorporado en el propio robot. Este tipo de
micrófono es capaz de captar el audio del entorno en cualquier dirección. Normalmen-
te son usados para captar el sonido en coros musicales, estadios deportivos, etc. Su

6.9. Experimentos sobre la precisión del reconocimiento
117
principal inconveniente, para nuestras necesidades, es que son mucho mas sensibles al
ruido que los micrófonos unidireccionales, debido a que se han diseñado para propósi-
tos diferentes a los nuestros. Sin embargo, su principal ventaja es que el usuario puede
hablar al robot sin ningún tipo de artefacto adicional, consiguiendo una interacción
muy similar a la que ocurre entre humanos, y por o tanto más natural.
Figura 6.12: Micrófono omnidireccional MP33865
Para probar la precisión del reconocimiento se han realizado pruebas a 1,2 y 3
metros de distancia al robot, sin importante ruido ambiental (menos de 50 dB). Los
resultados obtenidos son:
1m: 0.42 valor de confianza (75 % tasa de acierto).
2m: 0.31 valor de confianza (72 % tasa de acierto).
3m: 0.25 valor de confianza (66 % tasa de acierto).
Como se puede ver, la precisión del reconocimiento decrece sustancialmente según
aumenta la distancia de interacción. Esta perdida de precisión no sucede con el uso de
micrófonos auriculares, puesto que la señal acústica se transmite inalámbricamente
desde el emisor al receptor colocado en el cuerpo del robot. Con estos valores de
precisión de reconocimiento y este tipo de micrófonos resulta difícil su uso en entornos
reales, sin embargo en algún caso podría ser suficiente.
El segundo test realizado con estos micrófonos ha sido repetir la prueba anterior
pero con importante ruido ambiental (65-75 dB), sin embargo en este caso ha sido im-
posible realizar ningún tipo de reconocimiento, dado que el motor de reconocimiento
no es capaz de diferenciar entre ruido y voz. El problema radica en que el ruido y
la voz llegan al detector de voz en volúmenes similares y la tecnología implementa-
da de cancelación de ruido elimina ambas señales, siendo imposible detectar cuándo
empieza y finaliza cada locución de voz. Además, este tipo de micrófonos carecen de
mecanismos hardware de cancelación de ruido, porque no han sido diseñados para ese
propósito.
Una solución para mejorar la interacción con estos micrófonos es reentrenar el
modelo acústico del reconocedor de voz para esta nueva configuración. Recordad que
el modelo acústico del reconocedor ha sido entrenado para aplicaciones telefónicas,
por lo tanto usando micrófonos unidireccionales.

118
Capítulo 6. Sistema de reconocimiento automático del habla
Concluyendo, este tipo de micrófonos eliminan la necesidad e incomodidad del uso
de dispositivos externos al robot para la comunicación y proporcionan una manera
de interacción mas natural entre el humano y el robot, sin embargo, en ambientes
con importante ruido de fondo y/o en que la comunicación no es cercana entre ambas
partes, son una pobre elección en términos de HRI.
6.9.3.
Utilizando array de micrófonos
Un array de micrófono es cualquier número de micrófonos operando en tándem
o paralelo (ver Fig. 6.13). Sus principales aplicaciones son extraer voz en ambientes
ruidosos y localizar la fuente sonora (donde el usuario está situado espacialmente
respecto al robot). Esas características son muy interesantes en HRI y han sido es-
tudiadas recientemente en algunos trabajos [Kim Choi, 2007] [Tamai et al., 2005]
[Valin et al., 2004] [Yoshida et al., 2009]. Además, este moderno sistema de captación
de audio está empezando a ser usado más y más en videojuegos [Chetty, 2009], or-
denadores portátiles, teléfonos móviles, coches [Oh et al., 1992], etc. Casi todos ellos
usan un array de micrófonos especialmente diseñado para dicho dispositivo, con en-
tre 3 y 4 micrófonos unidireccionales, sobre los que se puede aplicar algoritmos de
cancelación de ruido, cancelación de eco y localización sonora.
Estos sistemas son muy robustos frente al ruido. Combinan las ventajas del uso
de micrófonos unidireccionales (poco sensibles al ruido de fondo) y las del uso de mi-
crófonos omnidireccionales (se puede interactuar por voz con el robot sin la necesidad
de auriculares, es decir, con libertad de movimiento).
Figura 6.13: Micrófono de array
Recientemente, están empezando a aparecer micrófonos de array comerciales y
de propósito general en el mercado. Ellos están equipados con algoritmos de proce-
samiento de la señal que consiguen cancelación del ruido y localización sonora por
hardware. Estos dispositivos son todavía relativamente caros y de un tamaño con-
siderable. Para nuestras pruebas se ha adquirido uno de estos micrófonos de array,
formado por 8 micrófonos y lo se ha integrado en el robot Maggie.
Nuevamente se ha repetido las pruebas de precisión de reconocimiento de voz para
una distancia de entre 1 y 3 metros, sin importante ruido ambiental (menos de 50

6.9. Experimentos sobre la precisión del reconocimiento
119
dB). Los resultados obtenidos han sido:
1m: 0.62 valor de confianza (95 % tasa de acierto).
2m: 0.53 valor de confianza (83.78 % tasa de acierto).
3m: 0.37 valor de confianza (52.5 % tasa de acierto)
A los test anteriores se le añade importante ruido ambiental (65 dB aprox) y los
resultados fueron:
1m: 0.47 valor de confianza (81,08 % tasa de acierto).
2m: 0.41 valor de confianza (80 % tasa de acierto).
3m: 0.31 valor de confianza (31,67 % tasa de acierto)
Se puede apreciar que la precisión disminuye según el usuario se ha ido alejando
del robot, tanto en condiciones de silencio como en condiciones de ruido ambiental.
En la siguiente sección se comparan estos resultados con los obtenidos previamente
tanto por el uso de micrófono unidireccional y omnidireccional.
Pese a que para estas pruebas se ha usado un micrófono de array, formado a su vez
por 8 micrófonos, también se ha desarrollado e integrado en el propio robot Maggie
un sistema propio de 8 micrófonos colocados en forma de anillo en la base del mismo
(ver Fig. 6.14 ).
Figura 6.14: Array de micrófonos en la base del robot
Este sistema propio de 8 micrófonos no está siendo actualmente usado para sistema
de reconocimiento de voz, sino para tareas de localización de la fuente sonora, que se
verán con detalle en otro de los capítulos de esta tesis doctoral. Los motivos de no
usarse para tareas de reconocimiento de voz son dos. El primero de ellos, es que el

120
Capítulo 6. Sistema de reconocimiento automático del habla
micrófono de array comercial entrega una única seña de audio (formada por la suma
procesada adecuadamente de los 8 micrófonos), sin embargo, nuestro sistema de 8
micrófonos entrega 8 señales de audio diferentes, siendo difícil de tratar como una
única señal. Este inconveniente podría ser salvado si en el propio sistema operativo
(en este caso Ubuntu) se crea un único dispositivo virtual que englobe a estos 8
micrófonos. El otro inconveniente para su uso en tareas de reconocimiento de voz,
es que estos micrófonos han sido colocados en la base del robot y la calidad de la
señal recibida de la voz humana no es lo suficientemente buena como para realizar
reconocimiento de voz y sí lo es, en cambio, para la tarea de localización de fuente
sonora.
Resumen de las pruebas de precisión utilizando diferentes tipos
de micrófonos
Para resumir el estudio realizado, se ha construido una gráfica que compara la
precisión de los tres tipos de micrófono usados (ver Fig. 6.15). En esta figura, los tres
sistemas de captura de audio son comparados en dos entornos: silencioso (menos de
50 dB) y ruidoso (65 dB aproximadamente). El sonido es capturado a una distancia
igual a menor a 2 metros, en el caso de micrófono auricular, esta distancia es de
apenas algún centímetro.
Figura 6.15: Precisión de reconocimiento usando distintos tipo de micrófonos
Con estos resultados, se puede afirmar que el uso de auriculares proporciona la
manera mas precisa de realizar reconocimiento de voz. El siguiente sistema que pro-
porciona mayor precisión es el de array; finalmente el peor de todos es el formado por
un micrófono omnidireccional integrado en el propio robot. En los tres casos, se ha
usado micrófonos de alta calidad (para el año 2010).

6.10. Resumen
121
Dependiendo del tipo de interacción y el entorno, puede ser deseable usar un
micrófono de array integrado en el propio robot o un micrófono auricular colocado
en la boca del usuario. Si el entorno es muy ruidoso y/o es necesario altos valores
de precisión en el reconocimiento de voz, el micrófono auricular es la mejor solución.
Si el ambiente es mas silencioso, como pueda ser un hogar, y lo que interesa es una
interacción lo mas natural posible, el array de micrófonos puede ser la mejor elección.
6.10.
Resumen
En este capítulo se han descrito los pasos seguidos y los requisitos establecidos para
dotar a nuestra arquitectura de control, y por ende, a nuestros robots, de la capacidad
de entender el lenguaje natural hablado por cualquier humano y sin entrenamiento
previo con el sistema. Se han analizado las diferentes alternativas de configuración
hardware y sofware poniéndolas a prueba en entornos reales. En este sentido, se ha
obtenido información sobre la precisión del reconocimiento en diferentes escenarios,
usando los más modernos sistemas de adquisición de audio y analizando cómo influ-
yen diversos parámetros en la precisión del reconocimiento: edad, sexo, entonación,
volumen, idioma... Finalmente, se ha propuesto un nuevo modelo de clasificación de
los resultados del reconocimiento como aceptados o rechazados, basándonos en un
mecanismo de "segunda opinión", que utiliza dos reconocedores concurrentemente.
Esta nueva aproximación tiene en cuenta las tasas de acierto de cada reconocedor
pre-calculadas por cada intervalo de ruido, con ello se incrementa el numero de reco-
nocimientos clasificados correctamente.

122
Capítulo 6. Sistema de reconocimiento automático del habla

CAPÍTULO
7
Proxémica y sistema de localización multimodal del usuario
Automatic
Speech
Recognition
(ASR)
Audio
Extraction
Features
Natural
Language
Proccesing
(NLP)
User
Localization
Emotion
Detection
Multimodal
Fusion
(NLSML)
DIALOG
MANAGER
IDIM
User
Profile
DIALOGS: VXML
FILES
Natural
Language
Generation
(NLG)
Emotional
Text To
Speech (eTTS)
Sing
Generaton
(Vocaloid)
Non-Verbal
Sound
Generation
text
features
features
semantic:
atribute-value
localization
emotion/arousal
name,
language,
age,
voiceprint,
experience,
dialogHistory
User Communicative Act xml
vxml
song
semantic,emotion,features
semantic, language,
emotion, character
words,language,
emotion, character
User
Identification
name
features
AUDIO
acustic signal
VOICE
REAL-TIME
SOUNDS
MUSIC
Engagement
Gestures
MOTOR/VISUAL
GESTURES
gesture
Body
Sensibility
TOUCH
capacitive signal
body part
VISION
images
Robot
Emotional
State
emotion
RFID
VISION
OCR
text
written
text
RFID
Reader
MULTIMODAL FISION
LASER
distance
information
Gesture
Recognition
rfid card
text
grid
points
gesture
image
Google/
Microsoft
Translate
Wolfram
Alpha
b
b
b
o
o
o
o
d
dy
dy
dy
b
b
d
dy
dy
dy
"Si me necesitas, dame un silbidito."-- anónimo
123

124
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
7.1.
Introducción
La supervivencia de los animales depende, en gran medida, de su efectividad per-
cibiendo el entorno, en continuo cambio, en el que vive. Por lo tanto, la supervivencia
depende en gran medida de su habilidad de actuar con la información sensorial que
percibe, moviéndose hacia la comida o evitando posibles riesgos. Los robots autóno-
mos móviles, especialmente aquellos diseñados para trabajar en ambientes hostiles,
necesitan del diseño de capacidades análogas. En cambio, en el ámbito de los robots
sociales, la percepción del entorno es usada para mejorar la interacción natural con
el mismo, especialmente con los seres humanos, en tareas propias de los seres sociales
como es el diálogo.
Los animales utilizan para detectar el origen de una fuente sonora el sentido del
oído, sin embargo el número de "sensores" (oídos) empleados en esta tarea no es unifor-
me. Existen algunos invertebrados con sólo un oído, así como el rango de frecuencias
audibles también varía. Las amantis religiosas están dotadas de un único oído, que usa
como mecanismo de defensa para evitar la localización por ecos de frecuencias de los
murciélagos [Yager Hoy, 1986]. En ese sentido, los mamíferos y los invertebrados
usan su sistema auditivo principalmente para tareas primarias, como evitar los peli-
gros que le rodean, buscar alimento y aparearse; quedando excluidas funciones más
avanzadas, propias de los seres humanos, como es la de entender el lenguaje natural
o socializarse con el resto de sus semejantes.
En este capítulo, se presenta el desarrollo de un sistema de localización de usuarios
basado en la fusión de información sensorial sonora y visual (como complemento a la
sonora), integrado en el robot social Maggie.
Uno de los requisitos para lograr una interacción natural mediante diálogos entre
humanos, o entre humanos y robots, es el de encontrarse en una situación espacial
adecuada, es decir, dialogar a una distancia y orientación adecuada entre ambas partes
para mantener proceso comunicativo satisfactorio. Los robots sociales suelen usar un
sistema completo de diálogo multimodal que gestiona la interacción entre los usuarios
y el robot durante el proceso comunicativo. Uno de los componentes que se han
desarrollado, para este sistema de diálogo, es el relativo a la localización de usuarios
respecto al robot. Este sistema proporciona información para determinar la situación
espacial más adecuada del robot respecto al usuario. El determinar la situación más
adecuada, requiere además de la localización del interlocutor, de un estudio proxémico
en la interacción humano-robot (HRI).
En los últimos años, inspirándose en los estudios sobre el funcionamien-
to del sistema auditivo humano, se han trasladado al campo de la robó-
tica móvil ([Hudspeth, 1983, Brown, 1874] y animal [Dooling Popper, 2000,
Ross Smith, 1978]). En ese sentido, un nuevo campo de investigación a surgido, y se
le conoce como Robot Audition [Nakadai et al., , Nakadai et al., 2002, Valin et al., a,

7.2. Localización de la fuente sonora y de usuarios en robótica social
125
Murray et al., 2004, Andersson et al., 2004]. La mayoría de trabajos citados se cen-
tran en robots móviles y no en robots sociales. En los robots móviles el principal
objetivo es el seguimiento de la fuente sonora (phonotaxis) y no el de situarse en el
espacio, a una distancia adecuada para la interacción o diálogo (proxémica).
Los robots sociales, son artefactos diseñados para interactuar dentro de la socie-
dad, por lo que es importante que acaten sus reglas de comunicación, como son el
respeto de los espacios. Además, es deseable que posean las características más avan-
zadas de su sistema auditivo, de una manera similar al humano. Los seres humanos
tenemos dos oídos, con los que "sentir" el entorno sonoro en estéreo. Es en el cere-
bro donde, gracias a las diferencias en fase e intensidad del espectro de las señales
acústicas percibidas por los oídos, se realizan las funciones de localización de fuente
sonora.
El principal objetivo, dentro del área de investigación denominada Robot Audition
aplicada a robots sociales, es el de mejorar la interacción del humano con el robot,
durante el proceso de diálogo. Dicho diálogo se lleva a cabo gracias a un complejo
sistema, formado por varios módulos independientes, pero que trabajan de manera
coordinada para conseguir una interacción lo más natural posible entre el humano y
el robot. Uno de estos componentes, en un sistema de diálogo moderno, es la localiza-
ción de la fuente sonora, ya que puede ayudar considerablemente a situarse el robot
espacialmente a una distancia adecuada para la interacción. Si bien, este componente
es fundamental para dicha localización del robot en el espacio, no es el único factor
o módulo que interviene para determinar dicha localización espacial. Para el robot
social Maggie, se ha diseñado, desarrollado, implementado y probado en el sistema
de diálogo que nos ocupa, en el que la localización de la fuente sonora desempeña un
papel fundamental para la disposición espacial del robot.
7.2.
Localización de la fuente sonora y de usuarios
en robótica social
7.2.1.
El problema de la localización sonora
En robótica, un sistema auditivo artificial puede ser usado para tres cosas fun-
damentales: 1) localización de las fuentes sonoras, 2) separar las fuentes sonoras en
diferentes canales, 3) extracción de las características sonoras para realizar tareas co-
mo reconocimiento del lenguaje, detección de emociones o identificación del hablante.
Este capítulo se focaliza en el primer punto, el resto se hace en otros capítulos.
Para lograr el objetivo de localizar las fuentes sonoras, según los trabajos
[Wright Fitzgerald, 2001] [Handzel Krishnaprasad, 2002] existen varias aproxi-
maciones al problema:

126
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
1. Una de ellas es estudiar las diferencias en amplitud que genera una fuente sonora
entre los distintos micrófonos (u oídos) que reciben la señal. Este método, que es
el que se sigue en este trabajo, se basa en comparar las diferencias de volumen
entre los distintos micrófonos para determinar la diferencia angular con respecto
a la fuente sonora. El micrófono más próximo a la fuente sonora, debería recibir
un señal de mayor nivel de amplitud, que el resto de micrófonos, si bien, la
precisión de este método se ve fuertemente afectada por los rebotes de la señal
sonora contra los elementos del entorno, como paredes y muebles.
2. Un segundo método consiste en el análisis de las diferencias en fase que se
producen entre las distintas señales recibidas por cada uno de los micrófonos
relativas a la misma fuente sonora. Este último método tiene que ver, con que
la misma señal generada por la fuente sonora será percibida instantes antes por
el micrófono más cercano que el resto. La precisión de este método viene da-
do por el tamaño y la disposición del sistema de micrófonos, si los micrófonos
están situados demasiado cerca, todos ellos recibirán prácticamente la misma
señal [Brandstein Ward, 2001, Benesty et al., 2008]. La primera de las técni-
cas trabaja en el dominio del tiempo, mientras que la segunda trabaja en el
dominio de la frecuencia. Ambas técnicas se pueden combinar para lograr un
sistema de mayor precisión.
3. Existe una tercera técnica, no tan comentada bibliográficamente debido a
su complejidad, y que sólo necesita de un micrófono para su desempeño
[Saxena Ng, 2009]. Consiste en el estudio de las diferencias en el espectro,
producidas por la misma fuente sonora emitiendo el mismo sonido, desde dis-
tintas posiciones relativas al micrófono. Los seres humanos, que poseemos úni-
camente dos oídos, somos capaces de diferenciar si un sonido viene de delante o
de detrás, incluso si se produce a la misma distancia y ángulo tanto por delante
como por detrás. Esto es posible precisamente gracias a esta tercera propiedad
que se está analizando, que posibilita a los humanos únicamente con un solo
oído realizar localización sonora. Sin embargo, para un sistema de audición ar-
tificial basado en un sólo micrófono, resulta un desafío, ya que es necesario de
cierto conocimiento a priori del sonido, para poderlo comparar con el sonido
recibido previamente desde otra posición. Ciertos sonidos, que se escuchan en
nuestro entorno a diario, tienen cierta estructura, que en el caso de los humanos
somos capaces de reconocer. En los humanos este conocimiento del sonido se va
ganando durante años de experiencia [Morrongiello, 1989].
El uso combinado de la primera y segunda técnica, se está haciendo habitual en el
campo de la robótica [Jwu-Sheng et al., 2009, Andersson et al., 2004, Valin et al., a,
Nakadai et al., , Nakadai et al., 2002, Briere et al., 2008]. Para conseguir resultados

7.2. Localización de la fuente sonora y de usuarios en robótica social
127
satisfactorios aplicando el algoritmo que trabaja con diferencias en fase de la señal
(segunda técnica), se requiere de ciertas especificaciones hardware que limitan su uso:
una disposición de los micrófonos, en la que cada uno de ellos quede suficientemente
alejado como para poder captar diferencias en fase entre las señales percibidas, lo que
implica, robots de cierto tamaño en los que poder situar los micrófonos correctamente.
Se pueden encontrar sistemas de array de micrófonos comerciales
1
de no menos de 11
pulgadas, lo que puede resultar incomodo y poco estético. Otro problema añadido es
la necesidad de una tarjeta que lea físicamente todos los micrófonos simultáneamente.
En el campo de la robótica, se han desarrollado dos paquetes de softwa-
re básicos que cubren los tres apartados descritos previamente. Si bien, pa-
ra este estudio sólo nos interesa su aportación al sistema de localización
de fuente sonora. Estos dos frameworks son ManyEars [Peto, 1980] y HARK
[Nakadai et al., 2008b, Takahashi et al., 2010] que implementan algoritmos de filtros
de partículas [Valin et al., 2007] para localización de forma robusta, que se basan en
los dos métodos comentados previamente (diferencias en amplitud y fase). Según los
autores, logran una precisión de la localización sonora entorno a los 3
o
de margen de
error.
El principal problema del uso de estos entornos es que son muy complejos y la
necesidad de una tarjeta específica de lectura simultánea de todos los micrófonos.
Para nuestras necesidades, dentro del campo de la robótica social, y gracias a la
fusión sensorial realizada, nos es totalmente suficiente con un sistema más sencillo,
basado en diferencias en amplitud y sin la necesidad de una tarjeta específica de
adquisición.
7.2.2.
Fonotaxis vs proxémica
Fonotaxis, se puede definir como "el movimiento de un organismo en relación
a la fuente sonora. Por ejemplo, las hembras de ciertas especies animales, se sienten
atraídas por el canto de cortejo de una pareja potencial (es decir, positiva phonotaxis),
o algunos animales pueden huir al oír el sonido de un posible depredador (es decir,
negativa phonotaxis)"
2
. La phonotaxis permite discriminar donde está situado el foco
de atención al que dirigirse, basándose únicamente en el sentido del oído. En ese
sentido, es muy diferente el papel desempeñado por el sistema de audición en un robot
social, que el papel desempeñado en la especie animal o en ciertos robots móviles, cuyo
principal objetivo es cubrir sus necesidades primarias, entre ellas la de supervivencia.
Por otro lado, la proxémica se define como la parte de la semiótica
3
dedicada al
estudio de organización espacial durante la comunicación lingüística [Hall, 1966]. Más
1
http://www.acousticmagic.com/
2
A dictionary of Biology: http://www.encyclopedia.com/doc/1O6-phonotaxis.html
3
es el estudio de los signos y señales usados en la comunicación

128
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
concretamente, la proxémica estudia las relaciones de proximidad, de alejamiento, etc.
entre las personas y los objetos durante la interacción, las posturas adoptadas y la
existencia o ausencia de contacto físico. Asimismo, pretende estudiar el significado
que se desprende de dichos comportamientos.
La competencia proxémica permite a las personas crear un marco de interacción
acorde con unas coordenadas espacio-temporales que expresan determinados signifi-
cados y que, en ocasiones, obedecen a un complejo sistema de restricciones y normas
sociales que tienen que ver con el sexo, la edad, la procedencia social, la cultura, etc.
Por otro lado, a veces la distribución del espacio está establecida de antemano, por
ejemplo, en la sala de un juicio o en una ceremonia religiosa.
La finalidad del sistema de localización sonora en un robot social, como Maggie,
es complementar al sistema de diálogo multimodal, en una tarea más compleja que
tiene que ver con la proxémica y es adecuada para una interacción natural. El gestor
de diálogo puede gestionar la información de localización sonora con distintos fines,
uno de ellos puede ser realizar "phonotaxis", pero cualquier otro es posible, como
por ejemplo alejarse del usuario si este actúa con agresividad, o mejorar el enganche
(engagement) en el proceso comunicativo, etc.
7.2.3.
Análisis proxémico en la interacción entre humanos
El origen de la proxémica está relacionado con los estudios que los etólogos
4
habían
realizado acerca de la importancia de la distribución espacial en las interacciones entre
animales. En los años setenta, un grupo de investigadores, entre ellos el antropólogo
Edward T. Hall [Hall, 1966], aplicaron el modelo que etólogos, como Huxley o Lorenz,
habían diseñado para el mundo animal al estudio de la comunicación en las sociedades
humanas, e introdujo el concepto de proxémica. Hall identificó varios tipos de espacio,
entre ellos el denominado espacio personal. Este espacio no es otro que el creado por
los participantes de una interacción y que varía en función del tipo de encuentro, la
relación entre los interlocutores, sus personalidades y otros factores. Diseñó un modelo
en el que clasifica el espacio personal en cuatro subcategorías:
Espacio íntimo, que va desde el contacto físico hasta aproximadamente 45
cm. Esta distancia podría subdividirse en dos intervalos distintos: entre 0 y 15
cm, distancia que presupone el contacto físico y que tendría lugar en situaciones
comunicativas de máxima intimidad (por ejemplo, durante el mantenimiento de
relaciones afectivas); y entre 15 y 45 cm, que se corresponde con una distancia
menos íntima, pero si dentro de un marco de privacidad.
Espacio causal-personal, que se extiende desde 45 a 120 cm. Es la distancia
4
investigadores del comportamiento comparado entre el hombre y los animales

7.2. Localización de la fuente sonora y de usuarios en robótica social
129
habitual en las relaciones interpersonales y permite el contacto físico con la otra
persona.
Espacio social-consultivo, que abarca desde los 120 cm hasta los 364 cm. y
aparece en situaciones donde se intercambian cuestiones no personales.
Espacio público, que va desde esta última hasta el límite de lo visible o lo
audible. A esta distancia los participantes tienen que amplificar recursos como
la voz para posibilitar la comunicación, esto sucede por ejemplo durante una
conferencia.
El propio E. T. Hall señala que este modelo está basado en sus observaciones de
una muestra particular de adultos y por lo tanto, no es generalizable a todas las so-
ciedades. Es evidente, que existen normas diferentes en cada cultura para el lugar y
distancia que se deben mantener en determinadas situaciones y que transmiten infor-
mación sobre la relación social entre los participantes. Existe una distancia adecuada
para cada situación de acuerdo a unas reglas establecidas por la comunidad que los
participantes conocen, o deben aprender, para moverse con éxito en las relaciones
interpersonales y evitar conflictos o interpretaciones erróneas.
Otros importantes trabajos de la época [Argyle, 1988, Argyle, M.; Dean, 1965],
analizan y experimentan con distintos factores que influyen en la proxémica, como
son la mirada, personalidad, familiaridad, número de personas interactuando, normas
culturales, etc. En ellos se explican la necesidad de contacto visual para la interacción.
Contactos visuales prolongados de más de 10 segundos aumentan la ansiedad, sin
embargo la ausencia de contacto visual directo hace que la gente no se sienta integrada
completamente en la conversación.
En un trabajo muy preciso [Lambert, , Lambert, 2004], Lambert estableció me-
diadas de distancia comunicativa en función del tipo de situación afectiva que se
presentaba (ver Fig. 7.1). Si bien, dejaba de lado muchos otros aspectos que tienen
también que ver en la interacción humana y que influye directamente a dicha situación
espacial.
Los seres humanos, al igual que los demás animales, manejan el espacio y emplean
las distancias como una manera de satisfacer necesidades vitales y de relación con
los demás; sin embargo, los estudios proxémicos han podido establecer que la per-
cepción que tenemos del espacio personal y del espacio social resulta culturalmente
determinada [Hayduk, 1978]. Biología y cultura, pues y como en tantas otras cosas,
se combinan en la utilización que hacemos del territorio.

130
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
Figura 7.1: Espacios personales en la interacción humano-humano según Lambert
7.2.4.
Análisis proxémico en interacción humano-máquina y
humano-robot
Se han realizado estudios proxémicos en interacción Humano-Máquina
[Nass, C; Reeves, 1996, Nass et al., 1994]. En estos trabajos, los usuarios interactúan
con computadoras o agentes virtuales, por lo que los resultados no pueden ser ex-
trapolados a un estudio de la interacción, en los cuales los usuarios interactúan con
ordenadores, agentes virtuales, etc. Si bien estos estudios, en los que el agente virtual
carece de cuerpo físico (embodyment), difícilmente pueden ser extrapolados al campo
de la interacción humano-robot, ya que el modelo de interacción entre el humano y
el robot no suele estar centrado en el uso de pantalla y ratón.
El uso de la localización sonora, en el ámbito de un robot social y su uso den-
tro del campo de la proxémica constituye una tarea mucho más rica y ambiciosa
que las meras capacidades de "phonotaxis" implementadas en sistemas de localiza-
ción sonora en robots móviles. Una correcta implementación de un sistema de diálogo
proxémico, permite mantener interacciones a la distancia adecuada al interlocutor o
los interlocutores, variando en orientación y distancia en función de múltiples carac-
terísticas como son: identidad del interlocutor, número de interlocutores, distancia y
ángulo previo a la interacción, estado afectivo del propio robot y de los interlocutores
([Takayama Pantofaru, 2009]). Todos estos aspectos, únicamente pueden ser trata-
dos, en interacciones reales, si se dispone de un completo sistema de diálogo dotado
de suficientes módulos capaces de realizar dichas tareas.
En la literatura, se puede encontrar varios estudios sobre proxémica y HRI que ana-
lizan alguno de esos factores. Por ejemplo, Breazeal[C. Breazeal, 2000] encontró que el
usuario respondía a robots zoomórfícos de formas no verbales (con sonidos) y respetan-
do el espacio interpersonal del robot. Por otro lado, Hüttenrauch [Hüttenrauch, 2006]
observó que en pruebas de HRI la mayoría de los participantes guardaban distan-
cias de interacción correspondientes al espacio 2 de Hall (0.45 to 1.20 m.). En otro
estudio [Walters, 2009] encontró que los participantes generalmente permitían que el

7.2. Localización de la fuente sonora y de usuarios en robótica social
131
robot se aproximase a ellos en las interacciones físicas mucho más que en interacciones
meramente verbales.
En ([Kheng Lee et al., 2007]) se realiza un interesante estudio sobre la apariencia
externa del robot y la proxémica. Relacionó la proxémica y la experiencia de uso
ganada (interacción a corto o largo plazo), viviendo con el robot por un periodo de
tiempo superior a cinco semanas. Durante su primer encuentro, los participantes del
estudio exhibieron una fuerte tendencia a permitir que el robot, de apariencia me-
catrónica, se aproximase más cerca que los robots con apariencia humana (ver Fig.
7.2.4). Por lo tanto, demostró que la distancia de interacción depende en gran medida
de la apariencia del robot, en este caso humanoide o mecatrónica. Los usuarios gene-
ralmente preferían estar más cerca de los robot mecatrónicos que de los humanoides,
aunque esta tendencia se iba diluyendo según los participantes se acostumbraban al
uso del robot.
(a) Humanoi-
de
(b)
Meca-
trónico
Figura 7.2: Diferencia de aspecto externo entre un robot humanoide y uno mecatrónico
En [Takayama Pantofaru, 2009] varios factores fueron analizados. Descubrió
que la mirada de un robot hacia el usuario también influye en los comportamien-
tos proxémicos. Además, se encontró que las mujeres mantenían mayores distancias
de interacción que los hombres, cuando el robot las miraba. Factores como aptitudes,
experiencias personales y personalidad también tienen su influencia directa sobre el
comportamiento proxémico. Las personas con comportamiento más agradable ten-
dían a colocarse más cerca del robot, a diferencia de las personas con actitudes mas
negativas o neuróticas hacia los robots en general tendían a situarse mas alejados de
los robots. Siguiendo esta misma línea, en [Mumm Mutlu, 2011] se mostraba como
los participantes que les gustaba el robot, mantenían la distancia de interacción aun-
que el robot les mirase directamente, en cambio, los participantes que no les gustaba
el robot, si este les miraba, mantenían mayores distancias de interacción que sino se
sentían intimidados por su mirada.

132
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
Debido a que algunos comportamientos no-verbales pueden ser considerados ele-
mentos opcionales a añadir en un sistema de diálogo multimodal, existen muy pocos
trabajos en el que realmente la capacidad proxémica de decidir la posición adecua-
da para el proceso comunicativo está incluido dentro del propio sistema de diálogo
[Henkel, 2012]. Los trabajos previamente citados se centran en el uso de la proxémica
fuera del sistema de diálogo, pero para lograr una interacción humano-robot natu-
ral, es esencial que esta sea integrada dentro del sistema de interacción. Siendo este
último, el que teniendo en cuenta toda la información que dispone, tipo de usuario,
perfil, etc., pueda relacionarla para decidir la disposición mas adecuada.
7.3.
Factores en análisis proxémico entre el usuario
y el robot social Maggie
Como se ha visto en la sección 8.2, Hall realizo estudios de la proxémica entre
seres humanos, fundamentalmente entre personas adultas. Partiendo de esa base y de
los cuatro espacios que identificó, se ha tratado de llevar ese mismo estudio al tipo
de interacciones que se han producido entre el robot social Maggie y chicos de 8 a 17
años, que provenían de varios colegios.
Los experimentos fueron realizados en grupos de 15 alumnos, interactuando con
Maggie en sesiones de 15 minutos. Un total de 60 alumnos han participado en este
trabajo. Interactuaron en diferentes situaciones: en grupos, uno a uno y con/sin ayuda
de un experto. Además, ninguno de ellos tenía experiencia previa con el sistema ni
con el robot. Para probar la interacción con adultos, se realizaron test con 5 miembros
del grupo de desarrollo del RoboticsLab, con edades comprendidas entre 25 y 30 años.
En este caso, todos ellos tenían experiencia previa con el uso del robot Maggie.
El objetivo de estos estudios fue identificar como los espacios personales, descritos
por Hall se relacionan con los diferentes tipos de usuarios y situaciones comunicativas.
Esta información es esencial para que el sistema de dialogo (en concreto el gestor del
diálogo) tome la decisión de colocar el robot en una situación adecuada respecto
al usuario. En otras palabras, para adaptar la distancia de interacción al tipo de
usuario/s. Los aspectos tenidos en cuenta son: experiencia de uso (familiaridad con
el sistema mediante el uso de perfiles de usuario), la edad, la personalidad, el género,
el aspecto externo del robot y el número de usuarios.
Todas las interacciones fueron grabadas en vídeo para analizar los diferentes fac-
tores que podían influir en la proxémica en la interacción entre los usuario y el robot.
En estas interacciones los usuarios podían interactuar libremente usando todos los
diálogos y posibilidades de interacción ofrecidas por Maggie, por lo tanto, sin restric-
ciones en su uso. En el caso de niños, cada interacción fue absolutamente diferente, y
normalmente intentaron jugar con el robot (una descripción extensa de los juegos de

7.3. Factores en análisis proxémico entre el usuario y el robot social Maggie
133
Maggie puede encontrarse en [Gonzalez-Pacheco et al., 2011]).
7.3.1.
Experiencia de uso
Se ha considerado dos tipos de interacciones con el robot social: con y sin perfiles
de usuario. En el primero de ellos, el usuario interactúa con el robot sin tener un perfil
creado, típicamente porque es su primera interacción con el robot (quizás durante una
demostración o show). Por lo tanto, el comportamiento del robot se focaliza en llamar
la atención del usuario. Si el usuario quisiera interactuar con Maggie varias veces, sería
conveniente que se registre en el sistema, para que el robot lo conozca y pueda adaptar
su comportamiento. En el perfil de usuario se guardan varias características: nombre,
edad, género, experiencia de uso, huellas de voz y lenguaje.
Gracias al uso de perfiles, el diálogo puede adaptarse al usuario, y una de estas
adaptaciones tiene que ver con la distancia de interacción. Antes de cargar el perfil,
es necesario identificar al usuario. En nuestro sistema de diálogo, dicha identificación
se realiza mediante voz (hasta ahora la visión no es usada para complementar dicha
identificación). Para lograrlo, durante la fase de registro, el sistema aprende las carac-
terísticas de la voz del usuario y las almacena en un fichero, al que llamamos "huellas
de voz". Estas huellas de voz son necesarias para identificar el usuario cuando saluda
al robot.
En [Takayama Pantofaru, 2009], la relación entre la experiencia de uso con el
sistema y la proxémica es analizada. De hecho, se ha observado que los usuarios
con perfil, y por lo tanto con experiencia con el sistema, es común mantener una
distancia de interacción que se corresponde con el espacio 3 de Hall (120 a 364 cm).
Sin embargo, durante una interacción espontanea, cuando el robot está haciendo un
show o el usuario no está experimentado, por lo tanto sin perfil de usuario, la distancia
de interacción se relaciona con el espacio 4 de Hall (espacio público).
Finalmente, en interacciones entre humanos, el rango de familiaridad parece estar
relacionado con una menor distancia de interacción [Hall, 1966]. Sin embargo, consi-
derando la experiencia ganada con el robot como una media de familiaridad con el
robot, se ha observado que la distancia de interacción crece según se incrementa la
experiencia. Esto parece ser debida a la propia naturaleza de interacción con Maggie.
En la comunicación con Maggie, el reconocimiento de la voz es usado normalmente
mediante micrófonos auriculares inalámbricos colocados en el usuario, mientras que
la localización sonora se realiza por los 8 micrófonos colocados en la base del robot.
Por lo tanto, según aumenta la experiencia con el robot, los usuario se dan cuenta que
pueden alejarse del robot sin que por ello disminuya la precisión del reconocimiento
de voz. Sin embargo, un usuario novel, tiende a colocarse cerca del robot para que el
robot lo escuche mejor, situación que se ve acrecentada si se producen varios fallos
de reconocimiento de voz.

134
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
Estas conclusiones han sido observadas durante sesiones donde los chicos y los
miembros del equipo interactuaban individualmente con el robot.
7.3.2.
La edad
Analizando los datos recogidos, se ha observado que la edad también influye en
la distancia de interacción. De media, la distancia de interacción con niños de entre
8 y 10 años, se sitúa por encima de los 2 metros (espacio personal 3), ver Fig. 7.3.
Sin embargo, para niños mayores de 10 años y adultos, la distancia de interacción
disminuye a 1m, ver Fig. 7.4. Nosotros pensamos que los niños con menos de 10 años
se sienten más intimidados por el robot que niños mayores. Los chicos mayores sienten
mayor grado de curiosidad hacia el robot y se sienten menos intimidados, por lo que
se aproximan en mayor medida al robot. En el caso de las personas adultas que ya
han probado la interacción con el robot, se sienten confortables con la interacción.
Figura 7.3: Interacciones con niños de entre 8 y 10 años
Figura 7.4: Interacciones con personas mayores de 10 años

7.3. Factores en análisis proxémico entre el usuario y el robot social Maggie
135
7.3.3.
La personalidad
La personalidad es un factor que influye en la proxémica, según queda reflejado
en trabajos como [Williams, 1971]. En los experimentos realizados se ha observado
que en interacciones grupales (varios niños interactuando con el robot), son los más
extrovertidos los que tienden a situarse más próximo al robot, mientras que los más
tímidos, por su propia naturaleza son mas propensos a mantener una distancia de
seguridad con el robot, buscando siempre el cobijo del tutor, sobre el que se sienten
más seguros. Son además los alumnos mas extrovertidos los que más ganas tienen
de interactuar con el robot, y tratando de llamar su atención y ganar el foco de
atención del robot sobre el resto de niños, tienden a situarse más cerca del mismo.
Medir cuantitativamente la personalidad de cada interlocutor es ciertamente una tarea
difícil y poco precisa, pero parece claro que en interacción humano-robot el grado de
timidez está bastante relacionado con la distancia de interacción y la duración del
diálogo.
7.3.4.
El género
Otro factor que puede influir en la proxémica, es el género del usuario. Estudios
previos parecen reflejar que las mujeres prefieren situarse frente al robot y los hombres
prefieren situarse lateralmente al mismo [Fisher Byrne, 1975]. En cambio, en nues-
tros estudios, no se ha podido corroborar esta afirmación, ya que no se ha apreciado
ciertamente ninguna diferencia entre la manera de actuar de los niños y las niñas.
7.3.5.
El aspecto del robot
Hasta ahora los factores que se han analizado, tienen que ver con factores propios
a cada interlocutor, sin embargo, existen otros factores, no de menor importancia, que
también influyen en la proxémica. Estos otros factores tienen que ver con la propia
naturaleza del robot, esto es: forma del robot, colores, altura, aspecto, volumen de
la voz, tipo de comunicación (verbal, sonora, gestual), peso, velocidad de traslación,
etc. Estos aspectos no se han analizado, fundamentalmente porque únicamente se ha
experimentado con el robot Maggie.
7.3.6.
El número de usuarios
Aunque el sistema de diálogo está diseñado para interactuar con los usuarios de
uno a uno, es decir, no es posible cargar varios perfiles de usuario simultáneamente,
cualquiera de ellos puede hablar al robot y llevar a cabo algunos procesos comunica-
tivos en modo cooperativo. Por esta razón es interesante estudiar la interacción en
grupos.

136
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
Se ha observado que, durante la interacción con mas de un chico, los chicos tienden
a situarse muy cerca del robot, tratando de llamar su atención sobre el resto de los
miembros del grupo. De hecho, se ha observado que el mismo niño que empieza
interactuando él sólo con el robot a una distancia lejana, se aproxima al robot cuando
sus compañeros de clase se unen a la interacción 7.5.
Figura 7.5: Interacción grupal
Por otro lado, en tareas que requieren coordinación, por ejemplo cuando el robot
comienza a cantar y bailar, se ha observado que algunos niños, de manera espontánea,
han tendido a alinearse con el robot e imitar sus pasos de baile. Por lo tanto, su
disposición espacial respecto al robot cambia (ver 7.6).
Figura 7.6: Niños imitando al robot bailando
7.3.7.
Conclusión: reglas proxémicas observadas en la interac-
ción usuario-Maggie
En esta sección, se presenta el conjunto de reglas extraídas fruto del estudio pro-
xémico realizado en la interacción de los usuarios con el robot Maggie. Estas reglas
son aplicadas en nuestro propio sistema de diálogo. No obstante, todos los factores
analizados no se han podido tener en cuenta a la hora de determinar las reglas con

7.4. Descripción del sistema
137
las que el sistema de diálogo debe decidir su disposición espacial. Por ejemplo, la
personalidad del usuario no se ha podido traducir en ninguna regla concreta, puesto
que el sistema de diálogo actualmente no tiene forma de determinarla. Además el
genero tampoco se ha tenido en cuenta puesto que no se ha encontrado variaciones
significativas entre la distancia de interacción de hombres y mujeres. Tampoco se ha
tenido en cuenta el número de usuarios interactuando simultáneamente con el robot,
debido a que el sistema de diálogo únicamente es capaz de cargar un perfil de usuario
en cada interacción. Recordar que el perfil de usuario contiene la información concreta
de cada usuario y permite la personalización/adaptación del diálogo (incluyendo la
adaptación proxémica).
En la Fig. 7.7 se muestra como las reglas proxémicas son aplicadas durante la HRI.
Como se puede observar, cuando el usuario saluda al robot, dos situaciones pueden
presentarse: que el usuario sea identificado por el sistema (el robot tiene su perfil
de usuario),o no (el sistema no conoce a dicho usuario y no tiene su perfil). En el
primero de los casos, el robot carga el perfil del usuario correspondiente e incrementa
el valor de la experiencia de uso con el sistema en uno. Por otro lado, si el usuario no
es reconocido/identificado por el sistema, el robot le preguntará si quiere registrarse
en el sistema. En el caso de que el usuario no quiera registrarse, el robot mantendrá
una distancia de interacción de, al menos, 3.6 m (espacio personal 4). Por contra, si
el usuario sí quiere registrarse en el sistema, un nuevo perfil de usuario es creado,
y el robot mantiene una distancia inicial comprendida entre 120 y 364 cm (espacio
personal 3). Desde entonces y dependiendo de la edad y el nivel de experiencia, la
distancia varia (siempre dentro del espacio 3). Si el usuario tiene una edad de entre 8
y 10 años, la distancia que se mantiene es aprox. 250 cm; en otro caso, dependiendo
de su nivel de experiencia (medido como número de interacciones con el sistema), las
distancias varían entre 120 y 225 cm.
7.4.
Descripción del sistema
Para integrar en el robot social Maggie, y para ser precisos, dentro de su sistema
de diálogo, de la capacidad de localizar el o los usuarios en el entorno del robot, es
necesario hacer una descripción software y hardware del problema.
7.4.1.
Sistema hardware: sensores usados
Un sistema artificial de localización sonora, con únicamente dos sensores de sonido
(micrófonos), es ciertamente impreciso. Es difícil diferenciar si el sonido es frontal o
trasero, así como conseguir altos niveles de precisión. Sin embargo un robot, no está
limitado a usar dos micrófonos; en ese sentido se ha decidido usar ocho micrófonos

138
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
Figura 7.7: Reglas proxémicas aprendidas en interacciones reales entre usuarios y el
robot social Maggie

7.4. Descripción del sistema
139
colocados concéntricamente sobre la base del robot Maggie, esto repercute en una
mayor robustez frente a los efectos del ruido.
En nuestro robot personal se ha integrado 8 micrófonos direccionales que se co-
nectan por USB al ordenador incorporado en el cuerpo del robot. Estos micrófonos
se colocan en la base del robot en una perfecta circunferencia de 40 cm de radio y a
21 cm del suelo. Esta distribución se puede ver en las figuras 10.1 y 7.9.
Figura 7.8: Micrófonos en el robot Maggie
Figura 7.9: Esquema de situación de los micrófonos en Maggie
Para la extracción de características sonoras, necesarias para el reconocimiento de
voz, la detección de emociones y la identificación de usuarios, se usa otro micrófono
adicional, un micrófono inalámbrico auricular direccional, mucho menos expuesto al
ruido de ambiente [Alonso-Martin Salichs, 2011].
La localización de los micrófonos en la parte baja del robot, se ha decidido por
dos factores: se alejan de las propias fuentes de sonido del robot (los altavoces) que
están colocados en el cuello del mismo, y por ser la parte del robot con una perfecta
simetría circular para favorecer los algoritmos de cálculo de localización de la fuente
sonora.
Notar que situar los micrófonos en la propia estructura del robot facilita la tarea
de localización sonora, puesto que el propio cuerpo actúa como barrera para las ondas
sonoras sin visión directa a la fuente, De esta manera los micrófonos mas alejados de

140
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
la fuente sonora reciben una señal de mas baja intensidad que los situados en visión
directa a dicha fuente. Si bien esta disposición y el hardware usado, nos ha generado
dos inconvenientes con los que se ha tenido que lidiar: la lectura simultanea de los
micrófonos, así como el acople de los propios sonidos generados por el robot durante
el diálogo con el interlocutor. Estos problemas se analizaran a continuación.
En nuestro caso, se ha querido evitar dicho coste y se han usado micrófonos USB
convencionales conectados a varios Hub USB, que a su vez se conectan al ordenador del
robot. Los dispositivos de audio asociados a dichos micrófonos deben cargarse siempre
en el mismo orden, para evitar su desordenación lógica en el sistema operativo que
los lee.
Como se ha comentado, el sistema de localización de usuarios, no sólo usa el
sonido como fuente de entrada de información, se apoya en información visual o de
distancias obtenidas para disminuir el error cometido por el sistema auditivo. Para
ello es necesario de un telémetro láser infrarrojo que nos proporciona información de
distancias, así como el sistema de visión Kinect, comentado en la sección que describe
el entorno de trabajo.
7.4.2.
Sistema software
Nuestra arquitectura de control corre sobre un sistema operativo Linux, concreta-
mente un Ubuntu 11.103, y una arquitectura de sonido ALSA. En el cual es posible
ordenar los dispositivos de audio en un orden fijo, mediante el fichero de configuración
/etc/modprobe.d/alsa-base.conf.
Primeramente ha sido necesario una fase previa de calibración. Aún siendo todos
los micrófonos el mismo modelo, cada uno de ellos tiene distinto nivel de captura
(ganancia intrínseca a cada micrófono), por lo que es necesario fijar, mediante prueba
y error, un volumen de captura de audio uniforme en el sistema operativo para todos
ellos.
La lectura se realiza secuencialmente sobre cada uno de los micrófonos, leyendo
en cada interacción una pequeña cantidad de tramas, 256 es un buen valor, para
que la lectura bloqueante por cada micrófono sea lo mas pequeña posible. Por cada
interacción de lectura, se leen 256 tramas de audio de cada micrófono, siendo la
interacción tan rápida que casi la lectura en un instante de tiempo se acerca bastante
a una lectura de datos simultanea (menor a 30ms).
Sobre estas tramas, usando las funciones propias de ALSA, se calcula el nivel de
intensidad sonora que se alcanza por cada uno de los micrófonos leídos. Este proceso
se repite durante la lectura de un número dado de iteraciones, en nuestro caso 5, y se
calcula un valor medio de intensidad de señal leído por cada uno de los micrófonos.
Si en lugar de usar 5 iteraciones se usa una cantidad mayor, el sistema será menos
"sensible" y por lo tanto también menos "reactivo" a cambios sonoros en el entorno,

7.4. Descripción del sistema
141
ya que el calculo promedio llevará mas tiempo que para un numero de iteraciones
inferior.
Una vez que se ha calculado un valor de intensidad medio para cada micrófono
durante una serie de iteraciones fijas, se comprueba cual de los micrófonos es el que
registra un mayor nivel de intensidad. Si ese nivel de intensidad supera un deter-
minado umbral, que se ha fijado previamente para discriminar sonidos de fondo, de
voz humana o sonidos relevantes, y además el robot no se encuentra hablando en ese
momento, puesto que la propia voz del robot podría ser la fuente sonora, entonces se
determina que la fuente sonora se encuentra en el ángulo que corresponde al micrófono
que ha recibido una mayor intensidad de señal acústica. Ver el algoritmo 7.1.
Algoritmo 7.1 Sound source localization algorithm
Require: numM icrophones
=8, numSamples
=256, numIterations
=5,
voiceT hreshold
=1100
1:
int frames[numMicrophones][numSamples]
2:
int accumulatedVolume[numMicrophones]
{The volume is computed or each microphone in several iterations}
3:
for numIter
0 to numIterations do
4:
readAudioSamplesAllMicrophones(frames)
5:
for numM icro
0 to numMicrophones do
6:
for numSample
0 to numSamples do
7:
accumulatedVolume[numMicro] += frame[numMicro][numMuestra]
8:
end for
9:
end for
{Look for the microphone with more accumulated volume}
10:
int microphoneWin = getMaximo(accumulatedVolume)
{If robot is not speaking and accumulated volume of microphoneWin is upper
the voiceThreshold}
11:
if (accumulatedV olume
[microphoneW in] voiceT hreshold) AND robotIs-
Quiet() then
12:
int angleSoundSource = (360/numMicrophones)*microphoneWin
13:
emit(angleSoundSource)
14:
end if
15:
end for
Después de que el sistema de localización sonora determina la orientación del
usuario respecto al robot, el sistema de localización basado en medidas de distancia
del láser empieza a trabajar. Este sistema permite medir las distancias de interacción
respecto al usuario, proporcionando mucho mas precisión que el sistema sonoro. El
telémetro láser, incorporado en el robot Maggie, proporciona una nube de puntos que

142
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
corresponden con la distancia entre los objetos alrededor del robot. Usando esta in-
formación, el robot puede seguir la nube de puntos que concuerdan con las piernas del
usuario. La distancia y orientación exacta es proporcionada por el sistema de diálogo,
en base a las reglas proxémicas vistas en la Fig. 7.7. Observando el comportamiento
humano durante una interacción natural por voz, el proceso seguido es muy similar.
En primer lugar, se usa el sistema auditivo para aproximadamente localizar la orien-
tación de la fuente sonora (al interlocutor), y el robot se gira hacia dicha orientación.
Una vez que el interlocutor queda dentro de nuestro campo de visión, el sistema de
visión es usado para determinar si la distancia y la orientación es correcta para man-
tener la interacción con ese interlocutor concreto. En nuestra opinión, no es necesario
tener un complejo y caro sistema de localización basado únicamente en información
sonora, debido a que se logra una gran precisión y adaptación integrando el sistema
dentro de un sistema de diálogo multimodal.
7.4.3.
Integración de la habilidad de localización de usuarios
dentro de RDS
Como se ha venido comentado, el sistema de localización de usuarios, se engloba
dentro de un completo y complejo sistema de diálogo multimodal que controla el flujo
de diálogo, y por lo tanto la interacción entre el humano y el robot. Este diálogo
controla un gran número de aspectos a tener en cuenta durante el diálogo, como son
el reconocimiento de voz, la síntesis de voz, la generación de gestos que complementan
el diálogo (como afirmaciones, negaciones, mirar a los ojos, etc), el reconocimiento de
emociones, etc. Uno de los aspectos que también controla y tiene mucho que ver en
la consecución de diálogos naturales, es el concerniente a la proxémica entre el propio
robot y el usuario.
El sistema de localización sonora descrito en la sección anterior se materializa
dentro de la arquitectura de control en el módulo de "localización del usuario". Se
puede ver en la figura 7.10 el sistema de diálogo completo y dicho módulo. Este módulo
recibe no solo entrada sensorial auditiva, como se ha descrito anteriormente, sino que
mediante información visual y de distancia (gracias al telémetro láser infrarrojo), es
capaz de realizar fusión multimodal que logra mayor precisión de localización que
únicamente mediante el uso de entrada de información sensorial auditiva.
Esta información procesada y fusionada por el módulo de localización sonora, es
entregada al dialogo, pasando previamente por otro tipo de fusión multimodal de
mayor nivel de abstracción, que organiza toda la información recibida por el res-
to de módulos en un "macro-paquete" de información procesada, que formalmente
se envía al diálogo en un fichero de texto XML, que conceptualmente corresponde
con lo que se conoce como actos comunicativos [Falb et al., 2006, Falb et al., 2007,
Zaslavsky, 2003].

7.5. Experimentos de localización de usuarios
143
Figura 7.10: Localización de usuarios en el sistema de diálogo multimodal
Es el gestor de diálogo, el que con dicha entrada de información sensorial prepro-
cesada, más el propio perfil del usuario (edad, idioma, experiencia de uso del sistema,
nombre e historia del diálogo), puede tomar decisiones inteligentes concernientes a su
ubicación espacial respecto al interlocutor. Para tomar esas "decisiones proxémicas in-
teligentes" es necesario realizar un estudio de como pueden influir dichas entradas de
información a la ubicación espacial del robot. Este estudio es realizado en la siguiente
sección.
7.5.
Experimentos de localización de usuarios
7.5.1.
El módulo de localización de fuente sonora
En esta sección, primero se presentan algunos experimentos realizados sólo con
el sistema de localización sonora (sólo usando el sistema de audio) para determinar
su grado de confiabilidad. Si la precisión del sistema de localización sonora no es
suficientemente buena, es muy difícil para el completo sistema de diálogo multimodal
determinar la situación espacial adecuada para mantener la interacción.
La habitación donde se han realizado los experimentos tiene unas dimensiones de
11.40 x 6.20 x 3.30 m. con un nivel de reverberación medio, debido a la falta de mu-
cho mobiliario. Para evaluar el sistema de localización sonora, no ha sido necesario un
grupo de usuario especial; por lo tanto, los propios miembros del grupo de desarrollo
han probado el sistema. En este caso, el usuario se ha situado a diferentes distancias

144
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
del robot Maggie, todas ellas comprendidas entre 0.5 y 3m. No se ha encontrado va-
riaciones significativas de precisión en los resultados cuando se mueve entre este rango
de distancias. Esto es debido a que el volumen de captura de audio de los micrófonos
incorporados en Maggie están ajustados para percibir con suficiente volumen la voz
humana a un tono normal hasta los 3m. Los resultados obtenidos son los siguientes:
Ángulo medio de error en la localización sonora: 23.72
o
Desviación estándar en la localización sonora: 25.82
o
Estos valores parecen no suficientemente precisos, pero se debe tener en cuenta
que el sistema completo usa fusión multimodal, no sólo el sistema auditivo. La mayor
fuente de perdida de precisión en entornos reales es la apariencia de ruidos indeseados,
como por ejemplo: el propio sonido por el robot cuando se mueve o habla, o inclusive
el sonido de sus propios ventiladores. Para disminuir la incidencia de estos problemas
se están desarrollando de algoritmos software (o hardware) de cancelación activa
del ruido y cancelación del eco. Otro problema que puede aparecer, es cuando los
micrófonos usados no son lo suficientemente "buenos" o las diferencias entre los niveles
de captura de audio es demasiado elevado.
7.5.2.
El módulo completo de localización de usuarios multi-
modal
Para probar la utilidad del módulo de localización de usuarios en el sistema de
diálogo, se han realizado algunos experimentos, en los que se ha intentado comprobar
si el robot se desplaza correctamente acercándose o alejándose del usuario con el
que interactúa. Para ello, se ha dividido el espacio alrededor del robot en 4 sectores,
(ver Fig. 7.11). En cada una de las zonas se ha situado un usuario diferente a unas
distancias de entre 0.5 y 3m. Los usuarios fueron cuatro miembros del departamento
ya registrados en su uso con el robot Maggie y por lo tanto con sus perfiles de usuario
conocidos por el robot. De edad comprendidas entre 25 y 30 años, tres hombres y una
mujer, con valores de experiencia de entre 2 y 150 iteraciones.
El diálogo comienza cuando el usuario saluda al robot. En ese momento el ro-
bot detecta aproximadamente la orientación de la que proviene el sonido de la voz
humana, se gira el ángulo correcto y se mueve hacia el usuario, manteniendo cier-
ta distancia decidida por el gestor del diálogo. La distancia exacta depende de los
estudios proxémicos realizados con el robot Maggie. Durante la interacción humano-
robot, el sistema de diálogo comprueba periódicamente la localización del usuario y
si la distancia de interacción varia considerablemente (más de 0.5 metros sobre la
calculada distancia de interacción ideal), el robot se mueve de nuevo, para colocarse
en la posición adecuada. Notar que el usuario puede cambiar su posición durante la

7.6. Resumen
145
Figura 7.11: Áreas de localización
interacción, pero el robot sólo cambiara su posición si la distancia de interacción va-
ria considerablemente. Este proceso es repetido para cada uno de los cuatro usuarios
colocados en cada zona. Una descripción intuitiva del proceso puede verse en la Fig.
7.12.
El módulo de localización de usuarios (la localización sonora y la aproximación
usando telémetro láser) logra tasas de acierto del 87 %. Eso significa que, si hay un
usuario en cada zona, y uno de ellos comienza a hablar, el 87 % de las veces Maggie
se gira y se mueve hacia la correcta zona de interacción (con una desviación estándar
del 12 %) y mantiene la adecuada distancia de interacción. Estos resultados pueden
ser generalizados para otro grupo de usuarios, incluidos niños, de acuerdo a las reglas
proxémicas observadas descritas en 7.3.
Los errores son debidos principalmente debidos a dos factores: fallos en el módulo
de localización de la fuente sonora (sistema auditivo) y/o errores al seguir las piernas
del usuario, debido a que algunas veces la nube de puntos que se corresponde con las
piernas del usuario es perdida o confundida con otro objeto más cercano de formar
similar. Si el error del sistema de localización sonora no es muy alto, este puede ser
corregido por el sistema basado en láser, debido a que es capaz de seguir al usuario
aunque no esté exactamente colocado centrado enfrente del robot. Por lo tanto, la
mayor fuente de errores es confundir objetos cercanos al robot, con las piernas del
usuario. Actualmente, se está trabajando en estos problemas, y es de esperar que
próximamente el sistema sea complementado con el uso de cámaras esteroscópicas
como la Kinect, que pueden facilitar la tarea.
7.6.
Resumen
El sistema de localización de usuarios conjuntamente con el estudio proxémico
llevado a cabo con usuarios reales interactuando con Maggie, ha proporcionado al
sistema de diálogo la facultad de colocar espacialmente al robot a una distancia

146
Capítulo 7. Proxémica y sistema de localización multimodal del usuario
(a)
Usuario
hablando
(b) Localización sonora
(c) El robot
se gira
(d) El robot mantiene la distancia ade-
cuada
Figura 7.12: (a) El usuario comienza a hablar al robot Maggie; (b) El sistema de
localización de usuarios, usando la señal sonora recibida a través de los micrófonos
situados en la base del robot, determina el ángulo en que se encuentra el usuario; (c)
Maggie se gira dicho ángulo; (d) El gestor de diálogo basándose en las observaciones
realizadas en los estudios proxémicos (ver Fig. 7.7), las medidas obtenidas por el láser,
y el perfil del usuario (cargado después de identificar al usuario) da las ordenes a los
motores de la base para mantener la distancia adecuada con el usuario.

7.6. Resumen
147
y ángulo respecto al usuario, en el que la interacción se puede realizar de manera
natural y satisfactoria. El sistema de diálogo es capaz de adaptar la posición más
adecuada para cada situación comunicativa. Ambas tareas descritas en este capítulo
son necesarias para lograr ese objetivo: módulo de localización de usuarios y estudio
proxémico.
Para la localización del usuario, el robot primero calcula la posición del usuario
usando la información acústica que le llega, haciendo uso de 8 micrófonos integrados
en la base circular del robot. La distancia de interacción adecuada es determinada
de acuerdo a las reglas extraídas en el estudio proxémico, dependiendo del tipo de
usuario, su edad, experiencia, etc. Una vez que el robot se ha girado hacía el usuario,
el telémetro láser es usado para determinar la distancia al usuario y mantener la
distancia correcta.
Recientemente se esta trabajando en una mayor integración sensorial, fusionando
información proporcionada por sistemas de visión estéreo, para mayor precisión y ro-
bustez del sistema completo. Además, sería interesante incluir mayor personalización
de la distancia de interacción (espacio personal). Por ejemplo, si el usuario se siente
disconforme con la distancia de interacción calculada por el sistema de diálogo, esta
podría ser variada por el propio usuario mediante interacción natural con diálogos.

148
Capítulo 7. Proxémica y sistema de localización multimodal del usuario

CAPÍTULO
8
Sistema de detección y gestión de emociones
Automatic
Speech
Recognition
(ASR)
Audio
Extraction
Features
Natural
Language
Proccesing
(NLP)
User
Localization
Emotion
Detection
Multimodal
Fusion
(NLSML)
DIALOG
MANAGER
IDIM
User
Profile
DIALOGS: VXML
FILES
Natural
Language
Generation
(NLG)
Emotional
Text To
Speech (eTTS)
Sing
Generaton
(Vocaloid)
Non-Verbal
Sound
Generation
text
features
features
semantic:
atribute-value
localization
emotion/arousal
name,
language,
age,
voiceprint,
experience,
dialogHistory
User Communicative Act xml
vxml
song
semantic,emotion,features
semantic, language,
emotion, character
words,language,
emotion, character
User
Identification
name
features
AUDIO
acustic signal
VOICE
REAL-TIME
SOUNDS
MUSIC
Engagement
Gestures
MOTOR/VISUAL
GESTURES
gesture
Body
Sensibility
TOUCH
capacitive signal
body part
VISION
images
Robot
Emotional
State
emotion
RFID
VISION
OCR
text
written
text
RFID
Reader
MULTIMODAL FISION
LASER
distance
information
Gesture
Recognition
rfid card
text
grid
points
gesture
image
Google/
Microsoft
Translate
Wolfram
Alpha
"Preocúpese hasta de los pequeños detalles."-- Steve Jobs
149

150
Capítulo 8. Sistema de detección y gestión de emociones
8.1.
Introducción
El principal objetivo de los sistemas de diálogo automáticos es conseguir una
interacción natural entre el robot y el humano, similar a la que se produce entre las
personas. Esto eliminaría la necesidad de artefactos como teclado y ratón en favor
de formas de interacción mas intuitivas accesibles por usuarios no expertos y/o con
discapacidades. Sin embargo, en los sistemas de hoy en día, la interacción hombre-
máquina, aún siendo multimodal, todavía no es comparable a la interacción o diálogo
humano. Esto se debe, entre otras cosas, a que la interacción entre personas involucra
no sólo el intercambio de contenido explícito, como es la frase literal transmitida
mediante voz, sino también de información implícita, como por ejemplo la información
acerca del estado emocional del interlocutor. Por lo tanto, una forma de mejorar los
sistemas de diálogos sería incluir este tipo de información.
A los sistemas que hacen uso de información emocional se les engloba dentro del
campo conocido como "computación afectiva" [Picard, 2000]. Abarca el reconocimien-
to, gestión, y generación de emociones. En este capítulo se presta atención al proceso
de detección de las emociones que expresa el usuario. Su gestión es llevada a cabo por
el propio diálogo y la generación es tenida en cuenta por el sistema de síntesis de voz.
Recordar, que en cada turno del diálogo se intercambia información, que se agrupa
en actos comunicativos, es en cada uno de estos turnos donde se debe añadir, siempre
y cuando sea posible, la información relativa a la emoción con la que se expresa el
usuario.
Con la inclusión de un módulo específico de detección de emociones, integrado
en el sistema de interacción propuesto, se pretende mejorar la interacción, dotándola
de mayor naturalidad y "enganche"
1
. Con la detección de la emoción del usuario, el
diálogo puede mejorar la adaptación al usuario y a la situación comunicativa concreta.
Con ello, se pretende prevenir estados de falta de entendimiento entre ambas partes,
que pueden derivar en aburrimiento, desidia, y en último lugar al fracaso del diálogo.
De esta forma, el propio sistema de diálogo puede tomar la iniciativa para intentar
variar el estado del ánimo del usuario.
En este capítulo se describe e implementa un sistema de detección de emociones
multimodal, aplicado a la interacción humano-robot, dentro del sistema de interac-
ción propuesto. Otros trabajos han presentado sistemas de detección de emociones,
pero ninguno de ellos integrado dentro de un sistema que gestione la interacción entre
robots sociales y humanos. Además, se aporta a la comunidad científica la herramien-
ta GEVA (Gender and Emotion Voice Analysis), desarrollada expresamente en este
trabajo, para la detección de la actividad de voz, emociones, y género.
El capítulo se estructura como sigue, en la sección 8.2 se enumeran una serie de
1
Para entender el concepto de enganche en interacción humano-robot se recomienda leer
[Rich Ponsler, 2010]

8.2. Trabajo relacionado
151
cuestiones que tienen que ver con la detección de emociones de manera automática.
En la siguiente sección 8.3, se describe cómo el sistema propuesto tiene en cuenta las
cuestiones que se han presentado en la sección anterior. Posteriormente, en la sección
8.4 se presenta la herramienta GEVA para la detección de emociones mediante análisis
de la voz. En la siguiente sección 8.5, se muestra el sistema de detección de emociones
mediante análisis del rostro, este componente se le ha denominado GEFA. En la
sección 8.6 se detalla como se fusiona la información multimodal de GEVA y GEFA
para tomar una decisión sobre la emoción predominante y como se integra esta con el
sistema de interacción RDS. En la sección 8.7 se presentan los experimentos realizados
y se analizan. Se finaliza, en la sección 8.8, con las conclusiones obtenidas.
8.2.
Trabajo relacionado
En el campo de investigación de detección de emociones aplicado a la interacción
humano-robot, se deben tener en cuenta varias cuestiones que se enumeran y describen
a continuación:
8.2.1.
Las emociones a detectar
De acuerdo con las referencias consultadas, actualmente, para clasificar o etiquetar
una emoción existen principalmente dos aproximaciones. La primera consiste en un
conjunto discreto de emociones básicas, de las cuales se pueden generar otras secunda-
rias [Arnold, 1960]. Siguiendo esta aproximación, Ekman establece un conjunto de 6
emociones básicas (alegría, repugnancia/asco, ira/enfado,miedo, sorpresa, y tristeza)
[Ekman R.J, 1994, Ekman et al., 1972].
La segunda aproximación consiste en medir y contextualizar las emociones de
acuerdo a diferentes dimensiones. De esta manera, una emoción puede ser entendida
como puntos o áreas en el espacio definidos por esas dimensiones. En los trabajos
de Plutchik y Cowie [Plutchik, 1980][Cowie Douglas-Cowie, 2000] se establecen las
dimensiones de activación, entendida como la predisposición de la persona para tomar
alguna acción de acuerdo a su estado emocional, y evaluación, que refleja una valora-
ción global del sentimiento positivo o negativo asociado al estado emocional. En los
trabajos de Bradley [Bradley Lang, 2000, Bradley Lang, 1994] se usa un modelo
excitación-placer (arousal-pleasure), la primera dimensión es la excitación (valencia),
que explica el deseo, y la segunda explica la actividad fisiológica relacionada con el
estado afectivo .
El uso de un espacio continuo para clasificar un estado emocional puede verse
como un paso intermedio antes de determinar el estado emocional al que corresponde
ese punto, pero esto no siempre tiene por que ser así. En nuestro caso, el sistema
de detección de emociones podría trabajar única y exclusivamente con estos valores

152
Capítulo 8. Sistema de detección y gestión de emociones
continuos y entregárselos al gestor del diálogo para que los maneje a su antojo, sin
discretizar
2
la salida en una emoción concreta.