Other Params

This tab page is relevant only to Trial mode and contains a number of parameters that control the Staircase and Chained sequencing modes, as well as several additional parameters that may globally alter the trajectories of targets during each trial. While it would be useful to include all of these controls on Trial mode's Protocol tab, they are used much less frequently and thus are relegated to a separate page. All are disabled while a trial sequence is running, although some are available if the sequence is paused.

Staircase trial sequencing

Staircase sequencing mode automates the presentation of trials for experiments in visual psychophysics, particularly those experiments which seek to determine a threshold stimulus that is just detectable by the human subject. In this mode, the choice of which trial to present next depends on the subject's response to the previous trial.

Each member of the trial set must be segregated into one or more staircases. Trials in a staircase group will typically present the same visual stimulus at a variety of stimulus strengths. The idea behind staircase sequencing is to find the stimulus strength that elicits a correct response from the subject just over 50% of the time.

Maestro can simultaneouly interleave the presentation of up to five distinct staircase sequences. A trial's staircase ID determines the staircase sequence to which that trial belongs, STAIR1 to STAIR5. Each trial in a particular staircase has a user-defined strength associated with it. Trials of the same strength make up a single tier, or step, of that staircase. All trials with a NORMAL staircase ID do not participate in any staircase sequence and form the so-called irrelevant set. Irrelevant trials can be presented randomly during a staircase sequence to "keep the subject honest"; they are generally designed to present a stimulus that is entirely unrelated to the stimulus paradigm that is being examined in the experiment.

In addition to assigning a staircase ID and stimulus strength, the trial's definition specifies a correct response channel. At least one segment of the trial (with a nonzero duration) must be marked for checking the subject's response, and the trial must not employ a special operation such as selByFix or searchTask. If any trial in the set violates these constraints (including "irrelevant" trials), or if the trial set defines no staircase trials, then Maestro will not sequence the trials in Staircase mode.

Controls in the Staircase sequencer parameter group on the Other Params tab govern Maestro's behavior during Staircase sequencing. For simplicity's sake, consider a trial set that defines a single staircase sequence.

    • Starting strength : This parameter determines at what tier the sequence starts. Whichever tier has a stimulus strength that is closest to the specified value becomes the starting tier for the staircase. All staircase trials presented are drawn from this tier until the sequencing algorithm selects a different tier. The edit control accepts floating-point input in the range [-9999.999 .. 9999.999], with up to 3 digits following the decimal point. The default value is 1.0.

    • % irrelevant : This parameter determines what percentage of all trials presented are drawn from the "irrelevant set" on average (if that set is not empty). The edit control accepts any integer value in [0..100]. The default value is 0.

    • N up, M down : Currently, Maestro uses an "N-up, M-down" decision algorithm to step up or down a staircase. When the subject responds incorrectly to N consecutive trials from a given staircase tier, the sequencer takes a step up the staircase to the next higher-strength tier. When the subject responds correctly to M consecutive trials from a tier, it takes a step down the staircase to the next lower-strength tier. The values N and M are set by spinner controls and are limited to [1..10]; the default value for both is 2.

    • Stop after P reversals : A staircase sequence will stop automatically when the staircase direction (up, down) has reversed the number of times reflected in this spinner control. The allowed range for P is [0 ..99]; if P = 0 (the default), the sequence must be stopped manually.

Each time a trial is selected in Staircase sequencing, Maestro first examines the subject's response to the just completed trial. The response is "correct" if and only if the correct pushbutton was depressed during one of the "check response" segments, and the incorrect pushbutton was not pushed during any of those segments (if neither pushbutton was depressed -- i.e., the subject did not respond at all -- then the trial is repeated). The sequencer state is updated accordingly: increments the #correct/incorrect responses in-a-row for the current tier, steps up or down one tier in accordance with the N-up, M-down algorithm, and so forth. If there are any irrelevant trials defined, it randomly determines whether the next trial should be an irrelevant one or a staircase trial. In the latter case, it then randomly chooses one of the staircases in the trial set -- if more than one is defined. Finally, it randomly selects a trial from among those in the current tier of the selected staircase.

