DotNet Reference
.Net Reference
CpModel.cs
Go to the documentation of this file.
34 {
126 Domain.FromFlatIntervals(new long[] { Int64.MinValue, lin.Lb - 1, lin.Lb + 1, Int64.MaxValue }));
226 public Constraint AddAutomaton(IEnumerable<IntVar> vars, long starting_state, long[,] transitions,
292 public Constraint AddReservoirConstraint<I>(IEnumerable<IntVar> times, IEnumerable<I> demands, long min_level,
313 public Constraint AddReservoirConstraintWithActive<I>(IEnumerable<IntVar> times, IEnumerable<I> demands,
522 public IntervalVar NewOptionalIntervalVar<S, D, E>(S start, D duration, E end, ILiteral is_present, string name)
532 return new IntervalVar(model_, startProto, durationProto, endProto, is_present.GetIndex(), name);
535 public IntervalVar NewOptionalFixedSizeIntervalVar<S>(S start, long duration, ILiteral is_present, string name)
544 return new IntervalVar(model_, startProto, durationProto, endProto, is_present.GetIndex(), name);
559 public Constraint AddNoOverlap2D(IEnumerable<IntervalVar> x_intervals, IEnumerable<IntervalVar> y_intervals)
575 public Constraint AddCumulative<D, C>(IEnumerable<IntervalVar> intervals, IEnumerable<D> demands, C capacity)
pbc::RepeatedField< int > Literals
Definition: CpModel.pb.cs:555
static long GetVarValueMap(LinearExpr e, long initial_coeff, Dictionary< IntVar, long > dict)
Definition: IntegerExpressions.cs:252
ILiteral Not()
Some constraints supports linear expression instead of just using a reference to a variable.
Definition: CpModel.pb.cs:909
Constraint AddDivisionEquality< T, N, D >(T target, N num, D denom)
Definition: CpModel.cs:444
pbc::RepeatedField< long > Coeffs
Definition: CpModel.pb.cs:6990
pbc::RepeatedField< int > Vars
The linear terms of the objective to minimize.
Definition: CpModel.pb.cs:6979
Constraint AddNoOverlap(IEnumerable< IntervalVar > intervals)
Definition: CpModel.cs:547
Define the strategy to follow when the solver needs to take a new decision.
Definition: CpModel.pb.cs:7252
Constraint AddProdEquality(IntVar target, IEnumerable< IntVar > vars)
Definition: CpModel.cs:490
Constraint AddMinEquality(IntVar target, IEnumerable< IntVar > vars)
Definition: CpModel.cs:418
IntVar NewIntVarFromDomain(Domain domain, string name)
Definition: CpModel.cs:52
Definition: Domain.cs:11
int GetIndex()
double Offset
The displayed objective is always: scaling_factor * (sum(coefficients[i] * objective_vars[i]) + offse...
Definition: CpModel.pb.cs:7008
Constraint AddImplication(ILiteral a, ILiteral b)
Definition: CpModel.cs:372
Constraint AddReservoirConstraint< I >(IEnumerable< IntVar > times, IEnumerable< I > demands, long min_level, long max_level)
Definition: CpModel.cs:292
The circuit constraint is defined on a graph where the arc presence are controlled by literals.
Definition: CpModel.pb.cs:3569
Constraint AddElement(IntVar index, IEnumerable< long > values, IntVar target)
Definition: CpModel.cs:158
Constraint AddReservoirConstraintWithActive< I >(IEnumerable< IntVar > times, IEnumerable< I > demands, IEnumerable< IntVar > actives, long min_level, long max_level)
Definition: CpModel.cs:313
IntVar NewConstant(long value, string name)
Definition: CpModel.cs:64
VariableSelectionStrategy
The order in which the variables above should be considered.
Definition: CpModel.pb.cs:7546
static string ValidateModel(Google.OrTools.Sat.CpModelProto model_proto)
Definition: CpSatHelper.cs:59
Constraint AddMaxEquality(IntVar target, IEnumerable< IntVar > vars)
Definition: CpModel.cs:431
Constraint AddMultiplicationEquality(IntVar target, IEnumerable< IntVar > vars)
Definition: CpModel.cs:477
global::Google.OrTools.Sat.PartialVariableAssignment SolutionHint
Solution hint.
Definition: CpModel.pb.cs:8913
static string ModelStats(Google.OrTools.Sat.CpModelProto model_proto)
Definition: CpSatHelper.cs:49
Constraint AddLinearExpressionInDomain(LinearExpr linear_expr, Domain domain)
Definition: CpModel.cs:79
Constraint AddAllowedAssignments(IEnumerable< IntVar > vars, long[,] tuples)
Definition: CpModel.cs:200
Constraint AddAbsEquality(IntVar target, IntVar var)
Definition: CpModel.cs:455
Definition: IntArrayHelper.cs:14
bool Negated
If true, the meaning is "negated", that is we forbid any of the given tuple from a feasible assignmen...
Definition: CpModel.pb.cs:4221
Constraint AddInverse(IEnumerable< IntVar > direct, IEnumerable< IntVar > reverse)
Definition: CpModel.cs:276
pbc::RepeatedField< int > EnforcementLiteral
The constraint will be enforced iff all literals listed here are true.
Definition: CpModel.pb.cs:5302
Container for nested types declared in the DecisionStrategyProto message type.
Definition: CpModel.pb.cs:7539
global::Google.OrTools.Sat.LinearConstraintProto?? Linear
The linear constraint enforces a linear inequality among the variables, such as 0 <= x + 2y <= 10.
Definition: CpModel.pb.cs:5537
pbc::RepeatedField< int > Vars
Definition: CpModel.pb.cs:7899
Definition: Constraints.cs:19
IntervalVar NewOptionalFixedSizeIntervalVar< S >(S start, long duration, ILiteral is_present, string name)
Definition: CpModel.cs:535
The sum of the demands of the intervals at each interval point cannot exceed a capacity.
Definition: CpModel.pb.cs:2941
Argument of the constraints of the form target_var = OP(vars).
Definition: CpModel.pb.cs:687
IntervalVar NewFixedSizeIntervalVar< S >(S start, long duration, string name)
Definition: CpModel.cs:510
The linear sum vars[i] * coeffs[i] must fall in the given domain.
Definition: CpModel.pb.cs:1569
void AddVarToObjective(IntVar var)
Definition: CpModel.cs:613
static bool WriteModelToFile(Google.OrTools.Sat.CpModelProto model_proto, string filename)
Definition: CpSatHelper.cs:69
pbc::RepeatedField< global::Google.OrTools.Sat.ConstraintProto > Constraints
Definition: CpModel.pb.cs:8853
All variables must take different values.
Definition: CpModel.pb.cs:1381
global::Google.OrTools.Sat.TableConstraintProto?? Table
The table constraint enforces what values a tuple of variables may take.
Definition: CpModel.pb.cs:5615
global::Google.OrTools.Sat.BoolArgumentProto?? BoolOr
The bool_or constraint forces at least one literal to be true.
Definition: CpModel.pb.cs:5313
The constraint target = vars[index].
Definition: CpModel.pb.cs:1812
pbc::RepeatedField< int > Vars
Definition: CpModel.pb.cs:1622
pbc::RepeatedField< long > Domain
Definition: CpModel.pb.cs:1647
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:4144
void AddMapDomain(IntVar var, IEnumerable< IntVar > bool_vars, long offset=0)
Definition: CpModel.cs:338
Constraint AddCumulative< D, C >(IEnumerable< IntervalVar > intervals, IEnumerable< D > demands, C capacity)
Definition: CpModel.cs:575
Constraint AddCircuit(IEnumerable< Tuple< int, int, ILiteral >> arcs)
Definition: CpModel.cs:186
Constraint AddModuloEquality< T, V, M >(T target, V v, M m)
Definition: CpModel.cs:466
Definition: IntArrayHelper.cs:14
Constraint AddAutomaton(IEnumerable< IntVar > vars, long starting_state, IEnumerable< Tuple< long, long, long >> transitions, IEnumerable< long > final_states)
Definition: CpModel.cs:251
global::Google.OrTools.Sat.IntegerArgumentProto?? IntMax
The int_max constraint forces the target to equal the maximum of all variables.
Definition: CpModel.pb.cs:5453
Constraint AddForbiddenAssignments(IEnumerable< IntVar > vars, long[,] tuples)
Definition: CpModel.cs:219
Constraint AddBoolAnd(IEnumerable< ILiteral > literals)
Definition: CpModel.cs:394
Boolean ExportToFile(String filename)
Definition: CpModel.cs:735
IntervalVar NewOptionalIntervalVar< S, D, E >(S start, D duration, E end, ILiteral is_present, string name)
Definition: CpModel.cs:522
LinearExpr Right
Definition: IntegerExpressions.cs:782
Maintain a reservoir level within bounds.
Definition: CpModel.pb.cs:3239
Definition: Domain.cs:17
Constraint AddNoOverlap2D(IEnumerable< IntervalVar > x_intervals, IEnumerable< IntervalVar > y_intervals)
Definition: CpModel.cs:559
static Domain FromFlatIntervals(long[] flat_intervals)
Definition: Domain.cs:79
pbc::RepeatedField< global::Google.OrTools.Sat.IntegerVariableProto > Variables
The associated Protos should be referred by their index in these fields.
Definition: CpModel.pb.cs:8842
Definition: CpSatHelper.cs:15
void AddAssumptions(IEnumerable< ILiteral > literals)
Definition: CpModel.cs:670
Constraint AddElement(IntVar index, IEnumerable< int > values, IntVar target)
Definition: CpModel.cs:172
void AddTermToObjective(IntVar var, long coeff)
Definition: CpModel.cs:621
IntVar NewIntVar(long lb, long ub, string name)
Definition: CpModel.cs:47
IntervalVar NewIntervalVar< S, D, E >(S start, D duration, E end, string name)
Definition: CpModel.cs:497
The two arrays of variable each represent a function, the second is the inverse of the first: f_direc...
Definition: CpModel.pb.cs:4397
static LinearExpr Sum(IEnumerable< IntVar > vars)
Definition: IntegerExpressions.cs:51
Argument of the constraints of the form OP(literals).
Definition: CpModel.pb.cs:504
Constraint AddBoolOr(IEnumerable< ILiteral > literals)
Definition: CpModel.cs:382
void OnlyEnforceIf(ILiteral lit)
Definition: Constraints.cs:28
Constraint AddLinearConstraint(LinearExpr linear_expr, long lb, long ub)
Definition: CpModel.cs:74
global::Google.OrTools.Sat.IntegerArgumentProto?? IntDiv
The int_div constraint forces the target to equal vars[0] / vars[1].
Definition: CpModel.pb.cs:5415
DomainReductionStrategy
Once a variable has been chosen, this enum describe what decision is taken on its domain.
Definition: CpModel.pb.cs:7560
pbc::RepeatedField< int > Vars
Definition: CpModel.pb.cs:751
void AddDecisionStrategy(IEnumerable< IntVar > vars, DecisionStrategyProto.Types.VariableSelectionStrategy var_str, DecisionStrategyProto.Types.DomainReductionStrategy dom_str)
Definition: CpModel.cs:636
All the intervals (index of IntervalConstraintProto) must be disjoint.
Definition: CpModel.pb.cs:2497
pbc::RepeatedField< global::Google.OrTools.Sat.DecisionStrategyProto > SearchStrategy
Defines the strategy that the solver should follow when the search_branching parameter is set to FIXE...
Definition: CpModel.pb.cs:8891
global::Google.OrTools.Sat.IntegerArgumentProto?? IntMod
The int_mod constraint forces the target to equal vars[0] % vars[1].
Definition: CpModel.pb.cs:5432
Constraint AddAllDifferent(IEnumerable< IntVar > vars)
Definition: CpModel.cs:132
pbc::RepeatedField< long > Values
Definition: CpModel.pb.cs:7910
The boxes defined by [start_x, end_x) * [start_y, end_y) cannot overlap.
Definition: CpModel.pb.cs:2682
This constraint forces a sequence of variables to be accepted by an automaton.
Definition: CpModel.pb.cs:4609
Definition: CpModel.pb.cs:12
global::Google.OrTools.Sat.CpObjectiveProto Objective
The objective to minimize.
Definition: CpModel.pb.cs:8865
Constraint AddBoolXor(IEnumerable< ILiteral > literals)
Definition: CpModel.cs:406
Constraint AddAutomaton(IEnumerable< IntVar > vars, long starting_state, long[,] transitions, IEnumerable< long > final_states)
Definition: CpModel.cs:226
This message encodes a partial (or full) assignment of the variables of a CpModelProto.
Definition: CpModel.pb.cs:7847
Constraint AddElement(IntVar index, IEnumerable< IntVar > vars, IntVar target)
Definition: CpModel.cs:144