Undefined/ no design found

This forum is for posts that specifically focus on Ngene.

Moderators: Andrew Collins, Michiel Bliemer, johnr

Undefined/ no design found

Postby twickr07 » Sat Jan 18, 2025 12:28 am

Hi Michiel,

I am having difficulty generating a design in Ngene using the following code. The issue seems to stem from correlation within the "advtreatment" attribute, resulting in undefined output.

Code: Select all
design
;alts = surgery*, medication*
;rows=60
;block=6
;eff=(mnl,d)
;alg=mfederov
;reject: surgery.remission = 50, surgery.remission = 60, surgery.operation = 35, surgery.operation = 50,
medication.remission = 80, medication.remission = 90, medication.operation = 2, medication.operation = 5, medication.operation = 10,
surgery.advtreatment = 100, medication.advtreatment = 5, medication.advtreatment = 10, medication.advtreatment = 15
;con
;model:
U(surgery)     = surgery[0]                                                                                 ?ASC for surgery relative to medication
               + b1.dummy [0.00001|0.00002]                          * qol [70,80,60]                       ?Chance of improvement in symptoms and quality of life within 8 weeks(%)
               + b2.dummy [0.00001|0.00002|0.00003|0.00004]          * remission [60,70,80,90,50]           ?Clinical remission at one year (%)
               + b3.dummy [0.00001|0.00002]                          * mucosal [60,70,50]                   ?Absence of mucosal inflammation endoscopically at one year (%)
               + b4.dummy [-0.00001|-0.00003|-0.0001]                * advtreatment [10,15,100,5]           ?Chance of being on advanced therapy at one year (%)
               + b5.dummy [-0.00001|-0.00005]                        * complications [5,10,2]               ?Risk of serious complications of treatment (%)
               + b6.dummy [0.00001|0.00003|0.00006|0.0001|0.00015]   * operation [5,10,20,35,50,2]          ?Risk of operation (or reoperation) within 5 years (%)
               /
U(medication)  = b1.dummy * qol                     
               + b2.dummy * remission
               + b3.dummy * mucosal
               + b4.dummy * advtreatment
               + b5.dummy * complications
               + b6.dummy * operation
$


I've explored a few potential solutions, but neither seems ideal:

1) I included overlapping levels for "advtreatment" (e.g., 50) in both the "surgery" and "medication" alternatives. However, this is not clinically realistic.
Code: Select all
design
;alts = surgery*, medication*
;rows=60
;block=6
;eff=(mnl,d)
;alg=mfederov
;reject: surgery.remission = 50, surgery.remission = 60, surgery.operation = 35, surgery.operation = 50,
medication.remission = 80, medication.remission = 90, medication.operation = 2, medication.operation = 5, medication.operation = 10,
surgery.advtreatment = 100, medication.advtreatment = 5, medication.advtreatment = 10, medication.advtreatment = 15
;con
;model:
U(surgery)     = surgery[0]                                                                                 ?ASC for surgery relative to medication
               + b1.dummy [0.00001|0.00002]                          * qol [70,80,60]                       ?Chance of improvement in symptoms and quality of life within 8 weeks(%)
               + b2.dummy [0.00001|0.00002|0.00003|0.00004]          * remission [60,70,80,90,50]           ?Clinical remission at one year (%)
               + b3.dummy [0.00001|0.00002]                          * mucosal [60,70,50]                   ?Absence of mucosal inflammation endoscopically at one year (%)
               + b4.dummy [-0.00001|-0.00003|-0.00005|-0.0001]       * advtreatment [10,15,50,100,5]        ?Chance of being on advanced therapy at one year (%)
               + b5.dummy [-0.00001|-0.00005]                        * complications [5,10,2]               ?Risk of serious complications of treatment (%)
               + b6.dummy [0.00001|0.00003|0.00006|0.0001|0.00015]   * operation [5,10,20,35,50,2]          ?Risk of operation (or reoperation) within 5 years (%)
               /
U(medication)  = b1.dummy * qol                     
               + b2.dummy * remission
               + b3.dummy * mucosal
               + b4.dummy * advtreatment
               + b5.dummy * complications
               + b6.dummy * operation
$



2) I converted "advtreatment" into a binary variable ("yes/no") to simplify the design. This approach is better than option 1, but still not fully realistic.
Code: Select all
design
;alts = surgery*, medication*
;rows=60
;block=6
;eff=(mnl,d)
;alg=mfederov
;reject: medication.advtreatment = 0, surgery.remission = 50, surgery.remission = 60, surgery.operation = 35, surgery.operation = 50,
medication.remission = 80, medication.remission = 90, medication.operation = 2, medication.operation = 5, medication.operation = 10
;con
;model:
U(surgery)     = surgery[0]                                                                                 ?ASC for surgery relative to medication
               + b1.dummy [0.00001|0.00002]                          * qol [70,80,60]                       ?Chance of improvement in symptoms and quality of life within 8 weeks(%)
               + b2.dummy [0.00001|0.00002|0.00003|0.00004]          * remission [60,70,80,90,50]           ?Clinical remission at one year (%)
               + b3.dummy [0.00001|0.00002]                          * mucosal [60,70,50]                   ?Absence of mucosal inflammation endoscopically at one year (%)
               + b4.dummy [0]                                        * advtreatment [0,1]                   ?Will the patient be on advanced therapy within the next year? (0=yes, 1=no)
               + b5.dummy [-0.00001|-0.00005]                        * complications [5,10,2]               ?Risk of serious complications of treatment (%)
               + b6.dummy [0.00001|0.00003|0.00006|0.0001|0.00015]   * operation [5,10,20,35,50,2]          ?Risk of operation (or reoperation) within 5 years (%)
               /
U(medication)  = b1.dummy * qol                     
               + b2.dummy * remission
               + b3.dummy * mucosal
               + b4.dummy * advtreatment
               + b5.dummy * complications
               + b6.dummy * operation
$


I'm reaching out to check if you have any alternative suggestions for addressing this design challenge.

I've dummy-coded all attributes because I only have near zero directional priors using levels such as 60, 70, 80 instead of 0, 1, 2. Would this choice have any impact on the design?

Thank you for always supporting us with our design questions :D
Tara
twickr07
 
Posts: 17
Joined: Mon Nov 25, 2019 9:51 pm

Re: Undefined/ no design found

Postby Michiel Bliemer » Sun Jan 19, 2025 9:07 am

The model that you have specified is not identified (i.e., the parameters cannot be estimated). Namely, you set medication.advtreatment=100, which acts as a constant for medication, while you also included a constant for surgery. You cannot estimate a model in which all alternatives have a constant. There are two easy solutions to create an identifiable model:

Option 1: Do not use dummy coding for advtreatment. The model is identifiable without dummy coding for this attribute.
Option 2: Remove level 100 from advtreatment in surgery and remove advtreatment as an attribute in medication. The impact of medication.advtreatment=100 will now be absorbed into the constant of surgery. But note that Ngene will now no longer be able to check to "dominant" alternatives (although these may not be a concern since you have labelled alternatives)

I usually also dummy code all attributes when I have (near) zero priors, so that is generally a good idea as it will result in more attribute level combinations to appear in the design (like an orthogonal design). With uninformative priors, it is not possible to say what the impact will be on final design efficiency.

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

Re: Undefined/ no design found

Postby twickr07 » Mon Jan 20, 2025 7:47 pm

Hi Michiel,

Thank you so much for the speedy response. Both of your suggestions worked perfectly!

Thank you ever so much for your help.
Tara
twickr07
 
Posts: 17
Joined: Mon Nov 25, 2019 9:51 pm


Return to Choice experiments - Ngene

Who is online

Users browsing this forum: No registered users and 9 guests

cron