MDC Procedure

Example 23.4 Testing for Homoscedasticity of the Utility Function

(View the complete code for this example.)

The conditional logit model imposes equal variances on random components of utility of all alternatives. This assumption can often be too restrictive and the calculated results misleading. This example shows several approaches to testing the homoscedasticity assumption.

The section Getting Started: MDC Procedure analyzes an HEV model by using Daganzo’s trinomial choice data and displays the HEV parameter estimates in Figure 15. The inverted scale estimates for mode "2" and mode "3" suggest that the conditional logit model (which imposes equal variances on random components of utility of all alternatives) might be misleading. The HEV estimation summary from that analysis is repeated in Output 23.4.1.

Output 23.4.1: HEV Estimation Summary (theta 1 equals 1)

Model Fit Summary
Dependent Variabledecision
Number of Observations50
Number of Cases150
Log Likelihood-33.41383
Maximum Absolute Gradient0.0000218
Number of Iterations11
Optimization MethodDual Quasi-Newton
AIC72.82765
Schwarz Criterion78.56372


You can estimate the HEV model with unit scale restrictions on all three alternatives (theta 1 equals theta 2 equals theta 3 equals 1) with the following statements.

/*-- HEV Estimation --*/
proc mdc data=newdata;
   model decision = ttime /
            type=hev
            nchoice=3
            hev=(unitscale=1 2 3, integrate=laguerre)
            covest=hess;
   id pid;
run;

Output 23.4.2 displays the estimation summary.

Output 23.4.2: HEV Estimation Summary (theta 1 equals theta 2 equals theta 3 equals 1)

The MDC Procedure
 
Heteroscedastic Extreme Value Model Estimates

Model Fit Summary
Dependent Variabledecision
Number of Observations50
Number of Cases150
Log Likelihood-34.12756
Maximum Absolute Gradient6.7951E-9
Number of Iterations5
Optimization MethodDual Quasi-Newton
AIC70.25512
Schwarz Criterion72.16714


The test for scale equivalence (SCALE2=SCALE3=1) is performed using a likelihood ratio test statistic. The following SAS statements compute the test statistic (1.4276) and its p-value (0.4898) from the log-likelihood values in Output 23.4.1 and Output 23.4.2:

data _null_;
   /*-- test for H0: scale2 = scale3 = 1 --*/
   /*  ln L(max) = -34.1276                */
   /*  ln L(0)   = -33.4138                */
   stat = -2 * ( - 34.1276 + 33.4138 );
   df = 2;
   p_value = 1 - probchi(stat, df);
   put stat= p_value=;
run;

The test statistic fails to reject the null hypothesis of equal scale parameters, which implies that the random utility function is homoscedastic.

A multinomial probit model also allows heteroscedasticity of the random components of utility for different alternatives. Consider the utility function

upper U Subscript i j Baseline equals upper V Subscript i j Baseline plus epsilon Subscript i j

where

bold-italic epsilon Subscript i Baseline tilde upper N left-parenthesis bold 0 comma Start 3 By 3 Matrix 1st Row 1st Column 1 2nd Column 0 3rd Column 0 2nd Row 1st Column 0 2nd Column 1 3rd Column 0 3rd Row 1st Column 0 2nd Column 0 3rd Column sigma 3 squared EndMatrix right-parenthesis

This multinomial probit model is estimated by using the following statements:

/*-- Heteroscedastic Multinomial Probit --*/
proc mdc data=newdata;
   model decision = ttime /
            type=mprobit
            nchoice=3
            unitvariance=(1 2)
            covest=hess;
   id pid;
   restrict RHO_31 = 0;
run;

The estimation summary is displayed in Output 23.4.3.

Output 23.4.3: Heteroscedastic Multinomial Probit Estimation Summary

The MDC Procedure
 
Multinomial Probit Estimates

Model Fit Summary
Dependent Variabledecision
Number of Observations50
Number of Cases150
Log Likelihood-33.88604
Log Likelihood Null (LogL(0))-54.93061
Maximum Absolute Gradient5.60276E-6
Number of Iterations8
Optimization MethodDual Quasi-Newton
AIC71.77209
Schwarz Criterion75.59613
Number of Simulations100
Starting Point of Halton Sequence11


Next, the multinomial probit model with unit variances (sigma 1 equals sigma 2 equals sigma 3 equals 1) is estimated in the following statements:

/*-- Homoscedastic Multinomial Probit --*/
proc mdc data=newdata;
   model decision = ttime /
             type=mprobit
             nchoice=3
             unitvariance=(1 2 3)
             covest=hess;
   id pid;
   restrict RHO_21 = 0;
run;

The estimation summary is displayed in Output 23.4.4.

Output 23.4.4: Homoscedastic Multinomial Probit Estimation Summary

The MDC Procedure
 
Multinomial Probit Estimates

Model Fit Summary
Dependent Variabledecision
Number of Observations50
Number of Cases150
Log Likelihood-34.54252
Log Likelihood Null (LogL(0))-54.93061
Maximum Absolute Gradient1.37303E-7
Number of Iterations5
Optimization MethodDual Quasi-Newton
AIC71.08505
Schwarz Criterion72.99707
Number of Simulations100
Starting Point of Halton Sequence11


The test for homoscedasticity (sigma 3 = 1) under sigma 1 equals sigma 2 equals 1 shows that the error variance is not heteroscedastic since the test statistic (1.313) is less than chi Subscript 0.05 comma 1 Superscript 2 Baseline equals 3.84. The marginal probability or p-value computed in the following statements from the PROBCHI function is 0.2519:

data _null_;
   /*-- test for H0: sigma3 = 1 --*/
   /*   ln L(max) = -33.8860      */
   /*   ln L(0)   = -34.5425      */
   stat = -2 * ( -34.5425 + 33.8860 );
   df = 1;
   p_value = 1 - probchi(stat, df);
   put stat= p_value=;
run;
Last updated: June 19, 2025