Google OR-Tools v9.9
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
Google.OrTools.Bop.BopParameters Class Referencesealed

Contains the definitions for all the bop algorithm parameters and their default values. More...

Inheritance diagram for Google.OrTools.Bop.BopParameters:

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< BopParametersParser [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.
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ BopParameters() [1/2]

Google.OrTools.Bop.BopParameters.BopParameters ( )
inline

Definition at line 570 of file BopParameters.pb.cs.

◆ BopParameters() [2/2]

Google.OrTools.Bop.BopParameters.BopParameters ( BopParameters other)
inline

Definition at line 578 of file BopParameters.pb.cs.

Member Function Documentation

◆ CalculateSize()

int Google.OrTools.Bop.BopParameters.CalculateSize ( )
inline

Definition at line 2204 of file BopParameters.pb.cs.

◆ ClearComputeEstimatedImpact()

void Google.OrTools.Bop.BopParameters.ClearComputeEstimatedImpact ( )
inline

Clears the value of the "compute_estimated_impact" field.

Definition at line 911 of file BopParameters.pb.cs.

◆ ClearDecomposedProblemMinTimeInSeconds()

void Google.OrTools.Bop.BopParameters.ClearDecomposedProblemMinTimeInSeconds ( )
inline

Clears the value of the "decomposed_problem_min_time_in_seconds" field.

Definition at line 1713 of file BopParameters.pb.cs.

◆ ClearDecomposerNumVariablesThreshold()

void Google.OrTools.Bop.BopParameters.ClearDecomposerNumVariablesThreshold ( )
inline

Clears the value of the "decomposer_num_variables_threshold" field.

Definition at line 1648 of file BopParameters.pb.cs.

◆ ClearDefaultSolverOptimizerSets()

void Google.OrTools.Bop.BopParameters.ClearDefaultSolverOptimizerSets ( )
inline

Clears the value of the "default_solver_optimizer_sets" field.

Definition at line 1579 of file BopParameters.pb.cs.

◆ ClearExploitSymmetryInSatFirstSolution()

void Google.OrTools.Bop.BopParameters.ClearExploitSymmetryInSatFirstSolution ( )
inline

Clears the value of the "exploit_symmetry_in_sat_first_solution" field.

Definition at line 1319 of file BopParameters.pb.cs.

◆ ClearGuidedSatConflictsChunk()

void Google.OrTools.Bop.BopParameters.ClearGuidedSatConflictsChunk ( )
inline

Clears the value of the "guided_sat_conflicts_chunk" field.

Definition at line 1745 of file BopParameters.pb.cs.

◆ ClearLogSearchProgress()

void Google.OrTools.Bop.BopParameters.ClearLogSearchProgress ( )
inline

Clears the value of the "log_search_progress" field.

Definition at line 881 of file BopParameters.pb.cs.

◆ ClearLpMaxDeterministicTime()

void Google.OrTools.Bop.BopParameters.ClearLpMaxDeterministicTime ( )
inline

Clears the value of the "lp_max_deterministic_time" field.

Definition at line 720 of file BopParameters.pb.cs.

◆ ClearMaxDeterministicTime()

void Google.OrTools.Bop.BopParameters.ClearMaxDeterministicTime ( )
inline

Clears the value of the "max_deterministic_time" field.

Definition at line 688 of file BopParameters.pb.cs.

◆ ClearMaxLpSolveForFeasibilityProblems()

void Google.OrTools.Bop.BopParameters.ClearMaxLpSolveForFeasibilityProblems ( )
inline

Clears the value of the "max_lp_solve_for_feasibility_problems" field.

Definition at line 1778 of file BopParameters.pb.cs.

◆ ClearMaxNumberOfBacktracksInLs()

void Google.OrTools.Bop.BopParameters.ClearMaxNumberOfBacktracksInLs ( )
inline

Clears the value of the "max_number_of_backtracks_in_ls" field.

Definition at line 1159 of file BopParameters.pb.cs.

◆ ClearMaxNumberOfConflictsForQuickCheck()

void Google.OrTools.Bop.BopParameters.ClearMaxNumberOfConflictsForQuickCheck ( )
inline

Clears the value of the "max_number_of_conflicts_for_quick_check" field.

Definition at line 1250 of file BopParameters.pb.cs.

◆ ClearMaxNumberOfConflictsInRandomLns()

void Google.OrTools.Bop.BopParameters.ClearMaxNumberOfConflictsInRandomLns ( )
inline

Clears the value of the "max_number_of_conflicts_in_random_lns" field.

Definition at line 1098 of file BopParameters.pb.cs.

◆ ClearMaxNumberOfConflictsInRandomSolutionGeneration()

void Google.OrTools.Bop.BopParameters.ClearMaxNumberOfConflictsInRandomSolutionGeneration ( )
inline

Clears the value of the "max_number_of_conflicts_in_random_solution_generation" field.

Definition at line 1349 of file BopParameters.pb.cs.

◆ ClearMaxNumberOfConsecutiveFailingOptimizerCalls()

void Google.OrTools.Bop.BopParameters.ClearMaxNumberOfConsecutiveFailingOptimizerCalls ( )
inline

Clears the value of the "max_number_of_consecutive_failing_optimizer_calls" field.

Definition at line 754 of file BopParameters.pb.cs.

◆ ClearMaxNumberOfExploredAssignmentsPerTryInLs()

void Google.OrTools.Bop.BopParameters.ClearMaxNumberOfExploredAssignmentsPerTryInLs ( )
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.

◆ ClearMaxNumBrokenConstraintsInLs()

void Google.OrTools.Bop.BopParameters.ClearMaxNumBrokenConstraintsInLs ( )
inline

Clears the value of the "max_num_broken_constraints_in_ls" field.

Definition at line 851 of file BopParameters.pb.cs.

◆ ClearMaxNumDecisionsInLs()

void Google.OrTools.Bop.BopParameters.ClearMaxNumDecisionsInLs ( )
inline

Clears the value of the "max_num_decisions_in_ls" field.

Definition at line 819 of file BopParameters.pb.cs.

◆ ClearMaxTimeInSeconds()

void Google.OrTools.Bop.BopParameters.ClearMaxTimeInSeconds ( )
inline

Clears the value of the "max_time_in_seconds" field.

Definition at line 654 of file BopParameters.pb.cs.

◆ ClearNumberOfSolvers()

void Google.OrTools.Bop.BopParameters.ClearNumberOfSolvers ( )
inline

Clears the value of the "number_of_solvers" field.

Definition at line 1509 of file BopParameters.pb.cs.

◆ ClearNumBopSolversUsedByDecomposition()

void Google.OrTools.Bop.BopParameters.ClearNumBopSolversUsedByDecomposition ( )
inline

Clears the value of the "num_bop_solvers_used_by_decomposition" field.

Definition at line 1680 of file BopParameters.pb.cs.

◆ ClearNumRandomLnsTries()

void Google.OrTools.Bop.BopParameters.ClearNumRandomLnsTries ( )
inline

Clears the value of the "num_random_lns_tries" field.

Definition at line 1128 of file BopParameters.pb.cs.

◆ ClearNumRelaxedVars()

void Google.OrTools.Bop.BopParameters.ClearNumRelaxedVars ( )
inline

Clears the value of the "num_relaxed_vars" field.

Definition at line 1067 of file BopParameters.pb.cs.

◆ ClearPruneSearchTree()

void Google.OrTools.Bop.BopParameters.ClearPruneSearchTree ( )
inline

Clears the value of the "prune_search_tree" field.

Definition at line 941 of file BopParameters.pb.cs.

◆ ClearRandomSeed()

void Google.OrTools.Bop.BopParameters.ClearRandomSeed ( )
inline

Clears the value of the "random_seed" field.

Definition at line 1037 of file BopParameters.pb.cs.

◆ ClearRelativeGapLimit()

void Google.OrTools.Bop.BopParameters.ClearRelativeGapLimit ( )
inline

Clears the value of the "relative_gap_limit" field.

Definition at line 788 of file BopParameters.pb.cs.

◆ ClearSortConstraintsByNumTerms()

void Google.OrTools.Bop.BopParameters.ClearSortConstraintsByNumTerms ( )
inline

Clears the value of the "sort_constraints_by_num_terms" field.

Definition at line 972 of file BopParameters.pb.cs.

◆ ClearSynchronizationType()

void Google.OrTools.Bop.BopParameters.ClearSynchronizationType ( )
inline

Clears the value of the "synchronization_type" field.

Definition at line 1536 of file BopParameters.pb.cs.

◆ ClearUseLearnedBinaryClausesInLp()

void Google.OrTools.Bop.BopParameters.ClearUseLearnedBinaryClausesInLp ( )
inline

Clears the value of the "use_learned_binary_clauses_in_lp" field.

Definition at line 1477 of file BopParameters.pb.cs.

◆ ClearUseLpLns()

void Google.OrTools.Bop.BopParameters.ClearUseLpLns ( )
inline

Clears the value of the "use_lp_lns" field.

Definition at line 1189 of file BopParameters.pb.cs.

◆ ClearUseLpStrongBranching()

void Google.OrTools.Bop.BopParameters.ClearUseLpStrongBranching ( )
inline

Clears the value of the "use_lp_strong_branching" field.

Definition at line 1617 of file BopParameters.pb.cs.

◆ ClearUsePotentialOneFlipRepairsInLs()

void Google.OrTools.Bop.BopParameters.ClearUsePotentialOneFlipRepairsInLs ( )
inline

Clears the value of the "use_potential_one_flip_repairs_in_ls" field.

Definition at line 1447 of file BopParameters.pb.cs.

◆ ClearUseRandomLns()

void Google.OrTools.Bop.BopParameters.ClearUseRandomLns ( )
inline

Clears the value of the "use_random_lns" field.

Definition at line 1002 of file BopParameters.pb.cs.

◆ ClearUseSatToChooseLnsNeighbourhood()

void Google.OrTools.Bop.BopParameters.ClearUseSatToChooseLnsNeighbourhood ( )
inline

Clears the value of the "use_sat_to_choose_lns_neighbourhood" field.

Definition at line 1219 of file BopParameters.pb.cs.

◆ ClearUseSymmetry()

void Google.OrTools.Bop.BopParameters.ClearUseSymmetry ( )
inline

Clears the value of the "use_symmetry" field.

Definition at line 1285 of file BopParameters.pb.cs.

◆ ClearUseTranspositionTableInLs()

void Google.OrTools.Bop.BopParameters.ClearUseTranspositionTableInLs ( )
inline

Clears the value of the "use_transposition_table_in_ls" field.

Definition at line 1415 of file BopParameters.pb.cs.

◆ Clone()

BopParameters Google.OrTools.Bop.BopParameters.Clone ( )
inline

Definition at line 623 of file BopParameters.pb.cs.

◆ Equals() [1/2]

bool Google.OrTools.Bop.BopParameters.Equals ( BopParameters other)
inline

Definition at line 1790 of file BopParameters.pb.cs.

◆ Equals() [2/2]

override bool Google.OrTools.Bop.BopParameters.Equals ( object other)
inline

Definition at line 1784 of file BopParameters.pb.cs.

◆ GetHashCode()

override int Google.OrTools.Bop.BopParameters.GetHashCode ( )
inline

Definition at line 1839 of file BopParameters.pb.cs.

◆ MergeFrom() [1/2]

void Google.OrTools.Bop.BopParameters.MergeFrom ( BopParameters other)
inline

Definition at line 2323 of file BopParameters.pb.cs.

◆ MergeFrom() [2/2]

void Google.OrTools.Bop.BopParameters.MergeFrom ( pb::CodedInputStream input)
inline

Definition at line 2441 of file BopParameters.pb.cs.

◆ ToString()

override string Google.OrTools.Bop.BopParameters.ToString ( )
inline

Definition at line 1886 of file BopParameters.pb.cs.

◆ WriteTo()

void Google.OrTools.Bop.BopParameters.WriteTo ( pb::CodedOutputStream output)
inline

Definition at line 1892 of file BopParameters.pb.cs.

Member Data Documentation

◆ ComputeEstimatedImpactFieldNumber

const int Google.OrTools.Bop.BopParameters.ComputeEstimatedImpactFieldNumber = 3
static

Field number for the "compute_estimated_impact" field.

Definition at line 886 of file BopParameters.pb.cs.

◆ DecomposedProblemMinTimeInSecondsFieldNumber

const int Google.OrTools.Bop.BopParameters.DecomposedProblemMinTimeInSecondsFieldNumber = 36
static

Field number for the "decomposed_problem_min_time_in_seconds" field.

Definition at line 1685 of file BopParameters.pb.cs.

◆ DecomposerNumVariablesThresholdFieldNumber

const int Google.OrTools.Bop.BopParameters.DecomposerNumVariablesThresholdFieldNumber = 30
static

Field number for the "decomposer_num_variables_threshold" field.

Definition at line 1622 of file BopParameters.pb.cs.

◆ DefaultSolverOptimizerSetsFieldNumber

const int Google.OrTools.Bop.BopParameters.DefaultSolverOptimizerSetsFieldNumber = 33
static

Field number for the "default_solver_optimizer_sets" field.

Definition at line 1558 of file BopParameters.pb.cs.

◆ ExploitSymmetryInSatFirstSolutionFieldNumber

const int Google.OrTools.Bop.BopParameters.ExploitSymmetryInSatFirstSolutionFieldNumber = 40
static

Field number for the "exploit_symmetry_in_sat_first_solution" field.

Definition at line 1290 of file BopParameters.pb.cs.

◆ GuidedSatConflictsChunkFieldNumber

const int Google.OrTools.Bop.BopParameters.GuidedSatConflictsChunkFieldNumber = 34
static

Field number for the "guided_sat_conflicts_chunk" field.

Definition at line 1718 of file BopParameters.pb.cs.

◆ LogSearchProgressFieldNumber

const int Google.OrTools.Bop.BopParameters.LogSearchProgressFieldNumber = 14
static

Field number for the "log_search_progress" field.

Definition at line 856 of file BopParameters.pb.cs.

◆ LpMaxDeterministicTimeFieldNumber

const int Google.OrTools.Bop.BopParameters.LpMaxDeterministicTimeFieldNumber = 37
static

Field number for the "lp_max_deterministic_time" field.

Definition at line 693 of file BopParameters.pb.cs.

◆ MaxDeterministicTimeFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxDeterministicTimeFieldNumber = 27
static

Field number for the "max_deterministic_time" field.

Definition at line 659 of file BopParameters.pb.cs.

◆ MaxLpSolveForFeasibilityProblemsFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxLpSolveForFeasibilityProblemsFieldNumber = 41
static

Field number for the "max_lp_solve_for_feasibility_problems" field.

Definition at line 1750 of file BopParameters.pb.cs.

◆ MaxNumberOfBacktracksInLsFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxNumberOfBacktracksInLsFieldNumber = 11
static

Field number for the "max_number_of_backtracks_in_ls" field.

Definition at line 1133 of file BopParameters.pb.cs.

◆ MaxNumberOfConflictsForQuickCheckFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxNumberOfConflictsForQuickCheckFieldNumber = 16
static

Field number for the "max_number_of_conflicts_for_quick_check" field.

Definition at line 1224 of file BopParameters.pb.cs.

◆ MaxNumberOfConflictsInRandomLnsFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxNumberOfConflictsInRandomLnsFieldNumber = 9
static

Field number for the "max_number_of_conflicts_in_random_lns" field.

Definition at line 1072 of file BopParameters.pb.cs.

◆ MaxNumberOfConflictsInRandomSolutionGenerationFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxNumberOfConflictsInRandomSolutionGenerationFieldNumber = 20
static

Field number for the "max_number_of_conflicts_in_random_solution_generation" field.

Definition at line 1324 of file BopParameters.pb.cs.

◆ MaxNumberOfConsecutiveFailingOptimizerCallsFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxNumberOfConsecutiveFailingOptimizerCallsFieldNumber = 35
static

Field number for the "max_number_of_consecutive_failing_optimizer_calls" field.

Definition at line 725 of file BopParameters.pb.cs.

◆ MaxNumberOfExploredAssignmentsPerTryInLsFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxNumberOfExploredAssignmentsPerTryInLsFieldNumber = 21
static

Field number for the "max_number_of_explored_assignments_per_try_in_ls" field.

Definition at line 1354 of file BopParameters.pb.cs.

◆ MaxNumBrokenConstraintsInLsFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxNumBrokenConstraintsInLsFieldNumber = 38
static

Field number for the "max_num_broken_constraints_in_ls" field.

Definition at line 824 of file BopParameters.pb.cs.

◆ MaxNumDecisionsInLsFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxNumDecisionsInLsFieldNumber = 2
static

Field number for the "max_num_decisions_in_ls" field.

Definition at line 793 of file BopParameters.pb.cs.

◆ MaxTimeInSecondsFieldNumber

const int Google.OrTools.Bop.BopParameters.MaxTimeInSecondsFieldNumber = 1
static

Field number for the "max_time_in_seconds" field.

Definition at line 628 of file BopParameters.pb.cs.

◆ NumberOfSolversFieldNumber

const int Google.OrTools.Bop.BopParameters.NumberOfSolversFieldNumber = 24
static

Field number for the "number_of_solvers" field.

Definition at line 1482 of file BopParameters.pb.cs.

◆ NumBopSolversUsedByDecompositionFieldNumber

const int Google.OrTools.Bop.BopParameters.NumBopSolversUsedByDecompositionFieldNumber = 31
static

Field number for the "num_bop_solvers_used_by_decomposition" field.

Definition at line 1653 of file BopParameters.pb.cs.

◆ NumRandomLnsTriesFieldNumber

const int Google.OrTools.Bop.BopParameters.NumRandomLnsTriesFieldNumber = 10
static

Field number for the "num_random_lns_tries" field.

Definition at line 1103 of file BopParameters.pb.cs.

◆ NumRelaxedVarsFieldNumber

const int Google.OrTools.Bop.BopParameters.NumRelaxedVarsFieldNumber = 8
static

Field number for the "num_relaxed_vars" field.

Definition at line 1042 of file BopParameters.pb.cs.

◆ PruneSearchTreeFieldNumber

const int Google.OrTools.Bop.BopParameters.PruneSearchTreeFieldNumber = 4
static

Field number for the "prune_search_tree" field.

Definition at line 916 of file BopParameters.pb.cs.

◆ RandomSeedFieldNumber

const int Google.OrTools.Bop.BopParameters.RandomSeedFieldNumber = 7
static

Field number for the "random_seed" field.

Definition at line 1007 of file BopParameters.pb.cs.

◆ RelativeGapLimitFieldNumber

const int Google.OrTools.Bop.BopParameters.RelativeGapLimitFieldNumber = 28
static

Field number for the "relative_gap_limit" field.

Definition at line 759 of file BopParameters.pb.cs.

◆ SolverOptimizerSetsFieldNumber

const int Google.OrTools.Bop.BopParameters.SolverOptimizerSetsFieldNumber = 26
static

Field number for the "solver_optimizer_sets" field.

Definition at line 1541 of file BopParameters.pb.cs.

◆ SortConstraintsByNumTermsFieldNumber

const int Google.OrTools.Bop.BopParameters.SortConstraintsByNumTermsFieldNumber = 5
static

Field number for the "sort_constraints_by_num_terms" field.

Definition at line 946 of file BopParameters.pb.cs.

◆ SynchronizationTypeFieldNumber

const int Google.OrTools.Bop.BopParameters.SynchronizationTypeFieldNumber = 25
static

Field number for the "synchronization_type" field.

Definition at line 1514 of file BopParameters.pb.cs.

◆ UseLearnedBinaryClausesInLpFieldNumber

const int Google.OrTools.Bop.BopParameters.UseLearnedBinaryClausesInLpFieldNumber = 23
static

Field number for the "use_learned_binary_clauses_in_lp" field.

Definition at line 1452 of file BopParameters.pb.cs.

◆ UseLpLnsFieldNumber

const int Google.OrTools.Bop.BopParameters.UseLpLnsFieldNumber = 12
static

Field number for the "use_lp_lns" field.

Definition at line 1164 of file BopParameters.pb.cs.

◆ UseLpStrongBranchingFieldNumber

const int Google.OrTools.Bop.BopParameters.UseLpStrongBranchingFieldNumber = 29
static

Field number for the "use_lp_strong_branching" field.

Definition at line 1584 of file BopParameters.pb.cs.

◆ UsePotentialOneFlipRepairsInLsFieldNumber

const int Google.OrTools.Bop.BopParameters.UsePotentialOneFlipRepairsInLsFieldNumber = 39
static

Field number for the "use_potential_one_flip_repairs_in_ls" field.

Definition at line 1420 of file BopParameters.pb.cs.

◆ UseRandomLnsFieldNumber

const int Google.OrTools.Bop.BopParameters.UseRandomLnsFieldNumber = 6
static

Field number for the "use_random_lns" field.

Definition at line 977 of file BopParameters.pb.cs.

◆ UseSatToChooseLnsNeighbourhoodFieldNumber

const int Google.OrTools.Bop.BopParameters.UseSatToChooseLnsNeighbourhoodFieldNumber = 15
static

Field number for the "use_sat_to_choose_lns_neighbourhood" field.

Definition at line 1194 of file BopParameters.pb.cs.

◆ UseSymmetryFieldNumber

const int Google.OrTools.Bop.BopParameters.UseSymmetryFieldNumber = 17
static

Field number for the "use_symmetry" field.

Definition at line 1255 of file BopParameters.pb.cs.

◆ UseTranspositionTableInLsFieldNumber

const int Google.OrTools.Bop.BopParameters.UseTranspositionTableInLsFieldNumber = 22
static

Field number for the "use_transposition_table_in_ls" field.

Definition at line 1387 of file BopParameters.pb.cs.

Property Documentation

◆ ComputeEstimatedImpact

bool Google.OrTools.Bop.BopParameters.ComputeEstimatedImpact
getset

Compute estimated impact at each iteration when true; only once when false.

Definition at line 895 of file BopParameters.pb.cs.

◆ DecomposedProblemMinTimeInSeconds

double Google.OrTools.Bop.BopParameters.DecomposedProblemMinTimeInSeconds
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.

◆ DecomposerNumVariablesThreshold

int Google.OrTools.Bop.BopParameters.DecomposerNumVariablesThreshold
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.

◆ DefaultSolverOptimizerSets

string Google.OrTools.Bop.BopParameters.DefaultSolverOptimizerSets
getset

Definition at line 1564 of file BopParameters.pb.cs.

◆ Descriptor

pbr.MessageDescriptor Google.OrTools.Bop.BopParameters.Descriptor
staticget

Definition at line 558 of file BopParameters.pb.cs.

◆ ExploitSymmetryInSatFirstSolution

bool Google.OrTools.Bop.BopParameters.ExploitSymmetryInSatFirstSolution
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.

◆ GuidedSatConflictsChunk

int Google.OrTools.Bop.BopParameters.GuidedSatConflictsChunk
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.

◆ HasComputeEstimatedImpact

bool Google.OrTools.Bop.BopParameters.HasComputeEstimatedImpact
get

Gets whether the "compute_estimated_impact" field is set.

Definition at line 905 of file BopParameters.pb.cs.

◆ HasDecomposedProblemMinTimeInSeconds

bool Google.OrTools.Bop.BopParameters.HasDecomposedProblemMinTimeInSeconds
get

Gets whether the "decomposed_problem_min_time_in_seconds" field is set.

Definition at line 1707 of file BopParameters.pb.cs.

◆ HasDecomposerNumVariablesThreshold

bool Google.OrTools.Bop.BopParameters.HasDecomposerNumVariablesThreshold
get

Gets whether the "decomposer_num_variables_threshold" field is set.

Definition at line 1642 of file BopParameters.pb.cs.

◆ HasDefaultSolverOptimizerSets

bool Google.OrTools.Bop.BopParameters.HasDefaultSolverOptimizerSets
get

Gets whether the "default_solver_optimizer_sets" field is set.

Definition at line 1573 of file BopParameters.pb.cs.

◆ HasExploitSymmetryInSatFirstSolution

bool Google.OrTools.Bop.BopParameters.HasExploitSymmetryInSatFirstSolution
get

Gets whether the "exploit_symmetry_in_sat_first_solution" field is set.

Definition at line 1313 of file BopParameters.pb.cs.

◆ HasGuidedSatConflictsChunk

bool Google.OrTools.Bop.BopParameters.HasGuidedSatConflictsChunk
get

Gets whether the "guided_sat_conflicts_chunk" field is set.

Definition at line 1739 of file BopParameters.pb.cs.

◆ HasLogSearchProgress

bool Google.OrTools.Bop.BopParameters.HasLogSearchProgress
get

Gets whether the "log_search_progress" field is set.

Definition at line 875 of file BopParameters.pb.cs.

◆ HasLpMaxDeterministicTime

bool Google.OrTools.Bop.BopParameters.HasLpMaxDeterministicTime
get

Gets whether the "lp_max_deterministic_time" field is set.

Definition at line 714 of file BopParameters.pb.cs.

◆ HasMaxDeterministicTime

bool Google.OrTools.Bop.BopParameters.HasMaxDeterministicTime
get

Gets whether the "max_deterministic_time" field is set.

Definition at line 682 of file BopParameters.pb.cs.

◆ HasMaxLpSolveForFeasibilityProblems

bool Google.OrTools.Bop.BopParameters.HasMaxLpSolveForFeasibilityProblems
get

Gets whether the "max_lp_solve_for_feasibility_problems" field is set.

Definition at line 1772 of file BopParameters.pb.cs.

◆ HasMaxNumberOfBacktracksInLs

bool Google.OrTools.Bop.BopParameters.HasMaxNumberOfBacktracksInLs
get

Gets whether the "max_number_of_backtracks_in_ls" field is set.

Definition at line 1153 of file BopParameters.pb.cs.

◆ HasMaxNumberOfConflictsForQuickCheck

bool Google.OrTools.Bop.BopParameters.HasMaxNumberOfConflictsForQuickCheck
get

Gets whether the "max_number_of_conflicts_for_quick_check" field is set.

Definition at line 1244 of file BopParameters.pb.cs.

◆ HasMaxNumberOfConflictsInRandomLns

bool Google.OrTools.Bop.BopParameters.HasMaxNumberOfConflictsInRandomLns
get

Gets whether the "max_number_of_conflicts_in_random_lns" field is set.

Definition at line 1092 of file BopParameters.pb.cs.

◆ HasMaxNumberOfConflictsInRandomSolutionGeneration

bool Google.OrTools.Bop.BopParameters.HasMaxNumberOfConflictsInRandomSolutionGeneration
get

Gets whether the "max_number_of_conflicts_in_random_solution_generation" field is set.

Definition at line 1343 of file BopParameters.pb.cs.

◆ HasMaxNumberOfConsecutiveFailingOptimizerCalls

bool Google.OrTools.Bop.BopParameters.HasMaxNumberOfConsecutiveFailingOptimizerCalls
get

Gets whether the "max_number_of_consecutive_failing_optimizer_calls" field is set.

Definition at line 748 of file BopParameters.pb.cs.

◆ HasMaxNumberOfExploredAssignmentsPerTryInLs

bool Google.OrTools.Bop.BopParameters.HasMaxNumberOfExploredAssignmentsPerTryInLs
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.

◆ HasMaxNumBrokenConstraintsInLs

bool Google.OrTools.Bop.BopParameters.HasMaxNumBrokenConstraintsInLs
get

Gets whether the "max_num_broken_constraints_in_ls" field is set.

Definition at line 845 of file BopParameters.pb.cs.

◆ HasMaxNumDecisionsInLs

bool Google.OrTools.Bop.BopParameters.HasMaxNumDecisionsInLs
get

Gets whether the "max_num_decisions_in_ls" field is set.

Definition at line 813 of file BopParameters.pb.cs.

◆ HasMaxTimeInSeconds

bool Google.OrTools.Bop.BopParameters.HasMaxTimeInSeconds
get

Gets whether the "max_time_in_seconds" field is set.

Definition at line 648 of file BopParameters.pb.cs.

◆ HasNumberOfSolvers

bool Google.OrTools.Bop.BopParameters.HasNumberOfSolvers
get

Gets whether the "number_of_solvers" field is set.

Definition at line 1503 of file BopParameters.pb.cs.

◆ HasNumBopSolversUsedByDecomposition

bool Google.OrTools.Bop.BopParameters.HasNumBopSolversUsedByDecomposition
get

Gets whether the "num_bop_solvers_used_by_decomposition" field is set.

Definition at line 1674 of file BopParameters.pb.cs.

◆ HasNumRandomLnsTries

bool Google.OrTools.Bop.BopParameters.HasNumRandomLnsTries
get

Gets whether the "num_random_lns_tries" field is set.

Definition at line 1122 of file BopParameters.pb.cs.

◆ HasNumRelaxedVars

bool Google.OrTools.Bop.BopParameters.HasNumRelaxedVars
get

Gets whether the "num_relaxed_vars" field is set.

Definition at line 1061 of file BopParameters.pb.cs.

◆ HasPruneSearchTree

bool Google.OrTools.Bop.BopParameters.HasPruneSearchTree
get

Gets whether the "prune_search_tree" field is set.

Definition at line 935 of file BopParameters.pb.cs.

◆ HasRandomSeed

bool Google.OrTools.Bop.BopParameters.HasRandomSeed
get

Gets whether the "random_seed" field is set.

Definition at line 1031 of file BopParameters.pb.cs.

◆ HasRelativeGapLimit

bool Google.OrTools.Bop.BopParameters.HasRelativeGapLimit
get

Gets whether the "relative_gap_limit" field is set.

Definition at line 782 of file BopParameters.pb.cs.

◆ HasSortConstraintsByNumTerms

bool Google.OrTools.Bop.BopParameters.HasSortConstraintsByNumTerms
get

Gets whether the "sort_constraints_by_num_terms" field is set.

Definition at line 966 of file BopParameters.pb.cs.

◆ HasSynchronizationType

bool Google.OrTools.Bop.BopParameters.HasSynchronizationType
get

Gets whether the "synchronization_type" field is set.

Definition at line 1530 of file BopParameters.pb.cs.

◆ HasUseLearnedBinaryClausesInLp

bool Google.OrTools.Bop.BopParameters.HasUseLearnedBinaryClausesInLp
get

Gets whether the "use_learned_binary_clauses_in_lp" field is set.

Definition at line 1471 of file BopParameters.pb.cs.

◆ HasUseLpLns

bool Google.OrTools.Bop.BopParameters.HasUseLpLns
get

Gets whether the "use_lp_lns" field is set.

Definition at line 1183 of file BopParameters.pb.cs.

◆ HasUseLpStrongBranching

bool Google.OrTools.Bop.BopParameters.HasUseLpStrongBranching
get

Gets whether the "use_lp_strong_branching" field is set.

Definition at line 1611 of file BopParameters.pb.cs.

◆ HasUsePotentialOneFlipRepairsInLs

bool Google.OrTools.Bop.BopParameters.HasUsePotentialOneFlipRepairsInLs
get

Gets whether the "use_potential_one_flip_repairs_in_ls" field is set.

Definition at line 1441 of file BopParameters.pb.cs.

◆ HasUseRandomLns

bool Google.OrTools.Bop.BopParameters.HasUseRandomLns
get

Gets whether the "use_random_lns" field is set.

Definition at line 996 of file BopParameters.pb.cs.

◆ HasUseSatToChooseLnsNeighbourhood

bool Google.OrTools.Bop.BopParameters.HasUseSatToChooseLnsNeighbourhood
get

Gets whether the "use_sat_to_choose_lns_neighbourhood" field is set.

Definition at line 1213 of file BopParameters.pb.cs.

◆ HasUseSymmetry

bool Google.OrTools.Bop.BopParameters.HasUseSymmetry
get

Gets whether the "use_symmetry" field is set.

Definition at line 1279 of file BopParameters.pb.cs.

◆ HasUseTranspositionTableInLs

bool Google.OrTools.Bop.BopParameters.HasUseTranspositionTableInLs
get

Gets whether the "use_transposition_table_in_ls" field is set.

Definition at line 1409 of file BopParameters.pb.cs.

◆ LogSearchProgress

bool Google.OrTools.Bop.BopParameters.LogSearchProgress
getset

Whether the solver should log the search progress to LOG(INFO).

Definition at line 865 of file BopParameters.pb.cs.

◆ LpMaxDeterministicTime

double Google.OrTools.Bop.BopParameters.LpMaxDeterministicTime
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.

◆ MaxDeterministicTime

double Google.OrTools.Bop.BopParameters.MaxDeterministicTime
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.

◆ MaxLpSolveForFeasibilityProblems

int Google.OrTools.Bop.BopParameters.MaxLpSolveForFeasibilityProblems
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.

◆ MaxNumberOfBacktracksInLs

long Google.OrTools.Bop.BopParameters.MaxNumberOfBacktracksInLs
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.

◆ MaxNumberOfConflictsForQuickCheck

int Google.OrTools.Bop.BopParameters.MaxNumberOfConflictsForQuickCheck
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.

◆ MaxNumberOfConflictsInRandomLns

int Google.OrTools.Bop.BopParameters.MaxNumberOfConflictsInRandomLns
getset

The number of conflicts the SAT solver has to solve a random LNS subproblem.

Definition at line 1082 of file BopParameters.pb.cs.

◆ MaxNumberOfConflictsInRandomSolutionGeneration

int Google.OrTools.Bop.BopParameters.MaxNumberOfConflictsInRandomSolutionGeneration
getset

The number of conflicts the SAT solver has to generate a random solution.

Definition at line 1333 of file BopParameters.pb.cs.

◆ MaxNumberOfConsecutiveFailingOptimizerCalls

int Google.OrTools.Bop.BopParameters.MaxNumberOfConsecutiveFailingOptimizerCalls
getset

Maximum number of consecutive optimizer calls without improving the current solution. If this number is reached, the search will be aborted.

Note
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.

Definition at line 738 of file BopParameters.pb.cs.

◆ MaxNumberOfExploredAssignmentsPerTryInLs

long Google.OrTools.Bop.BopParameters.MaxNumberOfExploredAssignmentsPerTryInLs
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.

◆ MaxNumBrokenConstraintsInLs

int Google.OrTools.Bop.BopParameters.MaxNumBrokenConstraintsInLs
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.

◆ MaxNumDecisionsInLs

int Google.OrTools.Bop.BopParameters.MaxNumDecisionsInLs
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.

◆ MaxTimeInSeconds

double Google.OrTools.Bop.BopParameters.MaxTimeInSeconds
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.

◆ NumberOfSolvers

int Google.OrTools.Bop.BopParameters.NumberOfSolvers
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.

◆ NumBopSolversUsedByDecomposition

int Google.OrTools.Bop.BopParameters.NumBopSolversUsedByDecomposition
getset

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.

Definition at line 1664 of file BopParameters.pb.cs.

◆ NumRandomLnsTries

int Google.OrTools.Bop.BopParameters.NumRandomLnsTries
getset

Number of tries in the random lns.

Definition at line 1112 of file BopParameters.pb.cs.

◆ NumRelaxedVars

int Google.OrTools.Bop.BopParameters.NumRelaxedVars
getset

Number of variables to relax in the exhaustive Large Neighborhood Search.

Definition at line 1051 of file BopParameters.pb.cs.

◆ Parser

pb.MessageParser<BopParameters> Google.OrTools.Bop.BopParameters.Parser
staticget

Definition at line 554 of file BopParameters.pb.cs.

◆ PruneSearchTree

bool Google.OrTools.Bop.BopParameters.PruneSearchTree
getset

Avoid exploring both branches (b, a, ...) and (a, b, ...).

Definition at line 925 of file BopParameters.pb.cs.

◆ RandomSeed

int Google.OrTools.Bop.BopParameters.RandomSeed
getset

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.

Definition at line 1021 of file BopParameters.pb.cs.

◆ RelativeGapLimit

double Google.OrTools.Bop.BopParameters.RelativeGapLimit
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.

◆ SolverOptimizerSets

pbc.RepeatedField<global.Google.OrTools.Bop.BopSolverOptimizerSet> Google.OrTools.Bop.BopParameters.SolverOptimizerSets
get

List of set of optimizers to be run by the solvers.

Note
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).

