Soar (arquitectura cognitiva) - Soar (cognitive architecture)

Soar es una arquitectura cognitiva , creada originalmente por John Laird , Allen Newell y Paul Rosenbloom en la Universidad Carnegie Mellon . (Rosenbloom continuó sirviendo como co-investigador principal después de mudarse a la Universidad de Stanford , luego al Instituto de Ciencias de la Información de la Universidad del Sur de California ). Ahora es mantenido y desarrollado por el grupo de investigación de John Laird en la Universidad de Michigan .

El objetivo del proyecto Soar es desarrollar los bloques de construcción computacionales fijos necesarios para los agentes inteligentes en general : agentes que pueden realizar una amplia gama de tareas y codificar, usar y aprender todo tipo de conocimiento para realizar la gama completa de capacidades cognitivas que se encuentran en humanos, como la toma de decisiones, la resolución de problemas, la planificación y la comprensión del lenguaje natural. Es tanto una teoría de lo que es la cognición como una implementación computacional de esa teoría. Desde sus inicios en 1983 como tesis de John Laird , los investigadores de IA la han utilizado ampliamente para crear agentes inteligentes y modelos cognitivos de diferentes aspectos del comportamiento humano . La descripción más actual y completa de Soar es el libro de 2012, The Soar Cognitive Architecture.

Teoría

Soar encarna múltiples hipótesis sobre las estructuras computacionales que subyacen a la inteligencia general , muchas de las cuales se comparten con otras arquitecturas cognitivas, incluida ACT-R , que fue creada por John R. Anderson , y LIDA , que fue creada por Stan Franklin . Recientemente, el énfasis en Soar ha estado en la IA general (funcionalidad y eficiencia), mientras que el énfasis en ACT-R siempre ha estado en el modelado cognitivo (modelado detallado de la cognición humana).

La teoría original de la cognición que subyace a Soar es la Hipótesis del Espacio Problema, que se describe en el libro de Allen Newell , Unified Theories of Cognition . y se remonta a uno de los primeros sistemas de inteligencia artificial creados, Newell, Simon y Shaw 's Logic Theorist , presentado por primera vez en 1955. La Hipótesis del Espacio Problema sostiene que todo comportamiento orientado a objetivos puede plantearse como una búsqueda a través de un espacio de estados posibles (un espacio problemático ) mientras se intenta alcanzar una meta. En cada paso, se selecciona un solo operador y luego se aplica al estado actual del agente, lo que puede conducir a cambios internos, como la recuperación de conocimientos de la memoria a largo plazo o modificaciones o acciones externas en el mundo. (El nombre de Soar se deriva de este ciclo básico de Estado, Operador y Resultado; sin embargo, ya no se considera un acrónimo). Inherente a la Hipótesis del Espacio Problema es que todo comportamiento, incluso una actividad compleja como la planificación, es descomponible en una secuencia de selección y aplicación de operadores primitivos, que cuando se mapean en el comportamiento humano toman ~ 50ms.

Una segunda hipótesis de la teoría de Soar es que, aunque solo se puede seleccionar un solo operador en cada paso, lo que genera un cuello de botella en serie, los procesos de selección y aplicación se implementan a través de la activación de reglas paralelas, que proporcionan una recuperación del conocimiento procedimental dependiente del contexto.

Una tercera hipótesis es que si el conocimiento para seleccionar o aplicar un operador es incompleto o incierto, surge un callejón sin salida y la arquitectura crea automáticamente un subestado. En el subestado, se utiliza de forma recursiva el mismo proceso de resolución de problemas, pero con el objetivo de recuperar o descubrir conocimientos para que la toma de decisiones pueda continuar. Esto puede conducir a una pila de subestados, donde surgen naturalmente los métodos tradicionales de problemas, como la planificación o la descomposición jerárquica de tareas . Cuando los resultados creados en el subestado resuelven el impasse, el subestado y sus estructuras asociadas se eliminan. El enfoque general se denomina Subobjetivo universal.

