HT Tutorial Exercise 3 - Using watch


Using watch and pwatch to examine the model's behaviour
There are several levels of built-in trace. So far we have set watch to level 0, which only traces context elements. By manipulating the watch level, we can see some of the finer level workings of the architecture, including elaboration cycles, rule firings, and at high level of watch levels, when each working memory element comes in and goes out.

Continue using the Soar with the hungry-thirsty rules from file "hts9.soar" loaded in. Try running the model with the following watch commands. Try them individually, and then together. Before each run, make sure you init-soar. (These commands are also on the interface menus.)

  • watch --productions
  • watch --wmes
  • watch --phases
  • watch --wmes
  • watch --preferences

The more sporting of you may wish to then examine the rules that fired. You can either examine them in hts9.soar, or by printing them out in the running process with the 'p "insert rule-name"' command. It is possible that some rules contain attributes or features that you are not yet familiar with. These will be covered later in the tutorial.

(Another way to watch rules firing is to use the other windows in the interface, which shows which rules have "matched" and are about to fire in the next cycle. Turn that Monitor window off when you don't need it, as it slows Soar down.)

If you want to trace just one rule firing you can do this by using the pwatch command.


Follow up questions
  1. What is going on at each level (symbolic, PSCM, knowledge)? Can you tell based on these traces?


  2. Now that you can see all the working memory elements, can you see how the conflict resolution mechanism works in Soar?


  3. Look at help watch. How many options are there?


Return to main page of: Introduction to Psychological Soar Tutorial
(or use the Back button to return to where you just were).
Program Listings
PST Soar Help