|
Group: Forum Members
Posts: 7,
Visits: 41
|
Hi! Thank you so much again for your previous help! Right now, I'm struggling with another step in my experiment and hope to get your input:
In a first step, I want to randomly select different items using lists and present them one after the other (works nicely now, thank you!). As a second step, I want to present all of those selected items at the same time. And well, that's where I'm struggeling, as right now other items are presented...
This is the script I have running so far: Text is presented in sequence, with different lists 3 a-items and 3 b-items are selected randomly out of 10 a/b-items, and they are presented twice each within the block.b_learn.
<item alltexts> / 1 = "text1" / 2 = "text2" / 3 = "text3" / 4 = "text4" / 5 = "text5" / 6 = "text6" / 7 = "text7" / 8 = "text8" / 9 = "text9" / 10 = "text10" / 11 = "text11" / 12 = "text12" </item> <text text> / items = alltexts / position = (50, 10) / select = sequence </text>
<item allpics> / 1 = "a01.jpg" / 2 = "a02.jpg" / 3 = "a03.jpg" / 4 = "a04.jpg" / 5 = "a05.jpg" / 6 = "a06.jpg" / 7 = "a07.jpg" / 8 = "a08.jpg" / 9 = "a09.jpg" / 10 = "a10.jpg" / 11 = "b01.jpg" / 12 = "b02.jpg" / 13 = "b03.jpg" / 14 = "b04.jpg" / 15 = "b05.jpg" / 16 = "b06.jpg" / 17 = "b07.jpg" / 18 = "b08.jpg" / 19 = "b09.jpg" / 20 = "b10.jpg" </item> <text pics> / items = allpics / position = (50, 50) / select = list.selectedItemnumbers.nextvalue </text>
<list selectedItemnumbers> </list> <list aItemnumbers> / items = (1-10) / selectionRate = always </list> <list bItemnumbers> / items = (11-20) / selectionRate = always </list>
<trial t_learn> / stimulusframes = [1 = text, pics] / timeout = 100 </trial>
<block b_learn> / onBlockBegin = [ var i = 0; while (i < 3) {list.selectedItemnumbers.appendItem(list.aItemnumbers.nextValue); i += 1; }; i = 0; while (i < 3) {list.selectedItemnumbers.appendItem(list.bItemnumbers.nextValue); i += 1;};] / trials = [1-12 = t_learn] / branch = [block.b_recog] </block> (There are different kinds of learning blocks, so I would branch to the relevant recognition block.)
Now I want to show all previously selected and presented items at the same time. And I want to present all of them in the same order over multiple trials. So I figured, that I have to generate multiple text-elements to present them all (and not just the same one multiple times). From other forum posts and the test database, I learned, that as the previous lists list.aItemnumbers and list.bItemnumbers select at random, I have to create a new list, list.sequenceItemnumbers. At the beginning of the recognition block b_recog, the new list draws from those two a/bItemnumbers to receive the different a/b-Items. (I tried drawing from the overall selectedItemnumbers, as I thought that all used items would also be stored there and that would facilitate the selection, but then the same item was presented multiple times.)
<text pic01> / items = allpics / select = list.sequenceItemnumbers.1 </text> <text pic02> / items = allpics / select = list.sequenceItemnumbers.2 </text> <text pic03> / items = allpics / select = list.sequenceItemnumbers.3 </text> <text pic04> / items = allpics / select = list.sequenceItemnumbers.4 </text> <text pic05> / items = allpics / select = list.sequenceItemnumbers.5 </text> <text pic06> / items = allpics / select = list.sequenceItemnumbers.6 </text>
<list sequenceItemnumbers> / selectionmode = sequence </list>
Additionally, I define the position of each pic at the beginning of the block through horizontal/vertical positions, as each image should be presented at the same spot throughout trials. (I don't do that in the new text-elements, as I draw from the list.a/bItemnumbers not the overall list.selectedItemnumbers. And then the a/b items would always be with the same order and position.) And this nicely puts the items throughout the trials at the same spot.
<counter hpositions> / items = (25, 35, 45, 55, 65, 75) / select = noreplacenorepeat / selectionrate = always </counter> <counter vpositions> / items = (38, 38, 38, 38, 38, 38) / select = current(hpositions) / selectionrate = always </counter>
<trial t_recog> / inputdevice = mouse / stimulusframes = [1 = text, pic01, pic02, pic03, pic04, pic05, pic06] / validresponse = ("pic01", "pic02", "pic03", "pic04", "pic05", "pic06") </trial>
<block b_recog> / onblockbegin = [ list.sequenceItemnumbers.appenditem(list.aItemnumbers.nextvalue); list.sequenceItemnumbers.appenditem(list.aItemnumbers.nextvalue); list.sequenceItemnumbers.appenditem(list.aItemnumbers.nextvalue); list.sequenceItemnumbers.appenditem(list.bItemnumbers.nextvalue); list.sequenceItemnumbers.appenditem(list.bItemnumbers.nextvalue); list.sequenceItemnumbers.appenditem(list.bItemnumbers.nextvalue); text.pic01.hposition = counter.hpositions.selectedvalue; text.pic01.vposition = counter.vpositions.selectedvalue; text.pic02.hposition = counter.hpositions.selectedvalue; text.pic02.vposition = counter.vpositions.selectedvalue; text.pic03.hposition = counter.hpositions.selectedvalue; text.pic03.vposition = counter.vpositions.selectedvalue; text.pic04.hposition = counter.hpositions.selectedvalue; text.pic04.vposition = counter.vpositions.selectedvalue; text.pic05.hposition = counter.hpositions.selectedvalue; text.pic05.vposition = counter.vpositions.selectedvalue; text.pic06.hposition = counter.hpositions.selectedvalue; text.pic06.vposition = counter.vpositions.selectedvalue; ] / trials = [1-12 = t_recog] </block>
<expt exp> / blocks = [1 = b_learn] </expt>
But now what does not work: During b_learn and b_recog different items are presented. So the list.sequenceItemnumbers does not use the same items as the list.a/bItemnumbers. I thought that a list might be resetted after a block, but writing everything in the same block didn't solve it. And then I tried around with different list settings and onblockbegin comands, but didn't get closer.
Right now I'm a bit lost of where else to check or to read up on. I guess, someone must have asked and posted something similar, as it seems like a typical problem in recognition tasks, but I've only found posts regarding (randomized) fixed sequences of items, but when all items are used and have not been selected randomly before.
I would really appreciate your input!
|