During staircase sequencing, a status message is displayed in the Message Log panel after every trial presentation. If you wish to review these messages offline after an experiment, be sure to save the message log to file. Most of the staircase status messages are rather terse and cryptic, having the form a:bbbb <trialname>: <result>, <state>. Here, a is the staircase ID 1 to 5, or 0 for an "irrelevant" trial; bbbb is the total number of trials that have been presented from the staircase thus far; and <trialname> is the first 20 characters of the trial name, appended with blanks if necessary. For staircase trials, the <result> field lists the trial's stimulus strength along with the result: right, wrong, or redo; a trial is repeated if it aborted prematurely because the subject lost fixation or an RMVideo duplicate frame was detected [NOTE: Prior to Maestro 4.0.5, a duplicate frame detection was treated as a serious error, terminating the trial sequence altogether]. The <state> field begins with r = and reports the number of strength reversals that have occurred thus far and the current direction of the staircase sequence: < for downward and > for upward. For irrelevant trials, the <result> field reads **irrel* followed by right or wrong (irrelevant trials are not "redone"), while the <state> field begins with c = and reports the total number of irrelevant trials for which the subject responded "correctly".

Chained trial sequencing

In the Chained trial sequencer mode, Maestro randomizes the presentation of trial chains rather than the individual trials in the sequenced set. A trial chain is the repeated presentation of the SAME trial 1 or more times in a row. The motivation behind this sequencer mode (introduced in V3.1.0, Oct 2013) is to detect improvement in the subject's performance of a task, presumably through learning by repetition.

The number of different-length chains is determined by two parameters: the string entered in the text box labeled "Trial Chain Lengths" on the Other Params tab page, and the weights of the individual trials in the set.

The string parameter S is a comma-delimited list of integers indicating the different chain lengths to be included in one block of a chained sequence. This list applies to all trials in the sequenced set, but any chain length larger than the trial's weight is ignored. Furthermore, if a particular length appears N times in the list, then that chain length will be represented N times in the block of chains, for each trial with weight W >= N. This gives the user control over which trial chains are presented, and the relative frequency of different-length chains. The minimum integer allowed is 1, and the maximum is 255. Any integer outside this range is ignored.

If the string parameter is empty (or contains no valid integer entries), then the sequencer will include chains of length 1, 2, ..., W for a trial with weight W, and analogously for all other trials in the sequenced set.

An example should help clarify how this sequencer mode works. Let the trial set contain 3 trials: A (weight = 5), B (weight = 10), and C (weight = 1). If the string parameter S = "" (an empty string), then one block in the sequence contains the chains 1A, 2A, 3A, 4A, 5A, 1B, 2B, ..., 10B, and 1C. On the other hand, if S = "1, 2, 2, 4, 8", then the chains in one block are: 1A, 2A, 2A, 4A, 1B, 2B, 2B, 4B, 8B, and 1C.

Once Maestro has generated the list of distinct chains to be presented in one "trial block", it shuffles the list so that the chains are presented in random order. During sequencing, the program steps through the shuffled list from beginning to end; for each chain in the list, it presents the specified trial the specified number of times in a row before moving on to the next chain. Once all chains have been presented, the block is complete, and Maestro reshuffles the list before starting the next block of chains. NOTE that all the individual trial reps in a particular chain are presented before moving onto the next chain, even if the subject does not complete one or more trials in that chain. Unlike in the Randomized and Weight-Ordered modes, the trial result has NO bearing on what the sequencer does next. Like all sequencer modes, sequencing continues until the user stops the trial sequence, an auto-stop condition is satisfied, or a runtime error occurs.

As of Maestro 4.0.5, if a trial stops prematurely because RMVideo detected one or more duplicate frames during the trial, then the trial is treated as though it never happened. The number of trial reps for the current chain is NOT incremented, and the trial is repeated.

Maestro does, however, check each trial's result in order to keep track of how many times in a row the subject has successfully completed the same trial. This statistic -- call it "success chain length" -- is different from the length of the "programmed chains" described above. During trial sequencing, it is entirely possible that Maestro will present two (or more) programmed chains in a row involving the same trial -- resulting in an even longer chain. For example, the programmed chain sequence "1A, 3A, 7A, 2B, 4A, 6B, 3B" can be reduced to "11A, 2B, 4A, 9B". Maestro resets the success chain length counter when the trial sequencer begins, when the sequence resumes after a pause, and whenever the identity of the trial changes. In the example, trial A would have success chain lengths of 11 and 4; trial B, 2 and 9. However, what if the subject does not complete some of the trials? In that case, the "success chain" is not terminated, but the failed trial is not included in the count. Thus, if the subject fails three of the trials during the 11A chain, then the effective success chain length would be 8. Of course, a success chain of length 8 will also include success chains of length 1, 2, 3, 4, 5, 6, and 7.

