Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
|
Classes | |
class | Builder |
enum | ConstraintCase |
Static Public Member Functions | |
static final com.google.protobuf.Descriptors.Descriptor | getDescriptor () |
static com.google.ortools.sat.ConstraintProto | parseFrom (java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.sat.ConstraintProto | parseFrom (java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.sat.ConstraintProto | parseFrom (com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.sat.ConstraintProto | parseFrom (com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.sat.ConstraintProto | parseFrom (byte[] data) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.sat.ConstraintProto | parseFrom (byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.sat.ConstraintProto | parseFrom (java.io.InputStream input) throws java.io.IOException |
static com.google.ortools.sat.ConstraintProto | parseFrom (java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException |
static com.google.ortools.sat.ConstraintProto | parseDelimitedFrom (java.io.InputStream input) throws java.io.IOException |
static com.google.ortools.sat.ConstraintProto | parseDelimitedFrom (java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException |
static com.google.ortools.sat.ConstraintProto | parseFrom (com.google.protobuf.CodedInputStream input) throws java.io.IOException |
static com.google.ortools.sat.ConstraintProto | parseFrom (com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException |
static Builder | newBuilder () |
static Builder | newBuilder (com.google.ortools.sat.ConstraintProto prototype) |
static com.google.ortools.sat.ConstraintProto | getDefaultInstance () |
static com.google.protobuf.Parser< ConstraintProto > | parser () |
Static Public Attributes | |
static final int | NAME_FIELD_NUMBER = 1 |
static final int | ENFORCEMENT_LITERAL_FIELD_NUMBER = 2 |
static final int | BOOL_OR_FIELD_NUMBER = 3 |
static final int | BOOL_AND_FIELD_NUMBER = 4 |
static final int | AT_MOST_ONE_FIELD_NUMBER = 26 |
static final int | EXACTLY_ONE_FIELD_NUMBER = 29 |
static final int | BOOL_XOR_FIELD_NUMBER = 5 |
static final int | INT_DIV_FIELD_NUMBER = 7 |
static final int | INT_MOD_FIELD_NUMBER = 8 |
static final int | INT_PROD_FIELD_NUMBER = 11 |
static final int | LIN_MAX_FIELD_NUMBER = 27 |
static final int | LINEAR_FIELD_NUMBER = 12 |
static final int | ALL_DIFF_FIELD_NUMBER = 13 |
static final int | ELEMENT_FIELD_NUMBER = 14 |
static final int | CIRCUIT_FIELD_NUMBER = 15 |
static final int | ROUTES_FIELD_NUMBER = 23 |
static final int | TABLE_FIELD_NUMBER = 16 |
static final int | AUTOMATON_FIELD_NUMBER = 17 |
static final int | INVERSE_FIELD_NUMBER = 18 |
static final int | RESERVOIR_FIELD_NUMBER = 24 |
static final int | INTERVAL_FIELD_NUMBER = 19 |
static final int | NO_OVERLAP_FIELD_NUMBER = 20 |
static final int | NO_OVERLAP_2D_FIELD_NUMBER = 21 |
static final int | CUMULATIVE_FIELD_NUMBER = 22 |
static final int | DUMMY_CONSTRAINT_FIELD_NUMBER = 30 |
Protected Member Functions | |
com.google.protobuf.GeneratedMessage.FieldAccessorTable | internalGetFieldAccessorTable () |
Builder | newBuilderForType (com.google.protobuf.GeneratedMessage.BuilderParent parent) |
Next id: 31
Protobuf type operations_research.sat.ConstraintProto
Definition at line 14 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.equals | ( | final java.lang.Object | obj | ) |
Definition at line 1637 of file ConstraintProto.java.
com.google.ortools.sat.AllDifferentConstraintProto com.google.ortools.sat.ConstraintProto.getAllDiff | ( | ) |
The all_diff constraint forces all variables to take different values.
.operations_research.sat.AllDifferentConstraintProto all_diff = 13;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 843 of file ConstraintProto.java.
com.google.ortools.sat.AllDifferentConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getAllDiffOrBuilder | ( | ) |
The all_diff constraint forces all variables to take different values.
.operations_research.sat.AllDifferentConstraintProto all_diff = 13;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 857 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProto com.google.ortools.sat.ConstraintProto.getAtMostOne | ( | ) |
The at_most_one constraint enforces that no more than one literal is true at the same time. Note that an at most one constraint of length n could be encoded with n bool_and constraint with n-1 term on the right hand side. So in a sense, this constraint contribute directly to the "implication-graph" or the 2-SAT part of the model. This constraint does not support enforcement_literal. Just use a linear constraint if you need to enforce it. You also do not need to use it directly, we will extract it from the model in most situations.
.operations_research.sat.BoolArgumentProto at_most_one = 26;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 402 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getAtMostOneOrBuilder | ( | ) |
The at_most_one constraint enforces that no more than one literal is true at the same time. Note that an at most one constraint of length n could be encoded with n bool_and constraint with n-1 term on the right hand side. So in a sense, this constraint contribute directly to the "implication-graph" or the 2-SAT part of the model. This constraint does not support enforcement_literal. Just use a linear constraint if you need to enforce it. You also do not need to use it directly, we will extract it from the model in most situations.
.operations_research.sat.BoolArgumentProto at_most_one = 26;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 426 of file ConstraintProto.java.
com.google.ortools.sat.AutomatonConstraintProto com.google.ortools.sat.ConstraintProto.getAutomaton | ( | ) |
The automaton constraint forces a sequence of variables to be accepted by an automaton.
.operations_research.sat.AutomatonConstraintProto automaton = 17;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1069 of file ConstraintProto.java.
com.google.ortools.sat.AutomatonConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getAutomatonOrBuilder | ( | ) |
The automaton constraint forces a sequence of variables to be accepted by an automaton.
.operations_research.sat.AutomatonConstraintProto automaton = 17;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1084 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProto com.google.ortools.sat.ConstraintProto.getBoolAnd | ( | ) |
The bool_and constraint forces all of the literals to be true. This is a "redundant" constraint in the sense that this can easily be encoded with many bool_or or at_most_one. It is just more space efficient and handled slightly differently internally.
.operations_research.sat.BoolArgumentProto bool_and = 4;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 335 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getBoolAndOrBuilder | ( | ) |
The bool_and constraint forces all of the literals to be true. This is a "redundant" constraint in the sense that this can easily be encoded with many bool_or or at_most_one. It is just more space efficient and handled slightly differently internally.
.operations_research.sat.BoolArgumentProto bool_and = 4;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 353 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProto com.google.ortools.sat.ConstraintProto.getBoolOr | ( | ) |
The bool_or constraint forces at least one literal to be true.
.operations_research.sat.BoolArgumentProto bool_or = 3;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 284 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getBoolOrOrBuilder | ( | ) |
The bool_or constraint forces at least one literal to be true.
.operations_research.sat.BoolArgumentProto bool_or = 3;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 298 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProto com.google.ortools.sat.ConstraintProto.getBoolXor | ( | ) |
The bool_xor constraint forces an odd number of the literals to be true.
.operations_research.sat.BoolArgumentProto bool_xor = 5;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 531 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getBoolXorOrBuilder | ( | ) |
The bool_xor constraint forces an odd number of the literals to be true.
.operations_research.sat.BoolArgumentProto bool_xor = 5;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 545 of file ConstraintProto.java.
com.google.ortools.sat.CircuitConstraintProto com.google.ortools.sat.ConstraintProto.getCircuit | ( | ) |
The circuit constraint takes a graph and forces the arcs present (with arc presence indicated by a literal) to form a unique cycle.
.operations_research.sat.CircuitConstraintProto circuit = 15;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 934 of file ConstraintProto.java.
com.google.ortools.sat.CircuitConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getCircuitOrBuilder | ( | ) |
The circuit constraint takes a graph and forces the arcs present (with arc presence indicated by a literal) to form a unique cycle.
.operations_research.sat.CircuitConstraintProto circuit = 15;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 949 of file ConstraintProto.java.
ConstraintCase com.google.ortools.sat.ConstraintProto.getConstraintCase | ( | ) |
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 129 of file ConstraintProto.java.
com.google.ortools.sat.CumulativeConstraintProto com.google.ortools.sat.ConstraintProto.getCumulative | ( | ) |
The cumulative constraint ensures that for any integer point, the sum of the demands of the intervals containing that point does not exceed the capacity.
.operations_research.sat.CumulativeConstraintProto cumulative = 22;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1350 of file ConstraintProto.java.
com.google.ortools.sat.CumulativeConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getCumulativeOrBuilder | ( | ) |
The cumulative constraint ensures that for any integer point, the sum of the demands of the intervals containing that point does not exceed the capacity.
.operations_research.sat.CumulativeConstraintProto cumulative = 22;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1366 of file ConstraintProto.java.
|
static |
Definition at line 7475 of file ConstraintProto.java.
com.google.ortools.sat.ConstraintProto com.google.ortools.sat.ConstraintProto.getDefaultInstanceForType | ( | ) |
Definition at line 7511 of file ConstraintProto.java.
|
static |
Definition at line 38 of file ConstraintProto.java.
com.google.ortools.sat.ListOfVariablesProto com.google.ortools.sat.ConstraintProto.getDummyConstraint | ( | ) |
This constraint is not meant to be used and will be rejected by the solver. It is meant to mark variable when testing the presolve code.
.operations_research.sat.ListOfVariablesProto dummy_constraint = 30;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1397 of file ConstraintProto.java.
com.google.ortools.sat.ListOfVariablesProtoOrBuilder com.google.ortools.sat.ConstraintProto.getDummyConstraintOrBuilder | ( | ) |
This constraint is not meant to be used and will be rejected by the solver. It is meant to mark variable when testing the presolve code.
.operations_research.sat.ListOfVariablesProto dummy_constraint = 30;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1412 of file ConstraintProto.java.
com.google.ortools.sat.ElementConstraintProto com.google.ortools.sat.ConstraintProto.getElement | ( | ) |
The element constraint forces the variable with the given index to be equal to the target.
.operations_research.sat.ElementConstraintProto element = 14;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 888 of file ConstraintProto.java.
com.google.ortools.sat.ElementConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getElementOrBuilder | ( | ) |
The element constraint forces the variable with the given index to be equal to the target.
.operations_research.sat.ElementConstraintProto element = 14;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 903 of file ConstraintProto.java.
int com.google.ortools.sat.ConstraintProto.getEnforcementLiteral | ( | int | index | ) |
The constraint will be enforced iff all literals listed here are true. If this is empty, then the constraint will always be enforced. An enforced constraint must be satisfied, and an un-enforced one will simply be ignored. This is also called half-reification. To have an equivalence between a literal and a constraint (full reification), one must add both a constraint (controlled by a literal l) and its negation (controlled by the negation of l). Important: as of September 2018, only a few constraint support enforcement: - bool_or, bool_and, linear: fully supported. - interval: only support a single enforcement literal. - other: no support (but can be added on a per-demand basis).
repeated int32 enforcement_literal = 2;
index | The index of the element to return. |
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 257 of file ConstraintProto.java.
int com.google.ortools.sat.ConstraintProto.getEnforcementLiteralCount | ( | ) |
The constraint will be enforced iff all literals listed here are true. If this is empty, then the constraint will always be enforced. An enforced constraint must be satisfied, and an un-enforced one will simply be ignored. This is also called half-reification. To have an equivalence between a literal and a constraint (full reification), one must add both a constraint (controlled by a literal l) and its negation (controlled by the negation of l). Important: as of September 2018, only a few constraint support enforcement: - bool_or, bool_and, linear: fully supported. - interval: only support a single enforcement literal. - other: no support (but can be added on a per-demand basis).
repeated int32 enforcement_literal = 2;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 232 of file ConstraintProto.java.
java.util.List< java.lang.Integer > com.google.ortools.sat.ConstraintProto.getEnforcementLiteralList | ( | ) |
The constraint will be enforced iff all literals listed here are true. If this is empty, then the constraint will always be enforced. An enforced constraint must be satisfied, and an un-enforced one will simply be ignored. This is also called half-reification. To have an equivalence between a literal and a constraint (full reification), one must add both a constraint (controlled by a literal l) and its negation (controlled by the negation of l). Important: as of September 2018, only a few constraint support enforcement: - bool_or, bool_and, linear: fully supported. - interval: only support a single enforcement literal. - other: no support (but can be added on a per-demand basis).
repeated int32 enforcement_literal = 2;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 208 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProto com.google.ortools.sat.ConstraintProto.getExactlyOne | ( | ) |
The exactly_one constraint force exactly one literal to true and no more. Anytime a bool_or (it could have been called at_least_one) is included into an at_most_one, then the bool_or is actually an exactly one constraint, and the extra literal in the at_most_one can be set to false. So in this sense, this constraint is not really needed. it is just here for a better description of the problem structure and to facilitate some algorithm. This constraint does not support enforcement_literal. Just use a linear constraint if you need to enforce it. You also do not need to use it directly, we will extract it from the model in most situations.
.operations_research.sat.BoolArgumentProto exactly_one = 29;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 477 of file ConstraintProto.java.
com.google.ortools.sat.BoolArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getExactlyOneOrBuilder | ( | ) |
The exactly_one constraint force exactly one literal to true and no more. Anytime a bool_or (it could have been called at_least_one) is included into an at_most_one, then the bool_or is actually an exactly one constraint, and the extra literal in the at_most_one can be set to false. So in this sense, this constraint is not really needed. it is just here for a better description of the problem structure and to facilitate some algorithm. This constraint does not support enforcement_literal. Just use a linear constraint if you need to enforce it. You also do not need to use it directly, we will extract it from the model in most situations.
.operations_research.sat.BoolArgumentProto exactly_one = 29;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 502 of file ConstraintProto.java.
com.google.ortools.sat.LinearArgumentProto com.google.ortools.sat.ConstraintProto.getIntDiv | ( | ) |
The int_div constraint forces the target to equal exprs[0] / exprs[1]. The division is "rounded" towards zero, so we can have for instance (2 = 12 / 5) or (-3 = -10 / 3). If you only want exact integer division, then you should use instead of t = a / b, the int_prod constraint a = b * t. If 0 belongs to the domain of exprs[1], then the model is deemed invalid.
.operations_research.sat.LinearArgumentProto int_div = 7;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 586 of file ConstraintProto.java.
com.google.ortools.sat.LinearArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getIntDivOrBuilder | ( | ) |
The int_div constraint forces the target to equal exprs[0] / exprs[1]. The division is "rounded" towards zero, so we can have for instance (2 = 12 / 5) or (-3 = -10 / 3). If you only want exact integer division, then you should use instead of t = a / b, the int_prod constraint a = b * t. If 0 belongs to the domain of exprs[1], then the model is deemed invalid.
.operations_research.sat.LinearArgumentProto int_div = 7;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 606 of file ConstraintProto.java.
com.google.ortools.sat.IntervalConstraintProto com.google.ortools.sat.ConstraintProto.getInterval | ( | ) |
The interval constraint takes a start, end, and size, and forces start + size == end.
.operations_research.sat.IntervalConstraintProto interval = 19;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1210 of file ConstraintProto.java.
com.google.ortools.sat.IntervalConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getIntervalOrBuilder | ( | ) |
The interval constraint takes a start, end, and size, and forces start + size == end.
.operations_research.sat.IntervalConstraintProto interval = 19;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1225 of file ConstraintProto.java.
com.google.ortools.sat.LinearArgumentProto com.google.ortools.sat.ConstraintProto.getIntMod | ( | ) |
The int_mod constraint forces the target to equal exprs[0] % exprs[1]. The domain of exprs[1] must be strictly positive. The sign of the target is the same as the sign of exprs[0].
.operations_research.sat.LinearArgumentProto int_mod = 8;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 639 of file ConstraintProto.java.
com.google.ortools.sat.LinearArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getIntModOrBuilder | ( | ) |
The int_mod constraint forces the target to equal exprs[0] % exprs[1]. The domain of exprs[1] must be strictly positive. The sign of the target is the same as the sign of exprs[0].
.operations_research.sat.LinearArgumentProto int_mod = 8;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 655 of file ConstraintProto.java.
com.google.ortools.sat.LinearArgumentProto com.google.ortools.sat.ConstraintProto.getIntProd | ( | ) |
The int_prod constraint forces the target to equal the product of all variables. By convention, because we can just remove term equal to one, the empty product forces the target to be one. Note that the solver checks for potential integer overflow. So the product of the maximum absolute value of all the terms (using the initial domain) should fit on an int64. Otherwise the model will be declared invalid.
.operations_research.sat.LinearArgumentProto int_prod = 11;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 698 of file ConstraintProto.java.
com.google.ortools.sat.LinearArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getIntProdOrBuilder | ( | ) |
The int_prod constraint forces the target to equal the product of all variables. By convention, because we can just remove term equal to one, the empty product forces the target to be one. Note that the solver checks for potential integer overflow. So the product of the maximum absolute value of all the terms (using the initial domain) should fit on an int64. Otherwise the model will be declared invalid.
.operations_research.sat.LinearArgumentProto int_prod = 11;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 719 of file ConstraintProto.java.
com.google.ortools.sat.InverseConstraintProto com.google.ortools.sat.ConstraintProto.getInverse | ( | ) |
The inverse constraint forces two arrays to be inverses of each other: the values of one are the indices of the other, and vice versa.
.operations_research.sat.InverseConstraintProto inverse = 18;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1115 of file ConstraintProto.java.
com.google.ortools.sat.InverseConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getInverseOrBuilder | ( | ) |
The inverse constraint forces two arrays to be inverses of each other: the values of one are the indices of the other, and vice versa.
.operations_research.sat.InverseConstraintProto inverse = 18;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1130 of file ConstraintProto.java.
com.google.ortools.sat.LinearConstraintProto com.google.ortools.sat.ConstraintProto.getLinear | ( | ) |
The linear constraint enforces a linear inequality among the variables, such as 0 <= x + 2y <= 10.
.operations_research.sat.LinearConstraintProto linear = 12;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 799 of file ConstraintProto.java.
com.google.ortools.sat.LinearConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getLinearOrBuilder | ( | ) |
The linear constraint enforces a linear inequality among the variables, such as 0 <= x + 2y <= 10.
.operations_research.sat.LinearConstraintProto linear = 12;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 814 of file ConstraintProto.java.
com.google.ortools.sat.LinearArgumentProto com.google.ortools.sat.ConstraintProto.getLinMax | ( | ) |
The lin_max constraint forces the target to equal the maximum of all linear expressions. Note that this can model a minimum simply by negating all expressions.
.operations_research.sat.LinearArgumentProto lin_max = 27;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 752 of file ConstraintProto.java.
com.google.ortools.sat.LinearArgumentProtoOrBuilder com.google.ortools.sat.ConstraintProto.getLinMaxOrBuilder | ( | ) |
The lin_max constraint forces the target to equal the maximum of all linear expressions. Note that this can model a minimum simply by negating all expressions.
.operations_research.sat.LinearArgumentProto lin_max = 27;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 768 of file ConstraintProto.java.
java.lang.String com.google.ortools.sat.ConstraintProto.getName | ( | ) |
For debug/logging only. Can be empty.
string name = 1;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 146 of file ConstraintProto.java.
com.google.protobuf.ByteString com.google.ortools.sat.ConstraintProto.getNameBytes | ( | ) |
For debug/logging only. Can be empty.
string name = 1;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 168 of file ConstraintProto.java.
com.google.ortools.sat.NoOverlapConstraintProto com.google.ortools.sat.ConstraintProto.getNoOverlap | ( | ) |
The no_overlap constraint prevents a set of intervals from overlapping; in scheduling, this is called a disjunctive constraint.
.operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1258 of file ConstraintProto.java.
com.google.ortools.sat.NoOverlap2DConstraintProto com.google.ortools.sat.ConstraintProto.getNoOverlap2D | ( | ) |
The no_overlap_2d constraint prevents a set of boxes from overlapping.
.operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1303 of file ConstraintProto.java.
com.google.ortools.sat.NoOverlap2DConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getNoOverlap2DOrBuilder | ( | ) |
The no_overlap_2d constraint prevents a set of boxes from overlapping.
.operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1317 of file ConstraintProto.java.
com.google.ortools.sat.NoOverlapConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getNoOverlapOrBuilder | ( | ) |
The no_overlap constraint prevents a set of intervals from overlapping; in scheduling, this is called a disjunctive constraint.
.operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1274 of file ConstraintProto.java.
com.google.protobuf.Parser< ConstraintProto > com.google.ortools.sat.ConstraintProto.getParserForType | ( | ) |
Definition at line 7506 of file ConstraintProto.java.
com.google.ortools.sat.ReservoirConstraintProto com.google.ortools.sat.ConstraintProto.getReservoir | ( | ) |
The reservoir constraint forces the sum of a set of active demands to always be between a specified minimum and maximum value during specific times.
.operations_research.sat.ReservoirConstraintProto reservoir = 24;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1163 of file ConstraintProto.java.
com.google.ortools.sat.ReservoirConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getReservoirOrBuilder | ( | ) |
The reservoir constraint forces the sum of a set of active demands to always be between a specified minimum and maximum value during specific times.
.operations_research.sat.ReservoirConstraintProto reservoir = 24;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1179 of file ConstraintProto.java.
com.google.ortools.sat.RoutesConstraintProto com.google.ortools.sat.ConstraintProto.getRoutes | ( | ) |
The routes constraint implements the vehicle routing problem.
.operations_research.sat.RoutesConstraintProto routes = 23;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 978 of file ConstraintProto.java.
com.google.ortools.sat.RoutesConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getRoutesOrBuilder | ( | ) |
The routes constraint implements the vehicle routing problem.
.operations_research.sat.RoutesConstraintProto routes = 23;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 992 of file ConstraintProto.java.
int com.google.ortools.sat.ConstraintProto.getSerializedSize | ( | ) |
Definition at line 1517 of file ConstraintProto.java.
com.google.ortools.sat.TableConstraintProto com.google.ortools.sat.ConstraintProto.getTable | ( | ) |
The table constraint enforces what values a tuple of variables may take.
.operations_research.sat.TableConstraintProto table = 16;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1023 of file ConstraintProto.java.
com.google.ortools.sat.TableConstraintProtoOrBuilder com.google.ortools.sat.ConstraintProto.getTableOrBuilder | ( | ) |
The table constraint enforces what values a tuple of variables may take.
.operations_research.sat.TableConstraintProto table = 16;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1038 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasAllDiff | ( | ) |
The all_diff constraint forces all variables to take different values.
.operations_research.sat.AllDifferentConstraintProto all_diff = 13;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 831 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasAtMostOne | ( | ) |
The at_most_one constraint enforces that no more than one literal is true at the same time. Note that an at most one constraint of length n could be encoded with n bool_and constraint with n-1 term on the right hand side. So in a sense, this constraint contribute directly to the "implication-graph" or the 2-SAT part of the model. This constraint does not support enforcement_literal. Just use a linear constraint if you need to enforce it. You also do not need to use it directly, we will extract it from the model in most situations.
.operations_research.sat.BoolArgumentProto at_most_one = 26;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 380 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasAutomaton | ( | ) |
The automaton constraint forces a sequence of variables to be accepted by an automaton.
.operations_research.sat.AutomatonConstraintProto automaton = 17;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1056 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasBoolAnd | ( | ) |
The bool_and constraint forces all of the literals to be true. This is a "redundant" constraint in the sense that this can easily be encoded with many bool_or or at_most_one. It is just more space efficient and handled slightly differently internally.
.operations_research.sat.BoolArgumentProto bool_and = 4;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 319 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasBoolOr | ( | ) |
The bool_or constraint forces at least one literal to be true.
.operations_research.sat.BoolArgumentProto bool_or = 3;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 272 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasBoolXor | ( | ) |
The bool_xor constraint forces an odd number of the literals to be true.
.operations_research.sat.BoolArgumentProto bool_xor = 5;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 519 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasCircuit | ( | ) |
The circuit constraint takes a graph and forces the arcs present (with arc presence indicated by a literal) to form a unique cycle.
.operations_research.sat.CircuitConstraintProto circuit = 15;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 921 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasCumulative | ( | ) |
The cumulative constraint ensures that for any integer point, the sum of the demands of the intervals containing that point does not exceed the capacity.
.operations_research.sat.CumulativeConstraintProto cumulative = 22;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1336 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasDummyConstraint | ( | ) |
This constraint is not meant to be used and will be rejected by the solver. It is meant to mark variable when testing the presolve code.
.operations_research.sat.ListOfVariablesProto dummy_constraint = 30;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1384 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasElement | ( | ) |
The element constraint forces the variable with the given index to be equal to the target.
.operations_research.sat.ElementConstraintProto element = 14;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 875 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasExactlyOne | ( | ) |
The exactly_one constraint force exactly one literal to true and no more. Anytime a bool_or (it could have been called at_least_one) is included into an at_most_one, then the bool_or is actually an exactly one constraint, and the extra literal in the at_most_one can be set to false. So in this sense, this constraint is not really needed. it is just here for a better description of the problem structure and to facilitate some algorithm. This constraint does not support enforcement_literal. Just use a linear constraint if you need to enforce it. You also do not need to use it directly, we will extract it from the model in most situations.
.operations_research.sat.BoolArgumentProto exactly_one = 29;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 454 of file ConstraintProto.java.
int com.google.ortools.sat.ConstraintProto.hashCode | ( | ) |
Definition at line 1752 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasIntDiv | ( | ) |
The int_div constraint forces the target to equal exprs[0] / exprs[1]. The division is "rounded" towards zero, so we can have for instance (2 = 12 / 5) or (-3 = -10 / 3). If you only want exact integer division, then you should use instead of t = a / b, the int_prod constraint a = b * t. If 0 belongs to the domain of exprs[1], then the model is deemed invalid.
.operations_research.sat.LinearArgumentProto int_div = 7;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 568 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasInterval | ( | ) |
The interval constraint takes a start, end, and size, and forces start + size == end.
.operations_research.sat.IntervalConstraintProto interval = 19;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1197 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasIntMod | ( | ) |
The int_mod constraint forces the target to equal exprs[0] % exprs[1]. The domain of exprs[1] must be strictly positive. The sign of the target is the same as the sign of exprs[0].
.operations_research.sat.LinearArgumentProto int_mod = 8;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 625 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasIntProd | ( | ) |
The int_prod constraint forces the target to equal the product of all variables. By convention, because we can just remove term equal to one, the empty product forces the target to be one. Note that the solver checks for potential integer overflow. So the product of the maximum absolute value of all the terms (using the initial domain) should fit on an int64. Otherwise the model will be declared invalid.
.operations_research.sat.LinearArgumentProto int_prod = 11;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 679 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasInverse | ( | ) |
The inverse constraint forces two arrays to be inverses of each other: the values of one are the indices of the other, and vice versa.
.operations_research.sat.InverseConstraintProto inverse = 18;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1102 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasLinear | ( | ) |
The linear constraint enforces a linear inequality among the variables, such as 0 <= x + 2y <= 10.
.operations_research.sat.LinearConstraintProto linear = 12;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 786 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasLinMax | ( | ) |
The lin_max constraint forces the target to equal the maximum of all linear expressions. Note that this can model a minimum simply by negating all expressions.
.operations_research.sat.LinearArgumentProto lin_max = 27;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 738 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasNoOverlap | ( | ) |
The no_overlap constraint prevents a set of intervals from overlapping; in scheduling, this is called a disjunctive constraint.
.operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1244 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasNoOverlap2D | ( | ) |
The no_overlap_2d constraint prevents a set of boxes from overlapping.
.operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1291 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasReservoir | ( | ) |
The reservoir constraint forces the sum of a set of active demands to always be between a specified minimum and maximum value during specific times.
.operations_research.sat.ReservoirConstraintProto reservoir = 24;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1149 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasRoutes | ( | ) |
The routes constraint implements the vehicle routing problem.
.operations_research.sat.RoutesConstraintProto routes = 23;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 966 of file ConstraintProto.java.
boolean com.google.ortools.sat.ConstraintProto.hasTable | ( | ) |
The table constraint enforces what values a tuple of variables may take.
.operations_research.sat.TableConstraintProto table = 16;
Implements com.google.ortools.sat.ConstraintProtoOrBuilder.
Definition at line 1010 of file ConstraintProto.java.
|
protected |
Definition at line 44 of file ConstraintProto.java.
final boolean com.google.ortools.sat.ConstraintProto.isInitialized | ( | ) |
Definition at line 1421 of file ConstraintProto.java.
|
static |
Definition at line 1939 of file ConstraintProto.java.
|
static |
Definition at line 1942 of file ConstraintProto.java.
Builder com.google.ortools.sat.ConstraintProto.newBuilderForType | ( | ) |
Definition at line 1938 of file ConstraintProto.java.
|
protected |
Definition at line 1952 of file ConstraintProto.java.
|
static |
Definition at line 1910 of file ConstraintProto.java.
|
static |
Definition at line 1916 of file ConstraintProto.java.
|
static |
Definition at line 1887 of file ConstraintProto.java.
|
static |
Definition at line 1891 of file ConstraintProto.java.
|
static |
Definition at line 1876 of file ConstraintProto.java.
|
static |
Definition at line 1881 of file ConstraintProto.java.
|
static |
Definition at line 1923 of file ConstraintProto.java.
|
static |
Definition at line 1929 of file ConstraintProto.java.
|
static |
Definition at line 1897 of file ConstraintProto.java.
|
static |
Definition at line 1902 of file ConstraintProto.java.
|
static |
Definition at line 1865 of file ConstraintProto.java.
|
static |
Definition at line 1870 of file ConstraintProto.java.
|
static |
Definition at line 7501 of file ConstraintProto.java.
Builder com.google.ortools.sat.ConstraintProto.toBuilder | ( | ) |
Definition at line 1946 of file ConstraintProto.java.
void com.google.ortools.sat.ConstraintProto.writeTo | ( | com.google.protobuf.CodedOutputStream | output | ) | throws java.io.IOException |
Definition at line 1431 of file ConstraintProto.java.
|
static |
Definition at line 821 of file ConstraintProto.java.
|
static |
Definition at line 360 of file ConstraintProto.java.
|
static |
Definition at line 1045 of file ConstraintProto.java.
|
static |
Definition at line 305 of file ConstraintProto.java.
|
static |
Definition at line 262 of file ConstraintProto.java.
|
static |
Definition at line 509 of file ConstraintProto.java.
|
static |
Definition at line 910 of file ConstraintProto.java.
|
static |
Definition at line 1324 of file ConstraintProto.java.
|
static |
Definition at line 1373 of file ConstraintProto.java.
|
static |
Definition at line 864 of file ConstraintProto.java.
|
static |
Definition at line 181 of file ConstraintProto.java.
|
static |
Definition at line 433 of file ConstraintProto.java.
|
static |
Definition at line 552 of file ConstraintProto.java.
|
static |
Definition at line 613 of file ConstraintProto.java.
|
static |
Definition at line 662 of file ConstraintProto.java.
|
static |
Definition at line 1186 of file ConstraintProto.java.
|
static |
Definition at line 1091 of file ConstraintProto.java.
|
static |
Definition at line 726 of file ConstraintProto.java.
|
static |
Definition at line 775 of file ConstraintProto.java.
|
static |
Definition at line 134 of file ConstraintProto.java.
|
static |
Definition at line 1281 of file ConstraintProto.java.
|
static |
Definition at line 1232 of file ConstraintProto.java.
|
static |
Definition at line 1137 of file ConstraintProto.java.
|
static |
Definition at line 956 of file ConstraintProto.java.
|
static |
Definition at line 999 of file ConstraintProto.java.