Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
possible to branch based on combination of two Responses?
#1
I'm trying to set up a study in which participants must 'pass' the training trials with a criterion accuracy score to continue. I'd like to branch to repeat training iff the initial training block score is too low. I get that I can use the "iterations": feature, which is cool. But the problem is that I need to compute the score based not on one response but based on two responses. This is necessary because, half the time, the answer "same" is correct and half the time "different" is correct, and the total score is a combination of the two.
Am I missing a simple solution here, such as coding same and different as a single response somehow?  Huh Or combining two different triggers? Thanks for any suggestions!
Reply
#2
Hello! Calculating the score based on two responses is possible by using multiple triggers. You should have two responses in your experiment: one where the target is "same" and another where the target is "different". Create two different trial templates for your trials that correspond to each different response. Then, your branching block should look like this:

"accuracyBlock": {
// block definition
"branching": {
"method": "accuracy",
"min_score": 0.8,
"triggers": [
{"trial_template": "SameTemplate", "response": "SameResponse"},
{"trial_template": "DifferentTemplate", "response":"DifferentResponse"}
],
"branches": {"pass": true, "fail": false}

Here, the min_score is calculated out of the combination of responses where "same" is the target and the responses where "different" is the target.
Reply
#3
Thanks, Lucy! I will give that a shot.

Okay, I've got it working as in your example, but there's one problem: to match an implementation of this study on a previous platform, I want to present the 12 training trials in a fixed order (from less-difficult to more-difficult examples)--neither truly random (same, diff, diff, same, same...) nor truly alternating (same, diff, same, diff, same...). Previously, I had solved this by using a list of the 12 stimuli and a list of the 12 corresponding responses ["SameTrial","SameTrial","DifferentTrial"...], but that doesn't work with branching.

The only way I can figure out to do that is to do 12 separate trial templates--one per trial--and then use 12 triggers, but that seems somewhat less than elegant...? Undecided Any other possible solution I'm overlooking?
Reply
#4
Hi Sarah!

In the listing-them-all approach, are you using a single trial template, and just hard coding the order of presentation of stimuli and responses? In that case, it should work with branching? The triggers are matched based on names, so assuming the responses are named "SameTrial" and "DifferentTrial", does the following not work?

Code:
"triggers": [{"trial_template": "theOneTemplate", "response": "SameTrial"}, {"trial_template": "theOneTemplate", "response": "DifferentTrial"}],
Reply
#5
Hi Ting! Yeah, that does not seem to work. It keeps freezing at the end of the branching block, right after I make a response (which it acknowledges as received). Doesn't matter if I 'pass' or 'fail' training. It *does* work when I separate it into two distinct templates, but again, I can't use the intended presentation order. Is it possible that reusing the same Response causes it to generate a different data type than just specifying that Response once?

"triggers": [{"trial_template": "TrainingTrials","response": "TrainSameResp"},
{"trial_template": "TrainingTrials","response": "TrainDiffResp"}],
Reply
#6
Hi Sarah,

This appears to be a bug. We are looking into it and will post back when it is fixed! Thank you for your patience.
Reply
#7
We have fixed this! Using two triggers with a single trial template should work now. Give it a try again and let us know? Thanks so much for exposing this bug!
Reply
#8
Success! It works now, without me changing anything. Hurrah! Thanks, y'all.
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)