Estos supuestos conducen a una arquitectura que admite tres niveles de procesamiento. En el nivel más bajo, se encuentra el procesamiento ascendente, paralelo y automático. El siguiente nivel es el deliberativo, donde el conocimiento del primer nivel se utiliza para proponer, seleccionar y aplicar una sola acción. Estos dos niveles implementan un comportamiento rápido y hábil, y corresponden aproximadamente al nivel de procesamiento del Sistema 1 de Kahneman . El comportamiento más complejo surge automáticamente cuando el conocimiento es incompleto o incierto, a través de un tercer nivel de procesamiento utilizando subestados, que corresponde aproximadamente al Sistema 2.

Una cuarta hipótesis en Soar es que la estructura subyacente es modular, pero no en términos de módulos basados ​​en tareas o capacidades, como planificación o lenguaje, sino como módulos independientes de tareas que incluyen: un módulo de toma de decisiones; módulos de memoria (memorias espaciales / visuales y de trabajo a corto plazo; memorias procedimentales, declarativas y episódicas a largo plazo), mecanismos de aprendizaje asociados con todas las memorias a largo plazo; y módulos perceptivos y motores. Hay más suposiciones sobre las propiedades específicas de estos recuerdos que se describen a continuación, incluido que todo el aprendizaje se realiza en línea y es incremental.

Una quinta hipótesis es que los elementos de la memoria (excepto los de la memoria espacial / visual) se representan como estructuras relacionales simbólicas. La hipótesis de que un sistema simbólico es necesario para la inteligencia general se conoce como hipótesis del sistema de símbolos físicos . Una evolución importante en Soar es que todas las estructuras simbólicas tienen metadatos estadísticos asociados (como información sobre actualidad y frecuencia de uso, o recompensa futura esperada) que influyen en la recuperación, mantenimiento y aprendizaje de las estructuras simbólicas.

Arquitectura

Ciclo de procesamiento - procedimiento de decisión

El ciclo principal de procesamiento de Soar surge de la interacción entre la memoria procedimental (su conocimiento sobre cómo hacer las cosas) y la memoria de trabajo (su representación de la situación actual) para apoyar la selección y aplicación de operadores. La información en la memoria de trabajo se representa como una estructura gráfica simbólica , arraigada en un estado. El conocimiento en la memoria procedimental se representa como reglas si-entonces (conjuntos de condiciones y acciones), que se comparan continuamente con los contenidos de la memoria de trabajo. Cuando las condiciones de una regla partidos estructuras en la memoria de trabajo, se dispara y lleva a cabo sus acciones. Esta combinación de reglas y memoria de trabajo también se denomina sistema de producción . A diferencia de la mayoría de los sistemas de producción, en Soar, todas las reglas que coinciden se activan en paralelo.

En lugar de tener la selección de una sola regla como el quid de la toma de decisiones, la toma de decisiones de Soar ocurre a través de la selección y aplicaciones de operadores , que son propuestos, evaluados y aplicados por reglas. Un operador es propuesto por reglas que prueban el estado actual y crean una representación del operador en la memoria de trabajo, así como una preferencia aceptable , lo que indica que el operador debe ser considerado para la selección y aplicación. Las reglas adicionales coinciden con el operador propuesto y crean preferencias adicionales que lo comparan y evalúan con otros operadores propuestos. Las preferencias se analizan mediante un procedimiento de decisión, que selecciona el operador preferido y lo instala como el operador actual en la memoria de trabajo. Las reglas que coinciden con el operador actual se activan para aplicarlo y realizar cambios en la memoria de trabajo. Los cambios en la memoria de trabajo pueden ser simples inferencias, consultas para la recuperación de las memorias semánticas o episódicas a largo plazo de Soar, comandos al sistema motor para realizar acciones en un entorno o interacciones con el Sistema Visual Espacial (SVS), que es la memoria de trabajo. interfaz con la percepción. Estos cambios en la memoria de trabajo conducen a la propuesta y evaluación de nuevos operadores, seguidos de la selección de uno y su aplicación.

Aprendizaje reforzado

