Return to the Face Name Associative Memory Exam page
___________________________________________________________________________________________________________________	

										FACE NAME ASSOCIATIVE MEMORY EXAM (FNAME)
___________________________________________________________________________________________________________________

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC
Date: 10-27-2016
last updated:  11-11-2019 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC

Script Copyright © 11-11-2019 Millisecond Software

___________________________________________________________________________________________________________________
BACKGROUND INFO 	
___________________________________________________________________________________________________________________	
This script implements the Face Name Associative Memory Exam (FNAME) test based on: 

Rentz et al (2013). Promising developments in neuropsychological
approaches for the detection of preclinical
Alzheimer’s disease: a selective review. Alzheimer's Research & Therapy
2013, 5:58

Rentz DM, Amariglio RE, Becker JA, Frey M, Olson LE, Frishe K, Carmasin J,
Maye JE, Johnson KA, Sperling RA: Face–name associative memory
performance is related to amyloid burden in normal elderly.
Neuropsychologia 2011, 49:2776–2783.

___________________________________________________________________________________________________________________
TASK DESCRIPTION	
___________________________________________________________________________________________________________________	
from Rentz et al, 2011, p.2777:
The FNAME requires the subject to remember 16 unfamiliar face-name pairs and 16 face-occupation pairs for a total of 
32 cross-modal paired associates to be remembered. The test has an initial study phase as well as free recall and cued
recall trials. 

Initial face study phase: 
the test begins with an exposure to all 16 faces.
Subjects are shown 4 faces to a page, one face in each quadrant. They are asked to look at each face for a total of 2s 
until they have seen all 16 faces. 
(Note: in this script, a new page with 4 faces is presented every 8s)

Initial study of face-name pairs: 
subjects are then presented the same faces with names underneath and asked to study the name that goes with the face. 
To ensure that the subject is learning the face-name pairs, the examiner points to the face and asks the subject
to read the name associated with that face. After all 4 items are correctly identified; another 4 face-name pairs are presented 
until all 16 face-name pairs are studied. Subjects are given only one exposure to learn all 16 face-name pairs. 
(Note: in this script, a new page with 4 faces is presented every 20s - time limit can be changed under section Editable Parameters)

Initial recall of face-name pairs: 
subjects are then shown the face and asked to recall the name that goes with the face. 
The correct number of face-name pairs is recorded as an initial learning score for names (ILN).  

The FNAME includes both “free” and “cued” recall trials at immediate and delayed intervals. 

Free recall trials: 
after the initial study phase, subjects are then asked to freely recall all the names (FRN) and occupations (FRO). 

Cued recall trials:
following the free recall trial, subjects are shown the face and asked to recall the name (CRN) and occupation (CRO) 
that was associated with the face. 

30-Min delayed
free recall: subjects are again asked to freely recall the names (FRN30) and occupations (FRO30) following a 30-min delay. 
cued recall: subjects are again shown the face and asked to recall the name (CRN30) and occupation (CRO30) associated with the face.

___________________________________________________________________________________________________________________	
DURATION 
___________________________________________________________________________________________________________________	
the default set-up of the script takes appr. 15min (IL, FR, CR) + 30min(Delay) + 7 minutes (FR30, CR30)

___________________________________________________________________________________________________________________	
DATA FILE INFORMATION 
___________________________________________________________________________________________________________________
The default data stored in the data files are:

(1) Raw data file: 'facenameassocitivememoryexam_raw*.iqdat' (a separate file for each participant)*

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
script.sessionid:					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.
										
variables that store face-name-occupation information of the currently presented pic(s):
face1-
face4:								used for presenting 4 faces per page: store the itemnumber of the presented faces (clockwise starting in upper left quadrant)
name1-
name4:								used for presenting 4 names per page: store the itemnumber of the names that were assigned to faces1-4
occupation1-
occupation4:						used for presenting 4 occupations per page: store the itemnumber of the occupations that were assigned to faces1-4

