Adaptive Symmetry Span

Technical Manual

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond

Created: January 29, 2019

Last Modified: January 17, 2025 by K. Borchert (katjab@millisecond.com), Millisecond

Script Copyright © Millisecond Software, LLC

Background

This script implements the Symmetry Span test subtest of the Adaptive Composite Complex Span Test (ACCES); an adaptive test of working memory with visuospatial ("symmetry span test"), mathematical ("operation span test") and verbal subtests ("reading span test") for children ages 8-13.

The ACCES was developed by Gonthier et al (2018). According to the authors "the test presents a fixed number of trials to all participants, allows for partial credit scoring, and can be used with children regardless of ability level. The ACCES demonstrated satisfying psychometric properties in a sample of 268 children aged 8©13 years." (p.910)

All materials for the ACCES © including the stimuli, an open source implementation of the task script under PsychoPy (Peirce, 2007), and all validation data © can be accessed via the Open Science Framework platform at https://osf.io/bk7pm/.

Norms in this script (based on grade level) use the data provided by Gonthier et al (2018) collected with a sample of French students.

References

Gonthier, C., Thomassin, N., & Roulin, J.-L. (2016). The Composite Complex Span: French validation of a short working memory task. Behavior Research Methods, 48(1), 233-242. doi:10.?3758/?s13428-015-0566-3

Gonthier C, Aubry A, Bourdin B. (2018). Measuring working memory capacity in children using adaptive tasks: Example validation of an adaptive complex span. Behav Res Methods. Jun;50(3):910-921. doi: 10.3758/s13428-017-0916-4. PMID: 28643158. Gonthier, C., Thomassin, N., & Roulin, J.-L. (2016). The Composite Complex Span : French validation of a short working memory task. Behavior Research Methods, 48(1), 233-242. doi:10.?3758/?s13428-015-0566-3

Gonthier C, Aubry A, Bourdin B. (2018). Measuring working memory capacity in children using adaptive tasks: Example validation of an adaptive complex span. Behav Res Methods. Jun;50(3):910-921. doi: 10.3758/s13428-017-0916-4. PMID: 28643158.

this script does not run on its own. It is included in script "ACCES_SSPAN.iqjs"

Duration

9 minutes

Description

Participants work on 6 symmetry span test trials. Levels for each trial (after the first) are adapted based on performance.

Symmetry Span Test: a dual task involving the evaluation of simple symmetry problems while also trying to remember spatial location in a 4x4 matrix: Evaluation of Symmetry Problem -> Matrix Position Learning -> .....-> Matrix Positions Recall

The number of 'symmetry-evaluations/spatial position learning' combos depends on the level of difficulty (=span size) of the current test trial. All participants start at level 4. Depending on performance they move up, stay on the same level, or go down a level. The lowest level tested is level 2; the highest level tested in the SSPAN is level 7.

The task provides 3 practice session before the actual 6 test trials are run: Practice 1: training of the spatial location recall task Practice 2: training of the symmetry evaluation task Practice 3: dual training of the combined task

Procedure

level = span size

4 phases:

PHASE 1: Practice 1 -Matrix position Recall Training ("Memory Task")
Participants work on 2 trials (level 2, followed by level 3) with a fixed set of stimuli for each round.
During this phase, they only work on the Matrix position Recall task (no symmetry problems are presented)

Trial Sequence:
blank (700ms)->Start Fixation Cross (presented for 1200ms) -> blank (for 500ms) ->
Matrix position (800ms) -> Blank (800ms) -> Matrix position (800ms) -> Blank (800ms) -> .......-> Blank (700ms)
-> Recall Screen (as long as needed, corrections possible) -> Feedback (3000ms)

At the end of Practice1, recall performance is analyzed and the practice block is repeated
IF mean recall performance is under 70% correct.
(recall performance: the number of Matrix positions correctly recalled in the exact position of presentation)

PHASE 2: Practice 2 - Symmetry Problem Evaluation Training ("Processing Task")
Participants work on 10 Symmetry Problems and evaluate them to be 'true' (when symmetric) or 'false' (when asymmetric).
The Symmetry Problems are the same for each participant and are presented in fixed order.
No Matrix position Recall task is run.

Trial Sequence:
blank (700ms)->Start Fixation Cross (presented for 1200ms) -> blank (for 500ms) ->
Symmetry Problem (max. 8000ms) -> Feedback (3000ms) -> Blank (150ms) -> Symmetry Problem (max. 8000ms) -> Feedback (3000ms)....

At the end of this practice round, symmetry performance is analyzed and the practice block is repeated
if the proportion correctly evaluated Symmetry Problems is under 70% correct.
Furthermore, the duration of the symmetry problem presentation for the test trials is calculated:
median time (in ms) the problems were answered + 2.5 x Median Absolute Deviation (MAD).
(Range: 2000ms - 8000ms)

