21a. Assisted specification¶

Example of the estimation of several versions of the model using assisted specification algorithm. The catalog of specifications is defined in 21b. Specification of a catalog of models. All specifications are estimated. Have a look at plot_b22a_multiple_models for an example where the number of specifications is too high to be enumerated.

Michel Bierlaire, EPFL Sat Jun 28 2025, 19:21:26

import biogeme.biogeme_logging as blog
from biogeme.assisted import AssistedSpecification
from biogeme.multiobjectives import loglikelihood_dimension
from biogeme.results_processing import compile_estimation_results

from plot_b21b_multiple_models_spec import PARETO_FILE_NAME, the_biogeme

logger = blog.get_screen_logger(blog.INFO)
logger.info('Example b21a_multiple_models')
income_segmentation=INCOME: [{0: 'inc-zero', 1: 'inc-under50', 2: 'inc-50-100', 3: 'inc-100+', 4: 'inc-unknown'}] ref: inc-zero
Example b21a_multiple_models

Creation of the object capturing the assisted specification algorithm. Its constructor takes three arguments:

  • the biogeme object containing the specifications and the database,

  • an object defining the objectives to minimize. Here, we use the opposite of the log likelihood and the number of estimated parameters.

  • the name of the file where the estimated are saved, and organized into a Pareto set.

assisted_specification = AssistedSpecification(
    biogeme_object=the_biogeme,
    multi_objectives=loglikelihood_dimension,
    pareto_file_name=PARETO_FILE_NAME,
)
Unable to read file b21_multiple_models.pareto. Pareto set empty.

The algorithm is run.

non_dominated_models = assisted_specification.run()
Biogeme parameters read from biogeme.toml.
Model with 4 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000000
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time          b_cost         asc_car     Function    Relgrad   Radius      Rho
    0           -0.92           -0.67           -0.88           -0.49      5.4e+03      0.041       10      1.1   ++
    1           -0.73            -1.2              -1           -0.18      5.3e+03     0.0072    1e+02      1.1   ++
    2            -0.7            -1.3            -1.1           -0.16      5.3e+03    0.00018    1e+03        1   ++
    3            -0.7            -1.3            -1.1           -0.16      5.3e+03    1.1e-07    1e+03        1   ++
default_specification=asc:no_seg;b_cost:no_seg;train_tt:linear
We consider all possible combinations of the catalogs.
Model 0/36
Biogeme parameters read from biogeme.toml.
Model with 11 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000001
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time     lambda_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.44           -0.66            -0.9               2              -1           -0.11           -0.35           -0.42           -0.06           -0.43           -0.22      5.7e+03      0.095        1     0.68    +
    1            0.56            -1.4            -1.6             1.1           -0.96           -0.51           -0.49             0.3           0.066           -0.52            0.77      5.3e+03       0.02        1     0.84    +
    2            0.66            -1.2            -2.2            0.34            -1.6           -0.36            0.25            0.62            0.96           -0.14            0.38      5.1e+03      0.029        1     0.87    +
    3            0.33            -1.3            -1.7            0.42            -1.5           -0.37            0.23            0.59            0.84            -0.3            0.32      5.1e+03     0.0026       10     0.96   ++
    4            0.35            -1.3            -1.7            0.45            -1.6           -0.37            0.23            0.59            0.85            -0.3            0.32      5.1e+03    7.5e-05    1e+02     0.98   ++
    5            0.35            -1.3            -1.7            0.45            -1.6           -0.37            0.23            0.59            0.85            -0.3            0.32      5.1e+03      9e-08    1e+02        1   ++
Model 1/36
Biogeme parameters read from biogeme.toml.
Model with 7 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000002
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time     lambda_time          b_cost     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.43           -0.62           -0.89             1.8              -1           -0.45           -0.24      5.6e+03      0.083        1     0.72    +
    1            0.39            -1.5            -1.6            0.85              -1           -0.65            0.58      5.2e+03      0.028       10     0.94   ++
    2            0.48            -1.3            -1.9            0.42            -1.1           -0.21             0.3      5.1e+03     0.0096    1e+02     0.95   ++
    3            0.36            -1.3            -1.7            0.45            -1.1           -0.29             0.3      5.1e+03     0.0004    1e+03     0.98   ++
    4            0.36            -1.3            -1.7            0.45            -1.1           -0.29             0.3      5.1e+03    6.7e-07    1e+03        1   ++
Model 2/36
Biogeme parameters read from biogeme.toml.
Model with 8 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000003
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time     lambda_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.43           -0.62           -0.89             1.9              -1           -0.18           -0.44           -0.23      5.6e+03      0.084        1     0.72    +
    1            0.39            -1.5            -1.6            0.86           -0.97           -0.42           -0.63            0.58      5.2e+03      0.028       10     0.94   ++
    2            0.51            -1.3            -1.9             0.4              -1              -1           -0.14             0.3      5.1e+03      0.011    1e+02     0.93   ++
    3            0.39            -1.3            -1.7            0.44              -1            -1.1           -0.23            0.31      5.1e+03    0.00049    1e+03     0.98   ++
    4            0.39            -1.3            -1.7            0.44              -1            -1.1           -0.23            0.31      5.1e+03    1.9e-06    1e+03        1   ++
Model 3/36
Biogeme parameters read from biogeme.toml.
Model with 11 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000004
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time     lambda_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.73            0.37              -1             1.6           -0.67          -0.082           -0.23           -0.28          -0.042           -0.43           -0.19      5.4e+03      0.039        1     0.86    +
    1            -1.1             1.4            -1.3            0.83           -0.84           -0.21           -0.37           -0.12          -0.031           -0.19           -0.32      5.1e+03      0.023       10      1.1   ++
    2           -0.93             2.1            -1.9            0.28            -1.6           -0.57            0.26            0.63            0.83          0.0088           -0.24        5e+03     0.0077    1e+02     0.91   ++
    3              -1             2.1            -1.7            0.36            -1.6           -0.78            0.28            0.67            0.84          -0.065           -0.22        5e+03    0.00067    1e+03        1   ++
    4              -1             2.1            -1.7            0.37            -1.6           -0.79            0.28            0.66            0.84          -0.068           -0.22        5e+03    9.8e-06    1e+04        1   ++
    5              -1             2.1            -1.7            0.37            -1.6           -0.79            0.28            0.66            0.84          -0.068           -0.22        5e+03    5.8e-10    1e+04        1   ++
