List of options
presolve
- Presolve option: "off", "choose" or "on"
- Type: string
- Default: "choose"
solver
- Solver option: "simplex", "choose", "ipm" or "pdlp". If "simplex"/"ipm"/"pdlp" is chosen then, for a MIP (QP) the integrality constraint (quadratic term) will be ignored
- Type: string
- Default: "choose"
parallel
- Parallel option: "off", "choose" or "on"
- Type: string
- Default: "choose"
run_crossover
- Run IPM crossover: "off", "choose" or "on"
- Type: string
- Default: "on"
time_limit
- Time limit (seconds)
- Type: double
- Range: [0, inf]
- Default: inf
ranging
- Compute cost, bound, RHS and basic solution ranging: "off" or "on"
- Type: string
- Default: "off"
infinite_cost
- Limit on |cost coefficient|: values greater than or equal to this will be treated as infinite
- Type: double
- Range: [1e+15, inf]
- Default: 1e+20
infinite_bound
- Limit on |constraint bound|: values greater than or equal to this will be treated as infinite
- Type: double
- Range: [1e+15, inf]
- Default: 1e+20
small_matrix_value
- Lower limit on |matrix entries|: values less than or equal to this will be treated as zero
- Type: double
- Range: [1e-12, inf]
- Default: 1e-09
large_matrix_value
- Upper limit on |matrix entries|: values greater than or equal to this will be treated as infinite
- Type: double
- Range: [1, inf]
- Default: 1e+15
primal_feasibility_tolerance
- Primal feasibility tolerance
- Type: double
- Range: [1e-10, inf]
- Default: 1e-07
dual_feasibility_tolerance
- Dual feasibility tolerance
- Type: double
- Range: [1e-10, inf]
- Default: 1e-07
ipm_optimality_tolerance
- IPM optimality tolerance
- Type: double
- Range: [1e-12, inf]
- Default: 1e-08
objective_bound
- Objective bound for termination of the dual simplex solver
- Type: double
- Range: [-inf, inf]
- Default: inf
objective_target
- Objective target for termination of the MIP solver
- Type: double
- Range: [-inf, inf]
- Default: -inf
random_seed
- Random seed used in HiGHS
- Type: integer
- Range: {0, 2147483647}
- Default: 0
threads
- Number of threads used by HiGHS (0: automatic)
- Type: integer
- Range: {0, 2147483647}
- Default: 0
user_bound_scale
- Exponent of power-of-two bound scaling for model
- Type: integer
- Range: {-2147483647, 2147483647}
- Default: 0
user_cost_scale
- Exponent of power-of-two cost scaling for model
- Type: integer
- Range: {-2147483647, 2147483647}
- Default: 0
simplex_strategy
- Strategy for simplex solver 0 => Choose; 1 => Dual (serial); 2 => Dual (PAMI); 3 => Dual (SIP); 4 => Primal
- Type: integer
- Range: {0, 4}
- Default: 1
simplex_scale_strategy
- Simplex scaling strategy: off / choose / equilibration / forced equilibration / max value 0 / max value 1 (0/1/2/3/4/5)
- Type: integer
- Range: {0, 5}
- Default: 1
simplex_dual_edge_weight_strategy
- Strategy for simplex dual edge weights: Choose / Dantzig / Devex / Steepest Edge (-1/0/1/2)
- Type: integer
- Range: {-1, 2}
- Default: -1
simplex_primal_edge_weight_strategy
- Strategy for simplex primal edge weights: Choose / Dantzig / Devex / Steepest Edge (-1/0/1/2)
- Type: integer
- Range: {-1, 2}
- Default: -1
simplex_iteration_limit
- Iteration limit for simplex solver when solving LPs, but not subproblems in the MIP solver
- Type: integer
- Range: {0, 2147483647}
- Default: 2147483647
simplex_update_limit
- Limit on the number of simplex UPDATE operations
- Type: integer
- Range: {0, 2147483647}
- Default: 5000
simplex_max_concurrency
- Maximum level of concurrency in parallel simplex
- Type: integer
- Range: {1, 8}
- Default: 8
output_flag
- Enables or disables solver output
- Type: boolean
- Default: "true"
log_to_console
- Enables or disables console logging
- Type: boolean
- Default: "true"
solution_file
- Solution file
- Type: string
- Default: ""
log_file
- Log file
- Type: string
- Default: ""
write_solution_to_file
- Write the primal and dual solution to a file
- Type: boolean
- Default: "false"
write_solution_style
- Style of solution file (raw = computer-readable, pretty = human-readable): -1 => HiGHS old raw (deprecated); 0 => HiGHS raw; 1 => HiGHS pretty; 2 => Glpsol raw; 3 => Glpsol pretty; 4 => HiGHS sparse raw
- Type: integer
- Range: {-1, 4}
- Default: 0
glpsol_cost_row_location
- Location of cost row for Glpsol file: -2 => Last; -1 => None; 0 => None if empty, otherwise data file location; 1 <= n <= num_row => Location n; n > num_row => Last
- Type: integer
- Range: {-2, 2147483647}
- Default: 0
write_model_file
- Write model file
- Type: string
- Default: ""
write_model_to_file
- Write the model to a file
- Type: boolean
- Default: "false"
mip_detect_symmetry
- Whether MIP symmetry should be detected
- Type: boolean
- Default: "true"
mip_allow_restart
- Whether MIP restart is permitted
- Type: boolean
- Default: "true"
mip_max_nodes
- MIP solver max number of nodes
- Type: integer
- Range: {0, 2147483647}
- Default: 2147483647
mip_max_stall_nodes
- MIP solver max number of nodes where estimate is above cutoff bound
- Type: integer
- Range: {0, 2147483647}
- Default: 2147483647
mip_improving_solution_save
- Whether improving MIP solutions should be saved
- Type: boolean
- Default: "false"
mip_improving_solution_report_sparse
- Whether improving MIP solutions should be reported in sparse format
- Type: boolean
- Default: "false"
mip_improving_solution_file
- File for reporting improving MIP solutions: not reported for an empty string \"\"
- Type: string
- Default: ""
mip_max_leaves
- MIP solver max number of leaf nodes
- Type: integer
- Range: {0, 2147483647}
- Default: 2147483647
mip_max_improving_sols
- Limit on the number of improving solutions found to stop the MIP solver prematurely
- Type: integer
- Range: {1, 2147483647}
- Default: 2147483647
mip_lp_age_limit
- Maximal age of dynamic LP rows before they are removed from the LP relaxation in the MIP solver
- Type: integer
- Range: {0, 32767}
- Default: 10
mip_pool_age_limit
- Maximal age of rows in the MIP solver cutpool before they are deleted
- Type: integer
- Range: {0, 1000}
- Default: 30
mip_pool_soft_limit
- Soft limit on the number of rows in the MIP solver cutpool for dynamic age adjustment
- Type: integer
- Range: {1, 2147483647}
- Default: 10000
mip_pscost_minreliable
- Minimal number of observations before MIP solver pseudo costs are considered reliable
- Type: integer
- Range: {0, 2147483647}
- Default: 8
mip_min_cliquetable_entries_for_parallelism
- Minimal number of entries in the MIP solver cliquetable before neighbourhood queries of the conflict graph use parallel processing
- Type: integer
- Range: {0, 2147483647}
- Default: 100000
mip_feasibility_tolerance
- MIP feasibility tolerance
- Type: double
- Range: [1e-10, inf]
- Default: 1e-06
mip_heuristic_effort
- Effort spent for MIP heuristics
- Type: double
- Range: [0, 1]
- Default: 0.05
mip_rel_gap
- Tolerance on relative gap, |ub-lb|/|ub|, to determine whether optimality has been reached for a MIP instance
- Type: double
- Range: [0, inf]
- Default: 0.0001
mip_abs_gap
- Tolerance on absolute gap of MIP, |ub-lb|, to determine whether optimality has been reached for a MIP instance
- Type: double
- Range: [0, inf]
- Default: 1e-06
mip_min_logging_interval
- MIP minimum logging interval
- Type: double
- Range: [0, inf]
- Default: 5
ipm_iteration_limit
- Iteration limit for IPM solver
- Type: integer
- Range: {0, 2147483647}
- Default: 2147483647
pdlp_native_termination
- Use native termination for PDLP solver: Default = false
- Type: boolean
- Default: "false"
pdlp_scaling
- Scaling option for PDLP solver: Default = true
- Type: boolean
- Default: "true"
pdlp_iteration_limit
- Iteration limit for PDLP solver
- Type: integer
- Range: {0, 2147483647}
- Default: 2147483647
pdlp_e_restart_method
- Restart mode for PDLP solver: 0 => none; 1 => GPU (default); 2 => CPU
- Type: integer
- Range: {0, 2}
- Default: 1
pdlp_d_gap_tol
- Duality gap tolerance for PDLP solver: Default = 1e-4
- Type: double
- Range: [1e-12, inf]
- Default: 0.0001
qp_iteration_limit
- Iteration limit for QP solver
- Type: integer
- Range: {0, 2147483647}
- Default: 2147483647
qp_nullspace_limit
- Nullspace limit for QP solver
- Type: integer
- Range: {0, 2147483647}
- Default: 4000
blend_multi_objectives
- Blend multiple objectives or apply lexicographically
- Type: boolean
- Default: "true"