Content uploaded by Miguel Angel Niño Zambrano
Author content
All content in this area was uploaded by Miguel Angel Niño Zambrano
Content may be subject to copyright.
Método de Indexación Semántica en Internet de las Cosas
Miguel Angel Niño-Zambrano
Profesor Departamento de Sistemas
Universidad del Cauca
Popayán, Colombia
manzamb@unicauca.edu.co
Jesus Alberto Niño-Zambrano
Estudiante Escuela de Ingeniería de Sistemas
Universidad Industrial de Santander
Bucaramanga, Colombia
jesus.nino@correo.uis.edu.co
Gustavo Adolfo Ramírez-Gonzalez
Profesor Departamento de Telemática
Universidad del Cauca
Popayán, Colombia
gramirez@unicauca.edu.co
Luis Carlos Gómez-Flórez
Profesor Escuela de Ingeniería de Sistemas
Universidad Industrial de Santander
Bucaramanga, Colombia
lcgomezf@uis.edu.co
Resumen—El futuro de la Internet de las Cosas depende en
gran medida de la capacidad para gestionar adecuadamente los
datos e información producida por los sensores. El presente
trabajo plantea un método de indexación semántica que apoya
la construcción de motores de búsqueda inteligentes a partir de
una estructura de conocimiento mediada por ontologías y
adaptadas a las necesidades de información de los usuarios en
la web de las cosas.
Palabras Clave—Internet de las Cosas; Indexación
Semántica;Metodo; Ontologías.
I. INTRODUCTION
Los problemas y retos de la Internet de las Cosas -
Internet of Things – (IoT) son los mismos en la web actual,
tales como: incorporar mecanismos de procesamiento
automático de información, interoperabilidad semántica y
encontrar información útil para los usuarios; los retos se
agudizan debido a que los sensores generan grandes
cantidades de datos y presentan heterogeneidad profunda, a
causa de las diversas características hardware y software,
distintos tipos de: aplicaciones, tecnologías, estándares y
fuentes de datos de sensores se dificulta la su búsqueda,
integración, análisis y descubrimiento de servicios.
Para apoyar la construcción de motores de búsqueda
semántica en la IoT se optó por la estrategia de crear índices
semánticos que posteriormente soporten las consultas de los
motores semánticos que se construyan para la IoT, así se
realizó un estudio de las aplicaciones que facilitan el acceso a
las observaciones de sensores llamados middleware y
portales web de las cosas, con el fin de seleccionar el más
adecuado para soportar procesos de indexación semántica.
Finalmente, se implementó un método que incorpora dicha
infraestructura y técnicas de web semántica con la finalidad
de realizar procesos de recuperación de la Información en la
IoT de manera eficiente.
La Indexación Semántica en la web actual, es una
herramienta eficiente para la búsqueda en grandes cantidades
de datos, por ello se ha incorporado cómo principal estrategia
en la solución presentada. Adicionalmente, se incorporan los
servicios web semánticos para interoperabilidad semántica
entre aplicaciones. Así, este trabajo propone una arquitectura
de un método genérico reutilizable llamado: “Semantic
Indexing Method in Internet of Things” - (SIMIOT).
II. TRABAJOS RELACIONADOS
La anotación semántica es utilizada para indexar en la
IoT, las iniciativas de estandarización creadas por la Open
Geospatial Consortium – (OGC) y Sensor Web Enablement -
(SWE), establecieron estándares como SensorML y la
ontología de sensores SSN-XG, los cuales permiten
adicionar metadatos para describir las características técnicas
del sensor, su precisión, condiciones, escenarios de medición
y observaciones; siendo la descripción semántica muy útil
para la construcción de índices semánticos de los sensores.
Por otra parte la información que se puede indexar de los
objetos tiene que ver con una taxonomía. El trabajo de [1],
permite caracterizar los objetos en tres dimensiones:
comunicación, procesamiento, almacenamiento y su
identidad, la cual permite establecer una jerarquización de
los mismos; Mathew propone una ontología con las
clasificaciones expuestas. Perera, et al. [2] hacen un estudio
extenso sobre los datos importantes relacionados a la
conciencia y contexto que se puede manejar en la Web of
Things – WoT, presentan dos categorías: la primaria son
datos de los sensores que no necesitan ser procesados (Ej.
Datos GPS), la secundaria son datos a los cuales se les aplica
procesos de fusión y recuperación de la información (Ej.
Identificación de distancia entre sensores), adicionalmente
hace un producto cartesiano con cuatro perspectivas de
contexto: actividad, tiempo, identidad y localización. Estos
elementos se convierten para el proyecto en una fuente
importante de información semántica a ser indexada.
La heterogeneidad en dispositivos de la IoT es enfrentada
con la construcción de aplicaciones que cumplen con la
función de mediadores (middlewares) de la IoT, tales como:
Sensorpedia, Sensormap, SensorBase y Xively entre otros.
Los servicios mediadores de sensores permiten la integración
automática de dispositivos de sensores, por medio de
servicios de descubrimiento, acceso, asignación de tareas,
eventos y alerta. Un ejemplo es la prevención de desastres;
suscribiéndonos a un servicio como Sensorweb con
características del evento como derrames de crudo en el
océano, estos servicios tiene identificadores y también
características espaciales y temporales que proveen
información relevante del evento. La mediación se lleva a
cabo por descripciones con ontologías y emparejamiento
semántico, la deducción de conceptos también es una parte
importante de los servicios como por ejemplo hacer
conversiones de medidas de datos sensor y otro tipo de
deducciones avanzadas y útiles para dar respuesta a las
consultas.
Generalmente los datos vinculados a los datos de los
sensores utilizan ontologías de dominio para su
enriquecimiento semántico; un ejemplo es Sensormap o
Earthcam, cuyo dominio de aplicación es el ámbito tierra,
por otro lado, Sensormasher publica los datos en diferentes
formatos, interfaces y estándares, recopila la información de
sensores y los enlaza con la nube de datos para facilitar el
acceso de fuentes heterogéneas de datos de sensores en
formatos XML, RSS, JSON o texto plano.
El área de investigación que incursiona en la integración
de semántica en la IoT es llamada: Semantic Sensor Web –
(SSW) [3], y se puede identificar los siguientes retos
relacionados con esta investigación:
• Se ha incrementado la necesidad de crear modelos
formales semánticos, con el fin de encontrar una forma
adecuada de aprovechar la información y el
conocimiento inferido de los objetos. Los modelos son
diversos y aún no hay un consenso en que modelo
aporta información más relevante.
• El modelamiento del contexto y de la conciencia es un
campo que tienen aún mucho por proponer. Se tienen
identificados elementos de contexto, pero hasta ahora se
está estudiando cómo implementarlo adecuadamente.
• La búsqueda y descubrimiento en la WoT se ha
centrado en el enriquecimiento semántico y muy poco
en la indexación semántica, éste enfoque podría ser una
buen punto de partida para implementar esta
funcionalidad.
Otros trabajos han incursionado en la construcción de
motores para la IoT y la incorporación de semántica a la
misma. Así el trabajo de Ostermaier, et al. [4], incorporaron
técnicas de RI en la IoT, desarrollando un motor de búsqueda
de información de tiempo real para la IoT llamado Dyser,
establecen dos aproximaciones para crear un motor de
búsqueda en la IoT: el enfoque de inserción (push) y el
enfoque de extracción (pull) y proponen un algoritmo de
clasificación de sensores (Sensor Ranking). El motor de
búsqueda y el modelo establecido, fue probado midiendo la
sobrecarga y los tiempos de latencia, indicadores importantes
que se podrían incorporar al método de indexación, sin
embargo es necesario que se haga medición de relevancia
con los indicadores tradicionales de RI, con el fin de
establecer si cumple con los requerimientos de búsqueda de
los usuarios. Los elementos semánticos introducidos
permiten vislumbrar las ventajas de separar las consultas de
los usuarios en dos tiempos: unas que se pueden resolver sin
conexión a los objetos y otras en tiempo real, teniendo que
decidir cuál realizar o hacer una combinación de las mismas.
Teixeira, et al. [5], proponen un middleware orientado a
Servicios con cinco módulos (descubrimiento, expansión,
mapeo, optimización y ejecución), soportando sus
funcionalidades en tres ontologías (ontología de dominio,
ontología de estimación, ontología de dispositivo) que son
tratadas como una base de conocimiento (“Knowledge Base”
- KB). La propuesta conceptual es muy interesante, en el
sentido que los módulos propuestos se comportan como
grandes procesos de indexación semántica, un enfoque que el
presente proyecto pretende abordar como estrategia de
enriquecimiento semántico de los objetos de la IoT. Las ideas
de una ontología de estimación y de un proceso de
descubrimiento pueden ser adicionadas a la idea original del
presente proyecto, como elementos valiosos para incorporar.
Lamentablemente, no se presentan casos de estudio o
implementaciones y por ello no se puede evaluar la
viabilidad de la propuesta.
Wei, et al. [6], Presenta una ontología en la cual modelan
los aspectos de la IoT con el fin de almacenar conocimiento
en ella. Los principios de diseño presentados pueden tenerse
en cuenta para la construcción de las ontologías de la
presente propuesta, adicionalmente algunos de los módulos
presentan conceptos interesantes que nos permiten abstraer
algunas características de la IoT.
Perera, et al. [2], Hace un estudio detallado sobre el
análisis del contexto para la IoT. Establece un estudio de
middleware que implementan características de contexto y
define los principales retos que deben afrontar los sistemas
que trabajen con el contexto para la IoT. Elementos que se
pueden utilizar en la presente propuesta.
Con respecto a las necesidades de información de los
usuarios Zhang [7] definen una arquitectura para la IoT
teniendo en cuenta que los usuarios están interesados
inicialmente en la entidades (cosas, lugares, personas) y
posteriormente por las cualidades o estados de esas cosas
(vacío, libre, sentado, caminando, etc.) y no en sensores
individuales y sus datos de salida, de esta manera las
necesidades se deben asociar al contexto de la consulta del
usuario y el dominio de conocimiento sobre el cual pregunta.
Finalmente, el trabajo de Pezo, et al. [8] en el cual se
propone un procedimiento para la construcción de índices
semánticos en la Web, se han tomado como referente para
adaptar los pasos propuestos hacia la indexación semántica
en la WoT, pero teniendo en cuenta sus características y
dificultades propias. Definiendo fases, actividades y tareas en
el método propuesto.
III. METODOLOGÍA DE TRABAJO
Para crear el método de indexación semántica se siguió
un proceso de tres pasos: primero se hizo un estudio de
estado del arte de trabajos, herramientas y técnicas utilizadas
para la integración semántica en la WoT; segundo, se obtuvo
las características, pasos y elementos a tener en cuenta
(arquitectura) para la definición del método y tercero, se
formalizó el método a través de un estandar internacional
como SPEM 2.0, con el fin de que pueda ser reutilizado,
adaptado o ampliado por cualquier grupo de desarrollo.
IV. ARQUITECTURA DE CREACIÓN DE INDICES
SEMÁNTICOS EN LA IOT
Con el fin de establecer una abstracción global de los
índices semánticos en la IoT, se presenta una arquitectura
multicapa (Figura 1), en la cual las primeras tres capas de
abajo hacia arriba crean una abstracción de los objetos de la
IoT. La capa de servicios web de middleware genera
interfaces uniformes de acceso a los datos de los objetos,
permitiendo añadir en el futuro cualquier tipo de middleware
o Servidor IoT que soporte o desarrolle dichos servicios,
adicionalmente permite a las aplicaciones conectare de
manera transparente a los servicios de esta capa, sin importar
de que servidor provengan o como es su lógica de negocio.
Por otro parte, las tres capas intermedias que están
paralelas, son las encargadas de crear el índice semántico. La
propuesta, es que se parte de un modelo semántico para la
creación del índice, este modelo está dirigido por la solución
de una serie de requisitos personalizados al desarrollo de
cada índice semántico y por unas decisiones de diseño, que
guían la construcción del mismo en cada actividad. Los
elementos principales son:
• Modelo de consultas personalizadas: es un modelo
que permite establecer el dominio de objetos que se
deben indexar y como se va a caracterizar dicho
dominio al momento de seleccionar la información y los
objetos a indexar.
• El modelo de conceptos: es un documento que
establece las estructuras a utilizar (ontologías, tesauros),
cómo utilizarlas y las decisiones de modelos
conceptuales y algoritmos a utilizar en cada tarea
desarrollada para la obtención de los conceptos. En esta
capa se toman decisiones de cómo manejar el contexto
y demás información semántica de los objetos, incluida
la información de los usuarios la cual se puede
almacenar en una ontología de usuario.
• Algoritmos de Similitud: es un documento con un
conjunto de decisiones alrededor de los algoritmos que
se van a utilizar para el análisis de coocurrencia y
representatividad.
• Modelo de servicios: Es un documento que establece
las interfaces a desarrollar con respecto a los servicios
web semánticos de los objetos y los servicios Web del
índice mismo.
La capa de motor de indexación semántica realiza una
serie de pasos en los cuales se procesa la información
provista por los middleware de la IoT y crea el índice
semántico. En la capa del modelo de conocimiento residen
las ontologías que se utilizarán para incorporar la semántica
y las anotaciones en el índice construido. Se ha desarrollado
una ontología denominada “Objeto Semántico” la cual tiene
por objetivo aportar el conocimiento necesario para anotar
los objetos de la IoT con respecto a sus características,
capacidades e información particular. Sin embargo, las
demás ontologías utilizadas dependerán del caso de estudio
particular que se escoja para realizar la indexación.
Finalmente, las dos últimas capas superiores pretenden
generar una interfaz de servicios web, de tal forma que
cualquier aplicación web ejecutándose en cualquier
dispositivo, pueda utilizar los servicios del índice y de los
objetos a los cuales hace referencia. Estas aplicaciones
pueden dar servicios a personas o a objetos inteligentes con
capacidades de procesamiento.
Figura 1: Arquitectura Método para Crear Índices Semánticos IoT
En esta última capa se puede construir el motor de
búsqueda semántica, el cual aprovechará el índice semántico
construido para hacer las consultas correspondientes a los
objetos de la IoT, obteniendo información relevante de los
sensores relacionados a la misma y de la cual previamente se
ha analizado con las ontologías del dominio particular del
motor de búsqueda. Para nuestro caso se está trabajando con
un motor para el domino de la información medioambiental.
V. MÉTODO PARA CREACIÓN DE INDICES SEMANTICOS
EN LA IOT (SIMIOT)
Se realizó una descripción del método, teniendo en
cuenta el estándar SPEM 2.0. Las fases, iteraciones y
actividades son definidas con base a los ladrillos de procesos
tal como se presenta a continuación:
Fase 1: Conceptualización del Proyecto de Indexación
Semántica (FCPIS)
El Objetivo de esta fase consiste en determinar los objetivos
y requerimientos por los cuales se construye el índice
semántico. Con esta información se debe decidir el tipo de
estructura que se utilizará para almacenar el conocimiento
(Tesauros, Ontologías, otras) y clasificar la información de
los objetos de la IoT, con fin de definir como obtener los
conceptos ocultos en cada dispositivo, adicionalmente
establecer la infraestructura a utilizar para mediar con los
objetos de la IoT. Las actividades definidas son:
• Actividad 1: Definir Requerimientos del índice
(ADRI): Se debe hacer una lista de requisitos software
de acuerdo al modelo de negocio para el cual se
necesita el índice. Se prioriza las funcionalidades y se
evalúan los riesgos de la misma, similar a cualquier
desarrollo de sistema de información. Las tareas son:
Diseño de la Visión del Proyecto, Formalización de los
Requisitos Software, Formalización de la Arquitectura
y Crear el modelo conceptual semántico de indexación.
Esta última tarea es una de las tareas más relevantes del
método, ya que requieren un trabajo creativo importante
para resolver varios problemas en la búsqueda en la
IoT. El programador, el analista, el experto en
conocimiento y el cliente, se reúnen para generar un
modelo conceptual semántico de indexación en la IoT.
Para esto deben responder las siguientes preguntas:
• ¿Cuáles son los usuarios del índice semántico?
• ¿Cuáles son los tipos de consultas que va resolver
el índice semántico?
• ¿Cómo se van a manejar las consultas que hacen
los usuarios para que se pueda entregar resultados
relevantes?
• ¿Qué cantidad de información se va a indexar y
cual se va a consultar directamente al sensor?
• ¿Cómo se va a manejar la concurrencia de
consultas a un mismo sensor?
• ¿Cómo se va a modelar el contexto que
necesariamente está asociado a los sensores?
• ¿Cómo se va a manejar la frecuencia de
actualización del índice?
• ¿Cuál es la estructura de datos más adecuada para
almacenar el índice?
• ¿Cómo se va a compartir el índice para su correcto
aprovechamiento?
El producto final de esta tarea, en un conjunto de
documentos (Modelo de consultas personalizadas,
Modelo de conceptos, Algoritmos de Similitud y
Modelo de Servicios) con las respuestas a estas
preguntas y detalles de implementación y uso de
tecnologías para implementar el modelo.
• Actividad 2: Conceptualizar una taxonomía de
objetos (ACTO): En este punto se crea una estructura
de conceptos y relaciones entre los mismos, que
describen el dominio particular de la IoT a indexar. Se
debe decidir si se usa un tesauro, una ontología u otra
estructura, dependiendo del aprovechamiento correcto
de las funcionalidades de cada una de las estructuras
definidas y el modelo conceptual semántico de
indexación desarrollado. Se recomienda usar estándares
como SSN-XG, SensorML y SWE, además de
clasificaciones propias que sirvan para el propósito del
índice. Las tareas definidas son: Estudiar las
estructuras existentes y Análisis de los Conceptos en la
Estructura Elegida.
• Actividad 3: Evaluar el middleware / servidor IoT a
utilizar (AEMS): Se debe seleccionar o decidir crear
una infraestructura que permita conectar los diferentes
dispositivos de la IoT a la web, permitiendo la
interacción con las aplicaciones web a través de
protocolos ampliamente aceptados. Existe la posibilidad
de reutilizar middleware gratuitos o servicios de los
diferentes servidores de datos de la IoT, a través del uso
de librerías (APIs) de desarrollo. En lo posible se be
buscar la captura metadatos y datos en formato XML,
con el fin de crear una base de datos documental
(BDD), que será utilizada para la indexación. Se evalúa
si el API de desarrollo cumple con las funcionalidades
básicas para su incorporación: debe permitir mínimo
lectura para los dispositivos, consultar otros
dispositivos y si usa un protocolo estándar de
comunicación como REST, MQTT, más los requisitos
propios del índice. Hay que tener en cuenta que los
servidores IoT están más enfocados a poner datos de los
objetos en la web con diferentes formatos, pero son
pocos los que desarrollan una interoperabilidad en dos
vías, es decir, que se pueda enviar información a los
objetos, en este caso los middleware se han desarrollado
pensando más en esta funcionalidad. Sin embargo, los
índices semánticos no tienen como principal objetivo
enviar mensajes a los recursos que indexa, por ello la
decisión aquí en la mayoría de los casos sería usar un
servidor IoT o una plataforma que permita cómo
mínimo consultar su información. Las principales tareas
son: Definir la fuente de datos de la IoT e Identificar
Categorías de Conceptos en los Formatos
Estructurados.
Fase 2: Creación de la Base de Conocimiento y Servicios
(FCBCS)
En esta Fase se crea una primera versión de la estructura de
conocimiento, además de crear los métodos que permitirán
convertir al API de desarrollo en servicios Web para su
posterior uso por el índice. Finalmente se hace una
realimentación a los requisitos definidos y a la arquitectura
propuesta teniendo en cuenta lo que se encontró en este
proceso. Posterior a esa realimentación se puede hacer otra
iteración de desarrollo de la base de conocimiento con el fin
de refinar la misma, utilizando una práctica de iteraciones
incrementales en el proceso de desarrollo:
• Actividad 1: Preparar o Crear la Estructura de
Conocimiento (APCEC): Una vez desarrollada la
conceptualización de la base de conocimiento se
procede a su construcción. Esta tarea puede presentar
varios pasos dependiendo de la metodología de
desarrollo de ontologías seleccionada, si se ha decidido
construir una. Adicionalmente se debe presentar la
estructura final a los clientes para su realimentación,
continuando la práctica de la visión compartida. Las
tareas relacionadas son: Seleccionar una metodología
de desarrollo adecuada y Crear la estructura de
conocimiento.
• Actividad 2: Adaptar el API al Entorno del Índice
(AAEI): En esta actividad se toman los API de las
fuentes de datos y crean los servicios web necesarios
para su uso en la capa de servicios de la arquitectura del
índice. Las tareas relacionadas son: Crear los servicios
del API de la Fuente de datos y Realimentación de la
funcionalidad.
Fase 3 Construcción del Índice Semántico (FCIS)
En esta fase se construye el índice semántico. Las
actividades desarrolladas se pueden realizar cada una en una
iteración, con el fin de tener hitos bien definidos en los
productos intermedios y así diferenciar cada una de las
etapas de construcción del índice. Las principales
actividades son: el procesamiento de la base de datos
documental, extracción de conceptos, estudio de
representatividad y construcción de la estructura de índice:
• Actividad 1: Preprocesamiento de la base de datos
documental (APBDD): Esta actividad crea la base de
datos documental (BDD), cada documento o conjunto
de documento se han extraído de las fuentes de datos y
se realizan varias tareas de preprocesamiento de los
datos de cada uno de los documentos, reduciendo el
número de datos a analizar y obteniendo el conjunto de
términos (tokens) a ser indexados. Para esta actividad se
puede apoyar en herramientas software que contienen
librerías para este procesamiento como LUCENE.[9].
Las tareas son: Extraer Información de Objetos,
Análisis Léxico del Texto, Eliminación de palabras
vacías (stopword removal), Aplicación de Lematización
(stemming).
• Actividad 2: Extracción de Conceptos (AEC): En
esta actividad se hace una selección de términos
candidatos, es decir, los términos relevantes en los
documentos y que son candidatos para extraer sus
conceptos. Estos conceptos aparecerán a partir de un
proceso de consulta en las estructuras de información
diseñadas para almacenar conocimiento en la primera
fase, como los tesauros y las ontologías u otras
aproximaciones de la teoría cognitiva. El proceso de
obtener los conceptos tiene dos objetivos principales
según [8]: El primer objetivo consiste en ampliar-
reducir los conceptos encontrados en las estructuras de
conocimiento consultadas, principalmente abstrayendo
o especializando los conceptos. En este punto, cada
proyecto de indexación semántica define el conjunto de
conceptos relacionados de acuerdo a sus necesidades.
Una de las reglas más fáciles para ampliar la
representación es obtenido de las estructuras de
conocimiento con respecto a cada concepto el conjunto
de sinónimos, hiperónimos, hipónimos y merónimos,
entre otras posibles relaciones de conceptos que existan
en las estructuras seleccionadas. El segundo objetivo
consiste en reducir los problemas de homonimia,
sinonimia y polisemia: Para este caso se pueden aplicar
algoritmos que permitan hacer desambiguación de las
palabras. Uno de los más utilizados es el Word Sense
Disambiguation – WSD [10-12] y sus variaciones. Las
tareas son: Selección de Términos, Obtención de los
Conceptos, Desambiguar los Conceptos.
• Actividad 3: Estudio de Representatividad (AER):
Esta actividad toma los vectores de conceptos y
documentos obtenidos en la fase anterior con el fin de
establecer pesos y/o prioridades de los conceptos con
respecto a cada uno de los documentos a los cuales está
relacionado. Esto se logra de dos formas: Aumentando
la importancia a conceptos muy relacionados y/o
eliminando conceptos que alejan el documento, eso
depende de lo que se busca. Esto último se logra
realizando un estudio o evaluación de representatividad
de los conceptos y sus relaciones con los documentos y
sus relaciones entre ellos mismos, para esto se utilizan
los algoritmos de similitud semántica, los cuales
pretenden encontrar, clasificar y ordenar por mayor
cercanía o similitud los conceptos y por ende los
documentos a los cuales están relacionados. Es aquí
donde se encuentra la principal diferencia con los
indexadores clásicos. Las tareas de esta fase son:
Análisis de coocurrencia: Análisis de
representatividad:
• Actividad 4: Construcción del Índice Semántico
(ACIS): Finalmente, en esta actividad se procede al
construir el índice semántico, el cual se puede entender
como una estructura de datos sobre el texto de los
documentos, para acelerar la búsqueda [13]. Existen
varios tipos de estructuras como los arboles invertidos,
arreglos de sufijos, archivos firmados y los índices
distribuidos. Aquí se tiene en cuenta el modelo
desarrollado en la primera fase, el cual servirá como
principal guía de implementación de la estructura. Las
tareas son las siguientes: Implementación del Índice
Semántico, Implementación de Servicios Web
Semántico de Objetos, Implementación de Servicios de
Índice.
Fase 4 Despliegue del Índice Semántico (FDIS)
En esta fase se implanta el índice semántico en la
infraestructura disponible para su puesta en marcha. Se debe
desarrollar un plan de instalación de versiones finales y su
correcta comunicación a los usuarios, verificando la
existencia de los manuales correspondientes que debe
acompañar un software:
• Actividad 1: Elaboración de los documentos de
despliegue (AEDD): Esta actividad el ingeniero en
despliegue (deployment Engineer) realiza las tareas
necesarias para que el índice llegue a sus clientes como
un producto finalizado. Las tareas son: Elaboración del
Plan de Restitución y Ejecutar el despliegue.
El método es una aproximación a los pasos y elementos
importantes que se deben tener en cuenta al momento de
crear un índice semántico en la IoT. Debe ser refinado y
revisado con cada una de las implementaciones que se
desarrollen del mismo.
VI. CASO DE ESTUDIO
El caso de estudio corresponde a la creación de un índice
semántico de problemas medioambientales. Para lo cual se
ha construido una ontología en dicha área, ésta ontología es
utilizada en la Fase 4, como elemento para clasificar la
información de los sensores de la IoT provistos por el
servidor de objetos Xively, para esto se utiliza el modelo
vectorial como función de similitud semántica con respecto
de los conceptos medioambientales y así se van realizando
las anotaciones semánticas relacionadas a cada objeto o
sensor encontrado en el índice construido. Este proceso se
hace en un primer tiempo llamado indexación y el resultado
final es un índice semántico de la IoT en el área
medioambiental.
Posteriormente, se construirá un motor de búsqueda
semántica de información medioambiental, el cual utilizará
este índice para resolver las consultas de los usuarios.
Cuando se hace la consulta, el motor almacena en una
ontología el perfil del usuario, ya sea por los conceptos de la
misma consulta o por una captura inicial de información.
Con este perfil y con la ayuda del índice construido en la
fase anterior se procede a buscar los objetos (sensores) que
permiten resolver la necesidad de información y si es
necesario se conecta en tiempo real al servidor de objetos
Xively, para extraer la información detallada de las
mediciones, pero ajustada al perfil del usuario y necesidad
específica de información.
VII. CONCLUSIONES Y TRABAJO FUTURO
La Web Semántica de los Objetos encierra en sí misma
más retos que los que maneja la web semántica actual, dado
que debe incorporar las mismas tecnologías semánticas, pero
adicionalmente sortear correctamente las restricciones
propias de la IoT. La propuesta de crear índices semánticos
en la IoT, guiado por un modelo semántico conceptual y
personalizado a las necesidades de información de los
usuarios, podría ser una solución que aporta adecuadamente
al aprovechamiento de la IoT.
La creación de un índice semántico en la IoT, requiere
tener en cuenta muchos aspectos de diseño e implementación
utilizando tecnologías semánticas y de la IoT que deben
armonizarse correctamente entre sí, para poder lograr un
equilibrio entre los objetivos del negocio y las capacidades
reales de los objetos. Así la propuesta de un método para la
creación de índices semánticos en la WoT, se convierte en
una buena herramienta que permite guiar a los
desarrolladores y los usuarios de la web en su
aprovechamiento de la IoT generando nuevos servicios de
conocimiento.
Es necesario desarrollar varias instancias del método
propuesto con el fin de afianzar y realimentar el mismo, para
que se convierta en una herramienta más estable y que
permita ganar confianza en su posibilidades.
VIII. AGRADECIMIENTOS
Se reconoce el apoyo al presente trabajo por parte del
proyecto VRI No. 3571 de la Universidad del Cauca y al
grupo STI de la Universidad Industrial de Santander.
IX. REFERENCIAS BIBLIOGRÁFICAS
[1] S. S. Mathew, Y. Atif, Q. Z. Sheng, and Z.
Maamar, "Web of things: Description, discovery
and integration," Internet of Things
(iThings/CPSCom), 2011 International Conference
on and 4th International Conference on Cyber,
Physical and Social Computing, pp. 9-15, 19-22
Oct. 2011 2011.
[2] C. Perera, A. Zaslavsky, P. Christen, and D.
Georgakopoulos, "Context Aware Computing for
The Internet of Things: A Survey," IEEE
Communications Surveys & Tutorials, 2013.
[3] A. Sheth, C. Henson, and S. S. Sahoo, "Semantic
Sensor Web," Internet Computing, IEEE, vol. 12,
pp. 78-83, 2008.
[4] B. Ostermaier, K. Römer, F. Mattern, M. Fahrmair,
and W. Kellerer, "A real-time search engine for the
web of things," 2010.
[5] T. Teixeira, S. Hachem, V. Issarny, and N.
Georgantas, "Service oriented middleware for the
internet of things: A perspective," in Towards a
Service-Based Internet 4th European Conference,
ServiceWave 2011, Poznan, Poland., 2011.
[6] W. Wei, S. De, R. Toenjes, E. Reetz, and K.
Moessner, "A Comprehensive Ontology for
Knowledge Representation in the Internet of
Things," in IEEE 11th International Conference
onTrust, Security and Privacy in Computing and
Communications (TrustCom-2012), 2012, pp.
1793-1798.
[7] C. Zhang, C. Cheng, and Y. Ji, "Architecture
design for social web of things," presented at the
Proceedings of the 1st International Workshop on
Context Discovery and Data Mining, Beijing,
China, 2012.
[8] D. M. Pezo, D. J. Perez, M. A. Niño-Zambrano, C.
A. C. Lozada, and G. A. Ramírez-González,
"Procedimiento para la Construcción de Índices
Semánticos Basados en Ontologías de Dominio
Específico," Entramado, vol. 9, p. 27, 2013.
[9] J. P. R. Hernández and G. A. Hernández,
"Indización y Búsqueda a través de Lucene.,"
Universidad Autónoma de Sinaloa, Instituto
Tecnológico de Orizaba, Veracruz, Sinaloa, 2008.
[10] M. Rada and D. I. Moldovan, "An Iterative
Approach to Word Sense Disambiguation,"
presented at the Proceedings of the Thirteenth
International Florida Artificial Intelligence
Research Society Conference Orlando, FL, 2000.
[11] D. Sánchez and A. Moreno, "Learning non-
taxonomic relationships from web documents for
domain ontology construction," Data & Knowledge
Engineering, vol. 64, pp. 600-623, 2008.
[12] M. Sanderson, "Word sense disambiguation and
information retrieval," PhD, Department of
Computing Science, University of Galsgow,
Glasgow, 1996.
[13] R. B. Yates and B. R. Neto, Modern Information
Retrieval. New York: ACM Press, 1999.