Example of Production Rule Architecture used to Clear the Bottom Block in a Stack of Four Blocks

     The production rule system exemplified here is slightly different from that described in your text. It is a system that was written for use in the lab associated with 472 which I also teach. Nonetheless, working through this description and following the animation should give you a better feel for how production systems work. Note particularly that the amount of memory, the working memory, available to support the search for a solution is quite small. And, since no tree is maintained, the "state of the search" is maintained in this working memory.
     The figure below illustrates the general form of the production rules used in this example. LHS refers to the left hand side or condition side of the rule; and, RHS refers to the right hand side or action portion of the rules. The form used here mirrors the form used in the lab for 830:472, and, in fact, this software was used to generate this example. In this form, the RHS is divided into two portions: the first line, here shown in red, lists those expressions which are deleted from working memory, WM, and the second line here shown in blue, lists those expressions which are added to working memory, WM.
 

 
     The specific production rules that we used in this example are shown in the field below. The first, unstacks or makes a block clear if we have already established the goal of clearing that block. The second rule intoruduces a goal of clearing a block that is currently not clear. Note that in this architecture we have explicitly introduced "meta" relations; e.g. the 'goal' relation for use in controlling the action of the production rule system.
 
     The next field animates the activity of this system using these rules. The illustration includes three components. First, in the upper right of the figure is shown the rule that was applied on a particular cycle together with the bindings that were found for the variables in the rule in the match phase. Second, a depiction of the contents of working memory (WM) is shown. In this depiction, those items shown in darkened colors indicate items that either are not yet present or are no longer active or relevant. Third, to the lower right is depicted the state of the "world that corresponds to the expressions in WM at that point.
 

 
 

Computational Approach
© Charles F. Schmidt