Google OR-Tools v9.12
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
com.google.ortools.sat.CpSolverResponse Class Reference
Inheritance diagram for com.google.ortools.sat.CpSolverResponse:
com.google.ortools.sat.CpSolverResponseOrBuilder

Classes

class  Builder
 

Public Member Functions

int getStatusValue ()
 
com.google.ortools.sat.CpSolverStatus getStatus ()
 
java.util.List< java.lang.Long > getSolutionList ()
 
int getSolutionCount ()
 
long getSolution (int index)
 
double getObjectiveValue ()
 
double getBestObjectiveBound ()
 
java.util.List< com.google.ortools.sat.CpSolverSolutiongetAdditionalSolutionsList ()
 
java.util.List<? extends com.google.ortools.sat.CpSolverSolutionOrBuildergetAdditionalSolutionsOrBuilderList ()
 
int getAdditionalSolutionsCount ()
 
com.google.ortools.sat.CpSolverSolution getAdditionalSolutions (int index)
 
com.google.ortools.sat.CpSolverSolutionOrBuilder getAdditionalSolutionsOrBuilder (int index)
 
java.util.List< com.google.ortools.sat.IntegerVariableProtogetTightenedVariablesList ()
 
java.util.List<? extends com.google.ortools.sat.IntegerVariableProtoOrBuildergetTightenedVariablesOrBuilderList ()
 
int getTightenedVariablesCount ()
 
com.google.ortools.sat.IntegerVariableProto getTightenedVariables (int index)
 
com.google.ortools.sat.IntegerVariableProtoOrBuilder getTightenedVariablesOrBuilder (int index)
 
java.util.List< java.lang.Integer > getSufficientAssumptionsForInfeasibilityList ()
 
int getSufficientAssumptionsForInfeasibilityCount ()
 
int getSufficientAssumptionsForInfeasibility (int index)
 
boolean hasIntegerObjective ()
 
com.google.ortools.sat.CpObjectiveProto getIntegerObjective ()
 
com.google.ortools.sat.CpObjectiveProtoOrBuilder getIntegerObjectiveOrBuilder ()
 
long getInnerObjectiveLowerBound ()
 
long getNumIntegers ()
 
long getNumBooleans ()
 
long getNumFixedBooleans ()
 
long getNumConflicts ()
 
long getNumBranches ()
 
long getNumBinaryPropagations ()
 
long getNumIntegerPropagations ()
 
long getNumRestarts ()
 
long getNumLpIterations ()
 
double getWallTime ()
 
double getUserTime ()
 
double getDeterministicTime ()
 
double getGapIntegral ()
 
java.lang.String getSolutionInfo ()
 
com.google.protobuf.ByteString getSolutionInfoBytes ()
 
java.lang.String getSolveLog ()
 
com.google.protobuf.ByteString getSolveLogBytes ()
 
final boolean isInitialized ()
 
void writeTo (com.google.protobuf.CodedOutputStream output) throws java.io.IOException
 
int getSerializedSize ()
 
boolean equals (final java.lang.Object obj)
 
int hashCode ()
 
Builder newBuilderForType ()
 
Builder toBuilder ()
 
com.google.protobuf.Parser< CpSolverResponsegetParserForType ()
 
com.google.ortools.sat.CpSolverResponse getDefaultInstanceForType ()
 

Static Public Member Functions

static final com.google.protobuf.Descriptors.Descriptor getDescriptor ()
 
