Initializing help system before first use

Problem Attributes

During the optimization process, various properties of the problem being solved are stored and made available to users of the Xpress NonLinear Libraries in the form of problem attributes. These can be accessed in much the same manner as the controls. Examples of problem attributes include the sizes of arrays, for which library users may need to allocate space before the arrays themselves are retrieved. A full list of the attributes available and their types may be found in this chapter.

Library users are provided with the following functions for obtaining the values of attributes:

XSLPgetintattrib XSLPgetdblattrib
XSLPgetptrattrib XSLPgetstrattrib

The attributes listed in this chapter are all prefixed with XSLP_. It is possible to use the above functions with attributes for the Xpress Optimizer (attributes prefixed with XPRS_). For details of the Optimizer attributes, see the Optimizer manual.

Example of the usage of the functions:

XSLPgetintattrib(Prob, XSLP_ITER, &nIter);
printf("The number of SLP iterations is %d\n", nIter);
XSLPgetdblattrib(Prob, XSLP_ERRORCOSTS, &Errors);
printf("and the total error cost is %lg\n", Errors);

The following is a list of all the Xpress NonLinear attributes:

XSLP_COEFFICIENTS
Number of nonlinear coefficients
XSLP_CURRENTDELTACOST
Current value of penalty cost multiplier for penalty delta vectors
XSLP_CURRENTERRORCOST
Current value of penalty cost multiplier for penalty error vectors
XSLP_CVS
Number of character variables
XSLP_DELTAS
Number of delta vectors created during augmentation
XSLP_ECFCOUNT
Number of infeasible constraints found at the point of linearization
XSLP_EQUALSCOLUMN
Index of the reserved "=" column
XSLP_ERRORCOSTS
Total penalty costs in the solution
XSLP_EXPLOREDELTAS
Number of variables with an exploration-type delta set up in the problem
XSLP_GLOBALFUNCOBJECT
The user-defined global function object
XSLP_IFS
Number of internal functions
XSLP_IMPLICITVARIABLES
Number of SLP variables appearing only in coefficients
XSLP_INTEGERDELTAS
Number of variables set up with an integer delta in the problem
XSLP_INTERNALFUNCCALLS
Number of calls made to internal functions
XSLP_ITER
SLP iteration count
XSLP_JOBID
Unique identifier for the current job
XSLP_MINORVERSION
Xpress NonLinear minor version number
XSLP_MINUSPENALTYERRORS
Number of negative penalty error vectors
XSLP_MIPITER
Total number of SLP iterations in MISLP
XSLP_MIPNODES
Number of nodes explored in MISLP. This includes any nodes for which a non-linear solve has been carried out.
XSLP_MIPPROBLEM
The underlying Optimizer MIP problem. XSLP_MIPPROBLEM is a reference of type XPRSprob, and should be used in MISLP callbacks to access MIP-specific Optimizer values (such as node and parent numbers).
XSLP_MIPSOLS
Number of integer solutions found in MISLP. This includes solutions found during the tree search or any heuristics.
XSLP_MODELCOLS
Number of model columns in the problem
XSLP_MODELROWS
Number of model rows in the problem
XSLP_MSSTATUS
Status of the mutlistart search
XSLP_NLPSTATUS
The solution status of the problem.
XSLP_NONCONSTANTCOEFF
Number of coefficients in the augmented problem that might change between SLP iterations
XSLP_NONLINEARCONSTRAINTS
Number of nonlinear constraints in the problem
XSLP_OBJVAL
Objective function value excluding any penalty costs
XSLP_ORIGINALCOLS
Number of model columns in the problem
XSLP_ORIGINALROWS
Number of model rows in the problem
XSLP_PENALTYDELTACOLUMN
Index of column costing the penalty delta row
XSLP_PENALTYDELTAROW
Index of equality row holding the penalties for delta vectors
XSLP_PENALTYDELTAS
Number of penalty delta vectors
XSLP_PENALTYDELTATOTAL
Total activity of penalty delta vectors
XSLP_PENALTYDELTAVALUE
Total penalty cost attributed to penalty delta vectors
XSLP_PENALTYERRORCOLUMN
Index of column costing the penalty error row
XSLP_PENALTYERRORROW
Index of equality row holding the penalties for penalty error vectors
XSLP_PENALTYERRORS
Number of penalty error vectors
XSLP_PENALTYERRORTOTAL
Total activity of penalty error vectors
XSLP_PENALTYERRORVALUE
Total penalty cost attributed to penalty error vectors
XSLP_PLUSPENALTYERRORS
Number of positive penalty error vectors
XSLP_PRESOLVEDELETEDDELTA
Number of potential delta variables deleted by XSLPpresolve
XSLP_PRESOLVEELIMINATIONS
Number of SLP variables eliminated by XSLPpresolve
XSLP_PRESOLVEFIXEDCOEF
Number of SLP coefficients fixed by XSLPpresolve
XSLP_PRESOLVEFIXEDDR
Number of determining rows fixed by XSLPpresolve
XSLP_PRESOLVEFIXEDNZCOL
Number of variables fixed to a nonzero value by XSLPpresolve
XSLP_PRESOLVEFIXEDSLPVAR
Number of SLP variables fixed by XSLPpresolve
XSLP_PRESOLVEFIXEDZCOL
Number of variables fixed at zero by XSLPpresolve
XSLP_PRESOLVEPASSES
Number of passes made by the SLP nonlinear presolve procedure
XSLP_PRESOLVESTATE
Indicates if the problem is presolved
XSLP_PRESOLVETIGHTENED
Number of bounds tightened by XSLPpresolve
XSLP_SBXCONVERGED
Number of step-bounded variables converged only on extended criteria
XSLP_SEMICONTDELTAS
Number of variables with a minimum perturbation step set up in the problem
XSLP_SOLSTATUS
Indicates the type of solution returned by the solver.
XSLP_SOLUTIONPOOL
The underlying solution pool. XSLP_SOLUTIONPOOL is a reference of type XPRSmipsolpool. Change control XSLP_ANALYZE to record the solutions into the pool.
XSLP_SOLVERSELECTED
Includes information of which Xpress solver has been used to solve the problem
XSLP_STATUS
Bitmap holding the problem convergence status
XSLP_STOPSTATUS
Status of the optimization process.
XSLP_TOLSETS
Number of tolerance sets
XSLP_TOTALEVALUATIONERRORS
The total number of evaluation errors during the solve
XSLP_UCCONSTRAINEDCOUNT
Number of unconverged variables with coefficients in constraining rows
XSLP_UFINSTANCES
Number of user function instances
XSLP_UFS
Number of user functions
XSLP_UNCONVERGED
Number of unconverged values
XSLP_UNIQUEPREFIX
Unique prefix for generated names
XSLP_USEDERIVATIVES
Indicates whether numeric or analytic derivatives were used to create the linear approximations and solve the problem
XSLP_USERFUNCCALLS
Number of calls made to user functions
XSLP_VALIDATIONINDEX_A
Absolute validation index
XSLP_VALIDATIONINDEX_K
Relative first order optimality validation index
XSLP_VALIDATIONINDEX_R
Relative validation index
XSLP_VARIABLES
Number of SLP variables
XSLP_VERSION
Xpress NonLinear major version number
XSLP_VERSIONDATE
Date of creation of Xpress NonLinear
XSLP_VSOLINDEX
Vertex solution index
XSLP_XPRSPROBLEM
The underlying Optimizer problem
XSLP_XSLPPROBLEM
The Xpress NonLinear problem
XSLP_ZEROESRESET
Number of placeholder entries set to zero
XSLP_ZEROESRETAINED
Number of potentially zero placeholders left untouched
XSLP_ZEROESTOTAL
Number of potential zero placeholder entries