DotNet Reference

.Net Reference

Google.OrTools.Sat Namespace Reference

Classes

class  CpModelReflection
 Holder for reflection information generated from ortools/sat/cp_model.proto More...
 
class  IntegerVariableProto
 An integer variable. More...
 
class  BoolArgumentProto
 Argument of the constraints of the form OP(literals). More...
 
class  IntegerArgumentProto
 Argument of the constraints of the form target_var = OP(vars). More...
 
class  LinearExpressionProto
 Some constraints supports linear expression instead of just using a reference to a variable. More...
 
class  LinearArgumentProto
 
class  AllDifferentConstraintProto
 All variables must take different values. More...
 
class  LinearConstraintProto
 The linear sum vars[i] * coeffs[i] must fall in the given domain. More...
 
class  ElementConstraintProto
 The constraint target = vars[index]. More...
 
class  IntervalConstraintProto
 This "special" constraint not only enforces (start + size == end) and (size >= 0) but can also be referred by other constraints using this "interval" concept. More...
 
class  NoOverlapConstraintProto
 All the intervals (index of IntervalConstraintProto) must be disjoint. More...
 
class  NoOverlap2DConstraintProto
 The boxes defined by [start_x, end_x) * [start_y, end_y) cannot overlap. More...
 
class  CumulativeConstraintProto
 The sum of the demands of the intervals at each interval point cannot exceed a capacity. More...
 
class  ReservoirConstraintProto
 Maintain a reservoir level within bounds. More...
 
class  CircuitConstraintProto
 The circuit constraint is defined on a graph where the arc presence are controlled by literals. More...
 
class  RoutesConstraintProto
 The "VRP" (Vehicle Routing Problem) constraint. More...
 
class  TableConstraintProto
 The values of the n-tuple formed by the given variables can only be one of the listed n-tuples in values. More...
 
class  InverseConstraintProto
 The two arrays of variable each represent a function, the second is the inverse of the first: f_direct[i] == j <=> f_inverse[j] == i. More...
 
class  AutomatonConstraintProto
 This constraint forces a sequence of variables to be accepted by an automaton. More...
 
class  ConstraintProto
 Next id: 30 More...
 
class  CpObjectiveProto
 Optimization objective. More...
 
class  DecisionStrategyProto
 Define the strategy to follow when the solver needs to take a new decision. More...
 
class  PartialVariableAssignment
 This message encodes a partial (or full) assignment of the variables of a CpModelProto. More...
 
class  SparsePermutationProto
 A permutation of integers encoded as a list of cycles, hence the "sparse" format. More...
 
class  DenseMatrixProto
 A dense matrix of numbers encoded in a flat way, row by row. More...
 
class  SymmetryProto
 Experimental. More...
 
class  CpModelProto
 A constraint programming problem. More...
 
class  CpSolverResponse
 The response returned by a solver trying to solve a CpModelProto. More...
 
class  operations_research_sat
 
class  operations_research_satPINVOKE
 
class  SatHelper
 
class  SolutionCallback
 
class  Constraint
 
class  CpModel
 Wrapper class around the cp_model proto. More...
 
class  CpSolver
 
class  IntVarArrayHelper
 
interface  ILiteral
 
class  LinearExpr
 
class  ProductCst
 
class  SumArray
 
class  IntVar
 
class  NotBooleanVariable
 
class  BoundedLinearExpression
 
class  IntervalVar
 
class  CpSolverSolutionCallback
 
class  ObjectiveSolutionPrinter
 

Enumerations

enum class  CpSolverStatus {
  Unknown = 0 , ModelInvalid = 1 , Feasible = 2 , Infeasible = 3 ,
  Optimal = 4
}
 The status returned by a solver trying to solve a CpModelProto. More...
 

Enumeration Type Documentation

◆ CpSolverStatus

enum CpSolverStatus
strong

The status returned by a solver trying to solve a CpModelProto.

Enumerator
Unknown 

The status of the model is still unknown.

A search limit has been reached before any of the statuses below could be determined.

ModelInvalid 

The given CpModelProto didn't pass the validation step.

You can get a detailed error by calling ValidateCpModel(model_proto).

Feasible 

A feasible solution has been found.

But the search was stopped before we could prove optimality or before we enumerated all solutions of a feasibility problem (if asked).

Infeasible 

The problem has been proven infeasible.

Optimal 

An optimal feasible solution has been found.

More generally, this status represent a success. So we also return OPTIMAL if we find a solution for a pure feasiblity problem or if a gap limit has been specified and we return a solution within this limit. In the case where we need to return all the feasible solution, this status will only be returned if we enumerated all of them; If we stopped before, we will return FEASIBLE.

Definition at line 199 of file CpModel.pb.cs.