Sistemas multiagente: estructura, principios de construcción, aplicación. Inteligencia artificial

Tabla de contenido:

Sistemas multiagente: estructura, principios de construcción, aplicación. Inteligencia artificial
Sistemas multiagente: estructura, principios de construcción, aplicación. Inteligencia artificial
Anonim

El propósito de los sistemas multiagente (MAS) es coordinar procesos independientes. Un agente es una entidad informática en forma de programa o robot. Un agente puede considerarse autónomo porque es capaz de adaptarse cuando cambia su entorno. Una MAC consiste en un conjunto de procesos informáticos que ocurren al mismo tiempo y existen al mismo tiempo, comparten recursos comunes y se comunican entre sí. El problema clave en el MAC es la formalización de la coordinación entre agentes.

Definición de sistemas multiagente

Definición de sistemas multiagente
Definición de sistemas multiagente

MAC es un enfoque con visión de futuro para el desarrollo de software para aplicaciones en dominios complejos donde los componentes de la aplicación que interactúan son autónomos y están distribuidos, operan en entornos dinámicos e inciertos, deben cumplir con algunas reglas y leyes organizacionales y pueden unirse y abandonar un sistema multiagente durante el tiempo de ejecución.

Ejemplos de tales aplicaciones son sistemas quegestionar y optimizar la producción y distribución de energía eléctrica entre consumidores o sistemas que planifiquen de forma óptima las cargas en los sistemas de transporte. El desarrollo de sistemas multiagente requiere la creación de agentes, organizaciones y entornos independientes.

Los lenguajes de programación proporcionan construcciones de programación para implementar agentes individuales en términos de conceptos sociales y cognitivos como información, objetivos, opciones, normas, emociones y reglas de decisión.

Las organizaciones multiagente en términos de conceptos sociales y organizacionales tienen roles, dotados de normas, protocolos de comunicación, recursos que son objeto de seguimiento. Los marcos y lenguajes de programación desarrollados se utilizan para crear simulaciones basadas en agentes para muchas industrias de producción continua: electricidad, metalurgia, salud, Internet, transporte, gestión de tráfico y juegos serios.

MAS difieren de los sistemas de un solo agente en que tienen varios agentes que modelan las metas y acciones de cada uno. En un escenario general, puede haber una interacción directa entre los agentes. Desde el punto de vista de un solo agente, los sistemas multiagente se diferencian más significativamente de los sistemas con un solo agente en que la dinámica del entorno puede ser determinada por otros agentes. Además de la incertidumbre que puede ser inherente a un dominio, otros agentes impactan deliberadamente en el medio ambiente de manera impredecible.

Por lo tanto, se puede considerar que todos los MAC tienen entornos dinámicos, lo cual es típico de los modernossistemas multiagente. Puede haber cualquier número de agentes con diversos grados de heterogeneidad, con o sin posibilidad de comunicación directa.

Arquitectura MAS

Arquitectura de los sistemas MAC
Arquitectura de los sistemas MAC

Los agentes deben estar equipados con un modelo cognitivo:

  • creencias;
  • deseos;
  • intenciones.

Por un lado, lee "Creencias" sobre el medio ambiente, que son el resultado de sus conocimientos y percepciones, y por otro, un conjunto de "Deseos". Cruzar estos dos conjuntos da como resultado un nuevo conjunto de "intenciones" que luego se traducen directamente en acciones.

Los agentes deben tener un sistema de comunicación. Existen varios lenguajes especializados para este fin: Language Query and Manipulation Language (KQML). Recientemente, se ha difundido el estándar FIPA-ACL, creado por la Fundación FIPA para Agentes Físicos Inteligentes. Este último principio de construcción de sistemas multiagente se basa en la teoría de los actos de habla.

El problema de la adaptación es un tema espinoso que actualmente es objeto de mucha investigación. Se puede dar un ejemplo de algunos virus, tanto biológicos como informáticos, capaces de adaptarse a un entorno mutante.

Finalmente, una implementación eficiente de MAC, aunque estrictamente hablando no forma parte de la arquitectura del sistema, merece atención en los muchos lenguajes de programación que se han desarrollado para el estudio de la inteligencia artificial. En particular, se menciona el lenguaje LISP. Estos elementos arquitectónicos se aplican a un sistema que consta de componentes cognitivos.agentes.

Categorías o modelos de agentes

La clasificación de los agentes se basa en dos criterios: agentes cognitivos o reactivos que presentan, por un lado, un comportamiento teleonómico, o reflejo. La distinción que se puede hacer entre cognitivo y reactivo es esencialmente una representación del mundo disponible para el agente. Si un individuo está dotado de una "representación simbólica" del mundo a partir de la cual puede formular un razonamiento, entonces se habla de un agente cognitivo, mientras que si tiene sólo una "representación subsimbólica", es decir, limitada a sus percepciones, se habla de un agente reactivo. Esta distinción cognitiva y reactiva corresponde a dos escuelas teóricas de sistemas multiagente.

