AGENTES

Anuncio
Diana Ahogado
Ana María Reinemer
Proyecto de Investigación I
Febrero 14 del 2002
SISTEMAS MULTIAGENTES
El objetivo principal de la Inteligencia Artificial consiste en estudiar y construir Agentes
Racionales. Al ser esta la línea de investigación escogida para la realización de nuestro proyecto,
pretendemos dar en este documento una explicación general de nuestro entendimiento acerca de lo
que es un agente racional y, más allá, enfocarnos en el tema de los sistemas multiagentes.
Hablaremos de su definición, sus áreas de aplicación y las relaciones que existen en estos.
Un agente racional es una entidad física (robot) o virtual (software), capaz de actuar de manera
correcta según se lo indica su condición de racionalidad. Esto quiere decir, que al obtener una serie
de percepciones del entorno en el que se encuentra, y teniendo en cuenta sus recursos y
conocimientos, reacciona fijándose un objetivo que siempre debe cumplir logrando el mejor
desempeño.
Los agentes perciben su ambiente de una forma limitada y de esta manera tienen una representación
parcial del mismo, la cual ayuda en la determinación de la acción que deben llevar a cabo. En el
diseño de un agente ideal se debe especificar que tipo de acción tomar como respuesta a una
determinada secuencia de percepciones. Si se coloca en una tabla la lista de acciones que este puede
realizar según la cantidad de secuencias de percepciones que puede tener, se dice que se está
realizando un mapeo.
En la construcción de un programa de agente se debe implantar el mapeo que le permite actuar. Para
hacerlo se pueden utilizar diferentes clases de lenguajes de programación: Lenguajes de
implementación, de comunicación, para describir comportamientos y reglas del ambiente, para
representar conocimiento y para cuestiones de formalización y especificación.
Existen dos tipos de agentes: los cognitivos y los reactivos. Los cognitivos son aquellos a los que
llamamos “inteligentes” aunque este calificativo es muy relativo a la definición de inteligencia que
se use. Por lo cual, se dice, mas bien, que los agentes cognitivos son los que muestran acciones
racionales para lograr sus objetivos. Por otro lado, los agentes reactivos son los que cuentan desde
la creación de su programa con las instrucciones que deben ejecutar.
Principios de los sistemas Multiagentes
Los agentes son entidades relativamente independientes y autónomas que se relacionan entre sí por
medio de cooperación, conflicto y competencia. Esta autonomía se puede medir en términos de
comportamiento y uso de los recursos propios.
La Kenética es una disciplina científica cuyo interés es la interacción de los agentes (en sistemas
Multiagentes). Para esto, debe crear, planear y diseñar universos u organizaciones de agentes. Los
universos creados por la Kenética son puramente artificiales y sus parámetros pueden ser
controlados por el diseñador.
Un sistema Multiagentes está compuesto por los siguientes elementos: Un ambiente, un conjunto de
objetos (que pueden ser afectados por los agentes), un conjunto de agentes (que también son
objetos), relaciones entre los agentes y/o los objetos, operaciones (que permiten a los agentes
producir, consumir, transformar y manipular los objetos) y operadores que representan la aplicación
de las operaciones y la reacción del mundo a los intentos de modificación por parte de los agentes.
Las áreas de aplicación de los sistemas Multiagentes son muchas, estas se pueden clasificar en cinco
grandes grupos: La solución de problemas, la simulación de sistemas Multiagentes, construcción de
mundos sintéticos, la robótica colectiva y el diseño de programas en Kenética.
La aplicación a la solución de problemas, consiste en la solución de problemas de manera
distribuida, problemas distribuidos y técnicas distribuidas para resolver problemas; estas se explican
a continuación.
La solución de problemas de manera distribuida se refiere a situaciones en las cuales los agentes se
especializan cada uno en un área específica y entre todos llevan a cabo los objetivos. Por su parte, la
solución de problemas distribuidos es visualizable en casos en los cuales se maneja un sistema
físicamente distribuido. Por último, las técnicas distribuidas de resolución de problemas se usan
cuando existe un problema que por naturaleza es centralizado y los agentes se encargan de dividirlo
para tratarlo entre ellos.
Cuando se trata el tema de los robots en un sistema y estos desempeñan diversas funciones se esta
hablando de Robótica colectiva. En esta área se tratan situaciones como la robótica celular (el
manejo de un solo robot como un SMA) y la robótica móvil (cuando se encuentran dos o más robots
en el sistema).
El diseño de programas de Kenética se lleva a cabo desarrollando software distribuido y sistemas
computacionales capaces de evolucionar con la interacción de agentes funcionando en universos
distribuidos físicamente. Con esto se llega a la creación de una nueva concepción del software
donde cada unidad de programa se desempeña como un agente.
Interacciones y Cooperación
Entre los agentes existen varios tipos de relaciones. Una de estas son las interacciones. Una
interacción se da entre dos o mas agentes y es una relación dinámica mediante acciones reciprocas.
Para que se de una interacción deben existir los siguientes elementos: agentes autónomos capaces
de actuar y/o comunicarse entre si, situaciones que jueguen el papel de punto de encuentro de los
agentes y elementos dinámicos (como comunicación, impacto, repulsión, atracción) que permitan
las relaciones entre los agentes.
Una interacción se define en términos de objetivos compatibles o incompatibles, relación con los
recursos y capacidades de los agentes en relación con las tareas que se le han asignado.
Cuando un objetivo es incompatible para dos agentes, implica que para lograr el objetivo, solo uno
de ellos podrá hacerlo. La relación con los recursos hace referencia a los conflictos que pueden
llegar a ocasionarse cuando dos agentes necesitan el mismo recurso. Este problema se soluciona
usando técnicas de coordinación.
Existen tareas para las cuales los agentes necesitan de la ayuda de otros agentes por que sus
capacidades no son suficientes para desarrollar la tarea que le asignaron.
La siguiente tabla explica las relaciones de estos componentes en la clasificación de los tipos de
interacción:
Objetivos
Compatibles
Compatibles
Compatibles
Compatibles
Incompatibles
Incompatibles
Incompatibles
Incompatibles
Recursos
Suficientes
Suficientes
Insuficientes
Insuficientes
Suficientes
Suficientes
Insuficientes
Insuficientes
Habilidades
Suficientes
Insuficientes
Suficientes
Insuficientes
Suficientes
Insuficientes
Suficientes
Insuficientes
Tipo de Interacción
Independencia
Colaboración Simple
Obstrucción
Colaboración Coordinada
Competencia Individual
Competencia Colectiva
Conflictos Individuales por recursos
Conflictos colectivos por recursos
Otra de las formas en que se relacionan los agentes es por medio de la colaboración. Esta se trata de
identificar una meta común a los agentes y la realización de las acciones para llegar a cumplirla
La cooperación se define en términos de los siguientes indicadores: coordinación de las acciones,
grado de paralelismo, recursos compartidos, robustez del sistema, acciones no-redundantes y
conflictos no-perceptibles.
Para que se pueda afirmar que existe una relación de cooperación, esta debe cumplir al menos una
de las siguientes condiciones:
 La suma de un agente al sistema debe aumentar el rendimiento del grupo.
 La acción de los agentes debe servir para evitar o solucionar un conflicto potencial o
actual del sistema.
Cuando en un sistema hay cooperación entre los agentes, se puede lograr la realización de tareas
que sin cooperación podrían ser imposibles. Tener cooperación en el sistema también es bueno por
que aumenta el rendimiento y productividad de cada agente, aumenta el número de tareas que se
pueden realizar en un cierto periodo de tiempo o reduce el tiempo que toma realizar una tarea, y
optimiza el uso de los recursos disponibles mediante la aplicación de algoritmos de balanceo de
carga.
Bibliografía:


Rusell N, Inteligencia Artificial: Un enfoque moderno, Prentice Hall, 1996
Ferber J, Multi-Agent Systems : An introduction to Distributed Artificial Intelligence, Adison
Wesley, 1999
Descargar