MNL estimation with Generic attributes

This forum is for posts covering broader stated choice experimental design issues.

Moderators: Andrew Collins, Michiel Bliemer, johnr

MNL estimation with Generic attributes

Postby Yashin Ali » Wed Mar 16, 2022 12:31 am

Dear Sir,

I am trying to estimate the MNL model, the design consists of Generic attributes. While estimation, i thought of including 'ASC', but later found out the correct way to proceed for the estimation is to exclude the 'ASC' as mentioned by "Hensher, D. A., & J. M. R., & Greene, W. H. (2015). Applied Choice Analysis".

I want to include the socio-demographic variables, from which i want to capture the information of which alternative (I have 3 alternatives for an unlabeled experiment such as 'Option 1 ', 'Option 2' ,'Option 3') is preferred most by the respondents.

My question is:

When i include the socio-demographic variables, in each of the (in case of mine its 3) utility function, the estimation gives me an error. Where as if I exclude socio-demographic variables (say for example for the first utility function, then the estimation works. What is the reason behind it ?

Any suggestion of handling unlabelled datasets is highly appreciated.
Yashin Ali
 
Posts: 27
Joined: Tue Oct 12, 2021 5:57 pm

Re: MNL estimation with Generic attributes

Postby Michiel Bliemer » Wed Mar 16, 2022 4:57 pm

If J is the number of alternativesm then you can include a constant only in J-1 alternatives (generic alternatives in an unlabelled experiment typically have no constants as you mention) and you can only include socio-demographic variables as a main effect in J-1 alternatives. The reason is that choice probabilities rely on the differences in utilities between the alternatives.

For example,

U(A) = 0
U(B) = 2
U(C) = 5

will yield the same choice probabilities as

U(A) = 1
U(B) = 3
U(C) = 6

since the utility differences are the same.

If you include J constants then you overspecify the model. You need to normalise one of the constants to 0,
Similarly, if you add AGE to all alternatives, then it becomes

U(A) = 0 + beta * AGE
U(B) = 2 + beta * AGE
U(C) = 5 + beta * AGE

Since beta * AGE is the same for all alternatives, it simply drops out when computing choice probabillities (because only utility differences matter), which means that beta cannot be estimated. To ensure that all parameters are identifiable, you will need to normalise one of of them to zero, for example

U(A) = 0 + beta * AGE
U(B) = 2 + beta * AGE
U(C) = 5

However, these utility functions DO NOT MAKE SENSE in an unlabelled experiment with generic alternatives. In an unlabelled experiment, all utility fuctions need to be the same as otherwise the model cannot be interpreted. For this reason, socio-demographics should NOT be added as main effects in utility functions of generic alternatives. The only way to meaningfully include socio-demographics in an unlabelled experiment is by creating interactions, for example:

U(A) = 0 + b1 * cost + b2 * cost * AGE
U(B) = 2 + b1 * cost + b2 * cost * AGE
U(C) = 5 + b1 * cost + b2 * cost * AGE

In this case, parameter b2 describes how age influences cost sensitivity.

Note that if you have an opt-out alternative, then you can include socio-demographics as a main effect, for example:

U(A) = b1 * cost + b2 * AGE
U(B) = b1 * cost + b2 * AGE
U(C) = b1 * cost + b2 * AGE
(optout) = constant

To conclude, you need to think carefully about what utility functions are meaningful and make sure that all parameters are identifiable.

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

Re: MNL estimation with Generic attributes

Postby Yashin Ali » Thu Mar 17, 2022 9:48 pm

Thank you professor.
But citing your example:

U(A) = 0 + b1 * cost(A) + b2 * cost(A) * AGE
U(B) = 2 + b1 * cost(B) + b2 *cost(B) * AGE
U(C) = 5 + b1 * cost(C) + b2 * cost(C) * AGE

for the interaction term of the Age, it describes the average effect of cost and age. But if i wanted to capture the information of the certain age group or certain gender group, is it possible to capture those interaction information from the utility function? if so, then the utility function would be =

U(A) = 0 + b1 * cost(A) + b2 * cost(A) * (Gender == 1) + b3 * cost(A) * (AGE == 1) [; Gender = 1 = being male, AGE=1= >25 years)]
U(B) = 2 + b1 * cost(B) + b2 * cost(B) * (Gender == 1) + b3 * cost(B) * (AGE == 1) [; Gender = 1 = being male, AGE=1= >25 years)]
U(C) = 5 + b1 * cost(C) + b2 * cost(C) * (Gender == 1) + b3 * cost(C) * (AGE == 1) [; Gender = 1 = being male, AGE=1= >25 years)]
Yashin Ali
 
Posts: 27
Joined: Tue Oct 12, 2021 5:57 pm

Re: MNL estimation with Generic attributes

Postby Michiel Bliemer » Fri Mar 18, 2022 11:17 am

No, cost * age would not describe the average effect but rather the continuous effect that age has on the sensitivity to cost, where I assumed that age is a continuous variable. So age is a number between 18 and 100 or so.

From what you write, you would like to consider age as a categorical variable. That is possible as well, but may require more parameters to estimate. If you have three age categories, you would need to estimate 2 parameters for any interaction with age. In your example, you have defined two age categories only (below 25 and above 25) and the utility function looks correct.

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