La primera apoya el enfoque fundamental de los agentes "inteligentes" para la cooperación desde un punto de vista sociológico. En el segundo, se estudia la posibilidad de que surja un comportamiento "inteligente" de un conjunto de agentes no inteligentes (tipo hormiga). La segunda diferencia entre el comportamiento conductual y el reflejo separa el comportamiento intencional, la búsqueda de objetivos explícitos, del comportamiento perceptivo. Así, las tendencias de los agentes pueden expresarse explícitamente en los agentes o, por el contrario, provenir del entorno. Tabla que agrupa diferentes tipos de agentes:

  1. Agentes cognitivos.
  2. Reactivos.
  3. Comportamiento telenómico.
  4. Agentes intencionales.
  5. Agentes gestionados.
  6. Comportamiento reflejo.
  7. Agentes "módulos".
  8. Agentes tropicales.

Los agentes cognitivos son en su mayoría intencionales, es decir,tienen metas fijas que están tratando de lograr. Sin embargo, a veces se utilizan agentes llamados módulos, que tienen una idea de su "universo" sin objetivos específicos. Podrían servir, por ejemplo, para responder preguntas de otros agentes del "universo".

Los reactivos se pueden dividir en actuadores y agentes tropicales. El agente instintivo tendrá una misión fija y desencadenará un comportamiento si ve que el entorno ya no se ajusta a su propósito asignado. El agente tropical reacciona solo al estado local del medio ambiente, por ejemplo, si hay luz, entonces se ejecuta. La fuente de motivación en el caso interno de los agentes impulsores que tienen una "misión" se refiere únicamente al entorno.

Paradigmas organizacionales

Paradigmas organizacionales
Paradigmas organizacionales

Con el desarrollo de tales sistemas, se han desarrollado varios paradigmas organizacionales. Estas estructuras de sistemas multiagente establecen el marco para las relaciones e interacciones entre agentes.

Jerarquías. En este modelo, los agentes están jerárquicos según una estructura de árbol en la que cada nodo es un agente y tiene un enlace de permiso en sus nodos secundarios. Este modelo destruye el propósito general del sistema.

Holarchy se acerca a la jerarquía. No existe una relación de autoridad entre un agente y su subgrupo.

Una coalición es una alianza temporal de agentes que se unen y cooperan porque sus intereses personales coinciden. El valor de la coalición debe ser mayor que la suma de los valores individuales de los componentes del agente.

Las congregaciones se parecen mucho a coaliciones ycomandos Sin embargo, están destinados a ser permanentes y, por lo general, tienen múltiples objetivos que alcanzar. Además, los agentes pueden entrar y salir de congregaciones y pertenecer a varias al mismo tiempo.

La sociedad es un conjunto de diversos agentes que interactúan y se comunican. Tienen diferentes objetivos, no tienen el mismo nivel de racionalidad ni las mismas capacidades, pero todos obedecen leyes (normas) comunes.

Los agentes de la Federación ceden parte de su autonomía al delegado de su grupo. Los agentes del grupo interactúan solo con su delegado, que a su vez interactúa con los delegados de otros grupos.

Los agentes de ventas ofrecen artículos que los agentes de los compradores pueden reclamar. Este tipo de organización permite, por ejemplo, simular mercados reales y comparar diferentes estrategias comerciales.

Los agentes de la organización Matrix son jerárquicos. Sin embargo, a diferencia de la jerarquía presentada anteriormente, donde un agente solo está subordinado a unos pocos otros agentes, aquellos en una organización matricial pueden estar sujetos a varios otros.

Combinaciones: esta organización combinada combina muchos de los estilos anteriores. Esto podría ser, por ejemplo, una coalición o una jerarquía de equipos.

Inteligencia artificial

Inteligencia artificial
Inteligencia artificial

El objetivo de la ciencia cognitiva es comprender la naturaleza y el funcionamiento de la inteligencia artificial, que es lo que procesa la información interna para que tenga un propósito. Muchos conceptos se ajustan a esta descripción: humanos, computadoras, robots, sistemas sensoriales,la lista es interminable. Un tipo de sistema de particular interés para los científicos cognitivos es el auto-agente artificial que actúa sobre la información.

Un agente inteligente (IA) es capaz de tomar decisiones en base a su experiencia y puede elegir acciones en diferentes situaciones. Como sugiere el término "artificial", el tipo de agentes autónomos de interés no es algo creado por la naturaleza. Por tanto, un agente artificial es todo lo creado por las personas, capaz de actuar en base a la información que percibe, sus propias experiencias, decisiones y acciones.