PHASE 3: Practice 3 - Dual Task Training
Participants work on 2 combined trials (level 2, level 3). The stimuli are the same for all participants
and are presented in fixed order.

Trial Sequence:
blank (700ms)->Start Fixation Cross (presented for 1200ms) -> blank (for 500ms) ->
Symmetry Problem (calculated presentation time during practice 2) -> Blank (150ms) ->
Matrix position (800ms) -> Blank (800ms) ->
Symmetry Problem (calculated presentation time during practice 2) -> Blank (150ms) ->
Matrix position (800ms) -> Blank (800ms) -> .....

Matrix position (800ms) -> Blank (700ms) -> Recall Screen

At the end of this practice round, performance is analyzed and feedback is provided.


PHASE 4: Test (Dual Task)
Participants work on 6 combined trials (starting level = 3; levels are adjusted based on performance
thereafter). Each trial (1-6) presents the stimuli from the same stimuli lists in the same order
(though not all participants will work on all the possible stimuli of a particular trial as this is
level dependent). No more feedback is provided.

Trial Sequence:
blank (700ms)->Start Fixation Cross (presented for 1200ms) -> blank (for 500ms) ->
Symmetry Problem (calculated presentation time during practice 2) -> Blank (150ms) ->
Matrix position (800ms) -> Blank (800ms) ->
Symmetry Problem (calculated presentation time during practice 2) -> Blank (150ms) ->
Matrix position (800ms) -> Blank (800ms) -> .....

Matrix position (800ms) -> Blank (700ms) -> Recall Screen

During each round, the computer calculates
a. processing task performance (here: symmetry performance)
b. recall performance
- the number of correctly recalled Matrix positions
- the total number of correctly recalled Matrix positions

At the end of each round, the next level is determined based on recall performance:
1. levels goes down by 1 for recall performance less than 60%
2. levels stay the same for 60% <= recall performance < 100%
3. levels go up by 1 for perfect recall performance (100% correct)

Stimuli

All stimuli are provided by Gonthier et al (2018)

All materials for the ACCES © including the stimuli, an open source implementation
of the task script under PsychoPy (Peirce, 2007), and all validation data © can be accessed via the Open Science
Framework platform at https://osf.io/bk7pm/.

Instructions

Instructions are modelled after the ones used in the e-prime script provided
by Gonthier et al (2018).

The instructions in this script are provided by as htm/html pages and can be edited by changing the
provided htm/html files. To edit htm/html-files: open the respective documents in simple Text Editors
such as TextEdit (Mac) or Notepad (Windows).

See script acces_sspan_instructions_inc.iqjs

Summary Data

File Name: acces_sspan_summary*.iqdat

Data Fields

