The class for variables of a Mathematical Programming (MP) model.
Definition at line 998 of file linear_solver.h.
Public Member Functions | |
| const std::string & | name () const |
| Returns the name of the variable. More... | |
| void | SetInteger (bool integer) |
| Sets the integrality requirement of the variable. More... | |
| bool | integer () const |
| Returns the integrality requirement of the variable. More... | |
| double | solution_value () const |
| Returns the value of the variable in the current solution. More... | |
| int | index () const |
| Returns the index of the variable in the MPSolver::variables_. More... | |
| double | lb () const |
| Returns the lower bound. More... | |
| double | ub () const |
| Returns the upper bound. More... | |
| void | SetLB (double lb) |
| Sets the lower bound. More... | |
| void | SetUB (double ub) |
| Sets the upper bound. More... | |
| void | SetBounds (double lb, double ub) |
| Sets both the lower and upper bounds. More... | |
| double | unrounded_solution_value () const |
| Advanced usage: unrounded solution value. More... | |
| double | reduced_cost () const |
| Advanced usage: returns the reduced cost of the variable in the current solution (only available for continuous problems). More... | |
| MPSolver::BasisStatus | basis_status () const |
| Advanced usage: returns the basis status of the variable in the current solution (only available for continuous problems). More... | |
| int | branching_priority () const |
| Advanced usage: Certain MIP solvers (e.g. More... | |
| void | SetBranchingPriority (int priority) |
Protected Member Functions | |
| MPVariable (int index, double lb, double ub, bool integer, const std::string &name, MPSolverInterface *const interface_in) | |
| void | set_solution_value (double value) |
| void | set_reduced_cost (double reduced_cost) |
Friends | |
| class | MPSolver |
| class | MPSolverInterface |
| class | CBCInterface |
| class | CLPInterface |
| class | GLPKInterface |
| class | SCIPInterface |
| class | SLMInterface |
| class | GurobiInterface |
| class | CplexInterface |
| class | GLOPInterface |
| class | MPVariableSolutionValueTest |
| class | BopInterface |
| class | SatInterface |
| class | KnapsackInterface |
|
inlineprotected |
Definition at line 1090 of file linear_solver.h.
| MPSolver::BasisStatus operations_research::MPVariable::basis_status | ( | ) | const |
Advanced usage: returns the basis status of the variable in the current solution (only available for continuous problems).
|
inline |
Advanced usage: Certain MIP solvers (e.g.
Gurobi or SCIP) allow you to set a per-variable priority for determining which variable to branch on.
A value of 0 is treated as default, and is equivalent to not setting the branching priority. The solver looks first to branch on fractional variables in higher priority levels. As of 2019-05, only Gurobi and SCIP support setting branching priority; all other solvers will simply ignore this annotation.
Definition at line 1068 of file linear_solver.h.
|
inline |
Returns the index of the variable in the MPSolver::variables_.
Definition at line 1019 of file linear_solver.h.
|
inline |
Returns the integrality requirement of the variable.
Definition at line 1007 of file linear_solver.h.
|
inline |
Returns the lower bound.
Definition at line 1022 of file linear_solver.h.
|
inline |
Returns the name of the variable.
Definition at line 1001 of file linear_solver.h.
| double operations_research::MPVariable::reduced_cost | ( | ) | const |
Advanced usage: returns the reduced cost of the variable in the current solution (only available for continuous problems).
|
inlineprotected |
Definition at line 1102 of file linear_solver.h.
|
inlineprotected |
Definition at line 1101 of file linear_solver.h.
| void operations_research::MPVariable::SetBounds | ( | double | lb, |
| double | ub | ||
| ) |
Sets both the lower and upper bounds.
| void operations_research::MPVariable::SetBranchingPriority | ( | int | priority | ) |
| void operations_research::MPVariable::SetInteger | ( | bool | integer | ) |
Sets the integrality requirement of the variable.
|
inline |
Sets the lower bound.
Definition at line 1028 of file linear_solver.h.
|
inline |
Sets the upper bound.
Definition at line 1031 of file linear_solver.h.
| double operations_research::MPVariable::solution_value | ( | ) | const |
Returns the value of the variable in the current solution.
If the variable is integer, then the value will always be an integer (the underlying solver handles floating-point values only, but this function automatically rounds it to the nearest integer; see: man 3 round).
|
inline |
Returns the upper bound.
Definition at line 1025 of file linear_solver.h.
| double operations_research::MPVariable::unrounded_solution_value | ( | ) | const |
Advanced usage: unrounded solution value.
The returned value won't be rounded to the nearest integer even if the variable is integer.
|
friend |
Definition at line 1083 of file linear_solver.h.
|
friend |
Definition at line 1074 of file linear_solver.h.
|
friend |
Definition at line 1075 of file linear_solver.h.
|
friend |
Definition at line 1080 of file linear_solver.h.
|
friend |
Definition at line 1081 of file linear_solver.h.
|
friend |
Definition at line 1076 of file linear_solver.h.
|
friend |
Definition at line 1079 of file linear_solver.h.
|
friend |
Definition at line 1085 of file linear_solver.h.
|
friend |
Definition at line 1072 of file linear_solver.h.
|
friend |
Definition at line 1073 of file linear_solver.h.
|
friend |
Definition at line 1082 of file linear_solver.h.
|
friend |
Definition at line 1084 of file linear_solver.h.
|
friend |
Definition at line 1077 of file linear_solver.h.
|
friend |
Definition at line 1078 of file linear_solver.h.