El campo de la inteligencia extranatural proporciona las habilidades técnicas para traducir los tipos deseados de agentes a un lenguaje de programación, software relacionado y arquitectura adecuada (hardware y software relacionado) para implementar el agente en el mundo real o simulado.

Entorno del mundo de la percepción

Entorno del mundo de la percepción
Entorno del mundo de la percepción

Agente es cualquier cosa que capta el entorno a través de sensores y actúa sobre él a través de efectores, lo que suena bastante simple. Esta definición de agente cubre una amplia gama de máquinas, desde termostatos hasta objetos que realmente pueden aprender un pequeño repertorio de comportamiento.

Los sensores son herramientas que utiliza un agente para recopilar información sobre su mundo. El teclado y la videocámara pueden funcionar como sensores si están asociados al agente. Al final de la respuesta del sistema, los ejecutantes son las herramientas utilizadas por el agente para influir en el entorno. Ejemplos de efectores sonmonitor, impresora y brazo robótico.

Por lo general, el entorno es el dominio o el mundo del agente. Estos dominios, al menos por ahora, deben limitarse a tipos específicos de situaciones para evitar las posibilidades ilimitadas del mundo cotidiano.

Sistema de Influencia Autónoma

Sistema de impacto autónomo
Sistema de impacto autónomo

Un Agente Autónomo es “un sistema dentro y parte de un entorno que percibe ese entorno y actúa sobre él a lo largo del tiempo para llevar a cabo su propia agenda e influir en lo que experimenta en el futuro”. Esta definición de Franklin y Greisser refleja todas las funciones básicas de los agentes inteligentes, excepto su sociabilidad. Esto proporciona una buena aproximación a las características principales de la amplia variedad de IA en desarrollo.

Tales agentes sienten su entorno. Pero aquí los datos sensoriales o percepciones incluyen no solo datos sobre otros objetos, sino también la influencia del propio agente sobre el estado de cosas en el medio ambiente. Los sensores pueden ser orgánicos, como ojos y oídos y sus procesadores neuronales, o artificiales, como procesadores de video y audio integrados en una computadora digital. El entorno puede ser un área muy limitada, como un espacio cerrado, o muy complejo, como una bolsa de valores o una colección de asteroides. Los sensores deben coincidir con los tipos de objetos con los que interactúa el agente.

Tipo reflejo de interacción

El agente reflector tiene un mecanismo más complejo. En lugar de dinámica directaen relación con el medio ambiente, busca lo que debe hacer en la lista de reglas. El agente reflejo responde a una percepción dada con una respuesta programada. Incluso si hay miles de posibles respuestas a una percepción dada, el agente tiene una lista integrada de reglas de acción de la situación para ejecutar aquellas respuestas que ya han sido consideradas por el programador. La regla de acción de la situación es básicamente un imperativo hipotético.

Los agentes reflejos no son realmente muy brillantes. Simplemente no pueden manejar la novedad. El agente inteligente contiene las características de sus primos menos sofisticados, pero no está tan limitado. Actúa de acuerdo con la agenda. Tiene un conjunto de objetivos que persigue activamente. El agente basado en objetivos comprende el estado actual del entorno y cómo funciona normalmente ese entorno. Persigue grandes estrategias u objetivos que no se pueden lograr inmediatamente. Esto hace que el agente sea activo, no solo reactivo.

Utilidad funcional objetivo

En agentes más complejos, se aplica una medida de limpieza a las diversas acciones posibles que se pueden realizar en el entorno. Este planificador complejo es un agente basado en servicios. El agente basado en servicios evaluará cada escenario para ver qué tan bien logra ciertos criterios para obtener un buen resultado. Cosas como la probabilidad de éxito, los recursos necesarios para completar el escenario, la importancia de la meta a alcanzar, el tiempo que tomaría, todo puede tenerse en cuenta en los cálculos de la función de utilidad.

PorqueDado que un programador normalmente no puede predecir todos los estados del mundo con los que se encontrará un agente, la cantidad de reglas que se necesitaría escribir para un agente reflejo sería astronómica incluso en áreas muy simples, como programar reuniones u organizar rutas de transporte y suministros.

Lazo de control básico

Dada la definición de agente inteligente, considere el bucle de control básico escrito por el teórico de agentes Michael Vuladrich en 2000:

  • mantener la paz;
  • actualizar el modelo mundial interno;
  • lograr una intención deliberada;
  • usar medios/fines para obtener un modelo de intenciones;
  • ejecutar el plan;
  • terminar el proceso.

Este patrón necesita alguna interpretación. El agente observa el mundo; esto significa que él, usando sus sensores, recopila percepciones. El sensor puede ser un teclado conectado a una computadora digital o un procesador visual conectado a un robot. Puede ser cualquier cosa que le permita al agente reunir representaciones del mundo. Actualizar el modelo interno significa que el agente agrega una nueva percepción a su secuencia de percepciones e información programada sobre el mundo.

