Superando límites por voz

En los últimos años hemos sufrido una pequeña invasión de nuevas tecnologías. Las computadoras, Internet, el teléfono móvil... se pueden encontrar en cualquier sitio; como muchos otros dispositivos tecnológicos, ya se han convertido en una herramienta habitual de nuestra vida cotidiana. De hecho, hoy en día es cada vez más fácil tener una computadora en casa.

No cabe duda de que la tecnología seguirá cambiando nuestro modo de vida. De alguna manera, la influencia de la tecnología en el hábitat humano a lo largo de la historia ha sido enorme, en la mayoría de los casos, para mejorar la calidad de vida, pero en algunos casos, desgraciadamente, incluso para empeorar (en el caso de la industria armera). Sin embargo, la actitud ante este hecho no suele ser tibia.

Antiguamente, la electricidad, el teléfono, la televisión, la radio y otros nuevos avances tecnológicos se convirtieron en parte de nuestra vida y supusieron un cambio radical en la vida cotidiana. Si bien en un principio la mayoría de la gente pensó que estos elementos tecnológicos iban a ser utilizados por unos pocos privilegiados… ¡está claro que estaban equivocados! El tiempo ha demostrado que la sociedad necesita un proceso de adaptación para aceptar cualquier nueva tecnología, pero que finalmente se convierte en una herramienta habitual.

Lamentablemente, muchas veces el proceso de aparición de la tecnología y el tiempo de adaptación que necesita el usuario no coinciden, y el usuario suele estar perdido y asustado. El proceso de aprendizaje es muy complejo y laborioso.

En los últimos tiempos, con el objetivo de superar los límites que generan las nuevas tecnologías, se han empezado a introducir algunas interfaces de apoyo. Estas interfaces buscan la naturalidad de la comunicación entre máquinas y usuario y tratan de simular formas de comunicación humanas. Por lo tanto, al ser la voz el medio más natural con el que las personas se comunican, puede ser un instrumento idóneo para comunicarse con el computador. Sobre todo porque la voz suaviza de alguna manera las máquinas y el usuario se siente más cómodo.

La incapacidad de los seres humanos frente a las nuevas tecnologías (por no ser capaces de controlarlas) es el sentimiento que muchas veces tienen las personas con movilidad reducida (discapacitados, ancianos) con las cosas habituales. Por ejemplo, abrir la puerta para una persona con buena condición física no supone mucho esfuerzo. Por el contrario, si la persona tiene algún problema físico que reduce su movilidad, esta puerta puede convertirse en un límite insuperable.

En el caso de estas personas, muchas veces la tecnología ha sido muy útil para facilitar su vida: sillas de ruedas motorizadas, teclados adaptados, ascensores especiales, etc. Y para ellos la voz también puede ser una herramienta muy útil para superar los límites diarios.

Así que... ¿Por qué no controlar la silla de ruedas a través de la voz? Y… por qué no controlar los elementos comunes de la casa: televisión, puertas, luces, ventanas, etc. utilizando las órdenes de voz? ¿Eso es ciencia ficción? No, eso es una nueva tecnología llamada domótica. La domótica abarca el diseño, control y desarrollo de edificios inteligentes. Así que aplicemos la ciencia Domótica para construir una casa controlada por la voz para personas con movilidad reducida. Por último, ¿por qué no utilizar el euskera para controlar la casita de nuestros sueños?

Para acercar este sueño a la realidad se ha desarrollado el sistema AHOTSDOMO. Mediante este sistema, los elementos de uso común de un hogar pueden ser controlados por voz en euskera.

Descripción general del sistema AHOTSDOMO

La figura 1 muestra el esquema general del sistema AHOTSDOMO. Aquí se puede ver el funcionamiento del sistema.

Cuando el usuario da una orden, el sistema de control por voz procesa. Si la orden dada no está dentro del conjunto de órdenes del sistema, no hace caso. Por el contrario, si se trata de una orden, el sistema la conoce y le asigna un código.

La orden codificada, a través del puerto de comunicación, se envía al interfaz de control y las interfaces al sistema de descodificación. Esto lo descodifica y activa los elementos necesarios para ejecutar la orden.

