Dual response format and reference alternative

This forum is for posts that specifically focus on Ngene.

Moderators: Andrew Collins, Michiel Bliemer, johnr

Dual response format and reference alternative

Postby bye1830 » Tue Oct 11, 2022 4:12 pm

Dear Ngene Team,

I have been attempting to create a choice experiment design with a dual response format. Although I referred to some relevant postings in this forum, this is my first try and I am not sure if there is anything that could go wrong. So, it will be greatly appreciated if you could provide me with any inputs with the following questions!

This initial design has three labelled alternatives:
  • A battery electric truck
  • A hydrogen fuel cell electric truck
  • A diesel truck as a reference alternative

And, there are five attributes and alternative-specific constants (ASC):
  • Purchase costs
  • Operating costs
  • Driving range 
  • Shortest distance to an off-site fueling station
  • On-site station construction costs
  • ASC

My plan is to do a pilot survey before a main one (as suggested before in this forum) to obtain more reliable prior information. Here is a draft script for the pilot. I assume approximately 5 to 10 respondents.

Code: Select all
Design
? Dual response format
? Reference alternative: diesel truck
? Efficient design with noninformative priors
;alts (forced) = BEV*, HFCEV*, DSL
;alts (unforced) = BEV*, HFCEV*, DSL
;rows = 18
;block = 3
;eff = combined (mnl,d)
;alg = swap (stop = noimprov(1000 iterations))
;fisher(combined) = design1(forced[0.5], unforced[0.5])

;model(forced):
U(BEV) = b1[0] +
         b2[-0.0001]*pcostz[105,110,115,125,150,175,200] +
         b3[-0.0001]*ocostb[50,70] +
         b4[ 0.0001]*rangeb[100,200,300,500] +
         b5[-0.0001]*offsitez[10,20,60] +
         b6[-0.0001]*onsiteb[0,25,50,75,100] /

U(HFCEV)= b2*pcostz +
         b3*ocosth[90,115,130] +
         b4*rangeh[300,500,700] +
         b5*offsitez +
         b6*onsiteh[0,25,50,75,100] /

U(DSL) = b7[-9] +
         b2*pcostd[100] +
         b3*ocostd[100] +
         b4*ranged[700] +
         b5*offsited[5]   

;model(unforced):
U(BEV) = b1[0] +
         b2[-0.0001]*pcostz[105,110,115,125,150,175,200] +
         b3[-0.0001]*ocostb[50,70] +
         b4[ 0.0001]*rangeb[100,200,300,500] +
         b5[-0.0001]*offsitez[10,20,60] +
         b6[-0.0001]*onsiteb[0,25,50,75,100] /

U(HFCEV)= b2*pcostz +
         b3*ocosth[90,115,130] +
         b4*rangeh[300,500,700] +
         b5*offsitez +
         b6*onsiteh[0,25,50,75,100] /

U(DSL) = b7[0] +
         b2*pcostd[100] +
         b3*ocostd[100] +
         b4*ranged[700] +
         b5*offsited[5]                     
$


In the questionnaire, a set of two questions will follow after presenting a choice scenario:
    1) If you must choose only between battery electric and hydrogen fuel cell electric trucks, what is the most preferred option?
  • Battery electric truck
  • Hydrogen fuel cell electric truck

    2) If a diesel truck were available, would the one previously selected be still the most preferred?
  • Yes
  • No

Here are my questions:

1. Would you please review this script and let me know if you find anything you'd like to suggest to do differently?

2. When I checked the output in the Ngene, I found two same matrices but different block numbers between the forced and unforced designs. I wonder which set of block numbers should be used?

3. I am curious whether it is possible to include multiple types of reference alternatives. Why I wonder about this is because, in reality, some respondents could have more than one reference options. For example, there are companies that are operating natural gas trucks and diesel trucks at the same time. So, in this case, the same question will be used for the first question, but the second question could be modified as below:

    2) If diesel and natural gas trucks were available, would the one previously selected be still the most preferred?
  • Yes
  • No, we prefer a diesel truck.
  • No, we prefer a natural gas truck.

And, here is a draft script:

Code: Select all
Design
? Dual response design
? Efficient design with noninformative priors
;alts (forced) = BEV*, HFCEV*, NGV, DSL
;alts (unforced) = BEV*, HFCEV*, NGV, DSL
;rows = 18
;block = 3
;eff = combined (mnl,d)
;alg = swap (stop = noimprov(1000 iterations))
;fisher(combined) = design1(forced[0.5], unforced[0.5])

;model(forced):
U(BEV) = b1[0] +
         b2[-0.0001]*pcostz[105,110,115,125,150,175,200] +
         b3[-0.0001]*ocostb[50,70] +
         b4[ 0.0001]*rangeb[100,200,300,500] +
         b5[-0.0001]*offsitez[10,20,60] +
         b6[-0.0001]*onsiteb[0,25,50,75,100] /

U(HFCEV)= b2*pcostz +
         b3*ocosth[90,115,130] +
         b4*rangeh[300,500,700] +
         b5*offsitez +
         b6*onsiteh[0,25,50,75,100] /

U(NGV)= b7[-9] +
         b2*pcostn[130] +
         b3*ocostn[90] +
         b4*rangen[700] +
         b5*offsiten[10] +
         b6*onsiten[100] /