targetFace:						stores the itemnumber of the current face picture (if only 1 is presented)
targetName:						stores the itemnumber of the name assigned to the current face
targetOccupation:				stores the itemnumber of the occupation assigned to the current face									

Cued Recall dependent measures:

ILN = initial learning names
ILO = initial learning occupations
FRN = freely recall names
FRO = freely recall occupations
FRN30 = freely recall names after 30 minutes
FRO30 = freely recall occupations after 30 minutes
								
response_ILN:						stores the given name response to the current ILN trial
correctResponse_ILN:			stores the current correct name response in condition ILN
correct_ILN:						1 = the current entered name is correct for the given picture; 0 = otherwise (in condition ILN)
response_ILO:						stores the given occupation response to the current ILO trial
correctResponse_ILO:			stores the current correct occupation response in condition ILO
correct_ILO:						1 = the current entered occupation is correct for the given picture; 0 = otherwise (in condition ILO)
response_CRN:					stores the given name response to the current CRN trial
correctResponse_CRN:			stores the current correct name response in condition CRN
correct_CRN:						1 = the current entered name is correct for the given picture; 0 = otherwise (in condition CRN)
response_CRO:					stores the given occupation response to the current CRO trial
correctResponse_CRO:			stores the current correct occupation response in condition CRO
correct_CRO:						1 = the current entered occupation is correct for the given picture; 0 = otherwise (in condition CRO)
response_CRN30:					stores the given name response to the current CRN30 trial
correctResponse_CRN30:		stores the current correct name response in condition CRN30
correct_CRN30:					1 = the current entered name is correct for the given picture; 0 = otherwise (in condition CRN30)
response_CRO30:					stores the given occupation response to the current CRO30 trial
correctResponse_CRO30:		stores the current correct occupation response in condition CRO30
correct_CRO30:					1 = the current entered occupation is correct for the given picture; 0 = otherwise (in condition CRO30)

Free Recall Dependent Measures:

response_FRN:					stores the entered freely recalled names in the FRN condition (freely recall all the names = FRN)
countCorrect_FRN:				counts the number of correctly recalled names in the FRN condition (freely recall all the names = FRN)
wordEstimate_FRN:				stores the estimate of the number of names recalled in the FRN condition (freely recall all the names = FRN)
intrusionOther_FRN:				stores all the recalled names that were not part of the original list (Note: might also contain misspelled names!) in the FRN condition

response_FRO:					stores the entered freely recalled occupations in the FRO condition (freely recall all the occupations = FRO)
countCorrect_FRO:				counts the number of correctly recalled occupations in the FRO condition (freely recall all the occupations = FRO)
wordEstimate_FRO:				stores the estimate of the number of occupations recalled in the FRO condition (freely recall all the occupations = FRO)
intrusionOther_FRO:				stores all the recalled occupations that were not part of the original list (Note: might also contain misspelled occupations!) in the FRO condition

response_FRN30:					stores the entered freely recalled names in the FRN30 condition (freely recall all the names with 30 min delay = FRN30)
countCorrect_FRN30:			counts the number of correctly recalled names in the FRN30 condition (freely recall all the names with 30 min delay = FRN30)
wordEstimate_FRN30:				stores the estimate of the number of names recalled in the FRN30 condition (freely recall all the names with 30 min delay = FRN30)
intrusionOther_FRN30:			stores all the recalled names that were not part of the original list (Note: might also contain misspelled names!) in the FRN30 condition

response_FRO30:					stores the entered freely recalled occupations in the FRO30 condition (freely recall all the occupations with 30 min delay = FR030)
countCorrect_FRO30:			counts the number of correctly recalled occupations in the FRO30 condition (freely recall all the occupations with 30 min delay = FR030)
wordEstimate_FRO30:				stores the estimate of the number of occupations recalled in the FRO30 condition (freely recall all the occupations with 30 min delay = FR030)
intrusionOther_FRO30:			stores all the recalled occupations that were not part of the original list (Note: might also contain misspelled occupations!) in the FRO30 condition


