SOAR (State, Operator And Result) cognitive architectures, developed for thirty years under Allen Newell [March 19, 1927 – July 19, 1992] at Carnegie Mellon University, Pittsburgh, PA, USA, and John Edwin Laird at the University of Michigan, Ann Arbor, Michigan, USA and Paul S. Rosenbloom at the University of Southern California (USC).
Soar Home page | Soar cognitive architecture | Soar Wiki | John E. Laird's Home Page | Downloads
John E. Laird is a member of the Artificial Intelligence Laboratory in the Computer Science and Engineering Division of the Electrical Engineering and Computer Science Department of the College of Engineering at the University of Michigan, Ann Arbor, Michigan, USA.
Общие сведения
Когнитивная архитектура SOAR [Laird, 2008], [Laird, Newell, Rosenbloom, 1987], [Newell, 1990] разрабатывается уже более 30 лет (с начала 1980-х годов) интернациональной исследовательской группой по проекту, сначала под руководством Аллена Ньюэлла (Allen Newell) (19 марта 1927 – 19 июля 1992) в Университете Карнеги-Меллона (Carnegie Mellon University), Питтсбург, Пенсильвания, США, затем Джона Лэйрда (John Laird) в Лаборатории искусственного интеллекта (Artificial Intelligence Laboratory) Университета штата Мичиган (University of Michigan), г. Энн-Арбор, Мичиган, США.
John E. Laird is also director of the Center for Cognitive Architecture at the University of Michigan.
Email: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. | Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. | SOAR Lab
Материалы разработки (дистрибутивы, руководства, инструментальные средства и др.) доступны на странице http://code.google.com/p/soar/wiki/Downloads.
Процедурные долгосрочные знания в архитектуре Soar принимают форму продукционных правил, которые в свою очередь, организованы в терминологии операторов, связанных с пространствами задач. Некоторые операторы описывают простые, примитивные действия, которые изменяют внутреннее состояние агента или генерируют примитивные внешние действия, в то время как другие операторы описывают более абстрактные деятельности.
На протяжении многих лет Soar представляла все долгосрочные знания в этой форме, но в последнее время были добавлены отдельные эпизодическая память и семантическая память. Эпизодическая память [Nuxoll & Laird, 2007] хранит историю предыдущих состояний, в то время как семантическая память содержит ранее известные факты.
Архитектура Soar [Laird et al., 1987; Newell, 1990] кодирует процедурную долгосрочную память в виде правил продукций, тогда как рабочая память содержит множество элементов с атрибутами и значениями. Исполнительная система согласовывает продукции с элементами в рабочей памяти и автоматически генерирует подцели, когда она не может продолжать свою работу. Когда обработка в подцели позволяет агенту преодолеть этот тупик, архитектура добавляет новую порцию (chunk) в долгосрочную память, которая суммирует обработку подцели. В недавних версиях эпизодическое и семантическое обучение сохраняет элементы рабочей памяти как структуры долгосрочной памяти, в то время как обучение с подкреплением изменяет весовые коэффициенты, связанные с правилами, которые выбирают операторы.
Все задачи в Soar сформулированы как попытки достижения поставленных целей. Операторы выполняют основные делиберативные акты системы, знания используются для динамического определения их выбора и применения. Основной цикл обработки повторно предлагает, выбирает и применяет операторы текущего пространства задач к пространству задач, продвигаясь вперед на одно решение за один момент времени. Однако, когда знаний о выборе оператора недостаточно для определения следующего оператора, который следует применить, или когда абстрактный оператор не может быть реализован, возникает тупик; в ответ Soar создает новую цель, чтобы определить, какой оператор должен быть выбран, или как должен быть реализован этот абстрактный оператор.
Этот процесс может привести к динамической генерации иерархии целей, в которой задачи разлагаются на подзадачи по мере необходимости. «Состояние» конкретной цели включает в себя все свойства задач, находящихся выше нее в иерархии, плюс любые дополнительные когнитивные структуры, необходимые для выбора и применения операторов в этой подцели. Обработка в подцели включает тот же основной цикл обработки выбора и применения операторов.
Подцели могут также получать делиберативный (deliberately) доступ к эпизодической или семантической памяти, чтобы получить знания, необходимые для выхода из тупика. Верхнее состояние включает в себя все сенсорные данные, полученные из внешней среды, поэтому эта информация также доступна для всех подзадач. В любом цикле, состояния на различных уровнях иерархии целей могут изменяться, как правило, в связи с изменением сенсорных данных или в результате применений операторов в подцелях. Когда система разрешает тупиковую ситуацию, созданную какой-либо целью, эта цель исчезает вместе со всеми подзадачами, расположенными ниже.
Soar имеет несколько механизмов обучения для различных видов знаний: разбиение данных на порции (chunking) и обучение с подкреплением позволяют приобрести процедурные знания, тогда как эпизодическое и семантическое обучение позволяют приобрести соответствующие им виды декларативных знаний. Разбиение данных на порции (chunking) происходит, когда в подцели производится один или несколько результатов [Laird, Rosenbloom,& Newell, 1986]. Когда это происходит, Soar узнает новую порцию данных, представленную, как продукционное правило, которое суммирует обработку, которая сгенерировала эти результаты. Действия какой-либо порции данных основаны на этих результатах, в то время как ее условия основаны на тех аспектах целей, расположенных выше данной подцели, которые имеют отношение к определению этих результатов.
Как только агент узнал порцию данных (обучился), он добавляет ее (fires) и исполняет в новых ситуациях, которые подобны по соответствующим измерениям, что часто сразу дает требуемые результаты, исключая таким образом тупик, который привел к его образованию.
Обучение с подкреплением регулирует числовые значения, связанные с правилами, которые помогают выбрать операторы [Nason & Laird, 2004]. Эпизодическое обучение записывает содержимое рабочей памяти в моментальные снимки (snapshots), в то время как семантическое обучение хранит отдельные элементы рабочей памяти для последующего извлечения.
Исследователи использовали Soar для разработки разнообразных изощренных агентов, которые продемонстрировали впечатляющую функциональность. Наиболее заметным был агент TAC-Air-Soar [Tambe et al., 1995], который моделировал пилотов истребителей в военных учениях, в которых применялись сценарии воздушных боев.
Совсем недавно архитектура Soar стала поддерживаться рядом интеллектуальных агентов, которые управляют синтетическими персонажами в интерактивных компьютерных играх [Magerko et al., 2004].
Другой успех связан с использованием Soar в моделировании деталей обработки человеческого языка [Lewis, 1993], категоризации [Miller & Laird, 1996] и других аспектов познания, но акцент был сделан на демонстрации функциональности высокого уровня, а не на пригодности к количественным измерениям.
Integrated AI Architecture
In development for thirty years, Soar is a general cognitive architecture that integrates knowledge-intensive reasoning, reactive execution, hierarchical reasoning, planning, and learning from experience, with the goal of creating a general computational system that has the same cognitive abilities as humans.
Soar Cognitive Architecture - Software Development
Researchers all over the world, both from the fields of artificial intelligence and cognitive science, are using Soar for a variety of tasks. It has been in use since 1983, evolving through many different versions to where it is now Soar, Version 9.
The current stable version of Soar is 9.3.2 (Soar 9.4.0). This release of Soar continues the 9.3 line which includes modules for reinforcement learning (RL), episodic memory (EpMem), and semantic memory (SMem), as well as everything from previous versions of Soar. It includes a new "forgetting" mechanism, several bug fixes, a new distribution structure, and a simplification of how libraries are built in Soar. All learning mechanisms are disabled by default.
University of Michigan Soar Group
A University of Michigan research group focused on AI research using Soar, a general cognitive architecture for systems that exhibit intelligent behavior.
Soar home page: http://soar.eecs.umich.edu/ | Soar News | Soar Knowledge Base | Downloads |
The Soar home page has a number of useful resources for learning Soar, in particular the Soar tutorial.
Entries on the Soar Wiki and the Soar FAQ pages also provide answers to many common questions about Soar.
Other links:
The GitHub project page
Soar home page: http://sourceforge.net/p/soar/
Soar home page: http://code.google.com/p/soar
Implementation: C | CSharp | Java | Python
License: BSD
Platform: Windows | Linux
Jsoar - Pure Java implementation of the Soar cognitive architecture
jsoar home pages: http://soartech.github.io/jsoar/ | http://jsoar.googlecode.com |
There are a few benefits to a pure-Java implementation of Soar:
∙ Idiomatic Java API in contrast to CSoar's SWIG-generated bindings.
∙ "Free" multi-language support (JRuby, Jython, Rhino (JavaScript), Groovy, Scala, Clojure, etc.).
∙ A codebase and tools more friendly to rapid research prototyping.
∙ No native libraries to deal with.
∙ Cleaner integration with "enterprise" systems.
Note that JSoar is an implementation of Soar. To use it effectively, you'll still need to be able to program Soar.
Here is Soar running in a Java applet.
Here is a screenshot of the debugger in action.
Documentation
Frequently Anticipated Questions
JSoarUsersGuide - Start here if you want to use JSoar in a project
JSoarDevelopersGuide - Start here if you want to check out and compile the source code
Javadoc
Related Projects:
biSOAR Cognitive Architecture
Soar at the University of Southern California (USC), USA
Annual Soar Workshop
Each year, members of the Soar community - faculty, scientists, graduate students, technical staff and developers - gather together for several days of intensive interaction and exchange on Soar. The Soar community is widely distributed geographically, so these workshops provide an opportunity to have face-to-face conversations, learn about the current status of other participants' research and get previews of what will happen in the future.
Workshop organizers: The Center for Cognitive Architecture at the University of Michigan and Soar Technology, Inc.
All workshop information and archives are available on the web page:
http://ai.eecs.umich.edu/soar/sitemaker/workshop/.
Periodic updates may be announced to soar-group (archives).
Proceedings from the previous Soar workshops are available online.
Материалы семинара (доклады, презентации, труды семинара, другие публикации) отражают этапы разработки этой когнитивной архитектуры и доступны всем.
The 35th Soar Workshop, June 2-5, 2015, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 34th Soar Workshop, June 16-20, 2014, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 33rd Soar Workshop, June 4-6, 2013, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 32nd Soar Workshop, June 18-22, 2012, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 31st Soar Workshop, June 13-17, 2011, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 30th Soar Workshop, June, 2010, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 29th Soar Workshop, June 22-26, 2009, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 28th Soar Workshop, May 4-7, 2008, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 27th Soar Workshop, May 21-25, 2007, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 26th Soar Workshop, May 22-26, 2006, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 25th Soar Workshop, June 13-17, 2005, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 24th Soar Workshop, June 7-11, 2004, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 23rd Soar Workshop, June 23-27, 2003, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 22nd Soar Workshop, May 30-June 2, 2002 , University of Michigan, Ann Arbor, MI, USA
Proceedings
The 21st Soar Workshop, May 20-23, 2001, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 20th North American Soar Workshop, May 11-14, 2000, University of Michigan, Ann Arbor, MI, USA
Proceedings
The 19th North American Soar Workshop, May 20-23, 1999, University of Michigan, Ann Arbor, MI, USA
Proceedings
Internet Groups and Mailing Lists:
soar-group A mailing list for community discussion and announcements regarding Soar.
soar-group Archives To see the collection of prior postings to the list soar-group.
To post a message to all the list members, send email to Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
soar-sml-list Project discussion list for developers.
soar-issues Receives email notifications of issue tracker changes on the Soar google code project.
soar-commits Soar repository commits.
Instructo Soar Learning with instruction in Soar Cognitive Architecture
jsoar-user User discussion of jsoar.
jsoar-dev Development discussion for the jsoar project.
Publications
A full list of publications is available on the Soar publications page.
For further background on Soar, we recommend:
Laird, J. E. The Soar Cognitive Architecture (2012)
Laird, J. E. Extending the Soar Cognitive Architecture. In Proceedings of the artificial general intelligence conference. Memphis, TN: IOS Press. (2008)
Lehman, Laird, and Rosenbloom, 2006 A Gentle Introduction to Soar: 2006 update
Rosenbloom, Laird, and Newell. The Soar Papers: Readings on Integrated Intelligence (1993)
Newell, Unified Theories of Cognition, Harvard University Press (1990)
John E. Laird, Allen Newell, Paul S. Rosenbloom. "Soar: An architecture for general intelligence". Artificial Intelligence, 33(1):1-64, 1987.
Also available are:
Soar: A Functional Approach to General Intelligence and
Soar: A comparison with Rule-Based Systems.
Nason, S., & Laird, J.E. (2004). Soar-RL: Integrating reinforcement learning with Soar. In Proceedings of the sixth international conference on cognitive modeling (pp. 220–225).
See also page: International Conference on Cognitive Modeling (ICCM)