Está en la página 1de 10

Utilizacin de Agentes Inteligentes para la Construccin de Sistemas de Informacin Aplicados al Turismo

Pedro Cuesta Morales1, Juan M. Corchado Rodrguez1 Dpto. Lenguajes y Sistemas Informticos, E.U.I.T. en Informtica de Gestin Universidad de Vigo {pcuesta,corchado}@ei.uvigo.es

Resumen: Internet y las Tecnologas de la Informacin se estn convirtiendo en


herramientas bsicas. Los agentes inteligentes facilitan la construccin de sistemas de informacin distribuidos que ayudan al usuario en la realizacin de tareas complejas. En este artculo se presentan los aspectos bsicos que caracterizan a los agentes inteligentes y se muestra un ejemplo concreto, un agente meteorolgico, encargado de la captura en tiempo real de datos meteorolgicos y su publicacin para que cualquier usuario tenga acceso a ellos. Se describe la arquitectura empleada para su implementacin y su utilidad para el sector turstico.

Palabras Clave: Internet, tecnologas de la informacin, sistemas de informacin


distribuidos, web, agentes inteligentes, sistemas multiagente, meteorologa.

1. Introduccin

Hoy en da estamos asistiendo a una autntica revolucin. Los avances en las comunicaciones y en las tecnologas de la informacin estn acercando la informacin al usuario final, as como facilitando su procesamiento. Este hecho hace que se estn convirtiendo en herramientas bsicas, que hacen que cada vez cobre ms fuerza la idea de que nos encontramos inmersos en una "sociedad de la informacin".

Uno de los cambios radicales, tiene que ver con el soporte y canal de transmisin de la informacin. Internet y la Tecnologa Web, han conseguido que el usuario est familiarizado con informacin hipermedia, incluyendo texto, imgenes, sonido, animaciones, etc. Adems cualquier ordenador conectado a la red constituye una fuente fcil de entrada de informacin (para planificar unas vacaciones ya no es necesario acudir a la oficina de una agencia de viajes), que hace que sta llegue "al instante" al destinatario (en cuanto una compaa area informa que quedan plazas disponibles en un vuelo, cabe la posibilidad de realizar la reserva).

Pero no todo son ventajas, asociado al gran volumen de informacin disponible ha surgido el problema de la dificultad de localizacin de la informacin. Aunque la utilizacin de los buscadores (Yahoo!, AltaVista, etc.) suple en parte esta deficiencia, la cantidad de informacin es tal, que se necesitan sistemas que permitan una comunicacin fcil con el usuario y que ayuden en su filtrado para obtener los resultados deseados. Con este objetivo han surgido los denominados Agentes Inteligentes (uno de los campos en el que se aplican es ste), que se encargan de asistir al usuario de Internet en la realizacin de tareas concretas, como pueden ser la navegacin, bsqueda y filtrado de informacin, o la organizacin del correo electrnico. Un ejemplo tpico de los cuales sera un agente dedicado a buscar en la red la mejor oferta para comprar un billete de avin determinado, cuyo funcionamiento consiste en acceder a diferentes compaas areas para comprobar el precio del billete en cuestin.

En general los agentes inteligentes se estn utilizando en una gran variedad de aplicaciones, debido a las ventajas sustanciales que ofrecen, entre las que destaca la naturalidad del modelo para conceptualizar diferentes tipos de software.

De la misma manera, tambin estn tomando relevancia los Sistemas Multiagente, que representan una nueva forma de analizar, disear e implementar sistemas software complejos. Un sistema multiagente est formado por diferentes agentes autnomos que interactan entre s, para de este modo lograr la funcionalidad deseada. Cada agente realiza una serie de tareas, y se comunica con otros agentes para intercambiar informacin o demandar algn servicio. Tanto los agentes como los sistemas multiagente constituyen actualmente campos de investigacin en pleno desarrollo, a los que cada vez se dedican ms recursos.

