DotNet Reference
DotNet Reference
CpModel.cs
Go to the documentation of this file.
34 {
pbc::RepeatedField< int > Literals
Definition: CpModel.pb.cs:440
static long GetVarValueMap(LinearExpr e, long initial_coeff, Dictionary< IntVar, long > dict)
Definition: IntegerExpressions.cs:232
ILiteral Not()
Constraint AddDivisionEquality< T, N, D >(T target, N num, D denom)
Definition: CpModel.cs:462
pbc::RepeatedField< long > Coeffs
Definition: CpModel.pb.cs:4441
pbc::RepeatedField< int > Vars
The linear terms of the objective to minimize.
Definition: CpModel.pb.cs:4431
Constraint AddNoOverlap(IEnumerable< IntervalVar > intervals)
Definition: CpModel.cs:533
Define the strategy to follow when the solver needs to take a new decision.
Definition: CpModel.pb.cs:4625
Constraint AddProdEquality(IntVar target, IEnumerable< IntVar > vars)
Definition: CpModel.cs:495
Constraint AddMinEquality(IntVar target, IEnumerable< IntVar > vars)
Definition: CpModel.cs:436
IntVar NewIntVarFromDomain(Domain domain, string name)
Definition: CpModel.cs:50
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:4458
Constraint AddImplication(ILiteral a, ILiteral b)
Definition: CpModel.cs:390
Constraint AddReservoirConstraint< I >(IEnumerable< IntVar > times, IEnumerable< I > demands, long min_level, long max_level)
Definition: CpModel.cs:311
The circuit constraint is defined on a graph where the arc presence are controlled by literals.
Definition: CpModel.pb.cs:2063
Constraint AddElement(IntVar index, IEnumerable< long > values, IntVar target)
Definition: CpModel.cs:166
Constraint AddReservoirConstraintWithActive< I >(IEnumerable< IntVar > times, IEnumerable< I > demands, IEnumerable< IntVar > actives, long min_level, long max_level)
Definition: CpModel.cs:330
IntVar NewConstant(long value, string name)
Definition: CpModel.cs:62
VariableSelectionStrategy
The order in which the variables above should be considered.
Definition: CpModel.pb.cs:4836
Constraint AddMaxEquality(IntVar target, IEnumerable< IntVar > vars)
Definition: CpModel.cs:449
Constraint AddLinearExpressionInDomain(LinearExpr linear_expr, Domain domain)
Definition: CpModel.cs:78
Constraint AddAllowedAssignments(IEnumerable< IntVar > vars, long[,] tuples)
Definition: CpModel.cs:210
Constraint AddAbsEquality(IntVar target, IntVar var)
Definition: CpModel.cs:473
Definition: KInt64Vector.cs:11
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:2679
Constraint AddInverse(IEnumerable< IntVar > direct, IEnumerable< IntVar > reverse)
Definition: CpModel.cs:294
pbc::RepeatedField< int > EnforcementLiteral
The constraint will be enforced iff all literals listed here are true.
Definition: CpModel.pb.cs:3335
Container for nested types declared in the DecisionStrategyProto message type.
Definition: CpModel.pb.cs:4829
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:3483
Definition: Constraints.cs:19
The sum of the demands of the intervals at each interval point cannot exceed a capacity.
Definition: CpModel.pb.cs:1634
Argument of the constraints of the form target_var = OP(vars).
Definition: CpModel.pb.cs:525
The linear sum vars[i] * coeffs[i] must fall in the given domain.
Definition: CpModel.pb.cs:808
void AddVarToObjective(IntVar var)
Definition: CpModel.cs:603
pbc::RepeatedField< global::Google.OrTools.Sat.ConstraintProto > Constraints
Definition: CpModel.pb.cs:5276
All variables must take different values.
Definition: CpModel.pb.cs:678
global::Google.OrTools.Sat.TableConstraintProto?? Table
The table constraint enforces what values a tuple of variables may take.
Definition: CpModel.pb.cs:3571
global::Google.OrTools.Sat.BoolArgumentProto?? BoolOr
The bool_or constraint forces at least one literal to be true.
Definition: CpModel.pb.cs:3345
The constraint target = vars[index].
Definition: CpModel.pb.cs:979
pbc::RepeatedField< int > Vars
Definition: CpModel.pb.cs:850
pbc::RepeatedField< long > Domain
Definition: CpModel.pb.cs:873
static string ValidateModel(Google.OrTools.Sat.CpModelProto model_proto)
Definition: SatHelper.cs:121
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:2615
void AddMapDomain(IntVar var, IEnumerable< IntVar > bool_vars, long offset=0)
Definition: CpModel.cs:355
Constraint AddCumulative< D, C >(IEnumerable< IntervalVar > intervals, IEnumerable< D > demands, C capacity)
Definition: CpModel.cs:562
Constraint AddCircuit(IEnumerable< Tuple< int, int, ILiteral >> arcs)
Definition: CpModel.cs:196
Constraint AddModuloEquality< T, V, M >(T target, V v, M m)
Definition: CpModel.cs:484
Definition: KInt64Vector.cs:11
Constraint AddAutomaton(IEnumerable< IntVar > vars, long starting_state, IEnumerable< Tuple< long, long, long >> transitions, IEnumerable< long > final_states)
Definition: CpModel.cs:265
global::Google.OrTools.Sat.IntegerArgumentProto?? IntMax
The int_max constraint forces the target to equal the maximum of all variables.
Definition: CpModel.pb.cs:3438
Constraint AddForbiddenAssignments(IEnumerable< IntVar > vars, long[,] tuples)
Definition: CpModel.cs:230
Constraint AddBoolAnd(IEnumerable< ILiteral > literals)
Definition: CpModel.cs:412
IntervalVar NewOptionalIntervalVar< S, D, E >(S start, D duration, E end, ILiteral is_present, string name)
Definition: CpModel.cs:521
LinearExpr Right
Definition: IntegerExpressions.cs:732
Maintain a reservoir level within bounds.
Definition: CpModel.pb.cs:1824
Definition: Domain.cs:17
Constraint AddNoOverlap2D(IEnumerable< IntervalVar > x_intervals, IEnumerable< IntervalVar > y_intervals)
Definition: CpModel.cs:545
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:5266
Constraint AddElement(IntVar index, IEnumerable< int > values, IntVar target)
Definition: CpModel.cs:181
void AddTermToObjective(IntVar var, long coeff)
Definition: CpModel.cs:610
IntVar NewIntVar(long lb, long ub, string name)
Definition: CpModel.cs:45
IntervalVar NewIntervalVar< S, D, E >(S start, D duration, E end, string name)
Definition: CpModel.cs:510
The two arrays of variable each represent a function, the second is the inverse of the first: f_direc...
Definition: CpModel.pb.cs:2794
Argument of the constraints of the form OP(literals).
Definition: CpModel.pb.cs:400
Constraint AddBoolOr(IEnumerable< ILiteral > literals)
Definition: CpModel.cs:400
Definition: SatHelper.cs:17
Constraint AddLinearConstraint(LinearExpr linear_expr, long lb, long ub)
Definition: CpModel.cs:72
global::Google.OrTools.Sat.IntegerArgumentProto?? IntDiv
The int_div constraint forces the target to equal vars[0] / vars[1].
Definition: CpModel.pb.cs:3409
static string ModelStats(Google.OrTools.Sat.CpModelProto model_proto)
Definition: SatHelper.cs:111
DomainReductionStrategy
Once a variable has been chosen, this enum describe what decision is taken on its domain.
Definition: CpModel.pb.cs:4850
pbc::RepeatedField< int > Vars
Definition: CpModel.pb.cs:577
void AddDecisionStrategy(IEnumerable< IntVar > vars, DecisionStrategyProto.Types.VariableSelectionStrategy var_str, DecisionStrategyProto.Types.DomainReductionStrategy dom_str)
Definition: CpModel.cs:624
All the intervals (index of IntervalConstraintProto) must be disjoint.
Definition: CpModel.pb.cs:1353
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:5312
global::Google.OrTools.Sat.IntegerArgumentProto?? IntMod
The int_mod constraint forces the target to equal vars[0] % vars[1].
Definition: CpModel.pb.cs:3423
Constraint AddAllDifferent(IEnumerable< IntVar > vars)
Definition: CpModel.cs:139
The boxes defined by [start_x, end_x) * [start_y, end_y) cannot overlap.
Definition: CpModel.pb.cs:1482
This constraint forces a sequence of variables to be accepted by an automaton.
Definition: CpModel.pb.cs:2941
Definition: CpModel.pb.cs:12
global::Google.OrTools.Sat.CpObjectiveProto Objective
The objective to minimize.
Definition: CpModel.pb.cs:5287
Constraint AddBoolXor(IEnumerable< ILiteral > literals)
Definition: CpModel.cs:424
Constraint AddAutomaton(IEnumerable< IntVar > vars, long starting_state, long[,] transitions, IEnumerable< long > final_states)
Definition: CpModel.cs:238
Constraint AddElement(IntVar index, IEnumerable< IntVar > vars, IntVar target)
Definition: CpModel.cs:151