Python Biogeme Parameters
The execution of Biogeme can be controlled by user defined parameters. The syntax is
BIOGEME_OBJECT.PARAMETERS['parameterName'] = 'value'
The parameterName
must be one of the names listed below. Depending on the nature of the parameter, the value must be an integer, a real number or a string of characters. The value must be delimited by double quotes.
This version has been generated from version
of the python code on
.
Parameter name | Type | Default value | Description | BTRArmijoBeta1 |
Real | 0.1 |
---|---|---|---|
BTRArmijoBeta2 |
Real | 0.9 |
|
BTREta1 |
Real | 0.01 |
|
BTREta2 |
Real | 0.9 |
|
BTRGamma1 |
Real | 0.5 |
|
BTRGamma2 |
Real | 0.5 |
|
BTRIncreaseTRRadius |
Real | 2 |
Defines the factor by which the radius of the trust region is multiplied after a successful iteration. |
BTRInitRadius |
Real | 1 |
Defines the initial radius of the trust region. |
BTRKappaEpp |
Real | 0.25 |
|
BTRKappaFrd |
Real | 0.5 |
|
BTRKappaLbs |
Real | 0.9 |
|
BTRKappaUbs |
Real | 0.1 |
|
BTRMaxTRRadius |
Real | 1e+10 |
Defines the maximum radius of the trust region. If this radius is reached, the trust region is not enlarged anymore. |
BTRMinTRRadius |
Real | 1e-07 |
Defines the minimum radius of the trust region. If this radius is reached, the iterations are interrupted. |
BTRTolerance |
Real | 6.05545e-06 |
Value used for the stopping criterion of the BIO algorithm. |
BTRTypf |
Real | 1 |
Typical value of the log likelihood function, with opposite sign |
MetropolisHastingsNeighborhoodSize |
Real | 1 |
The Markov chain for the Metropolis-Hastings algorithm updates the parameters beta using the following formula: beta + rho ksi, where ksi is a draw from a normal(0,1) and rho is this parameter. |
NormalTruncation |
Real | 1.96 |
When calculating Monte-Carlo simulation using a symmetric truncated normal distrubtion, this parameters T sets the value of the truncation in the interval [-T:T]. |
TSExpTheta |
Real | 0.5 |
|
TSFractionGradientRequired |
Real | 0.1 |
|
TolSchnabelEskow |
Real | 0.00492157 |
|
cfsqpEps |
Real | 6.05545e-06 |
See CFSQP manual. In general, it should not be changed. |
cfsqpEpsEqn |
Real | 6.05545e-06 |
See CFSQP manual. In general, it should not be changed. |
cfsqpUdelta |
Real | 0 |
See CFSQP manual. In general, it should not be changed. |
missingValue |
Real | 99999 |
Default value for composite literals. |
sensitivityAnalysisAlpha |
Real | 0.05 |
Sensitivity analysis is performed by simulation. Biogeme reports the alpha and the 1-alpha quantiles of the simulated values. |
singularValueThreshold |
Real | 0.0001 |
A singular value lesser of equal to this value is considered to be zero. |
solvoptErrorArgument |
Real | 0.0001 |
|
solvoptErrorFunction |
Real | 1e-06 |
See SOLVOPT manual. In general, it should not be changed. |
tTestThreshold |
Real | 1.96 |
Set the threshold for the t-test hypothesis tests. If the absolute value of a t-test is less than the value of this parameter, a symbol * will be appended to the relevant line in the report file (or the symbol defined by the previous parameter). |
toleranceCheckDerivatives |
Real | 0.001 |
Difference between analytical and finite differences derivative is considered to be significant if greater or equal to this value |
HeaderForWeightInSimulatedResults |
String | __weight |
Biogeme includes the weight of each observation in the simulation results. This parameters sets the label of the resulting column in the output. |
HeaderOfRowId |
String | __rowId__ |
Biogeme assumes that the data file contains a virtual column where the number of the row is reported. The name of this column is defined by this parameter, and can be used in the specification. |
OutputFileForSensitivityAnalysis |
String | __sensitivity.dat |
Biogeme performs sensitivity analysis by simulation. If asked by the user, each simulated value is stored in the file with the name defined by this parameter. |
RandomDistribution |
String | MLHS |
Type of draws used for simulating random distributions. Valid values are
|
individualId |
String | __rowId__ |
The name of the variable that identifies the individuals in the sample. It is used by the Bayesian estimation procedure, that generates realizations of random parameters for each individual (see Train, 2003, chap. 12) |
optimizationAlgorithm |
String | BIO |
Name of the optimization algorithm used to solve the maximum likelihood estimation problem. Valid values are:
|
stopFileName |
String | STOP |
During the optimization process, Biogeme checks for the existence of a file, whose name is defined by this parameter. If the file exists, Biogeme interrupts the iterations and generate output files. This is convenient to prematurely stop iterations without loosing the computations performed thus far. |
warningSign |
String | * |
Signs printed in the estimation report in front of parameters such that the t-test is between -1.96 and 1.96 (or the value defined by the parameter tTestThreshold ). |
BTRCheapHessian |
Integer | 1 |
If 1, BHHH (see Berndt et al, 1974) is used as an approximation of the second derivatives matrix. |
BTRExactHessian |
Integer | 1 |
|
BTRIncreaseDraws |
Integer | 2 |
If BIOMC is used for simulated maximum likelihood estimation, this parameters defines the factor by which the number of draws is increased. (Not yet implemented) |
BTRInitQuasiNewtonWithBHHH |
Integer | 1 |
If 1, the secant update is initialized with the BHHH (see Berndt et al, 1974) approximation (BIO algorithm). |
BTRInitQuasiNewtonWithTrueHessian |
Integer | 1 |
If 1, the secant update is initialized with the analytical hessian (BIO algorithm). |
BTRMaxIter |
Integer | 1000 |
Maximum number of iterations to be performed by the BIO algorithm. |
BTRQuasiNewtonUpdate |
Integer | 1 |
|
BTRSignificantDigits |
Integer | 7 |
|
BTRStartDraws |
Integer | 10 |
If BIOMC is used for simulated maximum likelihood estimation, this parameter defines the number of draws which are used during the first iterations. (Not yet implemented) |
BTRUnfeasibleCGIterations |
Integer | 0 |
|
BTRUsePreconditioner |
Integer | 1 |
If 1, the subproblem is preconditioned using a modified Cholesky factorization (see Schnabel and Eskow, 1991). |
DumpSensitivityAnalysis |
Integer | 0 |
If this parameter is non zero, Biogeme dumps the values simulated during sensitivity analysis in a file. |
NbrOfDraws |
Integer | 1000 |
Number of draws for the simulation of the random parameters |
NbrOfDrawsForSensitivityAnalysis |
Integer | 100 |
Number of draws for the empirical sensitivity analysis |
Seed |
Integer | 9021967 |
Seed for random number generation. |
accessFirstDataFromMetaIterator |
Integer | 0 |
If the parameter is set to a value different from 0, the first row of a meta iterator can be accessed outside of a rwo iterator. This should be used with caution, as it is in general not the desired effect, and it may hide implementation errors. |
allowNestedMonteCarlo |
Integer | 0 |
If different from 0, nested MonteCarlo statements are allowed in a formula. In general, the nesting is due to a syntax error, and not explicitly desired. Therefore, the default value is 0. |
biogemeDisplay |
Integer | 0 |
If 0, only general messages are displayed on the screen. If 1, more detailed messages are provided. If 2 or more, messages designed for debugging purposes are also included. |
biogemeLogDisplay |
Integer | 1 |
If 0, only general messages are included in the log file. If 1, more detailed messages are provided. If 2 or more, messages designed for debugging purposes are also included. |
buildAnalyticalGradient |
Integer | 1 |
If 1, Biogeme generates the analytical gradient of the log likelihood. If 0, the finite difference approximation is used instead. |
cfsqpIprint |
Integer | 2 |
Set it to 1 for silent mode, and to 2 for information at each iteration of the optimization algorithm. |
cfsqpMaxIter |
Integer | 1000 |
Maximum number of iterations for CFSQP. |
cfsqpMode |
Integer | 100 |
Even if it is a descent algorithm, CFSQP sometimes allows non-monotone iterates, hoping not to be trapped in local minima. If the function is convex, a descent algorithm is more appropriate. In this case, set the value to 100. See CFSQP manual for more details. |
checkDerivatives |
Integer | 0 |
If set to 1, the analytical derivatives of the log likelihood functions and the nonlinear constraints are compared to the finite difference derivatives. This is used mainly for debugging purposes. |
computeInitLoglikelihood |
Integer | 1 |
If 1, Biogeme computes the log likelihood at the starting point, before running the algorithm. |
decimalPrecisionForSimulation |
Integer | 6 |
Sets the decimal precision to be used to format floating-point values on output operations with the SIMULATE function. |
deriveAnalyticalHessian |
Integer | 1 |
The second derivative matrix of the likelihood function is derived if this parameters is different from 0. |
dumpDrawsOnFile |
Integer | 0 |
If set to 1, Biogeme dumps the draws used for simulated likelihood estimation in the file draws.lis . Another file called model.udraws , where model is the name of the model estimated, contains the uniform draws. |
firstIdOfLiterals |
Integer | 10000 |
Each literal is assigned a unique ID by Biogeme. The first of these IDs is defined by this parameter. It is recommended not to modify it. |
includeDataWhenSimulate |
Integer | 0 |
When pythonbiogeme is used to simulate, each variable in the data file are included in the report, if the parameter is set to 1. |
maxGcpIter |
Integer | 10000 |
|
maxPrimeNumbers |
Integer | 1000 |
The generation of Halton sequences is based on prime numbers. This parameter defines the maximum number of prime numbers that can be used. Most users will never have to change the default value. |
monteCarloControlVariateReport |
Integer | 100 |
Include reporting about the added value of the control variate method in terms of precision for k Monte-Carlo calculations, where k is the value of the parameter |
moreRobustToNumericalIssues |
Integer | 0 |
Biogeme performs additional verifications about numerical issues (division by zero, log of zero, overflows, etc.) if the parameter is set to 1. It is at the cost of computing performance. |
numberOfThreads |
Integer | 0 |
This parameter specifies the number of threads that will be launched. Note that it may exceed the actual number of available processors. However, this may affect the performance by creating unnecessary overhead. If the value is 0 (which is the case by default), the number of threads is set to the number of processors, multiplied by the value of the parameter shareOfProcessors / 100. If this number is unavailable, the number of threads is set to 4. |
printPValue |
Integer | 1 |
If 1, Biogeme prints the p-value in the results. The p-value is computed as follows: if t is the t-test of the parameters, p = 2 (1 - Φ(t)),where Φ() is the cumulative density function of the univariate normal distribution. |
saveUniformDraws |
Integer | 0 |
If 1, Biogeme saves the uniform draws used to generate the actual draws. It is used for the test proposed by Fosgerau and Bierlaire (2007). It is automatically set to 1 if the operator bioRecycleDraws is used in the model specification. |
scaleDerivativesInSums |
Integer | 0 |
When calculating derivatives (first and second) of sum, Biogeme divide each element by the value of the function before accumulating them, and re-multiply the final result by the same value. It avoids the accumulation of large numbers, that may go beyond the maximum value that can be represented in memory. Note that it is at the expense of performance. |
shareOfProcessors |
Integer | 50 |
When the parameter numberOfThreads is set to 0, the number of threads is set to the number of available threads reported by the system, multiplied by the value of this parameter, divided by 100. Zero and negative values are ignored. Because of hyperthreading, some systems report more threads than processors physically available |
simulateReportForEveryObservation |
Integer | 1 |
If 1, the output file fir simulation includes records for each data set in the data file. If 0, only aggregate values are provided. |
solvoptDisplay |
Integer | 1 |
Controls the display of the algorithm. See SOLVOPT manual. |
solvoptMaxIter |
Integer | 1000 |
Maximum number of iterations for algorithm SOLVOPT |
svdMaxIter |
Integer | 150 |
Maximum number of iterations for the singular value decomposition of the final second derivative matrix. |
useAnalyticalHessianForOptimization |
Integer | 0 |
If the second derivative matrix is available, it is used in the optimization algorithm if the parameter is different from 0. |
varCovarFromBHHH |
Integer | 0 |
The computation of the variance-covariance matrix of the estimated parameters using finite difference approximation may take a while for complex models. It is sometimes useful to use the BHHH approximation, which is much faster to compute. If so, set this parameter to 1. It is recommended not to use BHHH in the final model. |
warnsForIllegalElements |
Integer | 1 |
The expression Elem is designed to access an element from a dictionary. If Biogeme tries to access an element not in the dictionary, it will trigger a warning if the parameter is set to 1, and stay silent if set to 0. |