University of Michigan Soar Group's Projects
A large collection of example and demo Soar agents for a variety of domains and problems.
Dice is a java implementation of a game often called Liar's Dice.
Liar's Dice for iOS using Soar.
A SoarQnA Interface to the Dice game
Multi-agent pac-man and tank battle game implemented using Java and interfaced with Soar via SML.
This tool will dynamically generate an agent based on the Game Description Language used by the General Game Playing project.
This environment is derived from the Infinite Mario domain from RLCompetition2009 (based on RL-Glue) and uses SML to connect to Soar. Agents play a variant of Super Mario, a complete side-scrolling video game with destructible blocks, enemies, fireballs, coins, chasms, platforms, etc. The state space is complicated, but factored in an object-oriented way, which captures many aspects of the real world.
Soar on LEGO® Mindstorms EV3 Robots. Used for the Soar tutorials beginning with Soar Workshop 34.
This tool will dynamically generate a domain based on the Planning Domain Definition Language.
RoomsWorld is a simulated Soar Robot environment. It is composed of a set of connected rooms, some of which contain blocks. One of the rooms is designated the storage room. The agent's task is to collect the blocks and move them to the storage room. The agent can turn and move forward, and pick up and put down a block. The agent can only carry one block at a time. The agent's movement is continuous and takes time (it turns and moves at a fixed rate). The agent's perception is limited by a vision cone.
SoarQnA facilitates agent access to external knowledge stores via the io system. It is an efficient, unified agent interface that allows your system to access arbitrary external data sources.
The purpose of this tool is to allow the Soar programmer to interact with a Soar agent while it is running. SoarTextIO allows you to communicates with an agent via plain sentences that it translates into a linked list of words.
This project is a word sense disambiguation task that involves some preliminary work importing a WordNet database into Soar's Semantic Memory.
This project is a word sense disambiguation task that uses a different approach than WordNet for Soar. While they both use the same corpus, this formulation gives the agent a syntactic parse tree (not a graph) and a word, and the agent is asked to disambiguate the word.
A short course in Soar programming for engineers
Example code that may or may not still work (unsupported)
Other tools to help develop Soar agents. This includes IDEs for developing Soar agents, a variety of both real-time and offline debugging tools and some syntax coloring add-ons for certain text editors.
Soar Agent (and SML code) that learns through situated interactive instruction in a robotic environment
A master repository for the rosie project as well as all other dependencies.
Basic eater environment for Soar tutorial
General Question-Answering Agent Using Semantic Memory
Soar, a general cognitive architecture for systems that exhibit intelligent behavior.
Help files for the Soar command line interface
The SoarEditor is an Eclipse plugin that allows you to use the powerful Eclipse IDE for writing Soar agents
Soar's website: documentation, news, announcements, links, etc.
A project to integrate Soar agents into Unreal Engine 4 environments
VisualSoar is a development environment written in Java to aid in the creation of agents for use in Soar
binary files for download from SoarGroup.github.io