___________________________________________________________________________________________________________________
Affective n-back Task (2-back only)
___________________________________________________________________________________________________________________
Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC
Date: 11-17-2022
last updated: 12-28-2022 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC
Script Copyright © 12-28-2022 Millisecond Software
___________________________________________________________________________________________________________________
BACKGROUND INFO
___________________________________________________________________________________________________________________
This script implements an affective 2-back procedure -based on Pe et al (2013)- to study
the role of updating affective information in working memory (WM) on emotional functioning.
Reference:
Affective 2-back procedure:
Pe, M.L., Koval, P. & Kuppens, P. (2013). Executive well-being: Updating of positive stimuli in working memory
is associated with subjective well-being. Cognition, 126, 335-340.
https://doi.org/10.1016/j.cognition.2012.10.002.
(https://www.sciencedirect.com/science/article/pii/S0010027712002259)
Affective Norms for English Words (ANEW):
Bradley, M. M., & Lang, P. J. (1999). Affective norms for English words (ANEW):
Instruction manual and affective ratings (Vol. 30, No. 1, pp. 25-36).
Technical report C-1, the center for research in psychophysiology, University of Florida.
url: e-lub.net/media/anew.pdf
___________________________________________________________________________________________________________________
TASK DESCRIPTION
___________________________________________________________________________________________________________________
Participants are working on 4 blocks of 2back tasks with affective word stimuli.
The task is to indicate for each word whether its valence matches the valence of the word
presented two trials before. Participants are asked to press one key if the word is a match,
and a different key if the word is not a match (2key n-back). Each block consists of 24 words.
___________________________________________________________________________________________________________________
DURATION
___________________________________________________________________________________________________________________
The default procedure takes about 10 minutes to complete
___________________________________________________________________________________________________________________
DATA FILE INFORMATION
___________________________________________________________________________________________________________________
The default data stored in the data files are:
(1) Raw data file: 'affectivenback_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.
phase: 0 = Practice; 1 = Test
testBlockCount: counts the test blocks run
N: 2 (for 2back)
setSequence: the order in which sets1-4 are run (Example: 1342)
by default, the sets are assigned in a random order (see list.setAssignment)
set: refers to the set of stimuli run in the current block (0-4; Note: set0 is the practice set)
by default, the sets are assigned in sequence
index: refers to the itemnumber of the current word
stim: the currently presented word
stimValence: "pos" vs. "neg"
valence2back: pos-pos-pos, pos-pos-neg, pos-neg-pos, pos-neg-neg,
neg-neg-neg, neg-neg-pos, neg-pos-neg, neg-pos-pos
matchTrialtype: 1 = pos-pos-pos
2 = pos-neg-pos
3 = neg-neg-neg
4 = neg-pos-neg
0 = anything else
middleRole2back: "" (empty) vs. "facilitator" vs. "distractor"
Example:
pos-pos-pos: middle one ('pos') is facilitator
pos-neg-pos: middle one ('neg') is distractor
valenceMatch: the valence of the match from 2 trials back: "pos" vs. "neg"
match: "y" (yes) (the current stim is a target = match in valence to stim 2 trials back); "n" (no)
corrResponse: stores the correct response key to press (1 vs. 2)
responseText: stores the pressed response key (1 vs. 2); Note: 0 = no response
correct: 1 = response was correct; 0 = response was incorrect (also for no responses)
rt: stores the response latency in ms (is empty for no responses); measured from onset of stim
latency: stores the response latency in ms (stores 3000 = responsetimeout for no responses); measured from onset of stim
(2) Summary data file: 'affectivenback_summary*.iqdat'*
inquisit.version: the Inquisit build/version run
computer.platform: the platform the script was run on (win/mac/ios/android)
script.startDate: date script was run
script.startTime: time script was started
script.subjectId: assigned subject id number
script.groupId: assigned group id number
script.sessionId: assigned session id number
script.elapsedTime: time it took to run script (in ms); measured from onset to offset of script
script.completed: 0 = script was not completed (prematurely aborted);
1 = script was completed (all conditions run)
N: 2 (for 2back)
setSequence: the order in which sets1-4 were run (Example: 1342)
list.ACC.mean: overall proportion correct
list.RT.mean: overall correct mean latency (in ms)
list.ACC_pospospos.itemCount: counts the number of times 'pos-pos-pos' trials were run during the test blocks
list.ACC_pospospos.mean: proportion correct 'pos-pos-pos' trials across the test blocks
list.RT_pospospos.itemCount: number of correct 'pos-pos-pos' trials across the test blocks
list.RT_pospospos.mean: mean RT (in ms) of correct 'pos-pos-pos' trials across the test blocks
list.ACC_posnegpos.itemCount: counts the number of times 'pos-neg-pos' trials were run during the test blocks
list.ACC_posnegpos.mean: proportion correct 'pos-neg-pos' trials across the test blocks
list.RT_posnegpos.itemCount: number of correct 'pos-neg-pos' trials across the test blocks
list.RT_posnegpos.mean: mean RT (in ms) of correct 'pos-neg-pos' trials across the test blocks
list.ACC_negnegneg.itemCount: counts the number of times 'neg-neg-neg' trials were run during the test blocks
list.ACC_negnegneg.mean: proportion correct 'neg-neg-neg' trials across the test blocks
list.RT_negnegneg.itemCount: number of correct 'neg-neg-neg' trials across the test blocks
list.RT_negnegneg.mean: mean RT (in ms) of correct 'neg-neg-neg' trials across the test blocks
list.ACC_negposneg.itemCount: counts the number of times 'neg-pos-neg' trials were run during the test blocks
list.ACC_negposneg.mean: proportion correct 'neg-pos-neg' trials across the test blocks
list.RT_negposneg.itemCount: number of correct 'neg-pos-neg' trials across the test blocks
list.RT_negposneg.mean: mean RT (in ms) of correct 'neg-pos-neg' trials across the test blocks
___________________________________________________________________________________________________________________
EXPERIMENTAL SET-UP
___________________________________________________________________________________________________________________
(1) Practice (practice stimuli)
- 24 2-back trials (the first two cannot be targets yet)
- the valence order is fixed for each participant
- the actual word order is randomly determined: the script randomly selects positive/negative
words (depending on required valence) from the practice set words
(Note: the sequence can easily be changed to a fix call of the words as well)
- feedback is provided during practice after each trial
(2) Test: 4 test blocks
- each block runs 24 2-back trials (the first two cannot be targets yet)
- the valence order is fixed for each participant
- the actual word order is randomly determined: the script randomly selects positive/negative
words (depending on required valence) from the pool of words from the currently used set
(Note: the sequence can easily be changed to a fix call of the words as well)
- by default, sets1-set4 are randomly assigned (see list.setAssignment)
- testblock1-3 provide a break trial at the end of the block
TrialSequence:
word (for 500ms) -> fixation cross for 2500ms (responsetimeout = 3000ms)
Feedback during practice is provided for 500ms
///////Valence Order (not original to Pe et al, 2013)
Millisecond Software generated a valence sequence for each test block with the following constraints:
1. 8 words are targets (2back valence 'matches'), 16 are non-targets (including the first two)
2. 12 words are positive, 12 words are negative
3. Each of the four target sequences 'pos-pos-pos', 'pos-neg-pos', 'neg-neg-neg', 'neg-pos-neg'
appear between 1 and 3 times per block
4. across four test blocks the target sequences would be run 7-9 times each
(see details under section Editable Stimuli)
__________________________________________________________________________________________________________________
STIMULI
___________________________________________________________________________________________________________________
The word lists used for sets 1-4 (as well as the practice set) were computer generated based on the
Bradley & Lang (1999) published 'Affective norms for English words' (ANEW).
This script does NOT use the original words (nor valence order) used by Pe et al (2013).
Steps:
(1) Words with valence ratings <= 3 (1,2,3) were categorized as 'negative' words
words with valence ratings >= 7 (7,8,9) were categorized as 'positive' words
(Note: some words were censored by Millisecond and not used for list generation)
(2) 60 positive stims (from the generated list of positive stims) were randomly selected
and paired with a negative word roughly based on arousal ratings (difference could not be more than 2)
and word length (difference could not be more than 2).
The first randomly selected negative stim that fulfilled those constraints was taken
as the match.
___________________________________________________________________________________________________________________
INSTRUCTIONS
___________________________________________________________________________________________________________________
provided by Millisecond Software - can be edited under 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: