# Parameters

Parameters control the operation of the Cardinal Optimizer. They can be modified before the optimization begins. Each parameter has its own default value and value range. Before starting the solution, user can set the parameters to different values, so as to put forward specific requirements on the solution algorithm and solution process. Of course, the default settings can also be maintained.

According to the task performed by the solver COPT and the optimization problem solved, it can be divided into different types of parameters.

This chapter will introduce the parameters constants provided by COPT and their meanings.

## Limits and tolerances

Table 16 Limits and tolerances parameters

Name

Type

Description

TimeLimit

Double

Time limit of the optimization

SolTimeLimit

Double

Time limit if a primal feasible solution has been found

NodeLimit

Integer

Node limit of the optimization

BarIterLimit

Integer

Iteration limit of barrier method

MatrixTol

Double

Input matrix coefficient tolerance

FeasTol

Double

The feasibility tolerance

DualTol

Double

The tolerance for dual solutions and reduced cost

IntTol

Double

The integrality tolerance for variables

RelGap

Double

The relative gap of optimization

AbsGap

Double

The absolute gap of optimization

• `TimeLimit`

Double parameter.

Time limit of the optimization.

Default: 1e20

Minimal: 0

Maximal: 1e20

• `SolTimeLimit`

Double parameter.

Time limit if a primal feasible solution has been found.

Default: 1e20

Minimal: 0

Maximal: 1e20

• `NodeLimit`

Integer parameter.

Node limit of the optimization.

Default: -1 (Choose automatically)

Minimal: -1 (Choose automatically)

Maximal: `INT_MAX`

• `BarIterLimit`

Integer parameter.

Iteration limit of barrier method.

Default: 500

Minimal: 0

Maximal: `INT_MAX`

• `MatrixTol`

Double parameter.

Input matrix coefficient tolerance.

Default: 1e-10

Minimal: 0

Maximal: 1e-7

• `FeasTol`

Double parameter.

The feasibility tolerance.

Default: 1e-6

Minimal: 1e-9.

Maximal: 1e-4

• `DualTol`

Double parameter.

The tolerance for dual solutions and reduced cost.

Default: 1e-6

Minimal: 1e-9

Maximal: 1e-4

• `IntTol`

Double parameter.

The integrality tolerance for variables.

Default: 1e-6

Minimal: 1e-9

Maximal: 1e-1

• `RelGap`

Double parameter.

The relative gap of optimization.

Default: 1e-4

Minimal: 0

Maximal: `DBL_MAX`

• `AbsGap`

Double parameter.

The absolute gap of optimization.

Default: 1e-6

Minimal: 0

Maximal: `DBL_MAX`

## Presolving and scaling

Table 17 Presolving and scaling parameters

Name

Type

Description

Presolve

Integer

Level of presolving before solving a model

Scaling

Integer

Whether to perform scaling before solving a problem

Dualize

Integer

Whether to dualize a problem before solving it

• `Presolve`

Integer parameter.

Level of presolving before solving a model.

Default: -1

Possible values:

-1: Choose automatically.

0: Off.

1: Fast.

2: Normal.

3: Aggressive.

4: No Limitations, continues until the model cannot be modified (may be very time-consuming).

• `Scaling`

Integer parameter.

Whether to perform scaling before solving a problem.

Default: -1

Possible values:

-1: Choose automatically.

0: No scaling.

1: Apply scaling.

• `Dualize`

Integer parameter.

Whether to dualize a problem before solving it.

Default: -1

Possible values:

-1: Choose automatically.

0: No dualizing.

1: Dualizing the problem.

## Other parameters

• `Logging`

Integer parameter.

Whether to print optimization logs.

Default: 1

Possible values:

0: No optimization logs.

1: Print optimization logs.

• `LogToConsole`

Integer parameter.

Whether to print optimization logs to console.

Default: 1

Possible values:

0: No optimization logs to console.

1: Print optimization logs to console.

## Methods for accessing and setting parameters

In different programming interfaces, the ways to access and set parameters are slightly different. For details, please refer to the corresponding chapters for each programming language API: