Google OR-Tools v9.12
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 559 of file BopParameters.pb.cs.

Constructor & Destructor Documentation

◆ BopParameters() [1/2]

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

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

◆ BopParameters() [2/2]

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

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

Member Function Documentation

◆ CalculateSize()

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

Definition at line 2220 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 927 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 1729 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 1664 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 1595 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 1335 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 1761 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 897 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 736 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 704 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 1794 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 1175 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 1266 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 1114 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 1365 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 770 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 1398 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 867 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 835 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 670 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 1525 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 1696 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 1144 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 1083 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 957 of file BopParameters.pb.cs.

◆ ClearRandomSeed()

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

Clears the value of the "random_seed" field.

Definition at line 1053 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 804 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 988 of file BopParameters.pb.cs.

◆ ClearSynchronizationType()

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

Clears the value of the "synchronization_type" field.

Definition at line 1552 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 1493 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 1205 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 1633 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 1463 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 1018 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 1235 of file BopParameters.pb.cs.

◆ ClearUseSymmetry()

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

Clears the value of the "use_symmetry" field.

Definition at line 1301 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 1431 of file BopParameters.pb.cs.

◆ Clone()

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

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

◆ Equals() [1/2]

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

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

◆ Equals() [2/2]

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

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

◆ GetHashCode()

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

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

◆ MergeFrom() [1/2]

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

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

◆ MergeFrom() [2/2]

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

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

◆ ToString()

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

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

◆ WriteTo()

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

Definition at line 1908 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 902 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 1701 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 1638 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 1574 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 1306 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 1734 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 872 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 709 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 675 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 1766 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 1149 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 1240 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 1088 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 1340 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 741 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 1370 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 840 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 809 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 644 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 1498 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 1669 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 1119 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 1058 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 932 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 1023 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 775 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 1557 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 962 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 1530 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 1468 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 1180 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 1600 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 1436 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 993 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 1210 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 1271 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 1403 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 911 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 1713 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 1648 of file BopParameters.pb.cs.

◆ DefaultSolverOptimizerSets

string Google.OrTools.Bop.BopParameters.DefaultSolverOptimizerSets
getset

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

◆ Descriptor

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

Definition at line 574 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 1319 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 1745 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 921 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 1723 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 1658 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 1589 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 1329 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 1755 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 891 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 730 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 698 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 1788 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 1169 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 1260 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 1108 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 1359 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 764 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 1392 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 861 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 829 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 664 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 1519 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 1690 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 1138 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 1077 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 951 of file BopParameters.pb.cs.

◆ HasRandomSeed

bool Google.OrTools.Bop.BopParameters.HasRandomSeed
get

Gets whether the "random_seed" field is set.

Definition at line 1047 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 798 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 982 of file BopParameters.pb.cs.

◆ HasSynchronizationType

bool Google.OrTools.Bop.BopParameters.HasSynchronizationType
get

Gets whether the "synchronization_type" field is set.

Definition at line 1546 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 1487 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 1199 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 1627 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 1457 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 1012 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 1229 of file BopParameters.pb.cs.

◆ HasUseSymmetry

bool Google.OrTools.Bop.BopParameters.HasUseSymmetry
get

Gets whether the "use_symmetry" field is set.

Definition at line 1295 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 1425 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 881 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 720 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 688 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 1778 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 1159 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 1250 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 1098 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 1349 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 754 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 1382 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 851 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 819 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 654 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 1509 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 1680 of file BopParameters.pb.cs.

◆ NumRandomLnsTries

int Google.OrTools.Bop.BopParameters.NumRandomLnsTries
getset

Number of tries in the random lns.

Definition at line 1128 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 1067 of file BopParameters.pb.cs.

◆ Parser

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

Definition at line 570 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 941 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 1037 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 788 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 1569 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 972 of file BopParameters.pb.cs.

◆ SynchronizationType

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

Definition at line 1536 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 1477 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 1189 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 1617 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 1447 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 1002 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 1219 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 1285 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 1415 of file BopParameters.pb.cs.


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