Un agente es un sistema informático, situado en algún entorno, dentro del cual actúa de forma autónoma y flexible para así cumplir sus objetivos.
Existen como en todo el resto del dominio de la inteligencia artificial, dos enfoques para construir sistemas multiagentes: Por otra parte, los entornos de los agentes pueden organizarse según propiedades como la accesibilidad (si es posible reunir información completa sobre el entorno), el determinismo (si una acción causa un efecto definido), la dinámica (cuántas entidades influyen en el entorno en un momento dado), la discreción (si el número de acciones posibles en el entorno es finito), la episodicidad (si las acciones del agente en determinados periodos de tiempo influyen en otros periodos),[4] y la dimensionalidad (si las características espaciales son factores importantes del entorno y el agente tiene en cuenta el espacio en su toma de decisiones)[5].
Se debe considerar el entorno de un agente para diseñar sus posibles entradas y salidas.
Reactivo: Percibe la condición del ambiente y responde a ella en un tiempo adecuado.
Proactivo: Los agentes no deben actuar sólo guiados por los estímulos del entorno, deben decidir si actuar o realizar alguna acción que permita o incite el lograr sus objetivos.
Pueden compartir su información y ayudar a otros agentes para resolver un problema.
Los sistemas multiagente pueden manifestar autoorganización, así como auto-dirección y otros paradigmas de control y comportamientos complejos relacionados, incluso cuando las estrategias individuales de todos sus agentes son simples.
Cuando los agentes pueden compartir su conocimiento usando cualquier lenguaje acordado, dentro de los límites del protocolo de comunicación del sistema, el enfoque puede conducir a una mejora común.
Es decir, artefactos de desarrollo que son específicamente concebidos para crear sistemas basados en agentes.
Los medios estáticos son más fáciles de tratar ya que el agente no necesita estar pendiente del mundo mientras está tomando una decisión sobre una acción, ni necesita preocuparse del tiempo transcurrido.
Se necesitan protocolos y mecanismos efectivos para asegurar que los agentes puedan colaborar eficientemente.
Los sistemas multiagentes deben implementar medidas adecuadas para proteger la información sensible y prevenir comportamientos no deseados.
Otras aplicaciones incluyen el transporte, la logística,[13] los gráficos, sistemas de información geográfica, diagnóstico,[14] así como en muchos otros campos.