El objetivo bsico de este artculo es presentar los aspectos bsicos de los agentes inteligentes como herramienta para la construccin de sistemas de informacin y su aplicacin al sector Turstico. Para ello, inicialmente se describen las bases tericas de los agentes (apartado 2), a continuacin se muestra un ejemplo concreto, un agente meteorolgico (apartado 3), encargado de la captura en tiempo real de datos meteorolgicos (lluvia, temperatura, velocidad del viento, presin atmosfrica, etc.) y su publicacin, para que cualquier usuario (por ejemplo el empleado de una agencia de viajes) tenga acceso a los mismos. Se describe la arquitectura empleada para la construccin del agente (apartado 4) y su aplicacin al sector turstico (apartado 5), para finalizar con una serie de conclusiones al respecto (apartado 6).

2. Agentes inteligentes
La definicin de agente no es una tarea fcil, por el contrario, ha sido un aspecto que ha suscitado un amplio debate en la comunidad cientfica (Franklin et al., 1996). Un agente es un sistema informtico, situado en algn entorno, dentro del cual es capaz de realizar acciones de forma autnoma y flexible para as cumplir sus objetivos. Un agente recibe entradas sensibles de su entorno y a la vez ejecuta acciones que pueden cambiar este entorno (Russell et al., 1995).

Es ampliamente aceptada la caracterizacin de un agente (Woldridge et al., 1995) como aquel sistema informtico que satisface las siguientes propiedades (las cuatro primeras se consideran bsicas y el resto opcionales): Autonoma: tiene la capacidad de actuar sin intervencin humana directa o de otros

agentes. Sociabilidad: capacidad de interaccionar con otros agentes, utilizando como medio algn lenguaje de comunicacin entre agentes. Reactividad: un agente est inmerso en un determinado entorno del que percibe estmulos y ante los que debe reaccionar en un tiempo preestablecido. Iniciativa: un agente no slo debe reaccionar a los cambios que se produzcan en su entorno, sino que tiene que tener un carcter emprendedor y tomar la iniciativa para actuar guiado por los objetivos que debe de satisfacer. Movilidad: habilidad de un agente de trasladarse en una red de comunicacin informtica. Veracidad: propiedad por la que un agente no comunica informacin falsa intencionadamente. Benevolencia: un agente no tiene objetivos contradictorios y siempre intenta realizar la tarea que se le solicita. Racionalidad: un agente tiene unos objetivos especficos y siempre intenta llevarlos a cabo.

Para algunos investigadores el trmino agente tiene una caracterizacin ms estricta, para que un sistema informtico pueda considerarse como un agente tiene que modelarse e implementarse usando aspectos que usualmente se aplican a los humanos. As, Shoham define

un agente como una entidad cuyo estado est formado por componentes mentales como creencias, capacidades, elecciones y compromisos. Estados que determina las acciones que llevan a cabo los agentes y qu estn afectados por los mensajes que reciben (Shoham, 1993).

Para otros autores un agente, en este sentido estricto, significara un sistema que es capaz de aprender de la experiencia (Russell et al., 1995). El diseo de un agente debe basarse en especificar qu tipo de accin deber emprender como respuesta a una determinada secuencia de percepciones. Si las acciones que emprende el agente se basan exclusivamente en un conocimiento integrado, con lo que se hace caso omiso de sus percepciones, el agente no tiene autonoma. La conducta de un agente se basa tanto en su propia experiencia como en el conocimiento integrado que sirve para construir el agente para el ambiente especifico en el cual va a operar. Un sistema ser autnomo en la medida en que su conducta est definida por su propia experiencia. Es por tanto razonable dotar a un agente con ciertos conocimientos iniciales y de capacidad para aprender.

Para la implementacin de agentes se pueden utilizar lenguajes de propsito general, entre los que cabe destacar los orientados a objetos, debido al cierto paralelismo entre objetos y agentes, como C++ o Java, o lenguajes especficos de agentes, de los que han aparecido numerosas propuestas en los ltimos aos, como Agent0, AgentK, Placa, Radl, Lalo, etc. Los lenguajes de agentes han de permitir definir la estructura, estado y comportamiento de cada agente.

