Attribute level realistic only for SQ alternative
Posted: Mon Apr 11, 2022 7:02 pm
Dear all,
I am facing the following problem. The level of 430 for attribute seal is not very realistic in alt1 and alt2, only in SQ. However, if I add require alt1.seal > 430, alt2.seal > 430 to the syntax, I will have problems with ASCs. I actually did include this constraint in our pilot design and Ngene found a design but, understandably, there were problems with modelling when we tried to add ASCs.
So my question is, is there a way to work around this and make a design where seal=430 attribute level only appears in sq alternative and ASCs can be estimated? Or alternatively, is there a way to make seal=430 appear only in few choice sets? Even though seal=430 is really unrealistic for alt1 and alt2, it might be plausible if it appears only in few choice sets, clearly more seldom than levels 600,800 and 1000.
I add syntax for both final and pilot study below.
Thank you in advance!
Best, Annika
Final study (draft)
Design
;alts = alt1*, alt2*, sq*
;rows = 108
;block = 18
;eff = (mnl, d) + 0.5 * (imbalance)
;alg = mfederov(candidates = 25000)
;require:
sq.seal = 430,
sq.motor = 100,
sq.const = 7200,
sq.fish = 1,
sq.cost = 0,
alt1.cost>0,
alt2.cost>0
;model:
U(alt1) = seal.dummy [0.08|0.15|0.20] * SEAL[600, 800, 1000, 430]
+ motor.dummy [(n,0.05,0.1)|(n,0.09,0.1)] * MOTOR[200, 400, 100]
+ const.dummy [(n,0.15,0.1)|(n,0.15,0.1)] * CONST[5400, 3600, 7200]
+ fish.dummy [-0.03|-0.21|-0.22] * FISH[2, 3, 4, 1]
+ cost [-0.0047] * COST[0, 5, 10, 20, 50, 100, 150, 300]
/
U(alt2) = seal.dummy * SEAL
+ motor.dummy * MOTOR
+ const.dummy * CONST
+ fish.dummy * FISH
+ cost * COST
/
U(sq) = seal.dummy * SEAL
+ motor.dummy * MOTOR
+ const.dummy * CONST
+ fish.dummy * FISH
+ cost * COST $
Pilot study
Design
;alts = alt1*, alt2*, sq*
;rows = 30
;block = 5
;eff = (mnl, d) + 0.5 * (imbalance)
;alg = mfederov(candidates = 25000)
;require:
sq.seal = 430,
sq.motor = 100,
sq.const = 7200,
sq.fishing = 1,
sq.cost = 0,
alt1.cost>0,
alt2.cost>0,
alt1.seal > 430,
alt2.seal > 430
;model:
U(alt1) = seal.dummy [0.0001|0.0002|0.0003] * SEAL[600, 800, 1000, 430]
+ motor.dummy [-0.00001|-0.00002] * MOTOR[200, 400, 100]
+ const.dummy [-0.00001|-0.00002] * CONST[5400, 3600, 7200]
+ fish.dummy [-0.00001|-0.00002|-0.00003] * FISH[2, 3, 4, 1]
+ cost [-0.00001] * COST[0, 10, 20, 50, 100, 200, 500]
/
U(alt2) = seal.dummy * SEAL
+ motor.dummy * MOTOR
+ const.dummy * CONST
+ fish.dummy * FISH
+ cost * COST
/
U(sq) = seal.dummy * SEAL
+ motor.dummy * MOTOR
+ const.dummy * CONST
+ fish.dummy * FISH
+ cost * COST $
I am facing the following problem. The level of 430 for attribute seal is not very realistic in alt1 and alt2, only in SQ. However, if I add require alt1.seal > 430, alt2.seal > 430 to the syntax, I will have problems with ASCs. I actually did include this constraint in our pilot design and Ngene found a design but, understandably, there were problems with modelling when we tried to add ASCs.
So my question is, is there a way to work around this and make a design where seal=430 attribute level only appears in sq alternative and ASCs can be estimated? Or alternatively, is there a way to make seal=430 appear only in few choice sets? Even though seal=430 is really unrealistic for alt1 and alt2, it might be plausible if it appears only in few choice sets, clearly more seldom than levels 600,800 and 1000.
I add syntax for both final and pilot study below.
Thank you in advance!
Best, Annika
Final study (draft)
Design
;alts = alt1*, alt2*, sq*
;rows = 108
;block = 18
;eff = (mnl, d) + 0.5 * (imbalance)
;alg = mfederov(candidates = 25000)
;require:
sq.seal = 430,
sq.motor = 100,
sq.const = 7200,
sq.fish = 1,
sq.cost = 0,
alt1.cost>0,
alt2.cost>0
;model:
U(alt1) = seal.dummy [0.08|0.15|0.20] * SEAL[600, 800, 1000, 430]
+ motor.dummy [(n,0.05,0.1)|(n,0.09,0.1)] * MOTOR[200, 400, 100]
+ const.dummy [(n,0.15,0.1)|(n,0.15,0.1)] * CONST[5400, 3600, 7200]
+ fish.dummy [-0.03|-0.21|-0.22] * FISH[2, 3, 4, 1]
+ cost [-0.0047] * COST[0, 5, 10, 20, 50, 100, 150, 300]
/
U(alt2) = seal.dummy * SEAL
+ motor.dummy * MOTOR
+ const.dummy * CONST
+ fish.dummy * FISH
+ cost * COST
/
U(sq) = seal.dummy * SEAL
+ motor.dummy * MOTOR
+ const.dummy * CONST
+ fish.dummy * FISH
+ cost * COST $
Pilot study
Design
;alts = alt1*, alt2*, sq*
;rows = 30
;block = 5
;eff = (mnl, d) + 0.5 * (imbalance)
;alg = mfederov(candidates = 25000)
;require:
sq.seal = 430,
sq.motor = 100,
sq.const = 7200,
sq.fishing = 1,
sq.cost = 0,
alt1.cost>0,
alt2.cost>0,
alt1.seal > 430,
alt2.seal > 430
;model:
U(alt1) = seal.dummy [0.0001|0.0002|0.0003] * SEAL[600, 800, 1000, 430]
+ motor.dummy [-0.00001|-0.00002] * MOTOR[200, 400, 100]
+ const.dummy [-0.00001|-0.00002] * CONST[5400, 3600, 7200]
+ fish.dummy [-0.00001|-0.00002|-0.00003] * FISH[2, 3, 4, 1]
+ cost [-0.00001] * COST[0, 10, 20, 50, 100, 200, 500]
/
U(alt2) = seal.dummy * SEAL
+ motor.dummy * MOTOR
+ const.dummy * CONST
+ fish.dummy * FISH
+ cost * COST
/
U(sq) = seal.dummy * SEAL
+ motor.dummy * MOTOR
+ const.dummy * CONST
+ fish.dummy * FISH
+ cost * COST $