Mixtures of logit with Monte-Carlo 500 antithetic draws

Estimation of a mixtures of logit models where the integral is approximated using MonteCarlo integration with antithetic draws.

author:

Michel Bierlaire, EPFL

date:

Thu Apr 13 22:43:46 2023

import biogeme.biogeme_logging as blog
from biogeme.expressions import bioDraws
from b07estimation_specification import get_biogeme
logger = blog.get_screen_logger(level=blog.INFO)
logger.info('Example b07estimation_monte_carlo_anti_500.py')
Example b07estimation_monte_carlo_anti_500.py
R = 500
the_draws = bioDraws('B_TIME_RND', 'NORMAL_ANTI')
the_biogeme = get_biogeme(the_draws=the_draws, number_of_draws=R)
the_biogeme.modelName = 'b07estimation_monte_carlo_anti_500'
File /var/folders/rp/ppksq7xd6_x7p0jb0t73x7vw0000gq/T/tmpqn6k2gl4/2a4f6434-ce85-462b-bfc9-742495be8e01 has been parsed.
results = the_biogeme.estimate()
*** Initial values of the parameters are obtained from the file __b07estimation_monte_carlo_anti_500.iter
Parameter values restored from __b07estimation_monte_carlo_anti_500.iter
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.         asc_car       asc_train          b_cost          b_time        b_time_s     Function    Relgrad   Radius      Rho
    0          -0.082           -0.79           -0.32              -1            0.87      5.4e+03      0.046       10        1   ++
    1           0.016           -0.57              -1            -1.6            0.94      5.2e+03     0.0095    1e+02      1.1   ++
    2           0.099           -0.43            -1.2            -2.1             1.4      5.2e+03     0.0056    1e+03      1.1   ++
    3            0.13           -0.41            -1.3            -2.2             1.6      5.2e+03    0.00076    1e+04      1.1   ++
    4            0.13           -0.41            -1.3            -2.2             1.7      5.2e+03    1.3e-05    1e+05        1   ++
    5            0.13           -0.41            -1.3            -2.2             1.7      5.2e+03    3.9e-09    1e+05        1   ++
print(results.short_summary())
pandas_results = results.getEstimatedParameters()
pandas_results
Results for model b07estimation_monte_carlo_anti_500
Nbr of parameters:              5
Sample size:                    6768
Excluded data:                  3960
Final log likelihood:           -5217.248
Akaike Information Criterion:   10444.5
Bayesian Information Criterion: 10478.6
Value Rob. Std err Rob. t-test Rob. p-value
asc_car 0.133782 0.051774 2.583969 9.767070e-03
asc_train -0.406542 0.065962 -6.163276 7.125507e-10
b_cost -1.284681 0.085936 -14.949356 0.000000e+00
b_time -2.248763 0.117118 -19.200897 0.000000e+00
b_time_s 1.654652 0.134305 12.320080 0.000000e+00


Total running time of the script: (1 minutes 7.365 seconds)

Gallery generated by Sphinx-Gallery