Model 4/36
Biogeme parameters read from biogeme.toml.
Model with 5 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000005
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time     lambda_time          b_cost         asc_car     Function    Relgrad   Radius      Rho
    0           -0.71              -1             1.7           -0.82            -0.5      5.6e+03      0.058        1     0.77    +
    1           -0.77            -1.7            0.69            -1.3           -0.35      5.4e+03      0.049       10        1   ++
    2           -0.47            -1.7            0.53              -1           0.017      5.3e+03      0.002    1e+02     0.96   ++
    3           -0.48            -1.7            0.51            -1.1         -0.0043      5.3e+03    1.3e-05    1e+03        1   ++
    4           -0.48            -1.7            0.51            -1.1         -0.0043      5.3e+03    1.8e-09    1e+03        1   ++
Model 5/36
Biogeme parameters read from biogeme.toml.
Model with 13 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000006
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time     lambda_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.48           -0.69            0.63           -0.93               2              -1           -0.11           -0.35           -0.42           -0.06           -0.43           -0.22           -0.25      5.6e+03        0.1        1     0.69    +
    1           -0.46            -1.1             1.6           -0.92             1.5            -0.7           -0.23           -0.38            0.05         -0.0044           -0.35            0.26           -0.33      5.1e+03      0.014       10      1.1   ++
    2           -0.46            -1.1             1.6           -0.92             1.5            -0.7           -0.23           -0.38            0.05         -0.0044           -0.35            0.26           -0.33      5.1e+03      0.014        5 -1.4e+03    -
    3           -0.46            -1.1             1.6           -0.92             1.5            -0.7           -0.23           -0.38            0.05         -0.0044           -0.35            0.26           -0.33      5.1e+03      0.014      2.5      -23    -
    4           -0.46            -1.1             1.6           -0.92             1.5            -0.7           -0.23           -0.38            0.05         -0.0044           -0.35            0.26           -0.33      5.1e+03      0.014      1.2     -1.8    -
    5           -0.31           -0.96             2.1              -2            0.26            -1.3           -0.44           -0.44           -0.14           0.074           -0.44            0.53           -0.41      4.9e+03      0.022      1.2     0.69    +
    6           -0.26            -1.1               2            -1.7            0.31            -1.5           -0.58            0.23            0.66            0.89           -0.45            0.44           -0.36      4.9e+03     0.0046       12     0.91   ++
    7           -0.26            -1.1               2            -1.7            0.33            -1.6           -0.59            0.22            0.63            0.82           -0.45            0.45           -0.37      4.9e+03    9.9e-05  1.2e+02        1   ++
    8           -0.26            -1.1               2            -1.7            0.33            -1.6           -0.59            0.22            0.63            0.82           -0.45            0.45           -0.37      4.9e+03    9.3e-08  1.2e+02        1   ++
Model 6/36
Biogeme parameters read from biogeme.toml.
Model with 10 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000007
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.36           -0.78           -0.63              -1            0.12           -0.03            0.16            0.29           -0.56           0.012      5.3e+03      0.043       10      1.1   ++
    1           0.017            -1.1            -1.2            -1.4           -0.28            0.17            0.49            0.72           -0.48             0.3      5.2e+03     0.0097    1e+02      1.1   ++
    2           0.069            -1.2            -1.3            -1.5           -0.41            0.18            0.53            0.78           -0.47            0.33      5.2e+03    0.00037    1e+03        1   ++
    3           0.069            -1.2            -1.3            -1.5           -0.41            0.18            0.53            0.78           -0.47            0.33      5.2e+03    5.1e-07    1e+03        1   ++
Model 7/36
Biogeme parameters read from biogeme.toml.
Model with 10 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000008
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.78            0.18              -1           -0.34          -0.042           -0.13           -0.14          -0.021           -0.27           -0.11      5.4e+03      0.036       10        1   ++
    1           -0.98             2.4            -1.6            -1.5          -0.066            0.41            0.65            0.77          -0.072          -0.068        5e+03      0.028    1e+02     0.94   ++
    2            -1.1             2.1            -1.7            -1.6           -0.76            0.28            0.66            0.78           -0.07            -0.2        5e+03    0.00071    1e+03        1   ++
    3            -1.1             2.1            -1.7            -1.6           -0.76            0.28            0.66            0.78           -0.07            -0.2        5e+03    5.1e-06    1e+03        1   ++
Model 8/36
Biogeme parameters read from biogeme.toml.
Model with 7 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000009
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.37           -0.59              -1           -0.89           -0.15           -0.32           -0.12      5.3e+03      0.036       10        1   ++
    1            0.41            -1.3            -1.7           -0.94           -0.88           -0.17            0.22      5.2e+03     0.0094    1e+02        1   ++
    2            0.42            -1.3            -1.7           -0.96              -1           -0.18            0.25      5.2e+03    0.00022    1e+03        1   ++
    3            0.42            -1.3            -1.7           -0.96              -1           -0.18            0.25      5.2e+03    2.3e-07    1e+03        1   ++
Model 9/36
Biogeme parameters read from biogeme.toml.
Model with 8 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000010
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time          b_cost     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.51            -0.8               1            -0.6           -0.88           -0.46           -0.15           -0.21      5.1e+03      0.045       10      1.1   ++
    1           -0.54           -0.96             1.7            -1.1            -1.1            -0.6            0.36           -0.37        5e+03      0.012    1e+02      1.1   ++
    2           -0.53            -1.1             1.9            -1.2            -1.1           -0.61            0.41           -0.41      4.9e+03     0.0007    1e+03        1   ++
    3           -0.53            -1.1             1.9            -1.2            -1.1           -0.61            0.41           -0.41      4.9e+03    4.3e-06    1e+03        1   ++
Model 10/36
Biogeme parameters read from biogeme.toml.
Model with 4 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000011
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time          b_cost         asc_car     Function    Relgrad   Radius      Rho
    0           -0.74              -1           -0.39            -0.3      5.5e+03      0.044       10        1   ++
    1           -0.54            -1.6           -0.93         -0.0041      5.3e+03     0.0052    1e+02      1.1   ++
    2           -0.51            -1.7              -1          0.0019      5.3e+03    0.00015    1e+03        1   ++
    3           -0.51            -1.7              -1          0.0019      5.3e+03    1.4e-07    1e+03        1   ++
