Optimization Status Functions
Optimization status functions can reveal important details such as the selected engine matrix coefficients, and other information that may be helpful with troubleshooting.
OptStatusNum(Opt) / OptStatusText(Opt)
Returns the status number as an integer and corresponding text message, respectively, of the optimization problem «Opt». It is wise to examine the status before evaluating [[Opt Solution]]() to avoid an error message. Possible results are shown in the table below.
| Status Number | Status Text |
|---|---|
| -3 | Invalid status. |
| -2 | Ignore status. Used when dummy result code needs to be overridden. |
| -1 | Invalid license status. (License expired, missing, invalid, etc.) |
| 0 | Optimal solution has been found. |
| 1 | The Solver has converged to the current solution. |
| 2 | “No remedies” status. (All remedies failed to find better point.) |
| 3 | Iterates limit reached. Indicates an early exit of the algorithm. |
| 4 | Optimizing an unbounded objective function. |
| 5 | Feasible solution could not be found. |
| 6 | Optimization aborted by user. Indicates an early exit of the algorithm. |
| 7 | Invalid linear model. Returned when a linearity assumption renders incorrect. |
| 8 | Bad data set status. Returned when a problem data set renders inconsistent |
| 9 | Float error status. (Internal float error.) |
| 10 | Time out status. Returned when the maximum allowed time has been exceeded. Indicates an early exit of the algorithm. |
| 11 | Memory dearth status. Returned when the system cannot allocate enough memory to perform the optimization. |
| 12 | Interpretation error. (Parser, Diagnostics, or Executor error.) |
| 13 | Fatal API error. (API not responding.) |
| 14 | The Solver has found an integer solution within integer tolerance. |
| 15 | Branching and bounding node limit reached. Indicates an early exit of the algorithm. |
| 16 | Branching and bounding maximum number of incumbent points reached. Indicates an early exit of the algorithm. |
| 17 | Probable global optimum reached. Returned when MSL (Bayesian) global optimality test has been satisfied. |
| 18 | Missing bounds status. Returned for EV/MSL Require Bounds when bounds are missing. |
| 19 | Bounds conflict status. Indicates <=, =>, = bounds conflict with existing binary or all different constraints. |
| 20 | Bounds inconsistency status. Returned when the lower bound value of a variable is grater than the upper bound value, i.e., lb[i] > ub[i] for some variable bound i. |
| 21 | Derivative error. Returned when API_Jacobian has not been able to compute gradients. |
| 22 | Cone overlap status. Returned when a variable appears in more than one cone. |
| 999 | Exception occurred status. Returned when an exception has been caught by try/catch top-level. |
| 1000 | Custom base status. (Base for Solver engine custom results.) |
| 1102 | The quadratic constraints are non-convex, the SOCP engine cannot solve this problem. |
OptInfo(Opt, Item, Decision, Constraint, asRef)
OptInfo() is a varsatile function that can reveal any available details of the optimization. The most common information available through OptInfo() can also be viewed by evaluating the DefineOptimization() function and doulble-clicking the encoded object (e.g. <<LP>>). This opens a hierarchy of information and click-able reference objects that reveal finer levels of detail.
Parameters
«Opt»
Type: variable
Identifies the node defined using DefineOptimization().
«Item»
Type: text
The characteristic of the optimization you are interested in.
«Decision», «Constraint»'
Type: variable, optional
Optional «Decision» and «Constraint» parameters can filter information to be relevant to individual decisions and constraints.
«asRef»
A Boolean value (0 or 1). If True (1), the result will be encoded in a clickable reference object.
The following table shows the relevance of various information items to optimization engines, along with a description of the information revealed.
See Also
- OptStatusNum()
- OptStatusText()
- OptInfo()
- OptEngineInfo()
- OptShadow()
- [[OptReducedCost]()
- OptObjectiveSa()
- OptRhsSa()
- OptSlack()
- OptFindIIS()
- OptWriteIIS()
- OptRead()
- [[OptWrite]()
- Category: Optimization Functions
Enable comment auto-refresher