Portada » Magisterio » Conceptos Clave de Agentes Inteligentes: Tipos, Entornos y Búsqueda
Un agente se define como una entidad que percibe su entorno a través de sensores y actúa sobre él mediante actuadores. La función del agente especifica la acción que este debe realizar en respuesta a cualquier secuencia de percepciones. El comportamiento del agente se evalúa mediante una medida de rendimiento. Un agente racional busca maximizar el valor esperado de esta medida, considerando las percepciones acumuladas.
El entorno de trabajo incluye la medida de rendimiento, el entorno externo, los actuadores y los sensores. Es crucial especificar completamente el entorno de trabajo al diseñar un agente. Los entornos varían según varios parámetros:
El programa del agente implementa la función del agente. Existen diversos diseños, que varían en eficiencia, solidez y flexibilidad. La elección del diseño depende de la naturaleza del entorno. Algunos tipos de agentes son:
Todos los agentes pueden mejorar su rendimiento mediante mecanismos de aprendizaje.
Para buscar soluciones, un agente debe formular un objetivo y, a partir de él, un problema. Un problema consta de:
El entorno del problema se representa como un espacio de estados. Una solución es un camino a través del espacio de estados desde el estado inicial hasta un estado objetivo.
Se puede utilizar un algoritmo general de BÚSQUEDA-ÁRBOL para resolver cualquier problema. Las variantes del algoritmo incorporan diferentes estrategias. Los algoritmos de búsqueda se evalúan según:
La complejidad depende de b (factor de ramificación) y d (profundidad de la solución más superficial).
En entornos parcialmente observables, el agente puede aplicar algoritmos de búsqueda en el espacio de estados de creencia. En algunos casos, se necesita un plan de contingencia para manejar circunstancias desconocidas.
Búsqueda primero el mejor es una BÚSQUEDA-GRAFO que selecciona para expansión los nodos de menor costo según alguna medida. Se utiliza una función heurística h(n) que estima el costo de una solución desde n.
El rendimiento de los algoritmos de búsqueda heurística depende de la calidad de la función heurística. Las heurísticas se pueden construir:
BRPM (Búsqueda Recursiva Primero el Mejor) y A*MS (A* Simplificado con Memoria) son algoritmos robustos y óptimos que utilizan cantidades limitadas de memoria.
Los métodos de búsqueda local, como la ascensión de colinas, operan en formulaciones completas de estados. El temple simulado es un algoritmo estocástico que puede encontrar soluciones óptimas. Muchos métodos de búsqueda local se aplican a espacios continuos.
Un algoritmo genético es una búsqueda de ascensión de colinas estocástica que mantiene una población de estados. Los nuevos estados se generan por mutación y cruce.
Los problemas de exploración surgen cuando el agente desconoce los estados y acciones de su entorno. Los agentes de búsqueda en línea pueden construir un mapa y encontrar un objetivo en entornos seguramente explorables. Las estimaciones heurísticas actualizadas por la experiencia ayudan a escapar de mínimos locales.
Los agentes inteligentes necesitan conocimiento para tomar decisiones. El conocimiento se representa mediante sentencias en un lenguaje de representación del conocimiento y se almacena en una base de conocimiento.
Un agente basado en conocimiento consta de una base de conocimiento y un mecanismo de inferencia. El agente almacena sentencias, infiere nuevas sentencias y las utiliza para decidir qué acciones tomar.
Un lenguaje de representación se define por su sintaxis (estructura de las sentencias) y su semántica (valor de verdad en cada mundo posible o modelo).
La implicación entre sentencias es crucial. Una sentencia a implica otra sentencia B si B es verdadera en todos los mundos donde a lo es. Conceptos relacionados son la validez (a => B) y la insatisfacibilidad (a A ¬B).
La inferencia es el proceso de derivar nuevas sentencias a partir de las existentes. Los algoritmos de inferencia sólidos solo derivan sentencias implicadas; los algoritmos completos derivan todas las sentencias implicadas.
La lógica proposicional es un lenguaje sencillo con símbolos proposicionales y conectivas lógicas. Permite manejar proposiciones verdaderas, falsas o desconocidas.
La implicación se puede comprobar enumerando los modelos (que son finitos). Existen algoritmos eficientes de comprobación de modelos, como backtracking y búsqueda local.
Las reglas de inferencia son patrones de inferencia sólidos. La resolución proporciona un algoritmo de inferencia completo para bases de conocimiento en forma normal conjuntiva. El encadenamiento hacia delante y el encadenamiento hacia atrás son algoritmos adecuados para bases de conocimiento en cláusulas de Horn.
Se pueden diseñar dos tipos de agentes que utilizan la lógica proposicional:
La lógica proposicional es útil para ciertas tareas, pero no es escalable a entornos ilimitados debido a su limitada capacidad para manejar el tiempo, el espacio o patrones genéricos de relaciones entre objetos.