Solver Options

Solver Statistics

ALTRO logs intermediate values during the course of the solve. These values are all stored in the SolverStats type, accessible via solver.stats or Altro.stats(solver). This currently stores the following information:

FieldDescription
iterationsTotal number of iterations
iterations_outerNumber of outer loop (Augmented Lagrangian) iterations
iterations_pnNumber of projected newton iterations
iterationVector of iteration number
iteration_outerVector of outer loop iteration number
costVector of costs
dJChange in cost
c_maxMaximum constrained violation
gradientApproximation of dual optimality residual (2-norm of gradient of the Lagrangian)
penalty_maxMaximum penalty parameter

The other fields are used interally by the solver and not important to the end user.

The vector fields of the SolverStats type can be converted to a dictionary via Dict(stats::SolverStats), which can then be cast into a tabular format such as DataFrame from DataFrames.jl.