3. Agente meteorolgico
La primera tarea del agente consiste en capturar en tiempo real una serie de datos meteorolgicos, para lo que utiliza un autmata que tiene conectados una serie de sensores, uno por cada variable climtica, y que est situado en el lugar determinado del cual vamos a tener la correspondiente informacin climtica, en nuestro caso el edificio en el que nos encontramos. El sistema est configurado de tal forma que el autmata lee en intervalos de 5 minutos los datos suministrados por los sensores.

Adems del control de entrada, el agente es el encargado de garantizar la integridad y fiabilidad de los datos, ya que podra suceder que los sensores pierdan con el tiempo la

calibracin y realicen capturas incorrectas, o se incorpore ruido en la transmisin. El agente detecta cualquier situacin anmala y acta en consecuencia para intentar resolver el problema. Por ejemplo si un sensor ha producido un valor fuera de rango, el agente acta de la manera ms "oportuna" posible, que supone la comunicacin con el supervisor del sistema para informarle de la captura incorrecta (sensor que la producido, valor capturado, fecha y hora en la que se ha tenido lugar). Lo ideal sera que el agente solicitase una nueva lectura de ese dato para comprobar el error, o incluso que dispusiese de mecanismos para corregirlo de manera autnoma, para lo que debera estar "capacitado" para calibrar el sensor.