Model 11/36
Biogeme parameters read from biogeme.toml.
Model with 12 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000012
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.44            -0.6            0.47              -1           -0.69          -0.075           -0.25           -0.28          -0.042           -0.34           -0.16           -0.18      5.2e+03      0.036       10        1   ++
    1           -0.24           -0.98               2            -1.6            -1.5            -0.3            0.23             0.6            0.76           -0.37            0.34           -0.28      4.9e+03      0.018    1e+02        1   ++
    2           -0.25            -1.1               2            -1.7            -1.5           -0.59            0.21            0.63            0.78           -0.43            0.41           -0.34      4.9e+03     0.0011    1e+03        1   ++
    3           -0.25            -1.2             2.1            -1.7            -1.6           -0.61            0.21            0.63            0.78           -0.43            0.42           -0.34      4.9e+03      9e-06    1e+04        1   ++
    4           -0.25            -1.2             2.1            -1.7            -1.6           -0.61            0.21            0.63            0.78           -0.43            0.42           -0.34      4.9e+03    4.2e-08    1e+04        1   ++
Model 12/36
Biogeme parameters read from biogeme.toml.
Model with 6 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000013
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time          b_cost     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.33           -0.81           -0.63           -0.89           -0.52          -0.039      5.3e+03      0.043       10      1.1   ++
    1           0.038            -1.2            -1.2              -1           -0.47            0.28      5.2e+03     0.0093    1e+02      1.1   ++
    2           0.089            -1.2            -1.2            -1.1           -0.46            0.31      5.2e+03    0.00033    1e+03        1   ++
    3           0.089            -1.2            -1.2            -1.1           -0.46            0.31      5.2e+03    4.1e-07    1e+03        1   ++
Model 13/36
Biogeme parameters read from biogeme.toml.
Model with 5 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000014
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time      b_cost_ref  b_cost_diff_GA         asc_car     Function    Relgrad   Radius      Rho
    0           -0.74              -1           -0.39          -0.095            -0.3      5.5e+03      0.043       10        1   ++
    1           -0.52            -1.6           -0.88           -0.53           0.037      5.3e+03     0.0053    1e+02      1.1   ++
    2           -0.48            -1.7           -0.95           -0.97           0.061      5.3e+03    0.00033    1e+03      1.1   ++
    3           -0.48            -1.7           -0.95            -1.1           0.063      5.3e+03    1.1e-05    1e+04        1   ++
    4           -0.48            -1.7           -0.95            -1.1           0.063      5.3e+03    1.7e-08    1e+04        1   ++
Model 14/36
Biogeme parameters read from biogeme.toml.
Model with 9 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000015
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.51            -0.8               1            -0.6           -0.88         -0.0059           -0.46           -0.15           -0.19      5.1e+03      0.045       10      1.1   ++
    1           -0.54           -0.97             1.7            -1.1            -1.1            0.93           -0.61            0.36           -0.93      4.9e+03      0.012    1e+02      1.1   ++
    2           -0.54            -1.1             1.9            -1.2            -1.1            0.89           -0.62            0.41           -0.98      4.9e+03     0.0007    1e+03        1   ++
    3           -0.54            -1.1             1.9            -1.2            -1.1            0.89           -0.62            0.41           -0.98      4.9e+03    4.4e-06    1e+03        1   ++
Model 15/36
Biogeme parameters read from biogeme.toml.
Model with 10 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000016
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time     lambda_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.46           -0.65            0.57           -0.92             1.9              -1           -0.17           -0.44           -0.24           -0.24      5.5e+03      0.088        1     0.73    +
    1           -0.55            -1.1             1.6              -1             1.2           -0.94           -0.19           -0.47            0.13           -0.33        5e+03      0.019       10      1.2   ++
    2           -0.55            -1.1             1.6              -1             1.2           -0.94           -0.19           -0.47            0.13           -0.33        5e+03      0.019      1.8      -14    -
    3           -0.55            -1.1             1.6              -1             1.2           -0.94           -0.19           -0.47            0.13           -0.33        5e+03      0.019     0.88    -0.88    -
    4           -0.56            -1.2             1.9            -1.6            0.36            -1.2           -0.16           -0.46            0.34           -0.35      4.9e+03      0.023      8.8     0.91   ++
    5           -0.21            -1.1             1.9            -1.7            0.34            -1.1             1.6           -0.43            0.41            -1.3      4.9e+03     0.0036      8.8     0.82    +
    6           -0.22            -1.2               2            -1.7            0.33            -1.1             1.2           -0.42            0.41            -1.2      4.9e+03    0.00065       88      1.2   ++
    7           -0.22            -1.2               2            -1.7            0.33            -1.1            0.98           -0.42            0.41            -1.1      4.9e+03    0.00011  8.8e+02      1.1   ++
    8           -0.22            -1.2               2            -1.7            0.33            -1.1            0.98           -0.42            0.41            -1.1      4.9e+03    5.3e-06  8.8e+02        1   ++
Model 16/36
Biogeme parameters read from biogeme.toml.
Model with 9 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000017
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time     lambda_time          b_cost     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.46           -0.64            0.57           -0.92             1.9              -1           -0.45           -0.25           -0.24      5.5e+03      0.087        1     0.73    +
    1           -0.56            -1.1             1.6              -1             1.2           -0.95           -0.47            0.12           -0.36        5e+03      0.019       10      1.2   ++
    2           -0.56            -1.1             1.6              -1             1.2           -0.95           -0.47            0.12           -0.36        5e+03      0.019      1.6      -11    -
    3           -0.56            -1.1             1.6              -1             1.2           -0.95           -0.47            0.12           -0.36        5e+03      0.019      0.8    -0.46    -
    4           -0.55            -1.2             1.9            -1.5            0.42            -1.1           -0.48             0.3            -0.4      4.9e+03      0.017        8     0.99   ++
    5           -0.21            -1.1             1.9            -1.7            0.33            -1.1           -0.42            0.41           -0.45      4.9e+03    0.00079       80     0.98   ++
    6           -0.21            -1.1             1.9            -1.7            0.33            -1.1           -0.42            0.41           -0.45      4.9e+03    3.4e-06       80        1   ++