Re: MNL estimation with Generic attributes

Postby Yashin Ali » Sat Mar 19, 2022 6:13 pm

Dear Professor,

Thank you for your reply.

I am bit confused about the statement "From what you write, you would like to consider age as a categorical variable. That is possible as well, but may require more parameters to estimate. If you have three age categories, you would need to estimate 2 parameters for any interaction with age".

Is Beta always One less than the number of categories present?

Well if that is the case, and if I have three age categories how does the utility function looks like? Say for example: Age = 18-25 (Category 1), 25-32 (Category 2), above 32 (Category 3) with Gender being Male and female only.

U(A) = ?
U(B) = ?
U(C) = ?
Yashin Ali
 
Posts: 27
Joined: Tue Oct 12, 2021 5:57 pm

Re: MNL estimation with Generic attributes

Postby Michiel Bliemer » Sun Mar 20, 2022 9:48 am

Yes with L levels in a categorical variable you will have L-1 parameters. Please read the literature about dummy or effects coding.

For example,

U(A) = 0 + b1 * cost(A) + b2 * cost(A) * (AGE <= 25) + b3 * cost(A) * ( 25 < AGE <= 32)

where AGE > 32 is used as the reference level that does not appear in the utility function and is normalised to zero in case of dummy coding. That means that b2 and b3 need to be interpreted as "relative to AGE > 32".

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

Re: MNL estimation with Generic attributes

Postby Yashin Ali » Thu Apr 28, 2022 3:12 am

Dear Sir,

Sorry for the late addition to the reply.

Even if i plan not to add the dummy variables, if I want to keep them as categorical, Is it also possible to include sociology-demographics in an unlabelled experiment is by creating interactions. Consider the following example:

U(A) = b1 * cost(A) + b2 * cost(A) * (Gender == 1) + b3 * cost(A) * (Gender == 2) [; Gender = 1 = male, 2 = female]
U(B) = b1 * cost(B) + b2 * cost(B) * (Gender == 1) + b3 * cost(B) * (Gender == 2) [; Gender = 1 = male, 2 = female]
U(C) = b1 * cost(C) + b2 * cost(C) * (Gender == 1) + b3 * cost(C)* (Gender == 2) [; Gender = 1 = male, 2 = female]

does the utility function states the sensitivity of the gender relative to cost ? Can i conclude which of the gender (male or female) is sensitivity to the cost while interpreting the parameter estimates ?
Yashin Ali
 
Posts: 27
Joined: Tue Oct 12, 2021 5:57 pm

Re: MNL estimation with Generic attributes

Postby Michiel Bliemer » Fri Apr 29, 2022 11:47 am

You would use this in estimation:

U(A) = b1 * cost(A) * (Gender == 1) + b2 * cost(A) * (Gender == 2)
U(B) = b1 * cost(A) * (Gender == 1) + b2 * cost(A) * (Gender == 2)
U(C) = b1 * cost(A) * (Gender == 1) + b2 * cost(A) * (Gender == 2)
[Gender: 1 = male, 2 = female]

This means that price sensitivy b1 is valid for Male, and b2 is valid for Female, from which you can determine which gender is more cost sensitive.

Another formulation that would work is:

U(A) = b1 * cost(A) + b2 * cost(A) * (Gender == 2)
U(B) = b1 * cost(A) + b2 * cost(A) * (Gender == 2)
U(C) = b1 * cost(A) + b2 * cost(A) * (Gender == 2)

Here, b1 denotes the cost sensitivity of Male, while b1+b2 denotes the cost sensitivity of Female. Therefore, if b2 is statistically not significant, then there is no gender difference with respect to cost sensitivity.

Your formulation would overspecify the model, you cannot estimate b1, b2, and b3, you can only estimate two of them.

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

Re: MNL estimation with Generic attributes

Postby Yashin Ali » Sat Apr 30, 2022 7:59 am

Thank you so much sir.

just a small piece of information is required.

1.When developing the interaction term, is it necessary that the socio- demographic variables needs to be interacted only with the attributes of the alternatives of the choice experiment or the interaction can take place between 2 socio-demographic variable in an unlabelled experiment?

Such as :
a) Age*price_1 (where price_1 is the attribute of an alternative) or
b) Age*Gender (where, they are two socio-demographic variable )


2. Are there any ways to identify the interaction term (will it be linear interaction or something else when considering them in utility function, any papers do you suggest to look into) ?
Yashin Ali
 
Posts: 27
Joined: Tue Oct 12, 2021 5:57 pm

Re: MNL estimation with Generic attributes

Postby Michiel Bliemer » Sun May 01, 2022 11:03 am

1. No you cannot interact two socio-demographic variables in an unlabelled experiment since sociodemographics are constant across all alternatives and multiplying two constants will remain a constant. You need to interact with a variable that varies to be able to estimate the parameter.

2. Interaction terms are almost always + X * Y, but you are free create other functional forms. There is not really any literature on this, building utility functions needs to be driven by hypotheses about the choice behaviour and of course a bit of trial and error.

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

Next

Return to Choice experiments - general

Who is online

Users browsing this forum: No registered users and 5 guests

cron