Soar admite el aprendizaje por refuerzo , que ajusta los valores de las reglas que crean preferencias numéricas para evaluar a los operadores, en función de la recompensa. Para proporcionar la máxima flexibilidad, existe una estructura en la memoria de trabajo donde se crea la recompensa.

Impasses, subestados y fragmentación

Si las preferencias de los operadores son insuficientes para especificar la selección de un solo operador, o no hay reglas suficientes para aplicar un operador, surge un callejón sin salida. En respuesta a un callejón sin salida, se crea un subestado en la memoria de trabajo, con el objetivo de resolver el callejón sin salida. El conocimiento procesal adicional puede entonces proponer y seleccionar operadores en el subestado para obtener más conocimiento, y crear preferencias en el estado original o modificar ese estado para que se resuelva el impasse. Los subestados proporcionan un medio para el razonamiento complejo bajo demanda, incluida la descomposición jerárquica de tareas, la planificación y el acceso a las memorias declarativas a largo plazo. Una vez que se resuelve el impasse, se eliminan todas las estructuras del subestado, excepto los resultados. El mecanismo de fragmentación de Soar compila el procesamiento en el subestado que condujo a los resultados en reglas. En el futuro, las reglas aprendidas se activan automáticamente en situaciones similares para que no surja ningún punto muerto, convirtiendo gradualmente el razonamiento complejo en un procesamiento automático / reactivo. Recientemente, el procedimiento general de Universal Subgoaling se ha extendido a través de un mecanismo de aumento automático de la base de conocimientos dirigido a objetivos que permite resolver un callejón sin salida mediante la recombinación, de una manera innovadora y orientada a problemas, el conocimiento que posee un agente Soar.

Entrada y salida simbólica

La entrada y salida simbólica se produce a través de estructuras de memoria de trabajo adjuntas al estado superior llamado enlace de entrada y enlace de salida. Si se crean estructuras en el enlace de salida en la memoria de trabajo, estas se traducen en comandos para acciones externas (por ejemplo, control de motores).

Sistema visual espacial e imágenes mentales

Para apoyar la interacción con los sistemas de visión y el razonamiento no simbólico, Soar tiene su Sistema Visual Espacial (SVS). SVS representa internamente el mundo como un gráfico de escena , una colección de objetos y subobjetos de componentes, cada uno con propiedades espaciales como forma, ubicación, pose, posición relativa y escala. Un agente de Soar que usa SVS puede crear filtros para extraer automáticamente características y relaciones de su gráfico de escena, que luego se agregan a la memoria de trabajo. Además, un agente Soar puede agregar estructuras a SVS y usarlo para imágenes mentales. Por ejemplo, un agente puede crear un objeto hipotético en SVS en una ubicación determinada y consultar si choca con algún objeto percibido.

Memoria semántica

La memoria semántica (SMEM) en Soar está diseñada para ser una memoria muy grande a largo plazo de estructuras similares a hechos. Los datos en SMEM se representan como gráficos cíclicos dirigidos. Las estructuras se pueden almacenar o recuperar mediante reglas que crean comandos en un área reservada de la memoria de trabajo. Las estructuras recuperadas se agregan a la memoria de trabajo.

Las estructuras SMEM tienen valores de activación que representan la frecuencia o antigüedad de uso de cada memoria, implementando el esquema de activación de nivel base desarrollado originalmente para ACT-R. Durante la recuperación, se recupera la estructura en SMEM que coincide con la consulta y tiene la activación más alta. Soar también admite la propagación de la activación , donde la activación se propaga desde las estructuras SMEM que se han recuperado en la memoria de trabajo a otras memorias a largo plazo a las que están vinculadas. Estos recuerdos, a su vez, propagan la activación a los recuerdos de sus vecinos, con cierto deterioro. Difundir la activación es un mecanismo que permite que el contexto actual influya en las recuperaciones de la memoria semántica.

Memoria episódica