Model 17/36
Biogeme parameters read from biogeme.toml.
Model with 5 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000018
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time      b_cost_ref  b_cost_diff_GA         asc_car     Function    Relgrad   Radius      Rho
    0           -0.92           -0.67            -0.9           0.097            -0.5      5.4e+03      0.041       10      1.1   ++
    1           -0.71            -1.2           -0.98           -0.74           -0.13      5.3e+03     0.0075    1e+02      1.1   ++
    2           -0.68            -1.3              -1              -1          -0.097      5.3e+03     0.0002    1e+03        1   ++
    3           -0.68            -1.3              -1              -1          -0.097      5.3e+03    1.2e-06    1e+03        1   ++
Model 18/36
Biogeme parameters read from biogeme.toml.
Model with 6 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000019
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time     lambda_time      b_cost_ref  b_cost_diff_GA         asc_car     Function    Relgrad   Radius      Rho
    0           -0.71              -1             1.7           -0.82           -0.17            -0.5      5.6e+03      0.059        1     0.77    +
    1           -0.78            -1.6            0.69            -1.3           -0.38           -0.33      5.4e+03      0.049       10        1   ++
    2           -0.44            -1.7            0.53           -0.96            -1.2           0.085      5.3e+03      0.002    1e+02     0.96   ++
    3           -0.46            -1.7            0.51              -1            -1.1            0.06      5.3e+03      1e-05    1e+03        1   ++
    4           -0.46            -1.7            0.51              -1            -1.1            0.06      5.3e+03    7.2e-10    1e+03        1   ++
Model 19/36
Biogeme parameters read from biogeme.toml.
Model with 7 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000020
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.33           -0.81           -0.63           -0.91            0.11           -0.52           -0.04      5.3e+03      0.043       10      1.1   ++
    1           0.052            -1.1            -1.2           -0.98           -0.72           -0.42            0.29      5.2e+03     0.0097    1e+02      1.1   ++
    2            0.11            -1.2            -1.3              -1              -1           -0.41            0.31      5.2e+03    0.00036    1e+03        1   ++
    3            0.11            -1.2            -1.3              -1              -1           -0.41            0.31      5.2e+03    9.1e-07    1e+03        1   ++
Model 20/36
Biogeme parameters read from biogeme.toml.
Model with 8 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000021
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc         asc_car     Function    Relgrad   Radius      Rho
    0           -0.92           -0.66              -1           0.026         -0.0026             0.2            0.21           -0.49      5.4e+03      0.041       10      1.1   ++
    1           -0.74            -1.2            -1.4           -0.53            0.22            0.52            0.69           -0.17      5.3e+03     0.0075    1e+02      1.1   ++
    2           -0.71            -1.3            -1.5           -0.66            0.24            0.56            0.75           -0.15      5.3e+03     0.0002    1e+03        1   ++
    3           -0.71            -1.3            -1.5           -0.66            0.24            0.56            0.75           -0.15      5.3e+03    1.5e-07    1e+03        1   ++
Model 21/36
Biogeme parameters read from biogeme.toml.
Model with 12 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000022
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.51           -0.82               1           -0.59           -0.69          -0.094           -0.32           -0.15          -0.041           -0.47           -0.15           -0.21      5.1e+03      0.045       10      1.1   ++
    1           -0.57           -0.94             1.8            -1.1            -1.4           -0.37            0.15            0.51            0.71           -0.62            0.38           -0.29      4.9e+03      0.012    1e+02      1.1   ++
    2           -0.58            -1.1             1.9            -1.2            -1.5            -0.6            0.17            0.56            0.75           -0.65            0.44           -0.33      4.9e+03    0.00078    1e+03        1   ++
    3           -0.58            -1.1             1.9            -1.2            -1.5            -0.6            0.17            0.56            0.75           -0.65            0.44           -0.33      4.9e+03    4.5e-06    1e+03        1   ++
Model 22/36
Biogeme parameters read from biogeme.toml.
Model with 10 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000023
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.37            -0.6              -1           -0.72          -0.082           -0.27           -0.28          -0.045           -0.32           -0.13      5.3e+03      0.036       10        1   ++
    1            0.38            -1.3            -1.6            -1.4           -0.22            0.22            0.56            0.76           -0.22            0.24      5.2e+03     0.0092    1e+02        1   ++
    2            0.38            -1.3            -1.7            -1.5           -0.36            0.23             0.6            0.81           -0.25            0.27      5.2e+03    0.00022    1e+03        1   ++
    3            0.38            -1.3            -1.7            -1.5           -0.36            0.23             0.6            0.81           -0.25            0.27      5.2e+03    2.4e-07    1e+03        1   ++
Model 23/36
Biogeme parameters read from biogeme.toml.
Model with 9 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000024
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.43           -0.59            0.47              -1           -0.76           -0.12           -0.34           -0.16           -0.18      5.2e+03      0.042       10        1   ++
    1           -0.21              -1               2            -1.6              -1            0.89           -0.36            0.33           -0.91      4.9e+03      0.018    1e+02        1   ++
    2            -0.2            -1.2               2            -1.7            -1.1            0.91           -0.39            0.37           -0.99      4.9e+03     0.0011    1e+03        1   ++
    3            -0.2            -1.2               2            -1.7            -1.1            0.91           -0.39            0.38           -0.99      4.9e+03    8.4e-06    1e+04        1   ++
    4            -0.2            -1.2               2            -1.7            -1.1            0.91           -0.39            0.38           -0.99      4.9e+03    5.4e-10    1e+04        1   ++
Model 24/36
Biogeme parameters read from biogeme.toml.
Model with 10 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000025
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0              -1            0.85            -0.7           -0.75           -0.11           -0.31           -0.21          -0.052           -0.41           -0.23      5.2e+03      0.049       10      1.1   ++
    1            -1.2             1.9            -1.1            -1.5           -0.54            0.19            0.54            0.71           -0.28           -0.19        5e+03      0.012    1e+02      1.1   ++
    2            -1.3               2            -1.2            -1.6           -0.78            0.23            0.59            0.78           -0.26           -0.21        5e+03     0.0006    1e+03        1   ++
    3            -1.3               2            -1.2            -1.6           -0.78            0.23            0.59            0.78           -0.26           -0.21        5e+03    1.8e-06    1e+03        1   ++
Model 25/36
Biogeme parameters read from biogeme.toml.
Model with 6 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000026
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time          b_cost     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.88            0.66           -0.79              -1           -0.36           -0.25      5.2e+03      0.047       10      1.1   ++
    1            -1.2             1.9            -1.1            -1.1           -0.28           -0.28      5.1e+03      0.014    1e+02      1.1   ++
    2            -1.3               2            -1.2            -1.1           -0.25            -0.3      5.1e+03     0.0007    1e+03        1   ++
    3            -1.3               2            -1.2            -1.1           -0.25            -0.3      5.1e+03    2.4e-06    1e+03        1   ++
