Labeled Pivot Design

Dear ChoiceMetrics Team,
I’m designing a labeled choice experiment with vehicle-specific constraints and pivot-based cost attributes. Despite multiple attempts, I’m stuck with errors and would appreciate your guidance. I have four different types of vehicles (ICT, BEV, PHEV, & FCH), with each taking certain attribute levels (aka many constraints!).
Design Requirements
Alternatives: ICT, BEV, PHEV, FCH, Opt-out.
My constraints are:
ICT: RT=0, FSA=100%, MC[6,8,10], FC[7,10].
BEV: RT[20,40,60], FSA[10,40,70,100], MC[3,6], FC[1,3].
PHEV: RT[0,20], FSA[70,100], FC[3,7].
FCH: RT=0, FSA=10%.
Pivot Cost: Percentage changes (-10,0,10,20,30,40) applied to a respondent-specific base price.
Below is my current code and the issues I’m facing:
Errors/Issues:
1) Attribute Consistency Error: An example error is "Two identically named attributes do not have consistently specified levels: 'bev.rt', 'ict.rt'," which makes sense, but the problem is that Attributes like RT, FSA, MC, and FC have different levels across labeled alternatives (e.g., ICT has RT=0, BEV has RT[20,40,60]). Ngene expects identically named attributes to have identical levels.
2) Pivot Syntax: I am using C.piv[-10,0,10,20,30,40] to define percentage changes relative to a respondent’s reference price (rather than defining it within the syntax). However, the syntax for pivot variables (especially with labeled alternatives) is unclear in the manual.
What I’ve Tried:
1) Alternative-Specific Attributes: Renamed attributes (e.g., ICT_FS, BEV_FS) to avoid conflicts, but this complicates dummy coding and model specification.
2) Pivot Syntax: Experimented with C.ref[0] and C.piv, but Ngene throws errors about level frequencies.
3) The candidate set approach, which I tried, is impossible due to combinatorial explosion (26M+ rows).
My questions:
A) How do I properly define alternative-specific attributes (e.g., RT, FSA) with different levels for labeled alternatives without triggering consistency errors? Can Ngene handle this type of design?
B) What is the correct syntax for pivot variables in a labeled design where cost is a percentage change relative to a respondent’s reference value?
C) What am I missing here? I (have) read the manual document (esp. Section 8.3.2) quite a few times by now, but this is a new challenge.
Any guidance would be greatly appreciated!
Best regards,
Jamal
I’m designing a labeled choice experiment with vehicle-specific constraints and pivot-based cost attributes. Despite multiple attempts, I’m stuck with errors and would appreciate your guidance. I have four different types of vehicles (ICT, BEV, PHEV, & FCH), with each taking certain attribute levels (aka many constraints!).
Design Requirements
Alternatives: ICT, BEV, PHEV, FCH, Opt-out.
My constraints are:
ICT: RT=0, FSA=100%, MC[6,8,10], FC[7,10].
BEV: RT[20,40,60], FSA[10,40,70,100], MC[3,6], FC[1,3].
PHEV: RT[0,20], FSA[70,100], FC[3,7].
FCH: RT=0, FSA=10%.
Pivot Cost: Percentage changes (-10,0,10,20,30,40) applied to a respondent-specific base price.
Below is my current code and the issues I’m facing:
- Code: Select all
Design
;alts = ICT*, BEV*, PHEV*, FCH*, none
;rows = 24
;block = 3, minsum
;eff = (mnl,d)
;alg = mfederov
;model:
? ICE (ICT)
U(ICT) =
b1_ICT[0] * FS[1] ? ICE fuel source (fixed)
+ b2_ICT * DR[200,300,400,500]
+ b3_ICT[0] * RT[0] ? RT fixed at 0
+ b4_ICT[0] * FSA[100] ? FSA fixed at 100%
+ b5_ICT.dummy[0|0] * MC[6,8,10] ? Maintenance cost for ICE
+ b6_ICT.dummy[0] * FC[7,10] ? Fuel cost for ICE
+ b7_ICT[-0.01] * C.piv[-10,0,10,20,30,40] ? Pivot cost (% change os stated value - reference will be given by the respondent)
/
? BEV
U(BEV) =
b1_BEV.dummy[0|0|0] * FS[2,3,4,5] ? BEV fuel source (4 levels)
+ b2_BEV * DR[200,300,400,500]
+ b3_BEV.dummy[0|0] * RT[20,40,60] ? BEV refueling time
+ b4_BEV.dummy[0|0|0] * FSA[10,40,70,100] ? BEV station availability
+ b5_BEV.dummy[0] * MC[3,6] ? Maintenance cost for BEV
+ b6_BEV.dummy[0] * FC[1,3] ? Fuel cost for BEV
+ b7_BEV[-0.01] * C.piv[-10,0,10,20,30,40] ? Pivot cost (% change)
/
? PHEV
U(PHEV) =
b1_PHEV.dummy[0|0|0] * FS[6,7,8,9] ? Hybrid fuel source (4 levels)
+ b2_PHEV * DR[200,300,400,500]
+ b3_PHEV.dummy[0] * RT[0,20] ? PHEV refueling time
+ b4_PHEV.dummy[0] * FSA[70,100] ? PHEV station availability
+ b5_PHEV.dummy[0] * MC[3,6] ? Maintenance cost for PHEV
+ b6_PHEV.dummy[0] * FC[3,7] ? Fuel cost for PHEV
+ b7_PHEV[-0.01] * C.piv[-10,0,10,20,30,40] ? Pivot cost (% change)
/
? FCH (FCV)
U(FCH) =
b1_FCH.dummy[0|0] * FS[10,11,12] ? FCV hydrogen type (3 levels)
+ b2_FCH * DR[200,300,400,500]
+ b3_FCH[0] * RT[0] ? RT fixed at 0
+ b4_FCH[0] * FSA[10] ? FSA fixed at 10%
+ b5_FCH.dummy[0] * MC[3,6] ? Maintenance cost for FCV
+ b6_FCH.dummy[0] * FC[1,3] ? Fuel cost for FCV
+ b7_FCH[-0.01] * C.piv[-10,0,10,20,30,40] ? Pivot cost (% change)
/
? Opt-out
U(none) = b0
$
Errors/Issues:
1) Attribute Consistency Error: An example error is "Two identically named attributes do not have consistently specified levels: 'bev.rt', 'ict.rt'," which makes sense, but the problem is that Attributes like RT, FSA, MC, and FC have different levels across labeled alternatives (e.g., ICT has RT=0, BEV has RT[20,40,60]). Ngene expects identically named attributes to have identical levels.
2) Pivot Syntax: I am using C.piv[-10,0,10,20,30,40] to define percentage changes relative to a respondent’s reference price (rather than defining it within the syntax). However, the syntax for pivot variables (especially with labeled alternatives) is unclear in the manual.
What I’ve Tried:
1) Alternative-Specific Attributes: Renamed attributes (e.g., ICT_FS, BEV_FS) to avoid conflicts, but this complicates dummy coding and model specification.
2) Pivot Syntax: Experimented with C.ref[0] and C.piv, but Ngene throws errors about level frequencies.
3) The candidate set approach, which I tried, is impossible due to combinatorial explosion (26M+ rows).
My questions:
A) How do I properly define alternative-specific attributes (e.g., RT, FSA) with different levels for labeled alternatives without triggering consistency errors? Can Ngene handle this type of design?
B) What is the correct syntax for pivot variables in a labeled design where cost is a percentage change relative to a respondent’s reference value?
C) What am I missing here? I (have) read the manual document (esp. Section 8.3.2) quite a few times by now, but this is a new challenge.
Any guidance would be greatly appreciated!
Best regards,
Jamal