Page 1 of 1

Never-ending search?

PostPosted: Wed Jun 26, 2019 9:12 am
by tanner1
Hi everyone,

This might have a very obvious answer, but I have written code that should be searching for a d-optimal choice experiment design with three alternatives, where the third alternative is the status quo option. The number of rows and blocks is given by one of the suggested designs generated in SAS using %mktruns.

There is one 4-level attribute (quantitative), one 3-level attribute (quantitative); and two qualitative variables of 2 and 3 levels respectively.

The algorithm will not stop evaluating designs. Do I need to specify a maximum number of iterations, or a tolerance for the d-error?


Thank you in advance. The code is below:

Code: Select all
Design
;alts = alt1, alt2, alt3
;rows=12
;block=4
;eff=(mnl,d)
;model:
U(alt1) = cost[0]*cost[1,3,7,10] + program.dummy[0|0]*program[1,2,3] + level.dummy[0]*level[1,2] + time[0]*time[10,20,50]/
U(alt2) = cost[0]*cost[1,3,7,10] + program.dummy[0|0]*program[1,2,3] + level.dummy[0]*level[1,2] + time[0]*time[10,20,50]/
U(alt3)= asc
$

Re: Never-ending search?

PostPosted: Thu Jul 18, 2019 6:34 am
by Michiel Bliemer
The total number of profiles is 72, which means that 5184 possible choice tasks exist. There are many possible designs that can be created by selecting 12 choice tasks out of these 5184 possible choice tasks. The number of designs is so large (billions and billions) that Ngene will simply keep evaluating more designs and will not stop unless the user stops the algorithm. Note that the optimal D-error value is unknown, therefore it is not possible to say how far the design is from the optimal design.

Usually the user can stop the algorithm once the D-error does not improve much anymore. Others run it overnight and take the best design the next day. Alternatively, you can specify a maximum number of iterations or computation time, please refer to the manual for options for the command ;alg = swap.

Michiel

Re: Never-ending search?

PostPosted: Thu Aug 22, 2019 6:55 am
by tanner1
Thank you for the help!