List-based Delayed Matching/Non-Matching to Sample |
Top Previous Next |
Summary
A variation of the D(N)MTS task allowing greater efficiency of testing with long delays.
About the task
This task is a variant of the normal D(N)MTS task. Suppose you want to test many long delays (e.g. 5 minutes, 10 minutes, and 15 minutes). In the conventional task, in which SAMPLE and CHOICE phases are paired, this would be slow:
SAMPLE 1 ... CHOICE 1 (5 minutes plus response times) SAMPLE 2 ... CHOICE 2 (10 minutes plus response times) SAMPLE 3 ... CHOICE 3 (15 minutes plus response times) ... total 30 minutes plus response times
But the task could potentially be run in a more time-efficient manner, also requiring the subject to memorize several samples at once:
SAMPLE 1 ... SAMPLE 2 ... SAMPLE 3 ... CHOICE 3 CHOICE 2 CHOICE 1 ... total 15 minutes plus response times
The ListDMS task implements a generic algorithm that takes a large set of "dumbbell"-shaped temporal objects: SAMPLE-gap-CHOICE or XXXXX----------------------XXXXXX and schedules them to minimize the overall total time, without any of the "XXX" parts overlapping.
Several scheduling methods may be used, including "stack" XXXXXXX--------XXXXXXXXXX XXXXX-----XXXXXX
"nest" XXXXXXXX-------------------XXXXXXXXXX XXXXX------XXXXXX
"overlap" XXXXXXXX----------------XXXXXXXX XXXXXXX----------------------XXXXXXXX
In what follows, "subnesting" means the following: fully subnested XXXXXXXX-------------------------------------XXXXXXXXXX XXXXX---------XXXXXX XXX---XXX not fully subnested XXXXXXXX-------------------------------------XXXXXXXXXX XXXXX---------XXXXXX XXX---XXX not fully subnested XXXXXXXX-------------------------------------XXXXXXXXXX XXXXX---------XXXXXX XXX---------XXX
If you're not interested in how the scheduler works, skip the next few paragraphs.
"IN ADVANCE" SCHEDULING. The schedule is determined completely in advance. Therefore, we need to know how long each part of each trial's XXX-------XXXX structure is. The memory delay begins at the moment that the sample phase (Phase 1) ends - because that's when the stimulus vanishes, and the subject must begin to rely on its memory. Therefore, the scheduled "dumbbell", with its two "elements" to be scheduled, is made up as follows:
// scheduling in advance // 1=phase2, .=memorydelay, 2=phase2, X=first/second scheduling element, -=scheduling gap // // 1111111..............222222222 long phase 1 // 1..............222222222 short phase 1 // XXXXXXX--------XXXXXXXXXXXXXXX elements and gap
"ON THE FLY" SCHEDULING. The schedule is drafted as above, creating a sequence of trials (and a draft but not quite a full schedule; see below). However, the program aims to use the entire memory delay as the "gap". Therefore:
Having drafted the schedule, the task then sets up the first trial. When that trial's phase 1 is complete, the program calculates the time saved (the difference between the actual first element length, and the scheduled maximum possible first element length). All subsequent trials are then brought forward by the time saved (if possible, i.e. if a scheduled Phase 2 doesn't prohibit some later trials from being brought forward). The next trial's start time is thus determined, and this trial is set up. (The timing of subsequent trials remains uncertain until we know the actual first element time for the trial that's coming.) // scheduling on the fly // 1111111..............222222222 long phase 1 // # // 1..............222222222 short phase 1 // # # = during memory delay but not schedulable (e.g. reward, wait time) // XXXXXXXX-------------XXXXXXXXX~ elements and gap (~ = safety margin) In this scheduling system, overlaps cause a problem (because bringing forward all forthcoming trials might cause conflicts with existing schedule Phase 2 components with which they might clash). Therefore, "overlap" optimizations are disabled for on-the-fly scheduling.
A few parts of the conventional D(N)MTS task are incompatible with this process (such as specifying the session length - this now becomes a consequence purely of the trials scheduled). The "correction" phase is removed. The maximum time between trials is now a consequence of the trial schedule and cannot be specified manually. The sequence of trial delays is now determined by the scheduler, not by the user. There are slight modifications to the way that the number of distractors can progress (but only to the extent of making the task logically consistent). Otherwise, the ListDMS task implements all the options of the D(N)MTS task.
Configuring the task
More on the schedules
A sample schedule looks like this:
This particular example is for 1 copy of a list with delays 0, 5, 100, 200 sec (with response time limits, reward times, etc., set in the rest of the task parameters, as described above, and in the General Parameters). The scheduler has done this:
0 25 50 75 100 125 150 175 200 SAMPLE0.................................................CHOICE0 (this will be TRIAL 0) .......SAMPLE1.....................CHOICE1 (this will be TRIAL 1) ..............SAMPLE2CHOICE2 (this will be TRIAL 2) ..........................................SAMPLE3CHOICE3 (this will be TRIAL 3)
Note also that extra time is allowed for response times, reward, etc.; therefore, trials with short memory delays appear to have no gap scheduled (all this means is that the potential variability in subjects' responses means that there is no gap into which another trial, or component of a trial, could potentially be scheduled).
There appears to be no gap between, for example, SAMPLE0 and SAMPLE1 - but the scheduler has already incorporated the "minimum time between trials" into the end of each segment, so this gap will be present (from the scheduler's point of view, SAMPLE0 ends when the sample is over, and then any time that the sample could have taken if the subject were a bit slower to respond [if you're making your subject respond to sample phases], plus the minimum time between trials, and any reward time, etc.).
You can take a copy of the schedule for the clipboard if you wish (though, of course, it is also saved in the results textfile, and equivalent information is saved to the results database).
As of 8 Mar 2010, the schedule also reports the size from the Subnest algorithm, and whether the resulting final schedule is fully subnested or not.
In the "Chronological Order" section of the results (e.g. the ListDMS_ChronologicalOrder table in the database), this structure will appear as follows, if the subject responds to all trials: SegmentNumber,SegmentStartTimeMs,Trial,Phase 0,...,0,1 1,...,1,1 2,...,2,1 3,...,2,2 4,...,1,2 5,...,3,1 6,...,3,2 7,...,0,2
In the trial-based results (e.g. the ListDMS_Results table in the database), all trials appear, even if they were not given; look for the Phase1Given and Phase2Given fields to see if they were actually delivered. Look at the OrderInPhase2Sequence field to quickly determine the sequence of Phase 2 components (this is the number shown as "second part order" in the schedule description shown above). Phase 1 components are given in the order that the trials appear in the results.
|