Pero a pesar de ser una infraestructura para alcanzar el objetivo planteado por Weiser, todavía tenemos un largo camino por recorrer. La razón más importante es que cada dispositivo actúa como una isla independiente, ofreciendo una funcionalidad concreta y limitada, pero sin posibilidad de colaboración [3].
El artículo que se describe a continuación se articula de la siguiente manera: en primer lugar, a modo de ejemplo, se describen las diferencias entre una casa inteligente y otra no inteligente, y a continuación se describen los principales retos que se observan en este ejemplo.
Mikel y Ane viven en Aramaio, pero su casa está llena de sensores invisibles, cámaras de visión artificial y equipada con el electrodoméstico más moderno del mercado. Estos dispositivos, y sobre todo su inteligencia, permiten llevar a cabo los comportamientos que se describen a continuación, mediante la colaboración entre electrodomésticos, cámaras y sensores. A continuación se describen algunos casos, primero el de la casa sin inteligencia y después el de la casa inteligente.
El caso de la casa sin inteligencia
Mikel, como siempre, ha salido del trabajo y se ha ido a casa. Como no ha habido nadie en casa durante el día, la casa está fría. Así que ha puesto en marcha la calefacción. Quiere escuchar una música similar a la que estaba escuchando en su iPodTouch y se enciende el ordenador y se conecta a last.fm para elegir la música que más le gusta. Ha puesto la música en el salón, pero después, al ir a la cocina, ha tenido que apagar los altavoces del salón y encender los de la cocina y volver a elegir su música favorita en su aparato musical.
Poco después Ane llega a casa y, tras dejar su chaqueta y su bolsa en el perchero, se sienta en el asiento del salón con la intención de seguir viendo la serie Balbemendi que estaba viendo en el autobús. Para ello ha tenido que pasar el archivo de vídeo de su reproductor al ordenador de la sala de estar a través de la red wi-fi y abrir el apartado de la serie en la aplicación VLC. A continuación pone en marcha el Home Cinema y finalmente conecta la salida del ordenador para escuchar el sonido de la serie. Como está de pie, ha bajado la intensidad de la luz del salón, ya que prefiere ver la tele con poca luz.
Mientras, Mikel prepara la cena. M.D. House calcula el tiempo de inicio de la serie y se da cuenta de que se le ha retrasado. Antes de empezar la serie quería colgar la ropa, pero bueno, tendrá que colgar después de terminar la serie. Así que ha puesto en marcha la lavadora. Como la lavadora es muy ruidosa, al subir el volumen de los altavoces y sonar el teléfono no se ha dado cuenta. Ane por un momento deja de ver su serie y llega desde el salón diciéndole que está tocando el teléfono. Mikel coge el teléfono, pero como estaba preparando la cena, corre y habla con sus padres con prisas. Se le ha olvidado escribir la obligación de su madre y, lo que es peor, se le ha quemado la tortilla de patata que aún estaba ardiendo.
El caso de la casa inteligente
Mikel, como siempre, ha salido del trabajo y se ha ido a casa. Aprendiendo la casa con el tiempo, sabe que la temperatura que le gusta a Mikel es de veinte grados y mantiene su casa automáticamente a esa temperatura. Además, dependiendo de la época del año, abre o cierra las ventanas, enciende el aire acondicionado o coloca la calefacción para conseguir la temperatura deseada. Como no ha habido nadie en casa durante todo el día, la calefacción se ha encendido. Cuando Mikel llega a casa, en su iPodTouche escuchaba música, la casa lo ha notado y se ha conectado al perfil de last.fm de Mikel para ver cuál es su música favorita. Finalmente, ha emitido la música por los altavoces más cercanos a Mikel. A medida que se mueve Mikel, el sonido también cambia de lugar por toda la casa.
Poco después Ane llega a casa y, tras dejar su chaqueta y su bolsa en el perchero, se sienta en el asiento del salón para seguir viendo la serie Balbemendi que estaba viendo en el autobús. Como ha hecho lo mismo en las dos últimas semanas, la casa ha aprendido este comportamiento. Por lo tanto, en lugar de configurar Ane de forma manual, la imagen de la serie que estaba viendo en el PDA se ha puesto en la pantalla del ordenador del salón y el sonido también en el Home Cine. Además, ha bajado la intensidad de la luz y se han cerrado las puertas del salón para que Ane pueda disfrutar con tranquilidad de su serie favorita.
Mientras Mikel prepara la cena, se pone en marcha la lavadora secadora y hoy House M.D. Verán que la lavadora secadora finalizará 15 minutos antes del inicio de la serie. De esta forma pueden tener recogidas las prendas para empezar la serie. Al mismo tiempo que se ha puesto en marcha la lavadora, el volumen de los altavoces de la cocina ha subido para que Mikel siga escuchando correctamente. Además, se ha puesto en marcha el mecanismo de aviso especial del teléfono, que permite que si alguien llama por teléfono, sonará en la habitación en la que está Mikel, pero no en la sala en la que está Ane. Antes de finalizar la preparación de la cena, el teléfono suena y se escucha el nombre de la persona que llama desde el altavoz. Al mismo tiempo que Mikel ha aceptado la llamada, la música se ha detenido para poder hablar más tranquilo con altavoces y micrófonos de la cocina. Por cierto, ha tenido la oportunidad de continuar con la cena, ya que tenía las manos libres.
Como se puede observar en casos anteriores, las ventajas que puede aportar la casa inteligente son muchas, sobre todo para adultos, pero también para otras personas. En el primer caso se puede observar que es el usuario quien tiene la iniciativa, quien tiene que gestionar y poner en marcha los dispositivos necesarios para conseguir el objetivo deseado. Al final se pierde mucho tiempo para hacer algo simple. Pero en el segundo caso (hogar inteligente) la iniciativa la tienen los dispositivos; sin que el usuario haga nada, los dispositivos se coordinan para satisfacer las necesidades del usuario. El objetivo final es adecuar el entorno a las necesidades del usuario.
La casuística anterior puede asimilarse a los tipos de música. ¿Sinfonía o Jazz? en el libro [6]. Koldo afirma que en el jazz predomina la improvisación, que hay iniciativa y que al final se consigue un resultado armónico. En el jazz se percibe la creatividad, cada músico es capaz de tocar su instrumento y saber cómo lo tocan los demás, están creando música en todo momento y sin embargo no hay director. Es un equipo que genera innovación. En la orquesta clásica se repite y los músicos interpretan una partitura que no es la suya. Tocan una partitura dirigida por un director, no hay posibilidad de improvisación.
Si aplicamos lo que dice Koldo Saratxaga al caso de la casa, es evidente que la casa sin inteligencia es una especie de sinfonía: hay un director, un usuario, y los músicos son dispositivos, cada uno toca su instrumento y parte de la partitura, pero no es capaz de improvisar y actuar. En el caso de la casa inteligente, sin embargo, no hay director, pero el resultado es el mismo que consiguen entre dispositivos: son capaces de improvisar, de crear nuevas interacciones, de crear nuevos comportamientos no planteados previamente, y por encima de ello, de obtener un resultado armónico. Además, la iniciativa la tienen los dispositivos y no necesitan una gran implicación del usuario.
Estamos aún lejos de conseguir la casa inteligente descrita anteriormente, ya que es necesario evitar ciertas necesidades para poder conseguir estos comportamientos inteligentes entre dispositivos. En el mundo de la investigación, esta colaboración entre dispositivos se conoce como composición de servicios, que requiere diferentes paradigmas y metodologías para su obtención.
Los dispositivos que actualmente podemos encontrar en nuestro entorno no se adaptan a las preferencias del usuario, sino que actúan siempre de la misma manera. Pero eso no tiene por qué ser así. Los dispositivos que se encuentren alrededor del usuario deberán adaptarse a su estado, ubicación, etc. [1], siendo sensibles a los cambios de información en el entorno, es decir, cada dispositivo debe ser capaz de conocer qué hay en su entorno (dispositivos cercanos, servicios que ofrecen, personas cercanas, estado de los mismos, etc.) y cómo cambia la información del entorno. De esta forma se podrán adaptar dinámicamente los servicios que se ofrecen al usuario, por ejemplo, en función de la ubicación del usuario se apagará una u otra luz. Esta adaptación al contexto supondrá ventajas para el usuario ya que se le ofrecerán los servicios más adecuados a su ubicación y preferencias. De este modo, el paradigma de la interacción entre usuarios y aplicaciones cambia radicalmente: no es el usuario el que se adapta a las aplicaciones sino las aplicaciones según el contexto del usuario.
La información existente en el entorno, tanto la obtenida por los sensores (temperatura, intensidad lumínica, ubicación del usuario, etc.) como otro tipo de información (servicios ofrecidos por los dispositivos circundantes, preferencias del usuario, etc.) es diversa, separada y no unificada. Por tanto, esta información debe estar correctamente gestionada y definida. Para ello es necesario definir el modelo de contexto, modelizando la información existente en el entorno, tanto la captada por sensores como la de otro tipo. Con este objetivo, en los últimos años se han propuesto diferentes tecnologías y metodologías (modelos gráficos, modelos de relación entidad, modelos lógicos, etc.), pero de todas ellas se ha demostrado que las ontologías son las más adecuadas [5].
La característica más importante de los entornos de computación ubicua es la movilidad de los dispositivos. Como consecuencia de ello, se puede decir que el entorno es dinámico y muy abierto, y que es necesario el despliegue y ejecución instantánea de los servicios que ofrecen los dispositivos situados en este tipo de entornos, integrando en el momento y lugar adecuado el software y el hardware existentes en el entorno. Para conseguir esta dinamicidad, los dispositivos deben verse como un recurso autónomo e independiente.
El paradigma de la Arquitectura Orientada a Servicios (PCS), muy acorde con esta idea, es especialmente apropiado, ya que en este paradigma las aplicaciones y los dispositivos que las soportan se definen como servicios vulnerables. Esto significa que los servicios de cada dispositivo se generan de forma independiente, sin dependencia de los servicios de otros dispositivos. De este modo, los servicios inicialmente no relacionados pueden ir uniendo uno a uno para crear servicios de alto nivel, y en el caso de la casa inteligente, los servicios simples (encender la luz, bajar las persianas, encender la televisión, cerrar la puerta) pueden unirse para crear servicios más complejos y completos (al entrar el usuario primero en la casa, encender la luz, después bajar las persianas, cerrar la puerta de entrada y después encender la televisión al salón). En la actualidad, la mayoría de los sistemas que utilizan la Arquitectura Orientada a Servicios utilizan servicios web como implementación.
Con el paradigma de las Arquitecturas Orientadas a los Servicios conseguimos una colaboración entre dispositivos que utilizan la misma tecnología, pero esto no es suficiente, ya que los dispositivos que se pueden encontrar en el entorno pueden utilizar diferentes tecnologías: UPnP, servicios web, servicios semánticos web, etc. Esto debe permitir la interoperabilidad entre dispositivos que utilizan diferentes tecnologías, de manera que los dispositivos que utilizan diferentes tecnologías podrían comunicarse entre sí, por ejemplo, en la imagen superior, los servicios que ofrecen los dispositivos (cada pieza del puzzle es el servicio que ofrece un dispositivo) son complementarios, es decir, se pueden combinar para conseguir un comportamiento más complejo (y así crear un puzzle).
Este apartado es la parte más importante del sistema compositivo, ya que la inteligencia del sistema se sitúa aquí, pero no sería nada sin los dos sistemas anteriores. El sistema de razonamiento es capaz, gracias a un sistema de sensibilidad al contexto, de saber qué tiene cada dispositivo en su entorno, es decir, dónde está Mikel, si la televisión está encendida o no, etc. Por otro lado, el sistema de interoperabilidad permite la comunicación con los dispositivos existentes en el entorno. Parece que el dispositivo es capaz de componer, pero para ello debe ser capaz de tomar decisiones, es decir, de conocer cuándo debe componer y con qué otro dispositivo debe comunicarse.
Con este fin, el sistema compositivo necesita de un subsistema que permita conocer el comportamiento de los usuarios, aprendiendo y modelizando las conductas que ha tenido últimamente el usuario. La información del entorno es imprescindible para ello, como se puede observar en los siguientes ejemplos:
- El dispositivo PDA de Ane ha aprendido que la mayoría de las veces que entra en casa pasa al ordenador del salón la serie que estaba viendo en ese momento.
- La televisión también ha aprendido que Ane por la tarde pasa un vídeo de un PDA al ordenador para verlo.
- Las lámparas y luces del salón también saben que a Ana le gusta tener una sola luz, y sobre todo por las tardes cuando vuelve del trabajo.
La información utilizada en los ejemplos anteriores es muy variada, por un lado se ha utilizado el sistema de posicionamiento en el hogar y, por otro, la agenda electrónica de Ane, el sistema de localización de dispositivos en el entorno, etc.
Cuando cada dispositivo es capaz de averiguar en qué momento tiene que actuar y sabe cuál es el comportamiento global del usuario, sólo falta que colaboremos entre todos, acordemos qué servicio debe ejecutarse después y antes, de esta manera se logrará crear comportamientos complejos entre los dispositivos y estar más cerca de los objetivos de computación ubicua definidos por Weiser.