Concepts · Humans and machines
SOAR is a cognitive architecture for goal-directed problem solving. It selects operators over working memory and creates substates when selection stalls.

What Is SOAR Cognitive Architecture?
SOAR is a cognitive architecture for goal-directed problem solving.
Developed by Allen Newell, John E. Laird, and Paul S. Rosenbloom, and maintained by the Soar research group at the University of Michigan, it models intelligent behavior as a cycle: a system inspects a state, selects an operator that can change it, applies the operator, and checks whether the goal is reached.
state -> select operator -> apply operator -> new state -> repeatThis guide is Achiral's concept reference, not the official Soar project site. The official manual and source code live at soar.eecs.umich.edu.
SOAR components at a glance
| Component | What it is |
|---|---|
| State | The current problem-solving situation, represented as working memory elements |
| Operator | A candidate action that can change the state |
| Goal | The target outcome the system works toward |
| Impasse | A stuck point when no operator can be selected or applied |
| Substate | A new problem-solving context opened to resolve an impasse |
| Chunking | Learning productions from the results of substate problem solving |
| Working memory | Active context the architecture reads and writes during the decision cycle |
| Semantic memory | Long-term general knowledge, accessible through retrieval |
| Episodic memory | The agent's recorded stream of experience |
The SOAR decision cycle
SOAR works by repeatedly selecting and applying operators.
A state is the current situation. An operator is a possible action that can change the state. A goal is the outcome the system is trying to reach.
Imagine an assistant helping a user with a support issue. The current state might include the user, the task, the last tool result, and the open goal. Several operators may fit:
- ask for more information
- check account status
- retry the tool
- escalate to a human
SOAR represents those as candidate operators, runs a decision procedure, chooses one, applies it, and updates the state. The loop continues until the goal is reached or an impasse is detected.
What happens at an impasse
When SOAR cannot select or apply an operator, because none are proposed, preferences conflict, or multiple operators tie, it creates a substate.
The substate is a new, smaller problem: resolve the stuck point. SOAR works inside it until it finds a result that lets the higher-level state continue.
This is not a crash. It is a deliberate way to handle incomplete knowledge. When substate problem solving creates a result, chunking can summarize the relevant reasoning in a new production.
SOAR vs ACT-R
Both are cognitive architectures, and both use the word "chunk." Keep the split clear:
| Topic | Difference |
|---|---|
| Design emphasis | SOAR foregrounds operator selection and impasses; ACT-R foregrounds buffers, activation, and declarative retrieval |
| "Chunk" | In SOAR, a chunk is a learned production; in ACT-R, it is a unit of declarative memory |
| Control loop | SOAR proposes, selects, and applies operators; ACT-R matches and fires productions over buffer contents |
| AI design lens | SOAR helps explain how a next step is chosen; ACT-R helps explain how memory becomes available and guides action |
If your question is about memory activation and retrieval, start with ACT-R Memory Architecture. If your question is about decision cycles and agent problem solving, stay here.
Why SOAR matters for AI agents
AI builders often describe an agent as a language model plus tools.
SOAR asks a sharper question: how is the next step chosen?
The answer cannot be "the prompt decides" indefinitely. A useful agent needs a represented state, candidate actions, rules for choosing among them, and a way to learn when it gets stuck.
SOAR gives names and structure to those parts. It does not dictate permissions, privacy, or product boundaries, but it clarifies where the decision-making problem actually lives.
What to remember
SOAR treats intelligent behavior as a repeating cycle of state inspection, operator selection, and action. When that cycle stalls, it opens a subproblem. When the subproblem produces a result, chunking can turn the relevant reasoning into a faster future rule.
For AI memory systems, the implication is direct: memory should not only record the past. It should help the system choose what to do next.
Sources
- Soar homepage, University of Michigan
- Soar User's Manual
- The Soar Architecture
- Laird, Newell, and Rosenbloom, SOAR: An Architecture for General Intelligence
Next, continue with Working Memory in SOAR, Operators in SOAR, or return to the Concepts hub.