En algunos casos, cuando la orden se ha ejecutado, los sensores del sistema envían una respuesta al sistema de codificación. Esto codifica la respuesta y la envía al sistema de control a través de la interfaz. El sistema de control da por ejecutada la orden y queda listo para recibir la siguiente orden.

Sistema de control por voz

Este componente del sistema controla las órdenes de voz utilizando el lenguaje de control del sistema. Como en cualquier lenguaje, la definición del lenguaje de control requiere de dos recursos: el vocabulario (las palabras del lenguaje) y la gramática (las reglas del lenguaje).

En el caso de este sistema, tanto para el desarrollo del sistema de voz como para la definición de vocabulario y gramática se ha utilizado la herramienta software para el desarrollo de aplicaciones de reconocimiento de voz del Software Development Kit (SDK) del ViVoice de la IBM. Esta herramienta realiza el uso del motor de conocimiento de ViVoice para controlar cualquier lenguaje definido.

A continuación se analiza la definición del lenguaje de control (vocabulario y gramática) utilizando el software SDK de ViVoice.

Creación de lenguaje de control

El vocabulario de un sistema de reconocimiento del habla está formado por palabras capaces de entender los sistemas (por ejemplo, en el sistema AHOTSDOMO: 'piztu', 'argia' ...). Por otra parte, la gramática del sistema define los conjuntos de frases que el sistema puede comprender (por ejemplo: 'Enciende la luz', 'Enciende el lugar la partícula clara'...).

Las definiciones de gramática y vocabulario deben ser exhaustivas y deben diseñarse siguiendo una serie de criterios del lenguaje que permitan un correcto funcionamiento del sistema:

  • Uso cómodo. La gramática debe ser cómoda para el usuario, sencilla de usar y recordar el lenguaje habitual. En la medida de lo posible se utilizarán frases cortas y vocabulario común y reducido.
  • Flexibilidad. El conjunto de instrucciones que puede utilizar el usuario debe ser amplio.
  • Diferencia significativa entre palabras del diccionario. El uso de palabras no muy parecidas en la composición del diccionario es imprescindible para que la mezcla del sistema sea poco probable.
Figura . Panel de control del sistema AHOTSDOMO.

En el caso del sistema AHOTSDOMO se ha utilizado un diccionario de 18 palabras y se ha diseñado una gramática muy sencilla y sencilla para controlar los elementos básicos de la vivienda.

Para expresar la gramática tenemos la forma Backus-Naur o gramática BNF. Se describe la sintaxis y notación del lenguaje a utilizar. Entre este tipo de gramáticas BNF se encuentra un tipo adaptado al conocimiento del habla, el Lenguaje de Control para el Conocimiento del Habla ( Speech Recognition Control Language SRCL). Es decir, para definir la gramática del sistema AHOTSDOMO se ha utilizado la notación de la gramática SRCL-BNF.

Las reglas de producción del sistema son las siguientes (elementos de la gramática ", ", "" se han indicado entre los símbolos, " |" elementos que no pueden utilizarse simultáneamente; y "?" con el símbolo aparecen elementos opcionales) (Figura 2).

El conjunto de frases aceptadas es amplio y ofrece al usuario flexibilidad y facilidad. Ejemplos de frases aceptadas por el sistema son:

  • "Abrir ventana de cocina", "Abrir ventana".
  • "Enciende la luz de la cocina", "Enciende la luz".
  • "Conecta el primer enchufe", "Conecta el enchufe".

Idoneidad del SDK de ViVoice de IBM para el euskera

ViVoice

El software SDK de puede configurarse para varios idiomas. Por desgracia, el euskera todavía no está entre ellos. Sin embargo, tiene una herramienta útil para introducir un nuevo diccionario: una herramienta para añadir vocabulario. Esto sirve para definir nuevas palabras para utilizar los motores del Via-Voice de IBM. En este instrumento la palabra no se define solo ortográficamente, sino también fonéticamente. Se trata, por tanto, de una oportunidad inmejorable para definir palabras en euskera utilizando la fonética castellana. En la tabla 1 se muestra la relación de órdenes que el sistema utiliza en euskera.

