No valid design has been found

This forum is for posts that specifically focus on Ngene.

Moderators: Andrew Collins, Michiel Bliemer, johnr

No valid design has been found

Postby ChrisG » Tue Oct 03, 2023 7:31 pm

Hi everyone

I am trying to generate a new design for a DCE; please see the code below. The problem is that I get the warning "No valid design has been found after 1000 evaluations." I am recommended to check whether probabilities might be too extreme or priors too large. However, given the defined priors probabilities stay pretty close to 0.5 in all possible choice sets, as is visible in the design reported when I stop the search process. Letting the search process run for a long time does not help either.
Does anyone see the mistake I seem to be overlooking?

Best,
Christian

Code: Select all
Design
;alts = alt_d, alt_g
;rows = 18
;block = 6
;eff = (mnl, d)
;model:
U(alt_d) = b1[-0.001]            * WD[65,75,85]
        + b2.dummy[0.2]          * C[1,2]
        + b3.dummy[0]             * YD[1,2]
        + b4[0]                          * C.dummy[1]*YD.dummy[2]
        + b5[0]                          * C.dummy[2]*YD.dummy[1]
        + b6[0]                          * C.dummy[1]*YD.dummy[1]
        /
U(alt_g) = b7[-0.001]            * WG[65,75,85]
        + b8.dummy[0.3]          * T[1,2]
        + b9.dummy[0]             * YG[1,2]
        + b10[0]                         * T.dummy[1]*YG.dummy[2]
        + b11[0]                         * T.dummy[2]*YG.dummy[1]
        + b12[0]                         * T.dummy[1]*YG.dummy[1]
$
ChrisG
 
Posts: 6
Joined: Wed Mar 08, 2023 2:16 am

Re: No valid design has been found

Postby Michiel Bliemer » Wed Oct 04, 2023 12:21 pm

You are overspecifying your model and it cannot be estimated, so the D-error becomes infinite. The issue is that you included interactions with both dummy[1] and dummy[2] into the model, but with dummy coding you can only use L-1 dummy variables, where L is the number of levels. So you should interact only with C.dummy[1] OR C.dummy[2] and only interact with YD.dummy[1] OR YD.dummy[2], as they will be relative to the one you left out. The last dummy level is the base level in Ngene, so in your case prior 0.2 refers to level 1 relative to base level 2. So I would choose to interact only with C.dummy[1] and with YD.dummy[1], while level 2 is the base level.

Michiel
Michiel Bliemer
 
Posts: 1733
Joined: Tue Mar 31, 2009 4:13 pm

Re: No valid design has been found

Postby ChrisG » Wed Oct 04, 2023 5:46 pm

Thank you so much, that helped!
ChrisG
 
Posts: 6
Joined: Wed Mar 08, 2023 2:16 am

Re: No valid design has been found

Postby ChrisG » Fri Dec 08, 2023 11:01 pm

Michiel Bliemer wrote:You are overspecifying your model and it cannot be estimated, so the D-error becomes infinite. The issue is that you included interactions with both dummy[1] and dummy[2] into the model, but with dummy coding you can only use L-1 dummy variables, where L is the number of levels. So you should interact only with C.dummy[1] OR C.dummy[2] and only interact with YD.dummy[1] OR YD.dummy[2], as they will be relative to the one you left out. The last dummy level is the base level in Ngene, so in your case prior 0.2 refers to level 1 relative to base level 2. So I would choose to interact only with C.dummy[1] and with YD.dummy[1], while level 2 is the base level.

Michiel

Hi again, I've added an alternative specific parameter b0 to alt_d, see below, now I again end up with no valid design has been found. Am I again overspecifying?

Code: Select all
Design
;alts = alt_d, alt_g
;rows = 21
;block = 7
;eff = (rppanel, d)
;model:
U(alt_d) = b0[n,0,0]
        + b1d[n,-0.001,0]             * WD[60,70,80]
        + b2d.dummy[n,0.2,0]          * C[1,0]
        + b3d.dummy[n,0,0]            * GD[1,0]
        + b4d.dummy[n,0,0]            * YD[1,0]
        + b5d[0]                      * C.dummy[1]*YD.dummy[1]
        /
U(alt_g) = b1g[n,-0.001,0]            * WG[60,70,80]
        + b2g.dummy[n,0.2,0]          * T[1,0]
        + b3g.dummy[n,0,0]            * GG[1,0]
        + b4g.dummy[n,0,0]            * YG[1,0]
        + b5g[0]                      * T.dummy[1]*YG.dummy[1]
$
ChrisG
 
Posts: 6
Joined: Wed Mar 08, 2023 2:16 am

Re: No valid design has been found

Postby Michiel Bliemer » Sat Dec 09, 2023 10:10 am

No, the utility specification is fine in this case, the parameters are identifiable. The issue is that you are trying to optimise for the panel mixed logit model (rppanel), which is extremely computationally extensive, and you are using non-sensible priors (e.g. all your standard deviations are zero, so essentially it is an mnl model). I suggest you use ;eff = (mnl,d).

Michiel
Michiel Bliemer
 
Posts: 1733
Joined: Tue Mar 31, 2009 4:13 pm

Re: No valid design has been found

Postby ChrisG » Tue Dec 12, 2023 12:45 am

I understand, thank you for your explanation and suggestion!

Christian
ChrisG
 
Posts: 6
Joined: Wed Mar 08, 2023 2:16 am


Return to Choice experiments - Ngene

Who is online

Users browsing this forum: No registered users and 45 guests