NameDescription
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
age The entered age of the participant
gradeLevel The entered grade level of the participant
gender The entered gender of the participant
ssDurationS The SSPAN task duration in seconds
ssTotalStimsRecalled The total number of matrix positions recalled across all 6 SSPAN test rounds
ssZScore The calculated z-score of the total number of recalled matrix positions across all 6 SSPAN test rounds
ssPercentile The calculated percentile of the z-score of the total number of recalled matrix positions across all 6 SSPAN test trials
mean and standard deviation used to calculate z-scorespercentile ranks are based on published data
by Gonthier et al (2018) using a sample of French students. For more detail see Gonthier et al (2018).
list.ssProcessingAccOverall.mean The mean proportion correct Processing Task ('symmetry problems') performance across
all 6 SSPAN test rounds
ssProcessingTaskFlag 1 = the mean proportion correct SSPAN Processing Task ('symmetry problems') performance is below 70% correct
(SSPAN performance is flagged)
0 = otherwise (SSPAN performance is not flagged)
list.ssProcessingRTOverall.mean: mean correct processing response time (in ms)
list.ssCurrentLevels.mean The average SSPAN span size worked on
list.ssCurrentLevels.minimum The minimum SSPAN span size worked on (lowest possible span size tested: 2)
list.ssCurrentLevels.maximum The maximum SSPAN span size worked on (highest possible span size tested: 8)
ssLevel2Count Number of times span size 2 was run during the SSPAN
ssLevel3Count Number of times span size 3 was run during the SSPAN
ssLevel4Count Number of times span size 4 was run during the SSPAN
ssLevel5Count Number of times span size 5 was run during the SSPAN
ssLevel6Count Number of times span size 6 was run during the SSPAN
ssLevel7Count Number of times span size 7 was run during the SSPAN
ssLevel8Count Number of times span size 8 was run during the SSPAN
ssLevelRound1 SSPAN span size tested during Round 1 (by default: 4)
ssProblemCumAccRound1 Number of correctly answered SSPAN Processing Task ('symmetry evaluation task') problems during Round 1
ssProcessingAccRound1 Proportion correct SSPAN Processing Task ('symmetry evaluation task') performance during Round 1
ssStimsRound1 The presented SSPAN recall stims ('matrix positions') during Round 1 (in the order presented)
ssRecallResponseRound1 The recalled SSPAN stims ('matrix positions') during Round 1 (in the order selected)
ssNumberStimsRecalledRound1 The number of correctly recalled SSPAN stims ('matrix positions') during Round 1
ssProcessingRTRound1 Mean correct processing task response time (in ms) in Round 1
ssLevelRound2 SSPAN span size tested during Round 2
ssProblemCumAccRound2 Number of correctly answered SSPAN Processing Task ('symmetry evaluation task') problems during Round 2
ssProcessingAccRound2 Proportion correct SSPAN Processing Task ('symmetry evaluation task') performance during Round 2
ssStimsRound2 The presented SSPAN recall stims ('matrix positions') during Round 2 (in the order presented)
ssRecallResponseRound2 The recalled SSPAN stims ('matrix positions') during Round 2 (in the order selected)
ssNumberStimsRecalledRound2 The number of correctly recalled SSPAN stims ('matrix positions') during Round 2
ssProcessingRTRound2 Mean correct processing task response time (in ms) in Round 2
ssLevelRound3 SSPAN span size tested during Round 3
ssProblemCumAccRound3 Number of correctly answered SSPAN Processing Task ('symmetry evaluation task') problems during Round 3
ssProcessingAccRound3 Proportion correct SSPAN Processing Task ('symmetry evaluation task') performance during Round 3
ssStimsRound3 The presented SSPAN recall stims ('matrix positions') during Round 3 (in the order presented)
ssRecallResponseRound3 The recalled SSPAN stims ('matrix positions') during Round 3 (in the order selected)
ssNumberStimsRecalledRound3 The number of correctly recalled SSPAN stims ('matrix positions') during Round 3
ssProcessingRTRound3 Mean correct processing task response time (in ms) in Round 3
ssLevelRound4 SSPAN span size tested during Round 4
ssProblemCumAccRound4 Number of correctly answered SSPAN Processing Task ('symmetry evaluation task') problems during Round 4
ssProcessingAccRound4 Proportion correct SSPAN Processing Task ('symmetry evaluation task') performance during Round 4
ssStimsRound4 The presented SSPAN recall stims ('matrix positions') during Round 4 (in the order presented)
ssRecallResponseRound4 The recalled SSPAN stims ('matrix positions') during Round 4 (in the order selected)
ssNumberStimsRecalledRound4 The number of correctly recalled SSPAN stims ('matrix positions') during Round 4
ssProcessingRTRound4 Mean correct processing task response time (in ms) in Round 4
ssLevelRound5 SSPAN span size tested during Round 5
ssProblemCumAccRound5 Number of correctly answered SSPAN Processing Task ('symmetry evaluation task') problems during Round 5
ssProcessingAccRound5 Proportion correct SSPAN Processing Task ('symmetry evaluation task') performance during Round 5
ssStimsRound5 The presented SSPAN recall stims ('matrix positions') during Round 5 (in the order presented)
ssRecallResponseRound5 The recalled SSPAN stims ('matrix positions') during Round 5 (in the order selected)
ssNumberStimsRecalledRound5 The number of correctly recalled SSPAN stims ('matrix positions') during Round 5
ssProcessingRTRound5 Mean correct processing task response time (in ms) in Round 5
ssLevelRound6 SSPAN span size tested during Round 6
ssProblemCumAccRound6 Number of correctly answered SSPAN Processing Task ('symmetry evaluation task') problems during Round 6
ssProcessingAccRound6 Proportion correct SSPAN Processing Task ('symmetry evaluation task') performance during Round 6
ssStimsRound6 The presented SSPAN recall stims ('matrix positions') during Round 6 (in the order presented)
ssRecallResponseRound6 The recalled SSPAN stims ('matrix positions') during Round 6 (in the order selected)
ssNumberStimsRecalledRound6 The number of correctly recalled SSPAN stims ('matrix positions') during Round 6
ssProcessingRTRound6 Mean correct processing task response time (in ms) in Round 6
ssSpanTaskTrainingCount The number of times the SSPAN span task training was run (SSPAN practice 1)
ssProcessingTaskTrainingCount The number of times the SSPAN processing task training was run (SSPAN practice 2)
ssDualTaskTrainingCount The number of times the SSPAN span task training was run (SSPAN practice 3)
ssProcessingTaskMaxDuration The maximum duration (in ms) that SSPAN processing Task problems ('symmetry problems')
are presented during the Dual Task Training block (=practice3) and the actual Test rounds.
This duration was calculated based on the Median Processing Task Duration during
the Processing Task Training (=practice2)
'SS ProcessingTask medianRT' + 2.5 x 'SS Processing Task MAD RT'
ssProcessingRTMeanPr2 The mean response latency answering SSPAN processing task problems ('symmetry problems') during practice2
ssProcessingRTMedianPr2 The median response latency answering SSPAN processing task problems ('symmetry problems') during practice2
ssProcessingRTMAD Median Absolute Deviation (MAD) of response latencies answering SSPAN processing task problems during practice2