Model 26/36
Biogeme parameters read from biogeme.toml.
Model with 8 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000027
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time          b_cost     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.44           -0.59            0.47              -1           -0.76           -0.34           -0.17           -0.18      5.2e+03      0.044       10        1   ++
    1           -0.21              -1               2            -1.6              -1           -0.36            0.33           -0.35      4.9e+03      0.018    1e+02        1   ++
    2            -0.2            -1.2               2            -1.7            -1.1           -0.39            0.37           -0.42      4.9e+03     0.0011    1e+03        1   ++
    3            -0.2            -1.2               2            -1.7            -1.1           -0.39            0.38           -0.42      4.9e+03    8.5e-06    1e+04        1   ++
    4            -0.2            -1.2               2            -1.7            -1.1           -0.39            0.38           -0.42      4.9e+03    5.5e-10    1e+04        1   ++
Model 27/36
Biogeme parameters read from biogeme.toml.
Model with 7 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000028
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time     lambda_time          b_cost     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.73            0.39              -1             1.6           -0.73           -0.45           -0.21      5.5e+03      0.049        1     0.83    +
    1            -1.1             1.4            -1.3             0.9            -1.1            -0.2           -0.35      5.1e+03      0.022       10      1.1   ++
    2           -0.87               2            -1.9            0.26            -1.1           0.037           -0.36        5e+03      0.012       10     0.82    +
    3              -1               2            -1.7            0.36            -1.1          -0.061           -0.31        5e+03     0.0012    1e+02        1   ++
    4              -1               2            -1.7            0.38            -1.1          -0.064           -0.31        5e+03    3.1e-05    1e+03        1   ++
    5              -1               2            -1.7            0.38            -1.1          -0.064           -0.31        5e+03    3.6e-09    1e+03        1   ++
Model 28/36
Biogeme parameters read from biogeme.toml.
Model with 7 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000029
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.76            0.19              -1           -0.36          -0.089           -0.27           -0.12      5.4e+03      0.044       10        1   ++
    1           -0.98             2.4            -1.6           -0.98            0.71           -0.08           -0.61        5e+03      0.027    1e+02     0.93   ++
    2            -1.1             2.1            -1.7            -1.1            0.92          -0.071           -0.87        5e+03    0.00067    1e+03        1   ++
    3            -1.1             2.1            -1.7            -1.1            0.92          -0.071           -0.87        5e+03      2e-06    1e+03        1   ++
Model 29/36
Biogeme parameters read from biogeme.toml.
Model with 9 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000030
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time     lambda_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc         asc_car     Function    Relgrad   Radius      Rho
    0           -0.72              -1             1.6           -0.74          -0.092           -0.26           -0.31          -0.047           -0.48      5.6e+03      0.044        1     0.81    +
    1           -0.64            -1.6            0.65           -0.91           -0.36           -0.47            0.12          -0.013           -0.22      5.3e+03      0.038       10        1   ++
    2           -0.49            -1.7            0.51            -1.5           -0.59            0.27             0.6             0.8           0.012      5.3e+03    0.00074    1e+02        1   ++
    3           -0.49            -1.7             0.5            -1.6           -0.65            0.28            0.62            0.81          0.0042      5.3e+03      7e-06    1e+03        1   ++
    4           -0.49            -1.7             0.5            -1.6           -0.65            0.28            0.62            0.81          0.0042      5.3e+03    1.3e-09    1e+03        1   ++
Model 30/36
Biogeme parameters read from biogeme.toml.
Model with 6 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000031
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time          b_cost     asc_car_ref asc_car_diff_ma     Function    Relgrad   Radius      Rho
    0           -0.37           -0.59              -1           -0.89           -0.33           -0.13      5.3e+03      0.036       10        1   ++
    1             0.4            -1.3            -1.6              -1           -0.22            0.22      5.2e+03     0.0091    1e+02        1   ++
    2             0.4            -1.3            -1.7              -1           -0.24            0.25      5.2e+03    0.00022    1e+03        1   ++
    3             0.4            -1.3            -1.7              -1           -0.24            0.25      5.2e+03    2.4e-07    1e+03        1   ++
Model 31/36
Biogeme parameters read from biogeme.toml.
Model with 7 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000032
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0              -1             0.9            -0.7           -0.93          -0.072           -0.43           -0.22      5.2e+03      0.046       10      1.1   ++
    1            -1.2             1.9            -1.1            -1.1            0.98           -0.28           -0.87      5.1e+03      0.011    1e+02      1.1   ++
    2            -1.3               2            -1.2            -1.1            0.89           -0.25           -0.87        5e+03    0.00055    1e+03        1   ++
    3            -1.3               2            -1.2            -1.1            0.89           -0.25           -0.87        5e+03    1.5e-06    1e+03        1   ++
Model 32/36
Model 33/36
Biogeme parameters read from biogeme.toml.
Model with 8 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000033
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time     lambda_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.73            0.39              -1             1.6           -0.73           -0.15           -0.45            -0.2      5.5e+03       0.05        1     0.83    +
    1            -1.1             1.4            -1.3            0.91            -1.1            -0.2           -0.19           -0.33      5.1e+03      0.021       10      1.1   ++
    2           -0.87               2            -1.9            0.26            -1.1             1.3           0.034            -1.1        5e+03      0.013       10     0.81    +
    3              -1               2            -1.7            0.36            -1.1               1          -0.066           -0.95        5e+03     0.0012    1e+02        1   ++
    4              -1               2            -1.7            0.38            -1.1            0.92          -0.068           -0.89        5e+03    3.3e-05    1e+03        1   ++
    5              -1               2            -1.7            0.38            -1.1            0.92          -0.068           -0.89        5e+03    8.2e-08    1e+03        1   ++
Model 34/36
Biogeme parameters read from biogeme.toml.
Model with 8 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000034
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc         asc_car     Function    Relgrad   Radius      Rho
    0           -0.75              -1           -0.36          -0.045           -0.13           -0.14          -0.023           -0.29      5.5e+03      0.035       10        1   ++
    1           -0.54            -1.6            -1.4           -0.17            0.37             0.6            0.73          0.0049      5.3e+03     0.0064    1e+02      1.1   ++
    2           -0.51            -1.7            -1.5           -0.64            0.28            0.63            0.75           0.011      5.3e+03    0.00037    1e+03        1   ++
    3           -0.51            -1.7            -1.5           -0.64            0.28            0.63            0.75           0.011      5.3e+03    2.2e-06    1e+03        1   ++
Model 35/36
Biogeme parameters read from biogeme.toml.
Model with 6 unknown parameters [max: 50]
*** Estimate b21_multiple_models_000035
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time          b_cost     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.76            0.19              -1           -0.37           -0.27           -0.12      5.4e+03      0.044       10        1   ++
    1           -0.97             2.4            -1.6           -0.96          -0.072           -0.11        5e+03      0.027    1e+02     0.94   ++
    2              -1             2.1            -1.7            -1.1          -0.067           -0.29        5e+03    0.00066    1e+03        1   ++
    3              -1             2.1            -1.7            -1.1          -0.067           -0.29        5e+03    2.1e-06    1e+03        1   ++
Pareto file has been updated: b21_multiple_models.pareto
Before the algorithm: 1 models, with 1 Pareto.
After the algorithm: 36 models, with 8 Pareto.
VNS algorithm completed. Postprocessing of the Pareto optimal solutions
Pareto set initialized from file with 36 elements [8 Pareto] and 0 invalid elements.
Biogeme parameters provided by the user.
*** Initial values of the parameters are obtained from the file __b21_multiple_models_000000.iter
Cannot read file __b21_multiple_models_000000.iter. Statement is ignored.
Starting values for the algorithm: {}
As the model is not too complex, we activate the calculation of second derivatives. To change this behavior, modify the algorithm to "simple_bounds" in the TOML file.
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time          b_cost         asc_car     Function    Relgrad   Radius      Rho
    0           -0.92           -0.67           -0.88           -0.49      5.4e+03      0.041       10      1.1   ++
    1           -0.73            -1.2              -1           -0.18      5.3e+03     0.0072    1e+02      1.1   ++
    2            -0.7            -1.3            -1.1           -0.16      5.3e+03    0.00018    1e+03        1   ++
    3            -0.7            -1.3            -1.1           -0.16      5.3e+03    1.1e-07    1e+03        1   ++
Optimization algorithm has converged.
Relative gradient: 1.059559503933971e-07
Cause of termination: Relative gradient = 1.1e-07 <= 6.1e-06
Number of function evaluations: 13
Number of gradient evaluations: 9
Number of hessian evaluations: 4
Algorithm: Newton with trust region for simple bound constraints
Number of iterations: 4
Proportion of Hessian calculation: 4/4 = 100.0%
Optimization time: 0:00:00.293176
Calculate second derivatives and BHHH
File b21_multiple_models_000000.html has been generated.
File b21_multiple_models_000000.yaml has been generated.
Biogeme parameters provided by the user.
*** Initial values of the parameters are obtained from the file __b21_multiple_models_000001.iter
Cannot read file __b21_multiple_models_000001.iter. Statement is ignored.
Starting values for the algorithm: {}
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time     lambda_time          b_cost     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.73            0.39              -1             1.6           -0.73           -0.45           -0.21      5.5e+03      0.049        1     0.83    +
    1            -1.1             1.4            -1.3             0.9            -1.1            -0.2           -0.35      5.1e+03      0.022       10      1.1   ++
    2           -0.87               2            -1.9            0.26            -1.1           0.037           -0.36        5e+03      0.012       10     0.82    +
    3              -1               2            -1.7            0.36            -1.1          -0.061           -0.31        5e+03     0.0012    1e+02        1   ++
    4              -1               2            -1.7            0.38            -1.1          -0.064           -0.31        5e+03    3.1e-05    1e+03        1   ++
    5              -1               2            -1.7            0.38            -1.1          -0.064           -0.31        5e+03    3.6e-09    1e+03        1   ++
Optimization algorithm has converged.
Relative gradient: 3.608609121164929e-09
Cause of termination: Relative gradient = 3.6e-09 <= 6.1e-06
Number of function evaluations: 19
Number of gradient evaluations: 13
Number of hessian evaluations: 6
Algorithm: Newton with trust region for simple bound constraints
Number of iterations: 6
Proportion of Hessian calculation: 6/6 = 100.0%
Optimization time: 0:00:00.986043
Calculate second derivatives and BHHH
File b21_multiple_models_000001.html has been generated.
File b21_multiple_models_000001.yaml has been generated.
Biogeme parameters provided by the user.
*** Initial values of the parameters are obtained from the file __b21_multiple_models_000002.iter
Cannot read file __b21_multiple_models_000002.iter. Statement is ignored.
Starting values for the algorithm: {}
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time          b_cost     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.44           -0.59            0.47              -1           -0.76           -0.34           -0.17           -0.18      5.2e+03      0.044       10        1   ++
    1           -0.21              -1               2            -1.6              -1           -0.36            0.33           -0.35      4.9e+03      0.018    1e+02        1   ++
    2            -0.2            -1.2               2            -1.7            -1.1           -0.39            0.37           -0.42      4.9e+03     0.0011    1e+03        1   ++
    3            -0.2            -1.2               2            -1.7            -1.1           -0.39            0.38           -0.42      4.9e+03    8.5e-06    1e+04        1   ++
    4            -0.2            -1.2               2            -1.7            -1.1           -0.39            0.38           -0.42      4.9e+03    5.5e-10    1e+04        1   ++
Optimization algorithm has converged.
Relative gradient: 5.482789752269039e-10
Cause of termination: Relative gradient = 5.5e-10 <= 6.1e-06
Number of function evaluations: 16
Number of gradient evaluations: 11
Number of hessian evaluations: 5
Algorithm: Newton with trust region for simple bound constraints
Number of iterations: 5
Proportion of Hessian calculation: 5/5 = 100.0%
Optimization time: 0:00:00.429961
Calculate second derivatives and BHHH
File b21_multiple_models_000002.html has been generated.
File b21_multiple_models_000002.yaml has been generated.
Biogeme parameters provided by the user.
*** Initial values of the parameters are obtained from the file __b21_multiple_models_000003.iter
Cannot read file __b21_multiple_models_000003.iter. Statement is ignored.
Starting values for the algorithm: {}
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_          b_time          b_cost     asc_car_ref asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.76            0.19              -1           -0.37           -0.27           -0.12      5.4e+03      0.044       10        1   ++
    1           -0.97             2.4            -1.6           -0.96          -0.072           -0.11        5e+03      0.027    1e+02     0.94   ++
    2              -1             2.1            -1.7            -1.1          -0.067           -0.29        5e+03    0.00066    1e+03        1   ++
    3              -1             2.1            -1.7            -1.1          -0.067           -0.29        5e+03    2.1e-06    1e+03        1   ++
