AchiralAchiral

Concepts · Humans and machines

SOAR creates substates when it cannot choose or apply an operator. These impasses turn confusion into a smaller problem to solve.

Published2026-09-090 reads
Editorial illustration of a stalled decision track opening a nested subproblem tray and returning to the main path.

Impasses and Subgoals in SOAR

What should a system do when it gets stuck?

SOAR has a direct answer. It creates a smaller problem.

In SOAR, an impasse happens when the system cannot move forward in the normal decision cycle. Maybe no operator is proposed. Maybe several operators tie. Maybe the preferences conflict. Maybe the selected operator cannot be applied.

The impasse is not treated as a crash.

SOAR creates a new state, called a substate, where the system can work on the smaller problem.

A useful kind of stuck

Suppose an agent has to choose between two support actions.

One operator says to refund the customer. Another says to ask a manager. The available preferences do not decide between them.

In many AI systems, this ambiguity disappears into the next model call. The model chooses something, and the reason may be hard to inspect.

SOAR makes the stuck point explicit. It says, in effect:

text
We do not know which operator to choose.
Create a subproblem to resolve that.

That subproblem may gather more information, compare the options, or create a preference that lets the higher-level state continue.

Subgoals are not failure

This is the important part.

An impasse does not always mean the system is broken. It can mean the system has found a place where more thinking is needed.

That is a useful lesson for AI agents. A good agent should not always guess. Sometimes it should create a subtask:

  • check the policy
  • ask for missing information
  • compare two options
  • request human review

The point is not to hide uncertainty. The point is to make uncertainty workable.

Learning from an impasse

SOAR can learn from resolved impasses through chunking.

If the system solves a subproblem, it may create a new production that helps avoid the same impasse later.

That means getting stuck can become useful. The system can turn a difficult moment into knowledge for the future.

The takeaway

SOAR impasses are a way to handle incomplete or conflicting knowledge.

Instead of pretending the next step is obvious, SOAR creates a substate and works on the reason progress stopped.

For AI systems, that is a serious design lesson. When the agent is unsure, make the uncertainty visible and give it a smaller place to resolve.

Sources

Go back to Preferences in SOAR, continue with Chunking in SOAR, or return to the Concepts hub.