Chunking

Chunking-Based Learning Mechanism

Chunking is the single learning mechanism supported directly by the Soar architecture. It is based on the psychological phenomena of chunking: the association of chunks (expressions or symbols) into a new, single chunk. In Soar, chunking collapses the results of an impasse into a production which can then be fired if the same, or similar situation occurs again, thus avoiding the impasse. This leads directly to Soar's ability to move from problematic to routine behavior. Since the learning mechanism creates new knowledge in the same form as the rest of the system's knowledge (i.e. productions), the uniformity of the representation is maintained by the learning mechanism.

Because chunking is based on the results of a resolved impasse, it is an experience-based learning technique. The action of the production that is created by chunking simply reflects the results of the resolved subgoal. The production conditions are based on the working memory elements that existed prior to the impasse and led to the resolution of the impasse. Dependency analysis is used to determine which working memory elements allowed the achievement of the subgoal. Since this dependency analysis uses only those working memory elements that were used in impasse resolution, chunking generalizes implicitly. The situation that leads to a chunk does not need to be reproduced exactly for the chunk to fire later; only those elements which led directly to the chunk are necessary.

The architecture directs the creation of a chunk whenever an impasse is resolved. Thus, chunking is both a universal and reflexive process. Additionally, the chunking mechanism is fixed and impenetrable and can not be improved by learning.

Finally, chunking can be viewed as a caching mechanism. The actitivity of the problem solver under an impasse is placed in a chunked production and, when a similar situation is recognized via the associative production match, the results of the previous problem solving activity are made available via the actions of the chunk. Thus, the steps of the problem solving process were cached into a single step. This view points out the fact that chunks are active processes (productions), not static declarative data.


To return, press HOME. To go to the next document, press NEXT.