Optimization algorithm has converged.
Relative gradient: 2.0806244410800506e-06
Cause of termination: Relative gradient = 2.1e-06 <= 6.1e-06
Number of function evaluations: 13
Number of gradient evaluations: 9
Number of hessian evaluations: 4
Algorithm: Newton with trust region for simple bound constraints
Number of iterations: 4
Proportion of Hessian calculation: 4/4 = 100.0%
Optimization time: 0:00:00.360752
Calculate second derivatives and BHHH
File b21_multiple_models_000003.html has been generated.
File b21_multiple_models_000003.yaml has been generated.
Biogeme parameters provided by the user.
*** Initial values of the parameters are obtained from the file __b21_multiple_models_000004.iter
Cannot read file __b21_multiple_models_000004.iter. Statement is ignored.
Starting values for the algorithm: {}
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time     lambda_time      b_cost_ref b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc b_cost_diff_inc     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.48           -0.69            0.63           -0.93               2              -1           -0.11           -0.35           -0.42           -0.06           -0.43           -0.22           -0.25      5.6e+03        0.1        1     0.69    +
    1           -0.46            -1.1             1.6           -0.92             1.5            -0.7           -0.23           -0.38            0.05         -0.0044           -0.35            0.26           -0.33      5.1e+03      0.014       10      1.1   ++
    2           -0.46            -1.1             1.6           -0.92             1.5            -0.7           -0.23           -0.38            0.05         -0.0044           -0.35            0.26           -0.33      5.1e+03      0.014        5 -1.4e+03    -
    3           -0.46            -1.1             1.6           -0.92             1.5            -0.7           -0.23           -0.38            0.05         -0.0044           -0.35            0.26           -0.33      5.1e+03      0.014      2.5      -23    -
    4           -0.46            -1.1             1.6           -0.92             1.5            -0.7           -0.23           -0.38            0.05         -0.0044           -0.35            0.26           -0.33      5.1e+03      0.014      1.2     -1.8    -
    5           -0.31           -0.96             2.1              -2            0.26            -1.3           -0.44           -0.44           -0.14           0.074           -0.44            0.53           -0.41      4.9e+03      0.022      1.2     0.69    +
    6           -0.26            -1.1               2            -1.7            0.31            -1.5           -0.58            0.23            0.66            0.89           -0.45            0.44           -0.36      4.9e+03     0.0046       12     0.91   ++
    7           -0.26            -1.1               2            -1.7            0.33            -1.6           -0.59            0.22            0.63            0.82           -0.45            0.45           -0.37      4.9e+03    9.9e-05  1.2e+02        1   ++
    8           -0.26            -1.1               2            -1.7            0.33            -1.6           -0.59            0.22            0.63            0.82           -0.45            0.45           -0.37      4.9e+03    9.3e-08  1.2e+02        1   ++
Optimization algorithm has converged.
Relative gradient: 9.314421529692506e-08
Cause of termination: Relative gradient = 9.3e-08 <= 6.1e-06
Number of function evaluations: 22
Number of gradient evaluations: 13
Number of hessian evaluations: 6
Algorithm: Newton with trust region for simple bound constraints
Number of iterations: 9
Proportion of Hessian calculation: 6/6 = 100.0%
Optimization time: 0:00:01.265093
Calculate second derivatives and BHHH
File b21_multiple_models_000004.html has been generated.
File b21_multiple_models_000004.yaml has been generated.
Biogeme parameters provided by the user.
*** Initial values of the parameters are obtained from the file __b21_multiple_models_000005.iter
Cannot read file __b21_multiple_models_000005.iter. Statement is ignored.
Starting values for the algorithm: {}
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.       asc_train          b_time     lambda_time          b_cost         asc_car     Function    Relgrad   Radius      Rho
    0           -0.71              -1             1.7           -0.82            -0.5      5.6e+03      0.058        1     0.77    +
    1           -0.77            -1.7            0.69            -1.3           -0.35      5.4e+03      0.049       10        1   ++
    2           -0.47            -1.7            0.53              -1           0.017      5.3e+03      0.002    1e+02     0.96   ++
    3           -0.48            -1.7            0.51            -1.1         -0.0043      5.3e+03    1.3e-05    1e+03        1   ++
    4           -0.48            -1.7            0.51            -1.1         -0.0043      5.3e+03    1.8e-09    1e+03        1   ++
Optimization algorithm has converged.
Relative gradient: 1.7992210209022422e-09
Cause of termination: Relative gradient = 1.8e-09 <= 6.1e-06
Number of function evaluations: 16
Number of gradient evaluations: 11
Number of hessian evaluations: 5
Algorithm: Newton with trust region for simple bound constraints
Number of iterations: 5
Proportion of Hessian calculation: 5/5 = 100.0%
Optimization time: 0:00:00.859131
Calculate second derivatives and BHHH
File b21_multiple_models_000005.html has been generated.
File b21_multiple_models_000005.yaml has been generated.
Biogeme parameters provided by the user.
*** Initial values of the parameters are obtained from the file __b21_multiple_models_000006.iter
Cannot read file __b21_multiple_models_000006.iter. Statement is ignored.
Starting values for the algorithm: {}
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time     lambda_time          b_cost     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.46           -0.64            0.57           -0.92             1.9              -1           -0.45           -0.25           -0.24      5.5e+03      0.087        1     0.73    +
    1           -0.56            -1.1             1.6              -1             1.2           -0.95           -0.47            0.12           -0.36        5e+03      0.019       10      1.2   ++
    2           -0.56            -1.1             1.6              -1             1.2           -0.95           -0.47            0.12           -0.36        5e+03      0.019      1.6      -11    -
    3           -0.56            -1.1             1.6              -1             1.2           -0.95           -0.47            0.12           -0.36        5e+03      0.019      0.8    -0.46    -
    4           -0.55            -1.2             1.9            -1.5            0.42            -1.1           -0.48             0.3            -0.4      4.9e+03      0.017        8     0.99   ++
    5           -0.21            -1.1             1.9            -1.7            0.33            -1.1           -0.42            0.41           -0.45      4.9e+03    0.00079       80     0.98   ++
    6           -0.21            -1.1             1.9            -1.7            0.33            -1.1           -0.42            0.41           -0.45      4.9e+03    3.4e-06       80        1   ++
