Millisecond Forums

expt execution order

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

By Kuba - 12/7/2020

Dear all , Dear Dave,

i run a web experiment (scripting is in inquisit 5.)
subject id : random without replacment
group id: sequential
number of groups: 10

before i run the ten counterbalanced expts where subjects are assigned to their specific group based on their group id, i wanted to run 3 equipment test experiments that always preceed the 4th (ten counterbalacned expts):
Till this day (and from my experience this was the observed behavior in my other scripts - lab & on-line) the expt execution order was determined by the order of expt listing in the script. (like in the example below).
the problem: the first expt is always executed first, but the 2nd and the 3rd somtimes are executed after my 4th expt (10 conterbalanced expts).
But it never seems to go like 1st, 2nd , ten counterbalnced , 3rd or any other random order....why is that? any help appreciated.

Cheers Kuba
i've also attached the script (a bit messy inside...sorry for that)


<expt>  ///// first fixed as i hoped////
/ blocks = [1=testsluchawek]
</expt>

******** checks if headphones are properly put on
******** check based on responses
<expt> ///// second fixed as i hoped////
/blocks = [1=testsluchaweklewaprawa]
</expt>


******** general intro to the experiment
<expt> ///// third fixed as i hoped////
/blocks = [1=generalintro]
</expt>

*******************Main experiment**********************

***Note: Block order counterbalanced with mirrored Latin square (2x5 conditions)
> > > > >
1 2 5 3 4 NF RF RLSF RLF LF
2 3 1 4 5 RF RLF NF LF RLSF
3 4 2 5 1 RLF LF RF RLSF NF
4 5 3 1 2 LF RLSF RLF NF RF
5 1 4 2 3 RLSF NF LF RF RLF

< < < < <
4 3 5 2 1 LF RLF RLSF RF NF
5 4 1 3 2 RLSF LF NF RLF RF
1 5 2 4 3 NF RLSF RF LF RLF
2 1 3 5 4 RF NF RLF RLSF LF
3 2 4 1 5 RLF RF LF NF RLSF


