Skip to main content

Type Alias: SolveSummary

SolveSummary: { actualWorkers: number; cpu: string; duration: number; memoryUsed: number; nbBranches: number; nbConstraints: number; nbFails: number; nbIntervalVars: number; nbIntVars: number; nbLNSSteps: number; nbRestarts: number; nbSolutions: number; objective: ObjectiveValue; objectiveBound: ObjectiveValue; objectiveSense: "minimize" | "maximize" | undefined; proof: boolean; solver: string; }

Summary statistics from the solver at completion.

Type declaration

actualWorkers

actualWorkers: number

Number of worker threads actually used during solving.

Returns

Worker count.

Remarks

This is the actual number of workers used by the solver, which may differ from the requested Parameters.nbWorkers if that parameter was not specified (auto-detect) or if the system has fewer cores than requested.

cpu

cpu: string

CPU name detected by the solver.

Returns

CPU model name.

Remarks

Contains the CPU model name as detected by the operating system.

duration

duration: number

Total duration of the solve in seconds.

Returns

Seconds elapsed.

memoryUsed

memoryUsed: number

Memory used by the solver in bytes.

Returns

Bytes used.

nbBranches

nbBranches: number

Total number of branches explored during the solve.

Returns

Branch count.

nbConstraints

nbConstraints: number

Number of constraints in the model.

Returns

Constraint count.

nbFails

nbFails: number

Total number of failures encountered during the solve.

Returns

Failure count.

nbIntervalVars

nbIntervalVars: number

Number of interval variables in the model.

Returns

Interval variable count.

nbIntVars

nbIntVars: number

Number of integer variables in the model.

Returns

Integer variable count.

nbLNSSteps

nbLNSSteps: number

Total number of Large Neighborhood Search steps.

Returns

LNS step count.

nbRestarts

nbRestarts: number

Total number of restarts performed during the solve.

Returns

Restart count.

nbSolutions

nbSolutions: number

Number of solutions found during the solve.

Returns

Solution count.

objective?

optional objective: ObjectiveValue

Best objective value found (for optimization problems).

Returns

The objective value, or None if not applicable.

Remarks

The value is None when:

  • No objective was specified in the model (no Model.minimize or Model.maximize call).
  • No solution was found.
  • The objective expression has an absent value in the best solution.

objectiveBound?

optional objectiveBound: ObjectiveValue

Proved bound on the objective value.

Returns

The objective bound, or None if no bound was proved.

Remarks

For minimization problems, this is a lower bound: the solver proved that no solution exists with an objective value less than this bound.

For maximization problems, this is an upper bound: the solver proved that no solution exists with an objective value greater than this bound.

The value is None when no bound was proved or for satisfaction problems.

objectiveSense

objectiveSense: "minimize" | "maximize" | undefined

Objective direction.

Returns

'minimize', 'maximize', or None for satisfaction problems.

Remarks

Indicates whether the model was a minimization problem, maximization problem, or a satisfaction problem (no objective).

proof

proof: boolean

Whether the solve ended with a proof (optimality or infeasibility).

Returns

True if the solve completed with a proof.

Remarks

When True, the solver has either:

When False, the solve was interrupted (e.g., by time limit) before a proof could be established.

solver

solver: string

Solver name and version string.

Returns

The solver identification string.

Remarks

Contains the solver name followed by its version number.

Remarks

Contains statistics about the solve including the number of solutions found, the total duration, search statistics (branches, fails, restarts), and information about the model and environment.

This class is passed to the on_summary callback. For a richer interface with additional tracking data (solution history, objective bounds history), see SolveResult.