com.google.ortools.sat.CpModelProtoOrBuilder Maven / Gradle / Ivy
The newest version!
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: ortools/sat/cp_model.proto
package com.google.ortools.sat;
public interface CpModelProtoOrBuilder extends
// @@protoc_insertion_point(interface_extends:operations_research.sat.CpModelProto)
com.google.protobuf.MessageOrBuilder {
/**
*
* For debug/logging only. Can be empty.
*
*
* string name = 1;
* @return The name.
*/
java.lang.String getName();
/**
*
* For debug/logging only. Can be empty.
*
*
* string name = 1;
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
*
* The associated Protos should be referred by their index in these fields.
*
*
* repeated .operations_research.sat.IntegerVariableProto variables = 2;
*/
java.util.List
getVariablesList();
/**
*
* The associated Protos should be referred by their index in these fields.
*
*
* repeated .operations_research.sat.IntegerVariableProto variables = 2;
*/
com.google.ortools.sat.IntegerVariableProto getVariables(int index);
/**
*
* The associated Protos should be referred by their index in these fields.
*
*
* repeated .operations_research.sat.IntegerVariableProto variables = 2;
*/
int getVariablesCount();
/**
*
* The associated Protos should be referred by their index in these fields.
*
*
* repeated .operations_research.sat.IntegerVariableProto variables = 2;
*/
java.util.List extends com.google.ortools.sat.IntegerVariableProtoOrBuilder>
getVariablesOrBuilderList();
/**
*
* The associated Protos should be referred by their index in these fields.
*
*
* repeated .operations_research.sat.IntegerVariableProto variables = 2;
*/
com.google.ortools.sat.IntegerVariableProtoOrBuilder getVariablesOrBuilder(
int index);
/**
* repeated .operations_research.sat.ConstraintProto constraints = 3;
*/
java.util.List
getConstraintsList();
/**
* repeated .operations_research.sat.ConstraintProto constraints = 3;
*/
com.google.ortools.sat.ConstraintProto getConstraints(int index);
/**
* repeated .operations_research.sat.ConstraintProto constraints = 3;
*/
int getConstraintsCount();
/**
* repeated .operations_research.sat.ConstraintProto constraints = 3;
*/
java.util.List extends com.google.ortools.sat.ConstraintProtoOrBuilder>
getConstraintsOrBuilderList();
/**
* repeated .operations_research.sat.ConstraintProto constraints = 3;
*/
com.google.ortools.sat.ConstraintProtoOrBuilder getConstraintsOrBuilder(
int index);
/**
*
* The objective to minimize. Can be empty for pure decision problems.
*
*
* .operations_research.sat.CpObjectiveProto objective = 4;
* @return Whether the objective field is set.
*/
boolean hasObjective();
/**
*
* The objective to minimize. Can be empty for pure decision problems.
*
*
* .operations_research.sat.CpObjectiveProto objective = 4;
* @return The objective.
*/
com.google.ortools.sat.CpObjectiveProto getObjective();
/**
*
* The objective to minimize. Can be empty for pure decision problems.
*
*
* .operations_research.sat.CpObjectiveProto objective = 4;
*/
com.google.ortools.sat.CpObjectiveProtoOrBuilder getObjectiveOrBuilder();
/**
*
* Defines the strategy that the solver should follow when the
* search_branching parameter is set to FIXED_SEARCH. Note that this strategy
* is also used as a heuristic when we are not in fixed search.
* Advanced Usage: if not all variables appears and the parameter
* "instantiate_all_variables" is set to false, then the solver will not try
* to instantiate the variables that do not appear. Thus, at the end of the
* search, not all variables may be fixed and this is why we have the
* solution_lower_bounds and solution_upper_bounds fields in the
* CpSolverResponse.
*
*
* repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
*/
java.util.List
getSearchStrategyList();
/**
*
* Defines the strategy that the solver should follow when the
* search_branching parameter is set to FIXED_SEARCH. Note that this strategy
* is also used as a heuristic when we are not in fixed search.
* Advanced Usage: if not all variables appears and the parameter
* "instantiate_all_variables" is set to false, then the solver will not try
* to instantiate the variables that do not appear. Thus, at the end of the
* search, not all variables may be fixed and this is why we have the
* solution_lower_bounds and solution_upper_bounds fields in the
* CpSolverResponse.
*
*
* repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
*/
com.google.ortools.sat.DecisionStrategyProto getSearchStrategy(int index);
/**
*
* Defines the strategy that the solver should follow when the
* search_branching parameter is set to FIXED_SEARCH. Note that this strategy
* is also used as a heuristic when we are not in fixed search.
* Advanced Usage: if not all variables appears and the parameter
* "instantiate_all_variables" is set to false, then the solver will not try
* to instantiate the variables that do not appear. Thus, at the end of the
* search, not all variables may be fixed and this is why we have the
* solution_lower_bounds and solution_upper_bounds fields in the
* CpSolverResponse.
*
*
* repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
*/
int getSearchStrategyCount();
/**
*
* Defines the strategy that the solver should follow when the
* search_branching parameter is set to FIXED_SEARCH. Note that this strategy
* is also used as a heuristic when we are not in fixed search.
* Advanced Usage: if not all variables appears and the parameter
* "instantiate_all_variables" is set to false, then the solver will not try
* to instantiate the variables that do not appear. Thus, at the end of the
* search, not all variables may be fixed and this is why we have the
* solution_lower_bounds and solution_upper_bounds fields in the
* CpSolverResponse.
*
*
* repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
*/
java.util.List extends com.google.ortools.sat.DecisionStrategyProtoOrBuilder>
getSearchStrategyOrBuilderList();
/**
*
* Defines the strategy that the solver should follow when the
* search_branching parameter is set to FIXED_SEARCH. Note that this strategy
* is also used as a heuristic when we are not in fixed search.
* Advanced Usage: if not all variables appears and the parameter
* "instantiate_all_variables" is set to false, then the solver will not try
* to instantiate the variables that do not appear. Thus, at the end of the
* search, not all variables may be fixed and this is why we have the
* solution_lower_bounds and solution_upper_bounds fields in the
* CpSolverResponse.
*
*
* repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
*/
com.google.ortools.sat.DecisionStrategyProtoOrBuilder getSearchStrategyOrBuilder(
int index);
/**
*
* Solution hint.
* If a feasible or almost-feasible solution to the problem is already known,
* it may be helpful to pass it to the solver so that it can be used. The
* solver will try to use this information to create its initial feasible
* solution.
* Note that it may not always be faster to give a hint like this to the
* solver. There is also no guarantee that the solver will use this hint or
* try to return a solution "close" to this assignment in case of multiple
* optimal solutions.
*
*
* .operations_research.sat.PartialVariableAssignment solution_hint = 6;
* @return Whether the solutionHint field is set.
*/
boolean hasSolutionHint();
/**
*
* Solution hint.
* If a feasible or almost-feasible solution to the problem is already known,
* it may be helpful to pass it to the solver so that it can be used. The
* solver will try to use this information to create its initial feasible
* solution.
* Note that it may not always be faster to give a hint like this to the
* solver. There is also no guarantee that the solver will use this hint or
* try to return a solution "close" to this assignment in case of multiple
* optimal solutions.
*
*
* .operations_research.sat.PartialVariableAssignment solution_hint = 6;
* @return The solutionHint.
*/
com.google.ortools.sat.PartialVariableAssignment getSolutionHint();
/**
*
* Solution hint.
* If a feasible or almost-feasible solution to the problem is already known,
* it may be helpful to pass it to the solver so that it can be used. The
* solver will try to use this information to create its initial feasible
* solution.
* Note that it may not always be faster to give a hint like this to the
* solver. There is also no guarantee that the solver will use this hint or
* try to return a solution "close" to this assignment in case of multiple
* optimal solutions.
*
*
* .operations_research.sat.PartialVariableAssignment solution_hint = 6;
*/
com.google.ortools.sat.PartialVariableAssignmentOrBuilder getSolutionHintOrBuilder();
/**
*
* A list of literals. The model will be solved assuming all these literals
* are true. Compared to just fixing the domain of these literals, using this
* mechanism is slower but allows in case the model is INFEASIBLE to get a
* potentially small subset of them that can be used to explain the
* infeasibility.
* Think (IIS), except when you are only concerned by the provided
* assumptions. This is powerful as it allows to group a set of logicially
* related constraint under only one enforcement literal which can potentially
* give you a good and interpretable explanation for infeasiblity.
* Such infeasibility explanation will be available in the
* sufficient_assumptions_for_infeasibility response field.
*
*
* repeated int32 assumptions = 7;
* @return A list containing the assumptions.
*/
java.util.List getAssumptionsList();
/**
*
* A list of literals. The model will be solved assuming all these literals
* are true. Compared to just fixing the domain of these literals, using this
* mechanism is slower but allows in case the model is INFEASIBLE to get a
* potentially small subset of them that can be used to explain the
* infeasibility.
* Think (IIS), except when you are only concerned by the provided
* assumptions. This is powerful as it allows to group a set of logicially
* related constraint under only one enforcement literal which can potentially
* give you a good and interpretable explanation for infeasiblity.
* Such infeasibility explanation will be available in the
* sufficient_assumptions_for_infeasibility response field.
*
*
* repeated int32 assumptions = 7;
* @return The count of assumptions.
*/
int getAssumptionsCount();
/**
*
* A list of literals. The model will be solved assuming all these literals
* are true. Compared to just fixing the domain of these literals, using this
* mechanism is slower but allows in case the model is INFEASIBLE to get a
* potentially small subset of them that can be used to explain the
* infeasibility.
* Think (IIS), except when you are only concerned by the provided
* assumptions. This is powerful as it allows to group a set of logicially
* related constraint under only one enforcement literal which can potentially
* give you a good and interpretable explanation for infeasiblity.
* Such infeasibility explanation will be available in the
* sufficient_assumptions_for_infeasibility response field.
*
*
* repeated int32 assumptions = 7;
* @param index The index of the element to return.
* @return The assumptions at the given index.
*/
int getAssumptions(int index);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy