# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# - - - - - - - - - - - - - - - - MPCfg.txt - - - - - - - - - - - - - - - -
#
# The ComputeConfig of the :MILPSolver of the MasterProblemBlock used by
# the BundleSolver, shared by MPBCfg.txt and MPBCfg-IP.txt.
#
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

ComputeConfig         # exact type of the ComputeConfig object

1  # f_diff == 0 ==> all non-provided parameters are set to the default value
   # f_diff == 1 ==> all non-provided parameters are not changed

4 # number of integer parameters

# now all the integer parameters
intLogVerb      0 # log verbosity of the MILPSolver
intRelaxIntVars 1 # nonzero if the continuous relaxation is solved
intCutSepPar    7 # separate user cuts + lazy constraints
intMaxThread    1 # single-threaded for deterministic master reproducibility

# All specific CPLEX parameter (uncomment based on Solver)
# CPXPARAM_LPMethod 1 # 0 = auto, 1 = primal, 2 = dual, 4 = barrier
#CPXPARAM_Emphasis_Numerical      1   # numerical precision emphasis

# All specific GUROBI parameter (uncomment based on Solver)
# Method 1 # 0 = primal, 1 = dual simplex, 2 = barrier: the multipliers
                  # of the master ARE the algorithm, and an interior point
                  # them only to about 1e-7 relative, which the stopping test
                  # of the bundle cannot survive; besides, the barrier cannot
                  # restart from the previous basis, so it re-solves the
                  # from scratch at every call, while the simplex
                  # after the new columns for a fraction of the iterations
#NumericFocus 1   # 0 = auto, 1..3 = increasing precision focus: the master
                  # is small and re-solved thousands of times, so whatever
                  # extra care is asked is paid at every one of them, and 3
                  # costs a factor two. 0 is not an option: with it the
                  # Lagrangian dual answers Unfeas on a hydrothermal instance
                  # that has a solution, so this is the least care that
                  # answers right
#Presolve      0   # 0 = off, 1 = conservative, 2 = aggressive (default -1):
                  # left off deliberately, a master the presolve reduces is
                  # declared infeasible on tolerance when the model is badly
                  # scaled, and the bundle reads that as a numerical error

3 # number of double parameters

# now all the double parameters
dblRelAcc       1e-08 # relative accuracy required to solution
dblAAccSol      1e-08 # absolute accuracy required to solution
dblRAccSol      1e-08 # relative accuracy of the solution pool

# The master has to satisfy its own rows *tighter* than the oracle satisfies
# its own feasibility, or the loop cannot end: a step that violates a
# vertical row by less than the default 1e-6 is feasible for the master and
# infeasible for the subproblem, which answers with the very cut that is
# already there, and the same iteration repeats forever.
#FeasibilityTol 1e-09 # how much a row of the master may be violated
#OptimalityTol  1e-09 # how much a reduced cost of the master may be off

# All specific HiGHS parameter (uncomment based on Solver)
# (not tighter: at 1e-9 the QP solver of HiGHS fails on the master)
#primal_feasibility_tolerance     1e-9
#dual_feasibility_tolerance       1e-9

0 # number of string parameters

# now all the string parameters
# [none]

#strOutputFile master.lp

# All specific HiGHS parameter (uncomment based on Solver)
#presolve  off    # disable presolve for reproducibility
#solver    ipm    # interior point: converges to analytic center (unique x*)

0 # number of vector-of-int parameters

# now all the vector-of-int parameters
# [none]

0 # number of vector-of-double parameters

# now all the vector-of-double parameters
# [none]

0 # number of vector-of-string parameters

# now all the vector-of-string parameters
# [none]

# pointer to the "extra" Configuration
* # [none]

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# - - - - - - - - - - - - - - - END MPCfg.txt - - - - - - - - - - - - - - -
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
