A 14-part course in programming the open-source software Soar, written by and for engineers.
This training material is itself an open-source project under the SoarGroup, functionally serving as an extension of the Soar project.
Click here to get started!
- Starting Soar
- Hello World
- Input Link
- Operator Basics
- Output
- Multi-Apply Logic
- Substates
- Practice Debugging
- Code Organization
- Combining Preferences
- SML Part 1: SML Basics
- SML Part 2: Managing WMEs
- SML Part 3: Custom Input Classes
- SML Part 4: Event Handlers
If updating the version of Soar included in this repo, be sure to test the Python run scripts on both Mac and Windows platforms. In particular, ensure that read and execute permissions are active for the Soar folder in the Mac platform.
Also note that the .bat/.sh scripts in the Soar distro folder are slightly modified (improved) from the form found in the official Soar release so that they can be run from Python code and also so that they do not remove files built for different platforms. The Soar Cheat Sheet is also added to the Soar distro folder.
If you want to add additional lessons to teach more Soar topics, such as chunking, it is recommended to create a separate Course folder that is appropriate for the theme of that topic, if one doesn't already exist. (e.g., a lesson on SMEM should be under a course like Course02_SoarModules; a lesson on chunking or RL under Course03_SoarLearning, etc.)
This project is released under the BSD 2-Clause License.