Model run by stephane.hess using Apollo 0.2.9 on R 4.0.5 for Darwin. www.ApolloChoiceModelling.com Model name : LC_MMNL Model description : Latent class with continuous random parameters on Swiss route choice data Model run at : 2023-05-11 08:14:08 Estimation method : bfgs Model diagnosis : successful convergence Optimisation diagnosis : Maximum found hessian properties : Negative definitive maximum eigenvalue : -0.007211 Number of individuals : 388 Number of rows in database : 3492 Number of modelled outcomes : 3492 Number of cores used : 4 Number of inter-individual draws : 500 (halton) LL(start) : -1698.77 LL (whole model) at equal shares, LL(0) : -2420.47 LL (whole model) at observed shares, LL(C) : -2420.39 LL(final, whole model) : -1501.79 Rho-squared vs equal shares : 0.3795 Adj.Rho-squared vs equal shares : 0.3733 Rho-squared vs observed shares : 0.3795 Adj.Rho-squared vs observed shares : 0.3742 AIC : 3033.59 BIC : 3125.96 LL(0,Class_1) : -2420.47 LL(final,Class_1) : -2653.58 LL(0,Class_2) : -2420.47 LL(final,Class_2) : -1637.26 Estimated parameters : 15 Time taken (hh:mm:ss) : 00:06:40.26 pre-estimation : 00:00:46.74 estimation : 00:02:43.37 initial estimation : 00:02:24.17 estimation after rescaling : 00:00:19.2 post-estimation : 00:03:10.15 Iterations : 71 initial estimation : 64 estimation after rescaling : 7 Unconstrained optimisation. Estimates: Estimate s.e. t.rat.(0) Rob.s.e. Rob.t.rat.(0) asc1 -0.02261 0.053383 -0.4236 0.058151 -0.3889 asc2 0.00000 NA NA NA NA log_tt_a_mu -1.60276 0.201919 -7.9376 0.299810 -5.3459 log_tt_b_mu -2.47577 0.111489 -22.2064 0.129731 -19.0839 log_tt_a_sig 0.55673 0.099537 5.5932 0.099251 5.6093 log_tt_b_sig 0.66734 0.076374 8.7378 0.073971 9.0217 tc_a -1.24218 0.225380 -5.5115 0.423950 -2.9300 tc_b -0.17075 0.022444 -7.6075 0.028889 -5.9104 hw_a -0.04594 0.007143 -6.4312 0.012609 -3.6431 hw_b -0.05082 0.003743 -13.5774 0.005631 -9.0258 ch_a -0.52097 0.157554 -3.3066 0.271094 -1.9217 ch_b -1.82720 0.106937 -17.0867 0.194912 -9.3745 delta_a_mu -1.63081 5.245770 -0.3109 0.837983 -1.9461 delta_a_sig 1.51769 10.392100 0.1460 1.326253 1.1443 gamma_commute_a 0.47198 1.554544 0.3036 0.674869 0.6994 gamma_car_av_a -0.34399 1.137173 -0.3025 0.552229 -0.6229 delta_b 0.00000 NA NA NA NA gamma_commute_b 0.00000 NA NA NA NA gamma_car_av_b 0.00000 NA NA NA NA Summary of class allocation for model component : Mean prob. Class_1 0.2398 Class_2 0.7602 Overview of choices for MNL model component Class_1: alt1 alt2 Times available 3492.00 3492.00 Times chosen 1734.00 1758.00 Percentage chosen overall 49.66 50.34 Percentage chosen when available 49.66 50.34 Overview of choices for MNL model component Class_2: alt1 alt2 Times available 3492.00 3492.00 Times chosen 1734.00 1758.00 Percentage chosen overall 49.66 50.34 Percentage chosen when available 49.66 50.34 Classical covariance matrix: asc1 log_tt_a_mu log_tt_b_mu log_tt_a_sig log_tt_b_sig tc_a asc1 0.002850 -1.1647e-04 1.2572e-04 -7.091e-05 1.700e-05 1.6381e-04 log_tt_a_mu -1.1647e-04 0.040771 -0.005053 -0.004698 7.957e-05 -0.038492 log_tt_b_mu 1.2572e-04 -0.005053 0.012430 -5.072e-05 -0.004010 0.004693 log_tt_a_sig -7.091e-05 -0.004698 -5.072e-05 0.009908 -0.001271 0.003923 log_tt_b_sig 1.700e-05 7.957e-05 -0.004010 -0.001271 0.005833 -1.2974e-04 tc_a 1.6381e-04 -0.038492 0.004693 0.003923 -1.2974e-04 0.050796 tc_b -2.602e-05 6.8432e-04 -0.001673 -8.122e-05 4.2986e-04 -6.2494e-04 hw_a 4.462e-06 -4.5251e-04 8.906e-05 -8.986e-05 7.780e-06 6.1405e-04 hw_b -9.544e-07 4.220e-05 -9.202e-05 5.077e-06 -1.453e-05 -8.567e-05 ch_a 4.758e-05 -0.010047 0.002344 0.001317 -3.6730e-04 0.011837 ch_b -4.625e-05 0.007263 -0.004290 -0.001249 -3.838e-05 -0.011622 delta_a_mu -1.3472e-04 -0.021332 0.002210 -3.6499e-04 0.001854 0.038444 delta_a_sig 3.882e-05 0.029065 -0.003598 0.006671 -0.004566 -0.038442 gamma_commute_a 2.033e-06 0.017776 -0.003508 -0.003273 6.2390e-04 -0.027098 gamma_car_av_a 3.4612e-04 -0.008546 0.001701 0.001701 -3.7963e-04 0.011653 tc_b hw_a hw_b ch_a ch_b delta_a_mu asc1 -2.602e-05 4.462e-06 -9.544e-07 4.758e-05 -4.625e-05 -1.3472e-04 log_tt_a_mu 6.8432e-04 -4.5251e-04 4.220e-05 -0.010047 0.007263 -0.021332 log_tt_b_mu -0.001673 8.906e-05 -9.202e-05 0.002344 -0.004290 0.002210 log_tt_a_sig -8.122e-05 -8.986e-05 5.077e-06 0.001317 -0.001249 -3.6499e-04 log_tt_b_sig 4.2986e-04 7.780e-06 -1.453e-05 -3.6730e-04 -3.838e-05 0.001854 tc_a -6.2494e-04 6.1405e-04 -8.567e-05 0.011837 -0.011622 0.038444 tc_b 5.0375e-04 -1.482e-05 1.721e-05 -7.8966e-04 6.3821e-04 9.7770e-04 hw_a -1.482e-05 5.102e-05 -1.085e-05 3.6485e-04 -1.1818e-04 -9.197e-05 hw_b 1.721e-05 -1.085e-05 1.401e-05 -5.430e-05 1.4750e-04 3.216e-05 ch_a -7.8966e-04 3.6485e-04 -5.430e-05 0.024823 -0.003241 -0.015229 ch_b 6.3821e-04 -1.1818e-04 1.4750e-04 -0.003241 0.011435 -0.017013 delta_a_mu 9.7770e-04 -9.197e-05 3.216e-05 -0.015229 -0.017013 27.518104 delta_a_sig -3.4876e-04 2.8320e-04 -3.0238e-04 0.003302 0.012548 -54.396571 gamma_commute_a 5.6685e-04 -7.2036e-04 2.0779e-04 -0.021482 0.009039 -7.754337 gamma_car_av_a -4.7378e-04 -1.1509e-04 1.7098e-04 0.010695 -0.004725 5.392797 delta_a_sig gamma_commute_a gamma_car_av_a asc1 3.882e-05 2.033e-06 3.4612e-04 log_tt_a_mu 0.029065 0.017776 -0.008546 log_tt_b_mu -0.003598 -0.003508 0.001701 log_tt_a_sig 0.006671 -0.003273 0.001701 log_tt_b_sig -0.004566 6.2390e-04 -3.7963e-04 tc_a -0.038442 -0.027098 0.011653 tc_b -3.4876e-04 5.6685e-04 -4.7378e-04 hw_a 2.8320e-04 -7.2036e-04 -1.1509e-04 hw_b -3.0238e-04 2.0779e-04 1.7098e-04 ch_a 0.003302 -0.021482 0.010695 ch_b 0.012548 0.009039 -0.004725 delta_a_mu -54.396571 -7.754337 5.392797 delta_a_sig 107.995751 15.279841 -10.850425 gamma_commute_a 15.279841 2.416607 -1.553102 gamma_car_av_a -10.850425 -1.553102 1.293163 Robust covariance matrix: asc1 log_tt_a_mu log_tt_b_mu log_tt_a_sig log_tt_b_sig tc_a asc1 0.003382 3.2485e-04 4.3484e-04 1.2649e-04 1.3631e-04 3.5797e-04 log_tt_a_mu 3.2485e-04 0.089886 -0.017269 -0.007978 8.2659e-04 -0.119878 log_tt_b_mu 4.3484e-04 -0.017269 0.016830 0.001351 -0.003834 0.024021 log_tt_a_sig 1.2649e-04 -0.007978 0.001351 0.009851 -0.001297 0.010314 log_tt_b_sig 1.3631e-04 8.2659e-04 -0.003834 -0.001297 0.005472 -0.001279 tc_a 3.5797e-04 -0.119878 0.024021 0.010314 -0.001279 0.179733 tc_b -9.778e-05 0.003360 -0.002813 -4.3148e-04 4.7411e-04 -0.004669 hw_a -7.984e-05 -0.001506 3.5326e-04 -2.9201e-04 3.083e-05 0.002177 hw_b -1.134e-05 2.4316e-04 -1.9776e-04 5.708e-05 -3.237e-05 -4.0447e-04 ch_a -3.5801e-04 -0.058427 0.012769 0.006622 -0.001392 0.083643 ch_b -0.001327 0.038494 -0.015362 -0.005034 4.7226e-04 -0.060113 delta_a_mu 0.007141 -0.058428 0.017913 0.014383 -4.450e-05 0.097752 delta_a_sig -0.012102 0.075930 -0.019393 -0.022098 -9.8161e-04 -0.102103 gamma_commute_a -6.6263e-04 0.103142 -0.027463 -0.017782 0.004434 -0.156648 gamma_car_av_a 0.002218 -0.076771 0.014654 0.017838 -0.002992 0.105323 tc_b hw_a hw_b ch_a ch_b delta_a_mu asc1 -9.778e-05 -7.984e-05 -1.134e-05 -3.5801e-04 -0.001327 0.007141 log_tt_a_mu 0.003360 -0.001506 2.4316e-04 -0.058427 0.038494 -0.058428 log_tt_b_mu -0.002813 3.5326e-04 -1.9776e-04 0.012769 -0.015362 0.017913 log_tt_a_sig -4.3148e-04 -2.9201e-04 5.708e-05 0.006622 -0.005034 0.014383 log_tt_b_sig 4.7411e-04 3.083e-05 -3.237e-05 -0.001392 4.7226e-04 -4.450e-05 tc_a -0.004669 0.002177 -4.0447e-04 0.083643 -0.060113 0.097752 tc_b 8.3459e-04 -5.704e-05 3.440e-05 -0.003216 0.002942 -0.001804 hw_a -5.704e-05 1.5899e-04 -4.292e-05 0.001181 -5.7416e-04 -6.992e-05 hw_b 3.440e-05 -4.292e-05 3.170e-05 -1.9901e-04 3.4460e-04 -2.3330e-04 ch_a -0.003216 0.001181 -1.9901e-04 0.073492 -0.027227 6.4190e-04 ch_b 0.002942 -5.7416e-04 3.4460e-04 -0.027227 0.037991 -0.052924 delta_a_mu -0.001804 -6.992e-05 -2.3330e-04 6.4190e-04 -0.052924 0.702215 delta_a_sig 0.003460 0.001834 -6.0615e-04 -0.033536 0.047629 -0.983897 gamma_commute_a 0.004960 -0.003466 0.001199 -0.085959 0.057841 -0.313832 gamma_car_av_a -0.003930 -7.0844e-04 6.2903e-04 0.077452 -0.039149 0.041954 delta_a_sig gamma_commute_a gamma_car_av_a asc1 -0.012102 -6.6263e-04 0.002218 log_tt_a_mu 0.075930 0.103142 -0.076771 log_tt_b_mu -0.019393 -0.027463 0.014654 log_tt_a_sig -0.022098 -0.017782 0.017838 log_tt_b_sig -9.8161e-04 0.004434 -0.002992 tc_a -0.102103 -0.156648 0.105323 tc_b 0.003460 0.004960 -0.003930 hw_a 0.001834 -0.003466 -7.0844e-04 hw_b -6.0615e-04 0.001199 6.2903e-04 ch_a -0.033536 -0.085959 0.077452 ch_b 0.047629 0.057841 -0.039149 delta_a_mu -0.983897 -0.313832 0.041954 delta_a_sig 1.758947 0.403516 -0.222120 gamma_commute_a 0.403516 0.455449 -0.109450 gamma_car_av_a -0.222120 -0.109450 0.304957 Classical correlation matrix: asc1 log_tt_a_mu log_tt_b_mu log_tt_a_sig log_tt_b_sig tc_a asc1 1.000000 -0.010805 0.021124 -0.013344 0.004171 0.013615 log_tt_a_mu -0.010805 1.000000 -0.224461 -0.233775 0.005159 -0.845815 log_tt_b_mu 0.021124 -0.224461 1.000000 -0.004571 -0.470992 0.186764 log_tt_a_sig -0.013344 -0.233775 -0.004571 1.000000 -0.167204 0.174871 log_tt_b_sig 0.004171 0.005159 -0.470992 -0.167204 1.000000 -0.007537 tc_a 0.013615 -0.845815 0.186764 0.174871 -0.007537 1.000000 tc_b -0.021714 0.150999 -0.668776 -0.036355 0.250771 -0.123543 hw_a 0.011702 -0.313748 0.111839 -0.126392 0.014262 0.381435 hw_b -0.004777 0.055831 -0.220513 0.013627 -0.050813 -0.101554 ch_a 0.005657 -0.315820 0.133452 0.083966 -0.030524 0.333340 ch_b -0.008101 0.336366 -0.359844 -0.117313 -0.004699 -0.482231 delta_a_mu -4.8108e-04 -0.020139 0.003779 -6.9901e-04 0.004627 0.032517 delta_a_sig 6.998e-05 0.013851 -0.003106 0.006449 -0.005753 -0.016413 gamma_commute_a 2.450e-05 0.056629 -0.020241 -0.021150 0.005255 -0.077342 gamma_car_av_a 0.005702 -0.037217 0.013419 0.015032 -0.004371 0.045468 tc_b hw_a hw_b ch_a ch_b delta_a_mu asc1 -0.021714 0.011702 -0.004777 0.005657 -0.008101 -4.8108e-04 log_tt_a_mu 0.150999 -0.313748 0.055831 -0.315820 0.336366 -0.020139 log_tt_b_mu -0.668776 0.111839 -0.220513 0.133452 -0.359844 0.003779 log_tt_a_sig -0.036355 -0.126392 0.013627 0.083966 -0.117313 -6.9901e-04 log_tt_b_sig 0.250771 0.014262 -0.050813 -0.030524 -0.004699 0.004627 tc_a -0.123543 0.381435 -0.101554 0.333340 -0.482231 0.032517 tc_b 1.000000 -0.092427 0.204826 -0.223307 0.265907 0.008304 hw_a -0.092427 1.000000 -0.405928 0.324204 -0.154727 -0.002454 hw_b 0.204826 -0.405928 1.000000 -0.092070 0.368496 0.001638 ch_a -0.223307 0.324204 -0.092070 1.000000 -0.192344 -0.018426 ch_b 0.265907 -0.154727 0.368496 -0.192344 1.000000 -0.030329 delta_a_mu 0.008304 -0.002454 0.001638 -0.018426 -0.030329 1.000000 delta_a_sig -0.001495 0.003815 -0.007774 0.002016 0.011291 -0.997835 gamma_commute_a 0.016246 -0.064875 0.035711 -0.087708 0.054374 -0.950895 gamma_car_av_a -0.018563 -0.014170 0.040170 0.059691 -0.038852 0.904020 delta_a_sig gamma_commute_a gamma_car_av_a asc1 6.998e-05 2.450e-05 0.005702 log_tt_a_mu 0.013851 0.056629 -0.037217 log_tt_b_mu -0.003106 -0.020241 0.013419 log_tt_a_sig 0.006449 -0.021150 0.015032 log_tt_b_sig -0.005753 0.005255 -0.004371 tc_a -0.016413 -0.077342 0.045468 tc_b -0.001495 0.016246 -0.018563 hw_a 0.003815 -0.064875 -0.014170 hw_b -0.007774 0.035711 0.040170 ch_a 0.002016 -0.087708 0.059691 ch_b 0.011291 0.054374 -0.038852 delta_a_mu -0.997835 -0.950895 0.904020 delta_a_sig 1.000000 0.945829 -0.918157 gamma_commute_a 0.945829 1.000000 -0.878558 gamma_car_av_a -0.918157 -0.878558 1.000000 Robust correlation matrix: asc1 log_tt_a_mu log_tt_b_mu log_tt_a_sig log_tt_b_sig tc_a asc1 1.00000 0.01863 0.05764 0.02192 0.03169 0.01452 log_tt_a_mu 0.01863 1.00000 -0.44400 -0.26812 0.03727 -0.94314 log_tt_b_mu 0.05764 -0.44400 1.00000 0.10491 -0.39950 0.43675 log_tt_a_sig 0.02192 -0.26812 0.10491 1.00000 -0.17673 0.24513 log_tt_b_sig 0.03169 0.03727 -0.39950 -0.17673 1.00000 -0.04079 tc_a 0.01452 -0.94314 0.43675 0.24513 -0.04079 1.00000 tc_b -0.05821 0.38799 -0.75057 -0.15048 0.22186 -0.38125 hw_a -0.10888 -0.39838 0.21596 -0.23333 0.03305 0.40728 hw_b -0.03464 0.14404 -0.27074 0.10213 -0.07773 -0.16944 ch_a -0.02271 -0.71887 0.36307 0.24611 -0.06940 0.72777 ch_b -0.11704 0.65874 -0.60755 -0.26020 0.03276 -0.72748 delta_a_mu 0.14654 -0.23256 0.16478 0.17294 -7.1782e-04 0.27516 delta_a_sig -0.15691 0.19096 -0.11271 -0.16788 -0.01001 -0.18159 gamma_commute_a -0.01688 0.50977 -0.31368 -0.26548 0.08882 -0.54751 gamma_car_av_a 0.06907 -0.46370 0.20455 0.32546 -0.07324 0.44987 tc_b hw_a hw_b ch_a ch_b delta_a_mu asc1 -0.05821 -0.108883 -0.03464 -0.022710 -0.11704 0.146537 log_tt_a_mu 0.38799 -0.398380 0.14404 -0.718867 0.65874 -0.232561 log_tt_b_mu -0.75057 0.215955 -0.27074 0.363073 -0.60755 0.164778 log_tt_a_sig -0.15048 -0.233334 0.10213 0.246109 -0.26020 0.172938 log_tt_b_sig 0.22186 0.033055 -0.07773 -0.069404 0.03276 -7.1782e-04 tc_a -0.38125 0.407281 -0.16944 0.727773 -0.72748 0.275155 tc_b 1.00000 -0.156592 0.21146 -0.410651 0.52245 -0.074535 hw_a -0.15659 1.000000 -0.60459 0.345477 -0.23362 -0.006617 hw_b 0.21146 -0.604585 1.00000 -0.130377 0.31400 -0.049446 ch_a -0.41065 0.345477 -0.13038 1.000000 -0.51527 0.002826 ch_b 0.52245 -0.233619 0.31400 -0.515269 1.00000 -0.324024 delta_a_mu -0.07454 -0.006617 -0.04945 0.002826 -0.32402 1.000000 delta_a_sig 0.09030 0.109688 -0.08117 -0.093274 0.18425 -0.885296 gamma_commute_a 0.25441 -0.407348 0.31547 -0.469844 0.43972 -0.554936 gamma_car_av_a -0.24635 -0.101741 0.20230 0.517361 -0.36371 0.090661 delta_a_sig gamma_commute_a gamma_car_av_a asc1 -0.15691 -0.01688 0.06907 log_tt_a_mu 0.19096 0.50977 -0.46370 log_tt_b_mu -0.11271 -0.31368 0.20455 log_tt_a_sig -0.16788 -0.26548 0.32546 log_tt_b_sig -0.01001 0.08882 -0.07324 tc_a -0.18159 -0.54751 0.44987 tc_b 0.09030 0.25441 -0.24635 hw_a 0.10969 -0.40735 -0.10174 hw_b -0.08117 0.31547 0.20230 ch_a -0.09327 -0.46984 0.51736 ch_b 0.18425 0.43972 -0.36371 delta_a_mu -0.88530 -0.55494 0.09066 delta_a_sig 1.00000 0.45083 -0.30328 gamma_commute_a 0.45083 1.00000 -0.29368 gamma_car_av_a -0.30328 -0.29368 1.00000 20 worst outliers in terms of lowest average per choice prediction: ID Avg prob per choice 15174 0.2334764 23205 0.2540815 16178 0.2565350 22580 0.2586366 16489 0.2961697 76862 0.3019948 21623 0.3222179 24627 0.3253215 16020 0.3467803 22961 0.3471214 12534 0.3521441 20100 0.3629753 21922 0.3638577 16184 0.3659995 15056 0.3765923 22820 0.3821977 20352 0.3901845 13214 0.3989711 17645 0.4038158 16617 0.4080488 Changes in parameter estimates from starting values: Initial Estimate Difference asc1 0.00000 -0.02261 -0.022614 asc2 0.00000 0.00000 0.000000 log_tt_a_mu -3.00000 -1.60276 1.397237 log_tt_b_mu -3.00000 -2.47577 0.524227 log_tt_a_sig 0.20000 0.55673 0.356730 log_tt_b_sig 0.10000 0.66734 0.567344 tc_a 0.00000 -1.24218 -1.242183 tc_b 0.00000 -0.17075 -0.170747 hw_a -0.03960 -0.04594 -0.006336 hw_b -0.04790 -0.05082 -0.002921 ch_a -0.76240 -0.52097 0.241432 ch_b -2.17250 -1.82720 0.345305 delta_a_mu 0.03290 -1.63081 -1.663707 delta_a_sig 0.03290 1.51769 1.484787 gamma_commute_a 0.00000 0.47198 0.471983 gamma_car_av_a 0.00000 -0.34399 -0.343993 delta_b 0.00000 0.00000 0.000000 gamma_commute_b 0.00000 0.00000 0.000000 gamma_car_av_b 0.00000 0.00000 0.000000 Settings and functions used in model definition: apollo_control -------------- Value modelName "LC_MMNL" modelDescr "Latent class with continuous random parameters on Swiss route choice data" indivID "ID" nCores "4" outputDirectory "output/" mixing "TRUE" debug "FALSE" workInLogs "FALSE" seed "13" HB "FALSE" noValidation "FALSE" noDiagnostics "FALSE" calculateLLC "TRUE" panelData "TRUE" analyticGrad "TRUE" analyticGrad_manualSet "FALSE" overridePanel "FALSE" preventOverridePanel "FALSE" noModification "FALSE" Hessian routines attempted -------------------------- numerical jacobian of LL analytical gradient Scaling in estimation --------------------- Value asc1 0.02261391 log_tt_a_mu 1.60203192 log_tt_b_mu 2.47567744 log_tt_a_sig 0.55697571 log_tt_b_sig 0.66755637 tc_a 1.24384327 tc_b 0.17074535 hw_a 0.04587130 hw_b 0.05084116 ch_a 0.52113405 ch_b 1.82751703 delta_a_mu 1.62905888 delta_a_sig 1.51802252 gamma_commute_a 0.47202604 gamma_car_av_a 0.34392727 Scaling used in computing Hessian --------------------------------- Value asc1 0.02261380 log_tt_a_mu 1.60276274 log_tt_b_mu 2.47577257 log_tt_a_sig 0.55673027 log_tt_b_sig 0.66734387 tc_a 1.24218300 tc_b 0.17074653 hw_a 0.04593637 hw_b 0.05082059 ch_a 0.52096819 ch_b 1.82719514 delta_a_mu 1.63080654 delta_a_sig 1.51768727 gamma_commute_a 0.47198265 gamma_car_av_a 0.34399298 apollo_randCoeff ------------------ function(apollo_beta, apollo_inputs){ randcoeff = list() randcoeff[["tt_a"]] = -exp(log_tt_a_mu + log_tt_a_sig*draws_tt) randcoeff[["tt_b"]] = -exp(log_tt_b_mu + log_tt_b_sig*draws_tt) randcoeff[["delta_a"]] = delta_a_mu + delta_a_sig*draws_pi return(randcoeff) } apollo_lcPars --------------- function(apollo_beta, apollo_inputs){ lcpars = list() lcpars[["tt"]] = list(tt_a, tt_b) lcpars[["tc"]] = list(tc_a, tc_b) lcpars[["hw"]] = list(hw_a, hw_b) lcpars[["ch"]] = list(ch_a, ch_b) V=list() V[["class_a"]] = delta_a + gamma_commute_a*commute + gamma_car_av_a*car_availability V[["class_b"]] = delta_b + gamma_commute_b*commute + gamma_car_av_b*car_availability classAlloc_settings = list( classes = c(class_a=1, class_b=2), utilities = V ) lcpars[["pi_values"]] = apollo_classAlloc(classAlloc_settings) return(lcpars) } apollo_probabilities ---------------------- function(apollo_beta, apollo_inputs, functionality="estimate"){ ### Attach inputs and detach after function exit apollo_attach(apollo_beta, apollo_inputs) on.exit(apollo_detach(apollo_beta, apollo_inputs)) ### Create list of probabilities P P = list() ### Define settings for MNL model component that are generic across classes mnl_settings = list( alternatives = c(alt1=1, alt2=2), avail = list(alt1=1, alt2=1), choiceVar = choice ) ### Loop over classes for(s in 1:2){ ### Compute class-specific utilities V=list() V[["alt1"]] = asc1 + tc[[s]]*tc1 + tt[[s]]*tt1 + hw[[s]]*hw1 + ch[[s]]*ch1 V[["alt2"]] = asc2 + tc[[s]]*tc2 + tt[[s]]*tt2 + hw[[s]]*hw2 + ch[[s]]*ch2 mnl_settings$utilities = V mnl_settings$componentName = paste0("Class_",s) ### Compute within-class choice probabilities using MNL model P[[paste0("Class_",s)]] = apollo_mnl(mnl_settings, functionality) ### Take product across observation for same individual P[[paste0("Class_",s)]] = apollo_panelProd(P[[paste0("Class_",s)]], apollo_inputs ,functionality) ### Average across inter-individual draws within classes P[[paste0("Class_",s)]] = apollo_avgInterDraws(P[[paste0("Class_",s)]], apollo_inputs, functionality) } ### Compute latent class model probabilities lc_settings = list(inClassProb = P, classProb=pi_values) P[["model"]] = apollo_lc(lc_settings, apollo_inputs, functionality) ### Average across inter-individual draws in class allocation probabilities P[["model"]] = apollo_avgInterDraws(P[["model"]], apollo_inputs, functionality) ### Prepare and return outputs of function P = apollo_prepareProb(P, apollo_inputs, functionality) return(P) }