Announcement
Collapse
No announcement yet.
Navigation Tip
Collapse
To find what you need, select a category and then a document from the left sidebar.
- Soar 9.6.1, the tutorial, and the manual are included in the release here. (direct download)
- The 2019 Soar Workshop Tutorial materials can be found here.
- Soar-related publications can be found here.
- The latest source code for Soar 9.6.1 can be found at Github.
-
Soar XML Interface Specification
-
Created by:
Soar
- Published: 10-07-2014, 02:07 AM
- 702 views
- 0 comments
Soar XML Interface Specification
You can find a Word document describing the Soar XML interface specifications here. -
Created by:
-
SML Output Link Guide
-
Created by:
Soar
- Published: 10-07-2014, 02:05 AM
- 1741 views
- 0 comments
SML Output Link Guide
This document provides help on reading the output link of Soar agents using SML.
General Advice- Read the output link after the agent's output phase but before the next decision cycle's input phase.
- Excercise care if you save commands (or other working memory elements on the output-link) to use later and return control back to Soar.
-
Created by:
-
Threads in SML
-
Created by:
Soar
- Published: 10-07-2014, 02:05 AM
- 910 views
- 0 comments
Threads in SML
This document is intended to explain how threads are used in Soar 8.6 and later (this document is being written against 8.6.3). It assumes you already have a passing familiarity with both Soar and the SML interface language. This is advanced reading, for those who want to understand everything that's going on "under the hood".
What Threads Exist
As with all things related to SML, we need to divide up the world into client-side threading and kernel-side thread... -
Created by:
-
Memory Leak Debugging with Visual Studio
-
Created by:
Soar
- Published: 10-07-2014, 02:04 AM
- 7461 views
- 0 comments
Memory Leak Debugging with Visual Studio
This document summarizes one technique for fixing memory leaks in the Soar kernel using Visual Studio's Leak Detection tools.
First, choose a program you will use for testing. I recommend TestCLI or TestClientSML or some other program that can repeatably cause leaks.
At the top of the file containing main.cpp, add this:
:#ifdef _MSC_VER // Use Visual C++'s memory checking functionality #define _CRTDBG_MAP_ALLOC #include <crtdbg.h>
-
Created by:
-
I/O and Reward Links
-
Created by:
Soar
- Published: 10-07-2014, 02:03 AM
- 519 views
- 0 comments
I/O and Reward Links
Introduction
Soar provides several links on various states: the io, input-link, and output-link exist on the top state, whereas a reward-link exists on every state. This page will describe how to add your own link, using the emotion link as an example (since that's what I'm working on at the moment). Note that this is actually a couple links (like io has a couple links) and it's only on the top state. If you only want a single link and/or you want links on all states, just search the... -
Created by:
-
Command Line Interface Parsing Code
-
Created by:
Soar
- Published: 10-07-2014, 02:02 AM
- 1368 views
- 0 comments
Command Line Interface Parsing Code
Overview
The command line interface (CLI) described in this document has no relation to the lexer/parser inside the Soar kernel. CLI often refers to the actual object instance (a member of KernelSML) but sometimes can refer to the whole component.
The CLI takes an arbitrary string and transforms it into method calls providing a general interface to Soar as described by the help document on the Soar wiki (on Google Code).
A command line in this context can actually... -
Created by:
-
Basic Kernel Terminology
-
Created by:
Soar
- Published: 10-07-2014, 01:56 AM
- 585 views
- 0 comments
Basic Kernel Terminology
This is a document that defines some of the basic data structures, files and terminology used in the Soar kernel code. It is very incomplete but a good starting point for understanding the kernel.
"But where can I start?"
In a nutshell:
The Soar Kernel is a very object-oriented, structured set of code. If you don't understand the basic Soar execution cycle and its phases, the source code won't help you. You should start by reading the introductory material... -
Created by:
-
Getting the Source
-
Created by:
Soar
- Published: 10-07-2014, 01:49 AM
- 408 views
- 0 comments
Getting the Source
To get the source code:- Clone a copy of the latest release of the Soar code directly from the Soar git repository on Github.
- Information about using git can be found on Github.
- Once you have the code downloaded to your computer, you can now follow the steps in your operating system build notes:
-
Created by:
-
Soar 9.4 Release Notes
-
Created by:
Soar
- Published: 10-03-2014, 03:06 PM
Soar 9.4 Release Notes
====================================
Soar 9.4 Release Notes, October 2014
====================================
This release of Soar includes the the much anticipated Soar Spatial Visual
System (SVS), various important bug fixes, new commands for semantic memory, a
new command to set interrupts on productions at run-time, a new chunk naming
scheme, and an automated mechanism to convert old semantic and episodic memory
databases to the newest format... -
Created by:
-
How Library Search Paths Work
-
Created by:
Soar
- Published: 10-03-2014, 01:57 PM
- 0 comments
How Library Search Paths Work
OS-Specific Library Search Paths
This section is not about building Soar, but running the executables that you've built.
Linux
In Linux, the GNU linker provides an -rpath flag that hard codes library search paths into executables. We use this flag for all native executables, such as TestCLI and TestSoarPerformance. These paths are set assuming that the executables and required libraries (specifically libSoar.so) reside in the same directory, which is the default... -
Created by:
There are no articles in this category.
Categories
Collapse
Tags
Collapse
agent debugging (2)
building soar (6)
documentation (2)
kernel programming (7)
soar markup language (5)