During chained-mode sequencing, Maestro displays the success chain length counts on the Statistics tab page in the Trial mode control panel. In addition, trial flags are included in each data file header which allow the researcher to collect all the successful trial chains during offline analysis; for details, see the description of the Matlab utility function findtrialchains().

Smoothing eye position signal during velocity stabilization

In Maestro version 2.7.0 a sliding-window average was introduced to smooth out the effects of signal noise during velocity stabilization in Trial mode. If the horizontal and vertical eye position signals are too noisy, the researcher can use the VStab sliding window length widget to set the width of the sliding-window average to any integer value between 1 ms (no smoothing, the default) and 20 ms (maximum smoothing). This parameter has no effect when the velocity stabilization feature is not engaged.

Global overrides

When recording neural responses to visual stimuli, it is often the case that different neural units respond best to motions in different directions or at different speeds. Different units will have receptive fields of different sizes and in different locations in the visual field. Most of the parameters in the Global overrides group help investigators adapt their trials to optimally stimulate the neural unit they are recording without having to change the trials by hand-- which can be very time-consuming.

    • Start Pos H, V : Normally all targets participating in a trial start at the origin, (0, 0) degrees. Use these edit controls to change the coordinates of the common starting position. For example: If you are recording from a unit with a receptive field center that is well off the origin, the trial sequence you wish to run may not optimally stimulate the unit. Rather than edit the trials themselves, you may be able to "re-center" the trials over the unit's receptive field simply by setting the starting position to the approximate coordinate's of the field's center. The two edit controls both accept floating-point values in the range [-80 .. +80] degrees, with up to 2 digits after the decimal point; the default value is (0, 0). Important: The Start Pos coordinates are applied only to targets which are positioned relatively in the first segment of the trial. If a target is positioned absolutely in segment 0, then it will start at the coordinates given in the trial's segment table regardless what appears in these controls.

    • Target Pos/Vel Scale/Rot : For each segment and each target of a trial, the segment table sets the horizontal and vertical components of five motion vectors: target window position, target window velocity, target window acceleration, target pattern velocity, and target pattern acceleration. These vectors are scaled and rotated across the board in accordance with the scale factors and rotation angles listed in these four edit controls. Target Pos Scale and Rot are applied to the window position vector, while Target Vel Scale and Rot are applied to the other four motion vectors. All controls accept floating-point values. Each scale factor can range from [-999.99 .. 999.99], with up to 2 digits after the decimal point; the rotation angles are limited to the units circle -- [0 .. 360) degrees -- again with up to 2 digits after the decimal point. Here is a simple example where these transformations can come in handy: Suppose you are studying responses of units in medial temporal (MT) cortex. You wish to record each unit's response to a random-dot pattern moving with different speeds in the preferred direction. Obviously, you cannot know the unit's preferred direction in advance. To handle this situation, design a set of trials with rightward (0 deg) pattern motion at the various test speeds. Then, during the experiment, simply set the Target Vel Rotation angle to each recorded unit's preferred direction and run the set of trials as is. This is much easier than editing the trial set during the experiment, or creating a bunch of different trial sets for different preferred directions! [EXCEPTIONS: As of version 2.0.0, it is possible to selectively ignore these global transforms on a per-trial basis -- see the description of the Ignore transforms check boxes in the Trial Editor. As of version 2.6.1 (rev 11 Jun 2010), the Target Position Scale/Rot factors are NOT applied to a target in segment 0 if the target is positioned absolutely in that segment. In all other segments, the scale and rotation are applied regardless.

    • Channel Cfg : If this checkbox is checked, then the channel configuration shown in the accompanying combo box will override whatever channel configuration is specified in each individual trial's definition. The combo box's dropdown list will contain the entry NONE (no analog data recorded, no data traces displayed), plus all channel configuration objects found under the Channels node of the experiment document tree. Rarely used.