Go backward to The selection space for multi-choice impasses.
Go up to The selection space for multi-choice impasses.
Go forward to The evaluation subgoal.

The evaluate-object operator
----------------------------

The evaluate-object operator creates evaluations for tied or conflicting
objects.  These are the objects on the ^item augmentation of the subgoal for
the multi-choice impasse.  Soar creates this augmentation automatically.

By default, instances of evaluate-object are created acceptable and
indifferent, so that Soar can select them in turn without generating further
impasses.  The user-select (see Section See user-select {X} on page 
See user-select {X}) function provides control over the order in which
instances of evaluate-object are selected.  If the selection space is
augmented with ^operator-selection not-indifferent, then instances of
evaluate-object are created acceptable but not indifferent.  A tie impasse
will arise, allowing domain-dependent knowledge to decide the order in which
the instances should be selected.

To provide easy access to all information relevant to creating an evaluation,
each evaluate-object operator has a standard set of augmentations.

   * ^name evaluate-object.
     
   * ^type evaluation.
       Much of the knowledge about the
     evaluate-object operator is general enough so that it can be used by
     other operators that perform more specialized evaluations.  This more
     general knowledge tests ^type evaluation and not the name of the
     operator.
     
   * ^object
     The identifier of the object to be evaluated.
     
   * ^attribute The context attribute of the object being evaluated
     (problem-space state, or operator).
     
   * ^evaluation The identifier of the newly created evaluation object,
     described further in Section See Evaluation objects on page 
See Evaluation objects.
     
   * ^state The current state of the selection subgoal. Default productions
     use this augmentation to transfer the evaluation object to the state
     when a value has been computed.
     
   * ^desired The desired object of the supergoal (the goal in which the
     multi-choice impasse arose).
     
   * ^superproblem-space
     The problem space selected in the supergoal.
     
   * ^superstate
     The state selected in the supergoal.
     


Below is a sample evaluate-object operator.

(O30 ^name evaluate-object ^type evaluation ^evaluation E33
     ^state S28 ^desired D10 ^superproblem-space P12 ^superstate S14)


Menu

Evaluation objects
Applying the evaluate-object operator