Definition at line 1553 of file BopParameters.pb.cs.

◆ SortConstraintsByNumTerms

bool Google.OrTools.Bop.BopParameters.SortConstraintsByNumTerms
getset

Sort constraints by increasing total number of terms instead of number of contributing terms.

Definition at line 956 of file BopParameters.pb.cs.

◆ SynchronizationType

global.Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType Google.OrTools.Bop.BopParameters.SynchronizationType
getset

Definition at line 1520 of file BopParameters.pb.cs.

◆ UseLearnedBinaryClausesInLp

bool Google.OrTools.Bop.BopParameters.UseLearnedBinaryClausesInLp
getset

Whether we use the learned binary clauses in the Linear Relaxation.

Definition at line 1461 of file BopParameters.pb.cs.

◆ UseLpLns

bool Google.OrTools.Bop.BopParameters.UseLpLns
getset

Use Large Neighborhood Search based on the LP relaxation.

Definition at line 1173 of file BopParameters.pb.cs.

◆ UseLpStrongBranching

bool Google.OrTools.Bop.BopParameters.UseLpStrongBranching
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.

Note
using probing might be time consuming as it runs the LP solver 2 * num_variables times.

Definition at line 1601 of file BopParameters.pb.cs.

◆ UsePotentialOneFlipRepairsInLs

bool Google.OrTools.Bop.BopParameters.UsePotentialOneFlipRepairsInLs
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.

◆ UseRandomLns

bool Google.OrTools.Bop.BopParameters.UseRandomLns
getset

Use the random Large Neighborhood Search instead of the exhaustive one.

Definition at line 986 of file BopParameters.pb.cs.

◆ UseSatToChooseLnsNeighbourhood

bool Google.OrTools.Bop.BopParameters.UseSatToChooseLnsNeighbourhood
getset

Whether we use sat propagation to choose the lns neighbourhood.

Definition at line 1203 of file BopParameters.pb.cs.

◆ UseSymmetry

bool Google.OrTools.Bop.BopParameters.UseSymmetry
getset

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.

Definition at line 1269 of file BopParameters.pb.cs.

◆ UseTranspositionTableInLs

bool Google.OrTools.Bop.BopParameters.UseTranspositionTableInLs
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.


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