La necesidad de disponer de aplicaciones informáticas para su ejecución en entornos complejos, dinámicos y, a frecuentemente, no especificados completamente, ha contribuido en la última década a la confluencia de dos áreas de investigación de elevado interés. Dichas dos áreas son, por una parte, el área de la Inteligencia Artificial, y por otra parte, el área de los Sistemas de Tiempo Real.
Dentro del área de la Inteligencia Artificial, los Sistemas Multi-agente permiten ofrecer soluciones altamente apropiadas al desarrollo de problemas complejos con características distribuidas. El trabajo que se presenta %en esta investigación está precisamente planteado sobre la relación existente entre los Sistemas Multi-agente y los Sistemas de Tiempo Real, abordando el problema de la coordinación y cooperación entre entidades de un Sistemas Multi-agente de Tiempo Real, donde es necesario conjugar técnicas inteligentes con respuestas en tiempo real en un entorno distribuido.
El mayor problema en usar los Sistemas Multi-agente en entornos de tiempo real es el garantizar el cumplimiento de aquellas tareas con restricciones temporales. El agente de tiempo real debe disponer de mecanismos que le permitan, por un lado determinar si es capaz de completar una tarea antes de que finalice el tiempo que tiene asignado para tal efecto, y después, garantizar tal cumplimiento. Por ello es necesario llevar un control estricto de cada una de las tareas que el agente ejecuta. En muchas ocasiones para la resolución de una tarea, el agente de tiempo real debe de coordinarse con otros agentes que realicen parcial o totalmente la misma. En estos casos, el agente pierde el control sobre la ejecución de dichas tareas y necesita ciertas garantías por parte de los otros agentes a que estas tareas serán completadas a tiempo.
Actualmente, dentro de los Sistemas Multi-agente la tecnología del acuerdo nos da soporte para que distintos agentes interactúen entre ellos con el único fin de negociar situaciones que sean beneficiosas para cada una de las entidades participantes en el proceso de negociación. Una posible solución al problema planteado de la delegación de acciones de tareas con restricciones temporales puede ser hacer uso de dichas tecnologías, y más concretamente, de la teoría de compromisos que permite establecer relaciones de confianza entre el agente coordinador de la tarea y los agentes encargados de la ejecución de las distintas acciones. En esta relación de confianza, los agentes que ejecutan las distintas partes de la tarea se comprometerán a completar su parte dentro de unos plazos de tiempo que vendrán determinados por las restricciones temporales asociadas a la tarea.
En este punto, se plantean tres dificultades. La primera de ellas surge a la hora de que un agente debe de determinar si una tarea, o conjunto de tareas, puede llevarse a cabo dentro del plazo temporal establecido, y en ese caso, comprometerse a completarla. En esta situación el tiempo de deliberación del agente debe estar acotado temporalmente y ser conocido a la hora de tenerlo en cuenta cuando se calcule el tiempo necesario para ejecutar la tarea. La segunda dificultad que surge es el control de tales compromisos de tiempo real una vez son establecidos tanto por parte de los propios agentes que lo han subscrito como, si así se requiere, por otra entidad independiente de los agentes que intervienen en el compromiso establecido. La última de las dificultades que nos encontramos es la inexistencia de plataformas de ejecución para Sistemas Multi-agente que permitan, por un lado, dar soporte a agentes con la capacidad de ejecutar tareas con restricciones temporales y, por otro, que nos de los mecanismos necesarios para la gestión de compromisos con restricciones temporales por parte de los agentes del sistema.
Por tanto, el propósito principal de esta investigación es solucionar estos problemas. Para ello, en primer lugar, se ha ampliado el concepto de compromiso en Sistemas Multi-agente para poder manejar situaciones donde la entidad que solicita el servicio requiere que esté sea completado dentro de unos intervalos temporales. Siguiendo esta definición se ha diseñado un modelo de agente de tiempo real para que trate estos compromisos adecuadamente mediante la creación de un módulo especifico que trabaja sobre los compromisos y que, por un lado, ofrece al agente la capacidad de determinar si puede comprometerse a completar una acción dentro del tiempo estimado, y por otro, gestiona la ejecución de los compromisos adquiridos. De esta forma es capaz de realizar predicciones del tiempo necesario de ejecución, usando para ello las experiencias adquiridas por el agente en ejecuciones anteriores de tareas similares en situaciones parecidas.
Como último punto de la investigación se ha diseñado una plataforma multi-agente de tiempo real que soporta la arquitectura de agente propuesta en esta tesis, y una herramienta que facilita la creación de agentes de tiempo real para su ejecución en la plataforma desarrollada.
Finalmente se ha validado el uso del modelo de agente de tiempo real propuesto, con la integración del gestor de compromisos, mediante la realización de tres ejemplos de aplicación sobre distintos entornos. El primero de ellos trata sobre robótica móvil, donde un equipo de robots deben realizar una tarea de forma conjunta. En el segundo ejemplo se presenta un sistema que ofrece la capacidad de detectar y ejecutar servicios para completar una petición realizada por un usuario teniendo en cuenta que el resultado final debe de ser alcanzado antes de un tiempo máximo. El tercer ejemplo versa sobre la detección de ataques de tipo DoS (Denial of Service) utilizando aquellas mejores técnicas que pueden ser aplicadas atendiendo al tiempo disponible para completar el análisis.
© 2008-2024 Fundación Dialnet · Todos los derechos reservados