(2) Summary data file: 'facenameassocitivememoryexam_summary*.iqdat' (a separate file for each participant)*

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)

cued recall:
ILN:									number of correctly recalled names in the ILN condition (initial learning score for names)
ILO:									number of correctly recalled occupations in the ILO condition
CRN:								number of correctly recalled names in the CRN condition
CRO:								number of correctly recalled occupations in the CRO condition
CRN30:								number of correctly recalled names in the CRN30 condition
CRO30:								number of correctly recalled occupations in the CRO30 condition

Free Recall Dependent Measures:

response_FRN:					stores the entered freely recalled names in the FRN condition (freely recall all the names = FRN)
countCorrect_FRN:				counts the number of correctly recalled names in the FRN condition (freely recall all the names = FRN)
wordEstimate_FRN:				stores the estimate of the number of names recalled in the FRN condition (freely recall all the names = FRN)
intrusionOther_FRN:				stores all the recalled names that were not part of the original list (Note: might also contain misspelled names!) in the FRN condition

response_FRO:					stores the entered freely recalled occupations in the FRO condition (freely recall all the occupations = FRO)
countCorrect_FRO:				counts the number of correctly recalled occupations in the FRO condition (freely recall all the occupations = FRO)
wordEstimate_FRO:				stores the estimate of the number of occupations recalled in the FRO condition (freely recall all the occupations = FRO)
intrusionOther_FRO:				stores all the recalled occupations that were not part of the original list (Note: might also contain misspelled occupations!) in the FRO condition

response FRN30:					stores the entered freely recalled names in the FRN30 condition (freely recall all the names with 30 min delay = FRN30)
countCorrect_FRN30:			counts the number of correctly recalled names in the FRN30 condition (freely recall all the names with 30 min delay = FRN30)
wordEstimate_FRN30:				stores the estimate of the number of names recalled in the FRN30 condition (freely recall all the names with 30 min delay = FRN30)
intrusionOther_FRN30:			stores all the recalled names that were not part of the original list (Note: might also contain misspelled names!) in the FRN30 condition

response_FRO30:					stores the entered freely recalled occupations in the FRO30 condition (freely recall all the occupations with 30 min delay = FR030)
countCorrect_FRO30:			counts the number of correctly recalled occupations in the FRO30 condition (freely recall all the occupations with 30 min delay = FR030)
wordEstimate_FRO30:				stores the estimate of the number of occupations recalled in the FRO30 condition (freely recall all the occupations with 30 min delay = FR030)
intrusionOther_FRO30:			stores all the recalled occupations that were not part of the original list (Note: might also contain misspelled occupations!) in the FRO30 condition

* separate data files: to change to one data file for all participants (on Inquisit Lab only), go to section
"DATA" and follow further instructions


___________________________________________________________________________________________________________________	
EXPERIMENTAL SET-UP 
___________________________________________________________________________________________________________________

(1) script pairs images with names and occupations by their respective itemnumbers (default) (Note: the pairings can be randomized by changing paramters.randomPairings)
(2) FaceStudy: presents 4 trials of 4 randomly selected faces for initial familiarization. Each trial lasts 8s.
(3) FaceNameStudy: presents 4 trials of 4 randomly selected faces with assigned names for name-face association study. Each trial lasts 20s.
(4) Initial Learning of Names (ILN): presents all 16 faces, one at a time (faces are randomly selected) and collects written name input.
(5) FaceOccupationStudy: presents 4 trials of 4 randomly selected faces with assigned occupations for name-occupation association study. Each trial lasts 20ss.
(6) Initial Learning of Occupations (ILO): presents all 16 faces, one at a time (faces are randomly selected) and collects written occupation input
(7) Free Recall of Names (FRN): provides a textbox and collects written input of recalled names.
(8) Free Recall of Occupations (FRO): provides a textbox and collects written input of recalled occupations.
(9) Cued Recall of both Names and Occupations (CR): presents all 16 faces, one at a time (faces are randomly selected) and collects written name and occupation input
(10) Break (default: 30minutes)
(11) 30 min Delayed Free Recall of Names (FRN30): provides a textbox and collects written input of recalled names after a delay of 30min (default)
(12) 30 min Delayed Free Recall of Occupations (FRO30): provides a textbox and collects written input of recalled occupations after a delay of 30min (default)
(13) 30 min Delayed Cued Recall of both Names and Occupations (CR30): presents all 16 faces, one at a time (faces are randomly selected) and collects written name and occupation input after a delay of 30min


