Decision Cycle
in Soar
Decision Cycle
in Soar
Soar has a two phase deciscion cycle, elaboration followed by
decision. The two phases are repeated until the goal of the current
task is reached. During the elaboration phase all productions which match the current working memory fire. All productions fire in parallel. The elaboration phase runs to
Quiescence (until no more productions fire).
The decision phase examines any preferences put into preference memory (either in this phase, or
previous ones), and chooses the next problem space, state, operator or
goal to place in the context stack. The decision phase may change any
current slot values, or any previous slot values in the context stack.
If there is not enough information (or the information is
contradictory) for the decision phase to choose the next slot value,
then an impasse results. There are
four types of impasses:
- When two are more elements have equal preference, then
there is a "tie impasse".
- When no preferences are in working memory, this causes
a "no-change impasse"
- When the only preferences in working memory are
rejected by other preferences, then there is a "reject
impasse".
- A "conflict impasse" results when preferences claim that
two or more elements are each better choices then the
others.
When Soar reaches an impasse, it chooses a new problem space in an attempt to resolve the
impasse.
Return to the top of this architecture.
Current Location: Soar - Architecture - Decision Cycle