Skip to content

Commit eada8f3

Browse files
committed
Reworked option definition file: adding additional description text, scrapping trailing blanks, added multiple new MIP options (mostly related to cuts)
1 parent 37520b4 commit eada8f3

1 file changed

Lines changed: 17 additions & 8 deletions

File tree

assets/optcuopt.def

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,28 @@
33
*
44
num_cpu_threads integer 0 -1 -1 maxint 1 1 Controls the number of CPU threads used in the LP and MIP solvers (default GAMS Threads)
55
num_gpus integer 0 1 1 2 1 2 Controls the number of GPUs to use for the solve. This setting is only relevant for LP problems that uses concurrent mode and supports up to 2 GPUs at the moment. Using this mode will run PDLP and barrier in parallel on different GPUs to avoid sharing single GPU resources.
6-
presolve enumint 0 -1 1 1 Modify chosen presolve procedure
6+
presolve enumint 0 -1 1 1 Controls which presolver (if any) to use for presolve reductions.
77
-1 1 default (Papilo for MIP, PSLP for LP)
88
0 1 off (disable presolve)
99
1 1 papilo
1010
2 1 pslp
11-
dual_postsolve boolean 0 0 1 2 Controls whether dual postsolve is enabled when using Papilo presolver for LP problems
11+
dual_postsolve boolean 0 0 1 2 Controls whether dual postsolve is enabled when using Papilo presolver for LP problems. Enabled by default for LP when Papilo presolve is selected.
1212
time_limit integer 0 maxint 0 maxint 1 1 Controls the time limit in seconds after which the solver will stop and return the current solution (default GAMS ResLim)
1313
prob_read string 1 "" 1 1 Reads a problem from an MPS file
1414
pdlp_solver_mode enumint 0 4 1 2 Controls the mode under which PDLP should operate
15-
0 1 stable1
16-
1 1 stable2
15+
0 1 stable1 First obsolete legacy predecessor of stable3
16+
1 1 stable2 Second obsolete legacy predecessor of stable3
1717
2 1 methodical1 Takes slower individual steps, but fewer are needed to converge.
1818
3 1 fast1 Fastest mode, but with less success in convergence.
19-
4 1 stable3 Best overall mode from experiments; balances speed and convergence success. If you want to use the legacy version, use Stable1. (default)
19+
4 1 stable3 Best overall mode from experiments; balances speed and convergence success. If you want to use the legacy version, use stable1. (default)
2020
method enumint 0 0 1 2 Controls the method to solve the linear programming problem
2121
0 1 concurrent Use PDLP, dual simplex, and barrier in parallel (default).
2222
1 1 pdlp Use the PDLP method.
2323
2 1 dual_simplex Use the dual simplex method.
2424
3 1 method_barrier Use the barrier (interior-point) method.
2525
iteration_limit integer 0 maxint 0 maxint 1 2 Controls the iteration limit after which the solver will stop and return the current solution (default GAMS IterLim)
26-
infeasibility_detection boolean 0 0 1 2 Controls whether PDLP should detect infeasibility
27-
strict_infeasibility boolean 0 0 1 2 Controls the strict infeasibility mode in PDLP
26+
infeasibility_detection boolean 0 0 1 2 Controls whether PDLP should detect infeasibility
27+
strict_infeasibility boolean 0 0 1 2 Controls the strict infeasibility mode in PDLP
2828
crossover boolean 0 0 1 2 Controls whether PDLP should crossover to a basic solution after an optimal solution is found
2929
save_best_primal_so_far boolean 0 0 1 2 Controls whether PDLP should save the best primal solution so far
3030
first_primal_feasible boolean 0 0 1 2 Controls whether PDLP should stop when the first primal feasible solution is found
@@ -59,7 +59,7 @@ absolute_gap_tolerance double 0 0.0001 0 maxdouble 1 2 Controls the absolute gap
5959
relative_gap_tolerance double 0 0.0001 0 maxdouble 1 2 Controls the relative gap tolerance used in PDLP's duality gap check
6060
primal_infeasible_tolerance double 0 1e-08 0 maxdouble 0 2 Unknown
6161
dual_infeasible_tolerance double 0 1e-08 0 maxdouble 0 2 Unknown
62-
miptrace string 0 "" 1 3 filename of MIP trace file
62+
miptrace string 0 "" 1 3 filename of MIP trace file which logs the best found (incumbent) and best bound over time
6363
mipstart boolean -1 0 1 3 whether it should be tried to use the initial variable levels as initial MIP solution
6464
mip_heuristics_only boolean 0 0 1 3 Controls if only the GPU heuristics should be run
6565
mip_scaling boolean 0 1 1 3 Controls if scaling should be applied to the MIP problem
@@ -68,6 +68,15 @@ mip_relative_tolerance double 0 0.0001 0 maxdouble 1 3 Controls the MIP relative
6868
mip_integrality_tolerance double 0 1e-05 0 maxdouble 1 3 Controls the MIP integrality tolerance
6969
mip_absolute_gap double 0 1e-10 0 maxdouble 1 3 Controls the absolute tolerance used to terminate the MIP solve (default GAMS OptCA)
7070
mip_relative_gap double 0 1e-5 0 maxdouble 1 3 Controls the relative tolerance used to terminate the MIP solve (default GAMS OptCR)
71+
mip_cut_passes integer 0 10 0 maxint 1 3 Controls the number of cut passes to run. Set this value to 0 for no cuts
72+
mip_mixed_integer_rounding_cuts integer 0 -1 -1 1 1 3 Controls whether to use mixed integer rounding cuts
73+
mip_mixed_integer_gomory_cuts integer 0 -1 -1 1 1 3 Controls whether to use mixed integer Gomory cuts
74+
mip_strong_chvatal_gomory_cuts integer 0 -1 -1 1 1 3 Controls whether to use strong Chvatal-Gomory cuts
75+
mip_knapsack_cuts integer 0 -1 -1 1 1 3 Controls whether to use knapsack cuts
76+
mip_cut_change_threshold double 0 1e-03 0 maxdouble 1 3 Controls the threshold for the improvement in the dual bound per cut pass
77+
mip_cut_min_orthogonality double 0 0.5 0 maxdouble 1 3 Controls the minimum orthogonality required for a cut to be added to the LP relaxation
78+
mip_reduced_cost_strengthening integer 0 -1 -1 2 1 3 Controls whether to use reduced-cost strengthening
79+
mip_reliability_branching integer 0 -1 -1 maxint 1 3 Controls the reliablity branching mode
7180
*
7281
* Groups
7382
*

0 commit comments

Comments
 (0)