Millisecond Forums

Shopping website experiment

https://forums.millisecond.com/Topic13068.aspx

By Chiquita - 4/21/2014

Hi,


I am trying to make an experiment that simulates an online shopping site and was wondering what is the best way to approach this task.
First, I have a "store" that has categories of items, "category A", category "B", etc. For example, people may click "category A", and they are presented with items in "category A." Then, they click item 1, and then they are presented with a buying trial A or B. So far, I have the store as a trial, which branches to another trial for the items in the category. I am having trouble with the last part because I can't figure out how to branch into one of the buying trials (which should be a random selection of either A or B). Also, once they buy the product, I need to have a counting mechanism that subtracts the amount they bought from a set amount (much like a shopping cart). They should be able to go back to the store and repeat this process in which the counting mechanism should make calculations across the trials. Would these things be possible to do in Inquisit?
By Dave - 4/21/2014

Use conditional branching via /branch attributes as you've already outlined. Not sure what you exactly mean by

"So far, I have the store as a trial, which branches to another trial for the items in the category. I am having trouble with the last part because I can't figure out how to branch into one of the buying trials (which should be a random selection of either A or B)."

because it works the same as branching from the "store"-trial to a "category"-trial. Please be more specific.

"I need to have a counting mechanism that subtracts the amount they bought from a set amount (much like a shopping cart). They should be able to go back to the store and repeat this process in which the counting mechanism should make calculations across the trials. Would these things be possible to do in Inquisit?"

Yes. Use conditional logic via /ontrialend attributes along with <expressions> and <values> to do your calculations. You'll want to review the documentation topics for operators, conditional statements, the <values> and <expressions> elements.

By Chiquita - 4/22/2014

So for that part, let's say there are 2 items: a book and a pencil. If they click the book, I want to branch into one of two trials (A or B). In the trials, they are presented with a screen to buy the book from company A (trial A) or company B (trial B). The part I am having trouble with is not the branching, but randomly selecting trial A or B within the branching code. I just want either trial to be selected 50% of the time.


By Dave - 4/22/2014

You can do stuff like

<list randomcompanylist>
/ items = (1,2)
/ selectionmode = random
/ replace = true
</list>

<trial booktrial>
[...]
/ branch = [if (trial.booktrial.response == "buy" && list.randomcompanylist.nextvalue == 1) trial.buyfromcompany1]
/ branch [if (trial.booktrial.response == "buy" && list.randomcompanylist.nextvalue == 2) trial.buyfromcompany2]
</trial>

to branch to either <trial buyfromcompany1> or <trial buyfromcompany2> with 50% probability (a coin flip, essentially).