Prototipo de Ontologías, Base de Conocimientos y

Anuncio
Prototipo de Ontologías, Base de Conocimientos y Reglas
de Decisión para Agente Inteligente en Turismo
Model of Ontologies Prototype, Knowledge Base and
Decision Rules for Intelligent Agent in Tourism
ABSTRACT
In this work, it is shown the design and construction of the
prototype for the Ontology, applicable to the tourism, according
to the requirements of the project @ Lis. it is sought to show the
analysis, design and construction of a prototype of Ontologies,
focused als case of the situation of a tourist that for example, it
looks for a place with certain characteristics
One of the objectives that is pursued in the construction of these
prototypes, is that it is able to give a satisfactory answer to the
consultations carried out by an user.
The built prototypes, they can be potenciados according to the
environment to which are inserted, especially the one guided to
the tourism that he/she comes to complete the chapter of the
Intelligent Agents that is responsibility of the project @ LisUtem like Partner of the @ Lis-TechNet..
- The work allowed to generate a written document which can be
used as guide practice, of the theory of ontologies, being good as
technical orientation for the construction step to step of an
Ontology. This document, it can be supplemented for future
works where other tools are investigated to develop ontologies,
other languages of consultations for Ontologies and the
implementation of Ontologies in the Web Semantics.
- Finally, the work allowed to generate a prototype that reflects
the application practices from an Ontology to the solution of the
specific problems, and that it shows the way of an user's use in
answer to the presented questions.
RESUMEN
En este trabajo, se muestra el diseño y construcción del prototipo
para la Ontología, aplicable al turismo, de acuerdo a los
requisitos del proyecto @Lis. Se pretende mostrar el análisis,
diseño y construcción de un prototipo de Ontologías, enfocados
als caso de la situación de un turista que por ejemplo, busca un
lugar con ciertas características
Uno de los objetivos que se persigue en la construcción de estos
prototipos, es que sea capaz de entregar una respuesta
satisfactoria a las consultas realizadas por un usuario.
Los prototipos construidos, pueden ser potenciados según el
entorno al cual sean insertados, en especial la orientada al
turismo que viene a completar el capítulo de los Agentes
Inteligentes que es responsabilidad del proyecto @Lis-Utem
como Partner del @Lis-TechNet..
- El trabajo permitió generar un documento escrito el cual puede
ser utilizado como guía práctica, de la teoría de ontologías,
sirviendo como orientación técnica para la construcción paso a
paso de una Ontología. Dicho documento, puede ser
complementado para trabajos futuros en donde se investiguen
otras herramientas para desarrollar ontologías, otros lenguajes de
consultas para Ontologías y la implementación de Ontologías en
la Web Semántica.
- Finalmente, el trabajo permitió generar un prototipo que refleja
la aplicación practica de una Ontología a la solución de los
problemas específicos, y que muestra el modo de utilización de
un usuario en respuesta a las preguntas presentadas.
Keywords
Ontologies, Web Semantics, Intelligence Agents , Tourrism
Agency , Conceptuel Maps , knowledge map.
1.-
INTRODUCTION
. El sector turístico se caracteriza por ser un sector
altamente heterogéneo. Está integrado por una gran variedad de
empresas y organizaciones que operan en el mercado y que
ofrecen servicios muy diversos: de una parte, hay los
establecimientos de alojamiento turístico, de otra, las empresas
de transporte y de alquiler de vehículos, los intermediarios como
las agencias de viajes, tanto mayoristas como minoristas, y
finalmente, los proveedores de oferta complementaria Aunque
haya una gran diversidad de oferta de servicios de empresas
turísticas de una región, de cara al turista, el destino turístico
tiene que ofrecer una visión integrada como si se tratase de un
único producto, tratando de rentabilizar el destino y ofrecer el
mejor servicio en conjunto para el turista.
La mejor forma para que un usuario tenga una visión integrada
de todos los servicio que ofrece el destino turístico, es permitir
que el usuario planifique su viaje desde un único punto de
acceso. Dado el inmenso trabajo que implica preparar un viaje
(fijar preferencias de destinos, consultar horarios de vuelos
disponibles, plazas de alojamiento disponibles, posibles
itinerarios de visitas turísticas, horarios de acceso a servicios de
ocio, etc.), es deseable que el usuario disponga de un agente
inteligente que realice en su lugar esta tarea.
Los agentes inteligentes permitirán que el usuario especifique sus
preferencias y restricciones de viaje y que el agente acceda a los
servicios necesarios para preparar los detalles del viaje de forma
automática. La actividad del agente se prolongará, además,
durante la estancia del turista en la destinación turística,
ofreciendo un servicio de asistencia durante el viaje (avisando,
por ejemplo, de posibles cambios en horarios de servicios
ofreciendo nuevas alternativas).
La diferencia de este proyecto @Lis-TechNet respecto
a las restantes web site existentes sobre turismo, es que la
plataforma desarrollada tendrá agentes inteligentes, de forma tal
que esta labor tan larga y tediosa es la que realizarán los agentes
inteligentes. Tras un cuestionario de intereses y gustos del turista,
el agente busca en todas las bases de datos existentes y en cosa
de segundos, entrega un completo listado de alternativas, con sus
precios y días de factibilidad”.
Otra de las características de “@lis” será que incluirá toda
aquella infraestructura turística y hotelera no tradicional (Medias
y pequeñas empresas). Latinoamérica tiene su gran centro de
atracción para Europa lejos de los polos turísticos tradicionales.
Por ejemplo, San Pedro de Atacama. Allí no hay grandes hoteles,
pero sí residenciales y pensiones muy buenas y a precios
convenientes. Estas personas no están organizadas ni se publican
en guías turísticas. Agruparlos en una plataforma de internet, no
sólo será muy convenientes para ellos, sino también, muy
interesante para el turista que podrá hacer algo totalmente nuevo
y motivante
2. MODELO DESARROLLO TURISMO
Se desarrollaran ontologías especificas del turismo, que serán
entendidas por los agentes inteligentes, por lo cual estos podrán
rescatar conocimiento de un dominio turístico . La utilización de
ontologías de turismo permitirá a los agentes, además de
comunicarse con la base de conocimientos, comunicarse con
otros agentes permitiendo crearle al usuario turista un plan de
viaje según las características que este mismo desea. Es decir,
mediante la obtención de datos, recogidos por un agente
inteligente, tales como preferencias, origen y destino del viaje,
cantidad de días disponibles para viajar, o presupuesto para el
viaje, podremos entregarle un itinerario completo al usuario
desde que inicia su viaje hasta que lo finaliza, otorgando
información sobre transporte desde una ciudad a otra, lugares de
interés entre las ciudades de origen y destino, hospedaje
disponible en el lugar de interés, restaurantes, agencias que
ofrecen las actividades de su preferencia, etc.
Figura 1.- Modelo Usuario y Agentes Turismo
Debido a que en la actualidad los servicios móviles como
teléfonos celulares, PDA, Palms, etc., son una forma de conexión
con
el mundo
de las comunicaciones, también serán
programados agentes-usuarios móviles para que sean portables a
este tipo de dispositivos [agente programado por Francisco Reyes
y Elizabeth Soto, miembros del proyecto @lis].
Los agentes serán programados en Java-Jade. Por otro lado,
los agentes específicamente se crearan en Jade (Java Agent
DEvelopment Framework), que es una herramienta SMA,
emplea Java y esta basado en el estándar FIPA, emplea FIPAACL como lenguaje de comunicación.
Si bien, como podemos ver, al desarrollar nuestra base de
conocimientos con tecnología de agentes inteligentes,
beneficiamos enormemente a los usuarios turistas, nos
preguntamos que ocurre con los proveedores?
Como sabemos, los proveedores de servicios están cambiando
los servicios prestados en calidad, variedad y tarifas
constantemente. Entonces uno de los requerimientos para hacer
de esta una propuesta completa, es la posibilidad de permitir que
estos puedan actualizar sus datos en cualquier momento y de
manera remota.
Así como se trabajara con agentes que rescataran las
preferencias de los usuarios para entregarle la información que
realmente desea, existirán agentes-proveedores, denominados
AGP que serán utilizados por estos.
B ase d e
C o no ci
m i
_
e nto
A g e n te A G P
P ro v e e d o r
O n to lo g ia s
R e g la s
A g e n te
M o v ile s
A g e n te s U s u a rio s
U s u a rio s
Figura 2.- Modelo Aplicación Ontologías y Agente Turístico
3. Mapa Conceptual y Ontologías Turismo
En general, una ontología esta formada por los siguientes
componentes básicos :
(a) Conceptos, (b) Relaciones, (c) Funciones, (d) Instancias, (e.)
Reglas de restricción o axiomas
La construcción de cada uno de estos elementos, esta
estrechamente ligado a conceptos concernientes a la semántica y
la sintaxis, de los conceptos y mapas conceptuales y de su
significancia , utilizados en la actividad Turística, en relación con
los objetos designados, o el significado, la relación entre una
palabra y su significado.
En este proyecto , el modelo utiliza (a).- Conceptos de ontología
de turismo usando Mapas conceptuales ,(b).- Relaciones , desde
los conceptos semánticos de la ontología, se modelan usando una
base de conocimiento, (c,d).- Las Funciones e Instancias, entre
los casos de usos y se modelan como Predicado Antecedente –
Consecuente ,(e).- Reglas o Axiomas de decisión , como
funciones de Clases , Objetos, Herencias y reglas de decisión
Para desarrollar este prototipo de Ontología aplicada al
Turismo, fue necesario definir el dominio del conocimiento sobre
las diversas actividades del turismo y asociarlas a un modelo que
represente un tipo de dominio sobre los cuales están definidas las
ontologías . El objetivo es el de tener un dominio explícito sobre
el que establecer las relaciones didácticas e instruccionales entre
ellos, aplicados a las actividades en el área del turismo .
El estándar @Lis de Ontologías de Turismo es extenso, aquí
solo se muestran algunos dominios mas relevantes. Alguna de
las ontologías que fueron diseñadas para los requerimientos del
Proyecto @Lis-TechNet .
Itinerary Ontology
Esta ontología es muy importante porque esto modela
toda la información necesaria para el viajero para participar en
todas las actividades él desea, alojamientos para su permanencia,
formas de transporte y todas las conexiones necesarias para
moverse dentro de los destinos diferentes geográficos que él
visitará.
Reservation: Representa las reservas de servicios: alojamiento,
actividades y transporte. Esto tiene la información sobre la
identificación de reserva, del cliente asignado, las fechas de la
reserva y el servicio asociado.
Event: Represente los servicios: alojamiento, actividades y
transporte. Esto contiene la información sobre sitios de
alojamiento, suministro de actividades y conexiones de
transporte.
Accommodation Ontology
Esta ontología modela la información para opciones de
alojamiento diferentes ofreció a turistas.
Figura 3 Ontología Itinerarios
Itinerario: Representa el itinerario de un viaje para un turista.
Identificación de itinerario y el plan de viaje.
· PlanAction: Acciones a ser tomadas en un plan de viaje.
Información sobre fechas y sitios de origen y destinación,
reservas y acontecimientos s.
Constraint: Representa las preferencias y/o las restricciones del
usuario. Como el nombre de la restricción, operadores y valores.
State: Representa los estados de una acción. Esto contiene la
información sobre fechas y sitios de origen y destinación.
Event: Representa la descripción de los acontecimientos, por
ejemplo:
Actividad,
Alojamiento
y
Transporte.
CountryNotInThePlannerScope Esto tiene la información
sobre países.
PlanResults: Representa los resultados de los proyectos de viaje.
Esto tiene la información sobre proyectos de viaje.
ReservationConditionsChanged: Representa las condiciones de
una reserva cambiada. información sobre acciones cambiadas.
ValueNotAllowedForThisSlot: Representa el valor no tenido en
cuenta. Información de valores que no pueden ser cambiados.
Reservations Ontology
Esta ontología modela la información sobre reservas de
servicio incluyendo alojamientos, actividades y transporte.
Figura 4 Ontología Reservación
Figura 5 Ontología Acomodacion
Accommodation: Representa los tipos de sitios de
alojamiento,información sobre el nombre, la descripción y el tipo
de lugar de alojamiento.
AccommodationSite: Representa la descripción sobre un sitio de
alojamiento particular. información sobre el proveedor,
AccommodationSiteFacility: Representa las instalaciones
ofrecidas con este sitio de alojamiento. detalles de
instalaciones.
AccommodationPlace: Represente la descripción sobre un lugar
de alojamiento para una actividades en particular..
AccommodationPlaceFacility:
Representa
las
instalaciones ofrecidas en este lugar de alojamiento.
Transport Ontology
Esta ontología modela la información sobre las diferentes
opciones de transporte ofrecidas a los turistas que son usados
para moverse entre cada lugar geográfico o para la interconexión
entre ellos.
Figura 6 Ontología de Transporte
Transport: Representa los diferentes tipos de transporte (el taxi,
el autobús o el alquiler de coches, etc.). Esto contiene la
información sobre el transporte.
TransportAvailable: Representa el transporte ofrecido por el
proveedor. Esto contiene la información sobre el proveedor, el
transporte y programas de la salida.
Connection: Representa una conexión compuesta de transporte,
precio, duración, lugar y e salida y llegada.
GeographicPlaces Ontology
Base Conocimiento Transporte
En el caso del transporte, la tabla Transport que contiene
conceptos de transporte, nombre del transporte y el tipo de
transporte, es decir, acuático, terrestre o aéreo.
TransportAvailableSchedule, nos indica la información horaria
del transporte, TransportAvailable la capacidad del transporte,
si es publico o privado, si esta disponible en cualquier momento
del día, . Connection es la tabla que contiene los datos de
conexión del trasporte entre una provincia y otra.
Esta ontología modela la información de los diferentes sitios
geográficos (continentes, países, divisiones políticas). En este
momento esto contiene la información para las divisiones
políticas de México, Costa Rica, Chile y Cuba.
Figura 9.-
Figura 7.- Ontología de Lugares Geográficos
Base Conocimiento Transporte
Base Conocimiento Acomodación
El modelo siguiente pertenece a la relación de las tablas
pertenecientes al sector de alojamiento. En donde,
AccommodationSite guardamos el identificador del sitio donde
nos podremos alojar, es decir, hotel, cabaña, residencial, etc..
AccommodationPlace se encuentran los datos de las habitación
de este alojamiento, es decir, con cuantas camas cuenta, el precio
de la habitación, a que alojamiento pertenece. En
AccommodatioPlaceFacility se describen las facilidades de la
habitación o recamara. En Bed detallamos las características de
las camas de la habitación, AccommodationType describe el tipo
de lugar de alojamiento que es, si es hotel, motel, cabaña, etc.;
Continent: Representa los diferentes continentes del mundo.
Esto tiene la información sobre el nombre y coordenadas
geográficas.
Country: Representa los países. Esto tiene la información sobre
el nombre, la capital, el área, la población, la lengua
oficial, la religión oficial, el clima y coordenadas.
FirstDivision: Representa la división primaria política de cada
país. Esto contiene la información como el nombre y
coordenadas geográficas.
SecondDivision: Representa la división secundaria política de
cada país. Esto tiene la información sobre el nombre, el clima,
coordenadas geográficas etcétera,.
4. Base de Conocimientos y Ontologías
En general, una ontología esta formada por :(a) Conceptos, (b)
Relaciones, (c) Funciones, (d) Instancias, (e.) Reglas de
restricción o axiomas. La construcción de cada uno de estos
elementos, esta estrechamente ligado a conceptos
de la
semántica y de los mapas conceptuales y se estructura como
una base de conocimientos con un total de 41 tablas , de
sectores tales como Alojamiento (Acomodación), Actividades ;
Transporte (Transport), ; Proveedores (Provider), Aeropuertos
(Airport), etc
Figura 10.- Base Conocimiento Acomodación
Base Conocimiento Lugares Geográficos
En GeographicPlace esta las tablas de CountryInfo con detalles
de cada
país, como ciudades principales, provincias;
FirstDivision y SecondDivision detalles e identificador de
regiones y provincias respectivamente; Continent, información
del continente, como nombre, latitud y longitud; , como capital,
clima, longitud, latitud, lenguaje, cantidad de población
ZONA
+Nombre_Zona : string = Norte
LUGAR
+nombre_lugar : string = Iquique
+Tipo_Transporte : string = Bus
ASENTAMIENTO
ALREDEDORES
INTERES
+nombre_lugar : LUGAR = Iquique
+Nom_alrededor : string = Antofagasta
+nombre_lugar : LUGAR = Iquique
COMIDA
UTILIDAD
+Clasificacion : string = Restaurant
+Nombre : string = Hospital del niño
ENTRETENCION
DEPORTIVO
+Clasificacion : string = Casino
+Clasificacion : string = Deporte Extremo
ALOJAMIENTO
+Clasificacion : string = Hotel
+Clasificacion : string = Residencial
Figura 13 .Figura 13.- Base Conocimiento Lugares Geográficos
5. Las Funciones, Relaciones Instancias de
Decisión en las actividades Turísticas
. El Dominio de la actividad Turística y de la Semántica en la
Ontologías, permite utilizar tres tipos de relaciones: basicas.:
(a).- Turista busca una actividad por su nombre genérico y no
especifica tipo de actividad,, en este caso será una función de
Hiperonimia con relación de inclusión , un conjunto de palabras
puede estar englobado dentro de otra palabra que las incluya a
todas.
(b).- Turista desea organizar sus actividades como una secuencia
de visitas a lugares de interés , en este caso será una
Hiperonimia con relación Lineal, en la cual se establecen
relaciones de sucesión.
Se genera un mapa
UML con términos y relaciones
representativos del dominio con las clases y subclases definidas,
además de los Slots de la estructura de clase, y la herencia
Para un Turista que desea visitar una cuidad especifica , se
establece una Relación de Instancias como una función de
Hiperonimia con relación de inclusión , la clase Ciudades, en la
Ontologías lugares Geográficos, Contiene las descripción de
ciudades por regiones, provincias y por nombre propio .
CULTURA
TURISTICO
+Clasificacion : string = Museo
+Clasificacion : string = Playa
Flujo UML de Query para visitar Iquique.
Para un turista que desea “ En donde puedo encontrar un lugar
para comer distinto a un Restaurante? “, corresponde a una
Hiperonimia con relación Lineal, por lo cual las búsqueda será
un recorrido de las clases relacionada
En este caso la búsqueda dentro de la estructura de la Ontología,
es desde abajo hacia arriba, ya que como filtro se está
preguntando por la Clase “Comida”, en el último nivel.
A continuación se muestra el esquema de esta búsqueda dentro
de la Ontología, en donde los números representan el orden de la
búsqueda.
3
ZONA
+Nombre_Zona : string = Central
LUGAR
2
+nombre_lugar : string = Santiago
1
ASENTAMIENTO
+nombre_lugar : LUGAR = Santiago
COMIDA
+Clasificacion : string = Comida China
Figura 14.- Flujo UML de Query r distinto restaurante .
a.1) Caso de Uso Ideal
Nombre:
Guía Turística
Descripción : Permite Realizar consultas para que un
extranjero (llamado Turista), pueda ubicarse en el país
Actores: Turista
Precondiciones: Usuario desea consultar.
Flujo Normal:
El usuario consulta por un destino que reúna ciertas
características de acuerdo a datos turísticos que él proporcione.
Los datos pueden ser, Tipo de zona, transporte a utilizar, clima,
distancia, intereses, Flora, Fauna, etc.
Tabla 1.- Caso de uso Turista desea visitar cuidad Iquique.
6.
REGLAS Y AXIOMAS DE DECISIÓN.
Una vez establecidas las Ontologías, La Base del Conocimiento
y la Funciones e Instancias que establecen el dominio, la
represtación y s acciones de caso de uso de un Turista se deben
definir las reglas y los axiomas que permitirán la búsqueda del
conocimiento que permitan establecer un Voucher Turístico a
ser entregado al usuario
Caso 1 Constraints de Ontologia Itinerario
La clase Constraint de la ontología Itinerary posee 14 subclases
y dos propiedades que heredan todas sus subclases:
statusConstraint tipo symbol, y tiene los valores: a=TRUE.,
b=FALSE., cc= UNKNOWN. strength
En el proyecto se utilizaron la descripción en Prosa de la
ontologías y decisiones por cada caso de uso y desde allí poder
establecerlos parámetros de la Programación Se describirán
algunas de las reglas construidas según los datos ingresados por
el Turista, desde la interfaz de un dispositivo móvil tipo PA
1. . ID del Turista (usuario) y Países a los que desea viajar.
2. Las fechas de salida y llegada, o, la fecha de salida y los días
de vacaciones, o, la fecha de llegada y los días de vacaciones, y
dias disponibles a utilizar por contingencias .
3. Cantidad de personas que viajan .y Total de dinero disponible
para gastar, gastos factibles por transporte.
4. La calidad de cada servicio ofrecido (un porcentaje):
hospedaje, transporte y actividades según criterio turista
5. Los lugares de interés del turista y los tipos de actividad, y el
interés en cada una de los tipos de actividades .
SubClase
Propiedad
Countries
Country Names
First_Possible_ Day
date
Last_Possible_ Day
date
Number_Of_ Travellers
value
Price_Constraint
Value
Quality_Of_Accom
value
Quality_Of_ Transport
value
Quality_Of_ Activity
value
Place Name
Interest_Of_ Place
valuation
Interest_Of_
ActivityType
Activity
TypeName
valuation
Tipos
geographicPlaces:y
date
date
double (int)
double
double
double
double
activities:Place-Interest
fanatic, _interested,
indiferent, not_interested
activities:ActivityType
fanatic, _interested,
indiferent, not_interested
Tabla 2.- Modelo de Clases y Axiomas : Constrains Intenirario
Caso 2. Un tipo de Reglas en Prosa
Regla #6: Obtiene una lista de los transportes de un lugar
geográfico (país:1DP:2DP)
* Parámetros que recibe:[lugar],[primer día posible.],[último día
posible.],[número de viajeros.],[calidad pprecio del transporte..]
** Si lugar == transporte.lugar AND transporte.fecha
ENTRE(primer día posible, último día posible) AND calidad del
transporte >= transporte.calidad AND precio transporte >
transporte.precio
AND
número
de
viajeros
<=
transporte.disponibles, entonces:
*** Agregar a lista de transportes disponibles = transporte.
7.DECISIÓN y TIPO REGLAS UTILIZADA
Se distinguen tres tipos de reglas. Las reglas de interfase extraen
información del itinerario enviado . Las reglas de selección planificación, escogen un proveedor de actividad, hospedaje o
transporte, según algunos criterios. Las reglas de control se
utilizan para administrar el envío de mensajes entre agentes
Reglas de Interfase .-Las reglas de interfase se encargan
básicamente de dos acciones: extraer y almacenar información.
Al inicio del proceso extraerán del árbol que representa los
eventos por hacer del itinerario, las actividades, servicios de
transporte u hospedaje etiquetados como “To do”.
Reglas de Selección-Planificación.-Este tipo de reglas toma
solicitudes específicas para una necesidad de un servicio
(actividad, transporte, hospedaje) y realizan tareas
específicamente para lograr satisfacer estas solicitudes con
reservaciones apropiadas.
Reglas de Control.-Estas reglas son necesarias para realizar
tareas secundarias a la planificación en sí. Estas reglas permiten
el intercambio de mensajes entre agentes para la reservación o
consultas
A continuación se describen las reglas necesarias para extraer,
planificar y almacenar eventos de un itinerario
Tipo
Nombre
Descripción
básica
Regla de interfase
eventExtraction
De plan del itinerario y extrae eventos
simples o compuestos a variable status “To
do”
Condiciones
El Itinerario r en memoria de trabajo (assert)
antes de la extracción de los eventos.
Consecuencias - Recorrer el árbol y hacerle un assert - El
itinerario a la memoria
Tabla 3. Reglas de Interfase
Tipo
Nombre
Descripción
básica
Regla de selección-planificación
serviceRequestCreation
Evento simple de la memoria de trabajo
(actividad, hospedaje transporte) hace una
solicitud que satisfaga el evento.
Condiciones
Un evento simple debe estar en la memoria
de trabajo.
Consecuencia
Solicitud creada de acuerdo a evento simple
con estado de pendiente.
-Evento simple eliminado de memoria
retract
Tabla 4. Regla de selección-planificación
Tipo
Nombre
Descripción
básica
Regla de control
possibleServiceQuery
Solicitud pendiente ena memoria y solicita
la información relativa y posibles
alternativas
Condiciones
Una solicitud pendiente debe estar en la
memoria de trabajo.
Consecuencia
-Lista de soluciones , valor de solicitud
cambia de estado pendiente respuesta.
Tabla 5. Regla de control
El paso siguiente es la codificación en un lenguaje de
programación de estas ontologías y de las reglas de desicion , en
este proyecto se utilizo Java-Jena para ontologías, Jade-Leap
para programar los agentes y Drools para las reglas de decisión .
Se muestra a continuación un extracto de código de una
ontología y de su regla de decisión utilizada, con el Itinerario
tiene eventos de tipos transporte etiquetados como pendientes de
seleccionar
Reglas de Transporte
Regla serviceRequestCreationTransport
<rule name="serviceRequestCreationTransport" sal="10">
<parameter identifier="toProcess">
<class>org.alis.technet.ontology.itinerary.Plan</class>
</parameter>
<java:condition>
toProcess.getPlanAction().getRelatedEvent().getType().equals("
TransportEvent") </java:condition>
<java:condition>
toProcess.getPlanAction().getRelatedEvent().getStatus().equals("
Todo") </java:condition>
<java:consequence>
TransportEvent transportEvent =
toProcess.getPlanAction().getRelatedEvent();
Request request = new Request(transportEvent, “pendiente”);
drools.assert(request); drools.retract(toProcess);
</java:consequence> </rule>
8.- PRTOTIPO Y APLICACIÓN .Se Presenta el desarrollo real de una implementación de Agentes
Inteligentes sobre dispositivos Móviles tipo PDA utilizando jadeLeap estándar FIPA, la cual permitirá a un agente-usuario
conectado en forma inalámbrica a Internet, mediante WI-FI,
GPRS u otras, acceder a la base de conocimiento turístico de
Chile estándar @lis para dar respuestas a las preferencias de un
agente-usuario, el cual obtendrá como respuesta, un paquete
turístico realizado a la medida, lo cual permitirá evitar al turista,
molestas búsquedas de información, entregando de esta manera
un sistema de gran calidad.
La ontología corresponde al conocimiento del agente, es decir,
un lenguaje común, que permite a los agentes conversar y
entenderse sobre algún tema en específico. La Ontología
contiene tanto los vocabularios como los predicados del dominio
Turístico, en este caso la Ontología Turística, esta ontología
permitirá interactuar con la base de conocimientos @lis.
Cuando un turista activa su sistemas de Agentes de Turismo
desde su dispositivo móvil PDA, se conecta a la Red de Agentes
inteligentes, los cuales conecta el Personal Agents PA con el
agente Global de Planificación Global Planner GPA , el cual se
conecta con cada Agentes Planificador Local Local Planner
LPA, los cuales están ubicados en cada País y contienen sus
propias ontologías de los servicios de turismo que ofrece en esa
localidad
Figura 17.- Caso de uso búsqueda Hoteles
Estas preferencias del turista se ingresan al la interfaz del
agentes Personal que el turista tiene en su PDA , el cual captura
el origen y el destino del viaje, dentro de un determinado país ya
sea Chile, México y Costa Rica, una vez que esto ha ocurrido, le
transmite esta información a la Agencia a través de la Ontología.
Figura 15.- Red de Agentes de Turismo
El modelo de conexión consiste básicamente en una Agencia que
contiene la base de conocimiento de Turismo, ubicada en Chile
en el servidor de x-opennet.utem.cl, usando el estándar Alis, en
esta Agencia, vive un Agente Inteligente, capaz de responder las
consultas que realice el usuario desde su PDA, en la cual se
encuentra un Agente bajo Jade-Leap, que captura las consultas, y
las envía a la Agencia (PC), la cual devolverá la respuesta,
apreciándose gráficamente en el dispositivo móvil.
El usuario Turista , inicia la selección de preferencias para su
viaje turístico , ingresados sus preferencia y esperando un
Voucher con la planificación del viaje especificado
Caso de uso para la búsqueda de Hoteles , en gráfico siguiente :
Figura 18.- Entrada de Preferencias turista en la PDA
Este Agente Personal, que lleva las preferencias del Turista se
conecta contados los agentes de lacada País y los Proveedores de
servicios turísticos , cada uno de los cuales tiene su propia
Ontologías según sus propias realidades y realiza las consultas
entre ellas
Estos
Agentes
inician toda una búsqueda, dialogo y
transacciones entre las ontologías y las bases de conocimiento
según las reglas de decisión para estructurar el voucher de la
planificación del viaje solicitado
Figura 19.-
diagrama UML de dialogo y búsqueda en ontología
En la consola del Dispositivo Móvil PDA, del turista podemos
observar como el agente captura las preferencias del usuario.
Figura 22 .- Primera opción de itinerarios entregada
Se presentan al turista todo las opciones de los agentes que
encontraron
preferencias de turismo según las opciones
personales del turista y se espera su refinamiento:
Figura 20 . -Captura de Preferencia en Agente Personal Usuario
Estando todos los Agente GP, PA y LPA conectados y
dialogando en búsqueda de la decisión para la planificación del
viaje , la red completa de agente esta conectada, como se muestra
en la figura que describe la red completa de Agentes de Turismo
funcionando
Figura 23 .- Primera opción de itinerarios entregada
Si el turista acepta el itinerario propuesta , se muestra en su PDA
el Voucher final del viaje turístico y de comunica la aceptación a
todas las base de conocimiento de todos los agentes LPA
conectados y asume el Global Planner
Figura 21.- Red de Agentes y Ontologías en Operación
Finalmente se logra obtener una planificación inicial y se envía al
la PDA de turista para que tome decisiones y puede refinar
pidiendo otra búsqueda si lo requiere .
Figura 24.- Voucher final de l viaje turístico planificado
CONCLUSION .Durante el proceso de construcción de los prototipos de
Ontologías aplicadas al área del turismo, se han obtenido las
siguientes conclusiones:
- Se concluye que definido un dominio para las áreas de
aplicación practicas mencionadas, es posible generar una
Ontología que abarque todo el conocimiento para dicho dominio,
lo anterior implica un trabajo complejo, con una gran demanda
de recursos de personal calificado como lingüistas,
programadores, hardware y software.
- De los prototipos de Ontologías aplicadas al área del turismo
se comprobó que una ontología difiere de otra (orientadas a un
mismo dominio) si está construida con distintas metodologías,
esto es debido a que cada metodología está diseñada con pasos
distintos, es decir, algunas metodologías potencian el dominio,
otras los conceptos (conocimiento), consultas, orden de los
conceptos, mantención y reutilización de Ontologías existentes.
- Se comprueba que al generar una estructura de Ontología con
ciertos niveles definidos, esta puede ser reutilizada en distintos
dominios, con la salvedad de que los conceptos que se utilicen
determinaran el grado de especificación de la ontología.
- Dado dos Ontologías de distinto dominio, desarrolladas bajo la
misma estructura, al realizar consultas sobre un nodo X
perteneciente a la Ontología uno y un nodo X perteneciente a la
ontología dos, se generan recorridos de búsqueda similares
- Para que una ontología sea útil, es necesario llevarla a un
código legible por el medio en el cual será insertada, lo cual
implica utilizar un lenguaje de programación que sea capaz de
proveer las Interfaces de software, para que dialoguen con la
ontología y con la aplicación del usuario.
- En el trabajo completo, que es fuente de este articulo, , se
cumple con el objetivo planteado, en el cual se logró obtener
como producto final los prototipos de Ontologías orientado a
Turismo, los cuales fueron abordados en tres fases generales,
diseño, desarrollo y prueba.
- En la fase de diseño, se concluye que la generación de
conceptos, relaciones y axiomas, es la base para la generación de
una ontología, siendo a su vez la parte más compleja de
concretar. Se recomienda que antes de generar la estructura de la
Ontología, realizar el modelamiento en UML para acotar los
posibles casos de uso de esta.
- En la fase de desarrollo, se concluye que, la implementación del
diseño definido para cada prototipo, a través de las herramientas,
Jena y Protegé, difieren al momento de ser generados, debido a
que ambas herramientas generadoras de ontologías trabajan en
planos diferentes Protegé en modalidad de Slots y Jena a nivel
sintáctico generando directamente códigos.
- En la fase de pruebas, se concluye, que una manera efectiva de
validar y probar la consistencia de una Ontología, es a través de
la implementación y ejecución de consultas específicas sobre los
conceptos, en donde las respuestas que se generen sean capaces
de solucionar algún problema, como por ejemplo en el caso de un
turista que desee obtener un lugar de una zona determinada, con
un clima, flora y fauna según lo requiera.
- Los prototipos construidos, pueden ser potenciados según el
entorno al cual sean insertados, en especial la orientada al
turismo que viene a completar el capítulo de los Agentes
Inteligentes que es responsabilidad del proyecto @Lis-Utem
como Partner del @Lis-TechNet, que puede ser complementado
para trabajos futuros en donde se investiguen otras herramientas
para desarrollar ontologías, otros lenguajes de consultas para
Ontologías y la implementación de Ontologías en la Web
Semántica.
- Finalmente, el trabajo permitió generar un prototipo que refleja
la aplicación practica de una Ontología a la solución de los
problemas específicos, y que muestra el modo de utilización de
un usuario en respuesta a las preguntas presentadas.
AGRADECIMIENTOS .
Los autores, , desarrollaron este trabajo como integrantes del
Proyecto @Lis de la Comunidad Europea y que está incorporado
al proyecto @LIS Technology Net Project, y al proyecto @LISUtem del Departamento de Informatica y Computación dela
Universidad Tecnológica Metropolitana de Santiago de Chile por
su colaboración y participación en el area de : Advanced
Technology Demostration Network for Education and Cultural
Applications in Europe and Latin America Este proyecto forma
parte del programa
@LIS, de la Comunidad Europea
desarrollado como un prototipo de Agentes de Turismo en un
ambiente de experimentación que abarca universidades de siete
países que conforman el consorcio de este proyecto (España,
Reino Unido, Italia, Cuba, Costa Rica Chile, y México).
REFERENCIAS.
[1]. S. Willmott,U. Cortes, L. Ceccaroni, W: Barbera, “ @Lis
TechNet: Demostración de Tecnologías Avanzadas para
Educación y Aplicaciones Culturales en Europa y América
Latina” , Ingeniería la Día Año 4 Nº 1 ISSN: 0718-073X
Universidad Central Chile
[2].-G. Marin, V. Lara “ Creación de un Demostrador Turístico
y de Patrimonio Cultural Latinoamericano Utilizando Agentes
Inteligentes “Ingeniería la Día Año 4 Nº 1 ISSN: 0718-073X
Universidad Central Chile
[3].- J. Coronel, M. Sanhueza, M. Castillo, H. Latorre “ Una
Propuesta de un modelo de implementación de un Sistema
Mulriagente aplicado a la Actividad Turística “ Ingeniería la Día
Año 4 Nº 1 ISSN: 0718-073X Universidad Central Chile
[4].- Casasola.E, Ramirez K. “ An Applications of OWL for
developing a Demo of Turiristaffering based on Intelligents
Agents” . Ingeniera la dia año 3 Nº2 ISSN: 0718-073X
Universidad Central Chile
[5].- Juan Pavón Mestras, 2003-2005. "Intelligent Agents.
Communication among Agents". Department of Computer
Systems and Programming. University Of Alcalá de Henares "
[6].- Cortez. C , Latorre .H , 2005. "Programming of Systems
MultiAgentes in the Framework standard low JADE FIPA".
Department of Computer Science. Metropolitan Technological
University.
[7] Gruber T. R., 1993, “A Translation Approach to Portable
Ontology Specifications. Knowledge Acquisition”, 5(2), 199220.
[8] Harispe K., and Latorre H. 2005 “ Estudio y Análisis de
Implementación de Agentes Roboticos “ Reporte Interno
Proyecto @Lis TechNet y @Lis Utem VTTE, Universidad
Tecnológica Metropolitana, Santiago, Chile.
[9] Harispe K.,
Añasco D. and Reyes F.
2005,
“Implementación de un prototipo de Agentes Inteligentes sobre
dispositivos Móviles PDA“ Reporte Interno Proyecto @Lis
TechNet y @Lis Utem
VTTE, Universidad Tecnológica
Metropolitana, Santiago, Chile.
Descargar