Difference between revisions of "LpFindIIS"
(Filled in initial content) |
(Removed the constraintsOnly parameter) |
||
Line 9: | Line 9: | ||
An Irreducibly Infeasibe Subset (IIS) of constraints is a subset of your constraints which contains no feasible solution, but which has the property that if any single constraint is removed, there will be feasible solutions. Thus, it is a minimal set of conflicting constraints. | An Irreducibly Infeasibe Subset (IIS) of constraints is a subset of your constraints which contains no feasible solution, but which has the property that if any single constraint is removed, there will be feasible solutions. Thus, it is a minimal set of conflicting constraints. | ||
− | When [[LpStatusNum]] returns | + | When [[LpStatusNum]] returns 5, it indicates that there are no feasible solutions -- that the set of constraints are contradictory. This function is useful for locating the source of the contradiction. |
When called with a single parameter as shown above, a subset of the Constraints index is returned. If any constraint in that subset were to be eliminated, the resulting set of constraints would be feasible. | When called with a single parameter as shown above, a subset of the Constraints index is returned. If any constraint in that subset were to be eliminated, the resulting set of constraints would be feasible. |
Revision as of 22:42, 9 April 2007
What's new in Analytica 4.0? >
LpFindIIS( lp : LpType )
Finds an Irreducibly Infeasile Subset of Constraints in a linear program defined using LpDefine.
An Irreducibly Infeasibe Subset (IIS) of constraints is a subset of your constraints which contains no feasible solution, but which has the property that if any single constraint is removed, there will be feasible solutions. Thus, it is a minimal set of conflicting constraints.
When LpStatusNum returns 5, it indicates that there are no feasible solutions -- that the set of constraints are contradictory. This function is useful for locating the source of the contradiction.
When called with a single parameter as shown above, a subset of the Constraints index is returned. If any constraint in that subset were to be eliminated, the resulting set of constraints would be feasible.
Extended usage: LpFindIIS( lp : LpType ; newLp, constraintsOnly : optional boolean )
(new to 4.0)
When a linear program is defined using LpDefine, lower and upper bounds on variable values may also be provided. These usually do not appear in the Constraints index, but are also constraints on the set of feasible solutions. To include lower and upper variable bounds in the IIS, the optional newLp and constraintsOnly parameters can be specified as follows:
FindIIS( myLp, newLp:true, constraintsOnly:false )
When the newLp parameter is specified as true, a new linear program object instance is created and returned. The components of this LP can be accessed using the SolverInfo function, and the object can be used by any of the functions that accept an Lp (however, the Lp is still infeasible).
When the constraintsOnly parameter is specified to be false, then lower and upper variable bounds are also relaxed, along with the constraints, so that if any single constraint or any single upper or lower variable bound were to be removed, the LP would be feasible. When using constraintsOnly:false, you must use newLp:true (otherwise, you would have only the subset of constraints and would not know which variable bounds had been removed to obtain the IIS).
Enable comment auto-refresher