Raw Data

File Name: acces_sspan_raw*.iqdat

Data Fields

NameDescription
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.
age The entered age of the participant
gradeLevel The entered grade level of the participant
gender The entered gender of the participant
phase Stores the name of the current task phase
roundCount Counts the rounds ("trials") run in the current phase
currentLevel Stores the levelspansize tested in the current round
processingTaskProblem Stores the current processing task problem (e.g. symmetry evaluation) presented (PROCESSING TASK)
correctResponse Stores the correct response to the current processing task problem (TRUE vs. FALSE) (PROCESSING TASK)
processingTaskResponse Stores the given response to the current processing task problem (TRUE vs. FALSE) (PROCESSING TASK)
processingTaskAcc Stores the accuracy of the processing task response (PROCESSING TASK)
1 = correct
0 = error
processingTaskCumAcc Stores the number of correct processing task responses (PROCESSING TASK)
stim Stores the current recall stim (e.g. Matrix position) presented (MEMORY TASK)
currentStims Stores the collected recall stims of the current round in the order presented (MEMORY TASK)
recallResponse Stores the recall stims of the current round in the order selected on the recall matrix (MEMORY TASK)
numberStimsRecalled Stores the number of correctly recalled stims of the current round(MEMORY TASK)
totalStimsRecalled Stores the total number of correctly recalled stims during the current task (MEMORY TASK)
stimulusItem The presented stimuli in order of trial presentation of the currently recorded trial
response The participant's response (scancode of response buttons) of the currently recorded trial
correct Accuracy of response: 1 = correct response; 0 = otherwise of the currently recorded trial
latency The response latency (in ms) of the current trial

Parameters

The procedure can be adjusted by setting the following parameters.

NameDescriptionDefault
User Interface Sizing Parameters
ssFixationCrossHeight Sets the size of the fixation cross (presented during practice blocks) relative to canvas height20%
ssMatrixSize Sets the size of the recall matrix relative to the canvas65%
ssProblemHeight Sets the height of the presented symmetry images relative to canvas height80%
Duration Parameters
ssPreFixationDuration Sets the duration (in ms) of the blank space that precedes the fixation cross at the beginning of each trial700
ssFixationDuration Sets the duration (in ms) of the fixation cross presented on screen1200
ssFixationStimISI Sets the duration (in ms) of the blank space that follows the fixation cross before the first Matrix position is presented500
ssProcessingProblemMaxDuration Sets the max duration (in ms) that an equation is presented on screen (used during practice 2)8000
ssProcessingProblemMinDuration Sets the minimum duration (in ms) that an equation is presented on screen2000
ssProcessingResponseISI Sets the duration (in ms) of the blank space that follows a response to the equation problem before the next Matrix position is presented150
ssStimDelay Sets the delay (in ms) with which the stim (red matrix position) is revealed in the matrix100
ssStimPresentationDuration Sets the duration (in ms) that each Matrix position is presented on screen800
ssIsi Sets the duration (in ms) of the blank space that follows the presentation of a Matrix position before the next Matrix position/next equation is presented800
ssRecallDelay Sets the duration (in ms) of the blank space that follows the last Matrix position before the recall matrix is presented700
ssSingleTaskFeedbackDuration Sets the duration (in ms) of the final performance feedback text presented during the single task practice sessions (practice1/practice2)3000
ssProcessingTaskImmediateFeedbackDuration Sets the duration (in ms) of the intermittend feedback presented during the processing Task Training3000
ssDualTaskFeedbackDuration Sets the duration (in ms) of the performance feedback text presented for the dual task training performance (practice3)3000
Procedure Parameters
ssStartLevel Sets the start level for the SSPAN test, should not be changed unless the necessary stimuli are provided3
ssPracticeMinAcc Defines the lowest proportion correct that needs to be achieved during practice1&2 to move on to the next phase0.7
ssLevelDecrease Performance under 60% correct results in decreasing the level for the next round0.6
ssLevelIncrease Performance at 100% results in increasing the level for the next round1
Debug
ssDebugmode Debug Stimuli: should be set to 0 for the actual test (if set to 1 the correct Matrix positions show up on the recall screen)0