By mundia - 2/28/2017
Hi,
I'm trying to program an anagram task where participants are asked to find as many possibles solutions to an anagram as they can. For example, for a single trial they are shown "EAHTR" as the stimulus and would try to work out the max number of solutions (in this case a total of 2 solutions - EARTH and HEART). I can't get the openended element to stay on the same page after one of the two correct answers are inputted. Ideally, I want the the participant to stay on the same page until they feel they have exhausted all of their solutions and then have control of moving onto the next stimulus. Has anyone had experience with this type of problem and/or have any suggestions on how to solve it? Many thanks!
Here's an excerpt of what I've been working with so far.
<text a1> /items = ("EAHTR") /position = (30, 20) /txcolor = black </text> <text a2> /items = ("KINTH") /position = (30, 20) /txcolor = black </text> <item answer_a1> / 1 = "earth" / 2 = "heart" </item> <item answer_a2> / 1 = "think" </item>
<openended a1> / stimulusframes = [1 = a1] / correctresponse = ("earth", "heart") / buttonlabel = "Submit" / position = (30, 50) / timeout = 1800000 / response = correct </openended>
<openended a2> / stimulusframes = [1 = a2] / correctresponse = ("think") / buttonlabel = "Submit" / position = (30, 50) / timeout = 1800000 / response = correct </openended>
|
By Dave - 2/28/2017
+xHi, I'm trying to program an anagram task where participants are asked to find as many possibles solutions to an anagram as they can. For example, for a single trial they are shown "EAHTR" as the stimulus and would try to work out the max number of solutions (in this case a total of 2 solutions - EARTH and HEART). I can't get the openended element to stay on the same page after one of the two correct answers are inputted. Ideally, I want the the participant to stay on the same page until they feel they have exhausted all of their solutions and then have control of moving onto the next stimulus. Has anyone had experience with this type of problem and/or have any suggestions on how to solve it? Many thanks! Here's an excerpt of what I've been working with so far. <text a1> /items = ("EAHTR") /position = (30, 20) /txcolor = black </text> <text a2> /items = ("KINTH") /position = (30, 20) /txcolor = black </text> <item answer_a1> / 1 = "earth" / 2 = "heart" </item> <item answer_a2> / 1 = "think" </item> <openended a1> / stimulusframes = [1 = a1] / correctresponse = ("earth", "heart") / buttonlabel = "Submit" / position = (30, 50) / timeout = 1800000 / response = correct </openended> <openended a2> / stimulusframes = [1 = a2] / correctresponse = ("think") / buttonlabel = "Submit" / position = (30, 50) / timeout = 1800000 / response = correct </openended> Many ways to frame this, probably easiest to do something like this:
<text a1> /items = ("EAHTR") /position = (30, 20) /txcolor = black / erase = false </text>
<text a2> /items = ("KINTH") /position = (30, 20) /txcolor = black / erase = false </text>
<text instr> / items = ("Type 'next' to move on to the next anagram.") / position = (50%, 10%) </text>
<openended a1> / stimulusframes = [1 = a1] / validresponse = ("next", anyresponse) / correctresponse = ("earth", "heart") / buttonlabel = "Submit" / position = (30, 50) / branch = [ if (openended.a1.response != "next") openended.a1 ] </openended>
<openended a2> / stimulusframes = [1 = a2] / validresponse = ("next", anyresponse) / correctresponse = ("think") / buttonlabel = "Submit" / position = (30, 50) / branch = [ if (openended.a2.response != "next") openended.a2 ] </openended>
<block a1block> / bgstim = (instr) / trials = [1=a1] / timeout = 180000 </block>
<block a2block> / bgstim = (instr) / trials = [1=a2] / timeout = 180000 </block>
<expt> / blocks = [1-2 = noreplace(a1block,a2block)] </expt>
|
By mundia - 2/28/2017
Hi Dave,
Thanks so much for the help! I'm really digging the "type next to continue" idea. I'm hoping you don't mind me asking a couple additional questions...so here I go. For the anagram task, participants will be put in either a low ambiguity or high ambiguity condition. Participants who are assigned to the low ambiguity condition will be shown the total number of solutions for a given anagram (so when shown "EAHTR", they'll also be shown "2 Solutions" at the top of their screen and when shown "KINTH", they'll also be shown "1 Solutions") whereas participants in the high ambiguity condition will not be shown the total number of solutions. However, for both of the openended trials in the low ambiguity condition, it keeps showing "2 Solutions" for the EATHR and KINTH stimuli. Any thoughts on how to treat this?
Also, this next bit is a little unrelated to the original issue concerning openended trials. But for the anagram task, I'm also trying to include a box on the right hand side of the screen that functions as a chest of found solutions. So for example, if a participant is shown "EATHR" and they submit "HEART" as a solution, they would see "HEART" pop up on the right hand side box. This way they can keep track of the solutions they've found for each trial. For this, I honestly have no idea how to go about this or even what type of element to use, so any help/advice would be amazing.
Here is the entirety of what I'm currently working with (with your previous suggestions included):
*******STIMULUS*********
<text a1> /items = ("EAHTR") /position = (30, 35) /txcolor = black /erase = false </text> <text a2> /items = ("KINTH") /position = (30, 35) /txcolor = black /erase = false </text>
<item answer_a1> / 1 = "earth" / 2 = "heart" </item> <item answer_a2> / 1 = "think" </item> <text solutions> /items = solutions /position = (30, 20) /txcolor = black / select = sequence </text> <text instr> /items = ("Type 'next' to move on to the next anagram") / position = (30, 5) </text> <item solutions> / 1 = "2 Solutions" / 2 = "1 Solution" </item> ********TRIALS******** <openended a1> / stimulusframes = [1 = a1] /validresponse = ("next", anyresponse) / correctresponse = ("earth", "heart") / buttonlabel = "Submit" / position = (30, 50) /branch = [ if(openended.a1.response !="next")openended.a1 ] </openended>
<openended a2> / stimulusframes = [1 = a2] /validresponse = ("next", anyresponse) / correctresponse = ("think") / buttonlabel = "Submit" / position = (30, 50) /branch = [ if(openended.a2.response !="next")openended.a2 ] </openended>
*******BLOCKS********** <block low_ambi> / bgstim = (text.solutions) / bgstim = (instr) /trials = [ 1-2 = noreplace(openended.a1, openended.a2) ] /timeout = 180000 </block>
<block high_ambi> /bgstim = (instr) /trials = [ 1-2 = noreplace(openended.a1, openended.a2) ] /timeout = 180000 </block>
*******EXPERIMENT******** <expt> / subjects = (1 of 2) / groupassignment = groupnumber / blocks = [ 1= noreplace(low_ambi)
] / preinstructions = (intro) </expt>
<expt> / subjects = (2 of 2) / groupassignment = groupnumber / blocks = [ 1=noreplace(high_ambi) ] / preinstructions = (intro) </expt>
|
By Dave - 2/28/2017
+xHi Dave, Thanks so much for the help! I'm really digging the "type next to continue" idea. I'm hoping you don't mind me asking a couple additional questions...so here I go. For the anagram task, participants will be put in either a low ambiguity or high ambiguity condition. Participants who are assigned to the low ambiguity condition will be shown the total number of solutions for a given anagram (so when shown "EAHTR", they'll also be shown "2 Solutions" at the top of their screen and when shown "KINTH", they'll also be shown "1 Solutions") whereas participants in the high ambiguity condition will not be shown the total number of solutions. However, for both of the openended trials in the low ambiguity condition, it keeps showing "2 Solutions" for the EATHR and KINTH stimuli. Any thoughts on how to treat this? Also, this next bit is a little unrelated to the original issue concerning openended trials. But for the anagram task, I'm also trying to include a box on the right hand side of the screen that functions as a chest of found solutions. So for example, if a participant is shown "EATHR" and they submit "HEART" as a solution, they would see "HEART" pop up on the right hand side box. This way they can keep track of the solutions they've found for each trial. For this, I honestly have no idea how to go about this or even what type of element to use, so any help/advice would be amazing. Here is the entirety of what I'm currently working with (with your previous suggestions included): *******STIMULUS********* <text a1> /items = ("EAHTR") /position = (30, 35) /txcolor = black /erase = false </text> <text a2> /items = ("KINTH") /position = (30, 35) /txcolor = black /erase = false </text> <item answer_a1> / 1 = "earth" / 2 = "heart" </item> <item answer_a2> / 1 = "think" </item> <text solutions> /items = solutions /position = (30, 20) /txcolor = black / select = sequence </text> <text instr> /items = ("Type 'next' to move on to the next anagram") / position = (30, 5) </text> <item solutions> / 1 = "2 Solutions" / 2 = "1 Solution" </item> ********TRIALS******** <openended a1> / stimulusframes = [1 = a1] /validresponse = ("next", anyresponse) / correctresponse = ("earth", "heart") / buttonlabel = "Submit" / position = (30, 50) /branch = [ if(openended.a1.response !="next")openended.a1 ] </openended> <openended a2> / stimulusframes = [1 = a2] /validresponse = ("next", anyresponse) / correctresponse = ("think") / buttonlabel = "Submit" / position = (30, 50) /branch = [ if(openended.a2.response !="next")openended.a2 ] </openended> *******BLOCKS********** <block low_ambi> / bgstim = (text.solutions) / bgstim = (instr) /trials = [ 1-2 = noreplace(openended.a1, openended.a2) ] /timeout = 180000 </block> <block high_ambi> /bgstim = (instr) /trials = [ 1-2 = noreplace(openended.a1, openended.a2) ] /timeout = 180000 </block> *******EXPERIMENT******** <expt> / subjects = (1 of 2) / groupassignment = groupnumber / blocks = [ 1= noreplace(low_ambi) ] / preinstructions = (intro) </expt> <expt> / subjects = (2 of 2) / groupassignment = groupnumber / blocks = [ 1=noreplace(high_ambi) ] / preinstructions = (intro) </expt> Any stimulus you draw to the screen via /bgstim is drawn only once at the very start of the <block>. From then on it does not change and cannot be redrawn. The solution is to draw the stimulus via the <openended> elements' /stimulusframes instead. Something like:
*******STIMULUS*********
<text a1> /items = ("EAHTR") /position = (30, 35) /txcolor = black / size = (10%, 5%) /erase = false </text>
<text a2> /items = ("KINTH") /position = (30, 35) / size = (10%, 5%) /txcolor = black /erase = false </text>
<item answer_a1> / 1 = "earth" / 2 = "heart" </item>
<item answer_a2> / 1 = "think" </item>
<text solutions> /items = solutions /position = (30, 20) /txcolor = black / select = values.condition / erase = false </text>
<text instr> /items = ("Type 'next' to move on to the next anagram") / position = (30, 5) </text>
<item solutions> / 1 = "<%values.nsolutions%> Solutions" / 2 = "" </item>
********TRIALS******** <openended a1> / ontrialbegin = [ values.nsolutions = 2; ] / stimulusframes = [1 = a1, solutions] /validresponse = ("next", anyresponse) / correctresponse = ("earth", "heart") / buttonlabel = "Submit" / position = (30, 50) /branch = [ if(openended.a1.response !="next")openended.a1 ] </openended>
<openended a2> / ontrialbegin = [ values.nsolutions = 1; ] / stimulusframes = [1 = a2, solutions] /validresponse = ("next", anyresponse) / correctresponse = ("think") / buttonlabel = "Submit" / position = (30, 50) /branch = [ if(openended.a2.response !="next")openended.a2 ] </openended>
*******BLOCKS********** <block low_ambi> / bgstim = (instr) /trials = [ 1-2 = noreplace(openended.a1, openended.a2) ] /timeout = 180000 </block>
<block high_ambi> /bgstim = (instr) /trials = [ 1-2 = noreplace(openended.a1, openended.a2) ] /timeout = 180000 </block>
*******EXPERIMENT******** <expt> / onexptbegin = [ values.condition = 1; ] / subjects = (1 of 2) / groupassignment = groupnumber / blocks = [ 1= noreplace(low_ambi)
] / preinstructions = (intro) </expt>
<expt> / onexptbegin = [ values.condition = 2; ] / subjects = (2 of 2) / groupassignment = groupnumber / blocks = [ 1=noreplace(high_ambi) ] / preinstructions = (intro) </expt>
<page intro> ^instructions go here </page>
<values> / condition = 0 / nsolutions = 0 </values>
Hope this helps!
|
By mundia - 3/1/2017
Hallelujah! Thank you!!
|
|