La memoria episódica (EPMEM) registra automáticamente instantáneas de la memoria de trabajo en una secuencia temporal. Los episodios anteriores se pueden recuperar en la memoria de trabajo mediante consultas. Una vez que se ha recuperado un episodio, se puede recuperar el episodio siguiente (o anterior). Un agente puede emplear EPMEM para reproducir secuencialmente episodios de su pasado (lo que le permite predecir los efectos de las acciones), recuperar recuerdos específicos o consultar episodios que posean ciertas estructuras de memoria.

Aprendiendo

Cada uno de los recuerdos a largo plazo de Soar tiene asociados mecanismos de aprendizaje en línea que crean nuevas estructuras o modifican metadatos en función de la experiencia de un agente. Por ejemplo, Soar aprende nuevas reglas para la memoria procedimental a través de un proceso llamado fragmentación y usa el aprendizaje por refuerzo para ajustar las reglas involucradas en la selección de operadores.

Desarrollo de agentes

El enfoque estándar para desarrollar un agente en Soar comienza con la escritura de reglas que se cargan en la memoria procedimental y la inicialización de la memoria semántica con el conocimiento declarativo apropiado. El proceso de desarrollo del agente se explica en detalle en el manual oficial de Soar así como en varios tutoriales que se facilitan en la web del grupo de investigación .

Software

Ampliando la arquitectura cognitiva de Soar por John Laird, 2008.

La arquitectura Soar es mantenida y ampliada por el grupo de investigación de John Laird en la Universidad de Michigan. La arquitectura actual está escrita en una combinación de C y C ++, y está disponible gratuitamente (licencia BSD) en el sitio web del grupo de investigación .

Soar puede interactuar con entornos de lenguaje externos, incluidos C ++, Java, Tcl y Python a través del lenguaje de marcado Soar (SML). SML es un mecanismo principal para crear instancias de agentes Soar e interactuar con sus enlaces de E / S.

JSoar es una implementación de Soar escrita en Java. Lo mantiene SoarTech , una empresa de investigación y desarrollo de IA. JSoar sigue de cerca la implementación de la arquitectura de la Universidad de Michigan, aunque generalmente no refleja los últimos desarrollos y cambios de esa versión de C / C ++.

Aplicaciones

A continuación se muestra una lista histórica de diferentes áreas de aplicaciones que se han implementado en Soar. Se han implementado más de cien sistemas en Soar, aunque la gran mayoría de ellos son tareas de juguete o rompecabezas.

Rompecabezas y juegos

A lo largo de su historia, Soar se ha utilizado para implementar una amplia variedad de rompecabezas y juegos clásicos de IA, como Tower of Hanoi, Water Jug, Tic Tac Toe, Eight Puzzle, Missionaries and Cannibals y variaciones del mundo Blocks . Uno de los logros iniciales de Soar fue mostrar que muchos métodos débiles diferentes surgirían naturalmente del conocimiento de la tarea que estaba codificado en él, una propiedad llamada Método Débil Universal.

Configuracion de Computadora

La primera aplicación a gran escala de Soar fue R1-Soar, una reimplementación parcial por Paul Rosenbloom del sistema experto R1 ( XCON ) que John McDermott desarrolló para configurar computadoras DEC. R1-Soar demostró la capacidad de Soar para escalar a problemas de tamaño moderado, utilizar la descomposición y planificación jerárquica de tareas y convertir la planificación deliberada y la resolución de problemas en una ejecución reactiva mediante la fragmentación.

Comprensión del lenguaje natural

NL-Soar fue un sistema de comprensión del lenguaje natural desarrollado en Soar por Jill Fain Lehman, Rick Lewis, Nancy Green, Deryle Lonsdale y Greg Nelson. Incluyó capacidades para la comprensión, generación y diálogo del lenguaje natural, enfatizando el análisis y la generación incrementales en tiempo real. NL-Soar se utilizó en una versión experimental de TacAir-Soar y en NTD-Soar.

Pilotos simulados

