Script Author: David Nitz (dave@millisecond.com), Millisecond
Last Modified: January 11, 2025 by K. Borchert (katjab@millisecond.com), Millisecond
Script Copyright © Millisecond Software, LLC
This script implements the 'Self-Ordered Pointing Task' (SOPT) originally described in Petrides & Milner (1982). Specifically, this script is modelled after the representational drawings version and item set described in Strauss et al (2006, pages 471-477).
The 'Self-Ordered Pointing Task'performance measures executive dysfunction like planning, organization, and self-control. Specifically, it measures how well people remember a sequence of self-initiated responses in a pointing task and avoid repeating previous choices.
Petrides, M., & Milner, B. (1982). Deficits on subject-ordered tasks after frontal- and temporal-lobe lesions in man. Neuropsychologia, 20, 249–262.
Strauss, E., Sherman, E. M. S., & Spreen, O. (2006). A compendium of neuropsychological tests: Administration, norms and commentary (3rd Edition). Oxford University Press.
10 minutes
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.
• 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
The picture stimuli were taken from a set prepared by Bruno Rossion and Gilles Pourtois,
freely available at 'https://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.
provided by Millisecond : see section Editable Instructions
File Name: sopt_summary*.iqdat
| Name | Description |
|---|---|
| inquisit.version | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| computer.touch | 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities |
| computer.hasKeyboard | 0 = no external keyboard detected; 1 = external keyboard detected |
| startDate | Date the session was run |
| startTime | Time the session was run |
| subjectId | Participant ID |
| groupId | Group number |
| sessionId | Session number |
| elapsedTime | Session duration in ms |
| completed | 0 = Test was not completed 1 = Test was completed |
| 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. |
| sixItemErrors01 | Number of errors during the first run of the Six-Item-SOPT. |
| sixItemErrors02 | Number of errors during the second run of the Six-Item-SOPT. |
| sixItemErrors03 | Number of errors during the third run of the Six-Item-SOPT. |
| sixItemTotalErrors | Total number of errors for the Six-Item-SOPT. |
| 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. |
| eightItemErrors01 | Number of errors during the first run of the Eight-Item-SOPT. |
| eightItemErrors02 | Number of errors during the second run of the Eight-Item-SOPT. |
| eightItemErrors03 | Number of errors during the third run of the Eight-Item-SOPT. |
| eightItemTotalErrors | Total number of errors for the Eight-Item-SOPT. |
| 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. |
| tenItemErrors01 | Number of errors during the first run of the Ten-Item-SOPT. |
| tenItemErrors02 | Number of errors during the second run of the Ten-Item-SOPT. |
| tenItemErrors03 | Number of errors during the third run of the Ten-Item-SOPT. |
| tenItemTotalErrors | Total number of errors for the Ten-Item-SOPT. |
| 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. |
| twelveItemErrors01 | Number of errors during the first run of the Twelve-Item-SOPT. |
| twelveItemErrors02 | Number of errors during the second run of the Twelve-Item-SOPT. |
| twelveItemErrors03 | 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. |
File Name: sopt_raw*.iqdat
| Name | Description |
|---|---|
| build | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| computer.touch | 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities |
| computer.hasKeyboard | 0 = no external keyboard detected; 1 = external keyboard detected |
| date | Date the session was run |
| time | Time the session was run |
| subject | Participant ID |
| group | Group number |
| session | Session number |
| blockcode | The name the current block (built-in Inquisit variable) |
| blocknum | The number of the current block (built-in Inquisit variable) |
| trialcode | The name of the currently recorded trial (built-in Inquisit variable) |
| trialnum | The number of the currently recorded trial (built-in Inquisit variable) trialnum is a built-in Inquisit variable; it counts all trials run even those that do not store data to the data file. |
| 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) |
| 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'). |
| positionCount | Variable holding the number of consecutive picks from the same position. Needed to evaluate the position rule. |
| 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'). |
| alphabetCount | Variable holding the number of consecutive picks in alphabetical order. Needed to evaluate the alphabet rule. |
| 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. |
| sixItemErrors01 | Number of errors during the first run of the Six-Item-SOPT. |
| sixItemErrors02 | Number of errors during the second run of the Six-Item-SOPT. |
| sixItemErrors03 | Number of errors during the third run of the Six-Item-SOPT. |
| sixItemTotalErrors | Total number of errors for the Six-Item-SOPT. |
| 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. |
| eightItemErrors01 | Number of errors during the first run of the Eight-Item-SOPT. |
| eightItemErrors02 | Number of errors during the second run of the Eight-Item-SOPT. |
| eightItemErrors03 | Number of errors during the third run of the Eight-Item-SOPT. |
| eightItemTotalErrors | Total number of errors for the Eight-Item-SOPT. |
| 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. |
| tenItemErrors01 | Number of errors during the first run of the Ten-Item-SOPT. |
| tenItemErrors02 | Number of errors during the second run of the Ten-Item-SOPT. |
| tenItemErrors03 | Number of errors during the third run of the Ten-Item-SOPT. |
| tenItemTotalErrors | Total number of errors for the Ten-Item-SOPT. |
| 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. |
| twelveItemErrors01 | Number of errors during the first run of the Twelve-Item-SOPT. |
| twelveItemErrors02 | Number of errors during the second run of the Twelve-Item-SOPT. |
| twelveItemErrors03 | 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. |
The procedure can be adjusted by setting the following parameters.
| Name | Description | Default |
|---|---|---|
Design |
||
| 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. | 1 |
| 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'). | 4 |
| 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. | 1 |
| 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'). | 4 |
| 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. | 1 |
| 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. | 1 |
| 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. | 1 |
| 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. | 1 |
Timing Parameters |
||
| trialDelay | Adjustable pretrialpause in milliseconds. Change as needed. | 500 |