<expt>
/onexptbegin = [values.group = 1]
/subjects = (1 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2 = dualresponseassignment; 3 = INSTR_TrainNF; 4 = TrainNF; 5 = INSTR_NF; 6 = NF;
7 = INSTR_TrainRF; 8 = TrainRF; 9 = INSTR_RF; 10 = RF; 11 = INSTR_TrainRLSF; 12 = TrainRLSF; 13 = INSTR_RLSF;
14 = RLSF; 15 = INSTR_TrainRLF; 16 = TrainRLF; 17 = INSTR_RLF; 18 = RLF; 19 = INSTR_TrainLF; 20 = TrainLF; 21 = INSTR_LF;
22 = LF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>

<expt>
/onexptbegin = [values.group = 2]
/subjects = (2 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRF; 4 = TrainRF; 5 = INSTR_RF; 6 = RF;
7 = INSTR_TrainRLF; 8 = TrainRLF; 9 = INSTR_RLF; 10 = RLF; 11 = INSTR_TrainNF; 12 = TrainNF; 13 = INSTR_NF;
14 = NF; 15 = INSTR_TrainLF; 16 = TrainLF; 17 = INSTR_LF; 18 = LF; 19 = INSTR_TrainRLSF; 20 = TrainRLSF; 21 = INSTR_RLSF;
22 = RLSF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 3]
/subjects = (3 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRLF; 4 = TrainRLF; 5 = INSTR_RLF; 6 = RLF;
7 = INSTR_TrainLF; 8 = TrainLF; 9 = INSTR_LF; 10 = LF; 11 = INSTR_TrainRF; 12 = TrainRF; 13 = INSTR_RF; 14 = RF;
15 = INSTR_TrainRLSF; 16 = TrainRLSF; 17 = INSTR_RLSF; 18 = RLSF; 19 = INSTR_TrainNF; 20 = TrainNF; 21 = INSTR_NF;
22 = NF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 4]
/subjects = (4 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainLF; 4 = TrainLF; 5 = INSTR_LF; 6 = LF;
7 = INSTR_TrainRLSF; 8 = TrainRLSF; 9 = INSTR_RLSF; 10 = RLSF; 11 = INSTR_TrainRLF; 12 = TrainRLF; 13 = INSTR_RLF;
14 = RLF; 15 = INSTR_TrainNF; 16 = TrainNF; 17 = INSTR_NF; 18 = NF; 19 = INSTR_TrainRF; 20 = TrainRF; 21 = INSTR_RF;
22 = RF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 5]
/subjects = (5 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRLSF; 4 = TrainRLSF; 5 = INSTR_RLSF; 6 = RLSF;
7 = INSTR_TrainNF; 8 = TrainNF; 9 = INSTR_NF; 10 = NF; 11 = INSTR_TrainLF; 12 = TrainLF; 13 = INSTR_LF; 14 = LF;
15 = INSTR_TrainRF; 16 = TrainRF; 17 = INSTR_RF; 18 = RF; 19 = INSTR_TrainRLF; 20 = TrainRLF; 21 = INSTR_RLF; 22 = RLF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>

<expt>
/onexptbegin = [values.group = 6]
/subjects = (6 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRLSF; 4 = TrainRLSF; 5 = INSTR_RLSF; 6 = RLSF;
7 = INSTR_TrainLF; 8 = TrainLF; 9 = INSTR_LF; 10 = LF; 11 = INSTR_TrainNF; 12 = TrainNF; 13 = INSTR_NF; 14 = NF;
15 = INSTR_TrainRLF; 16 = TrainRLF; 17 = INSTR_RLF; 18 = RLF; 19 = INSTR_TrainRF; 20 = TrainRF; 21 = INSTR_RF; 22 = RF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>

<expt>
/onexptbegin = [values.group = 7]
/subjects = (7 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainLF; 4 = TrainLF; 5 = INSTR_LF; 6 = LF;
7 = INSTR_TrainRLF; 8 = TrainRLF; 9 = INSTR_RLF; 10 = RLF; 11 = INSTR_TrainRLSF; 12 = TrainRLSF; 13 = INSTR_RLSF;
14 = RLSF; 15 = INSTR_TrainRF; 16 = TrainRF; 17 = INSTR_RF; 18 = RF; 19 = INSTR_TrainNF; 20 = TrainNF; 21 = INSTR_NF; 22 = NF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 8]
/subjects = (8 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainNF; 4 = TrainNF; 5 = INSTR_NF; 6 = NF;
7 = INSTR_TrainRLSF; 8 = TrainRLSF; 9 = INSTR_RLSF; 10 = RLSF; 11 = INSTR_TrainRF; 12 = TrainRF; 13 = INSTR_RF; 14 = RF;
15 = INSTR_TrainLF; 16 = TrainLF; 17 = INSTR_LF; 18 = LF; 19 = INSTR_TrainRLF; 20 = TrainRLF; 21 = INSTR_RLF; 22 = RLF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>

<expt>
/onexptbegin = [values.group = 9]
/subjects = (9 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRF; 4 = TrainRF; 5 = INSTR_RF; 6 = RF;
7 = INSTR_TrainNF; 8 = TrainNF; 9 = INSTR_NF; 10 = NF; 11 = INSTR_TrainRLF; 12 = TrainRLF; 13 = INSTR_RLF; 14 = RLF;
15 = INSTR_TrainRLSF; 16 = TrainRLSF; 17 = INSTR_RLSF; 18 = RLSF; 19 = INSTR_TrainLF; 20 = TrainLF; 21 = INSTR_LF; 22 = LF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 10]
/subjects = (10 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRLF; 4 = TrainRLF; 5 = INSTR_RLF; 6 = RLF;
7 = INSTR_TrainRF; 8 = TrainRF; 9 = INSTR_RF; 10 = RF; 11 = INSTR_TrainLF; 12 = TrainLF; 13 = INSTR_LF; 14 = LF;
15 = INSTR_TrainNF; 16 = TrainNF; 17 = INSTR_NF; 18 = NF; 19 = INSTR_TrainRLSF; 20 = TrainRLSF; 21 = INSTR_RLSF; 22 = RLSF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


By Dave - 12/7/2020

Kuba - 12/7/2020
Dear all , Dear Dave,

i run a web experiment (scripting is in inquisit 5.)
subject id : random without replacment
group id: sequential
number of groups: 10

before i run the ten counterbalanced expts where subjects are assigned to their specific group based on their group id, i wanted to run 3 equipment test experiments that always preceed the 4th (ten counterbalacned expts):
Till this day (and from my experience this was the observed behavior in my other scripts - lab & on-line) the expt execution order was determined by the order of expt listing in the script. (like in the example below).
the problem: the first expt is always executed first, but the 2nd and the 3rd somtimes are executed after my 4th expt (10 conterbalanced expts).
But it never seems to go like 1st, 2nd , ten counterbalnced , 3rd or any other random order....why is that? any help appreciated.

Cheers Kuba
i've also attached the script (a bit messy inside...sorry for that)


<expt>  ///// first fixed as i hoped////
/ blocks = [1=testsluchawek]
</expt>

******** checks if headphones are properly put on
******** check based on responses
<expt> ///// second fixed as i hoped////
/blocks = [1=testsluchaweklewaprawa]
</expt>


******** general intro to the experiment
<expt> ///// third fixed as i hoped////
/blocks = [1=generalintro]
</expt>

*******************Main experiment**********************

***Note: Block order counterbalanced with mirrored Latin square (2x5 conditions)
> > > > >
1 2 5 3 4 NF RF RLSF RLF LF
2 3 1 4 5 RF RLF NF LF RLSF
3 4 2 5 1 RLF LF RF RLSF NF
4 5 3 1 2 LF RLSF RLF NF RF
5 1 4 2 3 RLSF NF LF RF RLF

< < < < <
4 3 5 2 1 LF RLF RLSF RF NF
5 4 1 3 2 RLSF LF NF RLF RF
1 5 2 4 3 NF RLSF RF LF RLF
2 1 3 5 4 RF NF RLF RLSF LF
3 2 4 1 5 RLF RF LF NF RLSF


<expt>
/onexptbegin = [values.group = 1]
/subjects = (1 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2 = dualresponseassignment; 3 = INSTR_TrainNF; 4 = TrainNF; 5 = INSTR_NF; 6 = NF;
7 = INSTR_TrainRF; 8 = TrainRF; 9 = INSTR_RF; 10 = RF; 11 = INSTR_TrainRLSF; 12 = TrainRLSF; 13 = INSTR_RLSF;
14 = RLSF; 15 = INSTR_TrainRLF; 16 = TrainRLF; 17 = INSTR_RLF; 18 = RLF; 19 = INSTR_TrainLF; 20 = TrainLF; 21 = INSTR_LF;
22 = LF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>

<expt>
/onexptbegin = [values.group = 2]
/subjects = (2 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRF; 4 = TrainRF; 5 = INSTR_RF; 6 = RF;
7 = INSTR_TrainRLF; 8 = TrainRLF; 9 = INSTR_RLF; 10 = RLF; 11 = INSTR_TrainNF; 12 = TrainNF; 13 = INSTR_NF;
14 = NF; 15 = INSTR_TrainLF; 16 = TrainLF; 17 = INSTR_LF; 18 = LF; 19 = INSTR_TrainRLSF; 20 = TrainRLSF; 21 = INSTR_RLSF;
22 = RLSF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 3]
/subjects = (3 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRLF; 4 = TrainRLF; 5 = INSTR_RLF; 6 = RLF;
7 = INSTR_TrainLF; 8 = TrainLF; 9 = INSTR_LF; 10 = LF; 11 = INSTR_TrainRF; 12 = TrainRF; 13 = INSTR_RF; 14 = RF;
15 = INSTR_TrainRLSF; 16 = TrainRLSF; 17 = INSTR_RLSF; 18 = RLSF; 19 = INSTR_TrainNF; 20 = TrainNF; 21 = INSTR_NF;
22 = NF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 4]
/subjects = (4 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainLF; 4 = TrainLF; 5 = INSTR_LF; 6 = LF;
7 = INSTR_TrainRLSF; 8 = TrainRLSF; 9 = INSTR_RLSF; 10 = RLSF; 11 = INSTR_TrainRLF; 12 = TrainRLF; 13 = INSTR_RLF;
14 = RLF; 15 = INSTR_TrainNF; 16 = TrainNF; 17 = INSTR_NF; 18 = NF; 19 = INSTR_TrainRF; 20 = TrainRF; 21 = INSTR_RF;
22 = RF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 5]
/subjects = (5 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRLSF; 4 = TrainRLSF; 5 = INSTR_RLSF; 6 = RLSF;
7 = INSTR_TrainNF; 8 = TrainNF; 9 = INSTR_NF; 10 = NF; 11 = INSTR_TrainLF; 12 = TrainLF; 13 = INSTR_LF; 14 = LF;
15 = INSTR_TrainRF; 16 = TrainRF; 17 = INSTR_RF; 18 = RF; 19 = INSTR_TrainRLF; 20 = TrainRLF; 21 = INSTR_RLF; 22 = RLF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>

<expt>
/onexptbegin = [values.group = 6]
/subjects = (6 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRLSF; 4 = TrainRLSF; 5 = INSTR_RLSF; 6 = RLSF;
7 = INSTR_TrainLF; 8 = TrainLF; 9 = INSTR_LF; 10 = LF; 11 = INSTR_TrainNF; 12 = TrainNF; 13 = INSTR_NF; 14 = NF;
15 = INSTR_TrainRLF; 16 = TrainRLF; 17 = INSTR_RLF; 18 = RLF; 19 = INSTR_TrainRF; 20 = TrainRF; 21 = INSTR_RF; 22 = RF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>

<expt>
/onexptbegin = [values.group = 7]
/subjects = (7 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainLF; 4 = TrainLF; 5 = INSTR_LF; 6 = LF;
7 = INSTR_TrainRLF; 8 = TrainRLF; 9 = INSTR_RLF; 10 = RLF; 11 = INSTR_TrainRLSF; 12 = TrainRLSF; 13 = INSTR_RLSF;
14 = RLSF; 15 = INSTR_TrainRF; 16 = TrainRF; 17 = INSTR_RF; 18 = RF; 19 = INSTR_TrainNF; 20 = TrainNF; 21 = INSTR_NF; 22 = NF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 8]
/subjects = (8 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainNF; 4 = TrainNF; 5 = INSTR_NF; 6 = NF;
7 = INSTR_TrainRLSF; 8 = TrainRLSF; 9 = INSTR_RLSF; 10 = RLSF; 11 = INSTR_TrainRF; 12 = TrainRF; 13 = INSTR_RF; 14 = RF;
15 = INSTR_TrainLF; 16 = TrainLF; 17 = INSTR_LF; 18 = LF; 19 = INSTR_TrainRLF; 20 = TrainRLF; 21 = INSTR_RLF; 22 = RLF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>

<expt>
/onexptbegin = [values.group = 9]
/subjects = (9 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRF; 4 = TrainRF; 5 = INSTR_RF; 6 = RF;
7 = INSTR_TrainNF; 8 = TrainNF; 9 = INSTR_NF; 10 = NF; 11 = INSTR_TrainRLF; 12 = TrainRLF; 13 = INSTR_RLF; 14 = RLF;
15 = INSTR_TrainRLSF; 16 = TrainRLSF; 17 = INSTR_RLSF; 18 = RLSF; 19 = INSTR_TrainLF; 20 = TrainLF; 21 = INSTR_LF; 22 = LF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>


<expt>
/onexptbegin = [values.group = 10]
/subjects = (10 of 10)
/groupassignment = groupnumber
/blocks = [1 = assignment; 2= dualresponseassignment; 3 = INSTR_TrainRLF; 4 = TrainRLF; 5 = INSTR_RLF; 6 = RLF;
7 = INSTR_TrainRF; 8 = TrainRF; 9 = INSTR_RF; 10 = RF; 11 = INSTR_TrainLF; 12 = TrainLF; 13 = INSTR_LF; 14 = LF;
15 = INSTR_TrainNF; 16 = TrainNF; 17 = INSTR_NF; 18 = NF; 19 = INSTR_TrainRLSF; 20 = TrainRLSF; 21 = INSTR_RLSF; 22 = RLSF]
/postinstructions = (thankyou)
/onexptend = [values.completed = 1]
</expt>



Just give the <expt> elements proper alphabetical names (a, b, c, d, ...) to ensure proper execution order.