12.5.1 Presenting a Single Event: TrialProcess

The TrialProcess executes a single trial of processing, which corresponds to the presentation of a single Event to the network. This process is never used in its base form. Instead, different algorithms derive versions of this process which perform algorithm-specific computations.

The trial process obtains the current event to be processed from the epoch process, which it finds somewhere above it in the processing hierarchy. It keeps a pointer to this event in its own cur_event member. It also typically depends on the epoch process wt_update field to determine if it should be computing weight changes or just testing the network.

Some types of TrialProcess objects are terminal levels in the processing hierarchy, since they perform all of the basic computations directly on the network. This is true of feedforward backpropagation, for example (see section 14.1.4 The Bp Trial Process). However, other types of trial process have sub-processes which perform iterative setting and cycling processes, which are described below. This is true of the constraint satisfaction trial process, for example (see section 15.4 Cs Proceses).