![]() |
Google OR-Tools v9.12
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 559 of file BopParameters.pb.cs.
|
inline |
Definition at line 586 of file BopParameters.pb.cs.
|
inline |
Definition at line 594 of file BopParameters.pb.cs.
|
inline |
Definition at line 2220 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "compute_estimated_impact" field.
Definition at line 927 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "decomposed_problem_min_time_in_seconds" field.
Definition at line 1729 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "decomposer_num_variables_threshold" field.
Definition at line 1664 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "default_solver_optimizer_sets" field.
Definition at line 1595 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "exploit_symmetry_in_sat_first_solution" field.
Definition at line 1335 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "guided_sat_conflicts_chunk" field.
Definition at line 1761 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "log_search_progress" field.
Definition at line 897 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "lp_max_deterministic_time" field.
Definition at line 736 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_deterministic_time" field.
Definition at line 704 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_lp_solve_for_feasibility_problems" field.
Definition at line 1794 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_backtracks_in_ls" field.
Definition at line 1175 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_conflicts_for_quick_check" field.
Definition at line 1266 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_conflicts_in_random_lns" field.
Definition at line 1114 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_conflicts_in_random_solution_generation" field.
Definition at line 1365 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_consecutive_failing_optimizer_calls" field.
Definition at line 770 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_explored_assignments_per_try_in_ls" field.
Definition at line 1398 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_num_broken_constraints_in_ls" field.
Definition at line 867 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_num_decisions_in_ls" field.
Definition at line 835 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "max_time_in_seconds" field.
Definition at line 670 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "number_of_solvers" field.
Definition at line 1525 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "num_bop_solvers_used_by_decomposition" field.
Definition at line 1696 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "num_random_lns_tries" field.
Definition at line 1144 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "num_relaxed_vars" field.
Definition at line 1083 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "prune_search_tree" field.
Definition at line 957 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "random_seed" field.
Definition at line 1053 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "relative_gap_limit" field.
Definition at line 804 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "sort_constraints_by_num_terms" field.
Definition at line 988 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "synchronization_type" field.
Definition at line 1552 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_learned_binary_clauses_in_lp" field.
Definition at line 1493 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_lp_lns" field.
Definition at line 1205 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_lp_strong_branching" field.
Definition at line 1633 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_potential_one_flip_repairs_in_ls" field.
Definition at line 1463 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_random_lns" field.
Definition at line 1018 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_sat_to_choose_lns_neighbourhood" field.
Definition at line 1235 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_symmetry" field.
Definition at line 1301 of file BopParameters.pb.cs.
|
inline |
Clears the value of the "use_transposition_table_in_ls" field.
Definition at line 1431 of file BopParameters.pb.cs.
|
inline |
Definition at line 639 of file BopParameters.pb.cs.
|
inline |
Definition at line 1806 of file BopParameters.pb.cs.
|
inline |
Definition at line 1800 of file BopParameters.pb.cs.
|
inline |
Definition at line 1855 of file BopParameters.pb.cs.
|
inline |
Definition at line 2339 of file BopParameters.pb.cs.
|
inline |
Definition at line 2457 of file BopParameters.pb.cs.
|
inline |
Definition at line 1902 of file BopParameters.pb.cs.
|
inline |
Definition at line 1908 of file BopParameters.pb.cs.
|
static |
Field number for the "compute_estimated_impact" field.
Definition at line 902 of file BopParameters.pb.cs.
|
static |
Field number for the "decomposed_problem_min_time_in_seconds" field.
Definition at line 1701 of file BopParameters.pb.cs.
|
static |
Field number for the "decomposer_num_variables_threshold" field.
Definition at line 1638 of file BopParameters.pb.cs.
|
static |
Field number for the "default_solver_optimizer_sets" field.
Definition at line 1574 of file BopParameters.pb.cs.
|
static |
Field number for the "exploit_symmetry_in_sat_first_solution" field.
Definition at line 1306 of file BopParameters.pb.cs.
|
static |
Field number for the "guided_sat_conflicts_chunk" field.
Definition at line 1734 of file BopParameters.pb.cs.
|
static |
Field number for the "log_search_progress" field.
Definition at line 872 of file BopParameters.pb.cs.
|
static |
Field number for the "lp_max_deterministic_time" field.
Definition at line 709 of file BopParameters.pb.cs.
|
static |
Field number for the "max_deterministic_time" field.
Definition at line 675 of file BopParameters.pb.cs.
|
static |
Field number for the "max_lp_solve_for_feasibility_problems" field.
Definition at line 1766 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_backtracks_in_ls" field.
Definition at line 1149 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_conflicts_for_quick_check" field.
Definition at line 1240 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_conflicts_in_random_lns" field.
Definition at line 1088 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_conflicts_in_random_solution_generation" field.
Definition at line 1340 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_consecutive_failing_optimizer_calls" field.
Definition at line 741 of file BopParameters.pb.cs.
|
static |
Field number for the "max_number_of_explored_assignments_per_try_in_ls" field.
Definition at line 1370 of file BopParameters.pb.cs.
|
static |
Field number for the "max_num_broken_constraints_in_ls" field.
Definition at line 840 of file BopParameters.pb.cs.
|
static |
Field number for the "max_num_decisions_in_ls" field.
Definition at line 809 of file BopParameters.pb.cs.
|
static |
Field number for the "max_time_in_seconds" field.
Definition at line 644 of file BopParameters.pb.cs.
|
static |
Field number for the "number_of_solvers" field.
Definition at line 1498 of file BopParameters.pb.cs.
|
static |
Field number for the "num_bop_solvers_used_by_decomposition" field.
Definition at line 1669 of file BopParameters.pb.cs.
|
static |
Field number for the "num_random_lns_tries" field.
Definition at line 1119 of file BopParameters.pb.cs.
|
static |
Field number for the "num_relaxed_vars" field.
Definition at line 1058 of file BopParameters.pb.cs.
|
static |
Field number for the "prune_search_tree" field.
Definition at line 932 of file BopParameters.pb.cs.
|
static |
Field number for the "random_seed" field.
Definition at line 1023 of file BopParameters.pb.cs.
|
static |
Field number for the "relative_gap_limit" field.
Definition at line 775 of file BopParameters.pb.cs.
|
static |
Field number for the "solver_optimizer_sets" field.
Definition at line 1557 of file BopParameters.pb.cs.
|
static |
Field number for the "sort_constraints_by_num_terms" field.
Definition at line 962 of file BopParameters.pb.cs.
|
static |
Field number for the "synchronization_type" field.
Definition at line 1530 of file BopParameters.pb.cs.
|
static |
Field number for the "use_learned_binary_clauses_in_lp" field.
Definition at line 1468 of file BopParameters.pb.cs.
|
static |
Field number for the "use_lp_lns" field.
Definition at line 1180 of file BopParameters.pb.cs.
|
static |
Field number for the "use_lp_strong_branching" field.
Definition at line 1600 of file BopParameters.pb.cs.
|
static |
Field number for the "use_potential_one_flip_repairs_in_ls" field.
Definition at line 1436 of file BopParameters.pb.cs.
|
static |
Field number for the "use_random_lns" field.
Definition at line 993 of file BopParameters.pb.cs.
|
static |
Field number for the "use_sat_to_choose_lns_neighbourhood" field.
Definition at line 1210 of file BopParameters.pb.cs.
|
static |
Field number for the "use_symmetry" field.
Definition at line 1271 of file BopParameters.pb.cs.
|
static |
Field number for the "use_transposition_table_in_ls" field.
Definition at line 1403 of file BopParameters.pb.cs.
|
getset |
Compute estimated impact at each iteration when true; only once when false.
Definition at line 911 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 1713 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 1648 of file BopParameters.pb.cs.
|
getset |
Definition at line 1580 of file BopParameters.pb.cs.
|
staticget |
Definition at line 574 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 1319 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 1745 of file BopParameters.pb.cs.
|
get |
Gets whether the "compute_estimated_impact" field is set.
Definition at line 921 of file BopParameters.pb.cs.
|
get |
Gets whether the "decomposed_problem_min_time_in_seconds" field is set.
Definition at line 1723 of file BopParameters.pb.cs.
|
get |
Gets whether the "decomposer_num_variables_threshold" field is set.
Definition at line 1658 of file BopParameters.pb.cs.
|
get |
Gets whether the "default_solver_optimizer_sets" field is set.
Definition at line 1589 of file BopParameters.pb.cs.
|
get |
Gets whether the "exploit_symmetry_in_sat_first_solution" field is set.
Definition at line 1329 of file BopParameters.pb.cs.
|
get |
Gets whether the "guided_sat_conflicts_chunk" field is set.
Definition at line 1755 of file BopParameters.pb.cs.
|
get |
Gets whether the "log_search_progress" field is set.
Definition at line 891 of file BopParameters.pb.cs.
|
get |
Gets whether the "lp_max_deterministic_time" field is set.
Definition at line 730 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_deterministic_time" field is set.
Definition at line 698 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_lp_solve_for_feasibility_problems" field is set.
Definition at line 1788 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_backtracks_in_ls" field is set.
Definition at line 1169 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_conflicts_for_quick_check" field is set.
Definition at line 1260 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_conflicts_in_random_lns" field is set.
Definition at line 1108 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_conflicts_in_random_solution_generation" field is set.
Definition at line 1359 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_consecutive_failing_optimizer_calls" field is set.
Definition at line 764 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_number_of_explored_assignments_per_try_in_ls" field is set.
Definition at line 1392 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_num_broken_constraints_in_ls" field is set.
Definition at line 861 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_num_decisions_in_ls" field is set.
Definition at line 829 of file BopParameters.pb.cs.
|
get |
Gets whether the "max_time_in_seconds" field is set.
Definition at line 664 of file BopParameters.pb.cs.
|
get |
Gets whether the "number_of_solvers" field is set.
Definition at line 1519 of file BopParameters.pb.cs.
|
get |
Gets whether the "num_bop_solvers_used_by_decomposition" field is set.
Definition at line 1690 of file BopParameters.pb.cs.
|
get |
Gets whether the "num_random_lns_tries" field is set.
Definition at line 1138 of file BopParameters.pb.cs.
|
get |
Gets whether the "num_relaxed_vars" field is set.
Definition at line 1077 of file BopParameters.pb.cs.
|
get |
Gets whether the "prune_search_tree" field is set.
Definition at line 951 of file BopParameters.pb.cs.
|
get |
Gets whether the "random_seed" field is set.
Definition at line 1047 of file BopParameters.pb.cs.
|
get |
Gets whether the "relative_gap_limit" field is set.
Definition at line 798 of file BopParameters.pb.cs.
|
get |
Gets whether the "sort_constraints_by_num_terms" field is set.
Definition at line 982 of file BopParameters.pb.cs.
|
get |
Gets whether the "synchronization_type" field is set.
Definition at line 1546 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_learned_binary_clauses_in_lp" field is set.
Definition at line 1487 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_lp_lns" field is set.
Definition at line 1199 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_lp_strong_branching" field is set.
Definition at line 1627 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_potential_one_flip_repairs_in_ls" field is set.
Definition at line 1457 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_random_lns" field is set.
Definition at line 1012 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_sat_to_choose_lns_neighbourhood" field is set.
Definition at line 1229 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_symmetry" field is set.
Definition at line 1295 of file BopParameters.pb.cs.
|
get |
Gets whether the "use_transposition_table_in_ls" field is set.
Definition at line 1425 of file BopParameters.pb.cs.
|
getset |
Whether the solver should log the search progress to LOG(INFO).
Definition at line 881 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 720 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 688 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 1778 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 1159 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 1250 of file BopParameters.pb.cs.
|
getset |
The number of conflicts the SAT solver has to solve a random LNS subproblem.
Definition at line 1098 of file BopParameters.pb.cs.
|
getset |
The number of conflicts the SAT solver has to generate a random solution.
Definition at line 1349 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 754 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 1382 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 851 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 819 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 654 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 1509 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 1680 of file BopParameters.pb.cs.
|
getset |
Number of tries in the random lns.
Definition at line 1128 of file BopParameters.pb.cs.
|
getset |
Number of variables to relax in the exhaustive Large Neighborhood Search.
Definition at line 1067 of file BopParameters.pb.cs.
|
staticget |
Definition at line 570 of file BopParameters.pb.cs.
|
getset |
Avoid exploring both branches (b, a, ...) and (a, b, ...).
Definition at line 941 of file BopParameters.pb.cs.
|
getset |
The seed used to initialize the random generator.
Definition at line 1037 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 788 of file BopParameters.pb.cs.
|
get |
List of set of optimizers to be run by the solvers.
Definition at line 1569 of file BopParameters.pb.cs.
|
getset |
Sort constraints by increasing total number of terms instead of number of contributing terms.
Definition at line 972 of file BopParameters.pb.cs.
|
getset |
Definition at line 1536 of file BopParameters.pb.cs.
|
getset |
Whether we use the learned binary clauses in the Linear Relaxation.
Definition at line 1477 of file BopParameters.pb.cs.
|
getset |
Use Large Neighborhood Search based on the LP relaxation.
Definition at line 1189 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 1617 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 1447 of file BopParameters.pb.cs.
|
getset |
Use the random Large Neighborhood Search instead of the exhaustive one.
Definition at line 1002 of file BopParameters.pb.cs.
|
getset |
Whether we use sat propagation to choose the lns neighbourhood.
Definition at line 1219 of file BopParameters.pb.cs.
|
getset |
If true, find and exploit the eventual symmetries of the problem.
Definition at line 1285 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 1415 of file BopParameters.pb.cs.