Arquitecturas para Agentes Racionales David H. Bello david.bello@javeriana.edu.co Pontificia Universidad Javeriana Noviembre del 2002 Resumen Este artículo introduce las aproximaciones modulares al problema de crear agentes racionales, entre ellas la arquitectura subsumption, sistemas auto-organizados, el modelo de minsky, sistemas mutiresolucion, el modelo BDI y el modelo conexionista definiendo de las características y ventajas de cada una de las arquitecturas. Finalmente este artículo realiza un análisis comparativo de las arquitecturas de Brooks y Minsky, además de definir las ventajas más significativas de las arquitecturas presentadas. 1. Introducción El problema de crear agentes racionales, se ha convertido en una parte del trabajo de la Inteligencia Artificial en los últimos anos, debido a la necesidad de tener sistemas racionales, que se relacionen con otros sistemas y con los seres humanos. Este articulo muestra las arquitecturas modulares que pretenden solucionar el problema de encontrar una aproximación modular esta organizado en una introducción a las arquitecturas modulares, conceptos básicos y ventajas de emplear una aproximación modular. Seguido de las arquitecturas modulares con su explicación y ventajas, para luego concluir con un análisis comparativo entre las arquitecturas presentadas. 1.1 Conceptos Para presentar un modelo para la construcción de agentes racionales, debemos definir el concepto de agente y racionalidad. Russell [RUS96] define un agente de hardware o software, el cual obtiene información del entorno que lo rodea, por medio de entradas o sensores, y produce cambios en su medio ambiente, por medio de salidas o actuadotes, y Wooldridge define como características principales de un agente: autonomía, habilidad social, reactividad y proactividad. También se puede definir a un agente como el uso de una arquitectura más un programa [RUS96] para definir un mapeo, el que consiste en una asociación entre los estados del entorno y las acciones que el agente va realizar. Russell [RUS96] define racionalidad como la característica que tiene un agente para realizar lo correcto según las reglas o mapeo de este. 1.2 Arquitecturas Modulares Las arquitecturas modulares consisten en aproximaciones que emplean módulos o componentes para manejar un problema, cada uno de estos componentes desarrolla una función específica, para que el comportamiento o la búsqueda de una meta, se obtenga mediante la realización de la interacción entre estos. Entre las aproximaciones que este trataran en este articulo están la arquitectura subsumption, sistemas autoorganizados, el modelo de minsky, sistemas multi-resolución, el modelo BDI y el modelo conexionista. 1.3 Ventajas En la actualidad las arquitecturas modulares son las de mayor difusión, debido a sus características, entre las cuales se encuentran: − Modularidad: Como característica inherente que brinda la ventaja de poder sub-dividir el problema en bloques menos complejos, para poder enfrentar el problema de manera más sencilla, y fomentar la reutilización de los módulos. − Extensibilidad: Debido a que se pueden aumentar la complejidad del agente, con la adición de nuevos módulos, sin que esto cause cambios a todos el sistema. − Flexibilidad: Generada por la capacidad de emplear diferentes tipos de módulos que cumplan una misma función, sin que se deban hacer cambios. 2. Arquitecturas Inhibición basadas Las capas de la arquitectura subsumption están compuestas de máquinas de estado extendidas (Augmented Finite State Machines AFSM), las entradas de cada AFSM provienen directamente de los sensores del sistema, y las salidas de cada una de estas unidades interactúan directamente con los actuadotes (Figura 1). Además cada ASFM también posee una entrada de supresión y otra de inhibición, la primera es la encargada de suprimir la entrada de los sensores, y la segunda es la encargada de inhibir la salida que va a los actuadotes (Figura 1), estos mecanismos son utilizados para que las unidades o módulos se supriman, para producir un comportamiento coherente en el sistema. en Figura 1. Modulos de la Arquitectura Subsumption 2.1 Arquitectura Subsumption Brooks [BRO86][BRO90] propone en su arquitectura de subsumption, una estructura por capas, cada una de las cuales esta compuesta por comportamientos predefinidos. Las capas o niveles superiores inhiben las capas inferiores, para construir comportamientos más complejos, lo que genera que el comportamiento de todo el sistema, sea el resultado de la interacción de varios comportamientos simples; adicionalmente Brooks plantea que las capas deben operar asincrónicamente. Brooks presenta el concepto de inhibición como la facultad de las unidades de nivel superior para inhibir a otros módulos de niveles inferiores, lo que se considera un mecanismo de arbitraje en el caso de tener dos módulos que sus metas se contradigan o unidades que dirijan el comportamiento de otras. Brooks probo su arquitectura mediante Ejemplo *** La arquitectura de Brooks posee las ventajas de manejar el concepto de arbitraje como método para poder organizar el conjunto de módulos de un agente, lo que genera que el comportamiento surga a partir de esta organización entre módulos. 2.2 Sistemas Auto-Organizados Negrete [NEG02] propone una arquitectura basada en la de Brooks, sin embargo, Negrete la complementa incluyendo la auto-inhibición de los módulos, para facilitar el control entre ellos y debido a que no se necesita que cada modulo busque constantemente la meta, sino en momentos específicos, en los que el modulo dejara de auto-inhibirse para continuar buscando la sub-meta. Negrete validó su modelo con un experimento, en el que empleaba un agente robótico con cuatro módulos, en el que cada uno desarrollaba un objetivo definido, que podían inhibir a otros módulos, para buscar el objetivo común. Negrete concluyó como Brooks, que el comportamiento emerge de la interacción de los módulos, además encontró que el cambio del orden de procesamiento de cada modulo, generaba diferentes comportamientos, pero el objetivo común siempre se mantenía. La arquitectura propuesta por Negrete posee las mismas ventajas que la arquitectura subsumption, como el manejo del arbitraje y el comportamiento emergente, además de incluirle la característica de generar comportamientos que emerjan del propio modulo. 3. Arquitecturas Descomposición basadas definir una jerarquía Minsky plantea la necesidad de utilizar una agencia como mecanismo para organizar los módulos para la búsqueda del objetivo común. El modelo planteado por Minsky tiene como ventaja la creación de las jerarquías entre los componentes del agente, que permite poder desarrollar comportamientos más complejos a partir de los módulos más sencillos, ademas de tener la ventaja en el uso de los directores, que brinda la posibilidad de tener un integrador o experto en la tarea, el cual emplea los módulos ya desarrollados para darle un nivel de abstracción mayor al problema. en 3.1 Modelo de Minsky Minsky [MIN86] propone una arquitectura de descomposición de un problema en una sociedad organizada por jerarquías, la cual consiste en emplear módulos, que se encarguen de una parte del problema inicial, si estos módulos son muy complejos para un agente simple, entonces debe ser dividido en otros submódulos, que persigan sub-metas, de esta manera el sistema o la suma de los módulos, alcanzará una meta común. Adicionalmente, Minsky propone el concepto de agencia, que define la existencia de un director o coordinador que dirige el sistema hacia el estado ideal, conociendo como llegar a la meta, y emplea a los agentes o módulos para realizar esta tarea. Minsky plantea como ejemplo de su arquitectura el proceso de construir una pila de bloques, en la que se debe inicialmente crear una jerarquía entre diferentes módulos (Figura 2), después de Figura 2. Ejemplo del Modelo de Minksy 3.2 Sistemas Multiresolucion Meystel [MEY02] plantea en su modelo de multiresolución, que en el aprendizaje no supervisado, el agente obtiene un conjunto de datos de su entorno, que normalmente es de gran tamaño, que contiene implícitamente los pasos para la realización de la meta. Además plantea que el resultado de este proceso de aprendizaje, consiste en la recolección y organización de la información obtenida, para realizar un mapeo de estado-acción. El problema de realizar este mapeo consiste en la complejidad del conjunto de datos obtenidos del entorno, por esta razón, Meystel plantea un esquema jerárquico de multi-granularidad para representar el mundo del problema, donde el espacio de búsqueda se subdivide recursivamente. Meystel plantea, que en la búsqueda de reglas y planes sobre el entorno, hay que definir unos parámetros, como pueden ser: el límite inferior de la búsqueda o subdivisión, las características de la solución buscada, el costo de emplear una subdivisión, las formas de subdividir el espacio, etc. El modelo de multiresolucion podría considerarse como un modelo para un agente en el cual se empleen niveles jerarquicos de resolucion para el desarrollo de una tarea, porque se podria subdividir recursivamente un problema en espacios de búsqueda, según criterios establecidos para desarrollar un búsqueda más minuciosa en los niveles de granularidad más fina. El modelo de Meystel posee la ventaja de no enfrentar por completo el problema de la búsqueda de una meta en un espacio de gran tamaño, sino centrar la atención del agente en ciertas partes del espacio de búsqueda. 4. Modelo BDI El modelo BDI es un modelo filosófico y psicológico, propuesto por Bratman [BRA88], en el que un agente posee un tipo de actitudes mentales sobre sus creencias, deseos e intenciones, que representan los estados de información, motivación y decisión del agente respectivamente. La arquitectura BDI define tres conceptos, Creencias (Beliefs), Deseos (Desires) e Intenciones (Intentions), Rao [RAO91] define estos conceptos de la siguiente manera: − Creencias: Es el conocimiento que posee el agente sobre su entorno. − Deseos: Son los estados posibles que el agente desea para su entorno. − Intenciones: Son los compromisos que guían la acción del agente para llegar a una meta. Las intenciones generan un plan, que es un conjunto de acciones a desarrollar dependiendo del estado del entorno, este plan es especificado durante la formulación, por lo tanto, el agente debe ejecutar estas acciones sin un racionamiento asociado, hasta que estas intenciones o acciones, a las que el agente esta comprometido a realizar, se conviertan en creencias o deseos (Figura 3). Figura 3. Relacion entre Creencias, Deseos e Intenciones Georgeff [GEO89] implementó el modelo BDI, en un sistema llamado Procedural Reasoning System (PRS), que estaba orientado al procesamiento en tiempo real (Figura 4). Este sistema consistía en: − Una base de datos que almacenaba las creencias o hechos acerca del mundo. − Un conjunto de objetivos para ser realizados. − Un conjunto de planes que describían cómo utilizando un conjunto de acciones y decisiones se podría realizar una meta o reaccionar a una situación particular. − Una estructura de intención, que contenía los planes que habían sido seleccionados para su posterior ejecución. El sistema también contaba con un interprete, que era el encargado de manipular los componentes del sistema, para seleccionar los planes apropiados basados en las creencias y metas del sistema, ubicando estos planes en la estructura de decisión y luego ejecutándolos (Figura 4). respuesta deseada para cada conjunto de entradas. − Aprendizaje No Supervisado: Se desarrolla sin la ayuda de un agente o profesor externo, por lo tanto, el agente se basa en la información que percibe del entorno, para detectar sus propiedades. Figura 4. Estructura del Sistema PRS [GEO89] El modelo BDI posee la ventaja de descomponer un problema en conceptos previamente establecidos, los cuales pasan a diferentes estados a través del tiempo de vida del agente. 5. Modelo Conexionista Las redes neuronales artificiales son una abstracción de los sistemas nerviosos biológicos, formados por un conjunto de unidades llamadas neuronas, que están compuestas por axones y dendritas, estas últimas son encargadas de interconectar las neuronas, para formar capas. La principal característica de las redes neuronales consiste en su capacidad de aprendizaje y generalización, las que se obtienen durante la fase de aprendizaje, debido a que la red se comporta como una memoria asociativa o mapeo, que busca patrones para generalizar una respuesta entre los diferentes conjuntos de entrada. Entre los algoritmos de aprendizaje se encuentra el Back Propagation, el cual consiste en propagar el error desde la capa de salida, hasta la capa de entrada, a través de las capas ocultas o intermedias de la red; este algoritmo va a ajustando los pesos de las conexiones durante la propagación, con el fin de disminuir el error. El error es calculado a través de una función cuadrática de los errores individuales de cada unidad, siendo el error la diferencia entre la salida esperada y la salida obtenida. (Figura 6) Figura 6. Error de una red a través de una función cuadrática Figura 5. Organización de las neuronas El proceso de aprendizaje consiste en el entrenamiento de la red para memorizar patrones y su posterior respuesta a un conjunto de entrada. En las redes neuronales el proceso de aprendizaje puede desarrollarse de dos formas: − Aprendizaje Supervisado: Se desarrolla con la ayuda de un agente o profesor externo, que le indica la El primer modelo de red neuronal fue desarrollado por McCulloch y Pitts [HAM01], que consistió en un modelo binario en el cual cada neurona tiene un escalón o umbral de activación prefijado. El modelo consistía en una serie de capas de neuronas, cada una de las neuronas tenía una serie de entradas, a las cuales les asignaban un peso, y se realizaba una sumatoria, de los valores de entrada por su respectivo peso, y a este valor le aplicaba una función de activación, la que determinaba la salida de la neurona (Figura 7). jerarquizacion de los módulos como método para la organización de estos. Otros modelos muestran ventajas especificas como es el caso del modelo BDI porque emplea conceptos para definir el problema, lo que facilita la definición del problema con el empleo de conceptos como un plan, una intención y un deseo, que se podrían asociar a medio y al fin del problema. Figura 7. Modelo de McCulloch y Pitts La principal ventaja la aproximación conexista en el uso de concepto biológico como aplicación a la mente de un agente, además de emplear una división por capas del problema. Adicionalmente el modelo cuenta con la ventaja la identificación de patrones a través del aprendizaje debido a la convergencia hacia una solución, mediante parámetros modificables dentro del sistema. 6. Discusión y Conclusiones En mi opinión entre las arquitecturas presentadas en este artículo las dos arquitecturas de mejor aproximación son subsumption de Brooks, y el modelo de Minsky, debido a que ambos consideran la descomposición del problema en módulos, sin embargo, estas arquitecturas poseen dos diferentes fundamentales, las cuales son: 1. Dirección del Sistema: En el modelo de Minksy, se desarrolla de forma centralizada en una unidad, que se encarga de organizar a sus submodulos, en cambio, en el caso de Brooks, la dirección esta distribuida en los módulos del sistema. 2. Organización de los Módulos: En la arquitectura de Brooks los módulos no poseen una organización formal, porque interactúan directamente con las entradas y salidas del agente, mientras que en Minsky se emplea la En el caso del modelo conexista la ventaja de poder converger a una solución y la búsqueda de patrones convierten al modelo en una excelente aproximación para modelar el mapeo de un agente, debido a que se comportaría como una memoria asociativa basada en el aprendizaje, sin embargo, considero que no podría ser muy escalable en para problemas complejos, por los mismos requerimientos de diseño de una red. Finalmente en el caso del modelo de Meystel de Multiresolucion posee un buen acercamiento a un problema complejo, centrando la atención de la búsqueda en un espacio delimitado. 7. Referencias [ARK00] Arkin, Ronald C. Behavior Based Robotics. MIT Press. Cambridge, MA. 2000. [BRO86] Brooks, Rodney A. A Robust layered control systems for a mobile robot. IEEE Journal of Robotics and Automation. April 1986. Brooks, Rodney A. Elephants don-t play. In Journal of Robotics and Autonomous Systems. Volume 6. [BRO90] [FER99] [GEO99] [HAM01] [HOP01] [MEN00] [MEY02] Ferber, Jacques. Multi-Agent Systems: An introduction to distributed artificial agents. Addison Wesley. Harlow, England. 1999. Georgeff Michael, Ingrand Francois Felix. DecisionMaking in an Embedded Reasoning System. In Proceedings of the 11th International Joint Conference on Artificial Intelligence. Detroit. 1989 Ham, F.M. Principles of Neurocomputing for Science & Engineering. McGraw Hill, 2001. Hopgood, A. Intelligent Systems for Engineers and Scientists. CRC Press, 2001. Menzel, Peter; D-Alusio, Faith. Robo Sapiens: Evolution of a new species. MIT Press. Cambridge, MA. 2000. Meystel A. Bathija A. Multiresolutional Planning: Using the randomized tessellation of the State Space. In Proceedings of the 3rd International Symposium on Robotics and Automation, ISRA2002. [BRA88] Michael E. Bratman, David Israel, Martha E. Pollack, Plans and resource-bounded practical reasoning. MIT Press. 1988 [MIN86] Minsky, Marvin. The Society of Mind. Simon & Schuster, Inc. 1986. [NEG02] Negrete-Martinez, Jose. Self-Organized MultiModular Robotic Control. In Proceedings of the 3rd International Symposium on Robotics and Automation, ISRA-2002. [RAO91] Rao A. Georgeff M. Deliberation and Intentions. In Proceedings of the 7th Conference on Uncertainity in Artificial Intelligence. Los Angeles, 1991. [RUS96] Russell, Stuart. Inteligencia Artificial: Un Enfoque Moderno, Prentice Hall Iberoamericana. 1ra. ed., 1996. [VAN88] VanLehn, Kurt. Architectures for Intelligence. The 22nd Carnegie Mellon Symposium on Cognition by Kurt VanLehn. Lawrence Erlbaum Associates. Hillsdale, New Jersey. 1988. [WOO00] Wooldridge, Michael. Reasoning about Rational Agents. MIT Press. Cambridge, 2000.