___________________________________________________________________________________________________________________
*Self-Ordered Pointing Task (SOPT) - Representational Drawings Version*
___________________________________________________________________________________________________________________
Script Author: David Nitz (dave@millisecond.com) for Millisecond Software, LLC
last updated: 02-28-2022 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC
Script Copyright © 02-28-2022 Millisecond Software
___________________________________________________________________________________________________________________
BACKGROUND INFO
___________________________________________________________________________________________________________________
This script implements the 'Self-Ordered Pointing Task' (SOPT) originally described in:
Petrides, M., & Milner, B. (1982). Deficits on subject-ordered tasks after frontal- and
temporal-lobe lesions in man. Neuropsychologia, 20, 249–262.
Specifically, this script is modelled after the representational drawings version and item set
described in "A compendium of neuropsychological tests", pages 471-477:
Strauss, E., Sherman, E. M. S., & Spreen, O. (2006). A compendium of neuropsychological
tests: Administration, norms and commentary (3rd Edition). Oxford University Press.
___________________________________________________________________________________________________________________
TASK DESCRIPTION
___________________________________________________________________________________________________________________
Participants are presented matrix displays of 6-12 items. They are asked to click on each item without
repetition. After each selection, the objects gets re-arranged.
___________________________________________________________________________________________________________________
DURATION
___________________________________________________________________________________________________________________
the default set-up of the script takes appr. 10 minutes to complete
___________________________________________________________________________________________________________________
DATA FILE INFORMATION
___________________________________________________________________________________________________________________
The default data stored in the data files are:
(1) Raw data file: 'sopt_raw*.iqdat'
build: The specific Inquisit version used (the 'build') that was run
computer.platform: the platform the script was run on (win/mac/ios/android)
date, time: date and time script was run
subject, group: with the current subject/groupnumber
session: with the current session id
blockcode, blocknum: the name and number of the current block (built-in Inquisit variable)
trialcode, trialnum: the name and number of the currently recorded trial (built-in Inquisit variable)
Note: trialnum is a built-in Inquisit variable; it counts all trials run; even those
that do not store data to the data file such as feedback trials. Thus, trialnum
may not reflect the number of main trials run per block.
listlength: the number of items in the current display
response: the participant's response
currentItem: Variable used to determine correct / incorrect responses at runtime.
ACC: Variable reflecting whether a given response was correct (i.e. the item
was not chosen previously) or incorrect. '1' designates correct, '0' means incorrect.
latency: the response latency (in ms)
(parameter) positionrule: A pseudo-boolean switch. Setting this to '1' will enable the tasks
position rule: Subjects are given an error message when they pick
items from the same position on multiple consecutive trials.
Setting this value to '0' will effectively disable this rule.
(parameter) positionthreshold: Adjustable parameter for the task's position rule. This value defines
how many consecutive picks from the same position will trigger the
error message. For example, setting the threshold to '1' will prompt the
subject as soon as she/he picks from the same position on two
consecutive trials (e.g. '3rd position' -> '3rd position'). Setting this value
to '2' will prompt the subject when she/he selects from the same
position on three consecutive trials (e.g. '6th position' -> '6th position'
-> '6th position').
positioncount: Variable holding the number of consecutive picks from the same
position. Needed to evaluate the position rule.
(parameter) alphabetrule: A pseudo-boolean switch to en- or disable the tasks alphabet rule:
Subjects are given an error message when they try to select items in
alphabetical order (e.g. 'banana' -> 'car' -> 'desk'). Setting this value to
'1' enables the rule, a value of '0' disables it.
(parameter) alphabetthreshold: Adjustable paramter for the task's alphabet rule. This value defines how
many consecutive picks in alphabetical order will trigger the error
message. For example, setting the threshold to '1' will prompt the
subject as soon as she/he picks two items in alphabetical order on two
consecutive trials (e.g. 'banana' -> 'car'). Setting this value to '2' will
prompt the subject when she/he picks three items in alphabetical order
on three consecutive trials (e.g. 'banana' -> 'car' -> 'desk').
alphabetcount: Variable holding the number of consecutive picks in alphabetical order.
Needed to evaluate the alphabet rule.
(parameter) runsixitem: A pseudo-boolean switch determining whether the Six-Item-SOPT should
be run. '1' will enable the Six-Item-Block, '0' will disable it.
sixitemerrors_01: Number of errors during the first run of the Six-Item-SOPT.
sixitemerrors_02: Number of errors during the second run of the Six-Item-SOPT.
sixitemerrors_03: Number of errors during the third run of the Six-Item-SOPT.
sixitemtotalerrors: Total number of errors for the Six-Item-SOPT.
(parameter) runeightitem: A pseudo-boolean switch determining whether the Eight-Item-SOPT
should be run. '1' will enable the Eight-Item-Block, '0' will disable it.
eightitemerrors_01: Number of errors during the first run of the Eight-Item-SOPT.
eightitemerrors_02: Number of errors during the second run of the Eight-Item-SOPT.
eightitemerrors_03: Number of errors during the third run of the Eight-Item-SOPT.
eightitemtotalerrors: Total number of errors for the Eight-Item-SOPT.
(parameter) runtenitem: A pseudo-boolean switch determining whether the Ten-Item-SOPT should
be run. '1' will enable the Ten-Item-Block, '0' will disable it.
tenitemerrors_01: Number of errors during the first run of the Ten-Item-SOPT.
tenitemerrors_02: Number of errors during the second run of the Ten-Item-SOPT.
tenitemerrors_03: Number of errors during the third run of the Ten-Item-SOPT.
tenitemtotalerrors: Total number of errors for the Ten-Item-SOPT.
(parameter) runtwelveitem: A pseudo-boolean switch determining whether the Twelve-Item-SOPT
should be run. '1' will enable the Twelve-Item-Block, '0' will disable it.
twelveitemerrors_01: Number of errors during the first run of the Twelve-Item-SOPT.
twelveitemerrors_02: Number of errors during the second run of the Twelve-Item-SOPT.
twelveitemerrors_03: Number of errors during the third run of the Twelve-Item-SOPT.
twelveitemtotalerrors: Total number of errors for the Twelve-Item-SOPT.
totalerrors: Total number of errors across the whole task.
(2) Summary data file: 'sopt_summary*.iqdat'
inquisit.version: Inquisit version run
computer.platform: the platform the script was run on (win/mac/ios/android)
startDate: date script was run
startTime: time script was started
subjectid: assigned subject id number
groupid: assigned group id number
sessionid: assigned session id number
elapsedTime: time it took to run script (in ms); measured from onset to offset of script
completed: 0 = script was not completed (prematurely aborted);
1 = script was completed (all conditions run)
(parameter) runsixitem: A pseudo-boolean switch determining whether the Six-Item-SOPT should
be run. '1' will enable the Six-Item-Block, '0' will disable it.
sixitemerrors_01: Number of errors during the first run of the Six-Item-SOPT.
sixitemerrors_02: Number of errors during the second run of the Six-Item-SOPT.
sixitemerrors_03: Number of errors during the third run of the Six-Item-SOPT.
sixitemtotalerrors: Total number of errors for the Six-Item-SOPT.
(parameter) runeightitem: A pseudo-boolean switch determining whether the Eight-Item-SOPT
should be run. '1' will enable the Eight-Item-Block, '0' will disable it.
eightitemerrors_01: Number of errors during the first run of the Eight-Item-SOPT.
eightitemerrors_02: Number of errors during the second run of the Eight-Item-SOPT.
eightitemerrors_03: Number of errors during the third run of the Eight-Item-SOPT.
eightitemtotalerrors: Total number of errors for the Eight-Item-SOPT.
(parameter) runtenitem: A pseudo-boolean switch determining whether the Ten-Item-SOPT should
be run. '1' will enable the Ten-Item-Block, '0' will disable it.
tenitemerrors_01: Number of errors during the first run of the Ten-Item-SOPT.
tenitemerrors_02: Number of errors during the second run of the Ten-Item-SOPT.
tenitemerrors_03: Number of errors during the third run of the Ten-Item-SOPT.
tenitemtotalerrors: Total number of errors for the Ten-Item-SOPT.
(parameter) runtwelveitem: A pseudo-boolean switch determining whether the Twelve-Item-SOPT
should be run. '1' will enable the Twelve-Item-Block, '0' will disable it.
twelveitemerrors_01: Number of errors during the first run of the Twelve-Item-SOPT.
twelveitemerrors_02: Number of errors during the second run of the Twelve-Item-SOPT.
twelveitemerrors_03: Number of errors during the third run of the Twelve-Item-SOPT.
twelveitemtotalerrors: Total number of errors for the Twelve-Item-SOPT.
totalerrors: Total number of errors across the whole task.
___________________________________________________________________________________________________________________
EXPERIMENTAL SET-UP
___________________________________________________________________________________________________________________
* 4 levels (number of pics): 6, 8, 10, 12 - run in blocked format with 3 repititions each (ascending order)
* experimenter can enable/disable the position rule ('always click on the same matrix position') and alphabet rule
('select by alphabet position') - by default the script checks whether participant engages in any of those rules
___________________________________________________________________________________________________________________
STIMULI
___________________________________________________________________________________________________________________
The picture stimuli were taken from a set prepared by Bruno Rossion and Gilles Pourtois,
freely available at 'http://www.nefy.ucl.ac.be/facecatlab/stimuli.htm'.
If you use these pictures in any published research, please cite the following source:
Rossion, B., & Pourtois, G. (2004). Revisiting Snodgrass and Vanderwart's object pictorial set:
The role of surface detail in basic-level object recognition. Perception, 33, 217-236.
The original black and white line-drawings are depicted in:
Snodgrass, J. G., & Vanderwart, M. (1980). A standardized set of 260 pictures: Norms for
name agreement, image agreement, familiarity, and visual complexity. Journal of
Experimental Psychology: Human Learning and Memory, 6, 174-215.
___________________________________________________________________________________________________________________
INSTRUCTIONS
___________________________________________________________________________________________________________________
see section Editable Instructions
___________________________________________________________________________________________________________________
EDITABLE CODE
___________________________________________________________________________________________________________________
check below for (relatively) easily editable parameters, stimuli, instructions etc.
Keep in mind that you can use this script as a template and therefore always "mess" with the entire code
to further customize your experiment.
The parameters you can change are:
trialdelay: Adjustable pretrialpause in milliseconds. Change as needed.
positionrule: A pseudo-boolean switch. Setting this to '1' will enable the tasks
position rule: Subjects are given an error message when they pick
items from the same position on multiple consecutive trials.
Setting this value to '0' will effectively disable this rule.
positionthreshold: Adjustable parameter for the task's position rule. This value defines
how many consecutive picks from the same position will trigger the
error message. For example, setting the threshold to '1' will prompt the
subject as soon as she/he picks from the same position on two
consecutive trials (e.g. '3rd position' -> '3rd position'). Setting this value
to '2' will prompt the subject when she/he selects from the same
position on three consecutive trials (e.g. '6th position' -> '6th position'
-> '6th position').
alphabetrule: A pseudo-boolean switch to en- or disable the tasks alphabet rule:
Subjects are given an error message when they try to select items in
alphabetical order (e.g. 'banana' -> 'car' -> 'desk'). Setting this value to
'1' enables the rule, a value of '0' disables it.
alphabetthreshold: Adjustable paramter for the task's alphabet rule. This value defines how
many consecutive picks in alphabetical order will trigger the error
message. For example, setting the threshold to '1' will prompt the
subject as soon as she/he picks two items in alphabetical order on two
consecutive trials (e.g. 'banana' -> 'car'). Setting this value to '2' will
prompt the subject when she/he picks three items in alphabetical order
on three consecutive trials (e.g. 'banana' -> 'car' -> 'desk').
The following values can be used to easily en- or disable certain sections of the task.
runsixitem: A pseudo-boolean switch determining whether the Six-Item-SOPT should
be run. '1' will enable the Six-Item-Block, '0' will disable it.
runeightitem: A pseudo-boolean switch determining whether the Eight-Item-SOPT
should be run. '1' will enable the Eight-Item-Block, '0' will disable it.
runtenitem: A pseudo-boolean switch determining whether the Ten-Item-SOPT should
be run. '1' will enable the Ten-Item-Block, '0' will disable it.
runtwelveitem: A pseudo-boolean switch determining whether the Twelve-Item-SOPT
should be run. '1' will enable the Twelve-Item-Block, '0' will disable it.