Desarrollo dirigido por modelos en simulaciones de inteligencia ambiental

  1. Campillo Sanchez, Pablo
unter der Leitung von:
  1. Juan Botía Blaya Doktorvater
  2. Jorge Jesús Gómez Sanz Doktorvater/Doktormutter

Universität der Verteidigung: Universidad de Murcia

Fecha de defensa: 02 von Februar von 2017

Gericht:
  1. Juan Luis Pavón Mestras Präsident/in
  2. Mercedes Valdés Vela Sekretärin
  3. Juan Antonio Álvarez García Vocal
Fachbereiche:
  1. Ingeniería de la Información y las Comunicaciones

Art: Dissertation

Zusammenfassung

La Inteligencia Ambiental es un paradigma que persigue crear entornos donde se ofrecen servicios a los usuarios. En dichos entornos los dispositivos están perfectamente integrados y los servicios se adaptan y son proactivos. En los últimos años, este paradigma se ha aplicado ampliamente como solución para la asistencia de personas mayores en sus hogares con el fin de mejorar su independencia y calidad de vida. Sin embargo, el desarrollo e investigación de este tipo de sistemas es costoso. Entre los costes más importantes se encuentran la contratación del personal, la compra de los dispositivos, el tiempo necesario para las pruebas o el alquiler de los espacios. Estos costes se deben a que muchas de las actividades de investigación es necesario realizarlas en entornos reales tales como los Laboratorios Vivientes (Living Labs). Una alternativa a estos laboratorios es la simulación, donde los objetos físicos se simulan: el espacio, los dispositivos y los usuarios. Sin embargo, el desarrollo de simulaciones 3D convincentes que reproduzcan las condiciones del laboratorio también son costosas. Se requiere de amplios conocimientos tanto de programación especializada como de creación de modelos 3D. En esta tesis se propone aplicar el desarrollo dirigido por modelos para facilitar la generación de las simulaciones. Esta propuesta requiere de un lenguaje, un generador de código y un marco de dominio. La idea consiste en que un generador permita crear simulaciones del marco de dominio de forma automática a partir de las especificaciones creadas con el lenguaje. El término automático significa que, tras la generación, el código fuente es completo y directamente ejecutable sin necesidad de modificarlo. De esta forma, se persigue que todo aquel capaz de modelar con el lenguaje pueda generar simulaciones 3D. El lenguaje de modelado específico de dominio se ha llamado SociAALML. Inicialmente, el dominio se centra en la vida diaria de los enfermos de párkinson y sus familiares en sus hogares. Aunque este lenguaje también se puede aplicar a otros dominios. Por ejemplo, en el proyecto ColosAAL se aplica para tratar el caso de enfermedades como el Alzheimer. El lenguaje permite modelar todos los elementos de la simulación: elementos del espacio, comportamiento de los sujetos, enfermedad, interacciones, escenarios y despliegue de los dispositivos. El diseño y creación del lenguaje se ha basado en el estudio del dominio a partir de bibliografía y transcripciones realizadas a enfermos por miembros del proyecto. Además, la notación del lenguaje se ha procurado que sea cognitivamente eficiente siguiendo los principios de Moody, es decir, que sea fácil de entender y utilizar. Con esta característica de la notación, se busca ampliar el espectro de usuarios del lenguaje no sólo a expertos sino también a trabajadores sociales, a médicos o incluso a los propios enfermos o familiares. El marco de dominio diseñado corresponde al simulador PHAT. Este se ha diseñado y creado desde cero a partir del motor de juegos jME3 para que permita recrear los escenarios de la vida diaria de los enfermos de párkinson y sus familiares en sus hogares. Incluye funcionalidades como, por ejemplo, un motor físico para simular las caídas de los enfermos, iluminación, navegación de los sujetos virtuales por el escenario, sonidos, dispositivos virtuales, simulación de los síntomas de los enfermos, entre muchas otras. Todas estas funcionalidades las extiende el generador para implementar la semántica de las especificaciones creadas con SociAALML. En esta tesis se describe el estudio realizado para generar estas herramientas y demostrar su eficacia aplicadas a dos casos de estudio. En el primero se modela la vida diaria de un enfermo de párkinson y la de su compañera a lo largo de una semana basándose en la transcripción de la entrevista. En el segundo caso, el modelado se centra en una actividad concreta, la de ver la televisión, y demuestra cómo el simulador se puede emplear para diseñar y validar una aplicación que trata de asistir al paciente. Tanto el lenguaje como el simulador y el generador son totalmente abiertos y públicos. La intención es generar una comunidad de usuarios y desarrolladores que promuevan la simulación como herramienta para la investigación y el desarrollo de sistemas AAL. A la larga, esto debe ahorrar costes en el desarrollo de este tipo de tecnologías y, por consiguiente, hacerlas más asequibles y efectivas para los ciudadanos. Ambient Intelligence is a paradigm that aims at creating environments where services are offered to their users. Devices are integrated perfectly in these environments and the services are adaptable and proactive. In recent years, this paradigm has been widely applied as a home care solution for elderly people to enhance their autonomy and quality of life. However, the research and development of these systems is costly. Among the most important costs are hiring staff, buying the devices, the time required for testing and renting the spaces. Mainly, these costs are originated because of the necessity of performing the research activities in real environments such as Living Labs. Simulation is an alternative to Living Labs where the physical objects are simulated such as the spatial, the devices and the users. However, the development of convincing 3D simulations that reproduce laboratory conditions are also costly. It requires both specific programming and 3D modeling skills. This thesis intends to apply the model-driven development to facilitate the generation of simulations. This proposal needs a language, a code generator and a domain frame. The generator builds automatically simulations for the domain frame given a specification created with the language. Automatic generation means that the generated source code is straightly runnable without any modification. Thereby, anyone who can create specifications with the language will be able to build 3D simulations. The domain specific modeling language has been called SociAALML. Initially, the domain was focused on the activities of daily living of Parkinson's patients and their families in their homes. However, the language can also be applied to other domains. For example, it was used in the project ColosAAL to model situations of Alzheimer's patients. The language covers all of the elements that are necessary for the simulation: spatial entities, the behavior of subjects, the disease, interactions between entities, and the deployment of the devices. The design and the definition of the language have been based on the study of literature related with the domain and transcriptions of interviews to patients made by project members. In addition, the notation of the language has been intended to be cognitively efficient following the principles of Moody, i.e, to be easy to understand and use. These features aim at broadening the spectrum of users of the language not only to experts but also to social workers, doctors or even patients and their relatives. The domain framework for this approach is the PHAT simulator. It has been designed and developed from scratch using the jME3 game engine. The purpose of the simulator is to recreate the activities of daily living of the Parkinson's patients and their relatives in their homes. It supports functionalities such as a physics engine to simulate falls, lighting, navigation of virtual subjects along the scenarios, sounds, virtual devices, simulation of patient's symptoms, among others. The generator takes advantage of these functionalities to extend them and implement the semantic of the specifications defined with SociAALML. This thesis describes the study performed to generate these tools needed to support the proposed approach and evaluates their efficacy applied to two use cases. The first use case covers the process of modeling the activities of a Parkinson's Patient and his couple along a whole week. The behavior is extracted from a previous interview transcription. The second use case is focused on modeling issues related with a concrete activity. The activity is watching the television. This case shows how the simulator can be employed to design and validate an application that try to assist the patient. The language, the simulator and the generator are open source and are available on Internet. The objective is to create a community of users and developers that promote simulation as a feasible tool for the research and development of AAL systems. In the long term, this should reduce costs in the development of these technologies and thus make term more affordable and effective for citizens.