Difference between revisions of "Optimization Status Functions"

Line 16: Line 16:
 
!Status Text
 
!Status Text
 
|-
 
|-
|<nowiki>-3</nowiki>
+
!<nowiki>-3</nowiki>
 
|Invalid status.
 
|Invalid status.
 
|-
 
|-
|<nowiki>-2</nowiki>
+
!<nowiki>-2</nowiki>
 
|Ignore status. Used when dummy result code needs to be overridden.
 
|Ignore status. Used when dummy result code needs to be overridden.
 
|-
 
|-
|<nowiki>-1</nowiki>
+
!<nowiki>-1</nowiki>
 
|Invalid license status. (License expired, missing, invalid, etc.)
 
|Invalid license status. (License expired, missing, invalid, etc.)
 
|-
 
|-
|0
+
!0
 
|Optimal solution has been found.
 
|Optimal solution has been found.
 
|-
 
|-
|1
+
!1
 
|The Solver has converged to the current solution.
 
|The Solver has converged to the current solution.
 
|-
 
|-
|2
+
!2
 
|“No remedies” status. (All remedies failed to find better point.)
 
|“No remedies” status. (All remedies failed to find better point.)
 
|-
 
|-
|3
+
!3
 
|Iterates limit reached. Indicates an early exit of the algorithm.
 
|Iterates limit reached. Indicates an early exit of the algorithm.
 
|-
 
|-
|4
+
!4
 
|Optimizing an unbounded objective function.
 
|Optimizing an unbounded objective function.
 
|-
 
|-
|5
+
!5
 
|Feasible solution could not be found.
 
|Feasible solution could not be found.
 
|-
 
|-
|6
+
!6
 
|Optimization aborted by user. Indicates an early exit of the algorithm.
 
|Optimization aborted by user. Indicates an early exit of the algorithm.
 
|-
 
|-
|7
+
!7
 
|Invalid linear model. Returned when a linearity assumption renders incorrect.
 
|Invalid linear model. Returned when a linearity assumption renders incorrect.
 
|-
 
|-
|8
+
!8
 
|Bad data set status. Returned when a problem data set renders inconsistent
 
|Bad data set status. Returned when a problem data set renders inconsistent
 
|-
 
|-
|9
+
!9
 
|Float error status. (Internal float error.)
 
|Float error status. (Internal float error.)
 
|-
 
|-
|10
+
!10
|Time out status. Returned when the maximum allowed time has been exceeded. Indicates an early exit of the
+
|Time out status. Returned when the maximum allowed time has been exceeded. Indicates an early exit of the algorithm.
algorithm.
 
 
|-
 
|-
|11
+
!11
 
|Memory dearth status. Returned when the system cannot allocate enough memory to perform the optimization.
 
|Memory dearth status. Returned when the system cannot allocate enough memory to perform the optimization.
 
|-
 
|-
|12
+
!12
 
|Interpretation error. (Parser, Diagnostics, or Executor error.)
 
|Interpretation error. (Parser, Diagnostics, or Executor error.)
 
|-
 
|-
|13
+
!13
 
|Fatal API error. (API not responding.)
 
|Fatal API error. (API not responding.)
 
|-
 
|-
|14
+
!14
 
|The Solver has found an integer solution within integer tolerance.
 
|The Solver has found an integer solution within integer tolerance.
 
|-
 
|-
|15
+
!15
 
|Branching and bounding node limit reached. Indicates an early exit of the algorithm.
 
|Branching and bounding node limit reached. Indicates an early exit of the algorithm.
 
|-
 
|-
|16
+
!16
|Branching and bounding maximum number of incumbent points reached. Indicates an early exit of the
+
|Branching and bounding maximum number of incumbent points reached. Indicates an early exit of the algorithm.
algorithm.
 
 
|-
 
|-
|17
+
!17
 
|Probable global optimum reached. Returned when MSL (Bayesian) global optimality test has been satisfied.
 
|Probable global optimum reached. Returned when MSL (Bayesian) global optimality test has been satisfied.
 
|-
 
|-
|18
+
!18
 
|Missing bounds status. Returned for EV/MSL Require Bounds when bounds are missing.
 
|Missing bounds status. Returned for EV/MSL Require Bounds when bounds are missing.
 
|-
 
|-
|19
+
!19
 
|Bounds conflict status. Indicates <=, =>, = bounds conflict with existing binary or all different constraints.
 
|Bounds conflict status. Indicates <=, =>, = bounds conflict with existing binary or all different constraints.
 
|-
 
|-
|20
+
!20
|Bounds inconsistency status. Returned when the lower bound value of a variable is grater than the upper bound
+
|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.
value, i.e., lb[i] > ub[i] for some variable bound i.
 
 
|-
 
|-
|21
+
!21
 
|Derivative error. Returned when API_Jacobian has not been able to compute gradients.
 
|Derivative error. Returned when API_Jacobian has not been able to compute gradients.
 
|-
 
|-
|22
+
!22
 
|Cone overlap status. Returned when a variable appears in more than one cone.
 
|Cone overlap status. Returned when a variable appears in more than one cone.
 
|-
 
|-
|999
+
!999
 
|Exception occurred status. Returned when an exception has been caught by try/catch top-level.
 
|Exception occurred status. Returned when an exception has been caught by try/catch top-level.
 
|-
 
|-
|1000
+
!1000
 
|Custom base status. (Base for Solver engine custom results.)
 
|Custom base status. (Base for Solver engine custom results.)
 
|-
 
|-
|1102
+
!1102
 
|The quadratic constraints are non-convex, the SOCP engine cannot solve this problem.
 
|The quadratic constraints are non-convex, the SOCP engine cannot solve this problem.
 
|}
 
|}
  
{| class=""wikitable"
+
==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.
  
|}
+
<big>'''Parameters'''</big>
 +
 
 +
'''«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 <code>True</code> (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.
  
  

Revision as of 22:35, 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.

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

Comments


You are not allowed to post comments.