U(DSL) = b8[-9] +
         b2*pcostd[100] +
         b3*ocostd[100] +
         b4*ranged[700] +
         b5*offsited[5]   


;model(unforced):
U(BEV) = b1[0] +
         b2[-0.0001]*pcostz[105,110,115,125,150,175,200] +
         b3[-0.0001]*ocostb[50,70] +
         b4[ 0.0001]*rangeb[100,200,300,500] +
         b5[-0.0001]*offsitez[10,20,60] +
         b6[-0.0001]*onsiteb[0,25,50,75,100] /

U(HFCEV)= b2*pcostz +
         b3*ocosth[90,115,130] +
         b4*rangeh[300,500,700] +
         b5*offsitez +
         b6*onsiteh[0,25,50,75,100] /

U(NGV)= b7[0] +
         b2*pcostn[130] +
         b3*ocostn[90] +
         b4*rangen[700] +
         b5*offsiten[10] +
         b6*onsiten[100] /

U(DSL) = b8[0] +
         b2*pcostd[100] +
         b3*ocostd[100] +
         b4*ranged[700] +
         b5*offsited[5]                     
$


Do you think this design looks okay?

4. Lastly, I wonder if an attribute for a reference alternative should have only single level, or can have multiple levels? For example, some attributes for natural gas trucks could have a range of levels (e.g., 70% or 90 % of operating costs) in reality. Thus, I wonder if it is okay to assign more than one levels to an attribute of a reference alternative. Here is an example of script.

Code: Select all
Design
? Dual response design
? Efficient design with noninformative priors
;alts (forced) = BEV*, HFCEV*, NGV, DSL
;alts (unforced) = BEV*, HFCEV*, NGV, DSL
;rows = 18
;block = 3
;eff = combined (mnl,d)
;alg = swap (stop = noimprov(1000 iterations))
;fisher(combined) = design1(forced[0.5], unforced[0.5])

;model(forced):
U(BEV) = b1[0] +
         b2[-0.0001]*pcostz[105,110,115,125,150,175,200] +
         b3[-0.0001]*ocostb[50,70] +
         b4[ 0.0001]*rangeb[100,200,300,500] +
         b5[-0.0001]*offsitez[10,20,60] +
         b6[-0.0001]*onsiteb[0,25,50,75,100] /

U(HFCEV)= b2*pcostz +
         b3*ocosth[90,115,130] +
         b4*rangeh[300,500,700] +
         b5*offsitez +
         b6*onsiteh[0,25,50,75,100] /

U(NGV)= b7[-9] +
         b2*pcostn[105,130] +
         b3*ocostn[70,90] +
         b4*rangen[700] +
         b5*offsiten[10,20] +
         b6*onsiten[100] /

U(DSL) = b8[-9] +
         b2*pcostd[100] +
         b3*ocostd[100] +
         b4*ranged[700] +
         b5*offsited[5]   


;model(unforced):
U(BEV) = b1[0] +
         b2[-0.0001]*pcostz[105,110,115,125,150,175,200] +
         b3[-0.0001]*ocostb[50,70] +
         b4[ 0.0001]*rangeb[100,200,300,500] +
         b5[-0.0001]*offsitez[10,20,60] +
         b6[-0.0001]*onsiteb[0,25,50,75,100] /

U(HFCEV)= b2*pcostz +
         b3*ocosth[90,115,130] +
         b4*rangeh[300,500,700] +
         b5*offsitez +
         b6*onsiteh[0,25,50,75,100] /

U(NGV)= b7[0] +
         b2*pcostn[105,130] +
         b3*ocostn[70,90] +
         b4*rangen[700] +
         b5*offsiten[10,20] +
         b6*onsiten[100] /

U(DSL) = b8[0] +
         b2*pcostd[100] +
         b3*ocostd[100] +
         b4*ranged[700] +
         b5*offsited[5]                     
$


Please feel free to let me know if any clarifications are needed in my questions. Again, I greatly appreciate your time and help!

Best regards,

yb
bye1830
 
Posts: 11
Joined: Wed Jun 22, 2022 3:19 pm

Re: Dual response format and reference alternative

Postby Michiel Bliemer » Tue Oct 11, 2022 10:13 pm

1. I looked at your first script and that looks fine to me.

2. You can use either blocking column, so perhaps choose the one that you believe has the best attribute level balance within each block.

3. I believe you are referring to different population segments. You can create separate designs for different segments, so design 1 that you would show to companies that only operate diesel trucks, and experiment 2 that operates both diesel and natural gas trucks. If you want to show the exact same designs to both companies, then you could generate a design with all four alternatives and simply remove the alternative for natural gas if the company does not have such trucks.

4. If both attribute levels are present at the company, then it should be fine to have multiple attribute levels for the reference alternative. The reference alternative is mainly there to make the choice task more familar to the respondent, but further you can make changes as you seem fit.

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

Re: Dual response format and reference alternative

Postby bye1830 » Sat Oct 15, 2022 4:27 pm

Dear Michiel,

Thank you very much. Glad to know that the script looks fine. I'll then attempt to create a single design across the two segments, and compare it with the set of the two designs, after which I might need to decide.

All your answers are very helpful. I greatly appreciate it!

yb
bye1830
 
Posts: 11
Joined: Wed Jun 22, 2022 3:19 pm


Return to Choice experiments - Ngene

Who is online

Users browsing this forum: No registered users and 24 guests