static com.google.ortools.sat.CpSolverResponse parseFrom (java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (java.io.InputStream input) throws java.io.IOException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
 
static com.google.ortools.sat.CpSolverResponse parseDelimitedFrom (java.io.InputStream input) throws java.io.IOException
 
static com.google.ortools.sat.CpSolverResponse parseDelimitedFrom (java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (com.google.protobuf.CodedInputStream input) throws java.io.IOException
 
static com.google.ortools.sat.CpSolverResponse parseFrom (com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
 
static Builder newBuilder ()
 
static Builder newBuilder (com.google.ortools.sat.CpSolverResponse prototype)
 
static com.google.ortools.sat.CpSolverResponse getDefaultInstance ()
 
static com.google.protobuf.Parser< CpSolverResponseparser ()
 

Static Public Attributes

static final int STATUS_FIELD_NUMBER = 1
 
static final int SOLUTION_FIELD_NUMBER = 2
 
static final int OBJECTIVE_VALUE_FIELD_NUMBER = 3
 
static final int BEST_OBJECTIVE_BOUND_FIELD_NUMBER = 4
 
static final int ADDITIONAL_SOLUTIONS_FIELD_NUMBER = 27
 
static final int TIGHTENED_VARIABLES_FIELD_NUMBER = 21
 
static final int SUFFICIENT_ASSUMPTIONS_FOR_INFEASIBILITY_FIELD_NUMBER = 23
 
static final int INTEGER_OBJECTIVE_FIELD_NUMBER = 28
 
static final int INNER_OBJECTIVE_LOWER_BOUND_FIELD_NUMBER = 29
 
static final int NUM_INTEGERS_FIELD_NUMBER = 30
 
static final int NUM_BOOLEANS_FIELD_NUMBER = 10
 
static final int NUM_FIXED_BOOLEANS_FIELD_NUMBER = 31
 
static final int NUM_CONFLICTS_FIELD_NUMBER = 11
 
static final int NUM_BRANCHES_FIELD_NUMBER = 12
 
static final int NUM_BINARY_PROPAGATIONS_FIELD_NUMBER = 13
 
static final int NUM_INTEGER_PROPAGATIONS_FIELD_NUMBER = 14
 
static final int NUM_RESTARTS_FIELD_NUMBER = 24
 
static final int NUM_LP_ITERATIONS_FIELD_NUMBER = 25
 
static final int WALL_TIME_FIELD_NUMBER = 15
 
static final int USER_TIME_FIELD_NUMBER = 16
 
static final int DETERMINISTIC_TIME_FIELD_NUMBER = 17
 
static final int GAP_INTEGRAL_FIELD_NUMBER = 22
 
static final int SOLUTION_INFO_FIELD_NUMBER = 20
 
static final int SOLVE_LOG_FIELD_NUMBER = 26
 

Protected Member Functions

com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable ()
 
Builder newBuilderForType (com.google.protobuf.GeneratedMessage.BuilderParent parent)
 

Detailed Description

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

Next id: 32

Protobuf type operations_research.sat.CpSolverResponse

Definition at line 17 of file CpSolverResponse.java.

Member Function Documentation

◆ equals()

boolean com.google.ortools.sat.CpSolverResponse.equals ( final java.lang.Object obj)

Definition at line 1034 of file CpSolverResponse.java.

◆ getAdditionalSolutions()

com.google.ortools.sat.CpSolverSolution com.google.ortools.sat.CpSolverResponse.getAdditionalSolutions ( int index)
If the parameter fill_additional_solutions_in_response is set, then we
copy all the solutions from our internal solution pool here.

Note that the one returned in the solution field will likely appear here
too. Do not rely on the solutions order as it depends on our internal
representation (after postsolve).

repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 236 of file CpSolverResponse.java.

◆ getAdditionalSolutionsCount()

int com.google.ortools.sat.CpSolverResponse.getAdditionalSolutionsCount ( )
If the parameter fill_additional_solutions_in_response is set, then we
copy all the solutions from our internal solution pool here.

Note that the one returned in the solution field will likely appear here
too. Do not rely on the solutions order as it depends on our internal
representation (after postsolve).

repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 220 of file CpSolverResponse.java.

◆ getAdditionalSolutionsList()

java.util.List< com.google.ortools.sat.CpSolverSolution > com.google.ortools.sat.CpSolverResponse.getAdditionalSolutionsList ( )
If the parameter fill_additional_solutions_in_response is set, then we
copy all the solutions from our internal solution pool here.

Note that the one returned in the solution field will likely appear here
too. Do not rely on the solutions order as it depends on our internal
representation (after postsolve).

repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 187 of file CpSolverResponse.java.

◆ getAdditionalSolutionsOrBuilder()

com.google.ortools.sat.CpSolverSolutionOrBuilder com.google.ortools.sat.CpSolverResponse.getAdditionalSolutionsOrBuilder ( int index)
If the parameter fill_additional_solutions_in_response is set, then we
copy all the solutions from our internal solution pool here.

Note that the one returned in the solution field will likely appear here
too. Do not rely on the solutions order as it depends on our internal
representation (after postsolve).

repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 252 of file CpSolverResponse.java.

◆ getAdditionalSolutionsOrBuilderList()

java.util.List<? extends com.google.ortools.sat.CpSolverSolutionOrBuilder > com.google.ortools.sat.CpSolverResponse.getAdditionalSolutionsOrBuilderList ( )
If the parameter fill_additional_solutions_in_response is set, then we
copy all the solutions from our internal solution pool here.

Note that the one returned in the solution field will likely appear here
too. Do not rely on the solutions order as it depends on our internal
representation (after postsolve).

repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 204 of file CpSolverResponse.java.

◆ getBestObjectiveBound()

double com.google.ortools.sat.CpSolverResponse.getBestObjectiveBound ( )
Only make sense for an optimization problem. A proven lower-bound on the
objective for a minimization problem, or a proven upper-bound for a
maximization problem.

double best_objective_bound = 4;

Returns
The bestObjectiveBound.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 167 of file CpSolverResponse.java.

◆ getDefaultInstance()

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.getDefaultInstance ( )
static

Definition at line 4284 of file CpSolverResponse.java.

◆ getDefaultInstanceForType()

com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.getDefaultInstanceForType ( )

Definition at line 4320 of file CpSolverResponse.java.

◆ getDescriptor()

static final com.google.protobuf.Descriptors.Descriptor com.google.ortools.sat.CpSolverResponse.getDescriptor ( )
static

Definition at line 46 of file CpSolverResponse.java.

◆ getDeterministicTime()

double com.google.ortools.sat.CpSolverResponse.getDeterministicTime ( )

double deterministic_time = 17;

Returns
The deterministicTime.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 693 of file CpSolverResponse.java.

◆ getGapIntegral()

double com.google.ortools.sat.CpSolverResponse.getGapIntegral ( )
The integral of log(1 + absolute_objective_gap) over time.

double gap_integral = 22;

Returns
The gapIntegral.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 708 of file CpSolverResponse.java.

◆ getInnerObjectiveLowerBound()

long com.google.ortools.sat.CpSolverResponse.getInnerObjectiveLowerBound ( )
Advanced usage.

A lower bound on the inner integer expression of the objective. This is
either a bound on the expression in the returned integer_objective or on
the integer expression of the original objective if the problem already has
an integer objective.

int64 inner_objective_lower_bound = 29;

Returns
The innerObjectiveLowerBound.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 549 of file CpSolverResponse.java.

◆ getIntegerObjective()

com.google.ortools.sat.CpObjectiveProto com.google.ortools.sat.CpSolverResponse.getIntegerObjective ( )
Contains the integer objective optimized internally. This is only filled if
the problem had a floating point objective, and on the final response, not
the ones given to callbacks.

.operations_research.sat.CpObjectiveProto integer_objective = 28;

Returns
The integerObjective.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 516 of file CpSolverResponse.java.

◆ getIntegerObjectiveOrBuilder()

com.google.ortools.sat.CpObjectiveProtoOrBuilder com.google.ortools.sat.CpSolverResponse.getIntegerObjectiveOrBuilder ( )
Contains the integer objective optimized internally. This is only filled if
the problem had a floating point objective, and on the final response, not
the ones given to callbacks.

.operations_research.sat.CpObjectiveProto integer_objective = 28;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 529 of file CpSolverResponse.java.

◆ getNumBinaryPropagations()

long com.google.ortools.sat.CpSolverResponse.getNumBinaryPropagations ( )

int64 num_binary_propagations = 13;

Returns
The numBinaryPropagations.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 623 of file CpSolverResponse.java.

◆ getNumBooleans()

long com.google.ortools.sat.CpSolverResponse.getNumBooleans ( )

int64 num_booleans = 10;

Returns
The numBooleans.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 579 of file CpSolverResponse.java.

◆ getNumBranches()

long com.google.ortools.sat.CpSolverResponse.getNumBranches ( )

int64 num_branches = 12;

Returns
The numBranches.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 612 of file CpSolverResponse.java.

◆ getNumConflicts()

long com.google.ortools.sat.CpSolverResponse.getNumConflicts ( )

int64 num_conflicts = 11;

Returns
The numConflicts.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 601 of file CpSolverResponse.java.

◆ getNumFixedBooleans()

long com.google.ortools.sat.CpSolverResponse.getNumFixedBooleans ( )

int64 num_fixed_booleans = 31;

Returns
The numFixedBooleans.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 590 of file CpSolverResponse.java.

◆ getNumIntegerPropagations()

long com.google.ortools.sat.CpSolverResponse.getNumIntegerPropagations ( )

int64 num_integer_propagations = 14;

Returns
The numIntegerPropagations.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 634 of file CpSolverResponse.java.

◆ getNumIntegers()

long com.google.ortools.sat.CpSolverResponse.getNumIntegers ( )
Some statistics about the solve.

Important: in multithread, this correspond the statistics of the first
subsolver. Which is usually the one with the user defined parameters. Or
the default-search if none are specified.

int64 num_integers = 30;

Returns
The numIntegers.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 568 of file CpSolverResponse.java.

◆ getNumLpIterations()

long com.google.ortools.sat.CpSolverResponse.getNumLpIterations ( )

int64 num_lp_iterations = 25;

Returns
The numLpIterations.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 656 of file CpSolverResponse.java.

◆ getNumRestarts()

long com.google.ortools.sat.CpSolverResponse.getNumRestarts ( )

int64 num_restarts = 24;

Returns
The numRestarts.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 645 of file CpSolverResponse.java.

◆ getObjectiveValue()

double com.google.ortools.sat.CpSolverResponse.getObjectiveValue ( )
Only make sense for an optimization problem. The objective value of the
returned solution if it is non-empty. If there is no solution, then for a
minimization problem, this will be an upper-bound of the objective of any
feasible solution, and a lower-bound for a maximization problem.

double objective_value = 3;

Returns
The objectiveValue.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 150 of file CpSolverResponse.java.

◆ getParserForType()

com.google.protobuf.Parser< CpSolverResponse > com.google.ortools.sat.CpSolverResponse.getParserForType ( )

Definition at line 4315 of file CpSolverResponse.java.

◆ getSerializedSize()

int com.google.ortools.sat.CpSolverResponse.getSerializedSize ( )

Definition at line 909 of file CpSolverResponse.java.

◆ getSolution()

long com.google.ortools.sat.CpSolverResponse.getSolution ( int index)
A feasible solution to the given problem. Depending on the returned status
it may be optimal or just feasible. This is in one-to-one correspondence
with a CpModelProto::variables repeated field and list the values of all
the variables.

repeated int64 solution = 2;

Parameters
indexThe index of the element to return.
Returns
The solution at the given index.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 131 of file CpSolverResponse.java.

◆ getSolutionCount()

int com.google.ortools.sat.CpSolverResponse.getSolutionCount ( )
A feasible solution to the given problem. Depending on the returned status
it may be optimal or just feasible. This is in one-to-one correspondence
with a CpModelProto::variables repeated field and list the values of all
the variables.

repeated int64 solution = 2;

Returns
The count of solution.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 116 of file CpSolverResponse.java.

◆ getSolutionInfo()

java.lang.String com.google.ortools.sat.CpSolverResponse.getSolutionInfo ( )
Additional information about how the solution was found. It also stores
model or parameters errors that caused the model to be invalid.

string solution_info = 20;

Returns
The solutionInfo.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 725 of file CpSolverResponse.java.

◆ getSolutionInfoBytes()

com.google.protobuf.ByteString com.google.ortools.sat.CpSolverResponse.getSolutionInfoBytes ( )
Additional information about how the solution was found. It also stores
model or parameters errors that caused the model to be invalid.

string solution_info = 20;

Returns
The bytes for solutionInfo.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 748 of file CpSolverResponse.java.

◆ getSolutionList()

java.util.List< java.lang.Long > com.google.ortools.sat.CpSolverResponse.getSolutionList ( )
A feasible solution to the given problem. Depending on the returned status
it may be optimal or just feasible. This is in one-to-one correspondence
with a CpModelProto::variables repeated field and list the values of all
the variables.

repeated int64 solution = 2;

Returns
A list containing the solution.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 102 of file CpSolverResponse.java.

◆ getSolveLog()

java.lang.String com.google.ortools.sat.CpSolverResponse.getSolveLog ( )
The solve log will be filled if the parameter log_to_response is set to
true.

string solve_log = 26;

Returns
The solveLog.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 774 of file CpSolverResponse.java.

◆ getSolveLogBytes()

com.google.protobuf.ByteString com.google.ortools.sat.CpSolverResponse.getSolveLogBytes ( )
The solve log will be filled if the parameter log_to_response is set to
true.

string solve_log = 26;

Returns
The bytes for solveLog.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 797 of file CpSolverResponse.java.

◆ getStatus()

com.google.ortools.sat.CpSolverStatus com.google.ortools.sat.CpSolverResponse.getStatus ( )
The status of the solve.

.operations_research.sat.CpSolverStatus status = 1;

Returns
The status.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 80 of file CpSolverResponse.java.

◆ getStatusValue()

int com.google.ortools.sat.CpSolverResponse.getStatusValue ( )
The status of the solve.

.operations_research.sat.CpSolverStatus status = 1;

Returns
The enum numeric value on the wire for status.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 69 of file CpSolverResponse.java.

◆ getSufficientAssumptionsForInfeasibility()

int com.google.ortools.sat.CpSolverResponse.getSufficientAssumptionsForInfeasibility ( int index)
A subset of the model "assumptions" field. This will only be filled if the
status is INFEASIBLE. This subset of assumption will be enough to still get
an infeasible problem.

This is related to what is called the irreducible inconsistent subsystem or
IIS. Except one is only concerned by the provided assumptions. There is
also no guarantee that we return an irreducible (aka minimal subset).
However, this is based on SAT explanation and there is a good chance it is
not too large.

If you really want a minimal subset, a possible way to get one is by
changing your model to minimize the number of assumptions at false, but
this is likely an harder problem to solve.

Important: Currently, this is minimized only in single-thread and if the
problem is not an optimization problem, otherwise, it will always include
all the assumptions.

TODO(user): Allows for returning multiple core at once.

repeated int32 sufficient_assumptions_for_infeasibility = 23;

Parameters
indexThe index of the element to return.
Returns
The sufficientAssumptionsForInfeasibility at the given index.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 484 of file CpSolverResponse.java.

◆ getSufficientAssumptionsForInfeasibilityCount()

int com.google.ortools.sat.CpSolverResponse.getSufficientAssumptionsForInfeasibilityCount ( )
A subset of the model "assumptions" field. This will only be filled if the
status is INFEASIBLE. This subset of assumption will be enough to still get
an infeasible problem.

This is related to what is called the irreducible inconsistent subsystem or
IIS. Except one is only concerned by the provided assumptions. There is
also no guarantee that we return an irreducible (aka minimal subset).
However, this is based on SAT explanation and there is a good chance it is
not too large.

If you really want a minimal subset, a possible way to get one is by
changing your model to minimize the number of assumptions at false, but
this is likely an harder problem to solve.

Important: Currently, this is minimized only in single-thread and if the
problem is not an optimization problem, otherwise, it will always include
all the assumptions.

TODO(user): Allows for returning multiple core at once.

repeated int32 sufficient_assumptions_for_infeasibility = 23;

Returns
The count of sufficientAssumptionsForInfeasibility.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 454 of file CpSolverResponse.java.

◆ getSufficientAssumptionsForInfeasibilityList()

java.util.List< java.lang.Integer > com.google.ortools.sat.CpSolverResponse.getSufficientAssumptionsForInfeasibilityList ( )
A subset of the model "assumptions" field. This will only be filled if the
status is INFEASIBLE. This subset of assumption will be enough to still get
an infeasible problem.

This is related to what is called the irreducible inconsistent subsystem or
IIS. Except one is only concerned by the provided assumptions. There is
also no guarantee that we return an irreducible (aka minimal subset).
However, this is based on SAT explanation and there is a good chance it is
not too large.

If you really want a minimal subset, a possible way to get one is by
changing your model to minimize the number of assumptions at false, but
this is likely an harder problem to solve.

Important: Currently, this is minimized only in single-thread and if the
problem is not an optimization problem, otherwise, it will always include
all the assumptions.

TODO(user): Allows for returning multiple core at once.

repeated int32 sufficient_assumptions_for_infeasibility = 23;

Returns
A list containing the sufficientAssumptionsForInfeasibility.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 425 of file CpSolverResponse.java.

◆ getTightenedVariables()

com.google.ortools.sat.IntegerVariableProto com.google.ortools.sat.CpSolverResponse.getTightenedVariables ( int index)
Advanced usage.

If the option fill_tightened_domains_in_response is set, then this field
will be a copy of the CpModelProto.variables where each domain has been
reduced using the information the solver was able to derive. Note that this
is only filled with the info derived during a normal search and we do not
have any dedicated algorithm to improve it.

Warning: if you didn't set keep_all_feasible_solutions_in_presolve, then
these domains might exclude valid feasible solution. Otherwise for a
feasibility problem, all feasible solution should be there.

Warning: For an optimization problem, these will correspond to valid bounds
for the problem of finding an improving solution to the best one found so
far. It might be better to solve a feasibility version if one just want to
explore the feasible region.

repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 362 of file CpSolverResponse.java.

◆ getTightenedVariablesCount()

int com.google.ortools.sat.CpSolverResponse.getTightenedVariablesCount ( )
Advanced usage.

If the option fill_tightened_domains_in_response is set, then this field
will be a copy of the CpModelProto.variables where each domain has been
reduced using the information the solver was able to derive. Note that this
is only filled with the info derived during a normal search and we do not
have any dedicated algorithm to improve it.

Warning: if you didn't set keep_all_feasible_solutions_in_presolve, then
these domains might exclude valid feasible solution. Otherwise for a
feasibility problem, all feasible solution should be there.

Warning: For an optimization problem, these will correspond to valid bounds
for the problem of finding an improving solution to the best one found so
far. It might be better to solve a feasibility version if one just want to
explore the feasible region.

repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 336 of file CpSolverResponse.java.

◆ getTightenedVariablesList()

java.util.List< com.google.ortools.sat.IntegerVariableProto > com.google.ortools.sat.CpSolverResponse.getTightenedVariablesList ( )
Advanced usage.

If the option fill_tightened_domains_in_response is set, then this field
will be a copy of the CpModelProto.variables where each domain has been
reduced using the information the solver was able to derive. Note that this
is only filled with the info derived during a normal search and we do not
have any dedicated algorithm to improve it.

Warning: if you didn't set keep_all_feasible_solutions_in_presolve, then
these domains might exclude valid feasible solution. Otherwise for a
feasibility problem, all feasible solution should be there.

Warning: For an optimization problem, these will correspond to valid bounds
for the problem of finding an improving solution to the best one found so
far. It might be better to solve a feasibility version if one just want to
explore the feasible region.

repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 283 of file CpSolverResponse.java.

◆ getTightenedVariablesOrBuilder()

com.google.ortools.sat.IntegerVariableProtoOrBuilder com.google.ortools.sat.CpSolverResponse.getTightenedVariablesOrBuilder ( int index)
Advanced usage.

If the option fill_tightened_domains_in_response is set, then this field
will be a copy of the CpModelProto.variables where each domain has been
reduced using the information the solver was able to derive. Note that this
is only filled with the info derived during a normal search and we do not
have any dedicated algorithm to improve it.

Warning: if you didn't set keep_all_feasible_solutions_in_presolve, then
these domains might exclude valid feasible solution. Otherwise for a
feasibility problem, all feasible solution should be there.

Warning: For an optimization problem, these will correspond to valid bounds
for the problem of finding an improving solution to the best one found so
far. It might be better to solve a feasibility version if one just want to
explore the feasible region.

repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 388 of file CpSolverResponse.java.

◆ getTightenedVariablesOrBuilderList()

java.util.List<? extends com.google.ortools.sat.IntegerVariableProtoOrBuilder > com.google.ortools.sat.CpSolverResponse.getTightenedVariablesOrBuilderList ( )
Advanced usage.

If the option fill_tightened_domains_in_response is set, then this field
will be a copy of the CpModelProto.variables where each domain has been
reduced using the information the solver was able to derive. Note that this
is only filled with the info derived during a normal search and we do not
have any dedicated algorithm to improve it.

Warning: if you didn't set keep_all_feasible_solutions_in_presolve, then
these domains might exclude valid feasible solution. Otherwise for a
feasibility problem, all feasible solution should be there.

Warning: For an optimization problem, these will correspond to valid bounds
for the problem of finding an improving solution to the best one found so
far. It might be better to solve a feasibility version if one just want to
explore the feasible region.

repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 310 of file CpSolverResponse.java.

◆ getUserTime()

double com.google.ortools.sat.CpSolverResponse.getUserTime ( )

double user_time = 16;

Returns
The userTime.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 682 of file CpSolverResponse.java.

◆ getWallTime()

double com.google.ortools.sat.CpSolverResponse.getWallTime ( )
The time counted from the beginning of the Solve() call.

double wall_time = 15;

Returns
The wallTime.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 671 of file CpSolverResponse.java.

◆ hashCode()

int com.google.ortools.sat.CpSolverResponse.hashCode ( )

Definition at line 1104 of file CpSolverResponse.java.

◆ hasIntegerObjective()

boolean com.google.ortools.sat.CpSolverResponse.hasIntegerObjective ( )
Contains the integer objective optimized internally. This is only filled if
the problem had a floating point objective, and on the final response, not
the ones given to callbacks.

.operations_research.sat.CpObjectiveProto integer_objective = 28;

Returns
Whether the integerObjective field is set.

Implements com.google.ortools.sat.CpSolverResponseOrBuilder.

Definition at line 502 of file CpSolverResponse.java.

◆ internalGetFieldAccessorTable()

com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.ortools.sat.CpSolverResponse.internalGetFieldAccessorTable ( )
protected

Definition at line 52 of file CpSolverResponse.java.

◆ isInitialized()

final boolean com.google.ortools.sat.CpSolverResponse.isInitialized ( )

Definition at line 812 of file CpSolverResponse.java.

◆ newBuilder() [1/2]

static Builder com.google.ortools.sat.CpSolverResponse.newBuilder ( )
static

Definition at line 1263 of file CpSolverResponse.java.

◆ newBuilder() [2/2]

static Builder com.google.ortools.sat.CpSolverResponse.newBuilder ( com.google.ortools.sat.CpSolverResponse prototype)
static

Definition at line 1266 of file CpSolverResponse.java.

◆ newBuilderForType() [1/2]

Builder com.google.ortools.sat.CpSolverResponse.newBuilderForType ( )

Definition at line 1262 of file CpSolverResponse.java.

◆ newBuilderForType() [2/2]

Builder com.google.ortools.sat.CpSolverResponse.newBuilderForType ( com.google.protobuf.GeneratedMessage.BuilderParent parent)
protected

Definition at line 1276 of file CpSolverResponse.java.

◆ parseDelimitedFrom() [1/2]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseDelimitedFrom ( java.io.InputStream input) throws java.io.IOException
static

Definition at line 1234 of file CpSolverResponse.java.

◆ parseDelimitedFrom() [2/2]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseDelimitedFrom ( java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws java.io.IOException
static

Definition at line 1240 of file CpSolverResponse.java.

◆ parseFrom() [1/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 1211 of file CpSolverResponse.java.

◆ parseFrom() [2/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 1215 of file CpSolverResponse.java.

◆ parseFrom() [3/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 1200 of file CpSolverResponse.java.

◆ parseFrom() [4/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 1205 of file CpSolverResponse.java.

◆ parseFrom() [5/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( com.google.protobuf.CodedInputStream input) throws java.io.IOException
static

Definition at line 1247 of file CpSolverResponse.java.

◆ parseFrom() [6/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws java.io.IOException
static

Definition at line 1253 of file CpSolverResponse.java.

◆ parseFrom() [7/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( java.io.InputStream input) throws java.io.IOException
static

Definition at line 1221 of file CpSolverResponse.java.

◆ parseFrom() [8/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws java.io.IOException
static

Definition at line 1226 of file CpSolverResponse.java.

◆ parseFrom() [9/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 1189 of file CpSolverResponse.java.

◆ parseFrom() [10/10]

static com.google.ortools.sat.CpSolverResponse com.google.ortools.sat.CpSolverResponse.parseFrom ( java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 1194 of file CpSolverResponse.java.

◆ parser()

static com.google.protobuf.Parser< CpSolverResponse > com.google.ortools.sat.CpSolverResponse.parser ( )
static

Definition at line 4310 of file CpSolverResponse.java.

◆ toBuilder()

Builder com.google.ortools.sat.CpSolverResponse.toBuilder ( )

Definition at line 1270 of file CpSolverResponse.java.

◆ writeTo()

void com.google.ortools.sat.CpSolverResponse.writeTo ( com.google.protobuf.CodedOutputStream output) throws java.io.IOException

Definition at line 822 of file CpSolverResponse.java.

Member Data Documentation

◆ ADDITIONAL_SOLUTIONS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.ADDITIONAL_SOLUTIONS_FIELD_NUMBER = 27
static

Definition at line 171 of file CpSolverResponse.java.

◆ BEST_OBJECTIVE_BOUND_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.BEST_OBJECTIVE_BOUND_FIELD_NUMBER = 4
static

Definition at line 154 of file CpSolverResponse.java.

◆ DETERMINISTIC_TIME_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.DETERMINISTIC_TIME_FIELD_NUMBER = 17
static

Definition at line 686 of file CpSolverResponse.java.

◆ GAP_INTEGRAL_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.GAP_INTEGRAL_FIELD_NUMBER = 22
static

Definition at line 697 of file CpSolverResponse.java.

◆ INNER_OBJECTIVE_LOWER_BOUND_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.INNER_OBJECTIVE_LOWER_BOUND_FIELD_NUMBER = 29
static

Definition at line 533 of file CpSolverResponse.java.

◆ INTEGER_OBJECTIVE_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.INTEGER_OBJECTIVE_FIELD_NUMBER = 28
static

Definition at line 489 of file CpSolverResponse.java.

◆ NUM_BINARY_PROPAGATIONS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_BINARY_PROPAGATIONS_FIELD_NUMBER = 13
static

Definition at line 616 of file CpSolverResponse.java.

◆ NUM_BOOLEANS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_BOOLEANS_FIELD_NUMBER = 10
static

Definition at line 572 of file CpSolverResponse.java.

◆ NUM_BRANCHES_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_BRANCHES_FIELD_NUMBER = 12
static

Definition at line 605 of file CpSolverResponse.java.

◆ NUM_CONFLICTS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_CONFLICTS_FIELD_NUMBER = 11
static

Definition at line 594 of file CpSolverResponse.java.

◆ NUM_FIXED_BOOLEANS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_FIXED_BOOLEANS_FIELD_NUMBER = 31
static

Definition at line 583 of file CpSolverResponse.java.

◆ NUM_INTEGER_PROPAGATIONS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_INTEGER_PROPAGATIONS_FIELD_NUMBER = 14
static

Definition at line 627 of file CpSolverResponse.java.

◆ NUM_INTEGERS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_INTEGERS_FIELD_NUMBER = 30
static

Definition at line 553 of file CpSolverResponse.java.

◆ NUM_LP_ITERATIONS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_LP_ITERATIONS_FIELD_NUMBER = 25
static

Definition at line 649 of file CpSolverResponse.java.

◆ NUM_RESTARTS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.NUM_RESTARTS_FIELD_NUMBER = 24
static

Definition at line 638 of file CpSolverResponse.java.

◆ OBJECTIVE_VALUE_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.OBJECTIVE_VALUE_FIELD_NUMBER = 3
static

Definition at line 136 of file CpSolverResponse.java.

◆ SOLUTION_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.SOLUTION_FIELD_NUMBER = 2
static

Definition at line 85 of file CpSolverResponse.java.

◆ SOLUTION_INFO_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.SOLUTION_INFO_FIELD_NUMBER = 20
static

Definition at line 712 of file CpSolverResponse.java.

◆ SOLVE_LOG_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.SOLVE_LOG_FIELD_NUMBER = 26
static

Definition at line 761 of file CpSolverResponse.java.

◆ STATUS_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.STATUS_FIELD_NUMBER = 1
static

Definition at line 59 of file CpSolverResponse.java.

◆ SUFFICIENT_ASSUMPTIONS_FOR_INFEASIBILITY_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.SUFFICIENT_ASSUMPTIONS_FOR_INFEASIBILITY_FIELD_NUMBER = 23
static

Definition at line 393 of file CpSolverResponse.java.

◆ TIGHTENED_VARIABLES_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.TIGHTENED_VARIABLES_FIELD_NUMBER = 21
static

Definition at line 257 of file CpSolverResponse.java.

◆ USER_TIME_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.USER_TIME_FIELD_NUMBER = 16
static

Definition at line 675 of file CpSolverResponse.java.

◆ WALL_TIME_FIELD_NUMBER

final int com.google.ortools.sat.CpSolverResponse.WALL_TIME_FIELD_NUMBER = 15
static

Definition at line 660 of file CpSolverResponse.java.


The documentation for this class was generated from the following file: