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.