Desarrollo de un servicio middleware de ontologías cooperativas aplicado a sistemas embebidos de transportes inteligentes

  1. Gregor Recalde, Derlis Orlando
Supervised by:
  1. Sergio Luis Toral Marín Director

Defence university: Universidad de Sevilla

Fecha de defensa: 22 May 2013

Committee:
  1. Federico José Barrero García Chair
  2. Manuel Vargas Villanueva Secretary
  3. Inmaculada Plaza García Committee member
  4. Mario Javier Durán Martínez Committee member
  5. Eduardo Barrera López de Turiso Committee member

Type: Thesis

Teseo: 337974 DIALNET lock_openIdus editor

Abstract

Las primeras soluciones de comunicación entre ordenadores se basaban en un modelo denominado centralizado en la que un único equipo con una o múltiples CPUs (Central Processing Unit) procesaba todas las solicitudes entre aplicaciones. No obstante, la necesidad de obtención de datos complejos, de cálculos entre aplicaciones de forma rápida, precisa y de coste accesible dio lugar a que éste modelo fuera sustituido por un modelo distribuido que permitiese hacer viable el manejo de grandes estructuras de datos diseminados en múltiples ordenadores que se comunican entre sí a través de una red común. La independencia, distribución y en algunos casos la naturaleza heterogénea de estos ordenadores demandan un sistema de software distribuido que sirva como estándar entre sistemas. La utilización de un software middleware entre la capa software y hardware actúa como una capa de abstracción de software distribuido y ofrece un conjunto de servicios que hace posible el funcionamiento de aplicaciones distribuidas sobre plataformas heterogéneas. La comunicación entre aplicaciones es crucial ya que las tecnologías de la información están evolucionando hacia una interacción de aplicaciones a través de Internet. Inicialmente, las aplicaciones en Internet surgieron para realizar la comunicación entre humanos o entre humanos y aplicaciones. Una muestra de ello son: Email, Ftp, Web, Telnet, IRC, etc., Hoy en día, la necesidad de interacción entre aplicaciones a través de Internet se está demandando de forma creciente. La electrónica, los sistemas informáticos y los sistemas embebidos están cada vez más integrados en entornos distribuidos. El descubrimiento de servicios es un reto bien reconocido en estos entornos. En la actualidad el desarrollo de aplicaciones SOA (Service Oriented Architecture) resulta un paradigma imperante para la integración dinámica de servicios. Una de las arquitecturas pioneras orientadas a servicios es CORBA (Common Object Request Broker Architecture), que ofrece conectividad de un sistema a través de los ORBs (Object Request Broker), parte medular de su estructura. Cuando se invoca a un servicio, se espera que éste resuelva la petición y produzca los mejores resultados con un rendimiento aceptable y ofreciendo algún tipo de QoS (Quality of Service). A pesar de todo, descubrir y localizar servicios no es tarea fácil y las búsquedas comúnmente carecen de inteligencia. El agente que realiza la petición podría obtener una infinidad de información no relacionada o sin sentido. La localización de la información o algún servicio específico podrían realizarse, por ejemplo, a través de algún servicio Trading de CORBA, donde la representación estaría dada por pares de nombres/valor y las propiedades de éstos cubrirían la referencia al servicio en sí, de forma descriptiva. Pero el Trading Service de CORBA utiliza información almacenada en diferentes componentes de su estructura reduciendo la capacidad de trabajar con entornos dinámicos e intuitivos. Otro inconveniente que presenta este servicio de CORBA es que no es capaz de trabajar con homonimias, obligando al desarrollador a crear sistemas poco flexibles. El trabajo desarrollado en esta tesis se aplica de forma específica al campo de los ITS (Intelligent Transportation Systems), donde la exactitud y rapidez de la información enviada/recibida es sumamente importante. La información confusa o la falta de interoperabilidad pueden resultar en ocasiones desastrosas, dando lugar a accidentes, retrasos y caos en el tráfico dependiendo del área en que se implemente. El descubrimiento dinámico de la información, así como la composición y la invocación de servicios a través de agentes inteligentes serían una potencial solución a estos problemas. La composición de servicios podría permitir que los servicios cooperen mutuamente de forma dinámica. Para ello es necesario que el flujo de información sea gestionado de forma inteligente. La incorporación de ontologías implementadas en un conjunto estandarizado de conceptos como RDF (Resource Description Framework) extendida por mecanismos de especificación de clases y propiedades como RDFS (RDF-Schema) o escritas en un lenguaje OWL 2 (Web Ontology Language), así como un servicio que gestione ontologías de forma cooperativa, jugarían un rol muy importante en un entorno orientado a los ITS. En esta tesis doctoral, el capítulo 1 realiza una introducción general sobre los inicios, evolución y actualidad de los ITS, exponiendo los principales escenarios de aplicación, los sistemas de comunicaciones más utilizados en este entorno y las principales carencias. En el capítulo 2 se introducen las tecnologías middleware existentes, haciendo hincapié en los principales tipos de middleware actuales. Se trata además de la importancia de las ontologías en las actuales infraestructuras de desarrollo software como parte crucial en el manejo inteligente de la información y más específicamente en el campo de los ITS. También se expone la importancia de los servicios colaborativos inteligentes y las ventajas de la incorporación de un servicio semántico en el campo de los ITS. En el capítulo 3 se hace una propuesta para la creación de entornos inteligentes cooperativos en el ámbito de los ITS. Para ello se propone un método para medir y evaluar la carga computacional de CORBA ejecutada sobre plataformas embebidas. También se propone un método específico para la creación de ontologías en el dominio de los ITS utilizando técnicas de recuperación de la información, extracción del conocimiento, procesado del lenguaje natural y el análisis de datos estadísticos. Por último se presenta la metodología para la construcción de un servicio denominado SemancicService (Servicio de Comunicación Semántico) desarrollado en TAO CORBA (The ACE ORB) en asociación con un conjunto de librerías base (Redland RDF - librdf) que provee el soporte para interactuar con ontologías escritas en RDF y RDFS. Se introduce un analizador sintáctico (Raptor RDF Syntax Library - libraptor2) para estudiar secuencias de símbolos a fin de determinar la estructura gramatical y un lenguaje de sintaxis tipo consulta (Rasqal RDF Query Library - librasqal) que se utilizará para construir y ejecutar consultas. El objetivo principal será el de gestionar la información de la ontología desarrollada e interoperar con servicios implementados en dispositivos embebidos en el campo de los ITS, (videocámaras, semáforos, paneles de tráfico y dispositivos en-vehículos, dispositivos móviles, PDAs, etc.). El SS (Semantic Service) puede ser implementado indistintamente tanto en entornos embebidos basados en entornos embebidos o bien en entornos PC. Las diferentes aplicaciones de tráfico C/S (cliente/servidor), implementados en su mayoría en dispositivos con arquitecturas embebidas, interoperarán con el SS, que será el encargado de proveer y gestionar toda la información y de intermediar entre ellos de manera dinámica e inteligente. SS actuará entonces como un agente inteligente entre proveedores y consumidores de servicios middleware enfocados a la gestión de los ITS. En el capítulo 4 se muestran los resultados obtenidos respecto al coste computacional de la capa middleware sobre dispositivos ARM (Advanced RISC Machines), el rendimiento y escalabilidad de los métodos propuestos para la creación de la ontologías y los resultados, rendimientos y escalabilidad obtenidos en la implementación del Servicio Semántico, comparándolo con el Servicio Trading de CORBA en un escenario real. Finalmente, en el capítulo 5 se dan a conocer las conclusiones de los diferentes capítulos, así como las principales aportaciones realizadas. Se habla sobre la repercusión que podría tener esta tesis en futuros trabajos y se detallan las publicaciones realizadas durante el proceso de investigación, tanto en revistas científicas como en congresos internacionales.