Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
|
Contains the definitions for all the bop algorithm parameters and their default values. More...
Classes | |
class | Types |
Container for nested types declared in the BopParameters message type. More... | |
Public Member Functions | |
BopParameters () | |
BopParameters (BopParameters other) | |
BopParameters | Clone () |
void | ClearMaxTimeInSeconds () |
Clears the value of the "max_time_in_seconds" field. | |
void | ClearMaxDeterministicTime () |
Clears the value of the "max_deterministic_time" field. | |
void | ClearLpMaxDeterministicTime () |
Clears the value of the "lp_max_deterministic_time" field. | |
void | ClearMaxNumberOfConsecutiveFailingOptimizerCalls () |
Clears the value of the "max_number_of_consecutive_failing_optimizer_calls" field. | |
void | ClearRelativeGapLimit () |
Clears the value of the "relative_gap_limit" field. | |
void | ClearMaxNumDecisionsInLs () |
Clears the value of the "max_num_decisions_in_ls" field. | |
void | ClearMaxNumBrokenConstraintsInLs () |
Clears the value of the "max_num_broken_constraints_in_ls" field. | |
void | ClearLogSearchProgress () |
Clears the value of the "log_search_progress" field. | |
void | ClearComputeEstimatedImpact () |
Clears the value of the "compute_estimated_impact" field. | |
void | ClearPruneSearchTree () |
Clears the value of the "prune_search_tree" field. | |
void | ClearSortConstraintsByNumTerms () |
Clears the value of the "sort_constraints_by_num_terms" field. | |
void | ClearUseRandomLns () |
Clears the value of the "use_random_lns" field. | |
void | ClearRandomSeed () |
Clears the value of the "random_seed" field. | |
void | ClearNumRelaxedVars () |
Clears the value of the "num_relaxed_vars" field. | |
void | ClearMaxNumberOfConflictsInRandomLns () |
Clears the value of the "max_number_of_conflicts_in_random_lns" field. | |
void | ClearNumRandomLnsTries () |
Clears the value of the "num_random_lns_tries" field. | |
void | ClearMaxNumberOfBacktracksInLs () |
Clears the value of the "max_number_of_backtracks_in_ls" field. | |
void | ClearUseLpLns () |
Clears the value of the "use_lp_lns" field. | |
void | ClearUseSatToChooseLnsNeighbourhood () |
Clears the value of the "use_sat_to_choose_lns_neighbourhood" field. | |
void | ClearMaxNumberOfConflictsForQuickCheck () |
Clears the value of the "max_number_of_conflicts_for_quick_check" field. | |
void | ClearUseSymmetry () |
Clears the value of the "use_symmetry" field. | |
void | ClearExploitSymmetryInSatFirstSolution () |
Clears the value of the "exploit_symmetry_in_sat_first_solution" field. | |
void | ClearMaxNumberOfConflictsInRandomSolutionGeneration () |
Clears the value of the "max_number_of_conflicts_in_random_solution_generation" field. | |
void | ClearMaxNumberOfExploredAssignmentsPerTryInLs () |
Clears the value of the "max_number_of_explored_assignments_per_try_in_ls" field. | |
void | ClearUseTranspositionTableInLs () |
Clears the value of the "use_transposition_table_in_ls" field. | |
void | ClearUsePotentialOneFlipRepairsInLs () |
Clears the value of the "use_potential_one_flip_repairs_in_ls" field. | |
void | ClearUseLearnedBinaryClausesInLp () |
Clears the value of the "use_learned_binary_clauses_in_lp" field. | |
void | ClearNumberOfSolvers () |
Clears the value of the "number_of_solvers" field. | |
void | ClearSynchronizationType () |
Clears the value of the "synchronization_type" field. | |
void | ClearDefaultSolverOptimizerSets () |
Clears the value of the "default_solver_optimizer_sets" field. | |
void | ClearUseLpStrongBranching () |
Clears the value of the "use_lp_strong_branching" field. | |
void | ClearDecomposerNumVariablesThreshold () |
Clears the value of the "decomposer_num_variables_threshold" field. | |
void | ClearNumBopSolversUsedByDecomposition () |
Clears the value of the "num_bop_solvers_used_by_decomposition" field. | |
void | ClearDecomposedProblemMinTimeInSeconds () |
Clears the value of the "decomposed_problem_min_time_in_seconds" field. | |
void | ClearGuidedSatConflictsChunk () |
Clears the value of the "guided_sat_conflicts_chunk" field. | |
void | ClearMaxLpSolveForFeasibilityProblems () |
Clears the value of the "max_lp_solve_for_feasibility_problems" field. | |
override bool | Equals (object other) |
bool | Equals (BopParameters other) |
override int | GetHashCode () |
override string | ToString () |
void | WriteTo (pb::CodedOutputStream output) |
int | CalculateSize () |
void | MergeFrom (BopParameters other) |
void | MergeFrom (pb::CodedInputStream input) |
Static Public Attributes | |
const int | MaxTimeInSecondsFieldNumber = 1 |
Field number for the "max_time_in_seconds" field. | |
const int | MaxDeterministicTimeFieldNumber = 27 |
Field number for the "max_deterministic_time" field. | |
const int | LpMaxDeterministicTimeFieldNumber = 37 |
Field number for the "lp_max_deterministic_time" field. | |
const int | MaxNumberOfConsecutiveFailingOptimizerCallsFieldNumber = 35 |
Field number for the "max_number_of_consecutive_failing_optimizer_calls" field. | |
const int | RelativeGapLimitFieldNumber = 28 |
Field number for the "relative_gap_limit" field. | |
const int | MaxNumDecisionsInLsFieldNumber = 2 |
Field number for the "max_num_decisions_in_ls" field. | |
const int | MaxNumBrokenConstraintsInLsFieldNumber = 38 |
Field number for the "max_num_broken_constraints_in_ls" field. | |
const int | LogSearchProgressFieldNumber = 14 |
Field number for the "log_search_progress" field. | |
const int | ComputeEstimatedImpactFieldNumber = 3 |
Field number for the "compute_estimated_impact" field. | |
const int | PruneSearchTreeFieldNumber = 4 |
Field number for the "prune_search_tree" field. | |
const int | SortConstraintsByNumTermsFieldNumber = 5 |
Field number for the "sort_constraints_by_num_terms" field. | |
const int | UseRandomLnsFieldNumber = 6 |
Field number for the "use_random_lns" field. | |
const int | RandomSeedFieldNumber = 7 |
Field number for the "random_seed" field. | |
const int | NumRelaxedVarsFieldNumber = 8 |
Field number for the "num_relaxed_vars" field. | |
const int | MaxNumberOfConflictsInRandomLnsFieldNumber = 9 |
Field number for the "max_number_of_conflicts_in_random_lns" field. | |
const int | NumRandomLnsTriesFieldNumber = 10 |
Field number for the "num_random_lns_tries" field. | |
const int | MaxNumberOfBacktracksInLsFieldNumber = 11 |
Field number for the "max_number_of_backtracks_in_ls" field. | |
const int | UseLpLnsFieldNumber = 12 |
Field number for the "use_lp_lns" field. | |
const int | UseSatToChooseLnsNeighbourhoodFieldNumber = 15 |
Field number for the "use_sat_to_choose_lns_neighbourhood" field. | |
const int | MaxNumberOfConflictsForQuickCheckFieldNumber = 16 |
Field number for the "max_number_of_conflicts_for_quick_check" field. | |
const int | UseSymmetryFieldNumber = 17 |
Field number for the "use_symmetry" field. | |
const int | ExploitSymmetryInSatFirstSolutionFieldNumber = 40 |
Field number for the "exploit_symmetry_in_sat_first_solution" field. | |
const int | MaxNumberOfConflictsInRandomSolutionGenerationFieldNumber = 20 |
Field number for the "max_number_of_conflicts_in_random_solution_generation" field. | |
const int | MaxNumberOfExploredAssignmentsPerTryInLsFieldNumber = 21 |
Field number for the "max_number_of_explored_assignments_per_try_in_ls" field. | |
const int | UseTranspositionTableInLsFieldNumber = 22 |
Field number for the "use_transposition_table_in_ls" field. | |
const int | UsePotentialOneFlipRepairsInLsFieldNumber = 39 |
Field number for the "use_potential_one_flip_repairs_in_ls" field. | |
const int | UseLearnedBinaryClausesInLpFieldNumber = 23 |
Field number for the "use_learned_binary_clauses_in_lp" field. | |
const int | NumberOfSolversFieldNumber = 24 |
Field number for the "number_of_solvers" field. | |
const int | SynchronizationTypeFieldNumber = 25 |
Field number for the "synchronization_type" field. | |
const int | SolverOptimizerSetsFieldNumber = 26 |
Field number for the "solver_optimizer_sets" field. | |
const int | DefaultSolverOptimizerSetsFieldNumber = 33 |
Field number for the "default_solver_optimizer_sets" field. | |
const int | UseLpStrongBranchingFieldNumber = 29 |
Field number for the "use_lp_strong_branching" field. | |
const int | DecomposerNumVariablesThresholdFieldNumber = 30 |
Field number for the "decomposer_num_variables_threshold" field. | |
const int | NumBopSolversUsedByDecompositionFieldNumber = 31 |
Field number for the "num_bop_solvers_used_by_decomposition" field. | |
const int | DecomposedProblemMinTimeInSecondsFieldNumber = 36 |
Field number for the "decomposed_problem_min_time_in_seconds" field. | |
const int | GuidedSatConflictsChunkFieldNumber = 34 |
Field number for the "guided_sat_conflicts_chunk" field. | |
const int | MaxLpSolveForFeasibilityProblemsFieldNumber = 41 |
Field number for the "max_lp_solve_for_feasibility_problems" field. | |
Properties | |
static pb::MessageParser< BopParameters > | Parser [get] |
static pbr::MessageDescriptor | Descriptor [get] |
double | MaxTimeInSeconds [get, set] |
Maximum time allowed in seconds to solve a problem. The counter will starts as soon as Solve() is called. | |
bool | HasMaxTimeInSeconds [get] |
Gets whether the "max_time_in_seconds" field is set. | |
double | MaxDeterministicTime [get, set] |
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. | |
bool | HasMaxDeterministicTime [get] |
Gets whether the "max_deterministic_time" field is set. | |
double | LpMaxDeterministicTime [get, set] |
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). | |
bool | HasLpMaxDeterministicTime [get] |
Gets whether the "lp_max_deterministic_time" field is set. | |
int | MaxNumberOfConsecutiveFailingOptimizerCalls [get, set] |
Maximum number of consecutive optimizer calls without improving the current solution. If this number is reached, the search will be aborted. | |
bool | HasMaxNumberOfConsecutiveFailingOptimizerCalls [get] |
Gets whether the "max_number_of_consecutive_failing_optimizer_calls" field is set. | |
double | RelativeGapLimit [get, set] |
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)). | |
bool | HasRelativeGapLimit [get] |
Gets whether the "relative_gap_limit" field is set. | |
int | MaxNumDecisionsInLs [get, set] |
Maximum number of cascading decisions the solver might use to repair the current solution in the LS. | |
bool | HasMaxNumDecisionsInLs [get] |
Gets whether the "max_num_decisions_in_ls" field is set. | |
int | MaxNumBrokenConstraintsInLs [get, set] |
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. | |
bool | HasMaxNumBrokenConstraintsInLs [get] |
Gets whether the "max_num_broken_constraints_in_ls" field is set. | |
bool | LogSearchProgress [get, set] |
Whether the solver should log the search progress to LOG(INFO). | |
bool | HasLogSearchProgress [get] |
Gets whether the "log_search_progress" field is set. | |
bool | ComputeEstimatedImpact [get, set] |
Compute estimated impact at each iteration when true; only once when false. | |
bool | HasComputeEstimatedImpact [get] |
Gets whether the "compute_estimated_impact" field is set. | |
bool | PruneSearchTree [get, set] |
Avoid exploring both branches (b, a, ...) and (a, b, ...). | |
bool | HasPruneSearchTree [get] |
Gets whether the "prune_search_tree" field is set. | |
bool | SortConstraintsByNumTerms [get, set] |
Sort constraints by increasing total number of terms instead of number of contributing terms. | |
bool | HasSortConstraintsByNumTerms [get] |
Gets whether the "sort_constraints_by_num_terms" field is set. | |
bool | UseRandomLns [get, set] |
Use the random Large Neighborhood Search instead of the exhaustive one. | |
bool | HasUseRandomLns [get] |
Gets whether the "use_random_lns" field is set. | |
int | RandomSeed [get, set] |
The seed used to initialize the random generator. | |
bool | HasRandomSeed [get] |
Gets whether the "random_seed" field is set. | |
int | NumRelaxedVars [get, set] |
Number of variables to relax in the exhaustive Large Neighborhood Search. | |
bool | HasNumRelaxedVars [get] |
Gets whether the "num_relaxed_vars" field is set. | |
int | MaxNumberOfConflictsInRandomLns [get, set] |
The number of conflicts the SAT solver has to solve a random LNS subproblem. | |
bool | HasMaxNumberOfConflictsInRandomLns [get] |
Gets whether the "max_number_of_conflicts_in_random_lns" field is set. | |
int | NumRandomLnsTries [get, set] |
Number of tries in the random lns. | |
bool | HasNumRandomLnsTries [get] |
Gets whether the "num_random_lns_tries" field is set. | |
long | MaxNumberOfBacktracksInLs [get, set] |
Maximum number of backtracks times the number of variables in Local Search, ie. max num backtracks == max_number_of_backtracks_in_ls / num variables. | |
bool | HasMaxNumberOfBacktracksInLs [get] |
Gets whether the "max_number_of_backtracks_in_ls" field is set. | |
bool | UseLpLns [get, set] |
Use Large Neighborhood Search based on the LP relaxation. | |
bool | HasUseLpLns [get] |
Gets whether the "use_lp_lns" field is set. | |
bool | UseSatToChooseLnsNeighbourhood [get, set] |
Whether we use sat propagation to choose the lns neighbourhood. | |
bool | HasUseSatToChooseLnsNeighbourhood [get] |
Gets whether the "use_sat_to_choose_lns_neighbourhood" field is set. | |
int | MaxNumberOfConflictsForQuickCheck [get, set] |
The number of conflicts the SAT solver has to solve a random LNS subproblem for the quick check of infeasibility. | |
bool | HasMaxNumberOfConflictsForQuickCheck [get] |
Gets whether the "max_number_of_conflicts_for_quick_check" field is set. | |
bool | UseSymmetry [get, set] |
If true, find and exploit the eventual symmetries of the problem. | |
bool | HasUseSymmetry [get] |
Gets whether the "use_symmetry" field is set. | |
bool | ExploitSymmetryInSatFirstSolution [get, set] |
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. | |
bool | HasExploitSymmetryInSatFirstSolution [get] |
Gets whether the "exploit_symmetry_in_sat_first_solution" field is set. | |
int | MaxNumberOfConflictsInRandomSolutionGeneration [get, set] |
The number of conflicts the SAT solver has to generate a random solution. | |
bool | HasMaxNumberOfConflictsInRandomSolutionGeneration [get] |
Gets whether the "max_number_of_conflicts_in_random_solution_generation" field is set. | |
long | MaxNumberOfExploredAssignmentsPerTryInLs [get, set] |
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. | |
bool | HasMaxNumberOfExploredAssignmentsPerTryInLs [get] |
Gets whether the "max_number_of_explored_assignments_per_try_in_ls" field is set. | |
bool | UseTranspositionTableInLs [get, set] |
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. | |
bool | HasUseTranspositionTableInLs [get] |
Gets whether the "use_transposition_table_in_ls" field is set. | |
bool | UsePotentialOneFlipRepairsInLs [get, set] |
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). | |
bool | HasUsePotentialOneFlipRepairsInLs [get] |
Gets whether the "use_potential_one_flip_repairs_in_ls" field is set. | |
bool | UseLearnedBinaryClausesInLp [get, set] |
Whether we use the learned binary clauses in the Linear Relaxation. | |
bool | HasUseLearnedBinaryClausesInLp [get] |
Gets whether the "use_learned_binary_clauses_in_lp" field is set. | |
int | NumberOfSolvers [get, set] |
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. | |
bool | HasNumberOfSolvers [get] |
Gets whether the "number_of_solvers" field is set. | |
global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType | SynchronizationType [get, set] |
bool | HasSynchronizationType [get] |
Gets whether the "synchronization_type" field is set. | |
pbc::RepeatedField< global::Google.OrTools.Bop.BopSolverOptimizerSet > | SolverOptimizerSets [get] |
List of set of optimizers to be run by the solvers. | |
string | DefaultSolverOptimizerSets [get, set] |
bool | HasDefaultSolverOptimizerSets [get] |
Gets whether the "default_solver_optimizer_sets" field is set. | |
bool | UseLpStrongBranching [get, set] |
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. | |
bool | HasUseLpStrongBranching [get] |
Gets whether the "use_lp_strong_branching" field is set. | |
int | DecomposerNumVariablesThreshold [get, set] |
Only try to decompose the problem when the number of variables is greater than the threshold. | |
bool | HasDecomposerNumVariablesThreshold [get] |
Gets whether the "decomposer_num_variables_threshold" field is set. | |
int | NumBopSolversUsedByDecomposition [get, set] |
The number of BopSolver created (thread pool workers) used by the integral solver to solve a decomposed problem. | |
bool | HasNumBopSolversUsedByDecomposition [get] |
Gets whether the "num_bop_solvers_used_by_decomposition" field is set. | |
double | DecomposedProblemMinTimeInSeconds [get, set] |
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. | |
bool | HasDecomposedProblemMinTimeInSeconds [get] |
Gets whether the "decomposed_problem_min_time_in_seconds" field is set. | |
int | GuidedSatConflictsChunk [get, set] |
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. | |
bool | HasGuidedSatConflictsChunk [get] |
Gets whether the "guided_sat_conflicts_chunk" field is set. | |
int | MaxLpSolveForFeasibilityProblems [get, set] |
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. | |
bool | HasMaxLpSolveForFeasibilityProblems [get] |
Gets whether the "max_lp_solve_for_feasibility_problems" field is set. | |
Contains the definitions for all the bop algorithm parameters and their default values.
NEXT TAG: 42
Definition at line 543 of file BopParameters.pb.cs.
|
inline |
Definition at line 570 of file BopParameters.pb.cs.
|
inline |
Definition at line 578 of file BopParameters.pb.cs.
|
inline |
Definition at line 2204 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "compute_estimated_impact" field.
Definition at line 911 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "decomposed_problem_min_time_in_seconds" field.
Definition at line 1713 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "decomposer_num_variables_threshold" field.
Definition at line 1648 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "default_solver_optimizer_sets" field.
Definition at line 1579 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "exploit_symmetry_in_sat_first_solution" field.
Definition at line 1319 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "guided_sat_conflicts_chunk" field.
Definition at line 1745 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "log_search_progress" field.
Definition at line 881 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "lp_max_deterministic_time" field.
Definition at line 720 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_deterministic_time" field.
Definition at line 688 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_lp_solve_for_feasibility_problems" field.
Definition at line 1778 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_backtracks_in_ls" field.
Definition at line 1159 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_conflicts_for_quick_check" field.
Definition at line 1250 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_conflicts_in_random_lns" field.
Definition at line 1098 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_conflicts_in_random_solution_generation" field.
Definition at line 1349 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_consecutive_failing_optimizer_calls" field.
Definition at line 754 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_explored_assignments_per_try_in_ls" field.
Definition at line 1382 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_num_broken_constraints_in_ls" field.
Definition at line 851 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_num_decisions_in_ls" field.
Definition at line 819 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_time_in_seconds" field.
Definition at line 654 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "number_of_solvers" field.
Definition at line 1509 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "num_bop_solvers_used_by_decomposition" field.
Definition at line 1680 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "num_random_lns_tries" field.
Definition at line 1128 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "num_relaxed_vars" field.
Definition at line 1067 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "prune_search_tree" field.
Definition at line 941 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "random_seed" field.
Definition at line 1037 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "relative_gap_limit" field.
Definition at line 788 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "sort_constraints_by_num_terms" field.
Definition at line 972 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "synchronization_type" field.
Definition at line 1536 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_learned_binary_clauses_in_lp" field.
Definition at line 1477 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_lp_lns" field.
Definition at line 1189 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_lp_strong_branching" field.
Definition at line 1617 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_potential_one_flip_repairs_in_ls" field.
Definition at line 1447 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_random_lns" field.
Definition at line 1002 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_sat_to_choose_lns_neighbourhood" field.
Definition at line 1219 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_symmetry" field.
Definition at line 1285 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_transposition_table_in_ls" field.
Definition at line 1415 of file BopParameters.pb.cs.
|
inline |
Definition at line 623 of file BopParameters.pb.cs.
|
inline |
Definition at line 1790 of file BopParameters.pb.cs.
|
inline |
Definition at line 1784 of file BopParameters.pb.cs.
|
inline |
Definition at line 1839 of file BopParameters.pb.cs.
|
inline |
Definition at line 2323 of file BopParameters.pb.cs.
|
inline |
Definition at line 2441 of file BopParameters.pb.cs.
|
inline |
Definition at line 1886 of file BopParameters.pb.cs.
|
inline |
Definition at line 1892 of file BopParameters.pb.cs.
|
static |
Field number for the "compute_estimated_impact" field.
Definition at line 886 of file BopParameters.pb.cs.
|
static |
Field number for the "decomposed_problem_min_time_in_seconds" field.
Definition at line 1685 of file BopParameters.pb.cs.
|
static |
Field number for the "decomposer_num_variables_threshold" field.
Definition at line 1622 of file BopParameters.pb.cs.
|
static |
Field number for the "default_solver_optimizer_sets" field.
Definition at line 1558 of file BopParameters.pb.cs.
|
static |
Field number for the "exploit_symmetry_in_sat_first_solution" field.
Definition at line 1290 of file BopParameters.pb.cs.
|
static |
Field number for the "guided_sat_conflicts_chunk" field.
Definition at line 1718 of file BopParameters.pb.cs.
|
static |
Field number for the "log_search_progress" field.
Definition at line 856 of file BopParameters.pb.cs.
|
static |
Field number for the "lp_max_deterministic_time" field.
Definition at line 693 of file BopParameters.pb.cs.
|
static |
Field number for the "max_deterministic_time" field.
Definition at line 659 of file BopParameters.pb.cs.
|
static |
Field number for the "max_lp_solve_for_feasibility_problems" field.
Definition at line 1750 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_backtracks_in_ls" field.
Definition at line 1133 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_conflicts_for_quick_check" field.
Definition at line 1224 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_conflicts_in_random_lns" field.
Definition at line 1072 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_conflicts_in_random_solution_generation" field.
Definition at line 1324 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_consecutive_failing_optimizer_calls" field.
Definition at line 725 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_explored_assignments_per_try_in_ls" field.
Definition at line 1354 of file BopParameters.pb.cs.
|
static |
Field number for the "max_num_broken_constraints_in_ls" field.
Definition at line 824 of file BopParameters.pb.cs.
|
static |
Field number for the "max_num_decisions_in_ls" field.
Definition at line 793 of file BopParameters.pb.cs.
|
static |
Field number for the "max_time_in_seconds" field.
Definition at line 628 of file BopParameters.pb.cs.
|
static |
Field number for the "number_of_solvers" field.
Definition at line 1482 of file BopParameters.pb.cs.
|
static |
Field number for the "num_bop_solvers_used_by_decomposition" field.
Definition at line 1653 of file BopParameters.pb.cs.
|
static |
Field number for the "num_random_lns_tries" field.
Definition at line 1103 of file BopParameters.pb.cs.
|
static |
Field number for the "num_relaxed_vars" field.
Definition at line 1042 of file BopParameters.pb.cs.
|
static |
Field number for the "prune_search_tree" field.
Definition at line 916 of file BopParameters.pb.cs.
|
static |
Field number for the "random_seed" field.
Definition at line 1007 of file BopParameters.pb.cs.
|
static |
Field number for the "relative_gap_limit" field.
Definition at line 759 of file BopParameters.pb.cs.
|
static |
Field number for the "solver_optimizer_sets" field.
Definition at line 1541 of file BopParameters.pb.cs.
|
static |
Field number for the "sort_constraints_by_num_terms" field.
Definition at line 946 of file BopParameters.pb.cs.
|
static |
Field number for the "synchronization_type" field.
Definition at line 1514 of file BopParameters.pb.cs.
|
static |
Field number for the "use_learned_binary_clauses_in_lp" field.
Definition at line 1452 of file BopParameters.pb.cs.
|
static |
Field number for the "use_lp_lns" field.
Definition at line 1164 of file BopParameters.pb.cs.
|
static |
Field number for the "use_lp_strong_branching" field.
Definition at line 1584 of file BopParameters.pb.cs.
|
static |
Field number for the "use_potential_one_flip_repairs_in_ls" field.
Definition at line 1420 of file BopParameters.pb.cs.
|
static |
Field number for the "use_random_lns" field.
Definition at line 977 of file BopParameters.pb.cs.
|
static |
Field number for the "use_sat_to_choose_lns_neighbourhood" field.
Definition at line 1194 of file BopParameters.pb.cs.
|
static |
Field number for the "use_symmetry" field.
Definition at line 1255 of file BopParameters.pb.cs.
|
static |
Field number for the "use_transposition_table_in_ls" field.
Definition at line 1387 of file BopParameters.pb.cs.
|
getset |
Compute estimated impact at each iteration when true; only once when false.
Definition at line 895 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 1697 of file BopParameters.pb.cs.
|
getset |
Only try to decompose the problem when the number of variables is greater than the threshold.
Definition at line 1632 of file BopParameters.pb.cs.
|
getset |
Definition at line 1564 of file BopParameters.pb.cs.
|
staticget |
Definition at line 558 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 1303 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 1729 of file BopParameters.pb.cs.
|
get |
Gets whether the "compute_estimated_impact" field is set.
Definition at line 905 of file BopParameters.pb.cs.
|
get |
Gets whether the "decomposed_problem_min_time_in_seconds" field is set.
Definition at line 1707 of file BopParameters.pb.cs.
|
get |
Gets whether the "decomposer_num_variables_threshold" field is set.
Definition at line 1642 of file BopParameters.pb.cs.
|
get |
Gets whether the "default_solver_optimizer_sets" field is set.
Definition at line 1573 of file BopParameters.pb.cs.
|
get |
Gets whether the "exploit_symmetry_in_sat_first_solution" field is set.
Definition at line 1313 of file BopParameters.pb.cs.
|
get |
Gets whether the "guided_sat_conflicts_chunk" field is set.
Definition at line 1739 of file BopParameters.pb.cs.
|
get |
Gets whether the "log_search_progress" field is set.
Definition at line 875 of file BopParameters.pb.cs.
|
get |
Gets whether the "lp_max_deterministic_time" field is set.
Definition at line 714 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_deterministic_time" field is set.
Definition at line 682 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_lp_solve_for_feasibility_problems" field is set.
Definition at line 1772 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_backtracks_in_ls" field is set.
Definition at line 1153 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_conflicts_for_quick_check" field is set.
Definition at line 1244 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_conflicts_in_random_lns" field is set.
Definition at line 1092 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_conflicts_in_random_solution_generation" field is set.
Definition at line 1343 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_consecutive_failing_optimizer_calls" field is set.
Definition at line 748 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_explored_assignments_per_try_in_ls" field is set.
Definition at line 1376 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_num_broken_constraints_in_ls" field is set.
Definition at line 845 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_num_decisions_in_ls" field is set.
Definition at line 813 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_time_in_seconds" field is set.
Definition at line 648 of file BopParameters.pb.cs.
|
get |
Gets whether the "number_of_solvers" field is set.
Definition at line 1503 of file BopParameters.pb.cs.
|
get |
Gets whether the "num_bop_solvers_used_by_decomposition" field is set.
Definition at line 1674 of file BopParameters.pb.cs.
|
get |
Gets whether the "num_random_lns_tries" field is set.
Definition at line 1122 of file BopParameters.pb.cs.
|
get |
Gets whether the "num_relaxed_vars" field is set.
Definition at line 1061 of file BopParameters.pb.cs.
|
get |
Gets whether the "prune_search_tree" field is set.
Definition at line 935 of file BopParameters.pb.cs.
|
get |
Gets whether the "random_seed" field is set.
Definition at line 1031 of file BopParameters.pb.cs.
|
get |
Gets whether the "relative_gap_limit" field is set.
Definition at line 782 of file BopParameters.pb.cs.
|
get |
Gets whether the "sort_constraints_by_num_terms" field is set.
Definition at line 966 of file BopParameters.pb.cs.
|
get |
Gets whether the "synchronization_type" field is set.
Definition at line 1530 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_learned_binary_clauses_in_lp" field is set.
Definition at line 1471 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_lp_lns" field is set.
Definition at line 1183 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_lp_strong_branching" field is set.
Definition at line 1611 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_potential_one_flip_repairs_in_ls" field is set.
Definition at line 1441 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_random_lns" field is set.
Definition at line 996 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_sat_to_choose_lns_neighbourhood" field is set.
Definition at line 1213 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_symmetry" field is set.
Definition at line 1279 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_transposition_table_in_ls" field is set.
Definition at line 1409 of file BopParameters.pb.cs.
|
getset |
Whether the solver should log the search progress to LOG(INFO).
Definition at line 865 of file BopParameters.pb.cs.
|
getset |
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).
Definition at line 704 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 672 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 1762 of file BopParameters.pb.cs.
|
getset |
Maximum number of backtracks times the number of variables in Local Search, ie. max num backtracks == max_number_of_backtracks_in_ls / num variables.
Definition at line 1143 of file BopParameters.pb.cs.
|
getset |
The number of conflicts the SAT solver has to solve a random LNS subproblem for the quick check of infeasibility.
Definition at line 1234 of file BopParameters.pb.cs.
|
getset |
The number of conflicts the SAT solver has to solve a random LNS subproblem.
Definition at line 1082 of file BopParameters.pb.cs.
|
getset |
The number of conflicts the SAT solver has to generate a random solution.
Definition at line 1333 of file BopParameters.pb.cs.
|
getset |
Maximum number of consecutive optimizer calls without improving the current solution. If this number is reached, the search will be aborted.
Definition at line 738 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 1366 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 835 of file BopParameters.pb.cs.
|
getset |
Maximum number of cascading decisions the solver might use to repair the current solution in the LS.
Definition at line 803 of file BopParameters.pb.cs.
|
getset |
Maximum time allowed in seconds to solve a problem. The counter will starts as soon as Solve() is called.
Definition at line 638 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 1493 of file BopParameters.pb.cs.
|
getset |
The number of BopSolver created (thread pool workers) used by the integral solver to solve a decomposed problem.
Definition at line 1664 of file BopParameters.pb.cs.
|
getset |
Number of tries in the random lns.
Definition at line 1112 of file BopParameters.pb.cs.
|
getset |
Number of variables to relax in the exhaustive Large Neighborhood Search.
Definition at line 1051 of file BopParameters.pb.cs.
|
staticget |
Definition at line 554 of file BopParameters.pb.cs.
|
getset |
Avoid exploring both branches (b, a, ...) and (a, b, ...).
Definition at line 925 of file BopParameters.pb.cs.
|
getset |
The seed used to initialize the random generator.
Definition at line 1021 of file BopParameters.pb.cs.
|
getset |
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)).
Definition at line 772 of file BopParameters.pb.cs.
|
get |
List of set of optimizers to be run by the solvers.
Definition at line 1553 of file BopParameters.pb.cs.
|
getset |
Sort constraints by increasing total number of terms instead of number of contributing terms.
Definition at line 956 of file BopParameters.pb.cs.
|
getset |
Definition at line 1520 of file BopParameters.pb.cs.
|
getset |
Whether we use the learned binary clauses in the Linear Relaxation.
Definition at line 1461 of file BopParameters.pb.cs.
|
getset |
Use Large Neighborhood Search based on the LP relaxation.
Definition at line 1173 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 1601 of file BopParameters.pb.cs.
|
getset |
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).
Definition at line 1431 of file BopParameters.pb.cs.
|
getset |
Use the random Large Neighborhood Search instead of the exhaustive one.
Definition at line 986 of file BopParameters.pb.cs.
|
getset |
Whether we use sat propagation to choose the lns neighbourhood.
Definition at line 1203 of file BopParameters.pb.cs.
|
getset |
If true, find and exploit the eventual symmetries of the problem.
Definition at line 1269 of file BopParameters.pb.cs.
|
getset |
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.
Definition at line 1399 of file BopParameters.pb.cs.