Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
|
#include <compute_infeasible_subsystem_result.h>
Public Member Functions | |
ComputeInfeasibleSubsystemResultProto | Proto () const |
absl::Status | CheckModelStorage (const ModelStorage *expected_storage) const |
Static Public Member Functions | |
static absl::StatusOr< ComputeInfeasibleSubsystemResult > | FromProto (const ModelStorage *model, const ComputeInfeasibleSubsystemResultProto &result_proto) |
Public Attributes | |
FeasibilityStatus | feasibility = FeasibilityStatus::kUndetermined |
The primal feasibility status of the model, as determined by the solver. | |
ModelSubset | infeasible_subsystem |
bool | is_minimal = false |
Definition at line 100 of file compute_infeasible_subsystem_result.h.
absl::Status operations_research::math_opt::ComputeInfeasibleSubsystemResult::CheckModelStorage | ( | const ModelStorage * | expected_storage | ) | const |
Returns a failure if this object contains references to a model other than expected_storage
(which must not be nullptr).
Definition at line 383 of file compute_infeasible_subsystem_result.cc.
|
static |
Returns the ComputeInfeasibleSubsystemResult
equivalent to proto
.
Returns an error when:
model
does not contain a variable or constraint associated with an index present in proto.infeasible_subsystem
.We intentionally call this validator after checking feasibility
so that we can return a friendlier message for UNSPECIFIED.
Definition at line 348 of file compute_infeasible_subsystem_result.cc.
ComputeInfeasibleSubsystemResultProto operations_research::math_opt::ComputeInfeasibleSubsystemResult::Proto | ( | ) | const |
Returns the proto equivalent of this object.
The caller should use CheckModelStorage() before calling this function as it does not check internal consistency of the referenced variables and constraints.
Definition at line 372 of file compute_infeasible_subsystem_result.cc.
FeasibilityStatus operations_research::math_opt::ComputeInfeasibleSubsystemResult::feasibility = FeasibilityStatus::kUndetermined |
The primal feasibility status of the model, as determined by the solver.
Definition at line 123 of file compute_infeasible_subsystem_result.h.
ModelSubset operations_research::math_opt::ComputeInfeasibleSubsystemResult::infeasible_subsystem |
An infeasible subsystem of the input model. Set if feasible
is kInfeasible, and empty otherwise. The IDs correspond to those constraints included in the infeasible subsystem. Submessages with Bounds
values indicate which side of a potentially ranged constraint are included in the subsystem: lower bound, upper bound, or both.
Definition at line 130 of file compute_infeasible_subsystem_result.h.
bool operations_research::math_opt::ComputeInfeasibleSubsystemResult::is_minimal = false |
True if the solver has certified that the returned subsystem is minimal (the instance is feasible if any additional constraint is removed). Note that, due to problem transformations MathOpt applies or idiosyncrasies of the solvers contract, the returned infeasible subsystem may not actually be minimal.
Definition at line 137 of file compute_infeasible_subsystem_result.h.