Difference between revisions of "Optimization Status Functions"

Line 11: Line 11:
 
of the optimization problem «Opt». It is wise to examine the status before evaluating [[Opt
 
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.
 
Solution]]() to avoid an error message. Possible results are shown in the table below.
 +
 +
{| class="wikitable"
 +
!Status Number
 +
!Status Text
 +
|-
 +
|<nowiki>-3</nowiki>
 +
|Invalid status.
 +
|-
 +
|<nowiki>-2</nowiki>
 +
|Ignore status. Used when dummy result code needs to be overridden.
 +
|-
 +
|<nowiki>-1</nowiki>
 +
|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.
 +
|}
  
 
{| class=""wikitable"
 
{| class=""wikitable"

Revision as of 22:26, 30 December 2015


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.


See Also

Comments


You are not allowed to post comments.