public static final class BopParameters.Builder extends com.google.protobuf.GeneratedMessage.Builder<BopParameters.Builder> implements BopParametersOrBuilder
Contains the definitions for all the bop algorithm parameters and their default values. NEXT TAG: 42Protobuf type
operations_research.bop.BopParameters
Modifier and Type | Method and Description |
---|---|
BopParameters.Builder |
addAllSolverOptimizerSets(java.lang.Iterable<? extends BopSolverOptimizerSet> values)
List of set of optimizers to be run by the solvers.
|
BopParameters.Builder |
addSolverOptimizerSets(BopSolverOptimizerSet.Builder builderForValue)
List of set of optimizers to be run by the solvers.
|
BopParameters.Builder |
addSolverOptimizerSets(BopSolverOptimizerSet value)
List of set of optimizers to be run by the solvers.
|
BopParameters.Builder |
addSolverOptimizerSets(int index,
BopSolverOptimizerSet.Builder builderForValue)
List of set of optimizers to be run by the solvers.
|
BopParameters.Builder |
addSolverOptimizerSets(int index,
BopSolverOptimizerSet value)
List of set of optimizers to be run by the solvers.
|
BopSolverOptimizerSet.Builder |
addSolverOptimizerSetsBuilder()
List of set of optimizers to be run by the solvers.
|
BopSolverOptimizerSet.Builder |
addSolverOptimizerSetsBuilder(int index)
List of set of optimizers to be run by the solvers.
|
BopParameters |
build() |
BopParameters |
buildPartial() |
BopParameters.Builder |
clear() |
BopParameters.Builder |
clearComputeEstimatedImpact()
Compute estimated impact at each iteration when true; only once when false.
|
BopParameters.Builder |
clearDecomposedProblemMinTimeInSeconds()
HACK.
|
BopParameters.Builder |
clearDecomposerNumVariablesThreshold()
Only try to decompose the problem when the number of variables is greater
than the threshold.
|
BopParameters.Builder |
clearDefaultSolverOptimizerSets()
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "]; |
BopParameters.Builder |
clearExploitSymmetryInSatFirstSolution()
If true, find and exploit symmetries in proving satisfiability in the first
problem.
|
BopParameters.Builder |
clearGuidedSatConflictsChunk()
The first solutions based on guided SAT will work in chunk of that many
conflicts at the time.
|
BopParameters.Builder |
clearLogSearchProgress()
Whether the solver should log the search progress to LOG(INFO).
|
BopParameters.Builder |
clearLpMaxDeterministicTime()
The max deterministic time given to the LP solver each time it is called.
|
BopParameters.Builder |
clearMaxDeterministicTime()
Maximum time allowed in deterministic time to solve a problem.
|
BopParameters.Builder |
clearMaxLpSolveForFeasibilityProblems()
The maximum number of time the LP solver will run to feasibility for pure
feasibility problems (with a constant-valued objective function).
|
BopParameters.Builder |
clearMaxNumberOfBacktracksInLs()
Maximum number of backtracks times the number of variables in Local Search,
ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
|
BopParameters.Builder |
clearMaxNumberOfConflictsForQuickCheck()
The number of conflicts the SAT solver has to solve a random LNS
subproblem for the quick check of infeasibility.
|
BopParameters.Builder |
clearMaxNumberOfConflictsInRandomLns()
The number of conflicts the SAT solver has to solve a random LNS
subproblem.
|
BopParameters.Builder |
clearMaxNumberOfConflictsInRandomSolutionGeneration()
The number of conflicts the SAT solver has to generate a random solution.
|
BopParameters.Builder |
clearMaxNumberOfConsecutiveFailingOptimizerCalls()
Maximum number of consecutive optimizer calls without improving the
current solution.
|
BopParameters.Builder |
clearMaxNumberOfExploredAssignmentsPerTryInLs()
The maximum number of assignments the Local Search iterates on during one
try.
|
BopParameters.Builder |
clearMaxNumBrokenConstraintsInLs()
Abort the LS search tree as soon as strictly more than this number of
constraints are broken.
|
BopParameters.Builder |
clearMaxNumDecisionsInLs()
Maximum number of cascading decisions the solver might use to repair the
current solution in the LS.
|
BopParameters.Builder |
clearMaxTimeInSeconds()
Maximum time allowed in seconds to solve a problem.
|
BopParameters.Builder |
clearNumberOfSolvers()
The number of solvers used to run Bop.
|
BopParameters.Builder |
clearNumBopSolversUsedByDecomposition()
The number of BopSolver created (thread pool workers) used by the integral
solver to solve a decomposed problem.
|
BopParameters.Builder |
clearNumRandomLnsTries()
Number of tries in the random lns.
|
BopParameters.Builder |
clearNumRelaxedVars()
Number of variables to relax in the exhaustive Large Neighborhood Search.
|
BopParameters.Builder |
clearPruneSearchTree()
Avoid exploring both branches (b, a, ...) and (a, b, ...).
|
BopParameters.Builder |
clearRandomSeed()
The seed used to initialize the random generator.
|
BopParameters.Builder |
clearRelativeGapLimit()
Limit used to stop the optimization as soon as the relative gap is smaller
than the given value.
|
BopParameters.Builder |
clearSolverOptimizerSets()
List of set of optimizers to be run by the solvers.
|
BopParameters.Builder |
clearSortConstraintsByNumTerms()
Sort constraints by increasing total number of terms instead of number of
contributing terms.
|
BopParameters.Builder |
clearSynchronizationType()
optional .operations_research.bop.BopParameters.ThreadSynchronizationType synchronization_type = 25 [default = NO_SYNCHRONIZATION]; |
BopParameters.Builder |
clearUseLearnedBinaryClausesInLp()
Whether we use the learned binary clauses in the Linear Relaxation.
|
BopParameters.Builder |
clearUseLpLns()
Use Large Neighborhood Search based on the LP relaxation.
|
BopParameters.Builder |
clearUseLpStrongBranching()
Use strong branching in the linear relaxation optimizer.
|
BopParameters.Builder |
clearUsePotentialOneFlipRepairsInLs()
Whether we keep a list of variable that can potentially repair in one flip
all the current infeasible constraints (such variable must at least appear
in all the infeasible constraints for this to happen).
|
BopParameters.Builder |
clearUseRandomLns()
Use the random Large Neighborhood Search instead of the exhaustive one.
|
BopParameters.Builder |
clearUseSatToChooseLnsNeighbourhood()
Whether we use sat propagation to choose the lns neighbourhood.
|
BopParameters.Builder |
clearUseSymmetry()
If true, find and exploit the eventual symmetries of the problem.
|
BopParameters.Builder |
clearUseTranspositionTableInLs()
Whether we use an hash set during the LS to avoid exploring more than once
the "same" state.
|
boolean |
getComputeEstimatedImpact()
Compute estimated impact at each iteration when true; only once when false.
|
double |
getDecomposedProblemMinTimeInSeconds()
HACK.
|
int |
getDecomposerNumVariablesThreshold()
Only try to decompose the problem when the number of variables is greater
than the threshold.
|
BopParameters |
getDefaultInstanceForType() |
java.lang.String |
getDefaultSolverOptimizerSets()
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "]; |
com.google.protobuf.ByteString |
getDefaultSolverOptimizerSetsBytes()
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "]; |
static com.google.protobuf.Descriptors.Descriptor |
getDescriptor() |
com.google.protobuf.Descriptors.Descriptor |
getDescriptorForType() |
boolean |
getExploitSymmetryInSatFirstSolution()
If true, find and exploit symmetries in proving satisfiability in the first
problem.
|
int |
getGuidedSatConflictsChunk()
The first solutions based on guided SAT will work in chunk of that many
conflicts at the time.
|
boolean |
getLogSearchProgress()
Whether the solver should log the search progress to LOG(INFO).
|
double |
getLpMaxDeterministicTime()
The max deterministic time given to the LP solver each time it is called.
|
double |
getMaxDeterministicTime()
Maximum time allowed in deterministic time to solve a problem.
|
int |
getMaxLpSolveForFeasibilityProblems()
The maximum number of time the LP solver will run to feasibility for pure
feasibility problems (with a constant-valued objective function).
|
long |
getMaxNumberOfBacktracksInLs()
Maximum number of backtracks times the number of variables in Local Search,
ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
|
int |
getMaxNumberOfConflictsForQuickCheck()
The number of conflicts the SAT solver has to solve a random LNS
subproblem for the quick check of infeasibility.
|
int |
getMaxNumberOfConflictsInRandomLns()
The number of conflicts the SAT solver has to solve a random LNS
subproblem.
|
int |
getMaxNumberOfConflictsInRandomSolutionGeneration()
The number of conflicts the SAT solver has to generate a random solution.
|
int |
getMaxNumberOfConsecutiveFailingOptimizerCalls()
Maximum number of consecutive optimizer calls without improving the
current solution.
|
long |
getMaxNumberOfExploredAssignmentsPerTryInLs()
The maximum number of assignments the Local Search iterates on during one
try.
|
int |
getMaxNumBrokenConstraintsInLs()
Abort the LS search tree as soon as strictly more than this number of
constraints are broken.
|
int |
getMaxNumDecisionsInLs()
Maximum number of cascading decisions the solver might use to repair the
current solution in the LS.
|
double |
getMaxTimeInSeconds()
Maximum time allowed in seconds to solve a problem.
|
int |
getNumberOfSolvers()
The number of solvers used to run Bop.
|
int |
getNumBopSolversUsedByDecomposition()
The number of BopSolver created (thread pool workers) used by the integral
solver to solve a decomposed problem.
|
int |
getNumRandomLnsTries()
Number of tries in the random lns.
|
int |
getNumRelaxedVars()
Number of variables to relax in the exhaustive Large Neighborhood Search.
|
boolean |
getPruneSearchTree()
Avoid exploring both branches (b, a, ...) and (a, b, ...).
|
int |
getRandomSeed()
The seed used to initialize the random generator.
|
double |
getRelativeGapLimit()
Limit used to stop the optimization as soon as the relative gap is smaller
than the given value.
|
BopSolverOptimizerSet |
getSolverOptimizerSets(int index)
List of set of optimizers to be run by the solvers.
|
BopSolverOptimizerSet.Builder |
getSolverOptimizerSetsBuilder(int index)
List of set of optimizers to be run by the solvers.
|
java.util.List<BopSolverOptimizerSet.Builder> |
getSolverOptimizerSetsBuilderList()
List of set of optimizers to be run by the solvers.
|
int |
getSolverOptimizerSetsCount()
List of set of optimizers to be run by the solvers.
|
java.util.List<BopSolverOptimizerSet> |
getSolverOptimizerSetsList()
List of set of optimizers to be run by the solvers.
|
BopSolverOptimizerSetOrBuilder |
getSolverOptimizerSetsOrBuilder(int index)
List of set of optimizers to be run by the solvers.
|
java.util.List<? extends BopSolverOptimizerSetOrBuilder> |
getSolverOptimizerSetsOrBuilderList()
List of set of optimizers to be run by the solvers.
|
boolean |
getSortConstraintsByNumTerms()
Sort constraints by increasing total number of terms instead of number of
contributing terms.
|
BopParameters.ThreadSynchronizationType |
getSynchronizationType()
optional .operations_research.bop.BopParameters.ThreadSynchronizationType synchronization_type = 25 [default = NO_SYNCHRONIZATION]; |
boolean |
getUseLearnedBinaryClausesInLp()
Whether we use the learned binary clauses in the Linear Relaxation.
|
boolean |
getUseLpLns()
Use Large Neighborhood Search based on the LP relaxation.
|
boolean |
getUseLpStrongBranching()
Use strong branching in the linear relaxation optimizer.
|
boolean |
getUsePotentialOneFlipRepairsInLs()
Whether we keep a list of variable that can potentially repair in one flip
all the current infeasible constraints (such variable must at least appear
in all the infeasible constraints for this to happen).
|
boolean |
getUseRandomLns()
Use the random Large Neighborhood Search instead of the exhaustive one.
|
boolean |
getUseSatToChooseLnsNeighbourhood()
Whether we use sat propagation to choose the lns neighbourhood.
|
boolean |
getUseSymmetry()
If true, find and exploit the eventual symmetries of the problem.
|
boolean |
getUseTranspositionTableInLs()
Whether we use an hash set during the LS to avoid exploring more than once
the "same" state.
|
boolean |
hasComputeEstimatedImpact()
Compute estimated impact at each iteration when true; only once when false.
|
boolean |
hasDecomposedProblemMinTimeInSeconds()
HACK.
|
boolean |
hasDecomposerNumVariablesThreshold()
Only try to decompose the problem when the number of variables is greater
than the threshold.
|
boolean |
hasDefaultSolverOptimizerSets()
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "]; |
boolean |
hasExploitSymmetryInSatFirstSolution()
If true, find and exploit symmetries in proving satisfiability in the first
problem.
|
boolean |
hasGuidedSatConflictsChunk()
The first solutions based on guided SAT will work in chunk of that many
conflicts at the time.
|
boolean |
hasLogSearchProgress()
Whether the solver should log the search progress to LOG(INFO).
|
boolean |
hasLpMaxDeterministicTime()
The max deterministic time given to the LP solver each time it is called.
|
boolean |
hasMaxDeterministicTime()
Maximum time allowed in deterministic time to solve a problem.
|
boolean |
hasMaxLpSolveForFeasibilityProblems()
The maximum number of time the LP solver will run to feasibility for pure
feasibility problems (with a constant-valued objective function).
|
boolean |
hasMaxNumberOfBacktracksInLs()
Maximum number of backtracks times the number of variables in Local Search,
ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
|
boolean |
hasMaxNumberOfConflictsForQuickCheck()
The number of conflicts the SAT solver has to solve a random LNS
subproblem for the quick check of infeasibility.
|
boolean |
hasMaxNumberOfConflictsInRandomLns()
The number of conflicts the SAT solver has to solve a random LNS
subproblem.
|
boolean |
hasMaxNumberOfConflictsInRandomSolutionGeneration()
The number of conflicts the SAT solver has to generate a random solution.
|
boolean |
hasMaxNumberOfConsecutiveFailingOptimizerCalls()
Maximum number of consecutive optimizer calls without improving the
current solution.
|
boolean |
hasMaxNumberOfExploredAssignmentsPerTryInLs()
The maximum number of assignments the Local Search iterates on during one
try.
|
boolean |
hasMaxNumBrokenConstraintsInLs()
Abort the LS search tree as soon as strictly more than this number of
constraints are broken.
|
boolean |
hasMaxNumDecisionsInLs()
Maximum number of cascading decisions the solver might use to repair the
current solution in the LS.
|
boolean |
hasMaxTimeInSeconds()
Maximum time allowed in seconds to solve a problem.
|
boolean |
hasNumberOfSolvers()
The number of solvers used to run Bop.
|
boolean |
hasNumBopSolversUsedByDecomposition()
The number of BopSolver created (thread pool workers) used by the integral
solver to solve a decomposed problem.
|
boolean |
hasNumRandomLnsTries()
Number of tries in the random lns.
|
boolean |
hasNumRelaxedVars()
Number of variables to relax in the exhaustive Large Neighborhood Search.
|
boolean |
hasPruneSearchTree()
Avoid exploring both branches (b, a, ...) and (a, b, ...).
|
boolean |
hasRandomSeed()
The seed used to initialize the random generator.
|
boolean |
hasRelativeGapLimit()
Limit used to stop the optimization as soon as the relative gap is smaller
than the given value.
|
boolean |
hasSortConstraintsByNumTerms()
Sort constraints by increasing total number of terms instead of number of
contributing terms.
|
boolean |
hasSynchronizationType()
optional .operations_research.bop.BopParameters.ThreadSynchronizationType synchronization_type = 25 [default = NO_SYNCHRONIZATION]; |
boolean |
hasUseLearnedBinaryClausesInLp()
Whether we use the learned binary clauses in the Linear Relaxation.
|
boolean |
hasUseLpLns()
Use Large Neighborhood Search based on the LP relaxation.
|
boolean |
hasUseLpStrongBranching()
Use strong branching in the linear relaxation optimizer.
|
boolean |
hasUsePotentialOneFlipRepairsInLs()
Whether we keep a list of variable that can potentially repair in one flip
all the current infeasible constraints (such variable must at least appear
in all the infeasible constraints for this to happen).
|
boolean |
hasUseRandomLns()
Use the random Large Neighborhood Search instead of the exhaustive one.
|
boolean |
hasUseSatToChooseLnsNeighbourhood()
Whether we use sat propagation to choose the lns neighbourhood.
|
boolean |
hasUseSymmetry()
If true, find and exploit the eventual symmetries of the problem.
|
boolean |
hasUseTranspositionTableInLs()
Whether we use an hash set during the LS to avoid exploring more than once
the "same" state.
|
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable |
internalGetFieldAccessorTable() |
boolean |
isInitialized() |
BopParameters.Builder |
mergeFrom(BopParameters other) |
BopParameters.Builder |
mergeFrom(com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
BopParameters.Builder |
mergeFrom(com.google.protobuf.Message other) |
BopParameters.Builder |
removeSolverOptimizerSets(int index)
List of set of optimizers to be run by the solvers.
|
BopParameters.Builder |
setComputeEstimatedImpact(boolean value)
Compute estimated impact at each iteration when true; only once when false.
|
BopParameters.Builder |
setDecomposedProblemMinTimeInSeconds(double value)
HACK.
|
BopParameters.Builder |
setDecomposerNumVariablesThreshold(int value)
Only try to decompose the problem when the number of variables is greater
than the threshold.
|
BopParameters.Builder |
setDefaultSolverOptimizerSets(java.lang.String value)
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "]; |
BopParameters.Builder |
setDefaultSolverOptimizerSetsBytes(com.google.protobuf.ByteString value)
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "]; |
BopParameters.Builder |
setExploitSymmetryInSatFirstSolution(boolean value)
If true, find and exploit symmetries in proving satisfiability in the first
problem.
|
BopParameters.Builder |
setGuidedSatConflictsChunk(int value)
The first solutions based on guided SAT will work in chunk of that many
conflicts at the time.
|
BopParameters.Builder |
setLogSearchProgress(boolean value)
Whether the solver should log the search progress to LOG(INFO).
|
BopParameters.Builder |
setLpMaxDeterministicTime(double value)
The max deterministic time given to the LP solver each time it is called.
|
BopParameters.Builder |
setMaxDeterministicTime(double value)
Maximum time allowed in deterministic time to solve a problem.
|
BopParameters.Builder |
setMaxLpSolveForFeasibilityProblems(int value)
The maximum number of time the LP solver will run to feasibility for pure
feasibility problems (with a constant-valued objective function).
|
BopParameters.Builder |
setMaxNumberOfBacktracksInLs(long value)
Maximum number of backtracks times the number of variables in Local Search,
ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
|
BopParameters.Builder |
setMaxNumberOfConflictsForQuickCheck(int value)
The number of conflicts the SAT solver has to solve a random LNS
subproblem for the quick check of infeasibility.
|
BopParameters.Builder |
setMaxNumberOfConflictsInRandomLns(int value)
The number of conflicts the SAT solver has to solve a random LNS
subproblem.
|
BopParameters.Builder |
setMaxNumberOfConflictsInRandomSolutionGeneration(int value)
The number of conflicts the SAT solver has to generate a random solution.
|
BopParameters.Builder |
setMaxNumberOfConsecutiveFailingOptimizerCalls(int value)
Maximum number of consecutive optimizer calls without improving the
current solution.
|
BopParameters.Builder |
setMaxNumberOfExploredAssignmentsPerTryInLs(long value)
The maximum number of assignments the Local Search iterates on during one
try.
|
BopParameters.Builder |
setMaxNumBrokenConstraintsInLs(int value)
Abort the LS search tree as soon as strictly more than this number of
constraints are broken.
|
BopParameters.Builder |
setMaxNumDecisionsInLs(int value)
Maximum number of cascading decisions the solver might use to repair the
current solution in the LS.
|
BopParameters.Builder |
setMaxTimeInSeconds(double value)
Maximum time allowed in seconds to solve a problem.
|
BopParameters.Builder |
setNumberOfSolvers(int value)
The number of solvers used to run Bop.
|
BopParameters.Builder |
setNumBopSolversUsedByDecomposition(int value)
The number of BopSolver created (thread pool workers) used by the integral
solver to solve a decomposed problem.
|
BopParameters.Builder |
setNumRandomLnsTries(int value)
Number of tries in the random lns.
|
BopParameters.Builder |
setNumRelaxedVars(int value)
Number of variables to relax in the exhaustive Large Neighborhood Search.
|
BopParameters.Builder |
setPruneSearchTree(boolean value)
Avoid exploring both branches (b, a, ...) and (a, b, ...).
|
BopParameters.Builder |
setRandomSeed(int value)
The seed used to initialize the random generator.
|
BopParameters.Builder |
setRelativeGapLimit(double value)
Limit used to stop the optimization as soon as the relative gap is smaller
than the given value.
|
BopParameters.Builder |
setSolverOptimizerSets(int index,
BopSolverOptimizerSet.Builder builderForValue)
List of set of optimizers to be run by the solvers.
|
BopParameters.Builder |
setSolverOptimizerSets(int index,
BopSolverOptimizerSet value)
List of set of optimizers to be run by the solvers.
|
BopParameters.Builder |
setSortConstraintsByNumTerms(boolean value)
Sort constraints by increasing total number of terms instead of number of
contributing terms.
|
BopParameters.Builder |
setSynchronizationType(BopParameters.ThreadSynchronizationType value)
optional .operations_research.bop.BopParameters.ThreadSynchronizationType synchronization_type = 25 [default = NO_SYNCHRONIZATION]; |
BopParameters.Builder |
setUseLearnedBinaryClausesInLp(boolean value)
Whether we use the learned binary clauses in the Linear Relaxation.
|
BopParameters.Builder |
setUseLpLns(boolean value)
Use Large Neighborhood Search based on the LP relaxation.
|
BopParameters.Builder |
setUseLpStrongBranching(boolean value)
Use strong branching in the linear relaxation optimizer.
|
BopParameters.Builder |
setUsePotentialOneFlipRepairsInLs(boolean value)
Whether we keep a list of variable that can potentially repair in one flip
all the current infeasible constraints (such variable must at least appear
in all the infeasible constraints for this to happen).
|
BopParameters.Builder |
setUseRandomLns(boolean value)
Use the random Large Neighborhood Search instead of the exhaustive one.
|
BopParameters.Builder |
setUseSatToChooseLnsNeighbourhood(boolean value)
Whether we use sat propagation to choose the lns neighbourhood.
|
BopParameters.Builder |
setUseSymmetry(boolean value)
If true, find and exploit the eventual symmetries of the problem.
|
BopParameters.Builder |
setUseTranspositionTableInLs(boolean value)
Whether we use an hash set during the LS to avoid exploring more than once
the "same" state.
|
addRepeatedField, clearField, clearOneof, clone, getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownFields, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setField, setRepeatedField, setUnknownFields, setUnknownFieldSetBuilder, setUnknownFieldsProto3
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, newUninitializedMessageException
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable
in class com.google.protobuf.GeneratedMessage.Builder<BopParameters.Builder>
public BopParameters.Builder clear()
clear
in interface com.google.protobuf.Message.Builder
clear
in interface com.google.protobuf.MessageLite.Builder
clear
in class com.google.protobuf.GeneratedMessage.Builder<BopParameters.Builder>
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
getDescriptorForType
in interface com.google.protobuf.Message.Builder
getDescriptorForType
in interface com.google.protobuf.MessageOrBuilder
getDescriptorForType
in class com.google.protobuf.GeneratedMessage.Builder<BopParameters.Builder>
public BopParameters getDefaultInstanceForType()
getDefaultInstanceForType
in interface com.google.protobuf.MessageLiteOrBuilder
getDefaultInstanceForType
in interface com.google.protobuf.MessageOrBuilder
public BopParameters build()
build
in interface com.google.protobuf.Message.Builder
build
in interface com.google.protobuf.MessageLite.Builder
public BopParameters buildPartial()
buildPartial
in interface com.google.protobuf.Message.Builder
buildPartial
in interface com.google.protobuf.MessageLite.Builder
public BopParameters.Builder mergeFrom(com.google.protobuf.Message other)
mergeFrom
in interface com.google.protobuf.Message.Builder
mergeFrom
in class com.google.protobuf.AbstractMessage.Builder<BopParameters.Builder>
public BopParameters.Builder mergeFrom(BopParameters other)
public final boolean isInitialized()
isInitialized
in interface com.google.protobuf.MessageLiteOrBuilder
isInitialized
in class com.google.protobuf.GeneratedMessage.Builder<BopParameters.Builder>
public BopParameters.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
mergeFrom
in interface com.google.protobuf.Message.Builder
mergeFrom
in interface com.google.protobuf.MessageLite.Builder
mergeFrom
in class com.google.protobuf.AbstractMessage.Builder<BopParameters.Builder>
java.io.IOException
public boolean hasMaxTimeInSeconds()
Maximum time allowed in seconds to solve a problem. The counter will starts as soon as Solve() is called.
optional double max_time_in_seconds = 1 [default = inf];
hasMaxTimeInSeconds
in interface BopParametersOrBuilder
public double getMaxTimeInSeconds()
Maximum time allowed in seconds to solve a problem. The counter will starts as soon as Solve() is called.
optional double max_time_in_seconds = 1 [default = inf];
getMaxTimeInSeconds
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxTimeInSeconds(double value)
Maximum time allowed in seconds to solve a problem. The counter will starts as soon as Solve() is called.
optional double max_time_in_seconds = 1 [default = inf];
value
- The maxTimeInSeconds to set.public BopParameters.Builder clearMaxTimeInSeconds()
Maximum time allowed in seconds to solve a problem. The counter will starts as soon as Solve() is called.
optional double max_time_in_seconds = 1 [default = inf];
public boolean hasMaxDeterministicTime()
Maximum time allowed in deterministic time to solve a problem. The deterministic time should be correlated with the real time used by the solver, the time unit being roughly the order of magnitude of a second. The counter will starts as soon as SetParameters() or SolveWithTimeLimit() is called.
optional double max_deterministic_time = 27 [default = inf];
hasMaxDeterministicTime
in interface BopParametersOrBuilder
public double getMaxDeterministicTime()
Maximum time allowed in deterministic time to solve a problem. The deterministic time should be correlated with the real time used by the solver, the time unit being roughly the order of magnitude of a second. The counter will starts as soon as SetParameters() or SolveWithTimeLimit() is called.
optional double max_deterministic_time = 27 [default = inf];
getMaxDeterministicTime
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxDeterministicTime(double value)
Maximum time allowed in deterministic time to solve a problem. The deterministic time should be correlated with the real time used by the solver, the time unit being roughly the order of magnitude of a second. The counter will starts as soon as SetParameters() or SolveWithTimeLimit() is called.
optional double max_deterministic_time = 27 [default = inf];
value
- The maxDeterministicTime to set.public BopParameters.Builder clearMaxDeterministicTime()
Maximum time allowed in deterministic time to solve a problem. The deterministic time should be correlated with the real time used by the solver, the time unit being roughly the order of magnitude of a second. The counter will starts as soon as SetParameters() or SolveWithTimeLimit() is called.
optional double max_deterministic_time = 27 [default = inf];
public boolean hasLpMaxDeterministicTime()
The max deterministic time given to the LP solver each time it is called. If this is not enough to solve the LP at hand, it will simply be called again later (and the solve will resume from where it stopped).
optional double lp_max_deterministic_time = 37 [default = 1];
hasLpMaxDeterministicTime
in interface BopParametersOrBuilder
public double getLpMaxDeterministicTime()
The max deterministic time given to the LP solver each time it is called. If this is not enough to solve the LP at hand, it will simply be called again later (and the solve will resume from where it stopped).
optional double lp_max_deterministic_time = 37 [default = 1];
getLpMaxDeterministicTime
in interface BopParametersOrBuilder
public BopParameters.Builder setLpMaxDeterministicTime(double value)
The max deterministic time given to the LP solver each time it is called. If this is not enough to solve the LP at hand, it will simply be called again later (and the solve will resume from where it stopped).
optional double lp_max_deterministic_time = 37 [default = 1];
value
- The lpMaxDeterministicTime to set.public BopParameters.Builder clearLpMaxDeterministicTime()
The max deterministic time given to the LP solver each time it is called. If this is not enough to solve the LP at hand, it will simply be called again later (and the solve will resume from where it stopped).
optional double lp_max_deterministic_time = 37 [default = 1];
public boolean hasMaxNumberOfConsecutiveFailingOptimizerCalls()
Maximum number of consecutive optimizer calls without improving the current solution. If this number is reached, the search will be aborted. Note that this parameter only applies when an initial solution has been found or is provided. Also note that there is no limit to the number of calls, when the parameter is not set.
optional int32 max_number_of_consecutive_failing_optimizer_calls = 35;
hasMaxNumberOfConsecutiveFailingOptimizerCalls
in interface BopParametersOrBuilder
public int getMaxNumberOfConsecutiveFailingOptimizerCalls()
Maximum number of consecutive optimizer calls without improving the current solution. If this number is reached, the search will be aborted. Note that this parameter only applies when an initial solution has been found or is provided. Also note that there is no limit to the number of calls, when the parameter is not set.
optional int32 max_number_of_consecutive_failing_optimizer_calls = 35;
getMaxNumberOfConsecutiveFailingOptimizerCalls
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxNumberOfConsecutiveFailingOptimizerCalls(int value)
Maximum number of consecutive optimizer calls without improving the current solution. If this number is reached, the search will be aborted. Note that this parameter only applies when an initial solution has been found or is provided. Also note that there is no limit to the number of calls, when the parameter is not set.
optional int32 max_number_of_consecutive_failing_optimizer_calls = 35;
value
- The maxNumberOfConsecutiveFailingOptimizerCalls to set.public BopParameters.Builder clearMaxNumberOfConsecutiveFailingOptimizerCalls()
Maximum number of consecutive optimizer calls without improving the current solution. If this number is reached, the search will be aborted. Note that this parameter only applies when an initial solution has been found or is provided. Also note that there is no limit to the number of calls, when the parameter is not set.
optional int32 max_number_of_consecutive_failing_optimizer_calls = 35;
public boolean hasRelativeGapLimit()
Limit used to stop the optimization as soon as the relative gap is smaller than the given value. The relative gap is defined as: abs(solution_cost - best_bound) / max(abs(solution_cost), abs(best_bound)).
optional double relative_gap_limit = 28 [default = 0.0001];
hasRelativeGapLimit
in interface BopParametersOrBuilder
public double getRelativeGapLimit()
Limit used to stop the optimization as soon as the relative gap is smaller than the given value. The relative gap is defined as: abs(solution_cost - best_bound) / max(abs(solution_cost), abs(best_bound)).
optional double relative_gap_limit = 28 [default = 0.0001];
getRelativeGapLimit
in interface BopParametersOrBuilder
public BopParameters.Builder setRelativeGapLimit(double value)
Limit used to stop the optimization as soon as the relative gap is smaller than the given value. The relative gap is defined as: abs(solution_cost - best_bound) / max(abs(solution_cost), abs(best_bound)).
optional double relative_gap_limit = 28 [default = 0.0001];
value
- The relativeGapLimit to set.public BopParameters.Builder clearRelativeGapLimit()
Limit used to stop the optimization as soon as the relative gap is smaller than the given value. The relative gap is defined as: abs(solution_cost - best_bound) / max(abs(solution_cost), abs(best_bound)).
optional double relative_gap_limit = 28 [default = 0.0001];
public boolean hasMaxNumDecisionsInLs()
Maximum number of cascading decisions the solver might use to repair the current solution in the LS.
optional int32 max_num_decisions_in_ls = 2 [default = 4];
hasMaxNumDecisionsInLs
in interface BopParametersOrBuilder
public int getMaxNumDecisionsInLs()
Maximum number of cascading decisions the solver might use to repair the current solution in the LS.
optional int32 max_num_decisions_in_ls = 2 [default = 4];
getMaxNumDecisionsInLs
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxNumDecisionsInLs(int value)
Maximum number of cascading decisions the solver might use to repair the current solution in the LS.
optional int32 max_num_decisions_in_ls = 2 [default = 4];
value
- The maxNumDecisionsInLs to set.public BopParameters.Builder clearMaxNumDecisionsInLs()
Maximum number of cascading decisions the solver might use to repair the current solution in the LS.
optional int32 max_num_decisions_in_ls = 2 [default = 4];
public boolean hasMaxNumBrokenConstraintsInLs()
Abort the LS search tree as soon as strictly more than this number of constraints are broken. The default is a large value which basically disable this heuristic.
optional int32 max_num_broken_constraints_in_ls = 38 [default = 2147483647];
hasMaxNumBrokenConstraintsInLs
in interface BopParametersOrBuilder
public int getMaxNumBrokenConstraintsInLs()
Abort the LS search tree as soon as strictly more than this number of constraints are broken. The default is a large value which basically disable this heuristic.
optional int32 max_num_broken_constraints_in_ls = 38 [default = 2147483647];
getMaxNumBrokenConstraintsInLs
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxNumBrokenConstraintsInLs(int value)
Abort the LS search tree as soon as strictly more than this number of constraints are broken. The default is a large value which basically disable this heuristic.
optional int32 max_num_broken_constraints_in_ls = 38 [default = 2147483647];
value
- The maxNumBrokenConstraintsInLs to set.public BopParameters.Builder clearMaxNumBrokenConstraintsInLs()
Abort the LS search tree as soon as strictly more than this number of constraints are broken. The default is a large value which basically disable this heuristic.
optional int32 max_num_broken_constraints_in_ls = 38 [default = 2147483647];
public boolean hasLogSearchProgress()
Whether the solver should log the search progress to LOG(INFO).
optional bool log_search_progress = 14 [default = false];
hasLogSearchProgress
in interface BopParametersOrBuilder
public boolean getLogSearchProgress()
Whether the solver should log the search progress to LOG(INFO).
optional bool log_search_progress = 14 [default = false];
getLogSearchProgress
in interface BopParametersOrBuilder
public BopParameters.Builder setLogSearchProgress(boolean value)
Whether the solver should log the search progress to LOG(INFO).
optional bool log_search_progress = 14 [default = false];
value
- The logSearchProgress to set.public BopParameters.Builder clearLogSearchProgress()
Whether the solver should log the search progress to LOG(INFO).
optional bool log_search_progress = 14 [default = false];
public boolean hasComputeEstimatedImpact()
Compute estimated impact at each iteration when true; only once when false.
optional bool compute_estimated_impact = 3 [default = true];
hasComputeEstimatedImpact
in interface BopParametersOrBuilder
public boolean getComputeEstimatedImpact()
Compute estimated impact at each iteration when true; only once when false.
optional bool compute_estimated_impact = 3 [default = true];
getComputeEstimatedImpact
in interface BopParametersOrBuilder
public BopParameters.Builder setComputeEstimatedImpact(boolean value)
Compute estimated impact at each iteration when true; only once when false.
optional bool compute_estimated_impact = 3 [default = true];
value
- The computeEstimatedImpact to set.public BopParameters.Builder clearComputeEstimatedImpact()
Compute estimated impact at each iteration when true; only once when false.
optional bool compute_estimated_impact = 3 [default = true];
public boolean hasPruneSearchTree()
Avoid exploring both branches (b, a, ...) and (a, b, ...).
optional bool prune_search_tree = 4 [default = false];
hasPruneSearchTree
in interface BopParametersOrBuilder
public boolean getPruneSearchTree()
Avoid exploring both branches (b, a, ...) and (a, b, ...).
optional bool prune_search_tree = 4 [default = false];
getPruneSearchTree
in interface BopParametersOrBuilder
public BopParameters.Builder setPruneSearchTree(boolean value)
Avoid exploring both branches (b, a, ...) and (a, b, ...).
optional bool prune_search_tree = 4 [default = false];
value
- The pruneSearchTree to set.public BopParameters.Builder clearPruneSearchTree()
Avoid exploring both branches (b, a, ...) and (a, b, ...).
optional bool prune_search_tree = 4 [default = false];
public boolean hasSortConstraintsByNumTerms()
Sort constraints by increasing total number of terms instead of number of contributing terms.
optional bool sort_constraints_by_num_terms = 5 [default = false];
hasSortConstraintsByNumTerms
in interface BopParametersOrBuilder
public boolean getSortConstraintsByNumTerms()
Sort constraints by increasing total number of terms instead of number of contributing terms.
optional bool sort_constraints_by_num_terms = 5 [default = false];
getSortConstraintsByNumTerms
in interface BopParametersOrBuilder
public BopParameters.Builder setSortConstraintsByNumTerms(boolean value)
Sort constraints by increasing total number of terms instead of number of contributing terms.
optional bool sort_constraints_by_num_terms = 5 [default = false];
value
- The sortConstraintsByNumTerms to set.public BopParameters.Builder clearSortConstraintsByNumTerms()
Sort constraints by increasing total number of terms instead of number of contributing terms.
optional bool sort_constraints_by_num_terms = 5 [default = false];
public boolean hasUseRandomLns()
Use the random Large Neighborhood Search instead of the exhaustive one.
optional bool use_random_lns = 6 [default = true];
hasUseRandomLns
in interface BopParametersOrBuilder
public boolean getUseRandomLns()
Use the random Large Neighborhood Search instead of the exhaustive one.
optional bool use_random_lns = 6 [default = true];
getUseRandomLns
in interface BopParametersOrBuilder
public BopParameters.Builder setUseRandomLns(boolean value)
Use the random Large Neighborhood Search instead of the exhaustive one.
optional bool use_random_lns = 6 [default = true];
value
- The useRandomLns to set.public BopParameters.Builder clearUseRandomLns()
Use the random Large Neighborhood Search instead of the exhaustive one.
optional bool use_random_lns = 6 [default = true];
public boolean hasRandomSeed()
The seed used to initialize the random generator. TODO(user): Some of our client test fail depending on this value! we need to fix them and ideally randomize our behavior from on test to the next so that this doesn't happen in the future.
optional int32 random_seed = 7 [default = 8];
hasRandomSeed
in interface BopParametersOrBuilder
public int getRandomSeed()
The seed used to initialize the random generator. TODO(user): Some of our client test fail depending on this value! we need to fix them and ideally randomize our behavior from on test to the next so that this doesn't happen in the future.
optional int32 random_seed = 7 [default = 8];
getRandomSeed
in interface BopParametersOrBuilder
public BopParameters.Builder setRandomSeed(int value)
The seed used to initialize the random generator. TODO(user): Some of our client test fail depending on this value! we need to fix them and ideally randomize our behavior from on test to the next so that this doesn't happen in the future.
optional int32 random_seed = 7 [default = 8];
value
- The randomSeed to set.public BopParameters.Builder clearRandomSeed()
The seed used to initialize the random generator. TODO(user): Some of our client test fail depending on this value! we need to fix them and ideally randomize our behavior from on test to the next so that this doesn't happen in the future.
optional int32 random_seed = 7 [default = 8];
public boolean hasNumRelaxedVars()
Number of variables to relax in the exhaustive Large Neighborhood Search.
optional int32 num_relaxed_vars = 8 [default = 10];
hasNumRelaxedVars
in interface BopParametersOrBuilder
public int getNumRelaxedVars()
Number of variables to relax in the exhaustive Large Neighborhood Search.
optional int32 num_relaxed_vars = 8 [default = 10];
getNumRelaxedVars
in interface BopParametersOrBuilder
public BopParameters.Builder setNumRelaxedVars(int value)
Number of variables to relax in the exhaustive Large Neighborhood Search.
optional int32 num_relaxed_vars = 8 [default = 10];
value
- The numRelaxedVars to set.public BopParameters.Builder clearNumRelaxedVars()
Number of variables to relax in the exhaustive Large Neighborhood Search.
optional int32 num_relaxed_vars = 8 [default = 10];
public boolean hasMaxNumberOfConflictsInRandomLns()
The number of conflicts the SAT solver has to solve a random LNS subproblem.
optional int32 max_number_of_conflicts_in_random_lns = 9 [default = 2500];
hasMaxNumberOfConflictsInRandomLns
in interface BopParametersOrBuilder
public int getMaxNumberOfConflictsInRandomLns()
The number of conflicts the SAT solver has to solve a random LNS subproblem.
optional int32 max_number_of_conflicts_in_random_lns = 9 [default = 2500];
getMaxNumberOfConflictsInRandomLns
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxNumberOfConflictsInRandomLns(int value)
The number of conflicts the SAT solver has to solve a random LNS subproblem.
optional int32 max_number_of_conflicts_in_random_lns = 9 [default = 2500];
value
- The maxNumberOfConflictsInRandomLns to set.public BopParameters.Builder clearMaxNumberOfConflictsInRandomLns()
The number of conflicts the SAT solver has to solve a random LNS subproblem.
optional int32 max_number_of_conflicts_in_random_lns = 9 [default = 2500];
public boolean hasNumRandomLnsTries()
Number of tries in the random lns.
optional int32 num_random_lns_tries = 10 [default = 1];
hasNumRandomLnsTries
in interface BopParametersOrBuilder
public int getNumRandomLnsTries()
Number of tries in the random lns.
optional int32 num_random_lns_tries = 10 [default = 1];
getNumRandomLnsTries
in interface BopParametersOrBuilder
public BopParameters.Builder setNumRandomLnsTries(int value)
Number of tries in the random lns.
optional int32 num_random_lns_tries = 10 [default = 1];
value
- The numRandomLnsTries to set.public BopParameters.Builder clearNumRandomLnsTries()
Number of tries in the random lns.
optional int32 num_random_lns_tries = 10 [default = 1];
public boolean hasMaxNumberOfBacktracksInLs()
Maximum number of backtracks times the number of variables in Local Search, ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
optional int64 max_number_of_backtracks_in_ls = 11 [default = 100000000];
hasMaxNumberOfBacktracksInLs
in interface BopParametersOrBuilder
public long getMaxNumberOfBacktracksInLs()
Maximum number of backtracks times the number of variables in Local Search, ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
optional int64 max_number_of_backtracks_in_ls = 11 [default = 100000000];
getMaxNumberOfBacktracksInLs
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxNumberOfBacktracksInLs(long value)
Maximum number of backtracks times the number of variables in Local Search, ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
optional int64 max_number_of_backtracks_in_ls = 11 [default = 100000000];
value
- The maxNumberOfBacktracksInLs to set.public BopParameters.Builder clearMaxNumberOfBacktracksInLs()
Maximum number of backtracks times the number of variables in Local Search, ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
optional int64 max_number_of_backtracks_in_ls = 11 [default = 100000000];
public boolean hasUseLpLns()
Use Large Neighborhood Search based on the LP relaxation.
optional bool use_lp_lns = 12 [default = true];
hasUseLpLns
in interface BopParametersOrBuilder
public boolean getUseLpLns()
Use Large Neighborhood Search based on the LP relaxation.
optional bool use_lp_lns = 12 [default = true];
getUseLpLns
in interface BopParametersOrBuilder
public BopParameters.Builder setUseLpLns(boolean value)
Use Large Neighborhood Search based on the LP relaxation.
optional bool use_lp_lns = 12 [default = true];
value
- The useLpLns to set.public BopParameters.Builder clearUseLpLns()
Use Large Neighborhood Search based on the LP relaxation.
optional bool use_lp_lns = 12 [default = true];
public boolean hasUseSatToChooseLnsNeighbourhood()
Whether we use sat propagation to choose the lns neighbourhood.
optional bool use_sat_to_choose_lns_neighbourhood = 15 [default = true];
hasUseSatToChooseLnsNeighbourhood
in interface BopParametersOrBuilder
public boolean getUseSatToChooseLnsNeighbourhood()
Whether we use sat propagation to choose the lns neighbourhood.
optional bool use_sat_to_choose_lns_neighbourhood = 15 [default = true];
getUseSatToChooseLnsNeighbourhood
in interface BopParametersOrBuilder
public BopParameters.Builder setUseSatToChooseLnsNeighbourhood(boolean value)
Whether we use sat propagation to choose the lns neighbourhood.
optional bool use_sat_to_choose_lns_neighbourhood = 15 [default = true];
value
- The useSatToChooseLnsNeighbourhood to set.public BopParameters.Builder clearUseSatToChooseLnsNeighbourhood()
Whether we use sat propagation to choose the lns neighbourhood.
optional bool use_sat_to_choose_lns_neighbourhood = 15 [default = true];
public boolean hasMaxNumberOfConflictsForQuickCheck()
The number of conflicts the SAT solver has to solve a random LNS subproblem for the quick check of infeasibility.
optional int32 max_number_of_conflicts_for_quick_check = 16 [default = 10];
hasMaxNumberOfConflictsForQuickCheck
in interface BopParametersOrBuilder
public int getMaxNumberOfConflictsForQuickCheck()
The number of conflicts the SAT solver has to solve a random LNS subproblem for the quick check of infeasibility.
optional int32 max_number_of_conflicts_for_quick_check = 16 [default = 10];
getMaxNumberOfConflictsForQuickCheck
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxNumberOfConflictsForQuickCheck(int value)
The number of conflicts the SAT solver has to solve a random LNS subproblem for the quick check of infeasibility.
optional int32 max_number_of_conflicts_for_quick_check = 16 [default = 10];
value
- The maxNumberOfConflictsForQuickCheck to set.public BopParameters.Builder clearMaxNumberOfConflictsForQuickCheck()
The number of conflicts the SAT solver has to solve a random LNS subproblem for the quick check of infeasibility.
optional int32 max_number_of_conflicts_for_quick_check = 16 [default = 10];
public boolean hasUseSymmetry()
If true, find and exploit the eventual symmetries of the problem. TODO(user): turn this on by default once the symmetry finder becomes fast enough to be negligeable for most problem. Or at least support a time limit.
optional bool use_symmetry = 17 [default = false];
hasUseSymmetry
in interface BopParametersOrBuilder
public boolean getUseSymmetry()
If true, find and exploit the eventual symmetries of the problem. TODO(user): turn this on by default once the symmetry finder becomes fast enough to be negligeable for most problem. Or at least support a time limit.
optional bool use_symmetry = 17 [default = false];
getUseSymmetry
in interface BopParametersOrBuilder
public BopParameters.Builder setUseSymmetry(boolean value)
If true, find and exploit the eventual symmetries of the problem. TODO(user): turn this on by default once the symmetry finder becomes fast enough to be negligeable for most problem. Or at least support a time limit.
optional bool use_symmetry = 17 [default = false];
value
- The useSymmetry to set.public BopParameters.Builder clearUseSymmetry()
If true, find and exploit the eventual symmetries of the problem. TODO(user): turn this on by default once the symmetry finder becomes fast enough to be negligeable for most problem. Or at least support a time limit.
optional bool use_symmetry = 17 [default = false];
public boolean hasExploitSymmetryInSatFirstSolution()
If true, find and exploit symmetries in proving satisfiability in the first problem. This feature is experimental. On some problems, computing symmetries may run forever. You may also run into unforseen problems as this feature was not extensively tested.
optional bool exploit_symmetry_in_sat_first_solution = 40 [default = false];
hasExploitSymmetryInSatFirstSolution
in interface BopParametersOrBuilder
public boolean getExploitSymmetryInSatFirstSolution()
If true, find and exploit symmetries in proving satisfiability in the first problem. This feature is experimental. On some problems, computing symmetries may run forever. You may also run into unforseen problems as this feature was not extensively tested.
optional bool exploit_symmetry_in_sat_first_solution = 40 [default = false];
getExploitSymmetryInSatFirstSolution
in interface BopParametersOrBuilder
public BopParameters.Builder setExploitSymmetryInSatFirstSolution(boolean value)
If true, find and exploit symmetries in proving satisfiability in the first problem. This feature is experimental. On some problems, computing symmetries may run forever. You may also run into unforseen problems as this feature was not extensively tested.
optional bool exploit_symmetry_in_sat_first_solution = 40 [default = false];
value
- The exploitSymmetryInSatFirstSolution to set.public BopParameters.Builder clearExploitSymmetryInSatFirstSolution()
If true, find and exploit symmetries in proving satisfiability in the first problem. This feature is experimental. On some problems, computing symmetries may run forever. You may also run into unforseen problems as this feature was not extensively tested.
optional bool exploit_symmetry_in_sat_first_solution = 40 [default = false];
public boolean hasMaxNumberOfConflictsInRandomSolutionGeneration()
The number of conflicts the SAT solver has to generate a random solution.
optional int32 max_number_of_conflicts_in_random_solution_generation = 20 [default = 500];
hasMaxNumberOfConflictsInRandomSolutionGeneration
in interface BopParametersOrBuilder
public int getMaxNumberOfConflictsInRandomSolutionGeneration()
The number of conflicts the SAT solver has to generate a random solution.
optional int32 max_number_of_conflicts_in_random_solution_generation = 20 [default = 500];
getMaxNumberOfConflictsInRandomSolutionGeneration
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxNumberOfConflictsInRandomSolutionGeneration(int value)
The number of conflicts the SAT solver has to generate a random solution.
optional int32 max_number_of_conflicts_in_random_solution_generation = 20 [default = 500];
value
- The maxNumberOfConflictsInRandomSolutionGeneration to set.public BopParameters.Builder clearMaxNumberOfConflictsInRandomSolutionGeneration()
The number of conflicts the SAT solver has to generate a random solution.
optional int32 max_number_of_conflicts_in_random_solution_generation = 20 [default = 500];
public boolean hasMaxNumberOfExploredAssignmentsPerTryInLs()
The maximum number of assignments the Local Search iterates on during one try. Note that if the Local Search is called again on the same solution it will not restart from scratch but will iterate on the next max_number_of_explored_assignments_per_try_in_ls assignments.
optional int64 max_number_of_explored_assignments_per_try_in_ls = 21 [default = 10000];
hasMaxNumberOfExploredAssignmentsPerTryInLs
in interface BopParametersOrBuilder
public long getMaxNumberOfExploredAssignmentsPerTryInLs()
The maximum number of assignments the Local Search iterates on during one try. Note that if the Local Search is called again on the same solution it will not restart from scratch but will iterate on the next max_number_of_explored_assignments_per_try_in_ls assignments.
optional int64 max_number_of_explored_assignments_per_try_in_ls = 21 [default = 10000];
getMaxNumberOfExploredAssignmentsPerTryInLs
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxNumberOfExploredAssignmentsPerTryInLs(long value)
The maximum number of assignments the Local Search iterates on during one try. Note that if the Local Search is called again on the same solution it will not restart from scratch but will iterate on the next max_number_of_explored_assignments_per_try_in_ls assignments.
optional int64 max_number_of_explored_assignments_per_try_in_ls = 21 [default = 10000];
value
- The maxNumberOfExploredAssignmentsPerTryInLs to set.public BopParameters.Builder clearMaxNumberOfExploredAssignmentsPerTryInLs()
The maximum number of assignments the Local Search iterates on during one try. Note that if the Local Search is called again on the same solution it will not restart from scratch but will iterate on the next max_number_of_explored_assignments_per_try_in_ls assignments.
optional int64 max_number_of_explored_assignments_per_try_in_ls = 21 [default = 10000];
public boolean hasUseTranspositionTableInLs()
Whether we use an hash set during the LS to avoid exploring more than once the "same" state. Note that because the underlying SAT solver may learn information in the middle of the LS, this may make the LS slightly less "complete", but it should be faster.
optional bool use_transposition_table_in_ls = 22 [default = true];
hasUseTranspositionTableInLs
in interface BopParametersOrBuilder
public boolean getUseTranspositionTableInLs()
Whether we use an hash set during the LS to avoid exploring more than once the "same" state. Note that because the underlying SAT solver may learn information in the middle of the LS, this may make the LS slightly less "complete", but it should be faster.
optional bool use_transposition_table_in_ls = 22 [default = true];
getUseTranspositionTableInLs
in interface BopParametersOrBuilder
public BopParameters.Builder setUseTranspositionTableInLs(boolean value)
Whether we use an hash set during the LS to avoid exploring more than once the "same" state. Note that because the underlying SAT solver may learn information in the middle of the LS, this may make the LS slightly less "complete", but it should be faster.
optional bool use_transposition_table_in_ls = 22 [default = true];
value
- The useTranspositionTableInLs to set.public BopParameters.Builder clearUseTranspositionTableInLs()
Whether we use an hash set during the LS to avoid exploring more than once the "same" state. Note that because the underlying SAT solver may learn information in the middle of the LS, this may make the LS slightly less "complete", but it should be faster.
optional bool use_transposition_table_in_ls = 22 [default = true];
public boolean hasUsePotentialOneFlipRepairsInLs()
Whether we keep a list of variable that can potentially repair in one flip all the current infeasible constraints (such variable must at least appear in all the infeasible constraints for this to happen).
optional bool use_potential_one_flip_repairs_in_ls = 39 [default = false];
hasUsePotentialOneFlipRepairsInLs
in interface BopParametersOrBuilder
public boolean getUsePotentialOneFlipRepairsInLs()
Whether we keep a list of variable that can potentially repair in one flip all the current infeasible constraints (such variable must at least appear in all the infeasible constraints for this to happen).
optional bool use_potential_one_flip_repairs_in_ls = 39 [default = false];
getUsePotentialOneFlipRepairsInLs
in interface BopParametersOrBuilder
public BopParameters.Builder setUsePotentialOneFlipRepairsInLs(boolean value)
Whether we keep a list of variable that can potentially repair in one flip all the current infeasible constraints (such variable must at least appear in all the infeasible constraints for this to happen).
optional bool use_potential_one_flip_repairs_in_ls = 39 [default = false];
value
- The usePotentialOneFlipRepairsInLs to set.public BopParameters.Builder clearUsePotentialOneFlipRepairsInLs()
Whether we keep a list of variable that can potentially repair in one flip all the current infeasible constraints (such variable must at least appear in all the infeasible constraints for this to happen).
optional bool use_potential_one_flip_repairs_in_ls = 39 [default = false];
public boolean hasUseLearnedBinaryClausesInLp()
Whether we use the learned binary clauses in the Linear Relaxation.
optional bool use_learned_binary_clauses_in_lp = 23 [default = true];
hasUseLearnedBinaryClausesInLp
in interface BopParametersOrBuilder
public boolean getUseLearnedBinaryClausesInLp()
Whether we use the learned binary clauses in the Linear Relaxation.
optional bool use_learned_binary_clauses_in_lp = 23 [default = true];
getUseLearnedBinaryClausesInLp
in interface BopParametersOrBuilder
public BopParameters.Builder setUseLearnedBinaryClausesInLp(boolean value)
Whether we use the learned binary clauses in the Linear Relaxation.
optional bool use_learned_binary_clauses_in_lp = 23 [default = true];
value
- The useLearnedBinaryClausesInLp to set.public BopParameters.Builder clearUseLearnedBinaryClausesInLp()
Whether we use the learned binary clauses in the Linear Relaxation.
optional bool use_learned_binary_clauses_in_lp = 23 [default = true];
public boolean hasNumberOfSolvers()
The number of solvers used to run Bop. Note that one thread will be created per solver. The type of communication between solvers is specified by the synchronization_type parameter.
optional int32 number_of_solvers = 24 [default = 1];
hasNumberOfSolvers
in interface BopParametersOrBuilder
public int getNumberOfSolvers()
The number of solvers used to run Bop. Note that one thread will be created per solver. The type of communication between solvers is specified by the synchronization_type parameter.
optional int32 number_of_solvers = 24 [default = 1];
getNumberOfSolvers
in interface BopParametersOrBuilder
public BopParameters.Builder setNumberOfSolvers(int value)
The number of solvers used to run Bop. Note that one thread will be created per solver. The type of communication between solvers is specified by the synchronization_type parameter.
optional int32 number_of_solvers = 24 [default = 1];
value
- The numberOfSolvers to set.public BopParameters.Builder clearNumberOfSolvers()
The number of solvers used to run Bop. Note that one thread will be created per solver. The type of communication between solvers is specified by the synchronization_type parameter.
optional int32 number_of_solvers = 24 [default = 1];
public boolean hasSynchronizationType()
optional .operations_research.bop.BopParameters.ThreadSynchronizationType synchronization_type = 25 [default = NO_SYNCHRONIZATION];
hasSynchronizationType
in interface BopParametersOrBuilder
public BopParameters.ThreadSynchronizationType getSynchronizationType()
optional .operations_research.bop.BopParameters.ThreadSynchronizationType synchronization_type = 25 [default = NO_SYNCHRONIZATION];
getSynchronizationType
in interface BopParametersOrBuilder
public BopParameters.Builder setSynchronizationType(BopParameters.ThreadSynchronizationType value)
optional .operations_research.bop.BopParameters.ThreadSynchronizationType synchronization_type = 25 [default = NO_SYNCHRONIZATION];
value
- The synchronizationType to set.public BopParameters.Builder clearSynchronizationType()
optional .operations_research.bop.BopParameters.ThreadSynchronizationType synchronization_type = 25 [default = NO_SYNCHRONIZATION];
public java.util.List<BopSolverOptimizerSet> getSolverOptimizerSetsList()
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
getSolverOptimizerSetsList
in interface BopParametersOrBuilder
public int getSolverOptimizerSetsCount()
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
getSolverOptimizerSetsCount
in interface BopParametersOrBuilder
public BopSolverOptimizerSet getSolverOptimizerSets(int index)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
getSolverOptimizerSets
in interface BopParametersOrBuilder
public BopParameters.Builder setSolverOptimizerSets(int index, BopSolverOptimizerSet value)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopParameters.Builder setSolverOptimizerSets(int index, BopSolverOptimizerSet.Builder builderForValue)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopParameters.Builder addSolverOptimizerSets(BopSolverOptimizerSet value)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopParameters.Builder addSolverOptimizerSets(int index, BopSolverOptimizerSet value)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopParameters.Builder addSolverOptimizerSets(BopSolverOptimizerSet.Builder builderForValue)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopParameters.Builder addSolverOptimizerSets(int index, BopSolverOptimizerSet.Builder builderForValue)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopParameters.Builder addAllSolverOptimizerSets(java.lang.Iterable<? extends BopSolverOptimizerSet> values)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopParameters.Builder clearSolverOptimizerSets()
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopParameters.Builder removeSolverOptimizerSets(int index)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopSolverOptimizerSet.Builder getSolverOptimizerSetsBuilder(int index)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopSolverOptimizerSetOrBuilder getSolverOptimizerSetsOrBuilder(int index)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
getSolverOptimizerSetsOrBuilder
in interface BopParametersOrBuilder
public java.util.List<? extends BopSolverOptimizerSetOrBuilder> getSolverOptimizerSetsOrBuilderList()
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
getSolverOptimizerSetsOrBuilderList
in interface BopParametersOrBuilder
public BopSolverOptimizerSet.Builder addSolverOptimizerSetsBuilder()
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public BopSolverOptimizerSet.Builder addSolverOptimizerSetsBuilder(int index)
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public java.util.List<BopSolverOptimizerSet.Builder> getSolverOptimizerSetsBuilderList()
List of set of optimizers to be run by the solvers. Note that the i_th solver will run the min(i, solver_optimizer_sets_size())_th optimizer set. The default is defined by default_solver_optimizer_sets (only one set).
repeated .operations_research.bop.BopSolverOptimizerSet solver_optimizer_sets = 26;
public boolean hasDefaultSolverOptimizerSets()
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "];
hasDefaultSolverOptimizerSets
in interface BopParametersOrBuilder
public java.lang.String getDefaultSolverOptimizerSets()
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "];
getDefaultSolverOptimizerSets
in interface BopParametersOrBuilder
public com.google.protobuf.ByteString getDefaultSolverOptimizerSetsBytes()
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "];
getDefaultSolverOptimizerSetsBytes
in interface BopParametersOrBuilder
public BopParameters.Builder setDefaultSolverOptimizerSets(java.lang.String value)
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "];
value
- The defaultSolverOptimizerSets to set.public BopParameters.Builder clearDefaultSolverOptimizerSets()
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "];
public BopParameters.Builder setDefaultSolverOptimizerSetsBytes(com.google.protobuf.ByteString value)
optional string default_solver_optimizer_sets = 33 [default = "methods:{type:LOCAL_SEARCH } methods:{type:RANDOM_FIRST_SOLUTION } methods:{type:LINEAR_RELAXATION } methods:{type:LP_FIRST_SOLUTION } methods:{type:OBJECTIVE_FIRST_SOLUTION } methods:{type:USER_GUIDED_FIRST_SOLUTION } methods:{type:RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP } methods:{type:RANDOM_VARIABLE_LNS_GUIDED_BY_LP } methods:{type:RELATION_GRAPH_LNS } methods:{type:RELATION_GRAPH_LNS_GUIDED_BY_LP } methods:{type:RANDOM_CONSTRAINT_LNS } methods:{type:RANDOM_VARIABLE_LNS } methods:{type:SAT_CORE_BASED } methods:{type:COMPLETE_LNS } "];
value
- The bytes for defaultSolverOptimizerSets to set.public boolean hasUseLpStrongBranching()
Use strong branching in the linear relaxation optimizer. The strong branching is a what-if analysis on each variable v, i.e. compute the best bound when v is assigned to true, compute the best bound when v is assigned to false, and then use those best bounds to improve the overall best bound. This is useful to improve the best_bound, but also to fix some variables during search. Note that using probing might be time consuming as it runs the LP solver 2 * num_variables times.
optional bool use_lp_strong_branching = 29 [default = false];
hasUseLpStrongBranching
in interface BopParametersOrBuilder
public boolean getUseLpStrongBranching()
Use strong branching in the linear relaxation optimizer. The strong branching is a what-if analysis on each variable v, i.e. compute the best bound when v is assigned to true, compute the best bound when v is assigned to false, and then use those best bounds to improve the overall best bound. This is useful to improve the best_bound, but also to fix some variables during search. Note that using probing might be time consuming as it runs the LP solver 2 * num_variables times.
optional bool use_lp_strong_branching = 29 [default = false];
getUseLpStrongBranching
in interface BopParametersOrBuilder
public BopParameters.Builder setUseLpStrongBranching(boolean value)
Use strong branching in the linear relaxation optimizer. The strong branching is a what-if analysis on each variable v, i.e. compute the best bound when v is assigned to true, compute the best bound when v is assigned to false, and then use those best bounds to improve the overall best bound. This is useful to improve the best_bound, but also to fix some variables during search. Note that using probing might be time consuming as it runs the LP solver 2 * num_variables times.
optional bool use_lp_strong_branching = 29 [default = false];
value
- The useLpStrongBranching to set.public BopParameters.Builder clearUseLpStrongBranching()
Use strong branching in the linear relaxation optimizer. The strong branching is a what-if analysis on each variable v, i.e. compute the best bound when v is assigned to true, compute the best bound when v is assigned to false, and then use those best bounds to improve the overall best bound. This is useful to improve the best_bound, but also to fix some variables during search. Note that using probing might be time consuming as it runs the LP solver 2 * num_variables times.
optional bool use_lp_strong_branching = 29 [default = false];
public boolean hasDecomposerNumVariablesThreshold()
Only try to decompose the problem when the number of variables is greater than the threshold.
optional int32 decomposer_num_variables_threshold = 30 [default = 50];
hasDecomposerNumVariablesThreshold
in interface BopParametersOrBuilder
public int getDecomposerNumVariablesThreshold()
Only try to decompose the problem when the number of variables is greater than the threshold.
optional int32 decomposer_num_variables_threshold = 30 [default = 50];
getDecomposerNumVariablesThreshold
in interface BopParametersOrBuilder
public BopParameters.Builder setDecomposerNumVariablesThreshold(int value)
Only try to decompose the problem when the number of variables is greater than the threshold.
optional int32 decomposer_num_variables_threshold = 30 [default = 50];
value
- The decomposerNumVariablesThreshold to set.public BopParameters.Builder clearDecomposerNumVariablesThreshold()
Only try to decompose the problem when the number of variables is greater than the threshold.
optional int32 decomposer_num_variables_threshold = 30 [default = 50];
public boolean hasNumBopSolversUsedByDecomposition()
The number of BopSolver created (thread pool workers) used by the integral solver to solve a decomposed problem. TODO(user): Merge this with the number_of_solvers parameter.
optional int32 num_bop_solvers_used_by_decomposition = 31 [default = 1];
hasNumBopSolversUsedByDecomposition
in interface BopParametersOrBuilder
public int getNumBopSolversUsedByDecomposition()
The number of BopSolver created (thread pool workers) used by the integral solver to solve a decomposed problem. TODO(user): Merge this with the number_of_solvers parameter.
optional int32 num_bop_solvers_used_by_decomposition = 31 [default = 1];
getNumBopSolversUsedByDecomposition
in interface BopParametersOrBuilder
public BopParameters.Builder setNumBopSolversUsedByDecomposition(int value)
The number of BopSolver created (thread pool workers) used by the integral solver to solve a decomposed problem. TODO(user): Merge this with the number_of_solvers parameter.
optional int32 num_bop_solvers_used_by_decomposition = 31 [default = 1];
value
- The numBopSolversUsedByDecomposition to set.public BopParameters.Builder clearNumBopSolversUsedByDecomposition()
The number of BopSolver created (thread pool workers) used by the integral solver to solve a decomposed problem. TODO(user): Merge this with the number_of_solvers parameter.
optional int32 num_bop_solvers_used_by_decomposition = 31 [default = 1];
public boolean hasDecomposedProblemMinTimeInSeconds()
HACK. To avoid spending too little time on small problems, spend at least this time solving each of the decomposed sub-problem. This only make sense if num_bop_solvers_used_by_decomposition is greater than 1 so that the overhead can be "absorbed" by the other threads.
optional double decomposed_problem_min_time_in_seconds = 36 [default = 0];
hasDecomposedProblemMinTimeInSeconds
in interface BopParametersOrBuilder
public double getDecomposedProblemMinTimeInSeconds()
HACK. To avoid spending too little time on small problems, spend at least this time solving each of the decomposed sub-problem. This only make sense if num_bop_solvers_used_by_decomposition is greater than 1 so that the overhead can be "absorbed" by the other threads.
optional double decomposed_problem_min_time_in_seconds = 36 [default = 0];
getDecomposedProblemMinTimeInSeconds
in interface BopParametersOrBuilder
public BopParameters.Builder setDecomposedProblemMinTimeInSeconds(double value)
HACK. To avoid spending too little time on small problems, spend at least this time solving each of the decomposed sub-problem. This only make sense if num_bop_solvers_used_by_decomposition is greater than 1 so that the overhead can be "absorbed" by the other threads.
optional double decomposed_problem_min_time_in_seconds = 36 [default = 0];
value
- The decomposedProblemMinTimeInSeconds to set.public BopParameters.Builder clearDecomposedProblemMinTimeInSeconds()
HACK. To avoid spending too little time on small problems, spend at least this time solving each of the decomposed sub-problem. This only make sense if num_bop_solvers_used_by_decomposition is greater than 1 so that the overhead can be "absorbed" by the other threads.
optional double decomposed_problem_min_time_in_seconds = 36 [default = 0];
public boolean hasGuidedSatConflictsChunk()
The first solutions based on guided SAT will work in chunk of that many conflicts at the time. This allows to simulate parallelism between the different guiding strategy on a single core.
optional int32 guided_sat_conflicts_chunk = 34 [default = 1000];
hasGuidedSatConflictsChunk
in interface BopParametersOrBuilder
public int getGuidedSatConflictsChunk()
The first solutions based on guided SAT will work in chunk of that many conflicts at the time. This allows to simulate parallelism between the different guiding strategy on a single core.
optional int32 guided_sat_conflicts_chunk = 34 [default = 1000];
getGuidedSatConflictsChunk
in interface BopParametersOrBuilder
public BopParameters.Builder setGuidedSatConflictsChunk(int value)
The first solutions based on guided SAT will work in chunk of that many conflicts at the time. This allows to simulate parallelism between the different guiding strategy on a single core.
optional int32 guided_sat_conflicts_chunk = 34 [default = 1000];
value
- The guidedSatConflictsChunk to set.public BopParameters.Builder clearGuidedSatConflictsChunk()
The first solutions based on guided SAT will work in chunk of that many conflicts at the time. This allows to simulate parallelism between the different guiding strategy on a single core.
optional int32 guided_sat_conflicts_chunk = 34 [default = 1000];
public boolean hasMaxLpSolveForFeasibilityProblems()
The maximum number of time the LP solver will run to feasibility for pure feasibility problems (with a constant-valued objective function). Set this to a small value, e.g., 1, if fractional solutions offer useful guidance to other solvers in the portfolio. A negative value means no limit.
optional int32 max_lp_solve_for_feasibility_problems = 41 [default = 0];
hasMaxLpSolveForFeasibilityProblems
in interface BopParametersOrBuilder
public int getMaxLpSolveForFeasibilityProblems()
The maximum number of time the LP solver will run to feasibility for pure feasibility problems (with a constant-valued objective function). Set this to a small value, e.g., 1, if fractional solutions offer useful guidance to other solvers in the portfolio. A negative value means no limit.
optional int32 max_lp_solve_for_feasibility_problems = 41 [default = 0];
getMaxLpSolveForFeasibilityProblems
in interface BopParametersOrBuilder
public BopParameters.Builder setMaxLpSolveForFeasibilityProblems(int value)
The maximum number of time the LP solver will run to feasibility for pure feasibility problems (with a constant-valued objective function). Set this to a small value, e.g., 1, if fractional solutions offer useful guidance to other solvers in the portfolio. A negative value means no limit.
optional int32 max_lp_solve_for_feasibility_problems = 41 [default = 0];
value
- The maxLpSolveForFeasibilityProblems to set.public BopParameters.Builder clearMaxLpSolveForFeasibilityProblems()
The maximum number of time the LP solver will run to feasibility for pure feasibility problems (with a constant-valued objective function). Set this to a small value, e.g., 1, if fractional solutions offer useful guidance to other solvers in the portfolio. A negative value means no limit.
optional int32 max_lp_solve_for_feasibility_problems = 41 [default = 0];
Copyright © 2025. All rights reserved.