Plataformas de desarrollo multiagente

Plataformas de desarrollo multiagente
Plataformas de desarrollo multiagente

AnyLogic es un software de simulación CORMAS multiagente y multicomponente de código abierto basado en el lenguaje de programación orientado a objetos SmallTalk.

DoMIS es una herramienta de diseño de sistemas multiagente centrada en el "control operativo de sistemas complejos" y basada en el método de diseño B-ADSC.

JACK es un lenguaje de programación y un entorno de desarrollo para agentes cognitivos desarrollado por Agent Oriented Software como una extensión del lenguaje Java orientada a agentes.

GAMA es una plataforma de modelado de código abierto (LGPL) que ofrece un entorno de modelado espacialmente explícito basado en agentes que utiliza datos GIS para describir los agentes y su entorno.

JADE (Java Agent DEVELOPMENT) es un marco de desarrollo multiagente de código abierto basado en el lenguaje Java.

Siete modelos del estándar

En el proceso evolutivo de la investigación, hay más aportes sobre cómo crear un sistema que sea confiable y represente un mayor nivel de calidad. La tendencia a continuar es complementar o ampliar los métodos existentes que han logrado consolidar la toma de decisiones dentro del desarrollo.

El estándar metodológico permite, de forma comprensible y sencilla, crear un MAC, no solo utilizando lenguaje natural, sino también utilizando plantillas de descripción que ayudan en la especificación del sistema.

El estándar metodológico ofrece siete modelos de problemas o sus soluciones para la construcción de MAC:

  1. Un modelo de escenario que describe una empresa u organización.
  2. El modelo de metas y objetivos define y describe la estructura orgánica.
  3. El modelo de agente define a los humanos y los sistemas autónomos.
  4. El modelo a seguir asocia metas y objetivos con un agente en particular.
  5. El modelo organizativo describe el entorno al que se asocia un agente individual.
  6. El modelo de interacción describe la relación, enfatizando su coordinación de agentes.
  7. El modelo de diseño define la arquitectura del agente y de la red.

Ejemplos de interacción entre agentes

Ejemplos de sistemas multiagente
Ejemplos de sistemas multiagente

MAS se utilizan para simular la interacción entre agentes autónomos. El uso de sistemas multiagentes, por ejemplo, en sociología permite parametrizar los diversos agentes que componen la comunidad. Al agregar restricciones, puede intentar comprender cuál será el componente más efectivo para lograr el resultado esperado. Deben experimentar con escenarios que personas reales no podrían lograr, ya sea por razones técnicas o éticas.

Distributed IA se creó para resolver la complejidad de los grandes programas monolíticos de inteligencia no natural: ejecución, distribución y control centralizado. Para resolver un problema complejo, a veces es más fácil crear programas relativamente pequeños (agentes) en cooperación que un gran programa monolítico. La autonomía permite que el sistema se adapte dinámicamente a cambios imprevistos en el entorno.

Los ejemplos de sistemas multiagente en la industria del juego son numerosos y variados. Se utilizan en videojuegos y películas, incluido el software MASSIVE, por ejemplo, para simular el movimiento de multitudes en la trilogía de El señor de los anillos. ellos también puedenutilizado por empresas, por ejemplo, para rastrear el comportamiento de los clientes que navegan por sitios web.

MAS también se utilizan en el mundo de las finanzas. Por ejemplo, la plataforma MetaTrader 4 permite el uso de agentes expertos en operaciones automatizadas que siguen las tasas de Forex

Beneficios de usar el sistema

En la investigación de IA, la tecnología de sistemas basados en agentes se ha adoptado como un nuevo paradigma para conceptualizar, diseñar e implementar sistemas de software. Beneficios del enfoque multi-MAS:

  1. Comparte capacidades y recursos informáticos a través de una red de agentes interconectados.
  2. Permite la interconexión y la interoperabilidad de múltiples sistemas heredados existentes.
  3. Cubre varios campos, incluido el mantenimiento de aeronaves, billeteras electrónicas de libros, remoción de minas militares, comunicaciones y comunicaciones inalámbricas, planificación de logística militar, sistema de gestión de la cadena de suministro, planificación de misiones colaborativas, gestión de cartera financiera.

En la investigación, la tecnología de inteligencia artificial para sistemas basados en agentes se ha adoptado como un nuevo paradigma para la conceptualización, el diseño, la implementación y el aprendizaje multiagente de los sistemas de software.

Por lo tanto, MAC es una red débilmente acoplada de agentes de software que interactúan para resolver problemas más allá de la capacidad o el conocimiento individual de cada creador de problemas.

Recomendado: