Page 1 of 1

Pilot study with pivot design

PostPosted: Wed Feb 13, 2019 11:27 am
by rakhee
Dear Ngene team,

I am attempting to design the choice tasks for my stated choice pilot study.
The pilot and main study will be analysed using MMNL model as we are dealing with panel data.
I intended to design using an MNL model with zero priors for the pilot study design.
The main study will use the priors from the pilot study to design for a panel MMNL model. I will optimise the main study design for the MNL model but will also evaluate for the panel MMNL model. I will post the main study syntax at a later date for some advice please.

However, at this stage I was hoping to get some advice please regarding my syntax for my pilot study design.
I have included my syntax using an MNL model with zero priors for the pilot study below:

Design
;alts = GP, RNP, PP
;rows = 20
;block = 4
;eff = (mnl,d,mean)

;cond:
if (alts = GP, GP_X1=[1])

;model:
U(GP) = b1.effects [X1_0] * X1 [0,1] + b2 * X2 [0,1,2,3] + b3 * X3.piv [0, -20%, 0% ,+20%] + b4.effects [X4_0|X4_1] * X4 [0,1,2] + b5.effects [X5_0] * X5 [0,1] + b6 * X6 [0,1,2] /
U(RNP) = b7 + b1.effects [X1_0] * X1 [0,1] + b2 * X2 [0,1,2,3] + b3 * X3.piv [0, -20%, 0%, +20%] + b4.effects [X4_0|X4_1] * X4 [0,1,2] + b5.effects [X5_0] * X5 [0,1] + b6 * X6 [0,1,2] /
U(PP) = b8 + b1.effects [X1_0] * X1 [0,1] + b2 * X2 [0,1,2,3] + b3 * X3.piv [0, -20%, 0%, +20%] + b4.effects [X4_0|X4_1] * X4 [0,1,2] + b5.effects [X5_0] * X5 [0,1] + b6 * X6 [0,1,2]
$

Questions please:
1). Attribute X1 has 2 levels (i.e. [0,1]) which are effects coded with level 1 being the reference level. The GP alternative can only be available in location X1_1. I added this into the design syntax as a condition, but I’m not sure if this is the correct way of doing this.
Question 1: Can you suggest a possible solution for this aspect of the syntax please?

2). I’m treating attribute X3 as a quantitative linear cost variable, which I want to include as a pivot variable in the stated choice questionnaire. So there is no status quo or reference alternative, but I want Ngene to use the pivot function to customise the cost variable shown to each individual participant in the choice tasks based on their input.
So prior to the choice tasks section in the stated choice questionnaire, each participant will answer a question to indicate what they usually pay for the health service.
I would like to set up the cost variable (X3) with the following levels:
level 0 = no charge
level 1= same as cost indicated by individual participant MINUS 20%
level 2 = same as cost indicated by individual participant
level 3 = same as cost indicated by individual participant PLUS 20%
I don’t know how to do this, and I’m pretty sure that my above attempt at this syntax is incorrect.
Question 2: Can you suggest a possible solution for this aspect of the syntax please?
Question 3: Also, what happens with the pivot design if a participant indicates that they don’t pay a fee for the health service?

Again, apologies for my silly questions. Thank you for your time, and I am grateful to the Ngene team for reviewing my query and providing any advice.

Thanks,
Rakhee.

Re: Pilot study with pivot design

PostPosted: Wed Feb 13, 2019 12:53 pm
by Michiel Bliemer
Hi Rakhee,

I looked at your syntax and made quite a few changes. Since you are assuming zero priors for your pilot study, the actual levels shown to respondents do not matter so I have changed the pivoted attribute to fixed levels 0,1,2,3, where you manually set 0 = $0, 1 = -20% of current cost, etc. Once you put in actual values, you can use a pivot design where you can use -100% as a relative pivot that would set the cost to 0. If a person states $0 then relatively pivots do not make sense and you have to use an absolute pivot, e.g. +1, +2, etc. instead of -20%, +20%. Pivot designs require programming logic in the survey instrument to ensure that the choice tasks make sense. It is usually easier to create a few versions of the survey, i.e. a version for people with low cost, a version for people with medium cost, and a version for people with high cost, where you use x3 = [1,2,3,4], x3 = [4,6,8,10], x3 = [20,30,40,50] for example for the different versions.

I changed your conditional constraint to a require constraint, which needs the modified Federov algorithm. This algorithm does not maintain attribute level balance, so I have made all attributes effects-coded, which ensures automatically that there will be a high degree of attribute level balance.

Design
;alts = GP, RNP, PP
;rows = 20
;block = 4
;eff = (mnl,d,fixed)
;alg = mfederov
;require:
GP.X1 = 1

;model:
U(GP) = b1.effects[0] * X1[0,1] + b2.effects[0|0|0] * X2[0,1,2,3] + b3.effects[0|0|0] * X3[0,1,2,3] + b4.effects[0|0] * X4[0,1,2] + b5.effects[0] * X5[0,1] + b6.effects[0|0] * X6[0,1,2] /
U(RNP) = b7 + b1 * X1 + b2 * X2 + b3 * X3 + b4 * X4 + b5 * X5 + b6 * X6 /
U(PP) = b8 + b1 * X1 + b2 * X2 + b3 * X3 + b4 * X4 + b5 * X5 + b6 * X6
$

Michiel

Re: Pilot study with pivot design

PostPosted: Thu Feb 14, 2019 10:11 am
by rakhee
Hi Michiel,

Thank you very much for reviewing my query and providing advice and a solution to my syntax.

I had thought of the -100% pivot level after posting the query, so I'm pleased that you have confirmed that I'm on the right track with that aspect.
Just checking that when I generate the main study design using prior values generated from the pilot study, I assume that I can use the same approach that you used for the pivoted cost attribute? (i.e. as you suggested, change the pivoted attribute to fixed levels 0,1,2,3, where you manually set 0 = $0, 1 = -20% of current cost, etc. The programming logic in my survey instrument will then generate the actual cost values (rounded to the nearest dollar value) shown in each choice task based on the participant's cost input).

Our sample will be adults over 18 years old so actually there is minimal chance of a zero cost value for the health service in question, but I asked that question just to make sure that I had considered all possibilities. Thank you for explaining how creating different cost versions of the survey using absolute values can solve the possible issue of a participant entering in a zero value for cost.

Thank you for adding the constraint and modified Federov algorithm syntax. I hadn't considered this approach as I tried (unsuccessfully) to imply the constraint as a condition, so thank you for fixing that for me.
I understand why you made all the attributes effects-coded after adding in the modified Federov algorithm, but I have a couple of questions please as a result of this amendment.
I calculated my number of choice tasks required based on the number of parameters in my initial MNL utility equations (i.e. initial number of parameters = 9, giving me a minimum number of choice tasks = 5), I then doubled that number due to needing MMNL model because of panel nature of data (i.e. number of choice tasks = 5 x 2 = 10), and again I doubled that number as we shouldn't use the lower bound number (i.e. number of choice tasks = 10 x 2 = 20), and ended up with final decision of 20 choice tasks (i.e. rows = 20) which I have divided into 4 blocks so that each survey participant only needs to complete 5 choices tasks.
As the utility equations are now effects-coded to accommodate the modified Federov algorithm, this generates more parameters (I counted 14 parameters in the effects-coded utility equations).
Questions please:
1). Will this change my current calculation of required choice tasks (i.e. rows = 20)?
2). Will I need re-do my choice tasks required calculation and increase the number of choice tasks required?

Again, apologies for coming up with more questions. Thank you very much for your time and the advice provided.

Thanks,
Rakhee.

Re: Pilot study with pivot design

PostPosted: Fri Feb 15, 2019 9:25 am
by Michiel Bliemer
If you want to use .piv you also need to include .ref in the utility function, i.e. include a status quo alternative. Ngene has limitations in the way pivots can be used in the syntax. A more flexible approach for the main survey is as follows:

1. Using priors obtained from the pilot study, you generate a normal (non-pivoted) experimental design using the average attribute levels that appear within the population. For example, assume that the average attribute level is $5 and that you want to use levels $0, $3, $6, $9 in your design. You optimise the design using these levels.
2. You manually convert these levels into pivots for the survey instrument, i.e. $0 = -100%, $3 = -40%, $6 = +20%, $9 = +80%, since $5 = 0%.
3. If you expect a large range of attribute levels in the population, you can create multiple versions of the design using different attribute levels as mentioned in my previous response.

Regarding your additional questions:

1) I do not propose that you actually use effects coding in estimation for all attributes, you can estimate your model using linear coding as you proposed. It is just a trick to use dummy or effects coding in order to get attribute level balance. This trick only works because you are using zero priors.

2) I think that there is no need to increase the number of choice tasks, but there is no risk in increasing the number either.

Michiel

Re: Pilot study with pivot design

PostPosted: Fri Feb 15, 2019 12:55 pm
by rakhee
Hi Michiel,

Thank you very much for all your time and advice.

Thanks,
Rakhee.