Como se puede observar en la siguiente tabla, las palabras se han adaptado para poder utilizar los motores del ViVoice. Para ello, los sonidos en euskera

se han buscado equivalentes entre los sonidos del castellano (por ejemplo: ts = ch , z = s , ge = gue ...). Esta es la 'clave' de este trabajo, ya que de este modo el coste de desarrollo de este tipo de aplicaciones disminuye considerablemente.

Mediante esta metodología son numerosas las aplicaciones de control que se pueden realizar en euskera. Por un lado, porque las palabras en euskera y las palabras del diccionario de ViVoice en castellano son muy diferentes (y la mezcla entre ellas es muy pequeña); por otro, porque en estas aplicaciones la gramática está compuesta por palabras simples.

Sistema de control de órdenes

Como se ha visto en el esquema general, se codifica la orden conocida y se envía a los elementos de control para su ejecución. En el sistema existen dos tipos de control de órdenes:

  1. Elementos del código de control inmediato. Elementos simples: luces, televisión, etc. La ejecución del precepto no requiere acreditación: "enciende la luz", "conecta el enchufe". El control de estos elementos se puede realizar mediante dos sistemas: a) Protocolo X10. Es el protocolo estándar utilizado en la domótica. La principal ventaja de esta metodología de codificación de órdenes es que no requiere cableado especial, ya que utiliza la instalación eléctrica como autopista de comunicación para enviar y recibir órdenes. b) Microcontrolador 8051. El microcontrolador envía una señal amplificada para accionar sobre el elemento seleccionado.
  2. Elementos de verificación del código. Elementos complejos: persianas, puertas, etc. Aquellos que, en la ejecución de la orden, requieran necesariamente un sensor para responder al sistema. Este control de seguridad se utiliza para proteger los motores asociados a los elementos y evitar en lo posible su deterioro. Por lo tanto, en el caso de estos elementos, el sistema de reconocimiento de órdenes de voz no procesará nuevas órdenes hasta que se reciba la respuesta de los sensores. En este caso existen varias vías de control: a) Autómata programable. Esta metodología permite controlar adecuadamente los elementos complejos. b) Microcontrolador 8051. En este caso se envía una señal amplificada al motor del elemento para su activación o desactivación.
Panel de control del sistema

La figura 3 muestra el panel de control del sistema. El panel de control se utiliza para el control del sistema. Permite realizar varias tareas:

  • Simulación del sistema. En el panel de control se pueden ver los lugares y el estado de los elementos de la casa que están controlando.
  • Soporte al usuario. En la parte superior, el sistema dispone de un menú desplegable para poder consultar las órdenes del sistema en cualquier momento.
  • Control de volumen. En la parte inferior izquierda se encuentra la herramienta de control del volumen de voz del usuario.
  • Configuración de comunicación. En la parte inferior derecha se encuentra la herramienta de configuración del puerto de comunicaciones.
  • Ventana de órdenes. En la parte inferior central aparece la orden que está procesando el sistema.
Mirando al futuro

El sistema AHOTSDOMO (Sistema Domótico controlado por Voz) nació con el objetivo de facilitar la vida de las personas con movilidad reducida. A pesar de que el sistema desarrollado no es más que un paso adelante, abre un camino para controlar en euskera los edificios inteligentes en el mundo de la Domótica. El futuro también es esperanzador en este ámbito tecnológico, tanto para personas con movilidad reducida como para el euskera. Se ha abierto la puerta para que entremos en ese mundo de los sueños y empecemos a imaginar un maravilloso futuro sin límites...

Figura . Esquema general del sistema AHOTSDOMO.
Figura . Reglas de producción de la gramática del sistema AHOTSDOMO.
Tabla . Definición del conjunto de órdenes del sistema AHOTSDOMO para el software SDK del ViVoice de IBM.
Babesleak
Eusko Jaurlaritzako Industria, Merkataritza eta Turismo Saila