HT Tutorial Exercise 1


OBJECTIVES

A. Understand what Soar does without domain knowledge
 
You should try running Soar without any knowledge to see what happens. Soar is an architecture, and as such, it requires knowledge to be added to the architecture to generate behaviour.
 
Start up Soar. Typically, you will get an agent display window first. In that window, type "Soar" as an agent name, and then enter or the dialogue close button. This will lead you to the main TSI Window.

If you type d 5 (i.e. in the Soar interpreter window), which is the command to run Soar for 5 simulation cycles, called decision cycles, nothing really happens (this is also shown in Trace 1). When Soar is started up, it completely lacks any knowledge and just keeps noting this fact.

If you type just d and don't give a limit of decision cycles to run, Soar will run 1 decision cycle. If you type r -f or run Soar will run until it reaches a halt operation, either generated by a production or by the user. A halt is specified by pressing Control and C together (in the GUI click on the Stop button.

 

B. See some of the behavior within the default rules
 
There is a set of rules to provide some simple default behaviour when specific knowledge is lacking called default rules. These provide, for example, for some simple look-ahead search mechanisms, and more intelligent behaviour in the event that no knowledge applies to the current situation (e.g. the wait operator in the top-ps). As the situation changes, internal knowledge may become relevant and the wait operator will be replaced with another more appropriate operator.

You should find the default rules and load them with the following command:

source simple.soar (or use the Soar Debugger menu or Soar's File menu). (This file is under share/soar/Demos/default/simple.soar)

(You should not need to change folders, but for general guidance see the "Folders and files" section of the notes on running Soar.)

Each asterisk that appears indicates that a rule was loaded successfully. Reset Soar using init-soar. Now when you run Soar ahead, it waits for something to happen (this is also shown in Trace 2).

 

Follow up questions (for homework):
 
  1. What will Soar "do" with the Tower of Hanoi?

     

  2. How is knowledge organised in Soar?

     

  3. How is knowledge represented in Soar?

     

  4. When do you want to use the default rules and what is their theoretical position?


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