Python Biogeme Parameters

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.

Parameter name Type of value 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
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.
donlp2delmin Real 1e-06 See DONLP2 manual. In general, it should not be changed.
donlp2epsdif Real 0 See DONLP2 manual. In general, it should not be changed.
donlp2epsx Real 1e-05 See DONLP2 manual. In general, it should not be changed.
donlp2smallw Real 3.66685e-11 See DONLP2 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).
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 PSEUDO Type of draws used for simulating random distributions. Valid values are
PSEUDO
Pseudo random numbers
HALTON
Halton sequences
MLHS
Modified Latin Hypercube Sampling (see Hess et al., 2006).
optimizationAlgorithm String BIO Name of the optimization algorithm used to solve the maximum likelihood estimation problem. Valid values are:
BIO
Trust region method implemented for Biogeme
CFSQP
SQP method by Craig et al. (1994)
DONLP2
SQP method by Spellucci (2003)
SOLVOPT
Implementation of Shor's method by Kuntsevich and Kappel (1997)
Note that BIOMC is not yet available in Python Biogeme.
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 0
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)
BTRInitQuasiNewtonWithTrueHessian Integer 0
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
Seed Integer 9021967 Seed for random number generation.
antitheticDraws Integer 1 If 1, Biogeme uses antithetic draws for the simulation of random parameters.
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.
donlp2nreset Integer 9 See DONLP2 manual. In general, it should not be changed.
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.
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.
moreRobustToNumericalIssues Integer 0 Biogeme performs additional verifications about numerical issues (division by zero, log of zero, overflws, etc.) if the parameter is set to 1. It is at the cost of computing performance.
numberOfThreads Integer 2 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. It is therefore advised to set this parameter to the exact number of available processors.
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.
simplifyExpressions Integer 1 OBSOLETE. Should not be used.
solvoptDisplay Integer 1 Controls the display of the algorithm. See SOLVOPT manual.
solvoptMaxIter Integer 1000 Maximum number of iterations for algorithm SOLVOPT
svdMaxIter Integer 60 Maximum number of iterations for the singular value decomposition of the final second derivative matrix.
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.
Content
Biogeme