Recall Tasks:
Algorithm to estimate number of recalled words:
In general this algorithm uses the number of a specific word separator (here: comma) to estimate the number of words in between the separators.
The algorithm uses several steps to clean up the text input to ensure as much as possible that only single commas 
are used as word separators. It also adds a comma before the first entry and after the last entry.

Steps:
(1) textbox response is stored in values.Recall as lower case letters (Example: values.Recall = "anna; britta; claire") (note: there is a space AND a ; after britta and anna)
(2) values.Recall replaces 7 types of possible word separator symbols (e.g. ";", " ") with a comma (Example: values.Recall = "anna,,britta,,claire")
(3) values.Recall adds a comma to the first item (Example: values.Recall = ",anna,,britta,,claire")
(3) values.Recall replaces all consecutive commas with a single comma (Example: values.Recall = ",anna,britta,claire")
(4) if values.Recall does not end in a comma at this point, this comma is added (Example: values.Recall = ",anna,britta,claire,")
(5) the length of the variable values.Recall is stored in variable values.RecallLength (Example: values.RecallLength = 20)
(6) a second variable (values.reducedRecall) deletes all commas in values.Recall (Example: values.reducedRecall = "annabrittaclaire" => length: 16)
(7) the word count estimate = length of values.Recall* - length of values.reducedRecall - 1 (extra comma) (Example: estimate = 20 - 16 - 1 = 3)
		*with length = number of characters 
		
Note: the recall scoring algorithms implemented in this script depend on participants 
(a) using the implemented separators
(b) make no spelling mistakes
(c) don't use phonetically similar words (e.g. Clare instead of Claire)
Manual checks of the raw data might be necessary to adjust the scores (e.g. check what is stored under values.intrusionOther)


___________________________________________________________________________________________________________________	
STIMULI
___________________________________________________________________________________________________________________
16 female faces (ethnicly diverse) taken from the internet (the original study does not specify gender) - can be replaced under section Editable Stimuli
16 names  - can be replaced under section Editable Stimuli
16 occupations - can be replaced under section Editable Stimuli

___________________________________________________________________________________________________________________	
INSTRUCTIONS 
___________________________________________________________________________________________________________________
not original
provided by Millisecond Software - can be replaced 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:

/randomPairings:				true (1): random pairings of images with names and occupations
							false (0): pairings are predetermined by itemnumbers (default)

/faceStudy:					the duration (in ms) assigned for each face-study trial (each trial presents 4 face images associations) (default: 8000ms)
/nameFaceLearning:			the duration (in ms) assigned for each name-face learning trial (each trial presents 4 name-face associations)(default:  )
/occupationFaceLearning:		the duration (in ms) assigned for each occupation-face learning trial (each trial presents 4 name-face associations)
/recallDelay:					the delay duration (in ms) of the delayed recall conditions (default: 30min => 1800000 ms)

/nameSize:					size of name/occupation label during study time in proportion to canvas height (default: 5%)
/faceSize1:					size of face photos during the study phase (default: 30%)
/faceSize2:					size of face photo during the cued recall testing phases (default: 50%)