La segunda aplicación a gran escala de Soar implicó el desarrollo de agentes para su uso en la formación en simulación distribuida a gran escala. Dos sistemas principales para volar misiones aéreas tácticas de EE. UU. Se desarrollaron conjuntamente en la Universidad de Michigan y el Instituto de Ciencias de la Información (ISI) de la Universidad del Sur de California. El sistema de Michigan se llamó TacAir-Soar y voló (en simulación) misiones tácticas militares estadounidenses de ala fija (como apoyo aéreo cercano, ataques, CAP , reabastecimiento de combustible y misiones SEAD ). El sistema ISI se llamaba RWA-Soar y realizaba misiones de alas giratorias (helicópteros). Algunas de las capacidades incorporadas en TacAir-Soar y RWA-Soar fueron atención, conciencia situacional y adaptación, planificación en tiempo real y replanificación dinámica, y comunicación, coordinación y cooperación complejas entre combinaciones de agentes de Soar y humanos. Estos sistemas han participado en DARPA ‘s Teatro Sintético de la Guerra (Stow-97) Demostración avanzado concepto de tecnología (ACTD), que en su momento fue el más grande de fildeo de agentes sintéticos en una batalla conjunto sobre un período de 48 horas, y de la formación de personal en servicio activo. Estos sistemas demostraron la viabilidad de usar agentes de IA para entrenamiento a gran escala.

VAPOR

Una de las consecuencias importantes del proyecto RWA-Soar fue el desarrollo de STEAM por Milind Tambe , un marco para el trabajo en equipo flexible en el que los agentes mantuvieron modelos de sus compañeros de equipo utilizando el marco de intenciones conjuntas de Cohen & Levesque .

NTD-Soar

NTD-Soar fue una simulación del Director de Pruebas de la NASA (NTD), la persona responsable de coordinar la preparación del Transbordador Espacial de la NASA antes del lanzamiento. Era un modelo cognitivo integrado que incorporó muchas capacidades cognitivas complejas diferentes, incluido el procesamiento del lenguaje natural , la atención y la búsqueda visual , y la resolución de problemas en un modelo de agente amplio.

Humanos virtuales

Soar se ha utilizado para simular humanos virtuales que apoyan los diálogos cara a cara y la colaboración dentro de un mundo virtual desarrollado en el Instituto de Tecnología Creativa de la USC. Los humanos virtuales tienen capacidades integradas de percepción , comprensión del lenguaje natural , emociones , control corporal y acción, entre otras.

IA de juegos y aplicaciones móviles

Los agentes de IA del juego se han creado utilizando Soar para juegos como StarCraft , Quake II , Descent 3 , Unreal Tournament y Minecraft , y admiten capacidades como el razonamiento espacial , la estrategia en tiempo real y la anticipación del oponente . También se han creado agentes de inteligencia artificial para videojuegos, incluido Infinite Mario, que utilizó aprendizaje por refuerzo, y Frogger II , Space Invaders y Fast Eddie, que utilizó tanto aprendizaje por refuerzo como imágenes mentales .

Soar puede ejecutarse de forma nativa en dispositivos móviles . Se ha desarrollado una aplicación móvil para el juego Liar's Dice para iOS que ejecuta la arquitectura Soar directamente desde el teléfono como motor para las IA de los oponentes.

Robótica

Se han creado muchas aplicaciones robóticas diferentes utilizando Soar desde que se implementó el Robo-Soar original en 1991 para controlar un brazo robótico Puma. Estos han variado desde el control de robots móviles hasta los robots REEM de servicio humanoide , mulas robóticas con tareas y vehículos submarinos no tripulados .

Aprendizaje interactivo de tareas

Un enfoque actual de investigación y desarrollo en la comunidad de Soar es el aprendizaje interactivo de tareas (ITL), el aprendizaje automático de nuevas tareas, características del entorno, restricciones de comportamiento y otras especificaciones a través de la interacción natural del instructor. La investigación en ITL se ha aplicado a los juegos de mesa y la navegación en varias habitaciones.

Planificación

Al principio, Merle-Soar demostró cómo Soar podía aprender una tarea de programación compleja siguiendo el modelo del programador humano líder en una planta de producción de parabrisas ubicada cerca de Pittsburgh.

Ver también

Referencias

Bibliografía

enlaces externos