INTEGRACIÓN DE UN ASISTENTE VIRTUAL EN
AMBIENTES DE VIDA ASISTIDA POR COMPUTADOR PARA PERSONAS CON DISCAPACIDAD FISICA.
INTEGRATION OF A VIRTUAL ASSISTANT IN ENVIRONMENTS OF
COMPUTER ASSISTED LIVING FOR PEOPLE WITH PHYSICAL DISABILITIES
José Miguel Palacios-Bayas (1); Víctor
Alejandro Bosquez-Barcenes (2); Ángel Ramiro Palacios-Bayas (3)
(1) Universidad Tecnológica Indoamérica, Matriz Ambato, Bolívar
2035 y Guayaquil, Ambato – Ecuador, miguelpalacios2014@hotmail.com.
(2) Universidad Estatal de Bolívar. Campus Académico
“Alpachaca” Av. Ernesto Che Guevara s/n y Av. Gabriel Secaira, Guaranda, Ecuador.
abosquez@ueb.edu.ec.
(3) Universidad Tecnológica Israel, Matriz Quito, Francisco
Pizarro E4-142 y Marieta de Veintimilla, Quito-Ecuador.
Resumen: Los asistentes
virtuales y casas inteligentes hoy en día facilitan las actividades cotidianas
a personas que presentan algún porcentaje de discapacidad física, permiten
controlar las funciones principales de un domicilio, utilizando comandos de voz
y aplicando el internet de las cosas IOT. En esta investigación proponemos un
asistente inteligente para las personas con discapacidad física que podrán
utilizar a través de interfaz por voz para controlar las luces, el llenado del
agua, la temperatura, otros dispositivos electrónicos que soporten conexión a
internet, se combinó la tecnología ALEXA de Amazon que permite el reconocimiento
automático de voz y la comprensión del lenguaje natural con inteligencia
artificial con un 97% de precisión de comandos, se creó un sinnúmero de Skills que establecen los distintos procesos asistidos
mencionados anteriormente para darle mayores habilidades al asistente virtual, se
utilizó la Metodología Test Driven Development “TDD”, una metodología ágil para desarrollo de
software, que se basa en prueba o fallo y refactorización, lo que permite
comprobar cada una de las partes del sistema y al final integrar todo y
realizar la optimización del código con la refactorización.
Finalmente se configuro un firewall que brinde los
parámetros de seguridad óptimos dentro del sistema con un 95% de protección
contra ataques al sistema en la nube este cálculo se hizo en base a las
métricas de bloqueo del firewall basado en snort.
Palabras
Clave: Asistente virtual, internet
de las cosas, casas inteligentes, programación TDD, personas con discapacidad
física.
Abstract: Virtual
assistants and smart homes today make everyday activities easier for people who
have some percentage of physical disability, allow them to control the main
functions of a home, using voice commands and applying the IOT internet of
things. In this research we propose an intelligent assistant for people with
physical disabilities who can use a voice interface to control lights, water
fill, temperature, other electronic devices that support internet connection,
ALEXA technology was combined with Amazon that allows automatic speech
recognition and natural language understanding with artificial intelligence
with 97% command precision, created a number of Skills that establish the
different assisted processes mentioned above to give greater skills to the
virtual assistant, it was used the Test Driven Development “TDD” Methodology,
an agile methodology for software development, which is based on test or
failure and refactoring, which allows to check each part of the system and in
the end integrate everything and perform code optimization with refactoring,
finally a firewall was configured that provides the following parameters
Optimal security within the system with 95% protection against attacks to the
cloud system. This calculation was made based on the snort-based firewall
blocking metrics.).
Keywords: Virtual
assistant, internet of things, smart homes, TDD programming, people with
physical disabilities.
I. INTRODUCCIÓN
La tecnología se ha convertido en el factor más importante dentro de la
sociedad actual, en tal punto que nos ha hecho dependientes de la misma, en
este sentido se han dado muchos avances que nos han simplificado la vida, en
esta línea se encuentran los agentes virtuales, tecnologías que pretenden
facilitar la interacción hombre-maquina, cuyas características basadas en
inteligencia artificial los hacen capaces de interpretar comandos por voz de
forma natural
Los asistentes virtuales han tenido gran demanda y expansión en la
actualidad gracias a sus características, como lo menciona Vicente-Samper, y otros (2019) “son capaces no solo de recibir y enviar información en forma de voz,
sino que también pueden trabajar con bases de datos en tiempo real, lo que
permite que sea adaptable a cualquier entorno de trabajo, lugar o aplicación”
(p. 360). Hasta tal punto que en la actualidad son comunes, existiendo varias
opciones como Alexa de Amazon, Google Assitant de
Google, Siri de Apple, Cortana de Microsoft, entre los más importantes dentro
del mercado.
Del sinnúmero de asistentes virtuales existentes dentro del mercado se
desataca Alexa de Amazon por ser un servicio de voz ubicado en la nube de
Amazon disponible en los dispositivos de Amazon y dispositivos tercios con
Alexa integrada
Alexa Voice Service
(AVS) es el conjunto de servicios de Amazon basado en su asistente de
inteligencia artificial controlado por voz para el hogar y otros ambientes. Amazon
Alexa Voice Service (AAVS)
proporciona servicios de control de voz para dispositivos de hardware
integrados como Alexa, entre otros, la línea de productos de la familia Echo de
Amazon y dispositivos domésticos inteligentes como termostatos y cámaras de
seguridad
En tal sentido la presente investigación buscó
integrar dentro del asistente virtual Alexa un sinnúmero de Skills
o funcionalidades adicionales con la finalidad de promover una integración eficiente
dentro del internet de las cosas (OIT), todo lo mencionado para que se
convierta en casas inteligentes que permite facilitar ciertos procesos a
personas con discapacidad física debido a que a nivel mundial y local existe un
número creciente de personas que muestran cierto porcentaje de problemas de
este tipo
Fig 1. Grado de discapacidad física
De los que los grupos etarios que mayormente presentan problemas de
discapacidad física se encuentran entre edades entre los 36 a 64 años con un
porcentaje del 45,68%.
Fig 1. Discapacidad
física por edades
Las estadísticas mencionadas en las figuras anteriores denotan la
necesidad para muchas familias de contar con este tipo de tecnología que
facilite procesos que para muchas personas se hace muy complejo.
Para la implementación de los mencionados asistentes virtuales se
debieron de dar avances en la informática como el Internet de las Cosas (IoT), el mismo que permite la interconexión a través de
Internet de dispositivos capaces de recopilar, analizar, transmitir y
distribuir datos que satisfagan necesidades del individuo, de manera autónoma
En tal sentido la Internet de las cosas (IO) está evolucionando
rápidamente junto con la red de objetos físicos que contienen comunicación
integrada a la tecnología
Otros autores como
Sin embargo, existen controversias en cuanto a el problema en la
seguridad del internet de las cosas en las casas inteligentes suele deberse, en
muchas ocasiones, a error humano, no obstante, también influyen
considerablemente los errores técnicos en esta tecnología
La interconexión de la red de internet implica que pueda ser afectada o
atacada desde cualquier parte del globo, haciendo que la ciberseguridad sea
algo fundamental para el uso seguro de esta tecnología, teniendo en cuenta los
principios de autenticación, acceso y confidencialidad
Para evitar ataques desde el exterior, ya que como se menciono al estar
nuestro agente virtual conectado al internet puede ser flanco de ataques se
implementó un firewall que controla el acceso indebido al sistema, brindando un
nivel óptimo de seguridad dentro de la casa inteligente
Entre las grandes empresas que han enfocado esfuerzos en el desarrollo
de investigación hacia el internet de las cosas se encuentra Amazon como se
mencionó con anterioridad
Por lo mencionado la presente investigación pretende la incorporación de
un sistema a través Skills de Alexa que le añaden
funcionalidades
Para el desarrollo del mismo se parte de la práctica de ingeniería de
software TDD, la cual pertenece al grupo de metodologías agiles y se basa en un
ciclo de vida muy corto, el código se puede ir mejorando durante el desarrollo,
evitando escribir líneas innecesarias; se encarga de realizar interacciones
entre: tareas, roles y personas.
II. MATERIALES Y MÉTODOS
Para el desarrollo del asistente
virtual se utilizó TDD son las siglas de Test Driven Development, una metodología ágil para desarrollo de software, se basa
en prueba o fallo y refactorización
Como lo menciona
La metodología ágil TDD se basa en
la repetición de un ciclo muy corto de desarrollo que luego se mejora, evitando
escribir código innecesario
Fig 1. Fases de la metodología TDD.
Fuente:
Especificación de requerimientos.
El software integra varias
tecnologías modernas como Inteligencia Artificial
Los requerimientos en cuanto a
hardware y software se detallan en la siguiente tabla 1.
TABLA 1.
REQUERIMIENTOS GENERALES PARA EL DESARROLLO E IMPLEMENTACIÓN DEL AV.
Tecnología |
Infraestructura |
Internet de las cosas |
Hardware. ·
Mini Computador Raspberri
PI 4 Software. ·
Sistema Operativo Linux Debian. ·
Visual Studio Code. ·
Lenguaje De Programación C#. ·
Node JS |
Skill de Amazon |
Hardware ·
Dispositivo Echo Dot -
Amazon. Software ·
Visual Studio Comunity. ·
Lenguaje De Programación C#. ·
Framework net Core 3.1. |
Monitoreo y alerta |
Hardware ·
Cámara IP Hikvision. Software ·
Sistema Operativo Linux Centos 8.1. ·
Net Core 3.1 ·
Nginx. ·
Net Core. ·
Visual Studio Code. ·
FFMPEG. ·
Node JS. |
Fuente: Elaboración propia
Dentro del sistema hay dos roles:
Usuario Final (Persona con
discapacidad física):
Los usuarios finales podrán
consumir la aplicación en forma de skill, como
requisito indispensable es disponer de un dispositivo Amazon del tipo
reconocimiento de voz en el mismo que se instala y podrán ejecutar el comando
de Alexa, “Abrir Proyecto UTI” y de ahí ingresar a un menú y proceder con el
control y entretenimiento y también se habilita el monitoreo.
Usuario De Alerta y Monitoreo.
El usuario dispone de una
aplicación móvil instalable en teléfonos Android, la misma que le permitirá
recibir una alerta en caso de que la persona con discapacidad haya activado una
solicitud de emergencia pudiendo verificar mediante una cámara IP en tiempo
real lo que está sucediendo.
Análisis de desarrollo basados en
componentes.
Fig. 2: Componentes principales de la
investigación.
El asistente virtual está compuesto
por 4 componentes principales independientes aplicando el principio de
N-Niveles y también el principio de responsabilidad única, ya que utilizan
diferentes tecnologías de programación, su propio sistema operativo y también
independencia de funcionamiento.
ASK. -Servicio en la nube de Amazon
para dispositivos Alexa, su lenguaje de programación es NodeJS
y el intercambio de datos se lo realiza en formato json.
API REST. - Este componente creado para el
proyecto permite guardar las diferentes configuraciones de estados de la parte
de IoT por ejemplo si un foco este encendido o
apagado.
API Client. -Este componente es el que realiza
las acciones analógicas por ejemplo activar un voltaje de 3 voltios para que se
active el RELE y se encienda un foco y también es el que se utiliza en la
aplicación móvil para recibir las alertas.
Web Socket. -Es el componente que permite la
comunicación en tiempo real entre la aplicación móvil y el controlador IoT de la casa.
Análisis orientado a objetos
El diseño del asistente virtual
está compuesto de los siguientes diagramas
Fig. 3. Diagrama de casos de uso.
Diagrama de clases
Fig. 4. Diagrama de clases.
Fig. 5. Diagrama de secuencia del Alexa Skill C#.
Diseño de la base de datos
Fig. 6. Diseño Lógico de Base Datos
Fig. 7. Diseño físico de Base Datos
Diseño e implementación de la
infraestructura
Para la implementación del proyecto
se basa en la virtualización y los
contenedores Docker.
Fig. 8. Diseño de la infraestructura (N
Niveles)
Diseño de la interfaz de usuario
Hay que mencionar que Alexa
presenta una interfaz por voz, por lo que para activar la interfaz e
interactuar solo hay que decir “Alexa” y solicitar lo que se desea al
dispositivo que permite generar los comandos de voz como es el Amazon Echo Dot.
Fig. 9. Amazon Echo Dot.
En este sentido para el desarrollo
del Skill de se utiliza el AMAZON WEB CONSOLE para lo cual se debe registrar sus datos
generales, solo es necesario tener un correo activo, dentro de esta sección es
en donde se desarrolla el conjunto de Skills cómo: apagar foco, encender foco, solicitar ayuda y
demás procesos dentro del asistente virtual, en un skill
se puede tener múltiples intents dependiendo de la
aplicación, la forma de comunicación del ASK de Amazon con las aplicaciones
para el intercambio de datos es JSON, esto se debe a su gran rendimiento y bajo consumo de red, es decir todo el intercambio se
lo realiza utilizando ésta tecnología no se utilizó XML debido a que por su
estructura y poca flexibilidad es más conveniente utilizar JSON. Además, para
interactuar con el servicio web (API REST) realizada en C# con tecnología net core en el Skill se debe
configurar al servicio web como EndPoint para que funcione
debe tener un certificado SSL en la url, es decir
https, debido a que los datos JSON no viajarían encriptados lo cual genera
riesgos de acceso no autorizados y podrían comprometer la seguridad en el
asistente virtual.
Cuando ya se concluye con la construcción
del Skill se procede con la implementación de la
tecnología NET Core 3.1 y C#8, hay que mencionar que de forma nativa los Skill soportan las tecnologías Python, java y nodejs por lo que para que funcione con C# se lo realiza
mediante una API REST.
NNET Core 3.1 se utiliza sobre un
sistema operativo Linux Centos 8.1 con un reverse proxy NGIX para mejorar la
seguridad y tiempo de respuesta entre la nube de Amazon y nuestra API.
Fig. 10. Reverse Proxy API REST y WEBSOCKET
en contenedores.
Interfaz de usuario de alerta o
monitoreo
La parte
de la aplicación móvil para recibir alertas y activar la cámara de
monitoreo presenta las siguientes
interfaces.
Fig. 11. Pantalla de alerta y monitoreo.
La pantalla de monitoreo muestra la señal de la cámara instalada en la casa con la
finalidad de realizar un seguimiento de la persona con discapacidad y así
prevenir cualquier inconveniente.
Fig. 12. Pantalla de preview
de la cámara.
Pantalla de preview
del video donde se muestra la cámara en tiempo real se está utilizando las
librerías de vlc player.
Pruebas
Se realizaron las pruebas de
funcionamiento, carga, estrés, integración, seguridad, mencionamos que todos
los módulos están validados desde el inicio de la codificación basados en
prueba o fallo.
De la misma forma se realizó
pruebas de seguridad del sistema mediante las métricas de firewall, de donde
obtuvo el valor de un 95 % de protección contra ataques al sistema en la nube
este cálculo se hizo en base a las métricas de bloqueo del firewall basado en snort.
III. RESULTADOS Y DISCUSIÓN
Con
el desarrollo de la presente investigación se obtiene los siguientes resultados.
·
Con la integración de un asistente virtual en
ambientes de vida asistida por computador para personas con discapacidad
física, se pretende que este grupo vulnerable mejore en gran parte las
condiciones actuales de vida, en relación a la automatización de control de
servicios básicos, notificaciones de alerta y monitorización.
·
Se utilizó una maqueta a escala para las pruebas de
todo el sistema de IoT, con resultados en un 100 por
ciento favorables ya que se trabajó con 5 voltios, 12 voltios y de 110 a 120
voltios valores que se manejan en todo hogar normal por lo mencionado se asume
que se puede implementar en un hogar normal en nuestro país sin tener que
modificar el sistema eléctrico actual.
·
La prueba de comandos con la inteligencia artificial
de Alexa, en donde se obtiene un 97 % de precisión de los comandos que accionan la parte del IoT, lo que significa que puede ser utilizado desde niños
de 6 años en adelante hasta personas adultas.
·
Uno de los grandes dilemas que tiene que ver con
asistentes virtuales o casa inteligentes dentro del internet de las cosas es la
seguridad debido a que al ser un sistema conectado al internet podemos ser
presas de ataques informáticos externos, por lo que un punto muy importante a
tomar en cuenta dentro de este tipo de proyectos es la implementación de
medidas de seguridad que permitan obtener entornos seguros por lo que la
implementación de un Firewall de donde obtuvo el valor de un 95 % de protección
contra ataques al sistema en la nube este cálculo se hizo en base a las
métricas de bloqueo del firewall basado en snort, sin
embargo hay que tomar en cuenta que ningún sistema es 1005 seguro.
IV. CONCLUSIONES
·
Haciendo uso de varias tecnologías se integró un
asistente virtual en ambientes de vida asistida por computador para personas
con discapacidad física, de forma satisfactoria.
·
Las personas con discapacidad física se encuentran
limitadas a interactuar con electrodomésticos, luces, puertas, ventanas y demás
elementos en su domicilio, debido a la incapacidad de moverse libremente, por
lo que el asistente virtual permite interactuar con los mismos a través de comandos
de voz
·
La integración de tecnologías Linux es la nueva
tendencia en el desarrollo de soluciones TI debido a que el ahorro en la compra
de licencias y al soporte del hardware como ARM; permitiendo implementaciones
de bajo coste.
·
La aplicación de la inteligencia artificial de Alexa el
IoT junto con las redes de datos 5G se encuentran
favoreciendo la incorporación de asistentes virtuales dentro de los hogares,
datos que demuestran que con el paso de los años estas tecnologías se van a
encontrar en la gran mayoría de hogares.
·
Los proyectos direccionados a personas con
discapacidad tienen un enorme valor agregado ya que son los que más necesitan
integrase a la tecnología, debido a que existe un alto porcentaje de personas
que presentan discapacidad física por lo que se favorecería a un grupo social
en muchos casos marginado.
·
Un factor clave dentro del desarrollo de agentes
virtuales integrados a casa inteligentes y basados en el internet de las cosas
es la seguridad debido a que este ha sido un factor poco estudiado y que a su
vez ha permitido ataques informáticos con la finalidad de causar perjuicios,
por lo que es necesario implementar medidas de seguridad informática que
permitan la optimización del sistema.
VI. REFERENCIAS BIBLIOGRÁFICAS
Amazon.com. (2018). Amazon Alexa. Recuperado
el 02 de 05 de 2020, de https://developer.amazon.com/es-ES/alexa
Astels, D. (2003). Test Driven Development:
A Practical Guide (Coad) (1ra ed.). Prentice Hall Professional Technical
Reference.
Austerjost, J., Porr, M., Riedel,
N., Geier, D., Becker, T., Scheper, T., . . . Beutel, S. (2018). Introducing
a Virtual Assistant to the Lab: A Voice User. Interface for the Intuitive
Control of Laboratory Instruments. doi:10.1177/2472630318788040
Bosquez Barcenes , V. A., Del Pozo
Durango, R., Fierro Saltos , W. R., & Pacheco Mendoza , S. R. (2019).
Análisis de accesibilidad web en las universidades ecuatorianas para atender
las necesidades de estudiantes con discapacidad. Revista de Investigación
Enlace Universitario, 18(1), 129-144.
doi:https://doi.org/10.33789/enlace.18.52
Bruno , D., Jean-Philippe , G.,
Jean-Philippe, W., Kheir, N., & Pascal , U. (2016). Internet of Things: A
Definition & Taxonomy. 9th International Conference on Next Generation
Mobile Applications, Services and Technologies.
doi:10.1109/NGMAST.2015.71
Calvopiña, A., Tapia, F., &
Tello-Oquendo, L. (2020). Uso del asistente virtual Alexa como herramienta de
interacción para el monitoreo de clima en hogares inteligentes por medio de
Raspberry Pi y DarkSky API. RISTI - Revista Ibérica de Sistemas e
Tecnologias de Informação, 36.
doi:http://dx.doi.org/10.17013/risti.36.102-115
Cerritos Magaña, V. E. (2018).
Firewall PfSense como opción de código abierto para la seguridad de la red
informática en centros escolares católicos de Santa Ana. Anuario de
investigación, 7.
Chung, H., Park, J., & Lee, S.
(2017). Digital forensic approaches for Amazon Alexa ecosystem. Digital
Investigation. doi:http://dx.doi.org/10.1016/j.diin.2017.06.010
Consejo Nacional para la Igualdad
de Discapacidades. (2020). Estadísticas de Discapacidad. Recuperado el
05 de 05 de 2020, de
https://www.consejodiscapacidades.gob.ec/estadisticas-de-discapacidad/
Erdogmus, H., Morisio, M., &
Torchiano, M. (2005). On the effectiveness of the test-first approach to
programing. IEEE Transactions on software Engineering, 31(3), 226–237.
Flores Montaño, L., Rojas Perea,
A., & Álvarez Cedillo, J. (2020). Los nuevos retos de la seguridad y
privacidad en el internet de las cosas en el hogar. Revista de educación
en ciencias e ingeniería, 115.
Gelowitz, C., Sloman, I., Benedicenti,
L., & Paranjape, R. (2003). Real-Time Extreme Programming. En Extreme
Programming and Agile Processes in Software Engineering.
Herranz, Á., & Moreno-Navarro,
J. J. (2003). Formal Extreme (and Extremely Formal) Programming. International
Conference on Extreme Programming and Agile Processes in Software Engineering,
88-96.
IDC. (2017). Explosive Internet
of Things Spending to Reach $1.7 Trillion in 2020 According to IDC. ICD.
Karanasiou, A., & Pinotsis, D.
(2017). Towards a legal definition of machine intelligence: the argument for
artificial personhood in the age of deep learning. ICAIL '17: Proceedings
of the 16th edition of the International Conference on Articial Intelligence
and Law, 119–128. doi:https://doi.org/10.1145/3086512.3086524
Kužnar, D., Tavčar, A., Zupančič,
J., & Duguleana, M. (2016). Virtual Assistant Platform. Informatica,
285-289.
Navarrete Rocha, F., Trejo
Carrillo, J. A., de Ávila Armenta, E., Chora López, V., Nava Vázquez, I. F.,
Espinoza Bermúdez, L., . . . Esquivel Cordero, E. (2019). Propuesta para el
Diseño de una Interfaz Dirigida por Voz Aplicada a Vehículos Autónomos. International
Journal of Progressive Sciences and Technologies (IJPSAT), 13(2),
160-166.
Rinker, F., Waltersdorfer, L.,
& Biffl, S. (2020). Towards Test-Driven Model Development in Production
Systems Engineering. In Proceedings of the 22nd International Conference
on Enterprise Information Systems (ICEIS 2020) , 1, 213-219.
doi:10.5220/0009425302130219
Rose, K., Eldridge, S., &
Chapin, L. (2020). La internet de las cosas - Una breve reseña.
Recuperado el 10 de 02 de 2020, de https://www.internetsociety.org/wp-
Salazar, J., & Silvestre, S.
(2020). Internet de las cosas. TechPedia.
Shelby, Z., Hartke, K., &
Bormann, C. (2014). El protocolo de aplicaci ́on restringido (Coap). Internet
Engineering Task Force: Fremon.
Vicente-Samper, J., Campos, I.,
Sanz, B., Rodriguez, A., Oñate, J., & Sabater-Navarro, J. M. (2019).
Ejemplo de integración de Alexa con un robot UR. Educación en Automática,
360-365.
Weber, R. H. (2010). Internet of
Things - New Security and Privacy Challenges. Computer Law & Security
Review, 26, 23-30.
Williams, L., Maximilien, E. M.,
& Vouk, M. (2003). Test-driven development as a defect-reduction
practice. In 14th International Symposium on Software Reliability
Engineering, 34-45.
Yue, C. (2018). Voice activated
smart home design and implementation. International Conference MISSI,
35-44.