Optimization algorithm has converged.
Relative gradient: 3.374132016569103e-06
Cause of termination: Relative gradient = 3.4e-06 <= 6.1e-06
Number of function evaluations: 18
Number of gradient evaluations: 11
Number of hessian evaluations: 5
Algorithm: Newton with trust region for simple bound constraints
Number of iterations: 7
Proportion of Hessian calculation: 5/5 = 100.0%
Optimization time: 0:00:01.353647
Calculate second derivatives and BHHH
File b21_multiple_models_000006.html has been generated.
File b21_multiple_models_000006.yaml has been generated.
Biogeme parameters provided by the user.
*** Initial values of the parameters are obtained from the file __b21_multiple_models_000007.iter
Cannot read file __b21_multiple_models_000007.iter. Statement is ignored.
Starting values for the algorithm: {}
Optimization algorithm: hybrid Newton/BFGS with simple bounds [simple_bounds]
** Optimization: Newton with trust region for simple bounds
Iter.   asc_train_ref asc_train_diff_ asc_train_diff_          b_time     lambda_time      b_cost_ref  b_cost_diff_GA     asc_car_ref asc_car_diff_ma asc_car_diff_GA     Function    Relgrad   Radius      Rho
    0           -0.46           -0.65            0.57           -0.92             1.9              -1           -0.17           -0.44           -0.24           -0.24      5.5e+03      0.088        1     0.73    +
    1           -0.55            -1.1             1.6              -1             1.2           -0.94           -0.19           -0.47            0.13           -0.33        5e+03      0.019       10      1.2   ++
    2           -0.55            -1.1             1.6              -1             1.2           -0.94           -0.19           -0.47            0.13           -0.33        5e+03      0.019      1.8      -14    -
    3           -0.55            -1.1             1.6              -1             1.2           -0.94           -0.19           -0.47            0.13           -0.33        5e+03      0.019     0.88    -0.88    -
    4           -0.56            -1.2             1.9            -1.6            0.36            -1.2           -0.16           -0.46            0.34           -0.35      4.9e+03      0.023      8.8     0.91   ++
    5           -0.21            -1.1             1.9            -1.7            0.34            -1.1             1.6           -0.43            0.41            -1.3      4.9e+03     0.0036      8.8     0.82    +
    6           -0.22            -1.2               2            -1.7            0.33            -1.1             1.2           -0.42            0.41            -1.2      4.9e+03    0.00065       88      1.2   ++
    7           -0.22            -1.2               2            -1.7            0.33            -1.1            0.98           -0.42            0.41            -1.1      4.9e+03    0.00011  8.8e+02      1.1   ++
    8           -0.22            -1.2               2            -1.7            0.33            -1.1            0.98           -0.42            0.41            -1.1      4.9e+03    5.3e-06  8.8e+02        1   ++
Optimization algorithm has converged.
Relative gradient: 5.317220515909392e-06
Cause of termination: Relative gradient = 5.3e-06 <= 6.1e-06
Number of function evaluations: 24
Number of gradient evaluations: 15
Number of hessian evaluations: 7
Algorithm: Newton with trust region for simple bound constraints
Number of iterations: 9
Proportion of Hessian calculation: 7/7 = 100.0%
Optimization time: 0:00:01.081416
Calculate second derivatives and BHHH
File b21_multiple_models_000007.html has been generated.
File b21_multiple_models_000007.yaml has been generated.
Pareto: 8
Considered: 36
Removed: 10
summary, description = compile_estimation_results(
    non_dominated_models, use_short_names=True
)
print(summary)
                                     Model_000000  ...     Model_000007
Number of estimated parameters                  4  ...               10
Sample size                                  6768  ...             6768
Final log likelihood                    -5331.252  ...        -4879.461
Akaike Information Criterion              10670.5  ...         9778.922
Bayesian Information Criterion           10697.78  ...         9847.122
asc_train (t-test)                -0.701  (-8.49)  ...
b_time (t-test)                    -1.28  (-12.3)  ...    -1.7  (-21.3)
b_cost (t-test)                    -1.08  (-15.9)  ...
asc_car (t-test)                  -0.155  (-2.66)  ...
asc_train_ref (t-test)                             ...   -0.22  (-2.44)
asc_train_diff_GA (t-test)                         ...     1.96  (21.2)
lambda_time (t-test)                               ...    0.334  (4.55)
asc_car_ref (t-test)                               ...  -0.422  (-4.29)
asc_car_diff_GA (t-test)                           ...   -1.03  (-2.57)
asc_train_diff_male (t-test)                       ...   -1.15  (-13.4)
asc_car_diff_male (t-test)                         ...    0.413  (3.95)
b_cost_ref (t-test)                                ...    -1.1  (-15.1)
b_cost_diff_inc-under50 (t-test)                   ...
b_cost_diff_inc-50-100 (t-test)                    ...
b_cost_diff_inc-100+ (t-test)                      ...
b_cost_diff_inc-unknown (t-test)                   ...
b_cost_diff_GA (t-test)                            ...    0.918  (1.87)

[22 rows x 8 columns]

Explanation of the short names of the model.

for k, v in description.items():
    if k != v:
        print(f'{k}: {v} AIC={summary.at["Akaike Information Criterion", k]}')
Model_000000: asc:no_seg;b_cost:no_seg;train_tt:linear AIC=10670.5
Model_000001: asc:GA;b_cost:no_seg;train_tt:boxcox AIC=10005.51
Model_000002: asc:MALE-GA;b_cost:no_seg;train_tt:log AIC=9817.767
Model_000003: asc:GA;b_cost:no_seg;train_tt:log AIC=10054.47
Model_000004: asc:MALE-GA;b_cost:INCOME;train_tt:boxcox AIC=9750.73
Model_000005: asc:no_seg;b_cost:no_seg;train_tt:boxcox AIC=10594.19
Model_000006: asc:MALE-GA;b_cost:no_seg;train_tt:boxcox AIC=9781.834
Model_000007: asc:MALE-GA;b_cost:GA;train_tt:boxcox AIC=9778.922

Total running time of the script: (0 minutes 44.363 seconds)

Gallery generated by Sphinx-Gallery