Hi!
I created 4 syntax files each containing a different combination utility functions for different alternatives (one syntax file is presented in the following). Overall, there are 7 alternatives and each of these 6 syntax files contains 6 alternatives. Priors are from a pilot study.
Design
? D-Efficient MNL
;alts = A, B, C, D, E, F
;con
;rows = 80
;eff = (mnl, d)
;Cond:
if(A.a1 <=25, D.d2 <=15),
if(A.a1 <=25, C.c2 <=15),
if(A.a1 <=25, B.b2 <=19),
if(A.a1 <=25, F.f2 <=27),
if(A.a1 <=25, E.e2 <=25),
if(A.a1 >25, D.d2 >15),
if(A.a1 >25, C.c2 >15),
if(A.a1 >25, B.b2 >19),
if(A.a1 >25, F.f2 >27),
if(A.a1 >25, E.e2 >25),
if(F.f2 <=19, F.f1 <4),
if(B.b2<=19, B.1 <4),
if(D.d2<= 24, D.d1 <= 2),
if(C.c2 <= 24, C.c1 <= 5),
if(D.d2 <> C.c2, D.d2 = C.c2)
;model:
U(F) = b0_F[0.88]
+ b_f1[-0.2] * f1[2.5, 3, 4, 6]
+ b_f2[-0.05] * f2[5, 10, 19, 27, 35, 50, 55]
+ b_f3[-0.05] * f3[2, 5, 7, 13]
+ b_f4[-0.05] * f4[0, 2, 4, 8, 12]
+ b_f5.dummy[-0.05 | -0.05] * f5[0, 1, 2]
+ b_f6.dummy[-0.05 | -0.05 | -0.05] * f6[0, 1, 2, 3] /
U(E) = b0_E[0.05]
+ b_e1[-0.05] * e1[1, 1.5, 2, 3]
+ b_e2[-0.05] * e2[6, 15, 25, 38, 45] /
U(D) =
b_d1-0.07] * d1[0.5, 1.5, 2, 3, 5]
+ b_d2[-0.04] * d2[6, 9, 15, 24, 32, 45]
+ b_d3[-0.06] * d3[0, 2, 5, 10] /
U(C) = b0_C[0.05]
+ b_c1[-0.05] * c1[1, 3, 5, 7]
+ b_c2[-0.05] * c2[6, 9, 15, 24, 32, 45] /
U(A) = b0_A[1.61]
+b0a1[-0.09] * a1[6, 15, 25, 38, 45] /
U(B) = b0_B[1.17]
+ b_b1[-0.23] * b1[2.5, 3, 4, 6]
+ b_b2[-0.04] * b2[5, 10, 19, 27, 35, 50]
+ b_b3[0.11] * b3[4, 8, 12, 16, 20]
+ b_b4.dummy[-0.05 | -0.05] * b4[0, 1, 2]
+ b_b5[-0.05] * b5[5, 10, 30, 60]
$
I created 80 rows per syntax file, so taht I had 80 x 4 = 320 choice situations in total. I used these 320 choice situations to create a candidateset. Cells that did not belong to an alternative (which are the ones that belong to the 7th alternative not included in one of the syntax files), were coded as 999. Then, I uploaded this candidateset in a new final syntax file that contains all 7 alternatives. I added 999 to all alternatives, except for the alternatives F, E, D as they are always present.
Design
? D-Efficient MNL
;alts = A, B, C, D, E, F
;rows = 16
;block = 4
;eff = (mnl,d)
;alg = mfederov(candidates = Candidateset.xlsx)
;model:
U(F) = b0_F[0.88]
+ b_f1[-0.2] * f1[2.5, 3, 4, 6]
+ b_f2[-0.05] * f2[5, 10, 19, 27, 35, 50, 55]
+ b_f3[-0.05] * f3[2, 5, 7, 13]
+ b_f4[-0.05] * f4[0, 2, 4, 8, 12]
+ b_f5.dummy[-0.05 | -0.05] * f5[0, 1, 2]
+ b_f6.dummy[-0.05 | -0.05 | -0.05] * f6[0, 1, 2, 3] /
U(E) = b0_E[0.05]
+ b_e1[-0.05] * e1[1, 1.5, 2, 3]
+ b_e2[-0.05] * e2[6, 15, 25, 38, 45] /
U(D) =
b_d1-0.07] * d1[0.5, 1.5, 2, 3, 5]
+ b_d2[-0.04] * d2[6, 9, 15, 24, 32, 45]
+ b_d3[-0.06] * d3[0, 2, 5, 10] /
U(C) = b0_C[0.05]
+ b_c1[-0.05] * c1[1, 3, 5, 7, 999]
+ b_c2[-0.05] * c2[6, 9, 15, 24, 32, 45, 999] /
U(A) = b0_A[1.61]
+b0a1[-0.09] * a1[6, 15, 25, 38, 45, 999] /
U(B) = b0_B[1.17]
+ b_b1[-0.23] * b1[2.5, 3, 4, 6, 999]
+ b_b2[-0.04] * b2[5, 10, 19, 27, 35, 50, 999]
+ b_b3[0.11] * b3[4, 8, 12, 16, 20, 999]0
+ b_b4.dummy[-0.05 | -0.05| -0.05] * b4[0, 1, 2, 999]
+ b_b5[-0.05] * b5[5, 10, 30, 60, 999]
U(G) = b0_G[1.72]
+ b_g1[-0.07] * g1[30, 35, 45, 60, 90, 120, 999]
$
However, whenever I run the file, the current designs are all invalid. Only one design has an undefined D-error. Also, I am unsure what to do with the "999-method" whnen it comes to the dummy coded variables. May you help me please?