DotNet Reference
.Net Reference
Constraints.cs
Go to the documentation of this file.
178 throw new ArgumentException("addTuple", "tuple does not have the same length as the variables");
204 throw new ArgumentException("addTuple", "tuple does not have the same length as the variables");
224 throw new ArgumentException("addTuples", "tuples does not have the same length as the variables");
252 throw new ArgumentException("addTuples", "tuples does not have the same length as the variables");
382 public CumulativeConstraint AddDemands<D>(IEnumerable<IntervalVar> intervals, IEnumerable<D> demands)
This constraint forces a sequence of variables to be accepted by an automaton.
Definition: CpModel.pb.cs:4243
pbc::RepeatedField< long > TransitionTail
List of transitions (all 3 vectors have the same size).
Definition: CpModel.pb.cs:4328
pbc::RepeatedField< long > TransitionLabel
Definition: CpModel.pb.cs:4350
pbc::RepeatedField< long > TransitionHead
Definition: CpModel.pb.cs:4339
Specialized automaton constraint.
Definition: Constraints.cs:276
AutomatonConstraint(CpModelProto model)
Definition: Constraints.cs:277
AutomatonConstraint AddTransition(int tail, int head, long label)
Definition: Constraints.cs:286
The circuit constraint is defined on a graph where the arc presence are controlled by literals.
Definition: CpModel.pb.cs:3203
pbc::RepeatedField< int > Literals
Definition: CpModel.pb.cs:3274
pbc::RepeatedField< int > Tails
Definition: CpModel.pb.cs:3252
pbc::RepeatedField< int > Heads
Definition: CpModel.pb.cs:3263
CircuitConstraint AddArc(int tail, int head, ILiteral literal)
Add an arc to the graph of the circuit constraint.
Definition: Constraints.cs:99
CircuitConstraint(CpModelProto model)
Definition: Constraints.cs:86
pbc::RepeatedField< int > EnforcementLiteral
The constraint will be enforced iff all literals listed here are true.
Definition: CpModel.pb.cs:4923
global::Google.OrTools.Sat.NoOverlap2DConstraintProto NoOverlap2D
The no_overlap_2d constraint prevents a set of boxes from overlapping.
Definition: CpModel.pb.cs:5284
global::Google.OrTools.Sat.CumulativeConstraintProto Cumulative
The cumulative constraint ensures that for any integer point, the sum of the demands of the intervals...
Definition: CpModel.pb.cs:5301
global::Google.OrTools.Sat.AutomatonConstraintProto Automaton
The automaton constraint forces a sequence of variables to be accepted by an automaton.
Definition: CpModel.pb.cs:5203
global::Google.OrTools.Sat.TableConstraintProto Table
The table constraint enforces what values a tuple of variables may take.
Definition: CpModel.pb.cs:5187
global::Google.OrTools.Sat.CircuitConstraintProto Circuit
The circuit constraint takes a graph and forces the arcs present (with arc presence indicated by a li...
Definition: CpModel.pb.cs:5156
global::Google.OrTools.Sat.ReservoirConstraintProto Reservoir
The reservoir constraint forces the sum of a set of active demands to always be between a specified m...
Definition: CpModel.pb.cs:5236
global::Google.OrTools.Sat.RoutesConstraintProto Routes
The routes constraint implements the vehicle routing problem.
Definition: CpModel.pb.cs:5171
void OnlyEnforceIf(ILiteral[] lits)
Adds a list of literals to the constraint.
Definition: Constraints.cs:44
pbc::RepeatedField< global::Google.OrTools.Sat.ConstraintProto > Constraints
Definition: CpModel.pb.cs:8727
LinearExpressionProto GetLinearExpressionProto(LinearExpr expr, bool negate=false)
Definition: CpModel.cs:1192
Constraint Add(BoundedLinearExpression lin)
Adds a linear constraint to the model.
Definition: CpModel.cs:193
The sum of the demands of the intervals at each interval point cannot exceed a capacity.
Definition: CpModel.pb.cs:2606
pbc::RepeatedField< global::Google.OrTools.Sat.LinearExpressionProto > Demands
Same size as intervals.
Definition: CpModel.pb.cs:2681
pbc::RepeatedField< int > Intervals
Definition: CpModel.pb.cs:2667
Specialized cumulative constraint.
Definition: Constraints.cs:365
CumulativeConstraint(CpModel cp_model, CpModelProto model)
Definition: Constraints.cs:366
CumulativeConstraint AddDemand< D >(IntervalVar interval, D demand)
Adds a pair (interval, demand) to the constraint.
Definition: Constraints.cs:372
CumulativeConstraint AddDemands< D >(IEnumerable< IntervalVar > intervals, IEnumerable< D > demands)
Adds all pairs (interval, demand) to the constraint.
Definition: Constraints.cs:382
Holds a linear expression: sum (ai * xi) + b.
Definition: IntegerExpressions.cs:108
Specialized multiple circuit constraint.
Definition: Constraints.cs:119
MultipleCircuitConstraint AddArc(int tail, int head, ILiteral literal)
Add an arc to the graph of the multiple circuit constraint.
Definition: Constraints.cs:133
MultipleCircuitConstraint(CpModelProto model)
Definition: Constraints.cs:120
pbc::RepeatedField< int > XIntervals
Definition: CpModel.pb.cs:2398
Specialized NoOverlap2D constraint.
Definition: Constraints.cs:407
NoOverlap2dConstraint(CpModelProto model)
Definition: Constraints.cs:408
NoOverlap2dConstraint AddRectangle(IntervalVar xInterval, IntervalVar yInterval)
Adds a rectangle (xInterval, yInterval) to the constraint.
Definition: Constraints.cs:413
Maintain a reservoir level within bounds.
Definition: CpModel.pb.cs:2878
pbc::RepeatedField< int > ActiveLiterals
Definition: CpModel.pb.cs:2981
pbc::RepeatedField< global::Google.OrTools.Sat.LinearExpressionProto > TimeExprs
affine expressions.
Definition: CpModel.pb.cs:2956
Specialized reservoir constraint.
Definition: Constraints.cs:307
ReservoirConstraint(CpModel cp_model, CpModelProto model)
Definition: Constraints.cs:308
ReservoirConstraint AddEvent< T, L >(T time, L level_change)
Adds a mandatory event.
Definition: Constraints.cs:323
ReservoirConstraint AddOptionalEvent< T, L >(T time, L level_change, ILiteral literal)
Adds an optional event.
Definition: Constraints.cs:342
The "VRP" (Vehicle Routing Problem) constraint.
Definition: CpModel.pb.cs:3461
pbc::RepeatedField< int > Literals
Definition: CpModel.pb.cs:3534
pbc::RepeatedField< int > Tails
Definition: CpModel.pb.cs:3512
pbc::RepeatedField< int > Heads
Definition: CpModel.pb.cs:3523
The values of the n-tuple formed by the given variables can only be one of the listed n-tuples in val...
Definition: CpModel.pb.cs:3778
pbc::RepeatedField< long > Values
Definition: CpModel.pb.cs:3838
pbc::RepeatedField< int > Vars
Definition: CpModel.pb.cs:3827
TableConstraint AddTuples(int[,] tuples)
Adds a set of tuples of possible/forbidden values to the constraint.
Definition: Constraints.cs:218
TableConstraint AddTuple(IEnumerable< long > tuple)
Adds a tuple of possible/forbidden values to the constraint.
Definition: Constraints.cs:192
TableConstraint(CpModelProto model)
Definition: Constraints.cs:153
TableConstraint AddTuple(IEnumerable< int > tuple)
Adds a tuple of possible/forbidden values to the constraint.
Definition: Constraints.cs:166
TableConstraint AddTuples(long[,] tuples)
Adds a set of tuples of possible/forbidden values to the constraint.
Definition: Constraints.cs:246
Holds a Boolean variable or its negation.
Definition: IntegerExpressions.cs:26
Definition: CpModel.pb.cs:12