- Code: Select all
Code
design
;alts = opt1*, opt2*, opt3*
;block = 1
? efficient design
;eff = (mnl, d)
;rows = 27
;cond:
if(opt1.contract = 1, opt1.plug_in_hours = [90,120,150]),
if(opt1.contract = 1, opt1.rewards1 = [50,110,170]),
if(opt1.contract = 1, opt1.rewards2 = 0),
if(opt1.contract = 1, opt1.rewards3 = 0),
if(opt1.contract = 2, opt1.plug_in_hours = 0),
if(opt1.contract = 2, opt1.rewards1 = 0),
if(opt1.contract = 2, opt1.rewards2 = [0.7,1.0,1.3]),
if(opt1.contract = 2, opt1.rewards3 = 0),
if(opt1.contract = 3, opt1.plug_in_hours = 0),
if(opt1.contract = 3, opt1.rewards1 = 0),
if(opt1.contract = 3, opt1.rewards2 = 0),
if(opt1.contract = 3, opt1.rewards3 = [0.1,0.15,0.2]),
if(opt2.contract = 1, opt2.plug_in_hours = [90,120,150]),
if(opt2.contract = 1, opt2.rewards1 = [50,110,170]),
if(opt2.contract = 1, opt2.rewards2 = 0),
if(opt2.contract = 1, opt2.rewards3 = 0),
if(opt2.contract = 2, opt2.plug_in_hours = 0),
if(opt2.contract = 2, opt2.rewards1 = 0),
if(opt2.contract = 2, opt2.rewards2 = [0.7,1.0,1.3]),
if(opt2.contract = 2, opt2.rewards3 = 0),
if(opt2.contract = 3, opt2.plug_in_hours = 0),
if(opt2.contract = 3, opt2.rewards1 = 0),
if(opt2.contract = 3, opt2.rewards2 = 0),
if(opt2.contract = 3, opt2.rewards3 = [0.1,0.15,0.2]),
if(opt3.contract = 1, opt3.plug_in_hours = [90,120,150]),
if(opt3.contract = 1, opt3.rewards1 = [50,110,170]),
if(opt3.contract = 1, opt3.rewards2 = 0),
if(opt3.contract = 1, opt3.rewards3 = 0),
if(opt3.contract = 2, opt3.plug_in_hours = 0),
if(opt3.contract = 2, opt3.rewards1 = 0),
if(opt3.contract = 2, opt3.rewards2 = [0.7,1.0,1.3]),
if(opt3.contract = 2, opt3.rewards3 = 0),
if(opt3.contract = 3, opt3.plug_in_hours = 0),
if(opt3.contract = 3, opt3.rewards1 = 0),
if(opt3.contract = 3, opt3.rewards2 = 0),
if(opt3.contract = 3, opt3.rewards3 = [0.1,0.15,0.2])
;model:
U(opt1) = b1[0.00000000000000001 ] * SOC[50,100,150] + b2[0] * plug_in_hours[90,120,150,0] + b3[0] * rewards1[50,110,170,0] + b4[0] * rewards2[0.7,1.0,1.3,0] + b5[0] * rewards3[0.1,0.15,0.2,0] + b6.dummy[0|0] * contract[1,2,3] /
U(opt2) = b1 * SOC + b2 * plug_in_hours + b3 * rewards1 + b4 * rewards2 + b5 * rewards3 + b6 * contract /
U(opt3) = b1 * SOC + b2 * plug_in_hours + b3 * rewards1 + b4 * rewards2 + b5 * rewards3 + b6 * contract
$
Error message
Error message :
Note: Defaulting to assigning blocks with the 'minsum' method. Note: The conditional statement nesting cluster 1 contains 15 permissible combinations of attribute levels. The nesting cluster contains the following if statements: * if(opt1.contract = 1, opt1.plug_in_hours = [90,120,150]) * if(opt1.contract = 1, opt1.rewards1 = [50,110,170]) * if(opt1.contract = 1, opt1.rewards2 = 0) * if(opt1.contract = 1, opt1.rewards3 = 0) * if(opt1.contract = 2, opt1.plug_in_hours = 0) * if(opt1.contract = 2, opt1.rewards1 = 0) * if(opt1.contract = 2, opt1.rewards2 = [0.7,1.0,1.3]) * if(opt1.contract = 2, opt1.rewards3 = 0) * if(opt1.contract = 3, opt1.plug_in_hours = 0) * if(opt1.contract = 3, opt1.rewards1 = 0) * if(opt1.contract = 3, opt1.rewards2 = 0) * if(opt1.contract = 3, opt1.rewards3 = [0.1,0.15,0.2]) The conditional statement nesting cluster 2 contains 15 permissible combinations of attribute levels. The nesting cluster contains the following if statements: * if(opt2.contract = 1, opt2.plug_in_hours = [90,120,150]) * if(opt2.contract = 1, opt2.rewards1 = [50,110,170]) * if(opt2.contract = 1, opt2.rewards2 = 0) * if(opt2.contract = 1, opt2.rewards3 = 0) * if(opt2.contract = 2, opt2.plug_in_hours = 0) * if(opt2.contract = 2, opt2.rewards1 = 0) * if(opt2.contract = 2, opt2.rewards2 = [0.7,1.0,1.3]) * if(opt2.contract = 2, opt2.rewards3 = 0) * if(opt2.contract = 3, opt2.plug_in_hours = 0) * if(opt2.contract = 3, opt2.rewards1 = 0) * if(opt2.contract = 3, opt2.rewards2 = 0) * if(opt2.contract = 3, opt2.rewards3 = [0.1,0.15,0.2]) The conditional statement nesting cluster 3 contains 15 permissible combinations of attribute levels. The nesting cluster contains the following if statements: * if(opt3.contract = 1, opt3.plug_in_hours = [90,120,150]) * if(opt3.contract = 1, opt3.rewards1 = [50,110,170]) * if(opt3.contract = 1, opt3.rewards2 = 0) * if(opt3.contract = 1, opt3.rewards3 = 0) * if(opt3.contract = 2, opt3.plug_in_hours = 0) * if(opt3.contract = 2, opt3.rewards1 = 0) * if(opt3.contract = 2, opt3.rewards2 = [0.7,1.0,1.3]) * if(opt3.contract = 2, opt3.rewards3 = 0) * if(opt3.contract = 3, opt3.plug_in_hours = 0) * if(opt3.contract = 3, opt3.rewards1 = 0) * if(opt3.contract = 3, opt3.rewards2 = 0) * if(opt3.contract = 3, opt3.rewards3 = [0.1,0.15,0.2]) An attempt will be made to balance the frequency of each level in attributes affected by constraints, however complete balance might not be possible. A valid initial random design could not be generated after approximately 10 seconds. In this time, of the 26899 attempts made, there were 0 row repetitions, 1969 alternative repetitions, and 24930 cases of dominance. There are a number of possible causes for this, including the specification of too many constraints, not having enough attributes or attribute levels for the number of rows required, and the use of too many scenario attributes. A design may yet be found, and the search will continue for 10 minutes. Alternatively, you can stop the run and alter the syntax.
My questions:
If all prior is set as “0”, the Ngene could provide the results. If some values are set here, the error message will occur and it will not provide any results. the constraints are not especially strong in our case (it's a quite standard unlabelled experiment, in which some attributes depend on other attributes).
For the time being, the report is telling us the it allows for 15 combinations for alternative one, 15 for alternative 2, and 15 for 3, which is manageable. It also mention that is struggling with attribute balance (which we do not necessarily need; so it should be lifted...I guess. So how could I lift the attributes balance? Or how could proceed ? Many thanks.