• No se han encontrado resultados

2 P ROPUESTA Este capítulo contiene la propuesta que se ha introducido y justificado en el capítulo

2.4.2 E STRUCTURA DEL A GENTE

La estructura interna del agente va a contener unos componentes interrelacionados. Estos componentes podrán ser específicos en su capacidad para desarrollar una única tarea, o no específicos con diversas utilidades o de uso en tareas transversales que abarcan todas las demás.

La estructura se presenta en la figura 2.22.

Figura 2.22: Arquitectura de agente

En esta arquitectura tenemos cuatro áreas principales: • Área central de control.

• Área de implementación de servicios. • Área de almacenamiento de datos. • Área de control de la migración.

Estas cuatro áreas tienen encomendadas tareas distintas aunque relacionadas y pueden contener varios elementos.

147

• Área central de control.

Éste área se caracteriza por contener el corazón del agente. Se encarga de gestionar la ejecución de todas las tareas y mantener el control del comportamiento.

El único componente asociado a esta área es:

ƒ Módulo Principal de Control (o control Central). Este componente es el encargado de las tareas de control de todas las áreas restantes, recibirá las peticiones del CA para la hibernación y la migración y decidirá la realización de la adaptación del comportamiento del agente en función de los datos almacenados.

• Área de implementación de servicios.

Donde se implementan las respuestas a todos los servicios excepto el servicio de clonación implementado en un área propia. Aquí se agrupan los servicios que se ejecutan durante el funcionamiento normal de un agente en el interior de un CA determinado.

Los componentes asociados a esta área son:

ƒ Gestor de peticiones. Que se encarga de realizar las peticiones de usuario mediante el uso de los Recursos ofrecidos por el CA. Interactuará con los elementos de almacenamiento de datos para ir reflejando su actividad y para guardar temporalmente los datos procesados.

ƒ Motor de aprendizaje. Encargado de la adaptación de las características del agente en función de los datos recogidos. Este elemento será activado siempre por el Control Central cuando éste lo considere oportuno. En este componente se implementarán los principales algoritmos de IA para conseguir una adaptación correcta.

ƒ Factor de clonación. La herramienta disponible para conseguir la creación de un agente idéntico al agente actual. Será invocada como servicio interno por parte del control central cuando se reciba petición externa o se determine la necesidad de la clonación.

• Área de almacenamiento de datos.

Contiene los componentes que recogen los datos utilizados en la resolución de peticiones o para realizar la adaptación del comportamiento. Los componentes de esta

área no son activos ya que se limitan a almacenar la información sin tomar la iniciativa en momento alguno.

Los componentes asociados a esta área son:

ƒ Datos de la Última Petición. Este elemento se modelará como una estructura de datos capaz para el almacenamiento de los datos que se han manejado como resultado de la última petición o la petición en curso. Estos datos pueden tener una estructura variable y es tarea de este elemento adaptarse y ofrecer almacenamiento independientemente de la forma de los datos.

ƒ Preferencias Actuales. Otra estructura de datos, en este caso de formato rígido pero tamaño variable. Almacenará las preferencias de funcionamiento del agente como pueden ser Recursos preferidos, preferencias en la selección de resultados y los valores precisos para conseguir un funcionamiento adaptado a las características del cliente y el contenedor.

ƒ Datos Estadísticos. Recopilación de datos sobre peticiones; almacenando tipos, fechas y resultados para las últimas peticiones. Estos datos, combinados con los anteriores permitirán al agente modificar sus preferencias si es preciso.

• Área de control de la migración.

Que contiene un único componente encargado de ejecutar la migración de este agente finalizando sus tareas en el actual CA y reanudándolas en otro después de la transmisión a través de uno de los canales.

El componente asociado a esta área es:

ƒ Módulo de Migración. Este componente tiene la misión de tomar el control de todas las tareas en caso de migración. Sustituirá al control central en caso de planificarse la migración para asegurar que ésta se produce de forma correcta, controlando el funcionamiento de todos los componentes y procesando los datos almacenados para su envío correcto al nuevo CA.

149

2.4.3

R

ESUMEN

En esta propuesta de agente se han desarrollado los motivos que hacen interesante la arquitectura basada en agentes y la evolución desde la actual propuesta hasta llegar a una propuesta integrada usando como elemento de unión un sistema de agentes.

Una vez planteada, con la base que anteriormente se había establecido para ella, la arquitectura de agentes precisa de una descripción concreta que establezca las tareas que sí son responsabilidad de los agentes descartando todas las demás. Este paso es muy importante porque existen muchas posibles implementaciones de agentes generales y muchas de agentes inteligentes, pero dependiendo de las tareas a las que está destinado el agente, no todas las características son necesarias. Un ejemplo de esto es la iniciativa que deben tener los agentes de escritorio de un usuario, en nuestro caso esta característica no es necesaria ni útil.

Para describir el agente, hemos planteado las tareas que debería realizar ofreciéndolas como servicios. Hemos dividido estos servicios en dos grupos: Tareas de Servicios Ofrecidos a Clientes y Tareas Internas de Ciclo de Vida del Agente.

Por otro lado, cumplir estas tareas requiere de la existencia de una serie de componentes en el interior de un agente que se repartan el trabajo para realizarlo mejor gracias a la adaptación. Estos componentes se han agrupado en cuatro áreas funcionales:

• Área central de control.

• Área de implementación de servicios. • Área de almacenamiento de datos. • Área de control de la migración.

Con este diseño interno, el agente queda plenamente descrito y establecido en sus limitaciones y sus capacidades, separándolo de otras posibles implementaciones de agentes.

En este punto, el trabajo restante es el orientado a llevar a la práctica la propuesta y empezaremos por un estudio de viabilidad y de la forma en que este sistema podría ser puesto en marcha.