Otra tarea importante del agente es comunicarse con el usuario para proporcionarle la informacin climtica que este demanda. En este sentido el agente dispone de los ltimos datos capturados (se renuevan cada 5 minutos), as como cualquier otro valor anterior. La comunicacin con el usuario se establece utilizando como interface pginas web (http://www.ei.uvigo.es/sicome/), desde donde se realiza una peticin al agente para que ste suministre la informacin deseada.

Por ltimo, y no por ello menos importante, es misin del agente controlar el correcto funcionamiento del sistema, dentro de sus capacidades de actuacin. Por ejemplo si se produce un fallo en la energa elctrica y el autmata que captura los datos no se restaura adecuadamente, el agente tiene que actuar en consecuencia, aunque sta est limitada a informar al supervisor que no esta recibiendo los datos.

Si repasamos algunas de las propiedades que caracterizan a cualquier agente, podemos comprobar como el agente meteorolgico: Es autnomo, funciona independientemente guiado por sus objetivos diseo, dispone

de un control sobre sus acciones y su estado interno. Es sociable, se comunica con el usuario a travs de una interface web. Es reactivo, recibe datos meteorolgicos y reacciona ante eventos que cambian su entorno, como valores fuera de rango o errores fsicos como una cada de tensin. Es racional, en el sentido de que incorpora conocimiento, que le permite actuar guiado por sus objetivos y as controlar la captura de datos, la comunicacin con el usuario y el correcto funcionamiento del sistema (el agente sera interesante que tuviera la capacidad de aprender de su experiencia.).

4. Arquitectura
La arquitectura de un agente define los mecanismos que permiten interconectar los componentes tanto software como hardware, que hacen que el agente se comporte como tal. Un hecho evidente hoy en da, en este sentido, es que existen infinidad de propuestas, casi tantas como equipos de investigacin trabajando en el tema. Cada arquitectura particular para construir agentes, especifica como se descompone en un conjunto de mdulos que interactan entre s para lograr la funcionalidad requerida. Un aspecto bsico que diferencia una arquitectura de otra es el mtodo de descomposicin del agente en tareas particulares.

Las arquitecturas se puede clasificar en funcin del modelo de razonamiento que utilicen (Wooldridge et al. 1995): Deliberativas: utilizan modelos de representacin simblica del conocimiento y suelen

estar basadas en la teora clsica de planificacin. Un ejemplo lo constituyen los agentes intencionales, como los basados en el modelo BDI (Rao et al., 1995), que utilizan sus creencias, deseos e intenciones para razonar. Reactivas: caracterizadas por no tener como modelo central de razonamiento un modelo simblico. Como por ejemplo las arquitecturas de subsuncin (Brooks 1991), que manejan jerarquas de tareas que definen el comportamiento del agente. Hbridas: basadas en la opinin de que para la construccin de agentes no es del todo acertado utilizar una arquitectura totalmente deliberativa o totalmente reactiva, y proponen combinar aspectos de ambos modelos, ejemplos de estas arquitecturas son TouringMachines (Ferguson, 1992) e Interrap (Mller, 1997).

El agente que aqu se presenta mantiene una estructura muy simple que incorpora elementos tpicos de un modelo reactivo. El agente est provisto de cuatro mdulos que realizan unas tareas prefijadas en forma de reglas (Russell et al., 1995). Cada mdulo realiza una serie de operaciones en funcin de estmulos procedentes de otros mdulos o del medio. Cada mdulo tiene definidas una serie de tareas que determinan su comportamiento y la relacin de subordinacin o dependencia que tienen con otros mdulos. Por ejemplo, si el mdulo de control de entrada detecta un error en los valores recibidos, ejecuta un proceso de auto recuperacin y se comunica con el mdulo de control para informarle de que existe un error en la captura de datos, ste a su vez a travs del mdulo de comunicacin se lo transmite

al supervisor del sistema. Los cuatro mdulos en los que se divide el agente son los encargados de las tareas siguientes:

Control de entrada:

Captura de datos meteorolgicos. Validacin.

Organizacin de datos: Generar pgina con ltimas capturas realizadas. Almacenamiento de la informacin en la Base de datos.

Comunicacin: Atender peticin usuario. Resolver demandas de informacin. Informar administrador de errores.

Control: Gestin de errores. Garantizar el correcto funcionamiento del sistema.

Agente Meteorolgico

Control de Entrada

Organizacin de Datos

CONTROL

Comunicacin

Meteorologa

Internet

Figura 1. Arquitectura global del agente

Para la implementacin de los diferentes mdulos se ha utilizado el lenguaje de programacin C. El agente funciona en un servidor web Unix y utiliza el gestor de base de

datos MiniSQL (Hughes Technologies Pty. Ltd.). La comunicacin con el usuario es a travs de pginas web, desde donde se lanzan scripts CGI (implementados en C) encargados de recoger su demanda, procesar la consulta sobre la Base de Datos y devolver la informacin resultante (de nuevo al usuario) en forma de pginas web.

5. Aplicacin al sector turstico


Es obvio que los avances tecnolgicos estn cambiando la forma en la que se realizan los negocios. Asociado a Internet esta surgiendo una fructfera industria que trata de explotar al mximo sus capacidades. Aunque an la cantidad de operaciones de negocio realizadas a travs de la red no ha alcanzado los niveles previstos, si es cierto que crece da a da.

En cualquier caso no hay que olvidar que una de las ventajas bsicas de Internet y de los agentes inteligentes de cara al Turismo es que la informacin adecuada esta disponible de una manera fcil y cmoda. Nuestro agente meteorolgico tiene en este sentido una gran utilidad ya que los datos meteorolgicos que suministra pueden constituir un recurso estratgico de cara a la organizacin de actividades tursticas.

La posibilidad de conocer la situacin actual del tiempo meteorolgico, as como valores de das anteriores, permite la planificacin de actividades que necesitan unas condiciones climticas favorables para su realizacin. Sin olvidar que el agente ofrece informacin local, del lugar en el que estn situados los sensores. Esto no supone ninguna limitacin ya que se podran poner en funcionamiento diferentes agentes en determinados lugares que necesiten de un conocimiento meteorolgico preciso.

Es de destacar que al disponer de datos procedentes de diferentes variables climticas su utilizacin puede ser variada. Por ejemplo la lluvia y la temperatura se pueden utilizar para organizar excursiones en catamarn a lo largo del ro Mio, o la velocidad y direccin del viento para saber si se puede practicar deportes como el ala delta, el parapente o el vuelo en ultraligero. Pueden incluso tener utilidad mdica, en el sentido de que en ciertas estaciones el incremento de temperatura y la ausencia de lluvias pueden favorecer la subida de los niveles de polen en el aire, que debido al nmero creciente de personas que padecen procesos alrgicos constituye una informacin de una tremenda utilidad.

6. Conclusiones

La principal contribucin de este artculo ha consistido en la justificacin de la utilidad de Internet y de los agentes inteligentes para desarrollar sistemas de informacin distribuidos que sirvan de herramienta al sector turstico. Tanto la disponibilidad de informacin que ofrece Internet, como la ayuda en la realizacin de tareas complejas que ofrecen los agentes inteligentes, demuestran la utilidad de los sistemas de informacin como herramienta bsica en cualquier sector de la sociedad.

Los agentes inteligentes suponen un paso adelante en la construccin de software, ya que aaden un carcter de autonoma, iniciativa y comportamiento racional que permite "delegar" en ellos tareas bsicas, a la vez que ofrecen al usuario una serie de servicios tiles.

Tambin, es posible construir sistemas en los que se utilicen diferentes agentes que se comunican entre s. Los sistemas multiagente pueden facilitar el desarrollo de aplicaciones tpicas del sector turstico, como por ejemplo completar un paquete turstico, en donde es necesario que se realicen diferentes tareas (reserva avin, hoteles, etc.), cada una de las cuales se realiza por un agente independiente. El eje central del sistema desarrollado sera la comunicacin (negociacin) entre los diferentes agentes autnomos, para conseguir completar la mejor oferta que se ajuste a las caractersticas deseadas. Cada uno de estos agentes renovara su conocimiento, para en todo momento contener informacin precisa y actualizada. Incluso, sera interesante que de la comunicacin con el usuario final el agente extrajera conocimiento, que le permitiera "conocer" mejor a ste, y poder tenerlo en cuenta para futuras colaboraciones.

Nuestro trabajo futuro se centra en la aplicacin del agente meteorolgico en la construccin de sistemas que precisen la informacin que este suministra. En concreto estamos desarrollando un sistema multiagente que combina los datos meteorolgicos con datos de niveles de polen para controlar que no se superan unos niveles de riesgo que puedan incidir en los procesos alrgicos tan habituales hoy en da, as como para predecir los periodos de floracin, informacin de gran inters, debido a que son en estos periodos en donde se alcanzan los niveles mximos.

Bibliografa
Brooks, R.A. (1991). Intelligence without representation. Artificial Intelligence, vol. 47, pp.139-159. Ferguson, I.A., (1992). TouringMachines: An Architecture for Dynamic, Rational, Mobile Agents. PhD thesis, clare Hall, University of Cambridge, UK. Franklin, S., Graesser A. (1996). Is it an Agent, or just a Program?: A Taxonomy for Autonomous Agents. Proceedings of the Third International Workshop on Agent Theories, Architectures, and Languages. Springer-Verlag. Jennings, N.R. , et al. (1998). A Roadmap of Agent Research and Development. Autonomous Agents and Multi-Agent Systems, 1, 7-38. Mller, J.P. (1997). The Design of Intelligence Agents (LNAI 1037). Springer-Verlag: Berlin, Germany. Rao, A.S., Georgeoff M.P. (1995). BDI Agents: From Theory to Practice. Proceedings of the First International Conference on Multi-Agent Systems (ICMAS-95). Russell, S., Norvig, P. (1995). Artificial Intelligence: A Modern Approach. Prentice-Hall. Shoham, Y. (1993). Agent-Oriented Programming. Artificial Intelligence, 60(1): 51-92. Wooldrige M., Jennings N.R. (1995). Intelligent Agents: Theory and Practice. The Knowledge Engineering Review, vol. 10(2) pp. 115-152.

También podría gustarte