Adams Task

Technical Manual

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

Created: January 16, 2022

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

Script Copyright © Millisecond Software, LLC

Background

This script implements Millisecond's version of the 'Adams Task' - a problem solving paradigm investigating people's use of additive and subtractive changes to convert asymmetrical images to symmetrical ones.

References

Adams, G.S., Converse, B.A., Hales, A.H. et al. People systematically overlook subtractive changes. Nature 592, 258–261 (2021). https://doi.org/10.1038/s41586-021-03380-y

Duration

3 minutes

Description

Participants are presented 10x10 grids made out of boxes of 2 different colors. The initial color pattern is asymmetrical and the task is to make the pattern symmetrical (left to right, top to bottom) with the fewest clicks possible (when clicked, each box reverses its color).

2 experimental conditions: 1) with practice: participants work through up to 3 practice problems before working on the test problem(s) 2) without practice: participants only work on the test problem(s) (no practice)

Assignment to the two experimental conditions is done via list.practiceProblems settings (see section Editable Parameters)

Procedure

NOTES:
● Script can be run with 0-3 practice problems and 0-5 test problems for each participant
=> See section Editable Parameters for more info (look for list.practiceProblems/list.testProblems)

Setup

(1) Intro with Demo Matrix
Participants get the chance to play with a demo matrix and change colors. Self-paced.

(2) Practice (if practice should be run - see above)
Up to 3 practice matrices presented. Self-paced.
list.practiceProblems (Under Section Editable Parameters) controls
● how many practice problems are run (0-3)
● which practice problems are run
● in what order those practice problems should be run

The default setup runs 3 practice problems in fixed order.

(3) Test (all)
Up to 5 Critical Test Matrices. Self-paced.
list.testProblems (Under Section Editable Parameters) controls
● how many practice problems are run (0-5)
● which practice problems are run
● in what order those practice problems should be run

The default setup runs 1 test problem.

Stimuli

This script uses the matrices used in the original Qualtrics survey. However,
the matrices can be easily adapted under section Editable Stimuli

stimuli: https://osf.io/7v6r2/
(Qualtrics survey)

Instructions

This script uses instructions used in the original Qualtrics survey
instructions: https://osf.io/7v6r2/
(Qualtrics survey)

see script adamstask_instructions_inc.iqjs

Summary Data

File Name: adamstask_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
expCondition "practice" vs. "no practice"
see section Editable Parameters
countPracticeTrials Number of practice trials run
propCorrectPractice Proportion correct practice performance (based on values.acc)
countTestTrials Number of test trials run
propCorrectTest Proportion correct test performance (based on values.acc)
test1Image The image used for the 1. test problem run
the number refers to ORDER in which the test problem was run
Example: 'testA' was run as the 1. test problem
test1Acc 1 = the final matrix for the 1. TEST problem is symmetric AND the fewest number of clicks were made to achieve symmetry
0 = otherwise
test1SolutionTime Time (in ms) until participant clicked 'next' button for the 1. TEST problem
test1Symmetry 1 = the final test grid for the 1. test problem was symmetric; 0 = otherwise
test1MinClicks Stores the minimum number of clicks to achieve symmetry for the 1. test matrix
test1AddClickCounter Stores the number of Addition - Clicks made on the 1. test grid
test1SubtractClickCounter Stores the number of Subtraction - Clicks made on the 1. test grid
test2Image The image used for the 2. test problem run (IF RUN)
Example: 'testA' was run as the 2. test problem
test2Acc 1 = the final matrix for the 2. TEST problem is symmetric AND the fewest number of clicks were made to achieve symmetry
0 = otherwise
test2SolutionTime Time (in ms) until participant clicked 'next' button for the 2. TEST problem
test2Symmetry 1 = the final test grid for the 2. test problem was symmetric; 0 = otherwise
test2MinClicks Stores the minimum number of clicks to achieve symmetry for the 2. test matrix
test2AddClickCounter Stores the number of Addition - Clicks made on the 2. test grid
test2SubtractClickCounter Stores the number of Subtraction - Clicks made on the 2. test grid
test3Image The image used for the 3. test problem run (IF RUN)
Example: 'testA' was run as the 3. test problem
test3Acc 1 = the final matrix for the 3. TEST problem is symmetric AND the fewest number of clicks were made to achieve symmetry
0 = otherwise
test3SolutionTime Time (in ms) until participant clicked 'next' button for the 3. TEST problem
test3Symmetry 1 = the final test grid for the 3. test problem was symmetric; 0 = otherwise
test3MinClicks Stores the minimum number of clicks to achieve symmetry for the 3. test matrix
test3AddClickCounter Stores the number of Addition - Clicks made on the 3. test grid
test3SubtractClickCounter Stores the number of Subtraction - Clicks made on the 3. test grid
test4Image The image used for the 4. test problem run (IF RUN)
Example: 'testA' was run as the 4. test problem
test4Acc 1 = the final matrix for the 4. TEST problem is symmetric AND the fewest number of clicks were made to achieve symmetry
0 = otherwise
test4SolutionTime Time (in ms) until participant clicked 'next' button for the 4. TEST problem
test4Symmetry 1 = the final test grid for the 4. test problem was symmetric; 0 = otherwise
test4MinClicks Stores the minimum number of clicks to achieve symmetry for the 4.t test matrix
test4AddClickCounter Stores the number of Addition - Clicks made on the 4. test grid
test4SubtractClickCounter Stores the number of Subtraction - Clicks made on the 4. test grid
test5Image The image used for the 5. test problem run (IF RUN)
Example: 'testA' was run as the 5. test problem
test5Acc 1 = the final matrix for the 5. TEST problem is symmetric AND the fewest number of clicks were made to achieve symmetry
0 = otherwise
test5SolutionTime Time (in ms) until participant clicked 'next' button for the 5. TEST problem
test5Symmetry 1 = the final test grid for the 5. test problem was symmetric; 0 = otherwise
test5MinClicks Stores the minimum number of clicks to achieve symmetry for the 5. test matrix
test5AddClickCounter Stores the number of Addition - Clicks made on the 5. grid
test5SubtractClickCounter Stores the number of Subtraction - Clicks made on the 5. test grid

Raw Data

File Name: adamstask_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
expCondition "practice" vs. "no practice"
see section Editable Parameters
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.
countPracticeTrials Counter for the practice trials
countTestTrials Counter for the test trials
image "demo", "practice1/2/3", "test1/2/3/4/5"
the number in the image file does not refer to the order in which it is run
fewestClicks The fewest clicks needed to achieve symmetry for the current image
countClicks The number of clicks made by participant
addClickCounter The number of Addition clicks (Addition click = a click that turns a background color into the target color)
subtractClickCounter The number of Subtraction clicks (Subtraction clicks = a click that turns a target color into a background color)
symmetry 1 = the final matrix is symmetric; 0 = otherwise
acc 1 = the final matrix is symmetric AND the fewest number of clicks were made to achieve symmetry
0 = otherwise
solutionTimeMS The cumulative response times (in ms) until the 'next' button is pressed
response The response of participant (box clicked or button pressed)
latency Response latency (in ms); measured from: onset of trial

Parameters

The procedure can be adjusted by setting the following parameters.

NameDescriptionDefault
The Grid Colors
color1 Background color ('subtract' color)"white"
color2 Target color ('add' color)"lightgreen"
Screencaptures
takeScreenCaptures True: the script takes a screenshot of the final grids
false: no screenshots are taken
false