

The LP procedure defines a macro variable named _ORLP_. This variable contains a character string that indicates the status of the procedure. It is set whenever the user gets control, at breakpoints, and at procedure termination. The form of the _ORLP_ character string is STATUS= PHASE= OBJECTIVE= P_FEAS= D_FEAS= INT_ITER= INT_FEAS= ACTIVE= INT_BEST= PHASE1_ITER= PHASE2_ITER= PHASE3_ITER=. The terms are interpreted as follows:
|
STATUS= |
the status of the current solution |
|
PHASE= |
the phase the procedure is in (1, 2, or 3) |
|
OBJECTIVE= |
the current objective value |
|
P_FEAS= |
whether the current solution is primal feasible |
|
D_FEAS= |
whether the current solution is dual feasible |
|
INT_ITER= |
the number of integer iterations performed |
|
INT_FEAS= |
the number of integer feasible solutions found |
|
ACTIVE= |
the number of active nodes in the current branch-and-bound tree |
|
INT_BEST= |
the best integer objective value found |
|
PHASE1_ITER= |
the number of iterations performed in phase 1 |
|
PHASE2_ITER= |
the number of iterations performed in phase 2 |
|
PHASE3_ITER= |
the number of iterations performed in phase 3 |
Table 4.5 shows the possible values for the nonnumeric terms in the string.
Table 4.5: Possible Values for Nonnumeric Terms
|
STATUS= |
P_FEAS= |
D_FEAS= |
|
SUCCESSFUL |
YES |
YES |
|
UNBOUNDED |
NO |
NO |
|
INFEASIBLE |
||
|
MAX_TIME |
||
|
MAX_ITER |
||
|
PIVOT |
||
|
BREAK |
||
|
INT_FEASIBLE |
||
|
INT_INFEASIBLE |
||
|
INT_MAX_ITER |
||
|
PAUSE |
||
|
FEASIBLEPAUSE |
||
|
IPAUSE |
||
|
PROXIMITYPAUSE |
||
|
ACTIVE |
||
|
RELAXED |
||
|
FATHOMED |
||
|
IPIVOT |
||
|
UNSTABLE |
||
|
SINGULAR |
||
|
MEMORY_ERROR |
||
|
IO_ERROR |
||
|
SYNTAX_ERROR |
||
|
SEMANTIC_ERROR |
||
|
BADDATA_ERROR |
||
|
UNKNOWN_ERROR |
This information can be used when PROC LP is one step in a larger program that needs to identify how the LP procedure terminated. Because _ORLP_ is a standard SAS macro variable, it can be used in the ways that all macro variables can be used (see the SAS Guide to Macro Processing).