Function Acquisition Speed Test - FAST - Pictures

Technical Manual

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

Created: January 13, 2025

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

Script Copyright © Millisecond Software, LLC

Background

This script implements the Function Acquisition Speed Test (FAST), an implicit measure of stimulus relatedness (based on prior learning). It assesses how quickly a person can learn to arbitrarily sort items based on their existing associations, with the speed of acquisition reflecting the strength of these previously learned relationships. Items that are more strongly connected are thought to be easier to be sorted into the same categories, resulting in higher performance and faster sorting times. The FAST is suggested to be an alternative to the IAT and IRAP (e.g. Watters et al, 2023).

This default FAST template uses the attribute categories POSITIVE vs. NEGATIVE and the target categories FLOWERS vs. INSECTS with the hypothesized strength FLOWERS-POSITIVE (INSECTS-NEGATIVE) being more strongly related than the opposite pairings.

References

Watters, A. (2023). Assessing the Function Acquisition Speed Test (FAST) as a Novel Implicit Measure of Salient Emotional Experiences. ProQuest Dissertations & Theses.

Watters, A., Cummins, J., & Roche, B. (2023). How to Build and How not to Build an Implicit Measure in Behavior Analysis: A case Study Using the Function Acquisition Speed Test. Perspectives on Behavior Science, 46(3–4), 459–492. https://doi.org/10.1007/s40614-023-00387-w

Javascript implementation accessible here: https://github.com/JamieCummins/fast-js

Duration

5 minutes

Description

Participants are asked to sort attributes (e.g. positive and negative adjectives) and target items (e.g flowers vs. insects) via 2 keystroke presses (e.g. Z vs M). Feedback is given after each sorting trial to inform the participant whether the correct key was pressed.

Participants work through two blocks: one 'CONSISTENT' and one 'INCONSISTENT' block.

CONSISTENT BLOCK: attribute and target items that are hypothesized to be more strongly connected (based on prior learning/experiences) are sorted via the same keys (Example: positive adjectives, e.g. "beautiful", flowers, e.g. "daisy", are both correctly sorted via the Z-key).

INCONSISTENT BLOCK: attribute and target items that are hypothesized to be more strongly connected (based on prior learning/experiences) are sorted via opposite keys (Example: positive adjectives are correctly sorted via the M-key but flowers are correctly sorted via the Z-key).

The order of the consistent and inconsistent block is determined randomly.

Procedure

(1) General instructions

(2) Optional Practice (see section Editable Parameters), by default the practice block is skipped

(3) Test: 2 test blocks (CONSISTENT vs. INCONSISTENT)
-> order of blocks is randomly determined
-> 52 (learning) trials per block (see section Editable Parameters)
-> selection of the two attribute trials (here: positive vs. negative words) and the two target trials
(here: flowers vs. insects) is done randomly without replacement (repeat after all 4 trial types have been selected)
-> each attribute/target trial randomly (without replacement) selects one of their assigned stimuli


Trial Sequence

->iti (blank screen) for 500ms
->stimulus for max. 3000ms or until response
->feedback immediately following response for 500ms
-> iti.....

Stimuli

provided by Millisecond - can be edited in script 'fast_stimuli_inc.iqjs'

Instructions

provided by Millisecond - can be edited in script 'fast_instructions_inc.iqjs'

Summary Data

File Name: fast_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
skipPractice 0 = false -> practice block is run
1 = true -> practice block is skipped
nTestTrials Number of test trials (parameter)
blockOrder The order in which the c(onsistent) and i(nconsistent) blocks were run (order is randomly determined)
Accuracy
propCorrectOverall Overall proportion correct (across consistent and inconsistent block)
propCorrectC Proportion correct across consistent block
propCorrectI Proportion correct across inconsistent block
Latencies
meanCorrRTC Mean correct response time in consistent block
meanCorrRTI Mean correct response time in inconsistent block
Fast Score Calculations
durationCMS The block duration (in ms) of the consistent block
durationIMS The block duration (in ms) of the inconsistent block
correctCountC Total number of correct responses in the consistent block
incorrectCountC Total number of incorrect responses in the consistent block (including timeout errors)
wrongKeyCountC Total number of wrong key responses in the consistent block (excluding timeout errors)
timeoutCountC Total number of timeout errors in the consistent block
correctCountI Total number of correct responses in the inconsistent block
incorrectCountI Total number of incorrect responses in the inconsistent block (including timeout errors)
wrongKeyCountI Total number of wrong key responses in the inconsistent block (excluding timeout errors)
timeoutCountI Total number of timeout errors in the inconsistent block
fastRFD A per-minute Response Fluency Differential (RFD) score
that is suggested to reflect the degree to which the response fluency on the consistent block
is greater than that observed on the inconsistent block (Watters,2023,p.56-57).
calculated as
(((correctCountC-incorrectCountC)/durationCMS) - ((correctCountI-incorrectCountI)/durationIMS))*60000
Watters (2023, p.56) writes that the blockDuration time was measured in seconds.
Millisecond believes this to be a typo because
1) to translate minutes into ms you need to multiply the minute time by
t_ms = t_min * 60*1000 = t_min * 60000 (the number stated in the equation)
with seconds you would only need to multiply the minute time by 60.
2) the RFD numbers provided by Watters (2023) would be much higher if the blockDuration was measured in seconds
=> Millisecond uses the blockDuration in ms for the RFD calculations

Raw Data

File Name: fast_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.
condition "c" = consistent; "i" = inconsistent
blockOrder The order in which the consistent and inconsistent blocks are run
stimulusitem Presented stimuli
response The response of participant (scancode of response button)
responseText The label of the response button
correct Correctness of response (1 = correct, 0 = error)
latency Response latency (in ms); measured from: onset of stims
rspTimestamp Response timestamp of the current response (measured from onset of script)
respCategory 0 = timeout
1 = incorrect response key was pressed
2 = correct response

Parameters

The procedure can be adjusted by setting the following parameters.

NameDescriptionDefault
Ui Parameters
canvasColor The color of the portion of the screen used for the current task ("active")white
screenColor The color of the portion of the screen that is not used for the current taskwhite
defaultTextColor The default text colorblack
Design Parameters
skipPractice True = practice session is skipped (Waters et al, 2023, p.478, "[...] contemporary FAST studies generally omit practice blocks.")
false = a practice session is run
true
nPracticeTrials Number of practice trials (if practice block is run)10
nTestTrials Number of test trials run per consistent and inconsistent test block52
Sizing Parameters
wordStimHeightPct The default height of the word stimuli (in canvas height%)5%
imageStimHeightPct The default height of picture stimuli (in canvas height%)20%
Timing Parameters
getReadyDurationMS Duration (in ms) of the getReady trial2000
stimDurationMS The duration (in ms) that the stims are presented (also the response time)3000
itiMS Interttrial interval (in ms): presents black screen before each new trial500
feedbackMS Feedback duration (in ms)500
Responsekeys
leftResponseKey The left response key (on a QWERTY keyboard)"Z"
rightResponseKey The right response key (on a QWERTY keyboard)"M"