Quickstart Guide#
cuopt_cli is built as part of the libcuopt package and you can follow these Quickstart Guide to install it.
To see all available options and their descriptions:
cuopt_cli --help
This will display the complete list of command-line arguments and their usage:
1Usage: cuopt_cli [--help] [--version] [--initial-solution VAR] [--relaxation] [--presolve] [--iteration-limit VAR] [--pdlp-solver-mode VAR] [--method VAR] [--num-cpu-threads VAR] [--augmented VAR] [--folding VAR] [--dualize VAR] [--ordering VAR] [--barrier-dual-initial-point VAR] [--mip-cut-passes VAR] [--mip-mixed-integer-rounding-cuts VAR] [--mip-mixed-integer-gomory-cuts VAR] [--mip-knapsack-cuts VAR] [--mip-strong-chvatal-gomory-cuts VAR] [--mip-reduced-cost-strengthening VAR] [--num-gpus VAR] [--mip-batch-pdlp-strong-branching VAR] [--presolve VAR] [--mip-determinism-mode VAR] [--random-seed VAR] [--mip-reliability-branching VAR] [--time-limit VAR] [--work-limit VAR] [--absolute-dual-tolerance VAR] [--relative-dual-tolerance VAR] [--absolute-primal-tolerance VAR] [--relative-primal-tolerance VAR] [--absolute-gap-tolerance VAR] [--relative-gap-tolerance VAR] [--mip-absolute-tolerance VAR] [--mip-relative-tolerance VAR] [--mip-integrality-tolerance VAR] [--mip-absolute-gap VAR] [--mip-relative-gap VAR] [--primal-infeasible-tolerance VAR] [--dual-infeasible-tolerance VAR] [--mip-cut-change-threshold VAR] [--mip-cut-min-orthogonality VAR] [--infeasibility-detection VAR] [--strict-infeasibility VAR] [--per-constraint-residual VAR] [--save-best-primal-so-far VAR] [--first-primal-feasible VAR] [--mip-scaling VAR] [--mip-heuristics-only VAR] [--log-to-console VAR] [--crossover VAR] [--eliminate-dense-columns VAR] [--cudss-deterministic VAR] [--dual-postsolve VAR] [--log-file VAR] [--solution-file VAR] [--user-problem-file VAR] filename
2
3Positional arguments:
4 filename input mps file [required]
5
6Optional arguments:
7 -h, --help shows help message and exits
8 -v, --version prints version information and exits
9 --initial-solution path to the initial solution .sol file [nargs=0..1] [default: ""]
10 --relaxation solve the LP relaxation of the MIP
11 --presolve enable/disable presolve (default: true for MIP problems, false for LP problems)
12 --iteration-limit [nargs=0..1] [default: 2147483647]
13 --pdlp-solver-mode [nargs=0..1] [default: 4]
14 --method [nargs=0..1] [default: 0]
15 --num-cpu-threads [nargs=0..1] [default: -1]
16 --augmented [nargs=0..1] [default: -1]
17 --folding [nargs=0..1] [default: -1]
18 --dualize [nargs=0..1] [default: -1]
19 --ordering [nargs=0..1] [default: -1]
20 --barrier-dual-initial-point [nargs=0..1] [default: -1]
21 --mip-cut-passes [nargs=0..1] [default: 10]
22 --mip-mixed-integer-rounding-cuts [nargs=0..1] [default: -1]
23 --mip-mixed-integer-gomory-cuts [nargs=0..1] [default: -1]
24 --mip-knapsack-cuts [nargs=0..1] [default: -1]
25 --mip-strong-chvatal-gomory-cuts [nargs=0..1] [default: -1]
26 --mip-reduced-cost-strengthening [nargs=0..1] [default: -1]
27 --num-gpus [nargs=0..1] [default: 1]
28 --mip-batch-pdlp-strong-branching [nargs=0..1] [default: 0]
29 --presolve [nargs=0..1] [default: -1]
30 --mip-determinism-mode [nargs=0..1] [default: 0]
31 --random-seed [nargs=0..1] [default: -1]
32 --mip-reliability-branching [nargs=0..1] [default: -1]
33 --time-limit [nargs=0..1] [default: inf]
34 --work-limit [nargs=0..1] [default: inf]
35 --absolute-dual-tolerance [nargs=0..1] [default: 0.0001]
36 --relative-dual-tolerance [nargs=0..1] [default: 0.0001]
37 --absolute-primal-tolerance [nargs=0..1] [default: 0.0001]
38 --relative-primal-tolerance [nargs=0..1] [default: 0.0001]
39 --absolute-gap-tolerance [nargs=0..1] [default: 0.0001]
40 --relative-gap-tolerance [nargs=0..1] [default: 0.0001]
41 --mip-absolute-tolerance [nargs=0..1] [default: 0.0001]
42 --mip-relative-tolerance [nargs=0..1] [default: 0.0001]
43 --mip-integrality-tolerance [nargs=0..1] [default: 1e-05]
44 --mip-absolute-gap [nargs=0..1] [default: 1e-10]
45 --mip-relative-gap [nargs=0..1] [default: 0.0001]
46 --primal-infeasible-tolerance [nargs=0..1] [default: 1e-10]
47 --dual-infeasible-tolerance [nargs=0..1] [default: 1e-10]
48 --mip-cut-change-threshold [nargs=0..1] [default: 0.001]
49 --mip-cut-min-orthogonality [nargs=0..1] [default: 0.5]
50 --infeasibility-detection [nargs=0..1] [default: false]
51 --strict-infeasibility [nargs=0..1] [default: false]
52 --per-constraint-residual [nargs=0..1] [default: false]
53 --save-best-primal-so-far [nargs=0..1] [default: false]
54 --first-primal-feasible [nargs=0..1] [default: false]
55 --mip-scaling [nargs=0..1] [default: true]
56 --mip-heuristics-only [nargs=0..1] [default: false]
57 --log-to-console [nargs=0..1] [default: true]
58 --crossover [nargs=0..1] [default: false]
59 --eliminate-dense-columns [nargs=0..1] [default: true]
60 --cudss-deterministic [nargs=0..1] [default: false]
61 --dual-postsolve [nargs=0..1] [default: true]
62 --log-file [nargs=0..1] [default: ""]
63 --solution-file [nargs=0..1] [default: ""]
64 --user-problem-file [nargs=0..1] [default: ""]
Please refer to LP, QP, and MILP Settings for more details on default values and other options.