two-step memory retrieval task - Problems with stimulus list consistency when conditionally...


Author
Message
tbiba
tbiba
New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)
Group: Forum Members
Posts: 7, Visits: 27
Greetings, 

I am new to Inquisit and I have searched existing posts for an answer to my question however I am having an additional problem. Most likely it is a simple fix however some additional guidance would be very helpful!

Background:  I am looking to create a two-step memory retrieval task. First at encoding, subjects view a series of images and make either a size, naturalness, or shade judgment. At retrieval subjects first make a recognition memory judgment ("old","new"). If they select old, then they make a source memory judgment ("size","naturalness,"shade") indicating what response they had made previously to this image at encoding. I was able to use existing posts to the forum to figure out the conditional branching, to enable the source memory trial to initiate only when subjects make an old response.

Problem:  However, currently if I make an old judgment (on image 1 - 8ball) then a new judgment (on image 2 - wrench) and then another old judgment (on image 3 - accordion), the image that appears for the subsequent source memory task is image 2 (wrench) rather than image 3 (accordion), even though I am on the third trial. As it is unclear to me precisely how Inquisit keeps track of the trial index in this instance I presume this means that the two trial types (the item memory trail element and the source memory trial element) and their sequence coding operate independently from one another? Is there a way to have the source memory task trial index tag along with the item memory trial index, so that image 3 (accordion) will be presented when I make the second source memory judgment in this example?

 I have included the code only for the retrieval portion of the experiment here for the sake of concision, but please let me know if any additional code and/or more elaboration would be at all helpful! Many thanks!

<item retObjects1>
/1 = "images/8ball.jpg"
/2 = "images/adjustablewrench01b.jpg"
/3 = "images/accordion01.jpg"
/4 = "images/acousticguitar02.jpg"
</item>

<picture retObjectsItem1>
/ items = retObjects1
/ select = sequence
/ size = (400, 400)
/ erase = false
</picture>

<picture retObjectsSource1>
/ items = retObjects1
/ select = sequence
/ size = (400, 400)
/ erase = false
</picture>

<block ret1block>
/ trials = [1-4 = ret1_item]
/ preinstructions = (retinstruc1)
/ errormessage = false
/ postinstructions = (retfeedbackpage1)
</block>


<trial ret1_item>
/ stimulusframes = [1=retObjectsItem1; 400=blank; 1=leftreminderret; 1=rightreminderret]
/ validresponse = ("1", "2")
/ beginresponsetime = 0
/ numframes = 400
/ responseinterrupt = immediate
/ branch = [
  if (computer.scancodetochar(trial.ret1_item.response) == "1")
  trial.ret1_source;
]
/ timeout = 8000
</trial>


<trial ret1_source>
/ stimulusframes = [1=retObjectsSource1; 400=blank; 1=Lightreminderret; 1=Natreminderret; 1=Sizereminderret]
/ validresponse = ("j","k","l")
/ beginresponsetime = 0
/ numframes = 400
/ responseinterrupt = immediate
/ timeout = 8000
</trial>


Dave
Dave
Supreme Being (856K reputation)Supreme Being (856K reputation)Supreme Being (856K reputation)Supreme Being (856K reputation)Supreme Being (856K reputation)Supreme Being (856K reputation)Supreme Being (856K reputation)Supreme Being (856K reputation)Supreme Being (856K reputation)
Group: Administrators
Posts: 10K, Visits: 59K
tbiba - 5/25/2020
Greetings, 

I am new to Inquisit and I have searched existing posts for an answer to my question however I am having an additional problem. Most likely it is a simple fix however some additional guidance would be very helpful!

Background:  I am looking to create a two-step memory retrieval task. First at encoding, subjects view a series of images and make either a size, naturalness, or shade judgment. At retrieval subjects first make a recognition memory judgment ("old","new"). If they select old, then they make a source memory judgment ("size","naturalness,"shade") indicating what response they had made previously to this image at encoding. I was able to use existing posts to the forum to figure out the conditional branching, to enable the source memory trial to initiate only when subjects make an old response.

Problem:  However, currently if I make an old judgment (on image 1 - 8ball) then a new judgment (on image 2 - wrench) and then another old judgment (on image 3 - accordion), the image that appears for the subsequent source memory task is image 2 (wrench) rather than image 3 (accordion), even though I am on the third trial. As it is unclear to me precisely how Inquisit keeps track of the trial index in this instance I presume this means that the two trial types (the item memory trail element and the source memory trial element) and their sequence coding operate independently from one another? Is there a way to have the source memory task trial index tag along with the item memory trial index, so that image 3 (accordion) will be presented when I make the second source memory judgment in this example?

 I have included the code only for the retrieval portion of the experiment here for the sake of concision, but please let me know if any additional code and/or more elaboration would be at all helpful! Many thanks!

<item retObjects1>
/1 = "images/8ball.jpg"
/2 = "images/adjustablewrench01b.jpg"
/3 = "images/accordion01.jpg"
/4 = "images/acousticguitar02.jpg"
</item>

<picture retObjectsItem1>
/ items = retObjects1
/ select = sequence
/ size = (400, 400)
/ erase = false
</picture>

<picture retObjectsSource1>
/ items = retObjects1
/ select = sequence
/ size = (400, 400)
/ erase = false
</picture>

<block ret1block>
/ trials = [1-4 = ret1_item]
/ preinstructions = (retinstruc1)
/ errormessage = false
/ postinstructions = (retfeedbackpage1)
</block>


<trial ret1_item>
/ stimulusframes = [1=retObjectsItem1; 400=blank; 1=leftreminderret; 1=rightreminderret]
/ validresponse = ("1", "2")
/ beginresponsetime = 0
/ numframes = 400
/ responseinterrupt = immediate
/ branch = [
  if (computer.scancodetochar(trial.ret1_item.response) == "1")
  trial.ret1_source;
]
/ timeout = 8000
</trial>


<trial ret1_source>
/ stimulusframes = [1=retObjectsSource1; 400=blank; 1=Lightreminderret; 1=Natreminderret; 1=Sizereminderret]
/ validresponse = ("j","k","l")
/ beginresponsetime = 0
/ numframes = 400
/ responseinterrupt = immediate
/ timeout = 8000
</trial>


<picture retObjectsItem1>
/ items = retObjects1
/ select = sequence
/ size = (400, 400)
/ erase = false
</picture>

<picture retObjectsSource1>
/ items = retObjects1
/ select = picture.retObjectsItem1.currentindex
/ size = (400, 400)
/ erase = false
</picture>

Also see https://www.millisecond.com/support/docs/v5/html/howto/howtopairs.htm
Edited 5 Months Ago by Dave
tbiba
tbiba
New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)New Member (20 reputation)
Group: Forum Members
Posts: 7, Visits: 27
Hi Dave, 

Thanks so much! Works like a charm! Also I appreciate the reference and I find this very useful to help begin to build up my inquisit knowledge.

Thomas
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search