![]() |
Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
|
Contains the definitions for all the sat algorithm parameters and their default values. More...
Classes | |
class | Types |
Container for nested types declared in the SatParameters message type. More... |
Public Member Functions | |
SatParameters () | |
SatParameters (SatParameters other) | |
SatParameters | Clone () |
void | ClearName () |
Clears the value of the "name" field. | |
void | ClearPreferredVariableOrder () |
Clears the value of the "preferred_variable_order" field. | |
void | ClearInitialPolarity () |
Clears the value of the "initial_polarity" field. | |
void | ClearUsePhaseSaving () |
Clears the value of the "use_phase_saving" field. | |
void | ClearPolarityRephaseIncrement () |
Clears the value of the "polarity_rephase_increment" field. | |
void | ClearPolarityExploitLsHints () |
Clears the value of the "polarity_exploit_ls_hints" field. | |
void | ClearRandomPolarityRatio () |
Clears the value of the "random_polarity_ratio" field. | |
void | ClearRandomBranchesRatio () |
Clears the value of the "random_branches_ratio" field. | |
void | ClearUseErwaHeuristic () |
Clears the value of the "use_erwa_heuristic" field. | |
void | ClearInitialVariablesActivity () |
Clears the value of the "initial_variables_activity" field. | |
void | ClearAlsoBumpVariablesInConflictReasons () |
Clears the value of the "also_bump_variables_in_conflict_reasons" field. | |
void | ClearMinimizationAlgorithm () |
Clears the value of the "minimization_algorithm" field. | |
void | ClearBinaryMinimizationAlgorithm () |
Clears the value of the "binary_minimization_algorithm" field. | |
void | ClearSubsumptionDuringConflictAnalysis () |
Clears the value of the "subsumption_during_conflict_analysis" field. | |
void | ClearClauseCleanupPeriod () |
Clears the value of the "clause_cleanup_period" field. | |
void | ClearClauseCleanupTarget () |
Clears the value of the "clause_cleanup_target" field. | |
void | ClearClauseCleanupRatio () |
Clears the value of the "clause_cleanup_ratio" field. | |
void | ClearClauseCleanupProtection () |
Clears the value of the "clause_cleanup_protection" field. | |
void | ClearClauseCleanupLbdBound () |
Clears the value of the "clause_cleanup_lbd_bound" field. | |
void | ClearClauseCleanupOrdering () |
Clears the value of the "clause_cleanup_ordering" field. | |
void | ClearPbCleanupIncrement () |
Clears the value of the "pb_cleanup_increment" field. | |
void | ClearPbCleanupRatio () |
Clears the value of the "pb_cleanup_ratio" field. | |
void | ClearVariableActivityDecay () |
Clears the value of the "variable_activity_decay" field. | |
void | ClearMaxVariableActivityValue () |
Clears the value of the "max_variable_activity_value" field. | |
void | ClearGlucoseMaxDecay () |
Clears the value of the "glucose_max_decay" field. | |
void | ClearGlucoseDecayIncrement () |
Clears the value of the "glucose_decay_increment" field. | |
void | ClearGlucoseDecayIncrementPeriod () |
Clears the value of the "glucose_decay_increment_period" field. | |
void | ClearClauseActivityDecay () |
Clears the value of the "clause_activity_decay" field. | |
void | ClearMaxClauseActivityValue () |
Clears the value of the "max_clause_activity_value" field. | |
void | ClearDefaultRestartAlgorithms () |
Clears the value of the "default_restart_algorithms" field. | |
void | ClearRestartPeriod () |
Clears the value of the "restart_period" field. | |
void | ClearRestartRunningWindowSize () |
Clears the value of the "restart_running_window_size" field. | |
void | ClearRestartDlAverageRatio () |
Clears the value of the "restart_dl_average_ratio" field. | |
void | ClearRestartLbdAverageRatio () |
Clears the value of the "restart_lbd_average_ratio" field. | |
void | ClearUseBlockingRestart () |
Clears the value of the "use_blocking_restart" field. | |
void | ClearBlockingRestartWindowSize () |
Clears the value of the "blocking_restart_window_size" field. | |
void | ClearBlockingRestartMultiplier () |
Clears the value of the "blocking_restart_multiplier" field. | |
void | ClearNumConflictsBeforeStrategyChanges () |
Clears the value of the "num_conflicts_before_strategy_changes" field. | |
void | ClearStrategyChangeIncreaseRatio () |
Clears the value of the "strategy_change_increase_ratio" field. | |
void | ClearMaxTimeInSeconds () |
Clears the value of the "max_time_in_seconds" field. | |
void | ClearMaxDeterministicTime () |
Clears the value of the "max_deterministic_time" field. | |
void | ClearMaxNumDeterministicBatches () |
Clears the value of the "max_num_deterministic_batches" field. | |
void | ClearMaxNumberOfConflicts () |
Clears the value of the "max_number_of_conflicts" field. | |
void | ClearMaxMemoryInMb () |
Clears the value of the "max_memory_in_mb" field. | |
void | ClearAbsoluteGapLimit () |
Clears the value of the "absolute_gap_limit" field. | |
void | ClearRelativeGapLimit () |
Clears the value of the "relative_gap_limit" field. | |
void | ClearRandomSeed () |
Clears the value of the "random_seed" field. | |
void | ClearPermuteVariableRandomly () |
Clears the value of the "permute_variable_randomly" field. | |
void | ClearPermutePresolveConstraintOrder () |
Clears the value of the "permute_presolve_constraint_order" field. | |
void | ClearUseAbslRandom () |
Clears the value of the "use_absl_random" field. | |
void | ClearLogSearchProgress () |
Clears the value of the "log_search_progress" field. | |
void | ClearLogSubsolverStatistics () |
Clears the value of the "log_subsolver_statistics" field. | |
void | ClearLogPrefix () |
Clears the value of the "log_prefix" field. | |
void | ClearLogToStdout () |
Clears the value of the "log_to_stdout" field. | |
void | ClearLogToResponse () |
Clears the value of the "log_to_response" field. | |
void | ClearUsePbResolution () |
Clears the value of the "use_pb_resolution" field. | |
void | ClearMinimizeReductionDuringPbResolution () |
Clears the value of the "minimize_reduction_during_pb_resolution" field. | |
void | ClearCountAssumptionLevelsInLbd () |
Clears the value of the "count_assumption_levels_in_lbd" field. | |
void | ClearPresolveBveThreshold () |
Clears the value of the "presolve_bve_threshold" field. | |
void | ClearFilterSatPostsolveClauses () |
Clears the value of the "filter_sat_postsolve_clauses" field. | |
void | ClearPresolveBveClauseWeight () |
Clears the value of the "presolve_bve_clause_weight" field. | |
void | ClearProbingDeterministicTimeLimit () |
Clears the value of the "probing_deterministic_time_limit" field. | |
void | ClearPresolveProbingDeterministicTimeLimit () |
Clears the value of the "presolve_probing_deterministic_time_limit" field. | |
void | ClearPresolveBlockedClause () |
Clears the value of the "presolve_blocked_clause" field. | |
void | ClearPresolveUseBva () |
Clears the value of the "presolve_use_bva" field. | |
void | ClearPresolveBvaThreshold () |
Clears the value of the "presolve_bva_threshold" field. | |
void | ClearMaxPresolveIterations () |
Clears the value of the "max_presolve_iterations" field. | |
void | ClearCpModelPresolve () |
Clears the value of the "cp_model_presolve" field. | |
void | ClearCpModelProbingLevel () |
Clears the value of the "cp_model_probing_level" field. | |
void | ClearCpModelUseSatPresolve () |
Clears the value of the "cp_model_use_sat_presolve" field. | |
void | ClearRemoveFixedVariablesEarly () |
Clears the value of the "remove_fixed_variables_early" field. | |
void | ClearDetectTableWithCost () |
Clears the value of the "detect_table_with_cost" field. | |
void | ClearTableCompressionLevel () |
Clears the value of the "table_compression_level" field. | |
void | ClearExpandAlldiffConstraints () |
Clears the value of the "expand_alldiff_constraints" field. | |
void | ClearMaxAlldiffDomainSize () |
Clears the value of the "max_alldiff_domain_size" field. | |
void | ClearExpandReservoirConstraints () |
Clears the value of the "expand_reservoir_constraints" field. | |
void | ClearExpandReservoirUsingCircuit () |
Clears the value of the "expand_reservoir_using_circuit" field. | |
void | ClearEncodeCumulativeAsReservoir () |
Clears the value of the "encode_cumulative_as_reservoir" field. | |
void | ClearMaxLinMaxSizeForExpansion () |
Clears the value of the "max_lin_max_size_for_expansion" field. | |
void | ClearDisableConstraintExpansion () |
Clears the value of the "disable_constraint_expansion" field. | |
void | ClearEncodeComplexLinearConstraintWithInteger () |
Clears the value of the "encode_complex_linear_constraint_with_integer" field. | |
void | ClearMergeNoOverlapWorkLimit () |
Clears the value of the "merge_no_overlap_work_limit" field. | |
void | ClearMergeAtMostOneWorkLimit () |
Clears the value of the "merge_at_most_one_work_limit" field. | |
void | ClearPresolveSubstitutionLevel () |
Clears the value of the "presolve_substitution_level" field. | |
void | ClearPresolveExtractIntegerEnforcement () |
Clears the value of the "presolve_extract_integer_enforcement" field. | |
void | ClearPresolveInclusionWorkLimit () |
Clears the value of the "presolve_inclusion_work_limit" field. | |
void | ClearIgnoreNames () |
Clears the value of the "ignore_names" field. | |
void | ClearInferAllDiffs () |
Clears the value of the "infer_all_diffs" field. | |
void | ClearFindBigLinearOverlap () |
Clears the value of the "find_big_linear_overlap" field. | |
void | ClearUseSatInprocessing () |
Clears the value of the "use_sat_inprocessing" field. | |
void | ClearInprocessingDtimeRatio () |
Clears the value of the "inprocessing_dtime_ratio" field. | |
void | ClearInprocessingProbingDtime () |
Clears the value of the "inprocessing_probing_dtime" field. | |
void | ClearInprocessingMinimizationDtime () |
Clears the value of the "inprocessing_minimization_dtime" field. | |
void | ClearInprocessingMinimizationUseConflictAnalysis () |
Clears the value of the "inprocessing_minimization_use_conflict_analysis" field. | |
void | ClearInprocessingMinimizationUseAllOrderings () |
Clears the value of the "inprocessing_minimization_use_all_orderings" field. | |
void | ClearNumWorkers () |
Clears the value of the "num_workers" field. | |
void | ClearNumSearchWorkers () |
Clears the value of the "num_search_workers" field. | |
void | ClearNumFullSubsolvers () |
Clears the value of the "num_full_subsolvers" field. | |
void | ClearInterleaveSearch () |
Clears the value of the "interleave_search" field. | |
void | ClearInterleaveBatchSize () |
Clears the value of the "interleave_batch_size" field. | |
void | ClearShareObjectiveBounds () |
Clears the value of the "share_objective_bounds" field. | |
void | ClearShareLevelZeroBounds () |
Clears the value of the "share_level_zero_bounds" field. | |
void | ClearShareBinaryClauses () |
Clears the value of the "share_binary_clauses" field. | |
void | ClearShareGlueClauses () |
Clears the value of the "share_glue_clauses" field. | |
void | ClearMinimizeSharedClauses () |
Clears the value of the "minimize_shared_clauses" field. | |
void | ClearShareGlueClausesDtime () |
Clears the value of the "share_glue_clauses_dtime" field. | |
void | ClearDebugPostsolveWithFullSolver () |
Clears the value of the "debug_postsolve_with_full_solver" field. | |
void | ClearDebugMaxNumPresolveOperations () |
Clears the value of the "debug_max_num_presolve_operations" field. | |
void | ClearDebugCrashOnBadHint () |
Clears the value of the "debug_crash_on_bad_hint" field. | |
void | ClearDebugCrashIfPresolveBreaksHint () |
Clears the value of the "debug_crash_if_presolve_breaks_hint" field. | |
void | ClearUseOptimizationHints () |
Clears the value of the "use_optimization_hints" field. | |
void | ClearCoreMinimizationLevel () |
Clears the value of the "core_minimization_level" field. | |
void | ClearFindMultipleCores () |
Clears the value of the "find_multiple_cores" field. | |
void | ClearCoverOptimization () |
Clears the value of the "cover_optimization" field. | |
void | ClearMaxSatAssumptionOrder () |
Clears the value of the "max_sat_assumption_order" field. | |
void | ClearMaxSatReverseAssumptionOrder () |
Clears the value of the "max_sat_reverse_assumption_order" field. | |
void | ClearMaxSatStratification () |
Clears the value of the "max_sat_stratification" field. | |
void | ClearPropagationLoopDetectionFactor () |
Clears the value of the "propagation_loop_detection_factor" field. | |
void | ClearUsePrecedencesInDisjunctiveConstraint () |
Clears the value of the "use_precedences_in_disjunctive_constraint" field. | |
void | ClearMaxSizeToCreatePrecedenceLiteralsInDisjunctive () |
Clears the value of the "max_size_to_create_precedence_literals_in_disjunctive" field. | |
void | ClearUseStrongPropagationInDisjunctive () |
Clears the value of the "use_strong_propagation_in_disjunctive" field. | |
void | ClearUseDynamicPrecedenceInDisjunctive () |
Clears the value of the "use_dynamic_precedence_in_disjunctive" field. | |
void | ClearUseDynamicPrecedenceInCumulative () |
Clears the value of the "use_dynamic_precedence_in_cumulative" field. | |
void | ClearUseOverloadCheckerInCumulative () |
Clears the value of the "use_overload_checker_in_cumulative" field. | |
void | ClearUseConservativeScaleOverloadChecker () |
Clears the value of the "use_conservative_scale_overload_checker" field. | |
void | ClearUseTimetableEdgeFindingInCumulative () |
Clears the value of the "use_timetable_edge_finding_in_cumulative" field. | |
void | ClearMaxNumIntervalsForTimetableEdgeFinding () |
Clears the value of the "max_num_intervals_for_timetable_edge_finding" field. | |
void | ClearUseHardPrecedencesInCumulative () |
Clears the value of the "use_hard_precedences_in_cumulative" field. | |
void | ClearExploitAllPrecedences () |
Clears the value of the "exploit_all_precedences" field. | |
void | ClearUseDisjunctiveConstraintInCumulative () |
Clears the value of the "use_disjunctive_constraint_in_cumulative" field. | |
void | ClearNoOverlap2DBooleanRelationsLimit () |
Clears the value of the "no_overlap_2d_boolean_relations_limit" field. | |
void | ClearUseTimetablingInNoOverlap2D () |
Clears the value of the "use_timetabling_in_no_overlap_2d" field. | |
void | ClearUseEnergeticReasoningInNoOverlap2D () |
Clears the value of the "use_energetic_reasoning_in_no_overlap_2d" field. | |
void | ClearUseAreaEnergeticReasoningInNoOverlap2D () |
Clears the value of the "use_area_energetic_reasoning_in_no_overlap_2d" field. | |
void | ClearUseTryEdgeReasoningInNoOverlap2D () |
Clears the value of the "use_try_edge_reasoning_in_no_overlap_2d" field. | |
void | ClearMaxPairsPairwiseReasoningInNoOverlap2D () |
Clears the value of the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field. | |
void | ClearMaximumRegionsToSplitInDisconnectedNoOverlap2D () |
Clears the value of the "maximum_regions_to_split_in_disconnected_no_overlap_2d" field. | |
void | ClearUseLinear3ForNoOverlap2DPrecedences () |
Clears the value of the "use_linear3_for_no_overlap_2d_precedences" field. | |
void | ClearUseDualSchedulingHeuristics () |
Clears the value of the "use_dual_scheduling_heuristics" field. | |
void | ClearUseAllDifferentForCircuit () |
Clears the value of the "use_all_different_for_circuit" field. | |
void | ClearRoutingCutSubsetSizeForBinaryRelationBound () |
Clears the value of the "routing_cut_subset_size_for_binary_relation_bound" field. | |
void | ClearRoutingCutSubsetSizeForTightBinaryRelationBound () |
Clears the value of the "routing_cut_subset_size_for_tight_binary_relation_bound" field. | |
void | ClearRoutingCutSubsetSizeForExactBinaryRelationBound () |
Clears the value of the "routing_cut_subset_size_for_exact_binary_relation_bound" field. | |
void | ClearRoutingCutSubsetSizeForShortestPathsBound () |
Clears the value of the "routing_cut_subset_size_for_shortest_paths_bound" field. | |
void | ClearRoutingCutDpEffort () |
Clears the value of the "routing_cut_dp_effort" field. | |
void | ClearRoutingCutMaxInfeasiblePathLength () |
Clears the value of the "routing_cut_max_infeasible_path_length" field. | |
void | ClearSearchBranching () |
Clears the value of the "search_branching" field. | |
void | ClearHintConflictLimit () |
Clears the value of the "hint_conflict_limit" field. | |
void | ClearRepairHint () |
Clears the value of the "repair_hint" field. | |
void | ClearFixVariablesToTheirHintedValue () |
Clears the value of the "fix_variables_to_their_hinted_value" field. | |
void | ClearUseProbingSearch () |
Clears the value of the "use_probing_search" field. | |
void | ClearUseExtendedProbing () |
Clears the value of the "use_extended_probing" field. | |
void | ClearProbingNumCombinationsLimit () |
Clears the value of the "probing_num_combinations_limit" field. | |
void | ClearShavingDeterministicTimeInProbingSearch () |
Clears the value of the "shaving_deterministic_time_in_probing_search" field. | |
void | ClearShavingSearchDeterministicTime () |
Clears the value of the "shaving_search_deterministic_time" field. | |
void | ClearShavingSearchThreshold () |
Clears the value of the "shaving_search_threshold" field. | |
void | ClearUseObjectiveLbSearch () |
Clears the value of the "use_objective_lb_search" field. | |
void | ClearUseObjectiveShavingSearch () |
Clears the value of the "use_objective_shaving_search" field. | |
void | ClearVariablesShavingLevel () |
Clears the value of the "variables_shaving_level" field. | |
void | ClearPseudoCostReliabilityThreshold () |
Clears the value of the "pseudo_cost_reliability_threshold" field. | |
void | ClearOptimizeWithCore () |
Clears the value of the "optimize_with_core" field. | |
void | ClearOptimizeWithLbTreeSearch () |
Clears the value of the "optimize_with_lb_tree_search" field. | |
void | ClearSaveLpBasisInLbTreeSearch () |
Clears the value of the "save_lp_basis_in_lb_tree_search" field. | |
void | ClearBinarySearchNumConflicts () |
Clears the value of the "binary_search_num_conflicts" field. | |
void | ClearOptimizeWithMaxHs () |
Clears the value of the "optimize_with_max_hs" field. | |
void | ClearUseFeasibilityJump () |
Clears the value of the "use_feasibility_jump" field. | |
void | ClearUseLsOnly () |
Clears the value of the "use_ls_only" field. | |
void | ClearFeasibilityJumpDecay () |
Clears the value of the "feasibility_jump_decay" field. | |
void | ClearFeasibilityJumpLinearizationLevel () |
Clears the value of the "feasibility_jump_linearization_level" field. | |
void | ClearFeasibilityJumpRestartFactor () |
Clears the value of the "feasibility_jump_restart_factor" field. | |
void | ClearFeasibilityJumpBatchDtime () |
Clears the value of the "feasibility_jump_batch_dtime" field. | |
void | ClearFeasibilityJumpVarRandomizationProbability () |
Clears the value of the "feasibility_jump_var_randomization_probability" field. | |
void | ClearFeasibilityJumpVarPerburbationRangeRatio () |
Clears the value of the "feasibility_jump_var_perburbation_range_ratio" field. | |
void | ClearFeasibilityJumpEnableRestarts () |
Clears the value of the "feasibility_jump_enable_restarts" field. | |
void | ClearFeasibilityJumpMaxExpandedConstraintSize () |
Clears the value of the "feasibility_jump_max_expanded_constraint_size" field. | |
void | ClearNumViolationLs () |
Clears the value of the "num_violation_ls" field. | |
void | ClearViolationLsPerturbationPeriod () |
Clears the value of the "violation_ls_perturbation_period" field. | |
void | ClearViolationLsCompoundMoveProbability () |
Clears the value of the "violation_ls_compound_move_probability" field. | |
void | ClearSharedTreeNumWorkers () |
Clears the value of the "shared_tree_num_workers" field. | |
void | ClearUseSharedTreeSearch () |
Clears the value of the "use_shared_tree_search" field. | |
void | ClearSharedTreeWorkerMinRestartsPerSubtree () |
Clears the value of the "shared_tree_worker_min_restarts_per_subtree" field. | |
void | ClearSharedTreeWorkerEnableTrailSharing () |
Clears the value of the "shared_tree_worker_enable_trail_sharing" field. | |
void | ClearSharedTreeWorkerEnablePhaseSharing () |
Clears the value of the "shared_tree_worker_enable_phase_sharing" field. | |
void | ClearSharedTreeOpenLeavesPerWorker () |
Clears the value of the "shared_tree_open_leaves_per_worker" field. | |
void | ClearSharedTreeMaxNodesPerWorker () |
Clears the value of the "shared_tree_max_nodes_per_worker" field. | |
void | ClearSharedTreeSplitStrategy () |
Clears the value of the "shared_tree_split_strategy" field. | |
void | ClearSharedTreeBalanceTolerance () |
Clears the value of the "shared_tree_balance_tolerance" field. | |
void | ClearEnumerateAllSolutions () |
Clears the value of the "enumerate_all_solutions" field. | |
void | ClearKeepAllFeasibleSolutionsInPresolve () |
Clears the value of the "keep_all_feasible_solutions_in_presolve" field. | |
void | ClearFillTightenedDomainsInResponse () |
Clears the value of the "fill_tightened_domains_in_response" field. | |
void | ClearFillAdditionalSolutionsInResponse () |
Clears the value of the "fill_additional_solutions_in_response" field. | |
void | ClearInstantiateAllVariables () |
Clears the value of the "instantiate_all_variables" field. | |
void | ClearAutoDetectGreaterThanAtLeastOneOf () |
Clears the value of the "auto_detect_greater_than_at_least_one_of" field. | |
void | ClearStopAfterFirstSolution () |
Clears the value of the "stop_after_first_solution" field. | |
void | ClearStopAfterPresolve () |
Clears the value of the "stop_after_presolve" field. | |
void | ClearStopAfterRootPropagation () |
Clears the value of the "stop_after_root_propagation" field. | |
void | ClearLnsInitialDifficulty () |
Clears the value of the "lns_initial_difficulty" field. | |
void | ClearLnsInitialDeterministicLimit () |
Clears the value of the "lns_initial_deterministic_limit" field. | |
void | ClearUseLns () |
Clears the value of the "use_lns" field. | |
void | ClearUseLnsOnly () |
Clears the value of the "use_lns_only" field. | |
void | ClearSolutionPoolSize () |
Clears the value of the "solution_pool_size" field. | |
void | ClearUseRinsLns () |
Clears the value of the "use_rins_lns" field. | |
void | ClearUseFeasibilityPump () |
Clears the value of the "use_feasibility_pump" field. | |
void | ClearUseLbRelaxLns () |
Clears the value of the "use_lb_relax_lns" field. | |
void | ClearLbRelaxNumWorkersThreshold () |
Clears the value of the "lb_relax_num_workers_threshold" field. | |
void | ClearFpRounding () |
Clears the value of the "fp_rounding" field. | |
void | ClearDiversifyLnsParams () |
Clears the value of the "diversify_lns_params" field. | |
void | ClearRandomizeSearch () |
Clears the value of the "randomize_search" field. | |
void | ClearSearchRandomVariablePoolSize () |
Clears the value of the "search_random_variable_pool_size" field. | |
void | ClearPushAllTasksTowardStart () |
Clears the value of the "push_all_tasks_toward_start" field. | |
void | ClearUseOptionalVariables () |
Clears the value of the "use_optional_variables" field. | |
void | ClearUseExactLpReason () |
Clears the value of the "use_exact_lp_reason" field. | |
void | ClearUseCombinedNoOverlap () |
Clears the value of the "use_combined_no_overlap" field. | |
void | ClearAtMostOneMaxExpansionSize () |
Clears the value of the "at_most_one_max_expansion_size" field. | |
void | ClearCatchSigintSignal () |
Clears the value of the "catch_sigint_signal" field. | |
void | ClearUseImpliedBounds () |
Clears the value of the "use_implied_bounds" field. | |
void | ClearPolishLpSolution () |
Clears the value of the "polish_lp_solution" field. | |
void | ClearLpPrimalTolerance () |
Clears the value of the "lp_primal_tolerance" field. | |
void | ClearLpDualTolerance () |
Clears the value of the "lp_dual_tolerance" field. | |
void | ClearConvertIntervals () |
Clears the value of the "convert_intervals" field. | |
void | ClearSymmetryLevel () |
Clears the value of the "symmetry_level" field. | |
void | ClearUseSymmetryInLp () |
Clears the value of the "use_symmetry_in_lp" field. | |
void | ClearKeepSymmetryInPresolve () |
Clears the value of the "keep_symmetry_in_presolve" field. | |
void | ClearSymmetryDetectionDeterministicTimeLimit () |
Clears the value of the "symmetry_detection_deterministic_time_limit" field. | |
void | ClearNewLinearPropagation () |
Clears the value of the "new_linear_propagation" field. | |
void | ClearLinearSplitSize () |
Clears the value of the "linear_split_size" field. | |
void | ClearLinearizationLevel () |
Clears the value of the "linearization_level" field. | |
void | ClearBooleanEncodingLevel () |
Clears the value of the "boolean_encoding_level" field. | |
void | ClearMaxDomainSizeWhenEncodingEqNeqConstraints () |
Clears the value of the "max_domain_size_when_encoding_eq_neq_constraints" field. | |
void | ClearMaxNumCuts () |
Clears the value of the "max_num_cuts" field. | |
void | ClearCutLevel () |
Clears the value of the "cut_level" field. | |
void | ClearOnlyAddCutsAtLevelZero () |
Clears the value of the "only_add_cuts_at_level_zero" field. | |
void | ClearAddObjectiveCut () |
Clears the value of the "add_objective_cut" field. | |
void | ClearAddCgCuts () |
Clears the value of the "add_cg_cuts" field. | |
void | ClearAddMirCuts () |
Clears the value of the "add_mir_cuts" field. | |
void | ClearAddZeroHalfCuts () |
Clears the value of the "add_zero_half_cuts" field. | |
void | ClearAddCliqueCuts () |
Clears the value of the "add_clique_cuts" field. | |
void | ClearAddRltCuts () |
Clears the value of the "add_rlt_cuts" field. | |
void | ClearMaxAllDiffCutSize () |
Clears the value of the "max_all_diff_cut_size" field. | |
void | ClearAddLinMaxCuts () |
Clears the value of the "add_lin_max_cuts" field. | |
void | ClearMaxIntegerRoundingScaling () |
Clears the value of the "max_integer_rounding_scaling" field. | |
void | ClearAddLpConstraintsLazily () |
Clears the value of the "add_lp_constraints_lazily" field. | |
void | ClearRootLpIterations () |
Clears the value of the "root_lp_iterations" field. | |
void | ClearMinOrthogonalityForLpConstraints () |
Clears the value of the "min_orthogonality_for_lp_constraints" field. | |
void | ClearMaxCutRoundsAtLevelZero () |
Clears the value of the "max_cut_rounds_at_level_zero" field. | |
void | ClearMaxConsecutiveInactiveCount () |
Clears the value of the "max_consecutive_inactive_count" field. | |
void | ClearCutMaxActiveCountValue () |
Clears the value of the "cut_max_active_count_value" field. | |
void | ClearCutActiveCountDecay () |
Clears the value of the "cut_active_count_decay" field. | |
void | ClearCutCleanupTarget () |
Clears the value of the "cut_cleanup_target" field. | |
void | ClearNewConstraintsBatchSize () |
Clears the value of the "new_constraints_batch_size" field. | |
void | ClearExploitIntegerLpSolution () |
Clears the value of the "exploit_integer_lp_solution" field. | |
void | ClearExploitAllLpSolution () |
Clears the value of the "exploit_all_lp_solution" field. | |
void | ClearExploitBestSolution () |
Clears the value of the "exploit_best_solution" field. | |
void | ClearExploitRelaxationSolution () |
Clears the value of the "exploit_relaxation_solution" field. | |
void | ClearExploitObjective () |
Clears the value of the "exploit_objective" field. | |
void | ClearDetectLinearizedProduct () |
Clears the value of the "detect_linearized_product" field. | |
void | ClearMipMaxBound () |
Clears the value of the "mip_max_bound" field. | |
void | ClearMipVarScaling () |
Clears the value of the "mip_var_scaling" field. | |
void | ClearMipScaleLargeDomain () |
Clears the value of the "mip_scale_large_domain" field. | |
void | ClearMipAutomaticallyScaleVariables () |
Clears the value of the "mip_automatically_scale_variables" field. | |
void | ClearOnlySolveIp () |
Clears the value of the "only_solve_ip" field. | |
void | ClearMipWantedPrecision () |
Clears the value of the "mip_wanted_precision" field. | |
void | ClearMipMaxActivityExponent () |
Clears the value of the "mip_max_activity_exponent" field. | |
void | ClearMipCheckPrecision () |
Clears the value of the "mip_check_precision" field. | |
void | ClearMipComputeTrueObjectiveBound () |
Clears the value of the "mip_compute_true_objective_bound" field. | |
void | ClearMipMaxValidMagnitude () |
Clears the value of the "mip_max_valid_magnitude" field. | |
void | ClearMipTreatHighMagnitudeBoundsAsInfinity () |
Clears the value of the "mip_treat_high_magnitude_bounds_as_infinity" field. | |
void | ClearMipDropTolerance () |
Clears the value of the "mip_drop_tolerance" field. | |
void | ClearMipPresolveLevel () |
Clears the value of the "mip_presolve_level" field. | |
override bool | Equals (object other) |
bool | Equals (SatParameters other) |
override int | GetHashCode () |
override string | ToString () |
void | WriteTo (pb::CodedOutputStream output) |
int | CalculateSize () |
void | MergeFrom (SatParameters other) |
void | MergeFrom (pb::CodedInputStream input) |
Static Public Attributes | |
const int | NameFieldNumber = 171 |
Field number for the "name" field. | |
const int | PreferredVariableOrderFieldNumber = 1 |
Field number for the "preferred_variable_order" field. | |
const int | InitialPolarityFieldNumber = 2 |
Field number for the "initial_polarity" field. | |
const int | UsePhaseSavingFieldNumber = 44 |
Field number for the "use_phase_saving" field. | |
const int | PolarityRephaseIncrementFieldNumber = 168 |
Field number for the "polarity_rephase_increment" field. | |
const int | PolarityExploitLsHintsFieldNumber = 309 |
Field number for the "polarity_exploit_ls_hints" field. | |
const int | RandomPolarityRatioFieldNumber = 45 |
Field number for the "random_polarity_ratio" field. | |
const int | RandomBranchesRatioFieldNumber = 32 |
Field number for the "random_branches_ratio" field. | |
const int | UseErwaHeuristicFieldNumber = 75 |
Field number for the "use_erwa_heuristic" field. | |
const int | InitialVariablesActivityFieldNumber = 76 |
Field number for the "initial_variables_activity" field. | |
const int | AlsoBumpVariablesInConflictReasonsFieldNumber = 77 |
Field number for the "also_bump_variables_in_conflict_reasons" field. | |
const int | MinimizationAlgorithmFieldNumber = 4 |
Field number for the "minimization_algorithm" field. | |
const int | BinaryMinimizationAlgorithmFieldNumber = 34 |
Field number for the "binary_minimization_algorithm" field. | |
const int | SubsumptionDuringConflictAnalysisFieldNumber = 56 |
Field number for the "subsumption_during_conflict_analysis" field. | |
const int | ClauseCleanupPeriodFieldNumber = 11 |
Field number for the "clause_cleanup_period" field. | |
const int | ClauseCleanupTargetFieldNumber = 13 |
Field number for the "clause_cleanup_target" field. | |
const int | ClauseCleanupRatioFieldNumber = 190 |
Field number for the "clause_cleanup_ratio" field. | |
const int | ClauseCleanupProtectionFieldNumber = 58 |
Field number for the "clause_cleanup_protection" field. | |
const int | ClauseCleanupLbdBoundFieldNumber = 59 |
Field number for the "clause_cleanup_lbd_bound" field. | |
const int | ClauseCleanupOrderingFieldNumber = 60 |
Field number for the "clause_cleanup_ordering" field. | |
const int | PbCleanupIncrementFieldNumber = 46 |
Field number for the "pb_cleanup_increment" field. | |
const int | PbCleanupRatioFieldNumber = 47 |
Field number for the "pb_cleanup_ratio" field. | |
const int | VariableActivityDecayFieldNumber = 15 |
Field number for the "variable_activity_decay" field. | |
const int | MaxVariableActivityValueFieldNumber = 16 |
Field number for the "max_variable_activity_value" field. | |
const int | GlucoseMaxDecayFieldNumber = 22 |
Field number for the "glucose_max_decay" field. | |
const int | GlucoseDecayIncrementFieldNumber = 23 |
Field number for the "glucose_decay_increment" field. | |
const int | GlucoseDecayIncrementPeriodFieldNumber = 24 |
Field number for the "glucose_decay_increment_period" field. | |
const int | ClauseActivityDecayFieldNumber = 17 |
Field number for the "clause_activity_decay" field. | |
const int | MaxClauseActivityValueFieldNumber = 18 |
Field number for the "max_clause_activity_value" field. | |
const int | RestartAlgorithmsFieldNumber = 61 |
Field number for the "restart_algorithms" field. | |
const int | DefaultRestartAlgorithmsFieldNumber = 70 |
Field number for the "default_restart_algorithms" field. | |
const int | RestartPeriodFieldNumber = 30 |
Field number for the "restart_period" field. | |
const int | RestartRunningWindowSizeFieldNumber = 62 |
Field number for the "restart_running_window_size" field. | |
const int | RestartDlAverageRatioFieldNumber = 63 |
Field number for the "restart_dl_average_ratio" field. | |
const int | RestartLbdAverageRatioFieldNumber = 71 |
Field number for the "restart_lbd_average_ratio" field. | |
const int | UseBlockingRestartFieldNumber = 64 |
Field number for the "use_blocking_restart" field. | |
const int | BlockingRestartWindowSizeFieldNumber = 65 |
Field number for the "blocking_restart_window_size" field. | |
const int | BlockingRestartMultiplierFieldNumber = 66 |
Field number for the "blocking_restart_multiplier" field. | |
const int | NumConflictsBeforeStrategyChangesFieldNumber = 68 |
Field number for the "num_conflicts_before_strategy_changes" field. | |
const int | StrategyChangeIncreaseRatioFieldNumber = 69 |
Field number for the "strategy_change_increase_ratio" field. | |
const int | MaxTimeInSecondsFieldNumber = 36 |
Field number for the "max_time_in_seconds" field. | |
const int | MaxDeterministicTimeFieldNumber = 67 |
Field number for the "max_deterministic_time" field. | |
const int | MaxNumDeterministicBatchesFieldNumber = 291 |
Field number for the "max_num_deterministic_batches" field. | |
const int | MaxNumberOfConflictsFieldNumber = 37 |
Field number for the "max_number_of_conflicts" field. | |
const int | MaxMemoryInMbFieldNumber = 40 |
Field number for the "max_memory_in_mb" field. | |
const int | AbsoluteGapLimitFieldNumber = 159 |
Field number for the "absolute_gap_limit" field. | |
const int | RelativeGapLimitFieldNumber = 160 |
Field number for the "relative_gap_limit" field. | |
const int | RandomSeedFieldNumber = 31 |
Field number for the "random_seed" field. | |
const int | PermuteVariableRandomlyFieldNumber = 178 |
Field number for the "permute_variable_randomly" field. | |
const int | PermutePresolveConstraintOrderFieldNumber = 179 |
Field number for the "permute_presolve_constraint_order" field. | |
const int | UseAbslRandomFieldNumber = 180 |
Field number for the "use_absl_random" field. | |
const int | LogSearchProgressFieldNumber = 41 |
Field number for the "log_search_progress" field. | |
const int | LogSubsolverStatisticsFieldNumber = 189 |
Field number for the "log_subsolver_statistics" field. | |
const int | LogPrefixFieldNumber = 185 |
Field number for the "log_prefix" field. | |
const int | LogToStdoutFieldNumber = 186 |
Field number for the "log_to_stdout" field. | |
const int | LogToResponseFieldNumber = 187 |
Field number for the "log_to_response" field. | |
const int | UsePbResolutionFieldNumber = 43 |
Field number for the "use_pb_resolution" field. | |
const int | MinimizeReductionDuringPbResolutionFieldNumber = 48 |
Field number for the "minimize_reduction_during_pb_resolution" field. | |
const int | CountAssumptionLevelsInLbdFieldNumber = 49 |
Field number for the "count_assumption_levels_in_lbd" field. | |
const int | PresolveBveThresholdFieldNumber = 54 |
Field number for the "presolve_bve_threshold" field. | |
const int | FilterSatPostsolveClausesFieldNumber = 324 |
Field number for the "filter_sat_postsolve_clauses" field. | |
const int | PresolveBveClauseWeightFieldNumber = 55 |
Field number for the "presolve_bve_clause_weight" field. | |
const int | ProbingDeterministicTimeLimitFieldNumber = 226 |
Field number for the "probing_deterministic_time_limit" field. | |
const int | PresolveProbingDeterministicTimeLimitFieldNumber = 57 |
Field number for the "presolve_probing_deterministic_time_limit" field. | |
const int | PresolveBlockedClauseFieldNumber = 88 |
Field number for the "presolve_blocked_clause" field. | |
const int | PresolveUseBvaFieldNumber = 72 |
Field number for the "presolve_use_bva" field. | |
const int | PresolveBvaThresholdFieldNumber = 73 |
Field number for the "presolve_bva_threshold" field. | |
const int | MaxPresolveIterationsFieldNumber = 138 |
Field number for the "max_presolve_iterations" field. | |
const int | CpModelPresolveFieldNumber = 86 |
Field number for the "cp_model_presolve" field. | |
const int | CpModelProbingLevelFieldNumber = 110 |
Field number for the "cp_model_probing_level" field. | |
const int | CpModelUseSatPresolveFieldNumber = 93 |
Field number for the "cp_model_use_sat_presolve" field. | |
const int | RemoveFixedVariablesEarlyFieldNumber = 310 |
Field number for the "remove_fixed_variables_early" field. | |
const int | DetectTableWithCostFieldNumber = 216 |
Field number for the "detect_table_with_cost" field. | |
const int | TableCompressionLevelFieldNumber = 217 |
Field number for the "table_compression_level" field. | |
const int | ExpandAlldiffConstraintsFieldNumber = 170 |
Field number for the "expand_alldiff_constraints" field. | |
const int | MaxAlldiffDomainSizeFieldNumber = 320 |
Field number for the "max_alldiff_domain_size" field. | |
const int | ExpandReservoirConstraintsFieldNumber = 182 |
Field number for the "expand_reservoir_constraints" field. | |
const int | ExpandReservoirUsingCircuitFieldNumber = 288 |
Field number for the "expand_reservoir_using_circuit" field. | |
const int | EncodeCumulativeAsReservoirFieldNumber = 287 |
Field number for the "encode_cumulative_as_reservoir" field. | |
const int | MaxLinMaxSizeForExpansionFieldNumber = 280 |
Field number for the "max_lin_max_size_for_expansion" field. | |
const int | DisableConstraintExpansionFieldNumber = 181 |
Field number for the "disable_constraint_expansion" field. | |
const int | EncodeComplexLinearConstraintWithIntegerFieldNumber = 223 |
Field number for the "encode_complex_linear_constraint_with_integer" field. | |
const int | MergeNoOverlapWorkLimitFieldNumber = 145 |
Field number for the "merge_no_overlap_work_limit" field. | |
const int | MergeAtMostOneWorkLimitFieldNumber = 146 |
Field number for the "merge_at_most_one_work_limit" field. | |
const int | PresolveSubstitutionLevelFieldNumber = 147 |
Field number for the "presolve_substitution_level" field. | |
const int | PresolveExtractIntegerEnforcementFieldNumber = 174 |
Field number for the "presolve_extract_integer_enforcement" field. | |
const int | PresolveInclusionWorkLimitFieldNumber = 201 |
Field number for the "presolve_inclusion_work_limit" field. | |
const int | IgnoreNamesFieldNumber = 202 |
Field number for the "ignore_names" field. | |
const int | InferAllDiffsFieldNumber = 233 |
Field number for the "infer_all_diffs" field. | |
const int | FindBigLinearOverlapFieldNumber = 234 |
Field number for the "find_big_linear_overlap" field. | |
const int | UseSatInprocessingFieldNumber = 163 |
Field number for the "use_sat_inprocessing" field. | |
const int | InprocessingDtimeRatioFieldNumber = 273 |
Field number for the "inprocessing_dtime_ratio" field. | |
const int | InprocessingProbingDtimeFieldNumber = 274 |
Field number for the "inprocessing_probing_dtime" field. | |
const int | InprocessingMinimizationDtimeFieldNumber = 275 |
Field number for the "inprocessing_minimization_dtime" field. | |
const int | InprocessingMinimizationUseConflictAnalysisFieldNumber = 297 |
Field number for the "inprocessing_minimization_use_conflict_analysis" field. | |
const int | InprocessingMinimizationUseAllOrderingsFieldNumber = 298 |
Field number for the "inprocessing_minimization_use_all_orderings" field. | |
const int | NumWorkersFieldNumber = 206 |
Field number for the "num_workers" field. | |
const int | NumSearchWorkersFieldNumber = 100 |
Field number for the "num_search_workers" field. | |
const int | NumFullSubsolversFieldNumber = 294 |
Field number for the "num_full_subsolvers" field. | |
const int | SubsolversFieldNumber = 207 |
Field number for the "subsolvers" field. | |
const int | ExtraSubsolversFieldNumber = 219 |
Field number for the "extra_subsolvers" field. | |
const int | IgnoreSubsolversFieldNumber = 209 |
Field number for the "ignore_subsolvers" field. | |
const int | FilterSubsolversFieldNumber = 293 |
Field number for the "filter_subsolvers" field. | |
const int | SubsolverParamsFieldNumber = 210 |
Field number for the "subsolver_params" field. | |
const int | InterleaveSearchFieldNumber = 136 |
Field number for the "interleave_search" field. | |
const int | InterleaveBatchSizeFieldNumber = 134 |
Field number for the "interleave_batch_size" field. | |
const int | ShareObjectiveBoundsFieldNumber = 113 |
Field number for the "share_objective_bounds" field. | |
const int | ShareLevelZeroBoundsFieldNumber = 114 |
Field number for the "share_level_zero_bounds" field. | |
const int | ShareBinaryClausesFieldNumber = 203 |
Field number for the "share_binary_clauses" field. | |
const int | ShareGlueClausesFieldNumber = 285 |
Field number for the "share_glue_clauses" field. | |
const int | MinimizeSharedClausesFieldNumber = 300 |
Field number for the "minimize_shared_clauses" field. | |
const int | ShareGlueClausesDtimeFieldNumber = 322 |
Field number for the "share_glue_clauses_dtime" field. | |
const int | DebugPostsolveWithFullSolverFieldNumber = 162 |
Field number for the "debug_postsolve_with_full_solver" field. | |
const int | DebugMaxNumPresolveOperationsFieldNumber = 151 |
Field number for the "debug_max_num_presolve_operations" field. | |
const int | DebugCrashOnBadHintFieldNumber = 195 |
Field number for the "debug_crash_on_bad_hint" field. | |
const int | DebugCrashIfPresolveBreaksHintFieldNumber = 306 |
Field number for the "debug_crash_if_presolve_breaks_hint" field. | |
const int | UseOptimizationHintsFieldNumber = 35 |
Field number for the "use_optimization_hints" field. | |
const int | CoreMinimizationLevelFieldNumber = 50 |
Field number for the "core_minimization_level" field. | |
const int | FindMultipleCoresFieldNumber = 84 |
Field number for the "find_multiple_cores" field. | |
const int | CoverOptimizationFieldNumber = 89 |
Field number for the "cover_optimization" field. | |
const int | MaxSatAssumptionOrderFieldNumber = 51 |
Field number for the "max_sat_assumption_order" field. | |
const int | MaxSatReverseAssumptionOrderFieldNumber = 52 |
Field number for the "max_sat_reverse_assumption_order" field. | |
const int | MaxSatStratificationFieldNumber = 53 |
Field number for the "max_sat_stratification" field. | |
const int | PropagationLoopDetectionFactorFieldNumber = 221 |
Field number for the "propagation_loop_detection_factor" field. | |
const int | UsePrecedencesInDisjunctiveConstraintFieldNumber = 74 |
Field number for the "use_precedences_in_disjunctive_constraint" field. | |
const int | MaxSizeToCreatePrecedenceLiteralsInDisjunctiveFieldNumber = 229 |
Field number for the "max_size_to_create_precedence_literals_in_disjunctive" field. | |
const int | UseStrongPropagationInDisjunctiveFieldNumber = 230 |
Field number for the "use_strong_propagation_in_disjunctive" field. | |
const int | UseDynamicPrecedenceInDisjunctiveFieldNumber = 263 |
Field number for the "use_dynamic_precedence_in_disjunctive" field. | |
const int | UseDynamicPrecedenceInCumulativeFieldNumber = 268 |
Field number for the "use_dynamic_precedence_in_cumulative" field. | |
const int | UseOverloadCheckerInCumulativeFieldNumber = 78 |
Field number for the "use_overload_checker_in_cumulative" field. | |
const int | UseConservativeScaleOverloadCheckerFieldNumber = 286 |
Field number for the "use_conservative_scale_overload_checker" field. | |
const int | UseTimetableEdgeFindingInCumulativeFieldNumber = 79 |
Field number for the "use_timetable_edge_finding_in_cumulative" field. | |
const int | MaxNumIntervalsForTimetableEdgeFindingFieldNumber = 260 |
Field number for the "max_num_intervals_for_timetable_edge_finding" field. | |
const int | UseHardPrecedencesInCumulativeFieldNumber = 215 |
Field number for the "use_hard_precedences_in_cumulative" field. | |
const int | ExploitAllPrecedencesFieldNumber = 220 |
Field number for the "exploit_all_precedences" field. | |
const int | UseDisjunctiveConstraintInCumulativeFieldNumber = 80 |
Field number for the "use_disjunctive_constraint_in_cumulative" field. | |
const int | NoOverlap2DBooleanRelationsLimitFieldNumber = 321 |
Field number for the "no_overlap_2d_boolean_relations_limit" field. | |
const int | UseTimetablingInNoOverlap2DFieldNumber = 200 |
Field number for the "use_timetabling_in_no_overlap_2d" field. | |
const int | UseEnergeticReasoningInNoOverlap2DFieldNumber = 213 |
Field number for the "use_energetic_reasoning_in_no_overlap_2d" field. | |
const int | UseAreaEnergeticReasoningInNoOverlap2DFieldNumber = 271 |
Field number for the "use_area_energetic_reasoning_in_no_overlap_2d" field. | |
const int | UseTryEdgeReasoningInNoOverlap2DFieldNumber = 299 |
Field number for the "use_try_edge_reasoning_in_no_overlap_2d" field. | |
const int | MaxPairsPairwiseReasoningInNoOverlap2DFieldNumber = 276 |
Field number for the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field. | |
const int | MaximumRegionsToSplitInDisconnectedNoOverlap2DFieldNumber = 315 |
Field number for the "maximum_regions_to_split_in_disconnected_no_overlap_2d" field. | |
const int | UseLinear3ForNoOverlap2DPrecedencesFieldNumber = 323 |
Field number for the "use_linear3_for_no_overlap_2d_precedences" field. | |
const int | UseDualSchedulingHeuristicsFieldNumber = 214 |
Field number for the "use_dual_scheduling_heuristics" field. | |
const int | UseAllDifferentForCircuitFieldNumber = 311 |
Field number for the "use_all_different_for_circuit" field. | |
const int | RoutingCutSubsetSizeForBinaryRelationBoundFieldNumber = 312 |
Field number for the "routing_cut_subset_size_for_binary_relation_bound" field. | |
const int | RoutingCutSubsetSizeForTightBinaryRelationBoundFieldNumber = 313 |
Field number for the "routing_cut_subset_size_for_tight_binary_relation_bound" field. | |
const int | RoutingCutSubsetSizeForExactBinaryRelationBoundFieldNumber = 316 |
Field number for the "routing_cut_subset_size_for_exact_binary_relation_bound" field. | |
const int | RoutingCutSubsetSizeForShortestPathsBoundFieldNumber = 318 |
Field number for the "routing_cut_subset_size_for_shortest_paths_bound" field. | |
const int | RoutingCutDpEffortFieldNumber = 314 |
Field number for the "routing_cut_dp_effort" field. | |
const int | RoutingCutMaxInfeasiblePathLengthFieldNumber = 317 |
Field number for the "routing_cut_max_infeasible_path_length" field. | |
const int | SearchBranchingFieldNumber = 82 |
Field number for the "search_branching" field. | |
const int | HintConflictLimitFieldNumber = 153 |
Field number for the "hint_conflict_limit" field. | |
const int | RepairHintFieldNumber = 167 |
Field number for the "repair_hint" field. | |
const int | FixVariablesToTheirHintedValueFieldNumber = 192 |
Field number for the "fix_variables_to_their_hinted_value" field. | |
const int | UseProbingSearchFieldNumber = 176 |
Field number for the "use_probing_search" field. | |
const int | UseExtendedProbingFieldNumber = 269 |
Field number for the "use_extended_probing" field. | |
const int | ProbingNumCombinationsLimitFieldNumber = 272 |
Field number for the "probing_num_combinations_limit" field. | |
const int | ShavingDeterministicTimeInProbingSearchFieldNumber = 204 |
Field number for the "shaving_deterministic_time_in_probing_search" field. | |
const int | ShavingSearchDeterministicTimeFieldNumber = 205 |
Field number for the "shaving_search_deterministic_time" field. | |
const int | ShavingSearchThresholdFieldNumber = 290 |
Field number for the "shaving_search_threshold" field. | |
const int | UseObjectiveLbSearchFieldNumber = 228 |
Field number for the "use_objective_lb_search" field. | |
const int | UseObjectiveShavingSearchFieldNumber = 253 |
Field number for the "use_objective_shaving_search" field. | |
const int | VariablesShavingLevelFieldNumber = 289 |
Field number for the "variables_shaving_level" field. | |
const int | PseudoCostReliabilityThresholdFieldNumber = 123 |
Field number for the "pseudo_cost_reliability_threshold" field. | |
const int | OptimizeWithCoreFieldNumber = 83 |
Field number for the "optimize_with_core" field. | |
const int | OptimizeWithLbTreeSearchFieldNumber = 188 |
Field number for the "optimize_with_lb_tree_search" field. | |
const int | SaveLpBasisInLbTreeSearchFieldNumber = 284 |
Field number for the "save_lp_basis_in_lb_tree_search" field. | |
const int | BinarySearchNumConflictsFieldNumber = 99 |
Field number for the "binary_search_num_conflicts" field. | |
const int | OptimizeWithMaxHsFieldNumber = 85 |
Field number for the "optimize_with_max_hs" field. | |
const int | UseFeasibilityJumpFieldNumber = 265 |
Field number for the "use_feasibility_jump" field. | |
const int | UseLsOnlyFieldNumber = 240 |
Field number for the "use_ls_only" field. | |
const int | FeasibilityJumpDecayFieldNumber = 242 |
Field number for the "feasibility_jump_decay" field. | |
const int | FeasibilityJumpLinearizationLevelFieldNumber = 257 |
Field number for the "feasibility_jump_linearization_level" field. | |
const int | FeasibilityJumpRestartFactorFieldNumber = 258 |
Field number for the "feasibility_jump_restart_factor" field. | |
const int | FeasibilityJumpBatchDtimeFieldNumber = 292 |
Field number for the "feasibility_jump_batch_dtime" field. | |
const int | FeasibilityJumpVarRandomizationProbabilityFieldNumber = 247 |
Field number for the "feasibility_jump_var_randomization_probability" field. | |
const int | FeasibilityJumpVarPerburbationRangeRatioFieldNumber = 248 |
Field number for the "feasibility_jump_var_perburbation_range_ratio" field. | |
const int | FeasibilityJumpEnableRestartsFieldNumber = 250 |
Field number for the "feasibility_jump_enable_restarts" field. | |
const int | FeasibilityJumpMaxExpandedConstraintSizeFieldNumber = 264 |
Field number for the "feasibility_jump_max_expanded_constraint_size" field. | |
const int | NumViolationLsFieldNumber = 244 |
Field number for the "num_violation_ls" field. | |
const int | ViolationLsPerturbationPeriodFieldNumber = 249 |
Field number for the "violation_ls_perturbation_period" field. | |
const int | ViolationLsCompoundMoveProbabilityFieldNumber = 259 |
Field number for the "violation_ls_compound_move_probability" field. | |
const int | SharedTreeNumWorkersFieldNumber = 235 |
Field number for the "shared_tree_num_workers" field. | |
const int | UseSharedTreeSearchFieldNumber = 236 |
Field number for the "use_shared_tree_search" field. | |
const int | SharedTreeWorkerMinRestartsPerSubtreeFieldNumber = 282 |
Field number for the "shared_tree_worker_min_restarts_per_subtree" field. | |
const int | SharedTreeWorkerEnableTrailSharingFieldNumber = 295 |
Field number for the "shared_tree_worker_enable_trail_sharing" field. | |
const int | SharedTreeWorkerEnablePhaseSharingFieldNumber = 304 |
Field number for the "shared_tree_worker_enable_phase_sharing" field. | |
const int | SharedTreeOpenLeavesPerWorkerFieldNumber = 281 |
Field number for the "shared_tree_open_leaves_per_worker" field. | |
const int | SharedTreeMaxNodesPerWorkerFieldNumber = 238 |
Field number for the "shared_tree_max_nodes_per_worker" field. | |
const int | SharedTreeSplitStrategyFieldNumber = 239 |
Field number for the "shared_tree_split_strategy" field. | |
const int | SharedTreeBalanceToleranceFieldNumber = 305 |
Field number for the "shared_tree_balance_tolerance" field. | |
const int | EnumerateAllSolutionsFieldNumber = 87 |
Field number for the "enumerate_all_solutions" field. | |
const int | KeepAllFeasibleSolutionsInPresolveFieldNumber = 173 |
Field number for the "keep_all_feasible_solutions_in_presolve" field. | |
const int | FillTightenedDomainsInResponseFieldNumber = 132 |
Field number for the "fill_tightened_domains_in_response" field. | |
const int | FillAdditionalSolutionsInResponseFieldNumber = 194 |
Field number for the "fill_additional_solutions_in_response" field. | |
const int | InstantiateAllVariablesFieldNumber = 106 |
Field number for the "instantiate_all_variables" field. | |
const int | AutoDetectGreaterThanAtLeastOneOfFieldNumber = 95 |
Field number for the "auto_detect_greater_than_at_least_one_of" field. | |
const int | StopAfterFirstSolutionFieldNumber = 98 |
Field number for the "stop_after_first_solution" field. | |
const int | StopAfterPresolveFieldNumber = 149 |
Field number for the "stop_after_presolve" field. | |
const int | StopAfterRootPropagationFieldNumber = 252 |
Field number for the "stop_after_root_propagation" field. | |
const int | LnsInitialDifficultyFieldNumber = 307 |
Field number for the "lns_initial_difficulty" field. | |
const int | LnsInitialDeterministicLimitFieldNumber = 308 |
Field number for the "lns_initial_deterministic_limit" field. | |
const int | UseLnsFieldNumber = 283 |
Field number for the "use_lns" field. | |
const int | UseLnsOnlyFieldNumber = 101 |
Field number for the "use_lns_only" field. | |
const int | SolutionPoolSizeFieldNumber = 193 |
Field number for the "solution_pool_size" field. | |
const int | UseRinsLnsFieldNumber = 129 |
Field number for the "use_rins_lns" field. | |
const int | UseFeasibilityPumpFieldNumber = 164 |
Field number for the "use_feasibility_pump" field. | |
const int | UseLbRelaxLnsFieldNumber = 255 |
Field number for the "use_lb_relax_lns" field. | |
const int | LbRelaxNumWorkersThresholdFieldNumber = 296 |
Field number for the "lb_relax_num_workers_threshold" field. | |
const int | FpRoundingFieldNumber = 165 |
Field number for the "fp_rounding" field. | |
const int | DiversifyLnsParamsFieldNumber = 137 |
Field number for the "diversify_lns_params" field. | |
const int | RandomizeSearchFieldNumber = 103 |
Field number for the "randomize_search" field. | |
const int | SearchRandomVariablePoolSizeFieldNumber = 104 |
Field number for the "search_random_variable_pool_size" field. | |
const int | PushAllTasksTowardStartFieldNumber = 262 |
Field number for the "push_all_tasks_toward_start" field. | |
const int | UseOptionalVariablesFieldNumber = 108 |
Field number for the "use_optional_variables" field. | |
const int | UseExactLpReasonFieldNumber = 109 |
Field number for the "use_exact_lp_reason" field. | |
const int | UseCombinedNoOverlapFieldNumber = 133 |
Field number for the "use_combined_no_overlap" field. | |
const int | AtMostOneMaxExpansionSizeFieldNumber = 270 |
Field number for the "at_most_one_max_expansion_size" field. | |
const int | CatchSigintSignalFieldNumber = 135 |
Field number for the "catch_sigint_signal" field. | |
const int | UseImpliedBoundsFieldNumber = 144 |
Field number for the "use_implied_bounds" field. | |
const int | PolishLpSolutionFieldNumber = 175 |
Field number for the "polish_lp_solution" field. | |
const int | LpPrimalToleranceFieldNumber = 266 |
Field number for the "lp_primal_tolerance" field. | |
const int | LpDualToleranceFieldNumber = 267 |
Field number for the "lp_dual_tolerance" field. | |
const int | ConvertIntervalsFieldNumber = 177 |
Field number for the "convert_intervals" field. | |
const int | SymmetryLevelFieldNumber = 183 |
Field number for the "symmetry_level" field. | |
const int | UseSymmetryInLpFieldNumber = 301 |
Field number for the "use_symmetry_in_lp" field. | |
const int | KeepSymmetryInPresolveFieldNumber = 303 |
Field number for the "keep_symmetry_in_presolve" field. | |
const int | SymmetryDetectionDeterministicTimeLimitFieldNumber = 302 |
Field number for the "symmetry_detection_deterministic_time_limit" field. | |
const int | NewLinearPropagationFieldNumber = 224 |
Field number for the "new_linear_propagation" field. | |
const int | LinearSplitSizeFieldNumber = 256 |
Field number for the "linear_split_size" field. | |
const int | LinearizationLevelFieldNumber = 90 |
Field number for the "linearization_level" field. | |
const int | BooleanEncodingLevelFieldNumber = 107 |
Field number for the "boolean_encoding_level" field. | |
const int | MaxDomainSizeWhenEncodingEqNeqConstraintsFieldNumber = 191 |
Field number for the "max_domain_size_when_encoding_eq_neq_constraints" field. | |
const int | MaxNumCutsFieldNumber = 91 |
Field number for the "max_num_cuts" field. | |
const int | CutLevelFieldNumber = 196 |
Field number for the "cut_level" field. | |
const int | OnlyAddCutsAtLevelZeroFieldNumber = 92 |
Field number for the "only_add_cuts_at_level_zero" field. | |
const int | AddObjectiveCutFieldNumber = 197 |
Field number for the "add_objective_cut" field. | |
const int | AddCgCutsFieldNumber = 117 |
Field number for the "add_cg_cuts" field. | |
const int | AddMirCutsFieldNumber = 120 |
Field number for the "add_mir_cuts" field. | |
const int | AddZeroHalfCutsFieldNumber = 169 |
Field number for the "add_zero_half_cuts" field. | |
const int | AddCliqueCutsFieldNumber = 172 |
Field number for the "add_clique_cuts" field. | |
const int | AddRltCutsFieldNumber = 279 |
Field number for the "add_rlt_cuts" field. | |
const int | MaxAllDiffCutSizeFieldNumber = 148 |
Field number for the "max_all_diff_cut_size" field. | |
const int | AddLinMaxCutsFieldNumber = 152 |
Field number for the "add_lin_max_cuts" field. | |
const int | MaxIntegerRoundingScalingFieldNumber = 119 |
Field number for the "max_integer_rounding_scaling" field. | |
const int | AddLpConstraintsLazilyFieldNumber = 112 |
Field number for the "add_lp_constraints_lazily" field. | |
const int | RootLpIterationsFieldNumber = 227 |
Field number for the "root_lp_iterations" field. | |
const int | MinOrthogonalityForLpConstraintsFieldNumber = 115 |
Field number for the "min_orthogonality_for_lp_constraints" field. | |
const int | MaxCutRoundsAtLevelZeroFieldNumber = 154 |
Field number for the "max_cut_rounds_at_level_zero" field. | |
const int | MaxConsecutiveInactiveCountFieldNumber = 121 |
Field number for the "max_consecutive_inactive_count" field. | |
const int | CutMaxActiveCountValueFieldNumber = 155 |
Field number for the "cut_max_active_count_value" field. | |
const int | CutActiveCountDecayFieldNumber = 156 |
Field number for the "cut_active_count_decay" field. | |
const int | CutCleanupTargetFieldNumber = 157 |
Field number for the "cut_cleanup_target" field. | |
const int | NewConstraintsBatchSizeFieldNumber = 122 |
Field number for the "new_constraints_batch_size" field. | |
const int | ExploitIntegerLpSolutionFieldNumber = 94 |
Field number for the "exploit_integer_lp_solution" field. | |
const int | ExploitAllLpSolutionFieldNumber = 116 |
Field number for the "exploit_all_lp_solution" field. | |
const int | ExploitBestSolutionFieldNumber = 130 |
Field number for the "exploit_best_solution" field. | |
const int | ExploitRelaxationSolutionFieldNumber = 161 |
Field number for the "exploit_relaxation_solution" field. | |
const int | ExploitObjectiveFieldNumber = 131 |
Field number for the "exploit_objective" field. | |
const int | DetectLinearizedProductFieldNumber = 277 |
Field number for the "detect_linearized_product" field. | |
const int | MipMaxBoundFieldNumber = 124 |
Field number for the "mip_max_bound" field. | |
const int | MipVarScalingFieldNumber = 125 |
Field number for the "mip_var_scaling" field. | |
const int | MipScaleLargeDomainFieldNumber = 225 |
Field number for the "mip_scale_large_domain" field. | |
const int | MipAutomaticallyScaleVariablesFieldNumber = 166 |
Field number for the "mip_automatically_scale_variables" field. | |
const int | OnlySolveIpFieldNumber = 222 |
Field number for the "only_solve_ip" field. | |
const int | MipWantedPrecisionFieldNumber = 126 |
Field number for the "mip_wanted_precision" field. | |
const int | MipMaxActivityExponentFieldNumber = 127 |
Field number for the "mip_max_activity_exponent" field. | |
const int | MipCheckPrecisionFieldNumber = 128 |
Field number for the "mip_check_precision" field. | |
const int | MipComputeTrueObjectiveBoundFieldNumber = 198 |
Field number for the "mip_compute_true_objective_bound" field. | |
const int | MipMaxValidMagnitudeFieldNumber = 199 |
Field number for the "mip_max_valid_magnitude" field. | |
const int | MipTreatHighMagnitudeBoundsAsInfinityFieldNumber = 278 |
Field number for the "mip_treat_high_magnitude_bounds_as_infinity" field. | |
const int | MipDropToleranceFieldNumber = 232 |
Field number for the "mip_drop_tolerance" field. | |
const int | MipPresolveLevelFieldNumber = 261 |
Field number for the "mip_presolve_level" field. |
Properties | |
static pb::MessageParser< SatParameters > | Parser [get] |
static pbr::MessageDescriptor | Descriptor [get] |
string | Name [get, set] |
In some context, like in a portfolio of search, it makes sense to name a given parameters set for logging purpose. | |
bool | HasName [get] |
Gets whether the "name" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.VariableOrder | PreferredVariableOrder [get, set] |
bool | HasPreferredVariableOrder [get] |
Gets whether the "preferred_variable_order" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.Polarity | InitialPolarity [get, set] |
bool | HasInitialPolarity [get] |
Gets whether the "initial_polarity" field is set. | |
bool | UsePhaseSaving [get, set] |
If this is true, then the polarity of a variable will be the last value it was assigned to, or its default polarity if it was never assigned since the call to ResetDecisionHeuristic(). | |
bool | HasUsePhaseSaving [get] |
Gets whether the "use_phase_saving" field is set. | |
int | PolarityRephaseIncrement [get, set] |
If non-zero, then we change the polarity heuristic after that many number of conflicts in an arithmetically increasing fashion. So x the first time, 2 * x the second time, etc... | |
bool | HasPolarityRephaseIncrement [get] |
Gets whether the "polarity_rephase_increment" field is set. | |
bool | PolarityExploitLsHints [get, set] |
If true and we have first solution LS workers, tries in some phase to follow a LS solutions that violates has litle constraints as possible. | |
bool | HasPolarityExploitLsHints [get] |
Gets whether the "polarity_exploit_ls_hints" field is set. | |
double | RandomPolarityRatio [get, set] |
The proportion of polarity chosen at random. Note that this take precedence over the phase saving heuristic. This is different from initial_polarity:POLARITY_RANDOM because it will select a new random polarity each time the variable is branched upon instead of selecting one initially and then always taking this choice. | |
bool | HasRandomPolarityRatio [get] |
Gets whether the "random_polarity_ratio" field is set. | |
double | RandomBranchesRatio [get, set] |
A number between 0 and 1 that indicates the proportion of branching variables that are selected randomly instead of choosing the first variable from the given variable_ordering strategy. | |
bool | HasRandomBranchesRatio [get] |
Gets whether the "random_branches_ratio" field is set. | |
bool | UseErwaHeuristic [get, set] |
Whether we use the ERWA (Exponential Recency Weighted Average) heuristic as described in "Learning Rate Based Branching Heuristic for SAT solvers", J.H.Liang, V. Ganesh, P. Poupart, K.Czarnecki, SAT 2016. | |
bool | HasUseErwaHeuristic [get] |
Gets whether the "use_erwa_heuristic" field is set. | |
double | InitialVariablesActivity [get, set] |
The initial value of the variables activity. A non-zero value only make sense when use_erwa_heuristic is true. Experiments with a value of 1e-2 together with the ERWA heuristic showed slighthly better result than simply using zero. The idea is that when the "learning rate" of a variable becomes lower than this value, then we prefer to branch on never explored before variables. This is not in the ERWA paper. | |
bool | HasInitialVariablesActivity [get] |
Gets whether the "initial_variables_activity" field is set. | |
bool | AlsoBumpVariablesInConflictReasons [get, set] |
When this is true, then the variables that appear in any of the reason of the variables in a conflict have their activity bumped. This is addition to the variables in the conflict, and the one that were used during conflict resolution. | |
bool | HasAlsoBumpVariablesInConflictReasons [get] |
Gets whether the "also_bump_variables_in_conflict_reasons" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm | MinimizationAlgorithm [get, set] |
bool | HasMinimizationAlgorithm [get] |
Gets whether the "minimization_algorithm" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm | BinaryMinimizationAlgorithm [get, set] |
bool | HasBinaryMinimizationAlgorithm [get] |
Gets whether the "binary_minimization_algorithm" field is set. | |
bool | SubsumptionDuringConflictAnalysis [get, set] |
At a really low cost, during the 1-UIP conflict computation, it is easy to detect if some of the involved reasons are subsumed by the current conflict. When this is true, such clauses are detached and later removed from the problem. | |
bool | HasSubsumptionDuringConflictAnalysis [get] |
Gets whether the "subsumption_during_conflict_analysis" field is set. | |
int | ClauseCleanupPeriod [get, set] |
Trigger a cleanup when this number of "deletable" clauses is learned. | |
bool | HasClauseCleanupPeriod [get] |
Gets whether the "clause_cleanup_period" field is set. | |
int | ClauseCleanupTarget [get, set] |
During a cleanup, we will always keep that number of "deletable" clauses. | |
bool | HasClauseCleanupTarget [get] |
Gets whether the "clause_cleanup_target" field is set. | |
double | ClauseCleanupRatio [get, set] |
During a cleanup, if clause_cleanup_target is 0, we will delete the clause_cleanup_ratio of "deletable" clauses instead of aiming for a fixed target of clauses to keep. | |
bool | HasClauseCleanupRatio [get] |
Gets whether the "clause_cleanup_ratio" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection | ClauseCleanupProtection [get, set] |
bool | HasClauseCleanupProtection [get] |
Gets whether the "clause_cleanup_protection" field is set. | |
int | ClauseCleanupLbdBound [get, set] |
All the clauses with a LBD (literal blocks distance) lower or equal to this parameters will always be kept. | |
bool | HasClauseCleanupLbdBound [get] |
Gets whether the "clause_cleanup_lbd_bound" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering | ClauseCleanupOrdering [get, set] |
bool | HasClauseCleanupOrdering [get] |
Gets whether the "clause_cleanup_ordering" field is set. | |
int | PbCleanupIncrement [get, set] |
Same as for the clauses, but for the learned pseudo-Boolean constraints. | |
bool | HasPbCleanupIncrement [get] |
Gets whether the "pb_cleanup_increment" field is set. | |
double | PbCleanupRatio [get, set] |
bool | HasPbCleanupRatio [get] |
Gets whether the "pb_cleanup_ratio" field is set. | |
double | VariableActivityDecay [get, set] |
Each time a conflict is found, the activities of some variables are increased by one. Then, the activity of all variables are multiplied by variable_activity_decay. | |
bool | HasVariableActivityDecay [get] |
Gets whether the "variable_activity_decay" field is set. | |
double | MaxVariableActivityValue [get, set] |
bool | HasMaxVariableActivityValue [get] |
Gets whether the "max_variable_activity_value" field is set. | |
double | GlucoseMaxDecay [get, set] |
The activity starts at 0.8 and increment by 0.01 every 5000 conflicts until 0.95. This "hack" seems to work well and comes from: | |
bool | HasGlucoseMaxDecay [get] |
Gets whether the "glucose_max_decay" field is set. | |
double | GlucoseDecayIncrement [get, set] |
bool | HasGlucoseDecayIncrement [get] |
Gets whether the "glucose_decay_increment" field is set. | |
int | GlucoseDecayIncrementPeriod [get, set] |
bool | HasGlucoseDecayIncrementPeriod [get] |
Gets whether the "glucose_decay_increment_period" field is set. | |
double | ClauseActivityDecay [get, set] |
Clause activity parameters (same effect as the one on the variables). | |
bool | HasClauseActivityDecay [get] |
Gets whether the "clause_activity_decay" field is set. | |
double | MaxClauseActivityValue [get, set] |
bool | HasMaxClauseActivityValue [get] |
Gets whether the "max_clause_activity_value" field is set. | |
pbc::RepeatedField< global::Google.OrTools.Sat.SatParameters.Types.RestartAlgorithm > | RestartAlgorithms [get] |
The restart strategies will change each time the strategy_counter is increased. The current strategy will simply be the one at index strategy_counter modulo the number of strategy. Note that if this list includes a NO_RESTART, nothing will change when it is reached because the strategy_counter will only increment after a restart. | |
string | DefaultRestartAlgorithms [get, set] |
bool | HasDefaultRestartAlgorithms [get] |
Gets whether the "default_restart_algorithms" field is set. | |
int | RestartPeriod [get, set] |
Restart period for the FIXED_RESTART strategy. This is also the multiplier used by the LUBY_RESTART strategy. | |
bool | HasRestartPeriod [get] |
Gets whether the "restart_period" field is set. | |
int | RestartRunningWindowSize [get, set] |
Size of the window for the moving average restarts. | |
bool | HasRestartRunningWindowSize [get] |
Gets whether the "restart_running_window_size" field is set. | |
double | RestartDlAverageRatio [get, set] |
In the moving average restart algorithms, a restart is triggered if the window average times this ratio is greater that the global average. | |
bool | HasRestartDlAverageRatio [get] |
Gets whether the "restart_dl_average_ratio" field is set. | |
double | RestartLbdAverageRatio [get, set] |
bool | HasRestartLbdAverageRatio [get] |
Gets whether the "restart_lbd_average_ratio" field is set. | |
bool | UseBlockingRestart [get, set] |
Block a moving restart algorithm if the trail size of the current conflict is greater than the multiplier times the moving average of the trail size at the previous conflicts. | |
bool | HasUseBlockingRestart [get] |
Gets whether the "use_blocking_restart" field is set. | |
int | BlockingRestartWindowSize [get, set] |
bool | HasBlockingRestartWindowSize [get] |
Gets whether the "blocking_restart_window_size" field is set. | |
double | BlockingRestartMultiplier [get, set] |
bool | HasBlockingRestartMultiplier [get] |
Gets whether the "blocking_restart_multiplier" field is set. | |
int | NumConflictsBeforeStrategyChanges [get, set] |
After each restart, if the number of conflict since the last strategy change is greater that this, then we increment a "strategy_counter" that can be use to change the search strategy used by the following restarts. | |
bool | HasNumConflictsBeforeStrategyChanges [get] |
Gets whether the "num_conflicts_before_strategy_changes" field is set. | |
double | StrategyChangeIncreaseRatio [get, set] |
The parameter num_conflicts_before_strategy_changes is increased by that much after each strategy change. | |
bool | HasStrategyChangeIncreaseRatio [get] |
Gets whether the "strategy_change_increase_ratio" field is set. | |
double | MaxTimeInSeconds [get, set] |
Maximum time allowed in seconds to solve a problem. The counter will starts at the beginning of the Solve() call. | |
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 as close as possible to a second. | |
bool | HasMaxDeterministicTime [get] |
Gets whether the "max_deterministic_time" field is set. | |
int | MaxNumDeterministicBatches [get, set] |
Stops after that number of batches has been scheduled. This only make sense when interleave_search is true. | |
bool | HasMaxNumDeterministicBatches [get] |
Gets whether the "max_num_deterministic_batches" field is set. | |
long | MaxNumberOfConflicts [get, set] |
Maximum number of conflicts allowed to solve a problem. | |
bool | HasMaxNumberOfConflicts [get] |
Gets whether the "max_number_of_conflicts" field is set. | |
long | MaxMemoryInMb [get, set] |
Maximum memory allowed for the whole thread containing the solver. The solver will abort as soon as it detects that this limit is crossed. As a result, this limit is approximative, but usually the solver will not go too much over. | |
bool | HasMaxMemoryInMb [get] |
Gets whether the "max_memory_in_mb" field is set. | |
double | AbsoluteGapLimit [get, set] |
Stop the search when the gap between the best feasible objective (O) and our best objective bound (B) is smaller than a limit. The exact definition is: | |
bool | HasAbsoluteGapLimit [get] |
Gets whether the "absolute_gap_limit" field is set. | |
double | RelativeGapLimit [get, set] |
bool | HasRelativeGapLimit [get] |
Gets whether the "relative_gap_limit" field is set. | |
int | RandomSeed [get, set] |
At the beginning of each solve, the random number generator used in some part of the solver is reinitialized to this seed. If you change the random seed, the solver may make different choices during the solving process. | |
bool | HasRandomSeed [get] |
Gets whether the "random_seed" field is set. | |
bool | PermuteVariableRandomly [get, set] |
This is mainly here to test the solver variability. Note that in tests, if not explicitly set to false, all 3 options will be set to true so that clients do not rely on the solver returning a specific solution if they are many equivalent optimal solutions. | |
bool | HasPermuteVariableRandomly [get] |
Gets whether the "permute_variable_randomly" field is set. | |
bool | PermutePresolveConstraintOrder [get, set] |
bool | HasPermutePresolveConstraintOrder [get] |
Gets whether the "permute_presolve_constraint_order" field is set. | |
bool | UseAbslRandom [get, set] |
bool | HasUseAbslRandom [get] |
Gets whether the "use_absl_random" field is set. | |
bool | LogSearchProgress [get, set] |
Whether the solver should log the search progress. This is the maing logging parameter and if this is false, none of the logging (callbacks, log_to_stdout, log_to_response, ...) will do anything. | |
bool | HasLogSearchProgress [get] |
Gets whether the "log_search_progress" field is set. | |
bool | LogSubsolverStatistics [get, set] |
Whether the solver should display per sub-solver search statistics. This is only useful is log_search_progress is set to true, and if the number of search workers is > 1. Note that in all case we display a bit of stats with one line per subsolver. | |
bool | HasLogSubsolverStatistics [get] |
Gets whether the "log_subsolver_statistics" field is set. | |
string | LogPrefix [get, set] |
Add a prefix to all logs. | |
bool | HasLogPrefix [get] |
Gets whether the "log_prefix" field is set. | |
bool | LogToStdout [get, set] |
Log to stdout. | |
bool | HasLogToStdout [get] |
Gets whether the "log_to_stdout" field is set. | |
bool | LogToResponse [get, set] |
Log to response proto. | |
bool | HasLogToResponse [get] |
Gets whether the "log_to_response" field is set. | |
bool | UsePbResolution [get, set] |
Whether to use pseudo-Boolean resolution to analyze a conflict. Note that this option only make sense if your problem is modelized using pseudo-Boolean constraints. If you only have clauses, this shouldn't change anything (except slow the solver down). | |
bool | HasUsePbResolution [get] |
Gets whether the "use_pb_resolution" field is set. | |
bool | MinimizeReductionDuringPbResolution [get, set] |
A different algorithm during PB resolution. It minimizes the number of calls to ReduceCoefficients() which can be time consuming. However, the search space will be different and if the coefficients are large, this may lead to integer overflows that could otherwise be prevented. | |
bool | HasMinimizeReductionDuringPbResolution [get] |
Gets whether the "minimize_reduction_during_pb_resolution" field is set. | |
bool | CountAssumptionLevelsInLbd [get, set] |
Whether or not the assumption levels are taken into account during the LBD computation. According to the reference below, not counting them improves the solver in some situation. Note that this only impact solves under assumptions. | |
bool | HasCountAssumptionLevelsInLbd [get] |
Gets whether the "count_assumption_levels_in_lbd" field is set. | |
int | PresolveBveThreshold [get, set] |
During presolve, only try to perform the bounded variable elimination (BVE) of a variable x if the number of occurrences of x times the number of occurrences of not(x) is not greater than this parameter. | |
bool | HasPresolveBveThreshold [get] |
Gets whether the "presolve_bve_threshold" field is set. | |
bool | FilterSatPostsolveClauses [get, set] |
Internal parameter. During BVE, if we eliminate a variable x, by default we will push all clauses containing x and all clauses containing not(x) to the postsolve. However, it is possible to write the postsolve code so that only one such set is needed. The idea is that, if we push the set containing a literal l, is to set l to false except if it is needed to satisfy one of the clause in the set. This is always beneficial, but for historical reason, not all our postsolve algorithm support this. | |
bool | HasFilterSatPostsolveClauses [get] |
Gets whether the "filter_sat_postsolve_clauses" field is set. | |
int | PresolveBveClauseWeight [get, set] |
During presolve, we apply BVE only if this weight times the number of clauses plus the number of clause literals is not increased. | |
bool | HasPresolveBveClauseWeight [get] |
Gets whether the "presolve_bve_clause_weight" field is set. | |
double | ProbingDeterministicTimeLimit [get, set] |
The maximum "deterministic" time limit to spend in probing. A value of zero will disable the probing. | |
bool | HasProbingDeterministicTimeLimit [get] |
Gets whether the "probing_deterministic_time_limit" field is set. | |
double | PresolveProbingDeterministicTimeLimit [get, set] |
bool | HasPresolveProbingDeterministicTimeLimit [get] |
Gets whether the "presolve_probing_deterministic_time_limit" field is set. | |
bool | PresolveBlockedClause [get, set] |
Whether we use an heuristic to detect some basic case of blocked clause in the SAT presolve. | |
bool | HasPresolveBlockedClause [get] |
Gets whether the "presolve_blocked_clause" field is set. | |
bool | PresolveUseBva [get, set] |
Whether or not we use Bounded Variable Addition (BVA) in the presolve. | |
bool | HasPresolveUseBva [get] |
Gets whether the "presolve_use_bva" field is set. | |
int | PresolveBvaThreshold [get, set] |
Apply Bounded Variable Addition (BVA) if the number of clauses is reduced by stricly more than this threshold. The algorithm described in the paper uses 0, but quick experiments showed that 1 is a good value. It may not be worth it to add a new variable just to remove one clause. | |
bool | HasPresolveBvaThreshold [get] |
Gets whether the "presolve_bva_threshold" field is set. | |
int | MaxPresolveIterations [get, set] |
In case of large reduction in a presolve iteration, we perform multiple presolve iterations. This parameter controls the maximum number of such presolve iterations. | |
bool | HasMaxPresolveIterations [get] |
Gets whether the "max_presolve_iterations" field is set. | |
bool | CpModelPresolve [get, set] |
Whether we presolve the cp_model before solving it. | |
bool | HasCpModelPresolve [get] |
Gets whether the "cp_model_presolve" field is set. | |
int | CpModelProbingLevel [get, set] |
How much effort do we spend on probing. 0 disables it completely. | |
bool | HasCpModelProbingLevel [get] |
Gets whether the "cp_model_probing_level" field is set. | |
bool | CpModelUseSatPresolve [get, set] |
Whether we also use the sat presolve when cp_model_presolve is true. | |
bool | HasCpModelUseSatPresolve [get] |
Gets whether the "cp_model_use_sat_presolve" field is set. | |
bool | RemoveFixedVariablesEarly [get, set] |
If cp_model_presolve is true and there is a large proportion of fixed variable after the first model copy, remap all the model to a dense set of variable before the full presolve even starts. This should help for LNS on large models. | |
bool | HasRemoveFixedVariablesEarly [get] |
Gets whether the "remove_fixed_variables_early" field is set. | |
bool | DetectTableWithCost [get, set] |
If true, we detect variable that are unique to a table constraint and only there to encode a cost on each tuple. This is usually the case when a WCSP (weighted constraint program) is encoded into CP-SAT format. | |
bool | HasDetectTableWithCost [get] |
Gets whether the "detect_table_with_cost" field is set. | |
int | TableCompressionLevel [get, set] |
How much we try to "compress" a table constraint. Compressing more leads to less Booleans and faster propagation but can reduced the quality of the lp relaxation. Values goes from 0 to 3 where we always try to fully compress a table. At 2, we try to automatically decide if it is worth it. | |
bool | HasTableCompressionLevel [get] |
Gets whether the "table_compression_level" field is set. | |
bool | ExpandAlldiffConstraints [get, set] |
If true, expand all_different constraints that are not permutations. Permutations (#Variables = #Values) are always expanded. | |
bool | HasExpandAlldiffConstraints [get] |
Gets whether the "expand_alldiff_constraints" field is set. | |
int | MaxAlldiffDomainSize [get, set] |
Max domain size for all_different constraints to be expanded. | |
bool | HasMaxAlldiffDomainSize [get] |
Gets whether the "max_alldiff_domain_size" field is set. | |
bool | ExpandReservoirConstraints [get, set] |
If true, expand the reservoir constraints by creating booleans for all possible precedences between event and encoding the constraint. | |
bool | HasExpandReservoirConstraints [get] |
Gets whether the "expand_reservoir_constraints" field is set. | |
bool | ExpandReservoirUsingCircuit [get, set] |
Mainly useful for testing. | |
bool | HasExpandReservoirUsingCircuit [get] |
Gets whether the "expand_reservoir_using_circuit" field is set. | |
bool | EncodeCumulativeAsReservoir [get, set] |
Encore cumulative with fixed demands and capacity as a reservoir constraint. The only reason you might want to do that is to test the reservoir propagation code! | |
bool | HasEncodeCumulativeAsReservoir [get] |
Gets whether the "encode_cumulative_as_reservoir" field is set. | |
int | MaxLinMaxSizeForExpansion [get, set] |
If the number of expressions in the lin_max is less that the max size parameter, model expansion replaces target = max(xi) by linear constraint with the introduction of new booleans bi such that bi => target == xi. | |
bool | HasMaxLinMaxSizeForExpansion [get] |
Gets whether the "max_lin_max_size_for_expansion" field is set. | |
bool | DisableConstraintExpansion [get, set] |
If true, it disable all constraint expansion. This should only be used to test the presolve of expanded constraints. | |
bool | HasDisableConstraintExpansion [get] |
Gets whether the "disable_constraint_expansion" field is set. | |
bool | EncodeComplexLinearConstraintWithInteger [get, set] |
Linear constraint with a complex right hand side (more than a single interval) need to be expanded, there is a couple of way to do that. | |
bool | HasEncodeComplexLinearConstraintWithInteger [get] |
Gets whether the "encode_complex_linear_constraint_with_integer" field is set. | |
double | MergeNoOverlapWorkLimit [get, set] |
During presolve, we use a maximum clique heuristic to merge together no-overlap constraints or at most one constraints. This code can be slow, so we have a limit in place on the number of explored nodes in the underlying graph. The internal limit is an int64, but we use double here to simplify manual input. | |
bool | HasMergeNoOverlapWorkLimit [get] |
Gets whether the "merge_no_overlap_work_limit" field is set. | |
double | MergeAtMostOneWorkLimit [get, set] |
bool | HasMergeAtMostOneWorkLimit [get] |
Gets whether the "merge_at_most_one_work_limit" field is set. | |
int | PresolveSubstitutionLevel [get, set] |
How much substitution (also called free variable aggregation in MIP litterature) should we perform at presolve. This currently only concerns variable appearing only in linear constraints. For now the value 0 turns it off and any positive value performs substitution. | |
bool | HasPresolveSubstitutionLevel [get] |
Gets whether the "presolve_substitution_level" field is set. | |
bool | PresolveExtractIntegerEnforcement [get, set] |
If true, we will extract from linear constraints, enforcement literals of the form "integer variable at bound => simplified constraint". This should always be beneficial except that we don't always handle them as efficiently as we could for now. This causes problem on manna81.mps (LP relaxation not as tight it seems) and on neos-3354841-apure.mps.gz (too many literals created this way). | |
bool | HasPresolveExtractIntegerEnforcement [get] |
Gets whether the "presolve_extract_integer_enforcement" field is set. | |
long | PresolveInclusionWorkLimit [get, set] |
A few presolve operations involve detecting constraints included in other constraint. Since there can be a quadratic number of such pairs, and processing them usually involve scanning them, the complexity of these operations can be big. This enforce a local deterministic limit on the number of entries scanned. Default is 1e8. | |
bool | HasPresolveInclusionWorkLimit [get] |
Gets whether the "presolve_inclusion_work_limit" field is set. | |
bool | IgnoreNames [get, set] |
If true, we don't keep names in our internal copy of the user given model. | |
bool | HasIgnoreNames [get] |
Gets whether the "ignore_names" field is set. | |
bool | InferAllDiffs [get, set] |
Run a max-clique code amongst all the x != y we can find and try to infer set of variables that are all different. This allows to close neos16.mps for instance. Note that we only run this code if there is no all_diff already in the model so that if a user want to add some all_diff, we assume it is well done and do not try to add more. | |
bool | HasInferAllDiffs [get] |
Gets whether the "infer_all_diffs" field is set. | |
bool | FindBigLinearOverlap [get, set] |
Try to find large "rectangle" in the linear constraint matrix with identical lines. If such rectangle is big enough, we can introduce a new integer variable corresponding to the common expression and greatly reduce the number of non-zero. | |
bool | HasFindBigLinearOverlap [get] |
Gets whether the "find_big_linear_overlap" field is set. | |
bool | UseSatInprocessing [get, set] |
Enable or disable "inprocessing" which is some SAT presolving done at each restart to the root level. | |
bool | HasUseSatInprocessing [get] |
Gets whether the "use_sat_inprocessing" field is set. | |
double | InprocessingDtimeRatio [get, set] |
Proportion of deterministic time we should spend on inprocessing. At each "restart", if the proportion is below this ratio, we will do some inprocessing, otherwise, we skip it for this restart. | |
bool | HasInprocessingDtimeRatio [get] |
Gets whether the "inprocessing_dtime_ratio" field is set. | |
double | InprocessingProbingDtime [get, set] |
The amount of dtime we should spend on probing for each inprocessing round. | |
bool | HasInprocessingProbingDtime [get] |
Gets whether the "inprocessing_probing_dtime" field is set. | |
double | InprocessingMinimizationDtime [get, set] |
Parameters for an heuristic similar to the one described in "An effective
learnt clause minimization approach for CDCL Sat Solvers", https://www.ijcai.org/proceedings/2017/0098.pdf. | |
bool | HasInprocessingMinimizationDtime [get] |
Gets whether the "inprocessing_minimization_dtime" field is set. | |
bool | InprocessingMinimizationUseConflictAnalysis [get, set] |
bool | HasInprocessingMinimizationUseConflictAnalysis [get] |
Gets whether the "inprocessing_minimization_use_conflict_analysis" field is set. | |
bool | InprocessingMinimizationUseAllOrderings [get, set] |
bool | HasInprocessingMinimizationUseAllOrderings [get] |
Gets whether the "inprocessing_minimization_use_all_orderings" field is set. | |
int | NumWorkers [get, set] |
Specify the number of parallel workers (i.e. threads) to use during search. This should usually be lower than your number of available cpus + hyperthread in your machine. | |
bool | HasNumWorkers [get] |
Gets whether the "num_workers" field is set. | |
int | NumSearchWorkers [get, set] |
bool | HasNumSearchWorkers [get] |
Gets whether the "num_search_workers" field is set. | |
int | NumFullSubsolvers [get, set] |
We distinguish subsolvers that consume a full thread, and the ones that are always interleaved. If left at zero, we will fix this with a default formula that depends on num_workers. But if you start modifying what runs, you might want to fix that to a given value depending on the num_workers you use. | |
bool | HasNumFullSubsolvers [get] |
Gets whether the "num_full_subsolvers" field is set. | |
pbc::RepeatedField< string > | Subsolvers [get] |
In multi-thread, the solver can be mainly seen as a portfolio of solvers with different parameters. This field indicates the names of the parameters that are used in multithread. This only applies to "full" subsolvers. | |
pbc::RepeatedField< string > | ExtraSubsolvers [get] |
A convenient way to add more workers types. These will be added at the beginning of the list. | |
pbc::RepeatedField< string > | IgnoreSubsolvers [get] |
Rather than fully specifying subsolvers, it is often convenient to just remove the ones that are not useful on a given problem or only keep specific ones for testing. Each string is interpreted as a "glob", so we support '*' and '?'. | |
pbc::RepeatedField< string > | FilterSubsolvers [get] |
pbc::RepeatedField< global::Google.OrTools.Sat.SatParameters > | SubsolverParams [get] |
It is possible to specify additional subsolver configuration. These can be referred by their params.name() in the fields above. Note that only the specified field will "overwrite" the ones of the base parameter. If a subsolver_params has the name of an existing subsolver configuration, the named parameters will be merged into the subsolver configuration. | |
bool | InterleaveSearch [get, set] |
Experimental. If this is true, then we interleave all our major search strategy and distribute the work amongst num_workers. | |
bool | HasInterleaveSearch [get] |
Gets whether the "interleave_search" field is set. | |
int | InterleaveBatchSize [get, set] |
bool | HasInterleaveBatchSize [get] |
Gets whether the "interleave_batch_size" field is set. | |
bool | ShareObjectiveBounds [get, set] |
Allows objective sharing between workers. | |
bool | HasShareObjectiveBounds [get] |
Gets whether the "share_objective_bounds" field is set. | |
bool | ShareLevelZeroBounds [get, set] |
Allows sharing of the bounds of modified variables at level 0. | |
bool | HasShareLevelZeroBounds [get] |
Gets whether the "share_level_zero_bounds" field is set. | |
bool | ShareBinaryClauses [get, set] |
Allows sharing of new learned binary clause between workers. | |
bool | HasShareBinaryClauses [get] |
Gets whether the "share_binary_clauses" field is set. | |
bool | ShareGlueClauses [get, set] |
Allows sharing of short glue clauses between workers. Implicitly disabled if share_binary_clauses is false. | |
bool | HasShareGlueClauses [get] |
Gets whether the "share_glue_clauses" field is set. | |
bool | MinimizeSharedClauses [get, set] |
Minimize and detect subsumption of shared clauses immediately after they are imported. | |
bool | HasMinimizeSharedClauses [get] |
Gets whether the "minimize_shared_clauses" field is set. | |
double | ShareGlueClausesDtime [get, set] |
The amount of dtime between each export of shared glue clauses. | |
bool | HasShareGlueClausesDtime [get] |
Gets whether the "share_glue_clauses_dtime" field is set. | |
bool | DebugPostsolveWithFullSolver [get, set] |
We have two different postsolve code. The default one should be better and it allows for a more powerful presolve, but it can be useful to postsolve using the full solver instead. | |
bool | HasDebugPostsolveWithFullSolver [get] |
Gets whether the "debug_postsolve_with_full_solver" field is set. | |
int | DebugMaxNumPresolveOperations [get, set] |
If positive, try to stop just after that many presolve rules have been applied. This is mainly useful for debugging presolve. | |
bool | HasDebugMaxNumPresolveOperations [get] |
Gets whether the "debug_max_num_presolve_operations" field is set. | |
bool | DebugCrashOnBadHint [get, set] |
Crash if we do not manage to complete the hint into a full solution. | |
bool | HasDebugCrashOnBadHint [get] |
Gets whether the "debug_crash_on_bad_hint" field is set. | |
bool | DebugCrashIfPresolveBreaksHint [get, set] |
Crash if presolve breaks a feasible hint. | |
bool | HasDebugCrashIfPresolveBreaksHint [get] |
Gets whether the "debug_crash_if_presolve_breaks_hint" field is set. | |
bool | UseOptimizationHints [get, set] |
For an optimization problem, whether we follow some hints in order to find a better first solution. For a variable with hint, the solver will always try to follow the hint. It will revert to the variable_branching default otherwise. | |
bool | HasUseOptimizationHints [get] |
Gets whether the "use_optimization_hints" field is set. | |
int | CoreMinimizationLevel [get, set] |
If positive, we spend some effort on each core: | |
bool | HasCoreMinimizationLevel [get] |
Gets whether the "core_minimization_level" field is set. | |
bool | FindMultipleCores [get, set] |
Whether we try to find more independent cores for a given set of assumptions in the core based max-SAT algorithms. | |
bool | HasFindMultipleCores [get] |
Gets whether the "find_multiple_cores" field is set. | |
bool | CoverOptimization [get, set] |
If true, when the max-sat algo find a core, we compute the minimal number of literals in the core that needs to be true to have a feasible solution. This is also called core exhaustion in more recent max-SAT papers. | |
bool | HasCoverOptimization [get] |
Gets whether the "cover_optimization" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder | MaxSatAssumptionOrder [get, set] |
bool | HasMaxSatAssumptionOrder [get] |
Gets whether the "max_sat_assumption_order" field is set. | |
bool | MaxSatReverseAssumptionOrder [get, set] |
If true, adds the assumption in the reverse order of the one defined by max_sat_assumption_order. | |
bool | HasMaxSatReverseAssumptionOrder [get] |
Gets whether the "max_sat_reverse_assumption_order" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm | MaxSatStratification [get, set] |
bool | HasMaxSatStratification [get] |
Gets whether the "max_sat_stratification" field is set. | |
double | PropagationLoopDetectionFactor [get, set] |
Some search decisions might cause a really large number of propagations to happen when integer variables with large domains are only reduced by 1 at each step. If we propagate more than the number of variable times this parameters we try to take counter-measure. Setting this to 0.0 disable this feature. | |
bool | HasPropagationLoopDetectionFactor [get] |
Gets whether the "propagation_loop_detection_factor" field is set. | |
bool | UsePrecedencesInDisjunctiveConstraint [get, set] |
When this is true, then a disjunctive constraint will try to use the precedence relations between time intervals to propagate their bounds further. For instance if task A and B are both before C and task A and B are in disjunction, then we can deduce that task C must start after duration(A) + duration(B) instead of simply max(duration(A), duration(B)), provided that the start time for all task was currently zero. | |
bool | HasUsePrecedencesInDisjunctiveConstraint [get] |
Gets whether the "use_precedences_in_disjunctive_constraint" field is set. | |
int | MaxSizeToCreatePrecedenceLiteralsInDisjunctive [get, set] |
Create one literal for each disjunction of two pairs of tasks. This slows down the solve time, but improves the lower bound of the objective in the makespan case. This will be triggered if the number of intervals is less or equal than the parameter and if use_strong_propagation_in_disjunctive is true. | |
bool | HasMaxSizeToCreatePrecedenceLiteralsInDisjunctive [get] |
Gets whether the "max_size_to_create_precedence_literals_in_disjunctive" field is set. | |
bool | UseStrongPropagationInDisjunctive [get, set] |
Enable stronger and more expensive propagation on no_overlap constraint. | |
bool | HasUseStrongPropagationInDisjunctive [get] |
Gets whether the "use_strong_propagation_in_disjunctive" field is set. | |
bool | UseDynamicPrecedenceInDisjunctive [get, set] |
Whether we try to branch on decision "interval A before interval B" rather than on intervals bounds. This usually works better, but slow down a bit the time to find the first solution. | |
bool | HasUseDynamicPrecedenceInDisjunctive [get] |
Gets whether the "use_dynamic_precedence_in_disjunctive" field is set. | |
bool | UseDynamicPrecedenceInCumulative [get, set] |
bool | HasUseDynamicPrecedenceInCumulative [get] |
Gets whether the "use_dynamic_precedence_in_cumulative" field is set. | |
bool | UseOverloadCheckerInCumulative [get, set] |
When this is true, the cumulative constraint is reinforced with overload checking, i.e., an additional level of reasoning based on energy. This additional level supplements the default level of reasoning as well as timetable edge finding. | |
bool | HasUseOverloadCheckerInCumulative [get] |
Gets whether the "use_overload_checker_in_cumulative" field is set. | |
bool | UseConservativeScaleOverloadChecker [get, set] |
Enable a heuristic to solve cumulative constraints using a modified energy constraint. We modify the usual energy definition by applying a super-additive function (also called "conservative scale" or "dual-feasible
function") to the demand and the durations of the tasks. | |
bool | HasUseConservativeScaleOverloadChecker [get] |
Gets whether the "use_conservative_scale_overload_checker" field is set. | |
bool | UseTimetableEdgeFindingInCumulative [get, set] |
When this is true, the cumulative constraint is reinforced with timetable edge finding, i.e., an additional level of reasoning based on the conjunction of energy and mandatory parts. This additional level supplements the default level of reasoning as well as overload_checker. | |
bool | HasUseTimetableEdgeFindingInCumulative [get] |
Gets whether the "use_timetable_edge_finding_in_cumulative" field is set. | |
int | MaxNumIntervalsForTimetableEdgeFinding [get, set] |
Max number of intervals for the timetable_edge_finding algorithm to propagate. A value of 0 disables the constraint. | |
bool | HasMaxNumIntervalsForTimetableEdgeFinding [get] |
Gets whether the "max_num_intervals_for_timetable_edge_finding" field is set. | |
bool | UseHardPrecedencesInCumulative [get, set] |
If true, detect and create constraint for integer variable that are "after" a set of intervals in the same cumulative constraint. | |
bool | HasUseHardPrecedencesInCumulative [get] |
Gets whether the "use_hard_precedences_in_cumulative" field is set. | |
bool | ExploitAllPrecedences [get, set] |
bool | HasExploitAllPrecedences [get] |
Gets whether the "exploit_all_precedences" field is set. | |
bool | UseDisjunctiveConstraintInCumulative [get, set] |
When this is true, the cumulative constraint is reinforced with propagators from the disjunctive constraint to improve the inference on a set of tasks that are disjunctive at the root of the problem. This additional level supplements the default level of reasoning. | |
bool | HasUseDisjunctiveConstraintInCumulative [get] |
Gets whether the "use_disjunctive_constraint_in_cumulative" field is set. | |
int | NoOverlap2DBooleanRelationsLimit [get, set] |
If less than this number of boxes are present in a no-overlap 2d, we create 4 Booleans per pair of boxes: | |
bool | HasNoOverlap2DBooleanRelationsLimit [get] |
Gets whether the "no_overlap_2d_boolean_relations_limit" field is set. | |
bool | UseTimetablingInNoOverlap2D [get, set] |
When this is true, the no_overlap_2d constraint is reinforced with propagators from the cumulative constraints. It consists of ignoring the position of rectangles in one position and projecting the no_overlap_2d on the other dimension to create a cumulative constraint. This is done on both axis. This additional level supplements the default level of reasoning. | |
bool | HasUseTimetablingInNoOverlap2D [get] |
Gets whether the "use_timetabling_in_no_overlap_2d" field is set. | |
bool | UseEnergeticReasoningInNoOverlap2D [get, set] |
When this is true, the no_overlap_2d constraint is reinforced with energetic reasoning. This additional level supplements the default level of reasoning. | |
bool | HasUseEnergeticReasoningInNoOverlap2D [get] |
Gets whether the "use_energetic_reasoning_in_no_overlap_2d" field is set. | |
bool | UseAreaEnergeticReasoningInNoOverlap2D [get, set] |
When this is true, the no_overlap_2d constraint is reinforced with an energetic reasoning that uses an area-based energy. This can be combined with the two other overlap heuristics above. | |
bool | HasUseAreaEnergeticReasoningInNoOverlap2D [get] |
Gets whether the "use_area_energetic_reasoning_in_no_overlap_2d" field is set. | |
bool | UseTryEdgeReasoningInNoOverlap2D [get, set] |
bool | HasUseTryEdgeReasoningInNoOverlap2D [get] |
Gets whether the "use_try_edge_reasoning_in_no_overlap_2d" field is set. | |
int | MaxPairsPairwiseReasoningInNoOverlap2D [get, set] |
If the number of pairs to look is below this threshold, do an extra step of propagation in the no_overlap_2d constraint by looking at all pairs of intervals. | |
bool | HasMaxPairsPairwiseReasoningInNoOverlap2D [get] |
Gets whether the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field is set. | |
int | MaximumRegionsToSplitInDisconnectedNoOverlap2D [get, set] |
Detects when the space where items of a no_overlap_2d constraint can placed is disjoint (ie., fixed boxes split the domain). When it is the case, we can introduce a boolean for each pair <item, component> encoding whether the item is in the component or not. Then we replace the original no_overlap_2d constraint by one no_overlap_2d constraint for each component, with the new booleans as the enforcement_literal of the intervals. This is equivalent to expanding the original no_overlap_2d constraint into a bin packing problem with each connected component being a bin. This heuristic is only done when the number of regions to split is less than this parameter and <= 1 disables it. | |
bool | HasMaximumRegionsToSplitInDisconnectedNoOverlap2D [get] |
Gets whether the "maximum_regions_to_split_in_disconnected_no_overlap_2d" field is set. | |
bool | UseLinear3ForNoOverlap2DPrecedences [get, set] |
When set, this activates a propagator for the no_overlap_2d constraint that uses any eventual linear constraints of the model in the form {start interval 1} - {end interval 2} + c*w <= ub to detect that two intervals must overlap in one dimension for some values of w. This is particularly useful for problems where the distance between two boxes is part of the model. | |
bool | HasUseLinear3ForNoOverlap2DPrecedences [get] |
Gets whether the "use_linear3_for_no_overlap_2d_precedences" field is set. | |
bool | UseDualSchedulingHeuristics [get, set] |
When set, it activates a few scheduling parameters to improve the lower bound of scheduling problems. This is only effective with multiple workers as it modifies the reduced_cost, lb_tree_search, and probing workers. | |
bool | HasUseDualSchedulingHeuristics [get] |
Gets whether the "use_dual_scheduling_heuristics" field is set. | |
bool | UseAllDifferentForCircuit [get, set] |
Turn on extra propagation for the circuit constraint. This can be quite slow. | |
bool | HasUseAllDifferentForCircuit [get] |
Gets whether the "use_all_different_for_circuit" field is set. | |
int | RoutingCutSubsetSizeForBinaryRelationBound [get, set] |
If the size of a subset of nodes of a RoutesConstraint is less than this value, use linear constraints of size 1 and 2 (such as capacity and time window constraints) enforced by the arc literals to compute cuts for this subset (unless the subset size is less than routing_cut_subset_size_for_tight_binary_relation_bound, in which case the corresponding algorithm is used instead). The algorithm for these cuts has a O(n^3) complexity, where n is the subset size. Hence the value of this parameter should not be too large (e.g. 10 or 20). | |
bool | HasRoutingCutSubsetSizeForBinaryRelationBound [get] |
Gets whether the "routing_cut_subset_size_for_binary_relation_bound" field is set. | |
int | RoutingCutSubsetSizeForTightBinaryRelationBound [get, set] |
Similar to above, but with a different algorithm producing better cuts, at the price of a higher O(2^n) complexity, where n is the subset size. Hence the value of this parameter should be small (e.g. less than 10). | |
bool | HasRoutingCutSubsetSizeForTightBinaryRelationBound [get] |
Gets whether the "routing_cut_subset_size_for_tight_binary_relation_bound" field is set. | |
int | RoutingCutSubsetSizeForExactBinaryRelationBound [get, set] |
Similar to above, but with an even stronger algorithm in O(n!). We try to be defensive and abort early or not run that often. Still the value of that parameter shouldn't really be much more than 10. | |
bool | HasRoutingCutSubsetSizeForExactBinaryRelationBound [get] |
Gets whether the "routing_cut_subset_size_for_exact_binary_relation_bound" field is set. | |
int | RoutingCutSubsetSizeForShortestPathsBound [get, set] |
Similar to routing_cut_subset_size_for_exact_binary_relation_bound but use a bound based on shortest path distances (which respect triangular inequality). This allows to derive bounds that are valid for any superset of a given subset. This is slow, so it shouldn't really be larger than 10. | |
bool | HasRoutingCutSubsetSizeForShortestPathsBound [get] |
Gets whether the "routing_cut_subset_size_for_shortest_paths_bound" field is set. | |
double | RoutingCutDpEffort [get, set] |
The amount of "effort" to spend in dynamic programming for computing routing cuts. This is in term of basic operations needed by the algorithm in the worst case, so a value like 1e8 should take less than a second to compute. | |
bool | HasRoutingCutDpEffort [get] |
Gets whether the "routing_cut_dp_effort" field is set. | |
int | RoutingCutMaxInfeasiblePathLength [get, set] |
If the length of an infeasible path is less than this value, a cut will be added to exclude it. | |
bool | HasRoutingCutMaxInfeasiblePathLength [get] |
Gets whether the "routing_cut_max_infeasible_path_length" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.SearchBranching | SearchBranching [get, set] |
bool | HasSearchBranching [get] |
Gets whether the "search_branching" field is set. | |
int | HintConflictLimit [get, set] |
Conflict limit used in the phase that exploit the solution hint. | |
bool | HasHintConflictLimit [get] |
Gets whether the "hint_conflict_limit" field is set. | |
bool | RepairHint [get, set] |
If true, the solver tries to repair the solution given in the hint. This search terminates after the 'hint_conflict_limit' is reached and the solver switches to regular search. If false, then we do a FIXED_SEARCH using the hint until the hint_conflict_limit is reached. | |
bool | HasRepairHint [get] |
Gets whether the "repair_hint" field is set. | |
bool | FixVariablesToTheirHintedValue [get, set] |
If true, variables appearing in the solution hints will be fixed to their hinted value. | |
bool | HasFixVariablesToTheirHintedValue [get] |
Gets whether the "fix_variables_to_their_hinted_value" field is set. | |
bool | UseProbingSearch [get, set] |
If true, search will continuously probe Boolean variables, and integer variable bounds. This parameter is set to true in parallel on the probing worker. | |
bool | HasUseProbingSearch [get] |
Gets whether the "use_probing_search" field is set. | |
bool | UseExtendedProbing [get, set] |
Use extended probing (probe bool_or, at_most_one, exactly_one). | |
bool | HasUseExtendedProbing [get] |
Gets whether the "use_extended_probing" field is set. | |
int | ProbingNumCombinationsLimit [get, set] |
How many combinations of pairs or triplets of variables we want to scan. | |
bool | HasProbingNumCombinationsLimit [get] |
Gets whether the "probing_num_combinations_limit" field is set. | |
double | ShavingDeterministicTimeInProbingSearch [get, set] |
Add a shaving phase (where the solver tries to prove that the lower or upper bound of a variable are infeasible) to the probing search. (<= 0 disables it). | |
bool | HasShavingDeterministicTimeInProbingSearch [get] |
Gets whether the "shaving_deterministic_time_in_probing_search" field is set. | |
double | ShavingSearchDeterministicTime [get, set] |
Specifies the amount of deterministic time spent of each try at shaving a bound in the shaving search. | |
bool | HasShavingSearchDeterministicTime [get] |
Gets whether the "shaving_search_deterministic_time" field is set. | |
long | ShavingSearchThreshold [get, set] |
Specifies the threshold between two modes in the shaving procedure. If the range of the variable/objective is less than this threshold, then the shaving procedure will try to remove values one by one. Otherwise, it will try to remove one range at a time. | |
bool | HasShavingSearchThreshold [get] |
Gets whether the "shaving_search_threshold" field is set. | |
bool | UseObjectiveLbSearch [get, set] |
If true, search will search in ascending max objective value (when minimizing) starting from the lower bound of the objective. | |
bool | HasUseObjectiveLbSearch [get] |
Gets whether the "use_objective_lb_search" field is set. | |
bool | UseObjectiveShavingSearch [get, set] |
This search differs from the previous search as it will not use assumptions to bound the objective, and it will recreate a full model with the hardcoded objective value. | |
bool | HasUseObjectiveShavingSearch [get] |
Gets whether the "use_objective_shaving_search" field is set. | |
int | VariablesShavingLevel [get, set] |
This search takes all Boolean or integer variables, and maximize or minimize them in order to reduce their domain. -1 is automatic, otherwise value 0 disables it, and 1, 2, or 3 changes something. | |
bool | HasVariablesShavingLevel [get] |
Gets whether the "variables_shaving_level" field is set. | |
long | PseudoCostReliabilityThreshold [get, set] |
The solver ignores the pseudo costs of variables with number of recordings less than this threshold. | |
bool | HasPseudoCostReliabilityThreshold [get] |
Gets whether the "pseudo_cost_reliability_threshold" field is set. | |
bool | OptimizeWithCore [get, set] |
The default optimization method is a simple "linear scan", each time trying to find a better solution than the previous one. If this is true, then we use a core-based approach (like in max-SAT) when we try to increase the lower bound instead. | |
bool | HasOptimizeWithCore [get] |
Gets whether the "optimize_with_core" field is set. | |
bool | OptimizeWithLbTreeSearch [get, set] |
Do a more conventional tree search (by opposition to SAT based one) where we keep all the explored node in a tree. This is meant to be used in a portfolio and focus on improving the objective lower bound. Keeping the whole tree allow us to report a better objective lower bound coming from the worst open node in the tree. | |
bool | HasOptimizeWithLbTreeSearch [get] |
Gets whether the "optimize_with_lb_tree_search" field is set. | |
bool | SaveLpBasisInLbTreeSearch [get, set] |
Experimental. Save the current LP basis at each node of the search tree so that when we jump around, we can load it and reduce the number of LP iterations needed. | |
bool | HasSaveLpBasisInLbTreeSearch [get] |
Gets whether the "save_lp_basis_in_lb_tree_search" field is set. | |
int | BinarySearchNumConflicts [get, set] |
If non-negative, perform a binary search on the objective variable in order to find an [min, max] interval outside of which the solver proved unsat/sat under this amount of conflict. This can quickly reduce the objective domain on some problems. | |
bool | HasBinarySearchNumConflicts [get] |
Gets whether the "binary_search_num_conflicts" field is set. | |
bool | OptimizeWithMaxHs [get, set] |
This has no effect if optimize_with_core is false. If true, use a different core-based algorithm similar to the max-HS algo for max-SAT. This is a hybrid MIP/CP approach and it uses a MIP solver in addition to the CP/SAT one. This is also related to the PhD work of tobyodavies@ "Automatic Logic-Based Benders Decomposition with MiniZinc" http://aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14489. | |
bool | HasOptimizeWithMaxHs [get] |
Gets whether the "optimize_with_max_hs" field is set. | |
bool | UseFeasibilityJump [get, set] |
Parameters for an heuristic similar to the one described in the paper: "Feasibility Jump: an LP-free Lagrangian MIP heuristic", Bjørnar Luteberget, Giorgio Sartor, 2023, Mathematical Programming Computation. | |
bool | HasUseFeasibilityJump [get] |
Gets whether the "use_feasibility_jump" field is set. | |
bool | UseLsOnly [get, set] |
Disable every other type of subsolver, setting this turns CP-SAT into a pure local-search solver. | |
bool | HasUseLsOnly [get] |
Gets whether the "use_ls_only" field is set. | |
double | FeasibilityJumpDecay [get, set] |
On each restart, we randomly choose if we use decay (with this parameter) or no decay. | |
bool | HasFeasibilityJumpDecay [get] |
Gets whether the "feasibility_jump_decay" field is set. | |
int | FeasibilityJumpLinearizationLevel [get, set] |
How much do we linearize the problem in the local search code. | |
bool | HasFeasibilityJumpLinearizationLevel [get] |
Gets whether the "feasibility_jump_linearization_level" field is set. | |
int | FeasibilityJumpRestartFactor [get, set] |
This is a factor that directly influence the work before each restart. Increasing it leads to longer restart. | |
bool | HasFeasibilityJumpRestartFactor [get] |
Gets whether the "feasibility_jump_restart_factor" field is set. | |
double | FeasibilityJumpBatchDtime [get, set] |
How much dtime for each LS batch. | |
bool | HasFeasibilityJumpBatchDtime [get] |
Gets whether the "feasibility_jump_batch_dtime" field is set. | |
double | FeasibilityJumpVarRandomizationProbability [get, set] |
Probability for a variable to have a non default value upon restarts or perturbations. | |
bool | HasFeasibilityJumpVarRandomizationProbability [get] |
Gets whether the "feasibility_jump_var_randomization_probability" field is set. | |
double | FeasibilityJumpVarPerburbationRangeRatio [get, set] |
Max distance between the default value and the pertubated value relative to the range of the domain of the variable. | |
bool | HasFeasibilityJumpVarPerburbationRangeRatio [get] |
Gets whether the "feasibility_jump_var_perburbation_range_ratio" field is set. | |
bool | FeasibilityJumpEnableRestarts [get, set] |
When stagnating, feasibility jump will either restart from a default solution (with some possible randomization), or randomly pertubate the current solution. This parameter selects the first option. | |
bool | HasFeasibilityJumpEnableRestarts [get] |
Gets whether the "feasibility_jump_enable_restarts" field is set. | |
int | FeasibilityJumpMaxExpandedConstraintSize [get, set] |
Maximum size of no_overlap or no_overlap_2d constraint for a quadratic expansion. This might look a lot, but by expanding such constraint, we get a linear time evaluation per single variable moves instead of a slow O(n
log n) one. | |
bool | HasFeasibilityJumpMaxExpandedConstraintSize [get] |
Gets whether the "feasibility_jump_max_expanded_constraint_size" field is set. | |
int | NumViolationLs [get, set] |
This will create incomplete subsolvers (that are not LNS subsolvers) that use the feasibility jump code to find improving solution, treating the objective improvement as a hard constraint. | |
bool | HasNumViolationLs [get] |
Gets whether the "num_violation_ls" field is set. | |
int | ViolationLsPerturbationPeriod [get, set] |
How long violation_ls should wait before perturbating a solution. | |
bool | HasViolationLsPerturbationPeriod [get] |
Gets whether the "violation_ls_perturbation_period" field is set. | |
double | ViolationLsCompoundMoveProbability [get, set] |
Probability of using compound move search each restart. | |
bool | HasViolationLsCompoundMoveProbability [get] |
Gets whether the "violation_ls_compound_move_probability" field is set. | |
int | SharedTreeNumWorkers [get, set] |
Enables shared tree search. If positive, start this many complete worker threads to explore a shared search tree. These workers communicate objective bounds and simple decision nogoods relating to the shared prefix of the tree, and will avoid exploring the same subtrees as one another. Specifying a negative number uses a heuristic to select an appropriate number of shared tree workeres based on the total number of workers. | |
bool | HasSharedTreeNumWorkers [get] |
Gets whether the "shared_tree_num_workers" field is set. | |
bool | UseSharedTreeSearch [get, set] |
Set on shared subtree workers. Users should not set this directly. | |
bool | HasUseSharedTreeSearch [get] |
Gets whether the "use_shared_tree_search" field is set. | |
int | SharedTreeWorkerMinRestartsPerSubtree [get, set] |
Minimum restarts before a worker will replace a subtree that looks "bad" based on the average LBD of learned clauses. | |
bool | HasSharedTreeWorkerMinRestartsPerSubtree [get] |
Gets whether the "shared_tree_worker_min_restarts_per_subtree" field is set. | |
bool | SharedTreeWorkerEnableTrailSharing [get, set] |
If true, workers share more of the information from their local trail. Specifically, literals implied by the shared tree decisions. | |
bool | HasSharedTreeWorkerEnableTrailSharing [get] |
Gets whether the "shared_tree_worker_enable_trail_sharing" field is set. | |
bool | SharedTreeWorkerEnablePhaseSharing [get, set] |
If true, shared tree workers share their target phase when returning an assigned subtree for the next worker to use. | |
bool | HasSharedTreeWorkerEnablePhaseSharing [get] |
Gets whether the "shared_tree_worker_enable_phase_sharing" field is set. | |
double | SharedTreeOpenLeavesPerWorker [get, set] |
How many open leaf nodes should the shared tree maintain per worker. | |
bool | HasSharedTreeOpenLeavesPerWorker [get] |
Gets whether the "shared_tree_open_leaves_per_worker" field is set. | |
int | SharedTreeMaxNodesPerWorker [get, set] |
In order to limit total shared memory and communication overhead, limit the total number of nodes that may be generated in the shared tree. If the shared tree runs out of unassigned leaves, workers act as portfolio workers. Note: this limit includes interior nodes, not just leaves. | |
bool | HasSharedTreeMaxNodesPerWorker [get] |
Gets whether the "shared_tree_max_nodes_per_worker" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy | SharedTreeSplitStrategy [get, set] |
bool | HasSharedTreeSplitStrategy [get] |
Gets whether the "shared_tree_split_strategy" field is set. | |
int | SharedTreeBalanceTolerance [get, set] |
How much deeper compared to the ideal max depth of the tree is considered "balanced" enough to still accept a split. Without such a tolerance, sometimes the tree can only be split by a single worker, and they may not generate a split for some time. In contrast, with a tolerance of 1, at least half of all workers should be able to split the tree as soon as a split becomes required. This only has an effect on SPLIT_STRATEGY_BALANCED_TREE and SPLIT_STRATEGY_DISCREPANCY. | |
bool | HasSharedTreeBalanceTolerance [get] |
Gets whether the "shared_tree_balance_tolerance" field is set. | |
bool | EnumerateAllSolutions [get, set] |
Whether we enumerate all solutions of a problem without objective. Note that setting this to true automatically disable some presolve reduction that can remove feasible solution. That is it has the same effect as setting keep_all_feasible_solutions_in_presolve. | |
bool | HasEnumerateAllSolutions [get] |
Gets whether the "enumerate_all_solutions" field is set. | |
bool | KeepAllFeasibleSolutionsInPresolve [get, set] |
If true, we disable the presolve reductions that remove feasible solutions from the search space. Such solution are usually dominated by a "better" solution that is kept, but depending on the situation, we might want to keep all solutions. | |
bool | HasKeepAllFeasibleSolutionsInPresolve [get] |
Gets whether the "keep_all_feasible_solutions_in_presolve" field is set. | |
bool | FillTightenedDomainsInResponse [get, set] |
If true, add information about the derived variable domains to the CpSolverResponse. It is an option because it makes the response slighly bigger and there is a bit more work involved during the postsolve to construct it, but it should still have a low overhead. See the tightened_variables field in CpSolverResponse for more details. | |
bool | HasFillTightenedDomainsInResponse [get] |
Gets whether the "fill_tightened_domains_in_response" field is set. | |
bool | FillAdditionalSolutionsInResponse [get, set] |
If true, the final response addition_solutions field will be filled with all solutions from our solutions pool. | |
bool | HasFillAdditionalSolutionsInResponse [get] |
Gets whether the "fill_additional_solutions_in_response" field is set. | |
bool | InstantiateAllVariables [get, set] |
If true, the solver will add a default integer branching strategy to the already defined search strategy. If not, some variable might still not be fixed at the end of the search. For now we assume these variable can just be set to their lower bound. | |
bool | HasInstantiateAllVariables [get] |
Gets whether the "instantiate_all_variables" field is set. | |
bool | AutoDetectGreaterThanAtLeastOneOf [get, set] |
If true, then the precedences propagator try to detect for each variable if it has a set of "optional incoming arc" for which at least one of them is present. This is usually useful to have but can be slow on model with a lot of precedence. | |
bool | HasAutoDetectGreaterThanAtLeastOneOf [get] |
Gets whether the "auto_detect_greater_than_at_least_one_of" field is set. | |
bool | StopAfterFirstSolution [get, set] |
For an optimization problem, stop the solver as soon as we have a solution. | |
bool | HasStopAfterFirstSolution [get] |
Gets whether the "stop_after_first_solution" field is set. | |
bool | StopAfterPresolve [get, set] |
Mainly used when improving the presolver. When true, stops the solver after the presolve is complete (or after loading and root level propagation). | |
bool | HasStopAfterPresolve [get] |
Gets whether the "stop_after_presolve" field is set. | |
bool | StopAfterRootPropagation [get, set] |
bool | HasStopAfterRootPropagation [get] |
Gets whether the "stop_after_root_propagation" field is set. | |
double | LnsInitialDifficulty [get, set] |
Initial parameters for neighborhood generation. | |
bool | HasLnsInitialDifficulty [get] |
Gets whether the "lns_initial_difficulty" field is set. | |
double | LnsInitialDeterministicLimit [get, set] |
bool | HasLnsInitialDeterministicLimit [get] |
Gets whether the "lns_initial_deterministic_limit" field is set. | |
bool | UseLns [get, set] |
Testing parameters used to disable all lns workers. | |
bool | HasUseLns [get] |
Gets whether the "use_lns" field is set. | |
bool | UseLnsOnly [get, set] |
Experimental parameters to disable everything but lns. | |
bool | HasUseLnsOnly [get] |
Gets whether the "use_lns_only" field is set. | |
int | SolutionPoolSize [get, set] |
Size of the top-n different solutions kept by the solver. This parameter must be > 0. Currently this only impact the "base" solution chosen for a LNS fragment. | |
bool | HasSolutionPoolSize [get] |
Gets whether the "solution_pool_size" field is set. | |
bool | UseRinsLns [get, set] |
Turns on relaxation induced neighborhood generator. | |
bool | HasUseRinsLns [get] |
Gets whether the "use_rins_lns" field is set. | |
bool | UseFeasibilityPump [get, set] |
Adds a feasibility pump subsolver along with lns subsolvers. | |
bool | HasUseFeasibilityPump [get] |
Gets whether the "use_feasibility_pump" field is set. | |
bool | UseLbRelaxLns [get, set] |
Turns on neighborhood generator based on local branching LP. Based on Huang et al., "Local Branching Relaxation Heuristics for Integer Linear
Programs", 2023. | |
bool | HasUseLbRelaxLns [get] |
Gets whether the "use_lb_relax_lns" field is set. | |
int | LbRelaxNumWorkersThreshold [get, set] |
Only use lb-relax if we have at least that many workers. | |
bool | HasLbRelaxNumWorkersThreshold [get] |
Gets whether the "lb_relax_num_workers_threshold" field is set. | |
global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod | FpRounding [get, set] |
bool | HasFpRounding [get] |
Gets whether the "fp_rounding" field is set. | |
bool | DiversifyLnsParams [get, set] |
If true, registers more lns subsolvers with different parameters. | |
bool | HasDiversifyLnsParams [get] |
Gets whether the "diversify_lns_params" field is set. | |
bool | RandomizeSearch [get, set] |
Randomize fixed search. | |
bool | HasRandomizeSearch [get] |
Gets whether the "randomize_search" field is set. | |
long | SearchRandomVariablePoolSize [get, set] |
Search randomization will collect the top 'search_random_variable_pool_size' valued variables, and pick one randomly. The value of the variable is specific to each strategy. | |
bool | HasSearchRandomVariablePoolSize [get] |
Gets whether the "search_random_variable_pool_size" field is set. | |
bool | PushAllTasksTowardStart [get, set] |
Experimental code: specify if the objective pushes all tasks toward the start of the schedule. | |
bool | HasPushAllTasksTowardStart [get] |
Gets whether the "push_all_tasks_toward_start" field is set. | |
bool | UseOptionalVariables [get, set] |
If true, we automatically detect variables whose constraint are always enforced by the same literal and we mark them as optional. This allows to propagate them as if they were present in some situation. | |
bool | HasUseOptionalVariables [get] |
Gets whether the "use_optional_variables" field is set. | |
bool | UseExactLpReason [get, set] |
The solver usually exploit the LP relaxation of a model. If this option is true, then whatever is infered by the LP will be used like an heuristic to compute EXACT propagation on the IP. So with this option, there is no numerical imprecision issues. | |
bool | HasUseExactLpReason [get] |
Gets whether the "use_exact_lp_reason" field is set. | |
bool | UseCombinedNoOverlap [get, set] |
This can be beneficial if there is a lot of no-overlap constraints but a relatively low number of different intervals in the problem. Like 1000 intervals, but 1M intervals in the no-overlap constraints covering them. | |
bool | HasUseCombinedNoOverlap [get] |
Gets whether the "use_combined_no_overlap" field is set. | |
int | AtMostOneMaxExpansionSize [get, set] |
All at_most_one constraints with a size <= param will be replaced by a quadratic number of binary implications. | |
bool | HasAtMostOneMaxExpansionSize [get] |
Gets whether the "at_most_one_max_expansion_size" field is set. | |
bool | CatchSigintSignal [get, set] |
Indicates if the CP-SAT layer should catch Control-C (SIGINT) signals when calling solve. If set, catching the SIGINT signal will terminate the search gracefully, as if a time limit was reached. | |
bool | HasCatchSigintSignal [get] |
Gets whether the "catch_sigint_signal" field is set. | |
bool | UseImpliedBounds [get, set] |
Stores and exploits "implied-bounds" in the solver. That is, relations of the form literal => (var >= bound). This is currently used to derive stronger cuts. | |
bool | HasUseImpliedBounds [get] |
Gets whether the "use_implied_bounds" field is set. | |
bool | PolishLpSolution [get, set] |
Whether we try to do a few degenerate iteration at the end of an LP solve to minimize the fractionality of the integer variable in the basis. This helps on some problems, but not so much on others. It also cost of bit of time to do such polish step. | |
bool | HasPolishLpSolution [get] |
Gets whether the "polish_lp_solution" field is set. | |
double | LpPrimalTolerance [get, set] |
The internal LP tolerances used by CP-SAT. These applies to the internal and scaled problem. If the domains of your variables are large it might be good to use lower tolerances. If your problem is binary with low coefficients, it might be good to use higher ones to speed-up the lp solves. | |
bool | HasLpPrimalTolerance [get] |
Gets whether the "lp_primal_tolerance" field is set. | |
double | LpDualTolerance [get, set] |
bool | HasLpDualTolerance [get] |
Gets whether the "lp_dual_tolerance" field is set. | |
bool | ConvertIntervals [get, set] |
Temporary flag util the feature is more mature. This convert intervals to the newer proto format that support affine start/var/end instead of just variables. | |
bool | HasConvertIntervals [get] |
Gets whether the "convert_intervals" field is set. | |
int | SymmetryLevel [get, set] |
Whether we try to automatically detect the symmetries in a model and exploit them. Currently, at level 1 we detect them in presolve and try to fix Booleans. At level 2, we also do some form of dynamic symmetry breaking during search. At level 3, we also detect symmetries for very large models, which can be slow. At level 4, we try to break as much symmetry as possible in presolve. | |
bool | HasSymmetryLevel [get] |
Gets whether the "symmetry_level" field is set. | |
bool | UseSymmetryInLp [get, set] |
When we have symmetry, it is possible to "fold" all variables from the same orbit into a single variable, while having the same power of LP relaxation. This can help significantly on symmetric problem. However there is currently a bit of overhead as the rest of the solver need to do some translation between the folded LP and the rest of the problem. | |
bool | HasUseSymmetryInLp [get] |
Gets whether the "use_symmetry_in_lp" field is set. | |
bool | KeepSymmetryInPresolve [get, set] |
Experimental. This will compute the symmetry of the problem once and for all. All presolve operations we do should keep the symmetry group intact or modify it properly. For now we have really little support for this. We will disable a bunch of presolve operations that could be supported. | |
bool | HasKeepSymmetryInPresolve [get] |
Gets whether the "keep_symmetry_in_presolve" field is set. | |
double | SymmetryDetectionDeterministicTimeLimit [get, set] |
Deterministic time limit for symmetry detection. | |
bool | HasSymmetryDetectionDeterministicTimeLimit [get] |
Gets whether the "symmetry_detection_deterministic_time_limit" field is set. | |
bool | NewLinearPropagation [get, set] |
The new linear propagation code treat all constraints at once and use an adaptation of Bellman-Ford-Tarjan to propagate constraint in a smarter order and potentially detect propagation cycle earlier. | |
bool | HasNewLinearPropagation [get] |
Gets whether the "new_linear_propagation" field is set. | |
int | LinearSplitSize [get, set] |
Linear constraints that are not pseudo-Boolean and that are longer than this size will be split into sqrt(size) intermediate sums in order to have faster propation in the CP engine. | |
bool | HasLinearSplitSize [get] |
Gets whether the "linear_split_size" field is set. | |
int | LinearizationLevel [get, set] |
A non-negative level indicating the type of constraints we consider in the LP relaxation. At level zero, no LP relaxation is used. At level 1, only the linear constraint and full encoding are added. At level 2, we also add all the Boolean constraints. | |
bool | HasLinearizationLevel [get] |
Gets whether the "linearization_level" field is set. | |
int | BooleanEncodingLevel [get, set] |
A non-negative level indicating how much we should try to fully encode Integer variables as Boolean. | |
bool | HasBooleanEncodingLevel [get] |
Gets whether the "boolean_encoding_level" field is set. | |
int | MaxDomainSizeWhenEncodingEqNeqConstraints [get, set] |
When loading a*x + b*y ==/!= c when x and y are both fully encoded. The solver may decide to replace the linear equation by a set of clauses. This is triggered if the sizes of the domains of x and y are below the threshold. | |
bool | HasMaxDomainSizeWhenEncodingEqNeqConstraints [get] |
Gets whether the "max_domain_size_when_encoding_eq_neq_constraints" field is set. | |
int | MaxNumCuts [get, set] |
The limit on the number of cuts in our cut pool. When this is reached we do not generate cuts anymore. | |
bool | HasMaxNumCuts [get] |
Gets whether the "max_num_cuts" field is set. | |
int | CutLevel [get, set] |
Control the global cut effort. Zero will turn off all cut. For now we just have one level. Note also that most cuts are only used at linearization level >= 2. | |
bool | HasCutLevel [get] |
Gets whether the "cut_level" field is set. | |
bool | OnlyAddCutsAtLevelZero [get, set] |
For the cut that can be generated at any level, this control if we only try to generate them at the root node. | |
bool | HasOnlyAddCutsAtLevelZero [get] |
Gets whether the "only_add_cuts_at_level_zero" field is set. | |
bool | AddObjectiveCut [get, set] |
When the LP objective is fractional, do we add the cut that forces the linear objective expression to be greater or equal to this fractional value rounded up? We can always do that since our objective is integer, and combined with MIR heuristic to reduce the coefficient of such cut, it can help. | |
bool | HasAddObjectiveCut [get] |
Gets whether the "add_objective_cut" field is set. | |
bool | AddCgCuts [get, set] |
Whether we generate and add Chvatal-Gomory cuts to the LP at root node. | |
bool | HasAddCgCuts [get] |
Gets whether the "add_cg_cuts" field is set. | |
bool | AddMirCuts [get, set] |
Whether we generate MIR cuts at root node. | |
bool | HasAddMirCuts [get] |
Gets whether the "add_mir_cuts" field is set. | |
bool | AddZeroHalfCuts [get, set] |
Whether we generate Zero-Half cuts at root node. | |
bool | HasAddZeroHalfCuts [get] |
Gets whether the "add_zero_half_cuts" field is set. | |
bool | AddCliqueCuts [get, set] |
Whether we generate clique cuts from the binary implication graph. Note that as the search goes on, this graph will contains new binary clauses learned by the SAT engine. | |
bool | HasAddCliqueCuts [get] |
Gets whether the "add_clique_cuts" field is set. | |
bool | AddRltCuts [get, set] |
Whether we generate RLT cuts. This is still experimental but can help on binary problem with a lot of clauses of size 3. | |
bool | HasAddRltCuts [get] |
Gets whether the "add_rlt_cuts" field is set. | |
int | MaxAllDiffCutSize [get, set] |
Cut generator for all diffs can add too many cuts for large all_diff constraints. This parameter restricts the large all_diff constraints to have a cut generator. | |
bool | HasMaxAllDiffCutSize [get] |
Gets whether the "max_all_diff_cut_size" field is set. | |
bool | AddLinMaxCuts [get, set] |
For the lin max constraints, generates the cuts described in "Strong
mixed-integer programming formulations for trained neural networks" by Ross Anderson et. (https://arxiv.org/pdf/1811.01988.pdf) | |
bool | HasAddLinMaxCuts [get] |
Gets whether the "add_lin_max_cuts" field is set. | |
int | MaxIntegerRoundingScaling [get, set] |
In the integer rounding procedure used for MIR and Gomory cut, the maximum "scaling" we use (must be positive). The lower this is, the lower the integer coefficients of the cut will be. Note that cut generated by lower values are not necessarily worse than cut generated by larger value. There is no strict dominance relationship. | |
bool | HasMaxIntegerRoundingScaling [get] |
Gets whether the "max_integer_rounding_scaling" field is set. | |
bool | AddLpConstraintsLazily [get, set] |
If true, we start by an empty LP, and only add constraints not satisfied by the current LP solution batch by batch. A constraint that is only added like this is known as a "lazy" constraint in the literature, except that we currently consider all constraints as lazy here. | |
bool | HasAddLpConstraintsLazily [get] |
Gets whether the "add_lp_constraints_lazily" field is set. | |
int | RootLpIterations [get, set] |
Even at the root node, we do not want to spend too much time on the LP if it is "difficult". So we solve it in "chunks" of that many iterations. The solve will be continued down in the tree or the next time we go back to the root node. | |
bool | HasRootLpIterations [get] |
Gets whether the "root_lp_iterations" field is set. | |
double | MinOrthogonalityForLpConstraints [get, set] |
While adding constraints, skip the constraints which have orthogonality less than 'min_orthogonality_for_lp_constraints' with already added constraints during current call. Orthogonality is defined as 1 - cosine(vector angle between constraints). A value of zero disable this feature. | |
bool | HasMinOrthogonalityForLpConstraints [get] |
Gets whether the "min_orthogonality_for_lp_constraints" field is set. | |
int | MaxCutRoundsAtLevelZero [get, set] |
Max number of time we perform cut generation and resolve the LP at level 0. | |
bool | HasMaxCutRoundsAtLevelZero [get] |
Gets whether the "max_cut_rounds_at_level_zero" field is set. | |
int | MaxConsecutiveInactiveCount [get, set] |
If a constraint/cut in LP is not active for that many consecutive OPTIMAL solves, remove it from the LP. Note that it might be added again later if it become violated by the current LP solution. | |
bool | HasMaxConsecutiveInactiveCount [get] |
Gets whether the "max_consecutive_inactive_count" field is set. | |
double | CutMaxActiveCountValue [get, set] |
These parameters are similar to sat clause management activity parameters. They are effective only if the number of generated cuts exceed the storage limit. Default values are based on a few experiments on miplib instances. | |
bool | HasCutMaxActiveCountValue [get] |
Gets whether the "cut_max_active_count_value" field is set. | |
double | CutActiveCountDecay [get, set] |
bool | HasCutActiveCountDecay [get] |
Gets whether the "cut_active_count_decay" field is set. | |
int | CutCleanupTarget [get, set] |
Target number of constraints to remove during cleanup. | |
bool | HasCutCleanupTarget [get] |
Gets whether the "cut_cleanup_target" field is set. | |
int | NewConstraintsBatchSize [get, set] |
Add that many lazy constraints (or cuts) at once in the LP. Note that at the beginning of the solve, we do add more than this. | |
bool | HasNewConstraintsBatchSize [get] |
Gets whether the "new_constraints_batch_size" field is set. | |
bool | ExploitIntegerLpSolution [get, set] |
If true and the Lp relaxation of the problem has an integer optimal solution, try to exploit it. Note that since the LP relaxation may not contain all the constraints, such a solution is not necessarily a solution of the full problem. | |
bool | HasExploitIntegerLpSolution [get] |
Gets whether the "exploit_integer_lp_solution" field is set. | |
bool | ExploitAllLpSolution [get, set] |
If true and the Lp relaxation of the problem has a solution, try to exploit it. This is same as above except in this case the lp solution might not be an integer solution. | |
bool | HasExploitAllLpSolution [get] |
Gets whether the "exploit_all_lp_solution" field is set. | |
bool | ExploitBestSolution [get, set] |
When branching on a variable, follow the last best solution value. | |
bool | HasExploitBestSolution [get] |
Gets whether the "exploit_best_solution" field is set. | |
bool | ExploitRelaxationSolution [get, set] |
When branching on a variable, follow the last best relaxation solution value. We use the relaxation with the tightest bound on the objective as the best relaxation solution. | |
bool | HasExploitRelaxationSolution [get] |
Gets whether the "exploit_relaxation_solution" field is set. | |
bool | ExploitObjective [get, set] |
When branching an a variable that directly affect the objective, branch on the value that lead to the best objective first. | |
bool | HasExploitObjective [get] |
Gets whether the "exploit_objective" field is set. | |
bool | DetectLinearizedProduct [get, set] |
Infer products of Boolean or of Boolean time IntegerVariable from the linear constrainst in the problem. This can be used in some cuts, altough for now we don't really exploit it. | |
bool | HasDetectLinearizedProduct [get] |
Gets whether the "detect_linearized_product" field is set. | |
double | MipMaxBound [get, set] |
We need to bound the maximum magnitude of the variables for CP-SAT, and that is the bound we use. If the MIP model expect larger variable value in the solution, then the converted model will likely not be relevant. | |
bool | HasMipMaxBound [get] |
Gets whether the "mip_max_bound" field is set. | |
double | MipVarScaling [get, set] |
All continuous variable of the problem will be multiplied by this factor. By default, we don't do any variable scaling and rely on the MIP model to specify continuous variable domain with the wanted precision. | |
bool | HasMipVarScaling [get] |
Gets whether the "mip_var_scaling" field is set. | |
bool | MipScaleLargeDomain [get, set] |
If this is false, then mip_var_scaling is only applied to variables with "small" domain. If it is true, we scale all floating point variable independenlty of their domain. | |
bool | HasMipScaleLargeDomain [get] |
Gets whether the "mip_scale_large_domain" field is set. | |
bool | MipAutomaticallyScaleVariables [get, set] |
If true, some continuous variable might be automatically scaled. For now, this is only the case where we detect that a variable is actually an integer multiple of a constant. For instance, variables of the form k * 0.5 are quite frequent, and if we detect this, we will scale such variable domain by 2 to make it implied integer. | |
bool | HasMipAutomaticallyScaleVariables [get] |
Gets whether the "mip_automatically_scale_variables" field is set. | |
bool | OnlySolveIp [get, set] |
If one try to solve a MIP model with CP-SAT, because we assume all variable to be integer after scaling, we will not necessarily have the correct optimal. Note however that all feasible solutions are valid since we will just solve a more restricted version of the original problem. | |
bool | HasOnlySolveIp [get] |
Gets whether the "only_solve_ip" field is set. | |
double | MipWantedPrecision [get, set] |
When scaling constraint with double coefficients to integer coefficients, we will multiply by a power of 2 and round the coefficients. We will choose the lowest power such that we have no potential overflow (see mip_max_activity_exponent) and the worst case constraint activity error does not exceed this threshold. | |
bool | HasMipWantedPrecision [get] |
Gets whether the "mip_wanted_precision" field is set. | |
int | MipMaxActivityExponent [get, set] |
To avoid integer overflow, we always force the maximum possible constraint activity (and objective value) according to the initial variable domain to be smaller than 2 to this given power. Because of this, we cannot always reach the "mip_wanted_precision" parameter above. | |
bool | HasMipMaxActivityExponent [get] |
Gets whether the "mip_max_activity_exponent" field is set. | |
double | MipCheckPrecision [get, set] |
As explained in mip_precision and mip_max_activity_exponent, we cannot always reach the wanted precision during scaling. We use this threshold to enphasize in the logs when the precision seems bad. | |
bool | HasMipCheckPrecision [get] |
Gets whether the "mip_check_precision" field is set. | |
bool | MipComputeTrueObjectiveBound [get, set] |
Even if we make big error when scaling the objective, we can always derive a correct lower bound on the original objective by using the exact lower bound on the scaled integer version of the objective. This should be fast, but if you don't care about having a precise lower bound, you can turn it off. | |
bool | HasMipComputeTrueObjectiveBound [get] |
Gets whether the "mip_compute_true_objective_bound" field is set. | |
double | MipMaxValidMagnitude [get, set] |
Any finite values in the input MIP must be below this threshold, otherwise the model will be reported invalid. This is needed to avoid floating point overflow when evaluating bounds * coeff for instance. We are a bit more defensive, but in practice, users shouldn't use super large values in a MIP. | |
bool | HasMipMaxValidMagnitude [get] |
Gets whether the "mip_max_valid_magnitude" field is set. | |
bool | MipTreatHighMagnitudeBoundsAsInfinity [get, set] |
By default, any variable/constraint bound with a finite value and a magnitude greater than the mip_max_valid_magnitude will result with a invalid model. This flags change the behavior such that such bounds are silently transformed to +∞ or -∞. | |
bool | HasMipTreatHighMagnitudeBoundsAsInfinity [get] |
Gets whether the "mip_treat_high_magnitude_bounds_as_infinity" field is set. | |
double | MipDropTolerance [get, set] |
Any value in the input mip with a magnitude lower than this will be set to zero. This is to avoid some issue in LP presolving. | |
bool | HasMipDropTolerance [get] |
Gets whether the "mip_drop_tolerance" field is set. | |
int | MipPresolveLevel [get, set] |
When solving a MIP, we do some basic floating point presolving before scaling the problem to integer to be handled by CP-SAT. This control how much of that presolve we do. It can help to better scale floating point model, but it is not always behaving nicely. | |
bool | HasMipPresolveLevel [get] |
Gets whether the "mip_presolve_level" field is set. |
Contains the definitions for all the sat algorithm parameters and their default values.
NEXT TAG: 325
Definition at line 360 of file SatParameters.pb.cs.
|
inline |
Definition at line 394 of file SatParameters.pb.cs.
|
inline |
Definition at line 402 of file SatParameters.pb.cs.
|
inline |
Definition at line 12242 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "absolute_gap_limit" field.
Definition at line 2114 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "add_cg_cuts" field.
Definition at line 8307 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "add_clique_cuts" field.
Definition at line 8401 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "add_lin_max_cuts" field.
Definition at line 8496 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "add_lp_constraints_lazily" field.
Definition at line 8567 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "add_mir_cuts" field.
Definition at line 8338 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "add_objective_cut" field.
Definition at line 8276 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "add_rlt_cuts" field.
Definition at line 8432 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "add_zero_half_cuts" field.
Definition at line 8369 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "also_bump_variables_in_conflict_reasons" field.
Definition at line 1047 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "at_most_one_max_expansion_size" field.
Definition at line 7661 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "auto_detect_greater_than_at_least_one_of" field.
Definition at line 7020 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "binary_minimization_algorithm" field.
Definition at line 1101 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "binary_search_num_conflicts" field.
Definition at line 6079 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "blocking_restart_multiplier" field.
Definition at line 1834 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "blocking_restart_window_size" field.
Definition at line 1807 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "boolean_encoding_level" field.
Definition at line 8111 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "catch_sigint_signal" field.
Definition at line 7693 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "clause_activity_decay" field.
Definition at line 1553 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "clause_cleanup_lbd_bound" field.
Definition at line 1285 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "clause_cleanup_ordering" field.
Definition at line 1312 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "clause_cleanup_period" field.
Definition at line 1164 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "clause_cleanup_protection" field.
Definition at line 1254 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "clause_cleanup_ratio" field.
Definition at line 1227 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "clause_cleanup_target" field.
Definition at line 1195 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "convert_intervals" field.
Definition at line 7851 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "core_minimization_level" field.
Definition at line 4373 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "count_assumption_levels_in_lbd" field.
Definition at line 2524 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "cover_optimization" field.
Definition at line 4436 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "cp_model_presolve" field.
Definition at line 2841 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "cp_model_probing_level" field.
Definition at line 2871 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "cp_model_use_sat_presolve" field.
Definition at line 2901 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "cut_active_count_decay" field.
Definition at line 8755 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "cut_cleanup_target" field.
Definition at line 8785 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "cut_level" field.
Definition at line 8211 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "cut_max_active_count_value" field.
Definition at line 8728 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "debug_crash_if_presolve_breaks_hint" field.
Definition at line 4307 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "debug_crash_on_bad_hint" field.
Definition at line 4277 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "debug_max_num_presolve_operations" field.
Definition at line 4247 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "debug_postsolve_with_full_solver" field.
Definition at line 4216 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "default_restart_algorithms" field.
Definition at line 1629 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "detect_linearized_product" field.
Definition at line 9006 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "detect_table_with_cost" field.
Definition at line 2970 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "disable_constraint_expansion" field.
Definition at line 3238 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "diversify_lns_params" field.
Definition at line 7436 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "encode_complex_linear_constraint_with_integer" field.
Definition at line 3269 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "encode_cumulative_as_reservoir" field.
Definition at line 3172 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "enumerate_all_solutions" field.
Definition at line 6841 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "expand_alldiff_constraints" field.
Definition at line 3034 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "expand_reservoir_constraints" field.
Definition at line 3095 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "expand_reservoir_using_circuit" field.
Definition at line 3140 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "exploit_all_lp_solution" field.
Definition at line 8881 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "exploit_all_precedences" field.
Definition at line 4931 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "exploit_best_solution" field.
Definition at line 8911 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "exploit_integer_lp_solution" field.
Definition at line 8849 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "exploit_objective" field.
Definition at line 8974 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "exploit_relaxation_solution" field.
Definition at line 8943 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "feasibility_jump_batch_dtime" field.
Definition at line 6299 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "feasibility_jump_decay" field.
Definition at line 6208 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "feasibility_jump_enable_restarts" field.
Definition at line 6393 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "feasibility_jump_linearization_level" field.
Definition at line 6238 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "feasibility_jump_max_expanded_constraint_size" field.
Definition at line 6426 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "feasibility_jump_restart_factor" field.
Definition at line 6269 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "feasibility_jump_var_perburbation_range_ratio" field.
Definition at line 6361 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "feasibility_jump_var_randomization_probability" field.
Definition at line 6330 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "fill_additional_solutions_in_response" field.
Definition at line 6954 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "fill_tightened_domains_in_response" field.
Definition at line 6913 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "filter_sat_postsolve_clauses" field.
Definition at line 2592 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "find_big_linear_overlap" field.
Definition at line 3536 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "find_multiple_cores" field.
Definition at line 4404 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "fix_variables_to_their_hinted_value" field.
Definition at line 5629 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "fp_rounding" field.
Definition at line 7406 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "glucose_decay_increment" field.
Definition at line 1496 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "glucose_decay_increment_period" field.
Definition at line 1523 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "glucose_max_decay" field.
Definition at line 1469 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "hint_conflict_limit" field.
Definition at line 5565 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "ignore_names" field.
Definition at line 3465 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "infer_all_diffs" field.
Definition at line 3503 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "initial_polarity" field.
Definition at line 776 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "initial_variables_activity" field.
Definition at line 1014 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "inprocessing_dtime_ratio" field.
Definition at line 3599 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "inprocessing_minimization_dtime" field.
Definition at line 3670 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "inprocessing_minimization_use_all_orderings" field.
Definition at line 3724 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "inprocessing_minimization_use_conflict_analysis" field.
Definition at line 3697 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "inprocessing_probing_dtime" field.
Definition at line 3629 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "instantiate_all_variables" field.
Definition at line 6987 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "interleave_batch_size" field.
Definition at line 4002 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "interleave_search" field.
Definition at line 3975 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "keep_all_feasible_solutions_in_presolve" field.
Definition at line 6879 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "keep_symmetry_in_presolve" field.
Definition at line 7953 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "lb_relax_num_workers_threshold" field.
Definition at line 7379 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "linearization_level" field.
Definition at line 8080 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "linear_split_size" field.
Definition at line 8047 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "lns_initial_deterministic_limit" field.
Definition at line 7165 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "lns_initial_difficulty" field.
Definition at line 7138 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "log_prefix" field.
Definition at line 2359 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "log_search_progress" field.
Definition at line 2297 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "log_subsolver_statistics" field.
Definition at line 2330 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "log_to_response" field.
Definition at line 2419 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "log_to_stdout" field.
Definition at line 2389 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "lp_dual_tolerance" field.
Definition at line 7819 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "lp_primal_tolerance" field.
Definition at line 7792 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_all_diff_cut_size" field.
Definition at line 8464 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_alldiff_domain_size" field.
Definition at line 3064 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_clause_activity_value" field.
Definition at line 1580 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_consecutive_inactive_count" field.
Definition at line 8696 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_cut_rounds_at_level_zero" field.
Definition at line 8664 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_deterministic_time" field.
Definition at line 1960 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_domain_size_when_encoding_eq_neq_constraints" field.
Definition at line 8144 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "maximum_regions_to_split_in_disconnected_no_overlap_2d" field.
Definition at line 5212 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_integer_rounding_scaling" field.
Definition at line 8534 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_lin_max_size_for_expansion" field.
Definition at line 3207 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_memory_in_mb" field.
Definition at line 2064 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_number_of_conflicts" field.
Definition at line 2028 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_num_cuts" field.
Definition at line 8179 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_num_deterministic_batches" field.
Definition at line 1991 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_num_intervals_for_timetable_edge_finding" field.
Definition at line 4868 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field.
Definition at line 5173 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_presolve_iterations" field.
Definition at line 2811 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_sat_assumption_order" field.
Definition at line 4463 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_sat_reverse_assumption_order" field.
Definition at line 4494 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_sat_stratification" field.
Definition at line 4521 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_size_to_create_precedence_literals_in_disjunctive" field.
Definition at line 4633 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_time_in_seconds" field.
Definition at line 1928 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "max_variable_activity_value" field.
Definition at line 1434 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "merge_at_most_one_work_limit" field.
Definition at line 3330 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "merge_no_overlap_work_limit" field.
Definition at line 3303 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "minimization_algorithm" field.
Definition at line 1074 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "minimize_reduction_during_pb_resolution" field.
Definition at line 2485 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "minimize_shared_clauses" field.
Definition at line 4154 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "min_orthogonality_for_lp_constraints" field.
Definition at line 8634 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_automatically_scale_variables" field.
Definition at line 9136 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_check_precision" field.
Definition at line 9298 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_compute_true_objective_bound" field.
Definition at line 9332 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_drop_tolerance" field.
Definition at line 9433 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_max_activity_exponent" field.
Definition at line 9266 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_max_bound" field.
Definition at line 9038 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_max_valid_magnitude" field.
Definition at line 9366 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_presolve_level" field.
Definition at line 9466 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_scale_large_domain" field.
Definition at line 9102 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_treat_high_magnitude_bounds_as_infinity" field.
Definition at line 9402 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_var_scaling" field.
Definition at line 9070 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "mip_wanted_precision" field.
Definition at line 9228 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "name" field.
Definition at line 722 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "new_constraints_batch_size" field.
Definition at line 8816 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "new_linear_propagation" field.
Definition at line 8015 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "no_overlap_2d_boolean_relations_limit" field.
Definition at line 5016 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "num_conflicts_before_strategy_changes" field.
Definition at line 1866 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "num_full_subsolvers" field.
Definition at line 3831 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "num_search_workers" field.
Definition at line 3797 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "num_violation_ls" field.
Definition at line 6458 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "num_workers" field.
Definition at line 3770 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "only_add_cuts_at_level_zero" field.
Definition at line 8242 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "only_solve_ip" field.
Definition at line 9179 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "optimize_with_core" field.
Definition at line 5976 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "optimize_with_lb_tree_search" field.
Definition at line 6010 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "optimize_with_max_hs" field.
Definition at line 6114 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "pb_cleanup_increment" field.
Definition at line 1342 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "pb_cleanup_ratio" field.
Definition at line 1369 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "permute_presolve_constraint_order" field.
Definition at line 2238 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "permute_variable_randomly" field.
Definition at line 2211 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "polarity_exploit_ls_hints" field.
Definition at line 881 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "polarity_rephase_increment" field.
Definition at line 850 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "polish_lp_solution" field.
Definition at line 7758 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "preferred_variable_order" field.
Definition at line 749 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_blocked_clause" field.
Definition at line 2716 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_bva_threshold" field.
Definition at line 2779 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_bve_clause_weight" field.
Definition at line 2623 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_bve_threshold" field.
Definition at line 2556 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_extract_integer_enforcement" field.
Definition at line 3398 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_inclusion_work_limit" field.
Definition at line 3435 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_probing_deterministic_time_limit" field.
Definition at line 2685 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_substitution_level" field.
Definition at line 3363 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "presolve_use_bva" field.
Definition at line 2746 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "probing_deterministic_time_limit" field.
Definition at line 2658 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "probing_num_combinations_limit" field.
Definition at line 5721 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "propagation_loop_detection_factor" field.
Definition at line 4560 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "pseudo_cost_reliability_threshold" field.
Definition at line 5943 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "push_all_tasks_toward_start" field.
Definition at line 7529 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "random_branches_ratio" field.
Definition at line 947 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "randomize_search" field.
Definition at line 7466 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "random_polarity_ratio" field.
Definition at line 915 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "random_seed" field.
Definition at line 2178 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "relative_gap_limit" field.
Definition at line 2141 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "remove_fixed_variables_early" field.
Definition at line 2934 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "repair_hint" field.
Definition at line 5598 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "restart_dl_average_ratio" field.
Definition at line 1721 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "restart_lbd_average_ratio" field.
Definition at line 1748 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "restart_period" field.
Definition at line 1660 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "restart_running_window_size" field.
Definition at line 1690 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "root_lp_iterations" field.
Definition at line 8600 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "routing_cut_dp_effort" field.
Definition at line 5477 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "routing_cut_max_infeasible_path_length" field.
Definition at line 5508 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "routing_cut_subset_size_for_binary_relation_bound" field.
Definition at line 5347 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "routing_cut_subset_size_for_exact_binary_relation_bound" field.
Definition at line 5411 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "routing_cut_subset_size_for_shortest_paths_bound" field.
Definition at line 5444 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "routing_cut_subset_size_for_tight_binary_relation_bound" field.
Definition at line 5379 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "save_lp_basis_in_lb_tree_search" field.
Definition at line 6046 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "search_branching" field.
Definition at line 5535 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "search_random_variable_pool_size" field.
Definition at line 7498 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "share_binary_clauses" field.
Definition at line 4092 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shared_tree_balance_tolerance" field.
Definition at line 6804 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shared_tree_max_nodes_per_worker" field.
Definition at line 6741 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shared_tree_num_workers" field.
Definition at line 6555 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shared_tree_open_leaves_per_worker" field.
Definition at line 6708 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shared_tree_split_strategy" field.
Definition at line 6768 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shared_tree_worker_enable_phase_sharing" field.
Definition at line 6678 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shared_tree_worker_enable_trail_sharing" field.
Definition at line 6647 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shared_tree_worker_min_restarts_per_subtree" field.
Definition at line 6616 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "share_glue_clauses" field.
Definition at line 4123 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "share_glue_clauses_dtime" field.
Definition at line 4184 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "share_level_zero_bounds" field.
Definition at line 4062 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "share_objective_bounds" field.
Definition at line 4032 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shaving_deterministic_time_in_probing_search" field.
Definition at line 5753 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shaving_search_deterministic_time" field.
Definition at line 5784 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "shaving_search_threshold" field.
Definition at line 5817 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "solution_pool_size" field.
Definition at line 7257 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "stop_after_first_solution" field.
Definition at line 7050 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "stop_after_presolve" field.
Definition at line 7081 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "stop_after_root_propagation" field.
Definition at line 7108 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "strategy_change_increase_ratio" field.
Definition at line 1897 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "subsumption_during_conflict_analysis" field.
Definition at line 1134 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "symmetry_detection_deterministic_time_limit" field.
Definition at line 7983 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "symmetry_level" field.
Definition at line 7886 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "table_compression_level" field.
Definition at line 3003 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_absl_random" field.
Definition at line 2265 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_all_different_for_circuit" field.
Definition at line 5310 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_area_energetic_reasoning_in_no_overlap_2d" field.
Definition at line 5114 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_blocking_restart" field.
Definition at line 1780 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_combined_no_overlap" field.
Definition at line 7630 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_conservative_scale_overload_checker" field.
Definition at line 4800 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_disjunctive_constraint_in_cumulative" field.
Definition at line 4972 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_dual_scheduling_heuristics" field.
Definition at line 5279 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_dynamic_precedence_in_cumulative" field.
Definition at line 4726 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_dynamic_precedence_in_disjunctive" field.
Definition at line 4699 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_energetic_reasoning_in_no_overlap_2d" field.
Definition at line 5082 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_erwa_heuristic" field.
Definition at line 979 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_exact_lp_reason" field.
Definition at line 7598 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_extended_probing" field.
Definition at line 5691 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_feasibility_jump" field.
Definition at line 6146 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_feasibility_pump" field.
Definition at line 7317 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_hard_precedences_in_cumulative" field.
Definition at line 4904 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_implied_bounds" field.
Definition at line 7725 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_lb_relax_lns" field.
Definition at line 7349 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_linear3_for_no_overlap_2d_precedences" field.
Definition at line 5247 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_lns" field.
Definition at line 7195 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_lns_only" field.
Definition at line 7225 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_ls_only" field.
Definition at line 6177 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_objective_lb_search" field.
Definition at line 5848 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_objective_shaving_search" field.
Definition at line 5880 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_optimization_hints" field.
Definition at line 4340 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_optional_variables" field.
Definition at line 7565 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_overload_checker_in_cumulative" field.
Definition at line 4763 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_pb_resolution" field.
Definition at line 2452 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_phase_saving" field.
Definition at line 818 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_precedences_in_disjunctive_constraint" field.
Definition at line 4599 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_probing_search" field.
Definition at line 5661 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_rins_lns" field.
Definition at line 7287 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_sat_inprocessing" field.
Definition at line 3567 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_shared_tree_search" field.
Definition at line 6585 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_strong_propagation_in_disjunctive" field.
Definition at line 4663 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_symmetry_in_lp" field.
Definition at line 7920 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_timetable_edge_finding_in_cumulative" field.
Definition at line 4837 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_timetabling_in_no_overlap_2d" field.
Definition at line 5050 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "use_try_edge_reasoning_in_no_overlap_2d" field.
Definition at line 5141 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "variable_activity_decay" field.
Definition at line 1407 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "variables_shaving_level" field.
Definition at line 5912 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "violation_ls_compound_move_probability" field.
Definition at line 6519 of file SatParameters.pb.cs.
|
inline |
Clears the value of the "violation_ls_perturbation_period" field.
Definition at line 6488 of file SatParameters.pb.cs.
|
inline |
Definition at line 692 of file SatParameters.pb.cs.
|
inline |
Definition at line 9472 of file SatParameters.pb.cs.
|
inline |
Definition at line 9478 of file SatParameters.pb.cs.
|
inline |
Definition at line 9765 of file SatParameters.pb.cs.
|
inline |
Definition at line 13887 of file SatParameters.pb.cs.
|
inline |
Definition at line 13065 of file SatParameters.pb.cs.
|
inline |
Definition at line 10050 of file SatParameters.pb.cs.
|
inline |
Definition at line 10056 of file SatParameters.pb.cs.
|
static |
Field number for the "absolute_gap_limit" field.
Definition at line 2069 of file SatParameters.pb.cs.
|
static |
Field number for the "add_cg_cuts" field.
Definition at line 8281 of file SatParameters.pb.cs.
|
static |
Field number for the "add_clique_cuts" field.
Definition at line 8374 of file SatParameters.pb.cs.
|
static |
Field number for the "add_lin_max_cuts" field.
Definition at line 8469 of file SatParameters.pb.cs.
|
static |
Field number for the "add_lp_constraints_lazily" field.
Definition at line 8539 of file SatParameters.pb.cs.
|
static |
Field number for the "add_mir_cuts" field.
Definition at line 8312 of file SatParameters.pb.cs.
|
static |
Field number for the "add_objective_cut" field.
Definition at line 8247 of file SatParameters.pb.cs.
|
static |
Field number for the "add_rlt_cuts" field.
Definition at line 8406 of file SatParameters.pb.cs.
|
static |
Field number for the "add_zero_half_cuts" field.
Definition at line 8343 of file SatParameters.pb.cs.
|
static |
Field number for the "also_bump_variables_in_conflict_reasons" field.
Definition at line 1019 of file SatParameters.pb.cs.
|
static |
Field number for the "at_most_one_max_expansion_size" field.
Definition at line 7635 of file SatParameters.pb.cs.
|
static |
Field number for the "auto_detect_greater_than_at_least_one_of" field.
Definition at line 6992 of file SatParameters.pb.cs.
|
static |
Field number for the "binary_minimization_algorithm" field.
Definition at line 1079 of file SatParameters.pb.cs.
|
static |
Field number for the "binary_search_num_conflicts" field.
Definition at line 6051 of file SatParameters.pb.cs.
|
static |
Field number for the "blocking_restart_multiplier" field.
Definition at line 1812 of file SatParameters.pb.cs.
|
static |
Field number for the "blocking_restart_window_size" field.
Definition at line 1785 of file SatParameters.pb.cs.
|
static |
Field number for the "boolean_encoding_level" field.
Definition at line 8085 of file SatParameters.pb.cs.
|
static |
Field number for the "catch_sigint_signal" field.
Definition at line 7666 of file SatParameters.pb.cs.
|
static |
Field number for the "clause_activity_decay" field.
Definition at line 1528 of file SatParameters.pb.cs.
|
static |
Field number for the "clause_cleanup_lbd_bound" field.
Definition at line 1259 of file SatParameters.pb.cs.
|
static |
Field number for the "clause_cleanup_ordering" field.
Definition at line 1290 of file SatParameters.pb.cs.
|
static |
Field number for the "clause_cleanup_period" field.
Definition at line 1139 of file SatParameters.pb.cs.
|
static |
Field number for the "clause_cleanup_protection" field.
Definition at line 1232 of file SatParameters.pb.cs.
|
static |
Field number for the "clause_cleanup_ratio" field.
Definition at line 1200 of file SatParameters.pb.cs.
|
static |
Field number for the "clause_cleanup_target" field.
Definition at line 1169 of file SatParameters.pb.cs.
|
static |
Field number for the "convert_intervals" field.
Definition at line 7824 of file SatParameters.pb.cs.
|
static |
Field number for the "core_minimization_level" field.
Definition at line 4345 of file SatParameters.pb.cs.
|
static |
Field number for the "count_assumption_levels_in_lbd" field.
Definition at line 2490 of file SatParameters.pb.cs.
|
static |
Field number for the "cover_optimization" field.
Definition at line 4409 of file SatParameters.pb.cs.
|
static |
Field number for the "cp_model_presolve" field.
Definition at line 2816 of file SatParameters.pb.cs.
|
static |
Field number for the "cp_model_probing_level" field.
Definition at line 2846 of file SatParameters.pb.cs.
|
static |
Field number for the "cp_model_use_sat_presolve" field.
Definition at line 2876 of file SatParameters.pb.cs.
|
static |
Field number for the "cut_active_count_decay" field.
Definition at line 8733 of file SatParameters.pb.cs.
|
static |
Field number for the "cut_cleanup_target" field.
Definition at line 8760 of file SatParameters.pb.cs.
|
static |
Field number for the "cut_level" field.
Definition at line 8184 of file SatParameters.pb.cs.
|
static |
Field number for the "cut_max_active_count_value" field.
Definition at line 8701 of file SatParameters.pb.cs.
|
static |
Field number for the "debug_crash_if_presolve_breaks_hint" field.
Definition at line 4282 of file SatParameters.pb.cs.
|
static |
Field number for the "debug_crash_on_bad_hint" field.
Definition at line 4252 of file SatParameters.pb.cs.
|
static |
Field number for the "debug_max_num_presolve_operations" field.
Definition at line 4221 of file SatParameters.pb.cs.
|
static |
Field number for the "debug_postsolve_with_full_solver" field.
Definition at line 4189 of file SatParameters.pb.cs.
|
static |
Field number for the "default_restart_algorithms" field.
Definition at line 1608 of file SatParameters.pb.cs.
|
static |
Field number for the "detect_linearized_product" field.
Definition at line 8979 of file SatParameters.pb.cs.
|
static |
Field number for the "detect_table_with_cost" field.
Definition at line 2939 of file SatParameters.pb.cs.
|
static |
Field number for the "disable_constraint_expansion" field.
Definition at line 3212 of file SatParameters.pb.cs.
|
static |
Field number for the "diversify_lns_params" field.
Definition at line 7411 of file SatParameters.pb.cs.
|
static |
Field number for the "encode_complex_linear_constraint_with_integer" field.
Definition at line 3243 of file SatParameters.pb.cs.
|
static |
Field number for the "encode_cumulative_as_reservoir" field.
Definition at line 3145 of file SatParameters.pb.cs.
|
static |
Field number for the "enumerate_all_solutions" field.
Definition at line 6809 of file SatParameters.pb.cs.
|
static |
Field number for the "expand_alldiff_constraints" field.
Definition at line 3008 of file SatParameters.pb.cs.
|
static |
Field number for the "expand_reservoir_constraints" field.
Definition at line 3069 of file SatParameters.pb.cs.
|
static |
Field number for the "expand_reservoir_using_circuit" field.
Definition at line 3100 of file SatParameters.pb.cs.
|
static |
Field number for the "exploit_all_lp_solution" field.
Definition at line 8854 of file SatParameters.pb.cs.
|
static |
Field number for the "exploit_all_precedences" field.
Definition at line 4909 of file SatParameters.pb.cs.
|
static |
Field number for the "exploit_best_solution" field.
Definition at line 8886 of file SatParameters.pb.cs.
|
static |
Field number for the "exploit_integer_lp_solution" field.
Definition at line 8821 of file SatParameters.pb.cs.
|
static |
Field number for the "exploit_objective" field.
Definition at line 8948 of file SatParameters.pb.cs.
|
static |
Field number for the "exploit_relaxation_solution" field.
Definition at line 8916 of file SatParameters.pb.cs.
|
static |
Field number for the "extra_subsolvers" field.
Definition at line 3877 of file SatParameters.pb.cs.
|
static |
Field number for the "feasibility_jump_batch_dtime" field.
Definition at line 6274 of file SatParameters.pb.cs.
|
static |
Field number for the "feasibility_jump_decay" field.
Definition at line 6182 of file SatParameters.pb.cs.
|
static |
Field number for the "feasibility_jump_enable_restarts" field.
Definition at line 6366 of file SatParameters.pb.cs.
|
static |
Field number for the "feasibility_jump_linearization_level" field.
Definition at line 6213 of file SatParameters.pb.cs.
|
static |
Field number for the "feasibility_jump_max_expanded_constraint_size" field.
Definition at line 6398 of file SatParameters.pb.cs.
|
static |
Field number for the "feasibility_jump_restart_factor" field.
Definition at line 6243 of file SatParameters.pb.cs.
|
static |
Field number for the "feasibility_jump_var_perburbation_range_ratio" field.
Definition at line 6335 of file SatParameters.pb.cs.
|
static |
Field number for the "feasibility_jump_var_randomization_probability" field.
Definition at line 6304 of file SatParameters.pb.cs.
|
static |
Field number for the "fill_additional_solutions_in_response" field.
Definition at line 6918 of file SatParameters.pb.cs.
|
static |
Field number for the "fill_tightened_domains_in_response" field.
Definition at line 6884 of file SatParameters.pb.cs.
|
static |
Field number for the "filter_sat_postsolve_clauses" field.
Definition at line 2561 of file SatParameters.pb.cs.
|
static |
Field number for the "filter_subsolvers" field.
Definition at line 3915 of file SatParameters.pb.cs.
|
static |
Field number for the "find_big_linear_overlap" field.
Definition at line 3508 of file SatParameters.pb.cs.
|
static |
Field number for the "find_multiple_cores" field.
Definition at line 4378 of file SatParameters.pb.cs.
|
static |
Field number for the "fix_variables_to_their_hinted_value" field.
Definition at line 5603 of file SatParameters.pb.cs.
|
static |
Field number for the "fp_rounding" field.
Definition at line 7384 of file SatParameters.pb.cs.
|
static |
Field number for the "glucose_decay_increment" field.
Definition at line 1474 of file SatParameters.pb.cs.
|
static |
Field number for the "glucose_decay_increment_period" field.
Definition at line 1501 of file SatParameters.pb.cs.
|
static |
Field number for the "glucose_max_decay" field.
Definition at line 1439 of file SatParameters.pb.cs.
|
static |
Field number for the "hint_conflict_limit" field.
Definition at line 5540 of file SatParameters.pb.cs.
|
static |
Field number for the "ignore_names" field.
Definition at line 3440 of file SatParameters.pb.cs.
|
static |
Field number for the "ignore_subsolvers" field.
Definition at line 3892 of file SatParameters.pb.cs.
|
static |
Field number for the "infer_all_diffs" field.
Definition at line 3470 of file SatParameters.pb.cs.
|
static |
Field number for the "initial_polarity" field.
Definition at line 754 of file SatParameters.pb.cs.
|
static |
Field number for the "initial_variables_activity" field.
Definition at line 984 of file SatParameters.pb.cs.
|
static |
Field number for the "inprocessing_dtime_ratio" field.
Definition at line 3572 of file SatParameters.pb.cs.
|
static |
Field number for the "inprocessing_minimization_dtime" field.
Definition at line 3634 of file SatParameters.pb.cs.
|
static |
Field number for the "inprocessing_minimization_use_all_orderings" field.
Definition at line 3702 of file SatParameters.pb.cs.
|
static |
Field number for the "inprocessing_minimization_use_conflict_analysis" field.
Definition at line 3675 of file SatParameters.pb.cs.
|
static |
Field number for the "inprocessing_probing_dtime" field.
Definition at line 3604 of file SatParameters.pb.cs.
|
static |
Field number for the "instantiate_all_variables" field.
Definition at line 6959 of file SatParameters.pb.cs.
|
static |
Field number for the "interleave_batch_size" field.
Definition at line 3980 of file SatParameters.pb.cs.
|
static |
Field number for the "interleave_search" field.
Definition at line 3944 of file SatParameters.pb.cs.
|
static |
Field number for the "keep_all_feasible_solutions_in_presolve" field.
Definition at line 6846 of file SatParameters.pb.cs.
|
static |
Field number for the "keep_symmetry_in_presolve" field.
Definition at line 7925 of file SatParameters.pb.cs.
|
static |
Field number for the "lb_relax_num_workers_threshold" field.
Definition at line 7354 of file SatParameters.pb.cs.
|
static |
Field number for the "linearization_level" field.
Definition at line 8052 of file SatParameters.pb.cs.
|
static |
Field number for the "linear_split_size" field.
Definition at line 8020 of file SatParameters.pb.cs.
|
static |
Field number for the "lns_initial_deterministic_limit" field.
Definition at line 7143 of file SatParameters.pb.cs.
|
static |
Field number for the "lns_initial_difficulty" field.
Definition at line 7113 of file SatParameters.pb.cs.
|
static |
Field number for the "log_prefix" field.
Definition at line 2335 of file SatParameters.pb.cs.
|
static |
Field number for the "log_search_progress" field.
Definition at line 2270 of file SatParameters.pb.cs.
|
static |
Field number for the "log_subsolver_statistics" field.
Definition at line 2302 of file SatParameters.pb.cs.
|
static |
Field number for the "log_to_response" field.
Definition at line 2394 of file SatParameters.pb.cs.
|
static |
Field number for the "log_to_stdout" field.
Definition at line 2364 of file SatParameters.pb.cs.
|
static |
Field number for the "lp_dual_tolerance" field.
Definition at line 7797 of file SatParameters.pb.cs.
|
static |
Field number for the "lp_primal_tolerance" field.
Definition at line 7763 of file SatParameters.pb.cs.
|
static |
Field number for the "max_all_diff_cut_size" field.
Definition at line 8437 of file SatParameters.pb.cs.
|
static |
Field number for the "max_alldiff_domain_size" field.
Definition at line 3039 of file SatParameters.pb.cs.
|
static |
Field number for the "max_clause_activity_value" field.
Definition at line 1558 of file SatParameters.pb.cs.
|
static |
Field number for the "max_consecutive_inactive_count" field.
Definition at line 8669 of file SatParameters.pb.cs.
|
static |
Field number for the "max_cut_rounds_at_level_zero" field.
Definition at line 8639 of file SatParameters.pb.cs.
|
static |
Field number for the "max_deterministic_time" field.
Definition at line 1933 of file SatParameters.pb.cs.
|
static |
Field number for the "max_domain_size_when_encoding_eq_neq_constraints" field.
Definition at line 8116 of file SatParameters.pb.cs.
|
static |
Field number for the "maximum_regions_to_split_in_disconnected_no_overlap_2d" field.
Definition at line 5178 of file SatParameters.pb.cs.
|
static |
Field number for the "max_integer_rounding_scaling" field.
Definition at line 8501 of file SatParameters.pb.cs.
|
static |
Field number for the "max_lin_max_size_for_expansion" field.
Definition at line 3177 of file SatParameters.pb.cs.
|
static |
Field number for the "max_memory_in_mb" field.
Definition at line 2033 of file SatParameters.pb.cs.
|
static |
Field number for the "max_number_of_conflicts" field.
Definition at line 1996 of file SatParameters.pb.cs.
|
static |
Field number for the "max_num_cuts" field.
Definition at line 8149 of file SatParameters.pb.cs.
|
static |
Field number for the "max_num_deterministic_batches" field.
Definition at line 1965 of file SatParameters.pb.cs.
|
static |
Field number for the "max_num_intervals_for_timetable_edge_finding" field.
Definition at line 4842 of file SatParameters.pb.cs.
|
static |
Field number for the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field.
Definition at line 5146 of file SatParameters.pb.cs.
|
static |
Field number for the "max_presolve_iterations" field.
Definition at line 2784 of file SatParameters.pb.cs.
|
static |
Field number for the "max_sat_assumption_order" field.
Definition at line 4441 of file SatParameters.pb.cs.
|
static |
Field number for the "max_sat_reverse_assumption_order" field.
Definition at line 4468 of file SatParameters.pb.cs.
|
static |
Field number for the "max_sat_stratification" field.
Definition at line 4499 of file SatParameters.pb.cs.
|
static |
Field number for the "max_size_to_create_precedence_literals_in_disjunctive" field.
Definition at line 4604 of file SatParameters.pb.cs.
|
static |
Field number for the "max_time_in_seconds" field.
Definition at line 1902 of file SatParameters.pb.cs.
|
static |
Field number for the "max_variable_activity_value" field.
Definition at line 1412 of file SatParameters.pb.cs.
|
static |
Field number for the "merge_at_most_one_work_limit" field.
Definition at line 3308 of file SatParameters.pb.cs.
|
static |
Field number for the "merge_no_overlap_work_limit" field.
Definition at line 3274 of file SatParameters.pb.cs.
|
static |
Field number for the "minimization_algorithm" field.
Definition at line 1052 of file SatParameters.pb.cs.
|
static |
Field number for the "minimize_reduction_during_pb_resolution" field.
Definition at line 2457 of file SatParameters.pb.cs.
|
static |
Field number for the "minimize_shared_clauses" field.
Definition at line 4128 of file SatParameters.pb.cs.
|
static |
Field number for the "min_orthogonality_for_lp_constraints" field.
Definition at line 8605 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_automatically_scale_variables" field.
Definition at line 9107 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_check_precision" field.
Definition at line 9271 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_compute_true_objective_bound" field.
Definition at line 9303 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_drop_tolerance" field.
Definition at line 9407 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_max_activity_exponent" field.
Definition at line 9233 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_max_bound" field.
Definition at line 9011 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_max_valid_magnitude" field.
Definition at line 9337 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_presolve_level" field.
Definition at line 9438 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_scale_large_domain" field.
Definition at line 9075 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_treat_high_magnitude_bounds_as_infinity" field.
Definition at line 9371 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_var_scaling" field.
Definition at line 9043 of file SatParameters.pb.cs.
|
static |
Field number for the "mip_wanted_precision" field.
Definition at line 9184 of file SatParameters.pb.cs.
|
static |
Field number for the "name" field.
Definition at line 697 of file SatParameters.pb.cs.
|
static |
Field number for the "new_constraints_batch_size" field.
Definition at line 8790 of file SatParameters.pb.cs.
|
static |
Field number for the "new_linear_propagation" field.
Definition at line 7988 of file SatParameters.pb.cs.
|
static |
Field number for the "no_overlap_2d_boolean_relations_limit" field.
Definition at line 4977 of file SatParameters.pb.cs.
|
static |
Field number for the "num_conflicts_before_strategy_changes" field.
Definition at line 1839 of file SatParameters.pb.cs.
|
static |
Field number for the "num_full_subsolvers" field.
Definition at line 3802 of file SatParameters.pb.cs.
|
static |
Field number for the "num_search_workers" field.
Definition at line 3775 of file SatParameters.pb.cs.
|
static |
Field number for the "num_violation_ls" field.
Definition at line 6431 of file SatParameters.pb.cs.
|
static |
Field number for the "num_workers" field.
Definition at line 3729 of file SatParameters.pb.cs.
|
static |
Field number for the "only_add_cuts_at_level_zero" field.
Definition at line 8216 of file SatParameters.pb.cs.
|
static |
Field number for the "only_solve_ip" field.
Definition at line 9141 of file SatParameters.pb.cs.
|
static |
Field number for the "optimize_with_core" field.
Definition at line 5948 of file SatParameters.pb.cs.
|
static |
Field number for the "optimize_with_lb_tree_search" field.
Definition at line 5981 of file SatParameters.pb.cs.
|
static |
Field number for the "optimize_with_max_hs" field.
Definition at line 6084 of file SatParameters.pb.cs.
|
static |
Field number for the "pb_cleanup_increment" field.
Definition at line 1317 of file SatParameters.pb.cs.
|
static |
Field number for the "pb_cleanup_ratio" field.
Definition at line 1347 of file SatParameters.pb.cs.
|
static |
Field number for the "permute_presolve_constraint_order" field.
Definition at line 2216 of file SatParameters.pb.cs.
|
static |
Field number for the "permute_variable_randomly" field.
Definition at line 2183 of file SatParameters.pb.cs.
|
static |
Field number for the "polarity_exploit_ls_hints" field.
Definition at line 855 of file SatParameters.pb.cs.
|
static |
Field number for the "polarity_rephase_increment" field.
Definition at line 823 of file SatParameters.pb.cs.
|
static |
Field number for the "polish_lp_solution" field.
Definition at line 7730 of file SatParameters.pb.cs.
|
static |
Field number for the "preferred_variable_order" field.
Definition at line 727 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_blocked_clause" field.
Definition at line 2690 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_bva_threshold" field.
Definition at line 2751 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_bve_clause_weight" field.
Definition at line 2597 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_bve_threshold" field.
Definition at line 2529 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_extract_integer_enforcement" field.
Definition at line 3368 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_inclusion_work_limit" field.
Definition at line 3403 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_probing_deterministic_time_limit" field.
Definition at line 2663 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_substitution_level" field.
Definition at line 3335 of file SatParameters.pb.cs.
|
static |
Field number for the "presolve_use_bva" field.
Definition at line 2721 of file SatParameters.pb.cs.
|
static |
Field number for the "probing_deterministic_time_limit" field.
Definition at line 2628 of file SatParameters.pb.cs.
|
static |
Field number for the "probing_num_combinations_limit" field.
Definition at line 5696 of file SatParameters.pb.cs.
|
static |
Field number for the "propagation_loop_detection_factor" field.
Definition at line 4526 of file SatParameters.pb.cs.
|
static |
Field number for the "pseudo_cost_reliability_threshold" field.
Definition at line 5917 of file SatParameters.pb.cs.
|
static |
Field number for the "push_all_tasks_toward_start" field.
Definition at line 7503 of file SatParameters.pb.cs.
|
static |
Field number for the "random_branches_ratio" field.
Definition at line 920 of file SatParameters.pb.cs.
|
static |
Field number for the "randomize_search" field.
Definition at line 7441 of file SatParameters.pb.cs.
|
static |
Field number for the "random_polarity_ratio" field.
Definition at line 886 of file SatParameters.pb.cs.
|
static |
Field number for the "random_seed" field.
Definition at line 2146 of file SatParameters.pb.cs.
|
static |
Field number for the "relative_gap_limit" field.
Definition at line 2119 of file SatParameters.pb.cs.
|
static |
Field number for the "remove_fixed_variables_early" field.
Definition at line 2906 of file SatParameters.pb.cs.
|
static |
Field number for the "repair_hint" field.
Definition at line 5570 of file SatParameters.pb.cs.
|
static |
Field number for the "restart_algorithms" field.
Definition at line 1585 of file SatParameters.pb.cs.
|
static |
Field number for the "restart_dl_average_ratio" field.
Definition at line 1695 of file SatParameters.pb.cs.
|
static |
Field number for the "restart_lbd_average_ratio" field.
Definition at line 1726 of file SatParameters.pb.cs.
|
static |
Field number for the "restart_period" field.
Definition at line 1634 of file SatParameters.pb.cs.
|
static |
Field number for the "restart_running_window_size" field.
Definition at line 1665 of file SatParameters.pb.cs.
|
static |
Field number for the "root_lp_iterations" field.
Definition at line 8572 of file SatParameters.pb.cs.
|
static |
Field number for the "routing_cut_dp_effort" field.
Definition at line 5449 of file SatParameters.pb.cs.
|
static |
Field number for the "routing_cut_max_infeasible_path_length" field.
Definition at line 5482 of file SatParameters.pb.cs.
|
static |
Field number for the "routing_cut_subset_size_for_binary_relation_bound" field.
Definition at line 5315 of file SatParameters.pb.cs.
|
static |
Field number for the "routing_cut_subset_size_for_exact_binary_relation_bound" field.
Definition at line 5384 of file SatParameters.pb.cs.
|
static |
Field number for the "routing_cut_subset_size_for_shortest_paths_bound" field.
Definition at line 5416 of file SatParameters.pb.cs.
|
static |
Field number for the "routing_cut_subset_size_for_tight_binary_relation_bound" field.
Definition at line 5352 of file SatParameters.pb.cs.
|
static |
Field number for the "save_lp_basis_in_lb_tree_search" field.
Definition at line 6015 of file SatParameters.pb.cs.
|
static |
Field number for the "search_branching" field.
Definition at line 5513 of file SatParameters.pb.cs.
|
static |
Field number for the "search_random_variable_pool_size" field.
Definition at line 7471 of file SatParameters.pb.cs.
|
static |
Field number for the "share_binary_clauses" field.
Definition at line 4067 of file SatParameters.pb.cs.
|
static |
Field number for the "shared_tree_balance_tolerance" field.
Definition at line 6773 of file SatParameters.pb.cs.
|
static |
Field number for the "shared_tree_max_nodes_per_worker" field.
Definition at line 6713 of file SatParameters.pb.cs.
|
static |
Field number for the "shared_tree_num_workers" field.
Definition at line 6524 of file SatParameters.pb.cs.
|
static |
Field number for the "shared_tree_open_leaves_per_worker" field.
Definition at line 6683 of file SatParameters.pb.cs.
|
static |
Field number for the "shared_tree_split_strategy" field.
Definition at line 6746 of file SatParameters.pb.cs.
|
static |
Field number for the "shared_tree_worker_enable_phase_sharing" field.
Definition at line 6652 of file SatParameters.pb.cs.
|
static |
Field number for the "shared_tree_worker_enable_trail_sharing" field.
Definition at line 6621 of file SatParameters.pb.cs.
|
static |
Field number for the "shared_tree_worker_min_restarts_per_subtree" field.
Definition at line 6590 of file SatParameters.pb.cs.
|
static |
Field number for the "share_glue_clauses_dtime" field.
Definition at line 4159 of file SatParameters.pb.cs.
|
static |
Field number for the "share_glue_clauses" field.
Definition at line 4097 of file SatParameters.pb.cs.
|
static |
Field number for the "share_level_zero_bounds" field.
Definition at line 4037 of file SatParameters.pb.cs.
|
static |
Field number for the "share_objective_bounds" field.
Definition at line 4007 of file SatParameters.pb.cs.
|
static |
Field number for the "shaving_deterministic_time_in_probing_search" field.
Definition at line 5726 of file SatParameters.pb.cs.
|
static |
Field number for the "shaving_search_deterministic_time" field.
Definition at line 5758 of file SatParameters.pb.cs.
|
static |
Field number for the "shaving_search_threshold" field.
Definition at line 5789 of file SatParameters.pb.cs.
|
static |
Field number for the "solution_pool_size" field.
Definition at line 7230 of file SatParameters.pb.cs.
|
static |
Field number for the "stop_after_first_solution" field.
Definition at line 7025 of file SatParameters.pb.cs.
|
static |
Field number for the "stop_after_presolve" field.
Definition at line 7055 of file SatParameters.pb.cs.
|
static |
Field number for the "stop_after_root_propagation" field.
Definition at line 7086 of file SatParameters.pb.cs.
|
static |
Field number for the "strategy_change_increase_ratio" field.
Definition at line 1871 of file SatParameters.pb.cs.
|
static |
Field number for the "subsolver_params" field.
Definition at line 3926 of file SatParameters.pb.cs.
|
static |
Field number for the "subsolvers" field.
Definition at line 3836 of file SatParameters.pb.cs.
|
static |
Field number for the "subsumption_during_conflict_analysis" field.
Definition at line 1106 of file SatParameters.pb.cs.
|
static |
Field number for the "symmetry_detection_deterministic_time_limit" field.
Definition at line 7958 of file SatParameters.pb.cs.
|
static |
Field number for the "symmetry_level" field.
Definition at line 7856 of file SatParameters.pb.cs.
|
static |
Field number for the "table_compression_level" field.
Definition at line 2975 of file SatParameters.pb.cs.
|
static |
Field number for the "use_absl_random" field.
Definition at line 2243 of file SatParameters.pb.cs.
|
static |
Field number for the "use_all_different_for_circuit" field.
Definition at line 5284 of file SatParameters.pb.cs.
|
static |
Field number for the "use_area_energetic_reasoning_in_no_overlap_2d" field.
Definition at line 5087 of file SatParameters.pb.cs.
|
static |
Field number for the "use_blocking_restart" field.
Definition at line 1753 of file SatParameters.pb.cs.
|
static |
Field number for the "use_combined_no_overlap" field.
Definition at line 7603 of file SatParameters.pb.cs.
|
static |
Field number for the "use_conservative_scale_overload_checker" field.
Definition at line 4768 of file SatParameters.pb.cs.
|
static |
Field number for the "use_disjunctive_constraint_in_cumulative" field.
Definition at line 4936 of file SatParameters.pb.cs.
|
static |
Field number for the "use_dual_scheduling_heuristics" field.
Definition at line 5252 of file SatParameters.pb.cs.
|
static |
Field number for the "use_dynamic_precedence_in_cumulative" field.
Definition at line 4704 of file SatParameters.pb.cs.
|
static |
Field number for the "use_dynamic_precedence_in_disjunctive" field.
Definition at line 4668 of file SatParameters.pb.cs.
|
static |
Field number for the "use_energetic_reasoning_in_no_overlap_2d" field.
Definition at line 5055 of file SatParameters.pb.cs.
|
static |
Field number for the "use_erwa_heuristic" field.
Definition at line 952 of file SatParameters.pb.cs.
|
static |
Field number for the "use_exact_lp_reason" field.
Definition at line 7570 of file SatParameters.pb.cs.
|
static |
Field number for the "use_extended_probing" field.
Definition at line 5666 of file SatParameters.pb.cs.
|
static |
Field number for the "use_feasibility_jump" field.
Definition at line 6119 of file SatParameters.pb.cs.
|
static |
Field number for the "use_feasibility_pump" field.
Definition at line 7292 of file SatParameters.pb.cs.
|
static |
Field number for the "use_hard_precedences_in_cumulative" field.
Definition at line 4873 of file SatParameters.pb.cs.
|
static |
Field number for the "use_implied_bounds" field.
Definition at line 7698 of file SatParameters.pb.cs.
|
static |
Field number for the "use_lb_relax_lns" field.
Definition at line 7322 of file SatParameters.pb.cs.
|
static |
Field number for the "use_linear3_for_no_overlap_2d_precedences" field.
Definition at line 5217 of file SatParameters.pb.cs.
|
static |
Field number for the "use_lns" field.
Definition at line 7170 of file SatParameters.pb.cs.
|
static |
Field number for the "use_lns_only" field.
Definition at line 7200 of file SatParameters.pb.cs.
|
static |
Field number for the "use_ls_only" field.
Definition at line 6151 of file SatParameters.pb.cs.
|
static |
Field number for the "use_objective_lb_search" field.
Definition at line 5822 of file SatParameters.pb.cs.
|
static |
Field number for the "use_objective_shaving_search" field.
Definition at line 5853 of file SatParameters.pb.cs.
|
static |
Field number for the "use_optimization_hints" field.
Definition at line 4312 of file SatParameters.pb.cs.
|
static |
Field number for the "use_optional_variables" field.
Definition at line 7534 of file SatParameters.pb.cs.
|
static |
Field number for the "use_overload_checker_in_cumulative" field.
Definition at line 4731 of file SatParameters.pb.cs.
|
static |
Field number for the "use_pb_resolution" field.
Definition at line 2424 of file SatParameters.pb.cs.
|
static |
Field number for the "use_phase_saving" field.
Definition at line 781 of file SatParameters.pb.cs.
|
static |
Field number for the "use_precedences_in_disjunctive_constraint" field.
Definition at line 4565 of file SatParameters.pb.cs.
|
static |
Field number for the "use_probing_search" field.
Definition at line 5634 of file SatParameters.pb.cs.
|
static |
Field number for the "use_rins_lns" field.
Definition at line 7262 of file SatParameters.pb.cs.
|
static |
Field number for the "use_sat_inprocessing" field.
Definition at line 3541 of file SatParameters.pb.cs.
|
static |
Field number for the "use_shared_tree_search" field.
Definition at line 6560 of file SatParameters.pb.cs.
|
static |
Field number for the "use_strong_propagation_in_disjunctive" field.
Definition at line 4638 of file SatParameters.pb.cs.
|
static |
Field number for the "use_symmetry_in_lp" field.
Definition at line 7891 of file SatParameters.pb.cs.
|
static |
Field number for the "use_timetable_edge_finding_in_cumulative" field.
Definition at line 4805 of file SatParameters.pb.cs.
|
static |
Field number for the "use_timetabling_in_no_overlap_2d" field.
Definition at line 5021 of file SatParameters.pb.cs.
|
static |
Field number for the "use_try_edge_reasoning_in_no_overlap_2d" field.
Definition at line 5119 of file SatParameters.pb.cs.
|
static |
Field number for the "variable_activity_decay" field.
Definition at line 1374 of file SatParameters.pb.cs.
|
static |
Field number for the "variables_shaving_level" field.
Definition at line 5885 of file SatParameters.pb.cs.
|
static |
Field number for the "violation_ls_compound_move_probability" field.
Definition at line 6493 of file SatParameters.pb.cs.
|
static |
Field number for the "violation_ls_perturbation_period" field.
Definition at line 6463 of file SatParameters.pb.cs.
|
getset |
Stop the search when the gap between the best feasible objective (O) and our best objective bound (B) is smaller than a limit. The exact definition is:
Definition at line 2098 of file SatParameters.pb.cs.
|
getset |
Whether we generate and add Chvatal-Gomory cuts to the LP at root node.
Definition at line 8291 of file SatParameters.pb.cs.
|
getset |
Whether we generate clique cuts from the binary implication graph. Note that as the search goes on, this graph will contains new binary clauses learned by the SAT engine.
Definition at line 8385 of file SatParameters.pb.cs.
|
getset |
For the lin max constraints, generates the cuts described in "Strong mixed-integer programming formulations for trained neural networks" by Ross Anderson et. (https://arxiv.org/pdf/1811.01988.pdf)
Definition at line 8480 of file SatParameters.pb.cs.
|
getset |
If true, we start by an empty LP, and only add constraints not satisfied by the current LP solution batch by batch. A constraint that is only added like this is known as a "lazy" constraint in the literature, except that we currently consider all constraints as lazy here.
Definition at line 8551 of file SatParameters.pb.cs.
|
getset |
Whether we generate MIR cuts at root node.
Definition at line 8322 of file SatParameters.pb.cs.
|
getset |
When the LP objective is fractional, do we add the cut that forces the linear objective expression to be greater or equal to this fractional value rounded up? We can always do that since our objective is integer, and combined with MIR heuristic to reduce the coefficient of such cut, it can help.
Definition at line 8260 of file SatParameters.pb.cs.
|
getset |
Whether we generate RLT cuts. This is still experimental but can help on binary problem with a lot of clauses of size 3.
Definition at line 8416 of file SatParameters.pb.cs.
|
getset |
Whether we generate Zero-Half cuts at root node.
Definition at line 8353 of file SatParameters.pb.cs.
|
getset |
When this is true, then the variables that appear in any of the reason of the variables in a conflict have their activity bumped. This is addition to the variables in the conflict, and the one that were used during conflict resolution.
Definition at line 1031 of file SatParameters.pb.cs.
|
getset |
All at_most_one constraints with a size <= param will be replaced by a quadratic number of binary implications.
Definition at line 7645 of file SatParameters.pb.cs.
|
getset |
If true, then the precedences propagator try to detect for each variable if it has a set of "optional incoming arc" for which at least one of them is present. This is usually useful to have but can be slow on model with a lot of precedence.
Definition at line 7004 of file SatParameters.pb.cs.
|
getset |
Definition at line 1085 of file SatParameters.pb.cs.
|
getset |
If non-negative, perform a binary search on the objective variable in order to find an [min, max] interval outside of which the solver proved unsat/sat under this amount of conflict. This can quickly reduce the objective domain on some problems.
Definition at line 6063 of file SatParameters.pb.cs.
|
getset |
Definition at line 1818 of file SatParameters.pb.cs.
|
getset |
Definition at line 1791 of file SatParameters.pb.cs.
|
getset |
A non-negative level indicating how much we should try to fully encode Integer variables as Boolean.
Definition at line 8095 of file SatParameters.pb.cs.
|
getset |
Indicates if the CP-SAT layer should catch Control-C (SIGINT) signals when calling solve. If set, catching the SIGINT signal will terminate the search gracefully, as if a time limit was reached.
Definition at line 7677 of file SatParameters.pb.cs.
|
getset |
Clause activity parameters (same effect as the one on the variables).
Definition at line 1537 of file SatParameters.pb.cs.
|
getset |
All the clauses with a LBD (literal blocks distance) lower or equal to this parameters will always be kept.
Definition at line 1269 of file SatParameters.pb.cs.
|
getset |
Definition at line 1296 of file SatParameters.pb.cs.
|
getset |
Trigger a cleanup when this number of "deletable" clauses is learned.
Definition at line 1148 of file SatParameters.pb.cs.
|
getset |
Definition at line 1238 of file SatParameters.pb.cs.
|
getset |
During a cleanup, if clause_cleanup_target is 0, we will delete the clause_cleanup_ratio of "deletable" clauses instead of aiming for a fixed target of clauses to keep.
Definition at line 1211 of file SatParameters.pb.cs.
|
getset |
During a cleanup, we will always keep that number of "deletable" clauses.
Definition at line 1179 of file SatParameters.pb.cs.
|
getset |
Temporary flag util the feature is more mature. This convert intervals to the newer proto format that support affine start/var/end instead of just variables.
Definition at line 7835 of file SatParameters.pb.cs.
|
getset |
If positive, we spend some effort on each core:
Definition at line 4357 of file SatParameters.pb.cs.
|
getset |
Whether or not the assumption levels are taken into account during the LBD computation. According to the reference below, not counting them improves the solver in some situation. Note that this only impact solves under assumptions.
Gilles Audemard, Jean-Marie Lagniez, Laurent Simon, "Improving Glucose for Incremental SAT Solving with Assumptions: Application to MUS Extraction" Theory and Applications of Satisfiability Testing - SAT 2013, Lecture Notes in Computer Science Volume 7962, 2013, pp 309-317.
Definition at line 2508 of file SatParameters.pb.cs.
|
getset |
If true, when the max-sat algo find a core, we compute the minimal number of literals in the core that needs to be true to have a feasible solution. This is also called core exhaustion in more recent max-SAT papers.
Definition at line 4420 of file SatParameters.pb.cs.
|
getset |
Whether we presolve the cp_model before solving it.
Definition at line 2825 of file SatParameters.pb.cs.
|
getset |
How much effort do we spend on probing. 0 disables it completely.
Definition at line 2855 of file SatParameters.pb.cs.
|
getset |
Whether we also use the sat presolve when cp_model_presolve is true.
Definition at line 2885 of file SatParameters.pb.cs.
|
getset |
Definition at line 8739 of file SatParameters.pb.cs.
|
getset |
Target number of constraints to remove during cleanup.
Definition at line 8769 of file SatParameters.pb.cs.
|
getset |
Control the global cut effort. Zero will turn off all cut. For now we just have one level. Note also that most cuts are only used at linearization level >= 2.
Definition at line 8195 of file SatParameters.pb.cs.
|
getset |
These parameters are similar to sat clause management activity parameters. They are effective only if the number of generated cuts exceed the storage limit. Default values are based on a few experiments on miplib instances.
Definition at line 8712 of file SatParameters.pb.cs.
|
getset |
Crash if presolve breaks a feasible hint.
Definition at line 4291 of file SatParameters.pb.cs.
|
getset |
Crash if we do not manage to complete the hint into a full solution.
Definition at line 4261 of file SatParameters.pb.cs.
|
getset |
If positive, try to stop just after that many presolve rules have been applied. This is mainly useful for debugging presolve.
Definition at line 4231 of file SatParameters.pb.cs.
|
getset |
We have two different postsolve code. The default one should be better and it allows for a more powerful presolve, but it can be useful to postsolve using the full solver instead.
Definition at line 4200 of file SatParameters.pb.cs.
|
getset |
Definition at line 1614 of file SatParameters.pb.cs.
|
staticget |
Definition at line 382 of file SatParameters.pb.cs.
|
getset |
Infer products of Boolean or of Boolean time IntegerVariable from the linear constrainst in the problem. This can be used in some cuts, altough for now we don't really exploit it.
Definition at line 8990 of file SatParameters.pb.cs.
|
getset |
If true, we detect variable that are unique to a table constraint and only there to encode a cost on each tuple. This is usually the case when a WCSP (weighted constraint program) is encoded into CP-SAT format.
This can lead to a dramatic speed-up for such problems but is still experimental at this point.
Definition at line 2954 of file SatParameters.pb.cs.
|
getset |
If true, it disable all constraint expansion. This should only be used to test the presolve of expanded constraints.
Definition at line 3222 of file SatParameters.pb.cs.
|
getset |
If true, registers more lns subsolvers with different parameters.
Definition at line 7420 of file SatParameters.pb.cs.
|
getset |
Linear constraint with a complex right hand side (more than a single interval) need to be expanded, there is a couple of way to do that.
Definition at line 3253 of file SatParameters.pb.cs.
|
getset |
Encore cumulative with fixed demands and capacity as a reservoir constraint. The only reason you might want to do that is to test the reservoir propagation code!
Definition at line 3156 of file SatParameters.pb.cs.
|
getset |
Whether we enumerate all solutions of a problem without objective. Note that setting this to true automatically disable some presolve reduction that can remove feasible solution. That is it has the same effect as setting keep_all_feasible_solutions_in_presolve.
Definition at line 6825 of file SatParameters.pb.cs.
|
getset |
If true, expand all_different constraints that are not permutations. Permutations (#Variables = #Values) are always expanded.
Definition at line 3018 of file SatParameters.pb.cs.
|
getset |
If true, expand the reservoir constraints by creating booleans for all possible precedences between event and encoding the constraint.
Definition at line 3079 of file SatParameters.pb.cs.
|
getset |
Mainly useful for testing.
If this and expand_reservoir_constraints is true, we use a different encoding of the reservoir constraint using circuit instead of precedences.
Definition at line 3124 of file SatParameters.pb.cs.
|
getset |
If true and the Lp relaxation of the problem has a solution, try to exploit it. This is same as above except in this case the lp solution might not be an integer solution.
Definition at line 8865 of file SatParameters.pb.cs.
|
getset |
Definition at line 4915 of file SatParameters.pb.cs.
|
getset |
When branching on a variable, follow the last best solution value.
Definition at line 8895 of file SatParameters.pb.cs.
|
getset |
If true and the Lp relaxation of the problem has an integer optimal solution, try to exploit it. Note that since the LP relaxation may not contain all the constraints, such a solution is not necessarily a solution of the full problem.
Definition at line 8833 of file SatParameters.pb.cs.
|
getset |
When branching an a variable that directly affect the objective, branch on the value that lead to the best objective first.
Definition at line 8958 of file SatParameters.pb.cs.
|
getset |
When branching on a variable, follow the last best relaxation solution value. We use the relaxation with the tightest bound on the objective as the best relaxation solution.
Definition at line 8927 of file SatParameters.pb.cs.
|
get |
A convenient way to add more workers types. These will be added at the beginning of the list.
Definition at line 3887 of file SatParameters.pb.cs.
|
getset |
How much dtime for each LS batch.
Definition at line 6283 of file SatParameters.pb.cs.
|
getset |
On each restart, we randomly choose if we use decay (with this parameter) or no decay.
Definition at line 6192 of file SatParameters.pb.cs.
|
getset |
When stagnating, feasibility jump will either restart from a default solution (with some possible randomization), or randomly pertubate the current solution. This parameter selects the first option.
Definition at line 6377 of file SatParameters.pb.cs.
|
getset |
How much do we linearize the problem in the local search code.
Definition at line 6222 of file SatParameters.pb.cs.
|
getset |
Maximum size of no_overlap or no_overlap_2d constraint for a quadratic expansion. This might look a lot, but by expanding such constraint, we get a linear time evaluation per single variable moves instead of a slow O(n log n) one.
Definition at line 6410 of file SatParameters.pb.cs.
|
getset |
This is a factor that directly influence the work before each restart. Increasing it leads to longer restart.
Definition at line 6253 of file SatParameters.pb.cs.
|
getset |
Max distance between the default value and the pertubated value relative to the range of the domain of the variable.
Definition at line 6345 of file SatParameters.pb.cs.
|
getset |
Probability for a variable to have a non default value upon restarts or perturbations.
Definition at line 6314 of file SatParameters.pb.cs.
|
getset |
If true, the final response addition_solutions field will be filled with all solutions from our solutions pool.
Definition at line 6938 of file SatParameters.pb.cs.
|
getset |
If true, add information about the derived variable domains to the CpSolverResponse. It is an option because it makes the response slighly bigger and there is a bit more work involved during the postsolve to construct it, but it should still have a low overhead. See the tightened_variables field in CpSolverResponse for more details.
Definition at line 6897 of file SatParameters.pb.cs.
|
getset |
Internal parameter. During BVE, if we eliminate a variable x, by default we will push all clauses containing x and all clauses containing not(x) to the postsolve. However, it is possible to write the postsolve code so that only one such set is needed. The idea is that, if we push the set containing a literal l, is to set l to false except if it is needed to satisfy one of the clause in the set. This is always beneficial, but for historical reason, not all our postsolve algorithm support this.
Definition at line 2576 of file SatParameters.pb.cs.
|
get |
Definition at line 3921 of file SatParameters.pb.cs.
|
getset |
Try to find large "rectangle" in the linear constraint matrix with identical lines. If such rectangle is big enough, we can introduce a new integer variable corresponding to the common expression and greatly reduce the number of non-zero.
Definition at line 3520 of file SatParameters.pb.cs.
|
getset |
Whether we try to find more independent cores for a given set of assumptions in the core based max-SAT algorithms.
Definition at line 4388 of file SatParameters.pb.cs.
|
getset |
If true, variables appearing in the solution hints will be fixed to their hinted value.
Definition at line 5613 of file SatParameters.pb.cs.
|
getset |
Definition at line 7390 of file SatParameters.pb.cs.
|
getset |
Definition at line 1480 of file SatParameters.pb.cs.
|
getset |
Definition at line 1507 of file SatParameters.pb.cs.
|
getset |
The activity starts at 0.8 and increment by 0.01 every 5000 conflicts until 0.95. This "hack" seems to work well and comes from:
Glucose 2.3 in the SAT 2013 Competition - SAT Competition 2013 http://edacc4.informatik.uni-ulm.de/SC13/solver-description-download/136
Definition at line 1453 of file SatParameters.pb.cs.
|
get |
Gets whether the "absolute_gap_limit" field is set.
Definition at line 2108 of file SatParameters.pb.cs.
|
get |
Gets whether the "add_cg_cuts" field is set.
Definition at line 8301 of file SatParameters.pb.cs.
|
get |
Gets whether the "add_clique_cuts" field is set.
Definition at line 8395 of file SatParameters.pb.cs.
|
get |
Gets whether the "add_lin_max_cuts" field is set.
Definition at line 8490 of file SatParameters.pb.cs.
|
get |
Gets whether the "add_lp_constraints_lazily" field is set.
Definition at line 8561 of file SatParameters.pb.cs.
|
get |
Gets whether the "add_mir_cuts" field is set.
Definition at line 8332 of file SatParameters.pb.cs.
|
get |
Gets whether the "add_objective_cut" field is set.
Definition at line 8270 of file SatParameters.pb.cs.
|
get |
Gets whether the "add_rlt_cuts" field is set.
Definition at line 8426 of file SatParameters.pb.cs.
|
get |
Gets whether the "add_zero_half_cuts" field is set.
Definition at line 8363 of file SatParameters.pb.cs.
|
get |
Gets whether the "also_bump_variables_in_conflict_reasons" field is set.
Definition at line 1041 of file SatParameters.pb.cs.
|
get |
Gets whether the "at_most_one_max_expansion_size" field is set.
Definition at line 7655 of file SatParameters.pb.cs.
|
get |
Gets whether the "auto_detect_greater_than_at_least_one_of" field is set.
Definition at line 7014 of file SatParameters.pb.cs.
|
get |
Gets whether the "binary_minimization_algorithm" field is set.
Definition at line 1095 of file SatParameters.pb.cs.
|
get |
Gets whether the "binary_search_num_conflicts" field is set.
Definition at line 6073 of file SatParameters.pb.cs.
|
get |
Gets whether the "blocking_restart_multiplier" field is set.
Definition at line 1828 of file SatParameters.pb.cs.
|
get |
Gets whether the "blocking_restart_window_size" field is set.
Definition at line 1801 of file SatParameters.pb.cs.
|
get |
Gets whether the "boolean_encoding_level" field is set.
Definition at line 8105 of file SatParameters.pb.cs.
|
get |
Gets whether the "catch_sigint_signal" field is set.
Definition at line 7687 of file SatParameters.pb.cs.
|
get |
Gets whether the "clause_activity_decay" field is set.
Definition at line 1547 of file SatParameters.pb.cs.
|
get |
Gets whether the "clause_cleanup_lbd_bound" field is set.
Definition at line 1279 of file SatParameters.pb.cs.
|
get |
Gets whether the "clause_cleanup_ordering" field is set.
Definition at line 1306 of file SatParameters.pb.cs.
|
get |
Gets whether the "clause_cleanup_period" field is set.
Definition at line 1158 of file SatParameters.pb.cs.
|
get |
Gets whether the "clause_cleanup_protection" field is set.
Definition at line 1248 of file SatParameters.pb.cs.
|
get |
Gets whether the "clause_cleanup_ratio" field is set.
Definition at line 1221 of file SatParameters.pb.cs.
|
get |
Gets whether the "clause_cleanup_target" field is set.
Definition at line 1189 of file SatParameters.pb.cs.
|
get |
Gets whether the "convert_intervals" field is set.
Definition at line 7845 of file SatParameters.pb.cs.
|
get |
Gets whether the "core_minimization_level" field is set.
Definition at line 4367 of file SatParameters.pb.cs.
|
get |
Gets whether the "count_assumption_levels_in_lbd" field is set.
Definition at line 2518 of file SatParameters.pb.cs.
|
get |
Gets whether the "cover_optimization" field is set.
Definition at line 4430 of file SatParameters.pb.cs.
|
get |
Gets whether the "cp_model_presolve" field is set.
Definition at line 2835 of file SatParameters.pb.cs.
|
get |
Gets whether the "cp_model_probing_level" field is set.
Definition at line 2865 of file SatParameters.pb.cs.
|
get |
Gets whether the "cp_model_use_sat_presolve" field is set.
Definition at line 2895 of file SatParameters.pb.cs.
|
get |
Gets whether the "cut_active_count_decay" field is set.
Definition at line 8749 of file SatParameters.pb.cs.
|
get |
Gets whether the "cut_cleanup_target" field is set.
Definition at line 8779 of file SatParameters.pb.cs.
|
get |
Gets whether the "cut_level" field is set.
Definition at line 8205 of file SatParameters.pb.cs.
|
get |
Gets whether the "cut_max_active_count_value" field is set.
Definition at line 8722 of file SatParameters.pb.cs.
|
get |
Gets whether the "debug_crash_if_presolve_breaks_hint" field is set.
Definition at line 4301 of file SatParameters.pb.cs.
|
get |
Gets whether the "debug_crash_on_bad_hint" field is set.
Definition at line 4271 of file SatParameters.pb.cs.
|
get |
Gets whether the "debug_max_num_presolve_operations" field is set.
Definition at line 4241 of file SatParameters.pb.cs.
|
get |
Gets whether the "debug_postsolve_with_full_solver" field is set.
Definition at line 4210 of file SatParameters.pb.cs.
|
get |
Gets whether the "default_restart_algorithms" field is set.
Definition at line 1623 of file SatParameters.pb.cs.
|
get |
Gets whether the "detect_linearized_product" field is set.
Definition at line 9000 of file SatParameters.pb.cs.
|
get |
Gets whether the "detect_table_with_cost" field is set.
Definition at line 2964 of file SatParameters.pb.cs.
|
get |
Gets whether the "disable_constraint_expansion" field is set.
Definition at line 3232 of file SatParameters.pb.cs.
|
get |
Gets whether the "diversify_lns_params" field is set.
Definition at line 7430 of file SatParameters.pb.cs.
|
get |
Gets whether the "encode_complex_linear_constraint_with_integer" field is set.
Definition at line 3263 of file SatParameters.pb.cs.
|
get |
Gets whether the "encode_cumulative_as_reservoir" field is set.
Definition at line 3166 of file SatParameters.pb.cs.
|
get |
Gets whether the "enumerate_all_solutions" field is set.
Definition at line 6835 of file SatParameters.pb.cs.
|
get |
Gets whether the "expand_alldiff_constraints" field is set.
Definition at line 3028 of file SatParameters.pb.cs.
|
get |
Gets whether the "expand_reservoir_constraints" field is set.
Definition at line 3089 of file SatParameters.pb.cs.
|
get |
Gets whether the "expand_reservoir_using_circuit" field is set.
Definition at line 3134 of file SatParameters.pb.cs.
|
get |
Gets whether the "exploit_all_lp_solution" field is set.
Definition at line 8875 of file SatParameters.pb.cs.
|
get |
Gets whether the "exploit_all_precedences" field is set.
Definition at line 4925 of file SatParameters.pb.cs.
|
get |
Gets whether the "exploit_best_solution" field is set.
Definition at line 8905 of file SatParameters.pb.cs.
|
get |
Gets whether the "exploit_integer_lp_solution" field is set.
Definition at line 8843 of file SatParameters.pb.cs.
|
get |
Gets whether the "exploit_objective" field is set.
Definition at line 8968 of file SatParameters.pb.cs.
|
get |
Gets whether the "exploit_relaxation_solution" field is set.
Definition at line 8937 of file SatParameters.pb.cs.
|
get |
Gets whether the "feasibility_jump_batch_dtime" field is set.
Definition at line 6293 of file SatParameters.pb.cs.
|
get |
Gets whether the "feasibility_jump_decay" field is set.
Definition at line 6202 of file SatParameters.pb.cs.
|
get |
Gets whether the "feasibility_jump_enable_restarts" field is set.
Definition at line 6387 of file SatParameters.pb.cs.
|
get |
Gets whether the "feasibility_jump_linearization_level" field is set.
Definition at line 6232 of file SatParameters.pb.cs.
|
get |
Gets whether the "feasibility_jump_max_expanded_constraint_size" field is set.
Definition at line 6420 of file SatParameters.pb.cs.
|
get |
Gets whether the "feasibility_jump_restart_factor" field is set.
Definition at line 6263 of file SatParameters.pb.cs.
|
get |
Gets whether the "feasibility_jump_var_perburbation_range_ratio" field is set.
Definition at line 6355 of file SatParameters.pb.cs.
|
get |
Gets whether the "feasibility_jump_var_randomization_probability" field is set.
Definition at line 6324 of file SatParameters.pb.cs.
|
get |
Gets whether the "fill_additional_solutions_in_response" field is set.
Definition at line 6948 of file SatParameters.pb.cs.
|
get |
Gets whether the "fill_tightened_domains_in_response" field is set.
Definition at line 6907 of file SatParameters.pb.cs.
|
get |
Gets whether the "filter_sat_postsolve_clauses" field is set.
Definition at line 2586 of file SatParameters.pb.cs.
|
get |
Gets whether the "find_big_linear_overlap" field is set.
Definition at line 3530 of file SatParameters.pb.cs.
|
get |
Gets whether the "find_multiple_cores" field is set.
Definition at line 4398 of file SatParameters.pb.cs.
|
get |
Gets whether the "fix_variables_to_their_hinted_value" field is set.
Definition at line 5623 of file SatParameters.pb.cs.
|
get |
Gets whether the "fp_rounding" field is set.
Definition at line 7400 of file SatParameters.pb.cs.
|
get |
Gets whether the "glucose_decay_increment" field is set.
Definition at line 1490 of file SatParameters.pb.cs.
|
get |
Gets whether the "glucose_decay_increment_period" field is set.
Definition at line 1517 of file SatParameters.pb.cs.
|
get |
Gets whether the "glucose_max_decay" field is set.
Definition at line 1463 of file SatParameters.pb.cs.
|
get |
Gets whether the "hint_conflict_limit" field is set.
Definition at line 5559 of file SatParameters.pb.cs.
|
get |
Gets whether the "ignore_names" field is set.
Definition at line 3459 of file SatParameters.pb.cs.
|
get |
Gets whether the "infer_all_diffs" field is set.
Definition at line 3497 of file SatParameters.pb.cs.
|
get |
Gets whether the "initial_polarity" field is set.
Definition at line 770 of file SatParameters.pb.cs.
|
get |
Gets whether the "initial_variables_activity" field is set.
Definition at line 1008 of file SatParameters.pb.cs.
|
get |
Gets whether the "inprocessing_dtime_ratio" field is set.
Definition at line 3593 of file SatParameters.pb.cs.
|
get |
Gets whether the "inprocessing_minimization_dtime" field is set.
Definition at line 3664 of file SatParameters.pb.cs.
|
get |
Gets whether the "inprocessing_minimization_use_all_orderings" field is set.
Definition at line 3718 of file SatParameters.pb.cs.
|
get |
Gets whether the "inprocessing_minimization_use_conflict_analysis" field is set.
Definition at line 3691 of file SatParameters.pb.cs.
|
get |
Gets whether the "inprocessing_probing_dtime" field is set.
Definition at line 3623 of file SatParameters.pb.cs.
|
get |
Gets whether the "instantiate_all_variables" field is set.
Definition at line 6981 of file SatParameters.pb.cs.
|
get |
Gets whether the "interleave_batch_size" field is set.
Definition at line 3996 of file SatParameters.pb.cs.
|
get |
Gets whether the "interleave_search" field is set.
Definition at line 3969 of file SatParameters.pb.cs.
|
get |
Gets whether the "keep_all_feasible_solutions_in_presolve" field is set.
Definition at line 6873 of file SatParameters.pb.cs.
|
get |
Gets whether the "keep_symmetry_in_presolve" field is set.
Definition at line 7947 of file SatParameters.pb.cs.
|
get |
Gets whether the "lb_relax_num_workers_threshold" field is set.
Definition at line 7373 of file SatParameters.pb.cs.
|
get |
Gets whether the "linearization_level" field is set.
Definition at line 8074 of file SatParameters.pb.cs.
|
get |
Gets whether the "linear_split_size" field is set.
Definition at line 8041 of file SatParameters.pb.cs.
|
get |
Gets whether the "lns_initial_deterministic_limit" field is set.
Definition at line 7159 of file SatParameters.pb.cs.
|
get |
Gets whether the "lns_initial_difficulty" field is set.
Definition at line 7132 of file SatParameters.pb.cs.
|
get |
Gets whether the "log_prefix" field is set.
Definition at line 2353 of file SatParameters.pb.cs.
|
get |
Gets whether the "log_search_progress" field is set.
Definition at line 2291 of file SatParameters.pb.cs.
|
get |
Gets whether the "log_subsolver_statistics" field is set.
Definition at line 2324 of file SatParameters.pb.cs.
|
get |
Gets whether the "log_to_response" field is set.
Definition at line 2413 of file SatParameters.pb.cs.
|
get |
Gets whether the "log_to_stdout" field is set.
Definition at line 2383 of file SatParameters.pb.cs.
|
get |
Gets whether the "lp_dual_tolerance" field is set.
Definition at line 7813 of file SatParameters.pb.cs.
|
get |
Gets whether the "lp_primal_tolerance" field is set.
Definition at line 7786 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_all_diff_cut_size" field is set.
Definition at line 8458 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_alldiff_domain_size" field is set.
Definition at line 3058 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_clause_activity_value" field is set.
Definition at line 1574 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_consecutive_inactive_count" field is set.
Definition at line 8690 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_cut_rounds_at_level_zero" field is set.
Definition at line 8658 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_deterministic_time" field is set.
Definition at line 1954 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_domain_size_when_encoding_eq_neq_constraints" field is set.
Definition at line 8138 of file SatParameters.pb.cs.
|
get |
Gets whether the "maximum_regions_to_split_in_disconnected_no_overlap_2d" field is set.
Definition at line 5206 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_integer_rounding_scaling" field is set.
Definition at line 8528 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_lin_max_size_for_expansion" field is set.
Definition at line 3201 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_memory_in_mb" field is set.
Definition at line 2058 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_number_of_conflicts" field is set.
Definition at line 2022 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_num_cuts" field is set.
Definition at line 8173 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_num_deterministic_batches" field is set.
Definition at line 1985 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_num_intervals_for_timetable_edge_finding" field is set.
Definition at line 4862 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field is set.
Definition at line 5167 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_presolve_iterations" field is set.
Definition at line 2805 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_sat_assumption_order" field is set.
Definition at line 4457 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_sat_reverse_assumption_order" field is set.
Definition at line 4488 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_sat_stratification" field is set.
Definition at line 4515 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_size_to_create_precedence_literals_in_disjunctive" field is set.
Definition at line 4627 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_time_in_seconds" field is set.
Definition at line 1922 of file SatParameters.pb.cs.
|
get |
Gets whether the "max_variable_activity_value" field is set.
Definition at line 1428 of file SatParameters.pb.cs.
|
get |
Gets whether the "merge_at_most_one_work_limit" field is set.
Definition at line 3324 of file SatParameters.pb.cs.
|
get |
Gets whether the "merge_no_overlap_work_limit" field is set.
Definition at line 3297 of file SatParameters.pb.cs.
|
get |
Gets whether the "minimization_algorithm" field is set.
Definition at line 1068 of file SatParameters.pb.cs.
|
get |
Gets whether the "minimize_reduction_during_pb_resolution" field is set.
Definition at line 2479 of file SatParameters.pb.cs.
|
get |
Gets whether the "minimize_shared_clauses" field is set.
Definition at line 4148 of file SatParameters.pb.cs.
|
get |
Gets whether the "min_orthogonality_for_lp_constraints" field is set.
Definition at line 8628 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_automatically_scale_variables" field is set.
Definition at line 9130 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_check_precision" field is set.
Definition at line 9292 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_compute_true_objective_bound" field is set.
Definition at line 9326 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_drop_tolerance" field is set.
Definition at line 9427 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_max_activity_exponent" field is set.
Definition at line 9260 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_max_bound" field is set.
Definition at line 9032 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_max_valid_magnitude" field is set.
Definition at line 9360 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_presolve_level" field is set.
Definition at line 9460 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_scale_large_domain" field is set.
Definition at line 9096 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_treat_high_magnitude_bounds_as_infinity" field is set.
Definition at line 9396 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_var_scaling" field is set.
Definition at line 9064 of file SatParameters.pb.cs.
|
get |
Gets whether the "mip_wanted_precision" field is set.
Definition at line 9222 of file SatParameters.pb.cs.
|
get |
Gets whether the "name" field is set.
Definition at line 716 of file SatParameters.pb.cs.
|
get |
Gets whether the "new_constraints_batch_size" field is set.
Definition at line 8810 of file SatParameters.pb.cs.
|
get |
Gets whether the "new_linear_propagation" field is set.
Definition at line 8009 of file SatParameters.pb.cs.
|
get |
Gets whether the "no_overlap_2d_boolean_relations_limit" field is set.
Definition at line 5010 of file SatParameters.pb.cs.
|
get |
Gets whether the "num_conflicts_before_strategy_changes" field is set.
Definition at line 1860 of file SatParameters.pb.cs.
|
get |
Gets whether the "num_full_subsolvers" field is set.
Definition at line 3825 of file SatParameters.pb.cs.
|
get |
Gets whether the "num_search_workers" field is set.
Definition at line 3791 of file SatParameters.pb.cs.
|
get |
Gets whether the "num_violation_ls" field is set.
Definition at line 6452 of file SatParameters.pb.cs.
|
get |
Gets whether the "num_workers" field is set.
Definition at line 3764 of file SatParameters.pb.cs.
|
get |
Gets whether the "only_add_cuts_at_level_zero" field is set.
Definition at line 8236 of file SatParameters.pb.cs.
|
get |
Gets whether the "only_solve_ip" field is set.
Definition at line 9173 of file SatParameters.pb.cs.
|
get |
Gets whether the "optimize_with_core" field is set.
Definition at line 5970 of file SatParameters.pb.cs.
|
get |
Gets whether the "optimize_with_lb_tree_search" field is set.
Definition at line 6004 of file SatParameters.pb.cs.
|
get |
Gets whether the "optimize_with_max_hs" field is set.
Definition at line 6108 of file SatParameters.pb.cs.
|
get |
Gets whether the "pb_cleanup_increment" field is set.
Definition at line 1336 of file SatParameters.pb.cs.
|
get |
Gets whether the "pb_cleanup_ratio" field is set.
Definition at line 1363 of file SatParameters.pb.cs.
|
get |
Gets whether the "permute_presolve_constraint_order" field is set.
Definition at line 2232 of file SatParameters.pb.cs.
|
get |
Gets whether the "permute_variable_randomly" field is set.
Definition at line 2205 of file SatParameters.pb.cs.
|
get |
Gets whether the "polarity_exploit_ls_hints" field is set.
Definition at line 875 of file SatParameters.pb.cs.
|
get |
Gets whether the "polarity_rephase_increment" field is set.
Definition at line 844 of file SatParameters.pb.cs.
|
get |
Gets whether the "polish_lp_solution" field is set.
Definition at line 7752 of file SatParameters.pb.cs.
|
get |
Gets whether the "preferred_variable_order" field is set.
Definition at line 743 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_blocked_clause" field is set.
Definition at line 2710 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_bva_threshold" field is set.
Definition at line 2773 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_bve_clause_weight" field is set.
Definition at line 2617 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_bve_threshold" field is set.
Definition at line 2550 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_extract_integer_enforcement" field is set.
Definition at line 3392 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_inclusion_work_limit" field is set.
Definition at line 3429 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_probing_deterministic_time_limit" field is set.
Definition at line 2679 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_substitution_level" field is set.
Definition at line 3357 of file SatParameters.pb.cs.
|
get |
Gets whether the "presolve_use_bva" field is set.
Definition at line 2740 of file SatParameters.pb.cs.
|
get |
Gets whether the "probing_deterministic_time_limit" field is set.
Definition at line 2652 of file SatParameters.pb.cs.
|
get |
Gets whether the "probing_num_combinations_limit" field is set.
Definition at line 5715 of file SatParameters.pb.cs.
|
get |
Gets whether the "propagation_loop_detection_factor" field is set.
Definition at line 4554 of file SatParameters.pb.cs.
|
get |
Gets whether the "pseudo_cost_reliability_threshold" field is set.
Definition at line 5937 of file SatParameters.pb.cs.
|
get |
Gets whether the "push_all_tasks_toward_start" field is set.
Definition at line 7523 of file SatParameters.pb.cs.
|
get |
Gets whether the "random_branches_ratio" field is set.
Definition at line 941 of file SatParameters.pb.cs.
|
get |
Gets whether the "randomize_search" field is set.
Definition at line 7460 of file SatParameters.pb.cs.
|
get |
Gets whether the "random_polarity_ratio" field is set.
Definition at line 909 of file SatParameters.pb.cs.
|
get |
Gets whether the "random_seed" field is set.
Definition at line 2172 of file SatParameters.pb.cs.
|
get |
Gets whether the "relative_gap_limit" field is set.
Definition at line 2135 of file SatParameters.pb.cs.
|
get |
Gets whether the "remove_fixed_variables_early" field is set.
Definition at line 2928 of file SatParameters.pb.cs.
|
get |
Gets whether the "repair_hint" field is set.
Definition at line 5592 of file SatParameters.pb.cs.
|
get |
Gets whether the "restart_dl_average_ratio" field is set.
Definition at line 1715 of file SatParameters.pb.cs.
|
get |
Gets whether the "restart_lbd_average_ratio" field is set.
Definition at line 1742 of file SatParameters.pb.cs.
|
get |
Gets whether the "restart_period" field is set.
Definition at line 1654 of file SatParameters.pb.cs.
|
get |
Gets whether the "restart_running_window_size" field is set.
Definition at line 1684 of file SatParameters.pb.cs.
|
get |
Gets whether the "root_lp_iterations" field is set.
Definition at line 8594 of file SatParameters.pb.cs.
|
get |
Gets whether the "routing_cut_dp_effort" field is set.
Definition at line 5471 of file SatParameters.pb.cs.
|
get |
Gets whether the "routing_cut_max_infeasible_path_length" field is set.
Definition at line 5502 of file SatParameters.pb.cs.
|
get |
Gets whether the "routing_cut_subset_size_for_binary_relation_bound" field is set.
Definition at line 5341 of file SatParameters.pb.cs.
|
get |
Gets whether the "routing_cut_subset_size_for_exact_binary_relation_bound" field is set.
Definition at line 5405 of file SatParameters.pb.cs.
|
get |
Gets whether the "routing_cut_subset_size_for_shortest_paths_bound" field is set.
Definition at line 5438 of file SatParameters.pb.cs.
|
get |
Gets whether the "routing_cut_subset_size_for_tight_binary_relation_bound" field is set.
Definition at line 5373 of file SatParameters.pb.cs.
|
get |
Gets whether the "save_lp_basis_in_lb_tree_search" field is set.
Definition at line 6040 of file SatParameters.pb.cs.
|
get |
Gets whether the "search_branching" field is set.
Definition at line 5529 of file SatParameters.pb.cs.
|
get |
Gets whether the "search_random_variable_pool_size" field is set.
Definition at line 7492 of file SatParameters.pb.cs.
|
get |
Gets whether the "share_binary_clauses" field is set.
Definition at line 4086 of file SatParameters.pb.cs.
|
get |
Gets whether the "shared_tree_balance_tolerance" field is set.
Definition at line 6798 of file SatParameters.pb.cs.
|
get |
Gets whether the "shared_tree_max_nodes_per_worker" field is set.
Definition at line 6735 of file SatParameters.pb.cs.
|
get |
Gets whether the "shared_tree_num_workers" field is set.
Definition at line 6549 of file SatParameters.pb.cs.
|
get |
Gets whether the "shared_tree_open_leaves_per_worker" field is set.
Definition at line 6702 of file SatParameters.pb.cs.
|
get |
Gets whether the "shared_tree_split_strategy" field is set.
Definition at line 6762 of file SatParameters.pb.cs.
|
get |
Gets whether the "shared_tree_worker_enable_phase_sharing" field is set.
Definition at line 6672 of file SatParameters.pb.cs.
|
get |
Gets whether the "shared_tree_worker_enable_trail_sharing" field is set.
Definition at line 6641 of file SatParameters.pb.cs.
|
get |
Gets whether the "shared_tree_worker_min_restarts_per_subtree" field is set.
Definition at line 6610 of file SatParameters.pb.cs.
|
get |
Gets whether the "share_glue_clauses" field is set.
Definition at line 4117 of file SatParameters.pb.cs.
|
get |
Gets whether the "share_glue_clauses_dtime" field is set.
Definition at line 4178 of file SatParameters.pb.cs.
|
get |
Gets whether the "share_level_zero_bounds" field is set.
Definition at line 4056 of file SatParameters.pb.cs.
|
get |
Gets whether the "share_objective_bounds" field is set.
Definition at line 4026 of file SatParameters.pb.cs.
|
get |
Gets whether the "shaving_deterministic_time_in_probing_search" field is set.
Definition at line 5747 of file SatParameters.pb.cs.
|
get |
Gets whether the "shaving_search_deterministic_time" field is set.
Definition at line 5778 of file SatParameters.pb.cs.
|
get |
Gets whether the "shaving_search_threshold" field is set.
Definition at line 5811 of file SatParameters.pb.cs.
|
get |
Gets whether the "solution_pool_size" field is set.
Definition at line 7251 of file SatParameters.pb.cs.
|
get |
Gets whether the "stop_after_first_solution" field is set.
Definition at line 7044 of file SatParameters.pb.cs.
|
get |
Gets whether the "stop_after_presolve" field is set.
Definition at line 7075 of file SatParameters.pb.cs.
|
get |
Gets whether the "stop_after_root_propagation" field is set.
Definition at line 7102 of file SatParameters.pb.cs.
|
get |
Gets whether the "strategy_change_increase_ratio" field is set.
Definition at line 1891 of file SatParameters.pb.cs.
|
get |
Gets whether the "subsumption_during_conflict_analysis" field is set.
Definition at line 1128 of file SatParameters.pb.cs.
|
get |
Gets whether the "symmetry_detection_deterministic_time_limit" field is set.
Definition at line 7977 of file SatParameters.pb.cs.
|
get |
Gets whether the "symmetry_level" field is set.
Definition at line 7880 of file SatParameters.pb.cs.
|
get |
Gets whether the "table_compression_level" field is set.
Definition at line 2997 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_absl_random" field is set.
Definition at line 2259 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_all_different_for_circuit" field is set.
Definition at line 5304 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_area_energetic_reasoning_in_no_overlap_2d" field is set.
Definition at line 5108 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_blocking_restart" field is set.
Definition at line 1774 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_combined_no_overlap" field is set.
Definition at line 7624 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_conservative_scale_overload_checker" field is set.
Definition at line 4794 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_disjunctive_constraint_in_cumulative" field is set.
Definition at line 4966 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_dual_scheduling_heuristics" field is set.
Definition at line 5273 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_dynamic_precedence_in_cumulative" field is set.
Definition at line 4720 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_dynamic_precedence_in_disjunctive" field is set.
Definition at line 4693 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_energetic_reasoning_in_no_overlap_2d" field is set.
Definition at line 5076 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_erwa_heuristic" field is set.
Definition at line 973 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_exact_lp_reason" field is set.
Definition at line 7592 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_extended_probing" field is set.
Definition at line 5685 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_feasibility_jump" field is set.
Definition at line 6140 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_feasibility_pump" field is set.
Definition at line 7311 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_hard_precedences_in_cumulative" field is set.
Definition at line 4898 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_implied_bounds" field is set.
Definition at line 7719 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_lb_relax_lns" field is set.
Definition at line 7343 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_linear3_for_no_overlap_2d_precedences" field is set.
Definition at line 5241 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_lns" field is set.
Definition at line 7189 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_lns_only" field is set.
Definition at line 7219 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_ls_only" field is set.
Definition at line 6171 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_objective_lb_search" field is set.
Definition at line 5842 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_objective_shaving_search" field is set.
Definition at line 5874 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_optimization_hints" field is set.
Definition at line 4334 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_optional_variables" field is set.
Definition at line 7559 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_overload_checker_in_cumulative" field is set.
Definition at line 4757 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_pb_resolution" field is set.
Definition at line 2446 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_phase_saving" field is set.
Definition at line 812 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_precedences_in_disjunctive_constraint" field is set.
Definition at line 4593 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_probing_search" field is set.
Definition at line 5655 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_rins_lns" field is set.
Definition at line 7281 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_sat_inprocessing" field is set.
Definition at line 3561 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_shared_tree_search" field is set.
Definition at line 6579 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_strong_propagation_in_disjunctive" field is set.
Definition at line 4657 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_symmetry_in_lp" field is set.
Definition at line 7914 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_timetable_edge_finding_in_cumulative" field is set.
Definition at line 4831 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_timetabling_in_no_overlap_2d" field is set.
Definition at line 5044 of file SatParameters.pb.cs.
|
get |
Gets whether the "use_try_edge_reasoning_in_no_overlap_2d" field is set.
Definition at line 5135 of file SatParameters.pb.cs.
|
get |
Gets whether the "variable_activity_decay" field is set.
Definition at line 1401 of file SatParameters.pb.cs.
|
get |
Gets whether the "variables_shaving_level" field is set.
Definition at line 5906 of file SatParameters.pb.cs.
|
get |
Gets whether the "violation_ls_compound_move_probability" field is set.
Definition at line 6513 of file SatParameters.pb.cs.
|
get |
Gets whether the "violation_ls_perturbation_period" field is set.
Definition at line 6482 of file SatParameters.pb.cs.
|
getset |
Conflict limit used in the phase that exploit the solution hint.
Definition at line 5549 of file SatParameters.pb.cs.
|
getset |
If true, we don't keep names in our internal copy of the user given model.
Definition at line 3449 of file SatParameters.pb.cs.
|
get |
Rather than fully specifying subsolvers, it is often convenient to just remove the ones that are not useful on a given problem or only keep specific ones for testing. Each string is interpreted as a "glob", so we support '*' and '?'.
The way this work is that we will only accept a name that match a filter pattern (if non-empty) and do not match an ignore pattern. Note also that these fields work on LNS or LS names even if these are currently not specified via the subsolvers field.
Definition at line 3910 of file SatParameters.pb.cs.
|
getset |
Run a max-clique code amongst all the x != y we can find and try to infer set of variables that are all different. This allows to close neos16.mps for instance. Note that we only run this code if there is no all_diff already in the model so that if a user want to add some all_diff, we assume it is well done and do not try to add more.
This will also detect and add no_overlap constraints, if all the relations x != y have "offsets" between them. I.e. x > y + offset.
Definition at line 3487 of file SatParameters.pb.cs.
|
getset |
Definition at line 760 of file SatParameters.pb.cs.
|
getset |
The initial value of the variables activity. A non-zero value only make sense when use_erwa_heuristic is true. Experiments with a value of 1e-2 together with the ERWA heuristic showed slighthly better result than simply using zero. The idea is that when the "learning rate" of a variable becomes lower than this value, then we prefer to branch on never explored before variables. This is not in the ERWA paper.
Definition at line 998 of file SatParameters.pb.cs.
|
getset |
Proportion of deterministic time we should spend on inprocessing. At each "restart", if the proportion is below this ratio, we will do some inprocessing, otherwise, we skip it for this restart.
Definition at line 3583 of file SatParameters.pb.cs.
|
getset |
Parameters for an heuristic similar to the one described in "An effective learnt clause minimization approach for CDCL Sat Solvers", https://www.ijcai.org/proceedings/2017/0098.pdf.
This is the amount of dtime we should spend on this technique during each inprocessing phase. The minimization technique is the same as the one used to minimize core in max-sat. We also minimize problem clauses and not just the learned clause that we keep forever like in the paper.
Definition at line 3654 of file SatParameters.pb.cs.
|
getset |
Definition at line 3708 of file SatParameters.pb.cs.
|
getset |
Definition at line 3681 of file SatParameters.pb.cs.
|
getset |
The amount of dtime we should spend on probing for each inprocessing round.
Definition at line 3613 of file SatParameters.pb.cs.
|
getset |
If true, the solver will add a default integer branching strategy to the already defined search strategy. If not, some variable might still not be fixed at the end of the search. For now we assume these variable can just be set to their lower bound.
Definition at line 6971 of file SatParameters.pb.cs.
|
getset |
Definition at line 3986 of file SatParameters.pb.cs.
|
getset |
Experimental. If this is true, then we interleave all our major search strategy and distribute the work amongst num_workers.
The search is deterministic (independently of num_workers!), and we schedule and wait for interleave_batch_size task to be completed before synchronizing and scheduling the next batch of tasks.
Definition at line 3959 of file SatParameters.pb.cs.
|
getset |
If true, we disable the presolve reductions that remove feasible solutions from the search space. Such solution are usually dominated by a "better" solution that is kept, but depending on the situation, we might want to keep all solutions.
A trivial example is when a variable is unused. If this is true, then the presolve will not fix it to an arbitrary value and it will stay in the search space.
Definition at line 6863 of file SatParameters.pb.cs.
|
getset |
Experimental. This will compute the symmetry of the problem once and for all. All presolve operations we do should keep the symmetry group intact or modify it properly. For now we have really little support for this. We will disable a bunch of presolve operations that could be supported.
Definition at line 7937 of file SatParameters.pb.cs.
|
getset |
Only use lb-relax if we have at least that many workers.
Definition at line 7363 of file SatParameters.pb.cs.
|
getset |
A non-negative level indicating the type of constraints we consider in the LP relaxation. At level zero, no LP relaxation is used. At level 1, only the linear constraint and full encoding are added. At level 2, we also add all the Boolean constraints.
Definition at line 8064 of file SatParameters.pb.cs.
|
getset |
Linear constraints that are not pseudo-Boolean and that are longer than this size will be split into sqrt(size) intermediate sums in order to have faster propation in the CP engine.
Definition at line 8031 of file SatParameters.pb.cs.
|
getset |
Definition at line 7149 of file SatParameters.pb.cs.
|
getset |
Initial parameters for neighborhood generation.
Definition at line 7122 of file SatParameters.pb.cs.
|
getset |
Add a prefix to all logs.
Definition at line 2344 of file SatParameters.pb.cs.
|
getset |
Whether the solver should log the search progress. This is the maing logging parameter and if this is false, none of the logging (callbacks, log_to_stdout, log_to_response, ...) will do anything.
Definition at line 2281 of file SatParameters.pb.cs.
|
getset |
Whether the solver should display per sub-solver search statistics. This is only useful is log_search_progress is set to true, and if the number of search workers is > 1. Note that in all case we display a bit of stats with one line per subsolver.
Definition at line 2314 of file SatParameters.pb.cs.
|
getset |
Log to response proto.
Definition at line 2403 of file SatParameters.pb.cs.
|
getset |
Log to stdout.
Definition at line 2373 of file SatParameters.pb.cs.
|
getset |
Definition at line 7803 of file SatParameters.pb.cs.
|
getset |
The internal LP tolerances used by CP-SAT. These applies to the internal and scaled problem. If the domains of your variables are large it might be good to use lower tolerances. If your problem is binary with low coefficients, it might be good to use higher ones to speed-up the lp solves.
Definition at line 7776 of file SatParameters.pb.cs.
|
getset |
Cut generator for all diffs can add too many cuts for large all_diff constraints. This parameter restricts the large all_diff constraints to have a cut generator.
Definition at line 8448 of file SatParameters.pb.cs.
|
getset |
Max domain size for all_different constraints to be expanded.
Definition at line 3048 of file SatParameters.pb.cs.
|
getset |
Definition at line 1564 of file SatParameters.pb.cs.
|
getset |
If a constraint/cut in LP is not active for that many consecutive OPTIMAL solves, remove it from the LP. Note that it might be added again later if it become violated by the current LP solution.
Definition at line 8680 of file SatParameters.pb.cs.
|
getset |
Max number of time we perform cut generation and resolve the LP at level 0.
Definition at line 8648 of file SatParameters.pb.cs.
|
getset |
Maximum time allowed in deterministic time to solve a problem. The deterministic time should be correlated with the real time used by the solver, the time unit being as close as possible to a second.
Definition at line 1944 of file SatParameters.pb.cs.
|
getset |
When loading a*x + b*y ==/!= c when x and y are both fully encoded. The solver may decide to replace the linear equation by a set of clauses. This is triggered if the sizes of the domains of x and y are below the threshold.
Definition at line 8128 of file SatParameters.pb.cs.
|
getset |
Detects when the space where items of a no_overlap_2d constraint can placed is disjoint (ie., fixed boxes split the domain). When it is the case, we can introduce a boolean for each pair <item, component> encoding whether the item is in the component or not. Then we replace the original no_overlap_2d constraint by one no_overlap_2d constraint for each component, with the new booleans as the enforcement_literal of the intervals. This is equivalent to expanding the original no_overlap_2d constraint into a bin packing problem with each connected component being a bin. This heuristic is only done when the number of regions to split is less than this parameter and <= 1 disables it.
Definition at line 5196 of file SatParameters.pb.cs.
|
getset |
In the integer rounding procedure used for MIR and Gomory cut, the maximum "scaling" we use (must be positive). The lower this is, the lower the integer coefficients of the cut will be. Note that cut generated by lower values are not necessarily worse than cut generated by larger value. There is no strict dominance relationship.
Setting this to 2 result in the "strong fractional rouding" of Letchford and Lodi.
Definition at line 8518 of file SatParameters.pb.cs.
|
getset |
If the number of expressions in the lin_max is less that the max size parameter, model expansion replaces target = max(xi) by linear constraint with the introduction of new booleans bi such that bi => target == xi.
This is mainly for experimenting compared to a custom lin_max propagator.
Definition at line 3191 of file SatParameters.pb.cs.
|
getset |
Maximum memory allowed for the whole thread containing the solver. The solver will abort as soon as it detects that this limit is crossed. As a result, this limit is approximative, but usually the solver will not go too much over.
Definition at line 2048 of file SatParameters.pb.cs.
|
getset |
Maximum number of conflicts allowed to solve a problem.
Definition at line 2012 of file SatParameters.pb.cs.
|
getset |
The limit on the number of cuts in our cut pool. When this is reached we do not generate cuts anymore.
Definition at line 8163 of file SatParameters.pb.cs.
|
getset |
Stops after that number of batches has been scheduled. This only make sense when interleave_search is true.
Definition at line 1975 of file SatParameters.pb.cs.
|
getset |
Max number of intervals for the timetable_edge_finding algorithm to propagate. A value of 0 disables the constraint.
Definition at line 4852 of file SatParameters.pb.cs.
|
getset |
If the number of pairs to look is below this threshold, do an extra step of propagation in the no_overlap_2d constraint by looking at all pairs of intervals.
Definition at line 5157 of file SatParameters.pb.cs.
|
getset |
In case of large reduction in a presolve iteration, we perform multiple presolve iterations. This parameter controls the maximum number of such presolve iterations.
Definition at line 2795 of file SatParameters.pb.cs.
|
getset |
Definition at line 4447 of file SatParameters.pb.cs.
|
getset |
If true, adds the assumption in the reverse order of the one defined by max_sat_assumption_order.
Definition at line 4478 of file SatParameters.pb.cs.
|
getset |
Definition at line 4505 of file SatParameters.pb.cs.
|
getset |
Create one literal for each disjunction of two pairs of tasks. This slows down the solve time, but improves the lower bound of the objective in the makespan case. This will be triggered if the number of intervals is less or equal than the parameter and if use_strong_propagation_in_disjunctive is true.
Definition at line 4617 of file SatParameters.pb.cs.
|
getset |
Maximum time allowed in seconds to solve a problem. The counter will starts at the beginning of the Solve() call.
Definition at line 1912 of file SatParameters.pb.cs.
|
getset |
Definition at line 1418 of file SatParameters.pb.cs.
|
getset |
Definition at line 3314 of file SatParameters.pb.cs.
|
getset |
During presolve, we use a maximum clique heuristic to merge together no-overlap constraints or at most one constraints. This code can be slow, so we have a limit in place on the number of explored nodes in the underlying graph. The internal limit is an int64, but we use double here to simplify manual input.
Definition at line 3287 of file SatParameters.pb.cs.
|
getset |
Definition at line 1058 of file SatParameters.pb.cs.
|
getset |
A different algorithm during PB resolution. It minimizes the number of calls to ReduceCoefficients() which can be time consuming. However, the search space will be different and if the coefficients are large, this may lead to integer overflows that could otherwise be prevented.
Definition at line 2469 of file SatParameters.pb.cs.
|
getset |
Minimize and detect subsumption of shared clauses immediately after they are imported.
Definition at line 4138 of file SatParameters.pb.cs.
|
getset |
While adding constraints, skip the constraints which have orthogonality less than 'min_orthogonality_for_lp_constraints' with already added constraints during current call. Orthogonality is defined as 1 - cosine(vector angle between constraints). A value of zero disable this feature.
Definition at line 8618 of file SatParameters.pb.cs.
|
getset |
If true, some continuous variable might be automatically scaled. For now, this is only the case where we detect that a variable is actually an integer multiple of a constant. For instance, variables of the form k * 0.5 are quite frequent, and if we detect this, we will scale such variable domain by 2 to make it implied integer.
Definition at line 9120 of file SatParameters.pb.cs.
|
getset |
As explained in mip_precision and mip_max_activity_exponent, we cannot always reach the wanted precision during scaling. We use this threshold to enphasize in the logs when the precision seems bad.
Definition at line 9282 of file SatParameters.pb.cs.
|
getset |
Even if we make big error when scaling the objective, we can always derive a correct lower bound on the original objective by using the exact lower bound on the scaled integer version of the objective. This should be fast, but if you don't care about having a precise lower bound, you can turn it off.
Definition at line 9316 of file SatParameters.pb.cs.
|
getset |
Any value in the input mip with a magnitude lower than this will be set to zero. This is to avoid some issue in LP presolving.
Definition at line 9417 of file SatParameters.pb.cs.
|
getset |
To avoid integer overflow, we always force the maximum possible constraint activity (and objective value) according to the initial variable domain to be smaller than 2 to this given power. Because of this, we cannot always reach the "mip_wanted_precision" parameter above.
This can go as high as 62, but some internal algo currently abort early if they might run into integer overflow, so it is better to keep it a bit lower than this.
Definition at line 9250 of file SatParameters.pb.cs.
|
getset |
We need to bound the maximum magnitude of the variables for CP-SAT, and that is the bound we use. If the MIP model expect larger variable value in the solution, then the converted model will likely not be relevant.
Definition at line 9022 of file SatParameters.pb.cs.
|
getset |
Any finite values in the input MIP must be below this threshold, otherwise the model will be reported invalid. This is needed to avoid floating point overflow when evaluating bounds * coeff for instance. We are a bit more defensive, but in practice, users shouldn't use super large values in a MIP.
Definition at line 9350 of file SatParameters.pb.cs.
|
getset |
When solving a MIP, we do some basic floating point presolving before scaling the problem to integer to be handled by CP-SAT. This control how much of that presolve we do. It can help to better scale floating point model, but it is not always behaving nicely.
Definition at line 9450 of file SatParameters.pb.cs.
|
getset |
If this is false, then mip_var_scaling is only applied to variables with "small" domain. If it is true, we scale all floating point variable independenlty of their domain.
Definition at line 9086 of file SatParameters.pb.cs.
|
getset |
By default, any variable/constraint bound with a finite value and a magnitude greater than the mip_max_valid_magnitude will result with a invalid model. This flags change the behavior such that such bounds are silently transformed to +∞ or -∞.
It is recommended to keep it at false, and create valid bounds.
Definition at line 9386 of file SatParameters.pb.cs.
|
getset |
All continuous variable of the problem will be multiplied by this factor. By default, we don't do any variable scaling and rely on the MIP model to specify continuous variable domain with the wanted precision.
Definition at line 9054 of file SatParameters.pb.cs.
|
getset |
When scaling constraint with double coefficients to integer coefficients, we will multiply by a power of 2 and round the coefficients. We will choose the lowest power such that we have no potential overflow (see mip_max_activity_exponent) and the worst case constraint activity error does not exceed this threshold.
Definition at line 9212 of file SatParameters.pb.cs.
|
getset |
In some context, like in a portfolio of search, it makes sense to name a given parameters set for logging purpose.
Definition at line 707 of file SatParameters.pb.cs.
|
getset |
Add that many lazy constraints (or cuts) at once in the LP. Note that at the beginning of the solve, we do add more than this.
Definition at line 8800 of file SatParameters.pb.cs.
|
getset |
The new linear propagation code treat all constraints at once and use an adaptation of Bellman-Ford-Tarjan to propagate constraint in a smarter order and potentially detect propagation cycle earlier.
Definition at line 7999 of file SatParameters.pb.cs.
|
getset |
If less than this number of boxes are present in a no-overlap 2d, we create 4 Booleans per pair of boxes:
Definition at line 5000 of file SatParameters.pb.cs.
|
getset |
After each restart, if the number of conflict since the last strategy change is greater that this, then we increment a "strategy_counter" that can be use to change the search strategy used by the following restarts.
Definition at line 1850 of file SatParameters.pb.cs.
|
getset |
We distinguish subsolvers that consume a full thread, and the ones that are always interleaved. If left at zero, we will fix this with a default formula that depends on num_workers. But if you start modifying what runs, you might want to fix that to a given value depending on the num_workers you use.
Definition at line 3815 of file SatParameters.pb.cs.
|
getset |
Definition at line 3781 of file SatParameters.pb.cs.
|
getset |
This will create incomplete subsolvers (that are not LNS subsolvers) that use the feasibility jump code to find improving solution, treating the objective improvement as a hard constraint.
Definition at line 6442 of file SatParameters.pb.cs.
|
getset |
Specify the number of parallel workers (i.e. threads) to use during search. This should usually be lower than your number of available cpus + hyperthread in your machine.
A value of 0 means the solver will try to use all cores on the machine. A number of 1 means no parallelism.
Definition at line 3754 of file SatParameters.pb.cs.
|
getset |
For the cut that can be generated at any level, this control if we only try to generate them at the root node.
Definition at line 8226 of file SatParameters.pb.cs.
|
getset |
If one try to solve a MIP model with CP-SAT, because we assume all variable to be integer after scaling, we will not necessarily have the correct optimal. Note however that all feasible solutions are valid since we will just solve a more restricted version of the original problem.
This parameters is here to prevent user to think the solution is optimal when it might not be. One will need to manually set this to false to solve a MIP model where the optimal might be different.
Definition at line 9163 of file SatParameters.pb.cs.
|
getset |
The default optimization method is a simple "linear scan", each time trying to find a better solution than the previous one. If this is true, then we use a core-based approach (like in max-SAT) when we try to increase the lower bound instead.
Definition at line 5960 of file SatParameters.pb.cs.
|
getset |
Do a more conventional tree search (by opposition to SAT based one) where we keep all the explored node in a tree. This is meant to be used in a portfolio and focus on improving the objective lower bound. Keeping the whole tree allow us to report a better objective lower bound coming from the worst open node in the tree.
Definition at line 5994 of file SatParameters.pb.cs.
|
getset |
This has no effect if optimize_with_core is false. If true, use a different core-based algorithm similar to the max-HS algo for max-SAT. This is a hybrid MIP/CP approach and it uses a MIP solver in addition to the CP/SAT one. This is also related to the PhD work of tobyodavies@ "Automatic Logic-Based Benders Decomposition with MiniZinc" http://aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14489.
Definition at line 6098 of file SatParameters.pb.cs.
|
staticget |
Definition at line 378 of file SatParameters.pb.cs.
|
getset |
Same as for the clauses, but for the learned pseudo-Boolean constraints.
Definition at line 1326 of file SatParameters.pb.cs.
|
getset |
Definition at line 1353 of file SatParameters.pb.cs.
|
getset |
Definition at line 2222 of file SatParameters.pb.cs.
|
getset |
This is mainly here to test the solver variability. Note that in tests, if not explicitly set to false, all 3 options will be set to true so that clients do not rely on the solver returning a specific solution if they are many equivalent optimal solutions.
Definition at line 2195 of file SatParameters.pb.cs.
|
getset |
If true and we have first solution LS workers, tries in some phase to follow a LS solutions that violates has litle constraints as possible.
Definition at line 865 of file SatParameters.pb.cs.
|
getset |
If non-zero, then we change the polarity heuristic after that many number of conflicts in an arithmetically increasing fashion. So x the first time, 2 * x the second time, etc...
Definition at line 834 of file SatParameters.pb.cs.
|
getset |
Whether we try to do a few degenerate iteration at the end of an LP solve to minimize the fractionality of the integer variable in the basis. This helps on some problems, but not so much on others. It also cost of bit of time to do such polish step.
Definition at line 7742 of file SatParameters.pb.cs.
|
getset |
Definition at line 733 of file SatParameters.pb.cs.
|
getset |
Whether we use an heuristic to detect some basic case of blocked clause in the SAT presolve.
Definition at line 2700 of file SatParameters.pb.cs.
|
getset |
Apply Bounded Variable Addition (BVA) if the number of clauses is reduced by stricly more than this threshold. The algorithm described in the paper uses 0, but quick experiments showed that 1 is a good value. It may not be worth it to add a new variable just to remove one clause.
Definition at line 2763 of file SatParameters.pb.cs.
|
getset |
During presolve, we apply BVE only if this weight times the number of clauses plus the number of clause literals is not increased.
Definition at line 2607 of file SatParameters.pb.cs.
|
getset |
During presolve, only try to perform the bounded variable elimination (BVE) of a variable x if the number of occurrences of x times the number of occurrences of not(x) is not greater than this parameter.
Definition at line 2540 of file SatParameters.pb.cs.
|
getset |
If true, we will extract from linear constraints, enforcement literals of the form "integer variable at bound => simplified constraint". This should always be beneficial except that we don't always handle them as efficiently as we could for now. This causes problem on manna81.mps (LP relaxation not as tight it seems) and on neos-3354841-apure.mps.gz (too many literals created this way).
Definition at line 3382 of file SatParameters.pb.cs.
|
getset |
A few presolve operations involve detecting constraints included in other constraint. Since there can be a quadratic number of such pairs, and processing them usually involve scanning them, the complexity of these operations can be big. This enforce a local deterministic limit on the number of entries scanned. Default is 1e8.
A value of zero will disable these presolve rules completely.
Definition at line 3419 of file SatParameters.pb.cs.
|
getset |
Definition at line 2669 of file SatParameters.pb.cs.
|
getset |
How much substitution (also called free variable aggregation in MIP litterature) should we perform at presolve. This currently only concerns variable appearing only in linear constraints. For now the value 0 turns it off and any positive value performs substitution.
Definition at line 3347 of file SatParameters.pb.cs.
|
getset |
Whether or not we use Bounded Variable Addition (BVA) in the presolve.
Definition at line 2730 of file SatParameters.pb.cs.
|
getset |
The maximum "deterministic" time limit to spend in probing. A value of zero will disable the probing.
Definition at line 2642 of file SatParameters.pb.cs.
|
getset |
How many combinations of pairs or triplets of variables we want to scan.
Definition at line 5705 of file SatParameters.pb.cs.
|
getset |
Some search decisions might cause a really large number of propagations to happen when integer variables with large domains are only reduced by 1 at each step. If we propagate more than the number of variable times this parameters we try to take counter-measure. Setting this to 0.0 disable this feature.
Definition at line 4544 of file SatParameters.pb.cs.
|
getset |
The solver ignores the pseudo costs of variables with number of recordings less than this threshold.
Definition at line 5927 of file SatParameters.pb.cs.
|
getset |
Experimental code: specify if the objective pushes all tasks toward the start of the schedule.
Definition at line 7513 of file SatParameters.pb.cs.
|
getset |
A number between 0 and 1 that indicates the proportion of branching variables that are selected randomly instead of choosing the first variable from the given variable_ordering strategy.
Definition at line 931 of file SatParameters.pb.cs.
|
getset |
Randomize fixed search.
Definition at line 7450 of file SatParameters.pb.cs.
|
getset |
The proportion of polarity chosen at random. Note that this take precedence over the phase saving heuristic. This is different from initial_polarity:POLARITY_RANDOM because it will select a new random polarity each time the variable is branched upon instead of selecting one initially and then always taking this choice.
Definition at line 899 of file SatParameters.pb.cs.
|
getset |
At the beginning of each solve, the random number generator used in some part of the solver is reinitialized to this seed. If you change the random seed, the solver may make different choices during the solving process.
For some problems, the running time may vary a lot depending on small change in the solving algorithm. Running the solver with different seeds enables to have more robust benchmarks when evaluating new features.
Definition at line 2162 of file SatParameters.pb.cs.
|
getset |
Definition at line 2125 of file SatParameters.pb.cs.
|
getset |
If cp_model_presolve is true and there is a large proportion of fixed variable after the first model copy, remap all the model to a dense set of variable before the full presolve even starts. This should help for LNS on large models.
Definition at line 2918 of file SatParameters.pb.cs.
|
getset |
If true, the solver tries to repair the solution given in the hint. This search terminates after the 'hint_conflict_limit' is reached and the solver switches to regular search. If false, then we do a FIXED_SEARCH using the hint until the hint_conflict_limit is reached.
Definition at line 5582 of file SatParameters.pb.cs.
|
get |
The restart strategies will change each time the strategy_counter is increased. The current strategy will simply be the one at index strategy_counter modulo the number of strategy. Note that if this list includes a NO_RESTART, nothing will change when it is reached because the strategy_counter will only increment after a restart.
The idea of switching of search strategy tailored for SAT/UNSAT comes from Chanseok Oh with his COMiniSatPS solver, see http://cs.nyu.edu/~chanseok/. But more generally, it seems REALLY beneficial to try different strategy.
Definition at line 1603 of file SatParameters.pb.cs.
|
getset |
In the moving average restart algorithms, a restart is triggered if the window average times this ratio is greater that the global average.
Definition at line 1705 of file SatParameters.pb.cs.
|
getset |
Definition at line 1732 of file SatParameters.pb.cs.
|
getset |
Restart period for the FIXED_RESTART strategy. This is also the multiplier used by the LUBY_RESTART strategy.
Definition at line 1644 of file SatParameters.pb.cs.
|
getset |
Size of the window for the moving average restarts.
Definition at line 1674 of file SatParameters.pb.cs.
|
getset |
Even at the root node, we do not want to spend too much time on the LP if it is "difficult". So we solve it in "chunks" of that many iterations. The solve will be continued down in the tree or the next time we go back to the root node.
Definition at line 8584 of file SatParameters.pb.cs.
|
getset |
The amount of "effort" to spend in dynamic programming for computing routing cuts. This is in term of basic operations needed by the algorithm in the worst case, so a value like 1e8 should take less than a second to compute.
Definition at line 5461 of file SatParameters.pb.cs.
|
getset |
If the length of an infeasible path is less than this value, a cut will be added to exclude it.
Definition at line 5492 of file SatParameters.pb.cs.
|
getset |
If the size of a subset of nodes of a RoutesConstraint is less than this value, use linear constraints of size 1 and 2 (such as capacity and time window constraints) enforced by the arc literals to compute cuts for this subset (unless the subset size is less than routing_cut_subset_size_for_tight_binary_relation_bound, in which case the corresponding algorithm is used instead). The algorithm for these cuts has a O(n^3) complexity, where n is the subset size. Hence the value of this parameter should not be too large (e.g. 10 or 20).
Definition at line 5331 of file SatParameters.pb.cs.
|
getset |
Similar to above, but with an even stronger algorithm in O(n!). We try to be defensive and abort early or not run that often. Still the value of that parameter shouldn't really be much more than 10.
Definition at line 5395 of file SatParameters.pb.cs.
|
getset |
Similar to routing_cut_subset_size_for_exact_binary_relation_bound but use a bound based on shortest path distances (which respect triangular inequality). This allows to derive bounds that are valid for any superset of a given subset. This is slow, so it shouldn't really be larger than 10.
Definition at line 5428 of file SatParameters.pb.cs.
|
getset |
Similar to above, but with a different algorithm producing better cuts, at the price of a higher O(2^n) complexity, where n is the subset size. Hence the value of this parameter should be small (e.g. less than 10).
Definition at line 5363 of file SatParameters.pb.cs.
|
getset |
Experimental. Save the current LP basis at each node of the search tree so that when we jump around, we can load it and reduce the number of LP iterations needed.
It currently works okay if we do not change the lp with cuts or simplification... More work is needed to make it robust in all cases.
Definition at line 6030 of file SatParameters.pb.cs.
|
getset |
Definition at line 5519 of file SatParameters.pb.cs.
|
getset |
Search randomization will collect the top 'search_random_variable_pool_size' valued variables, and pick one randomly. The value of the variable is specific to each strategy.
Definition at line 7482 of file SatParameters.pb.cs.
|
getset |
Allows sharing of new learned binary clause between workers.
Definition at line 4076 of file SatParameters.pb.cs.
|
getset |
How much deeper compared to the ideal max depth of the tree is considered "balanced" enough to still accept a split. Without such a tolerance, sometimes the tree can only be split by a single worker, and they may not generate a split for some time. In contrast, with a tolerance of 1, at least half of all workers should be able to split the tree as soon as a split becomes required. This only has an effect on SPLIT_STRATEGY_BALANCED_TREE and SPLIT_STRATEGY_DISCREPANCY.
Definition at line 6788 of file SatParameters.pb.cs.
|
getset |
In order to limit total shared memory and communication overhead, limit the total number of nodes that may be generated in the shared tree. If the shared tree runs out of unassigned leaves, workers act as portfolio workers. Note: this limit includes interior nodes, not just leaves.
Definition at line 6725 of file SatParameters.pb.cs.
|
getset |
Enables shared tree search. If positive, start this many complete worker threads to explore a shared search tree. These workers communicate objective bounds and simple decision nogoods relating to the shared prefix of the tree, and will avoid exploring the same subtrees as one another. Specifying a negative number uses a heuristic to select an appropriate number of shared tree workeres based on the total number of workers.
Definition at line 6539 of file SatParameters.pb.cs.
|
getset |
How many open leaf nodes should the shared tree maintain per worker.
Definition at line 6692 of file SatParameters.pb.cs.
|
getset |
Definition at line 6752 of file SatParameters.pb.cs.
|
getset |
If true, shared tree workers share their target phase when returning an assigned subtree for the next worker to use.
Definition at line 6662 of file SatParameters.pb.cs.
|
getset |
If true, workers share more of the information from their local trail. Specifically, literals implied by the shared tree decisions.
Definition at line 6631 of file SatParameters.pb.cs.
|
getset |
Minimum restarts before a worker will replace a subtree that looks "bad" based on the average LBD of learned clauses.
Definition at line 6600 of file SatParameters.pb.cs.
|
getset |
Allows sharing of short glue clauses between workers. Implicitly disabled if share_binary_clauses is false.
Definition at line 4107 of file SatParameters.pb.cs.
|
getset |
The amount of dtime between each export of shared glue clauses.
Definition at line 4168 of file SatParameters.pb.cs.
|
getset |
Allows sharing of the bounds of modified variables at level 0.
Definition at line 4046 of file SatParameters.pb.cs.
|
getset |
Allows objective sharing between workers.
Definition at line 4016 of file SatParameters.pb.cs.
|
getset |
Add a shaving phase (where the solver tries to prove that the lower or upper bound of a variable are infeasible) to the probing search. (<= 0 disables it).
Definition at line 5737 of file SatParameters.pb.cs.
|
getset |
Specifies the amount of deterministic time spent of each try at shaving a bound in the shaving search.
Definition at line 5768 of file SatParameters.pb.cs.
|
getset |
Specifies the threshold between two modes in the shaving procedure. If the range of the variable/objective is less than this threshold, then the shaving procedure will try to remove values one by one. Otherwise, it will try to remove one range at a time.
Definition at line 5801 of file SatParameters.pb.cs.
|
getset |
Size of the top-n different solutions kept by the solver. This parameter must be > 0. Currently this only impact the "base" solution chosen for a LNS fragment.
Definition at line 7241 of file SatParameters.pb.cs.
|
getset |
For an optimization problem, stop the solver as soon as we have a solution.
Definition at line 7034 of file SatParameters.pb.cs.
|
getset |
Mainly used when improving the presolver. When true, stops the solver after the presolve is complete (or after loading and root level propagation).
Definition at line 7065 of file SatParameters.pb.cs.
|
getset |
Definition at line 7092 of file SatParameters.pb.cs.
|
getset |
The parameter num_conflicts_before_strategy_changes is increased by that much after each strategy change.
Definition at line 1881 of file SatParameters.pb.cs.
|
get |
It is possible to specify additional subsolver configuration. These can be referred by their params.name() in the fields above. Note that only the specified field will "overwrite" the ones of the base parameter. If a subsolver_params has the name of an existing subsolver configuration, the named parameters will be merged into the subsolver configuration.
Definition at line 3939 of file SatParameters.pb.cs.
|
get |
In multi-thread, the solver can be mainly seen as a portfolio of solvers with different parameters. This field indicates the names of the parameters that are used in multithread. This only applies to "full" subsolvers.
See cp_model_search.cc to see a list of the names and the default value (if left empty) that looks like:
Definition at line 3872 of file SatParameters.pb.cs.
|
getset |
At a really low cost, during the 1-UIP conflict computation, it is easy to detect if some of the involved reasons are subsumed by the current conflict. When this is true, such clauses are detached and later removed from the problem.
Definition at line 1118 of file SatParameters.pb.cs.
|
getset |
Deterministic time limit for symmetry detection.
Definition at line 7967 of file SatParameters.pb.cs.
|
getset |
Whether we try to automatically detect the symmetries in a model and exploit them. Currently, at level 1 we detect them in presolve and try to fix Booleans. At level 2, we also do some form of dynamic symmetry breaking during search. At level 3, we also detect symmetries for very large models, which can be slow. At level 4, we try to break as much symmetry as possible in presolve.
Definition at line 7870 of file SatParameters.pb.cs.
|
getset |
How much we try to "compress" a table constraint. Compressing more leads to less Booleans and faster propagation but can reduced the quality of the lp relaxation. Values goes from 0 to 3 where we always try to fully compress a table. At 2, we try to automatically decide if it is worth it.
Definition at line 2987 of file SatParameters.pb.cs.
|
getset |
Definition at line 2249 of file SatParameters.pb.cs.
|
getset |
Turn on extra propagation for the circuit constraint. This can be quite slow.
Definition at line 5294 of file SatParameters.pb.cs.
|
getset |
When this is true, the no_overlap_2d constraint is reinforced with an energetic reasoning that uses an area-based energy. This can be combined with the two other overlap heuristics above.
Definition at line 5098 of file SatParameters.pb.cs.
|
getset |
Block a moving restart algorithm if the trail size of the current conflict is greater than the multiplier times the moving average of the trail size at the previous conflicts.
Definition at line 1764 of file SatParameters.pb.cs.
|
getset |
This can be beneficial if there is a lot of no-overlap constraints but a relatively low number of different intervals in the problem. Like 1000 intervals, but 1M intervals in the no-overlap constraints covering them.
Definition at line 7614 of file SatParameters.pb.cs.
|
getset |
Enable a heuristic to solve cumulative constraints using a modified energy constraint. We modify the usual energy definition by applying a super-additive function (also called "conservative scale" or "dual-feasible function") to the demand and the durations of the tasks.
This heuristic is fast but for most problems it does not help much to find a solution.
Definition at line 4784 of file SatParameters.pb.cs.
|
getset |
When this is true, the cumulative constraint is reinforced with propagators from the disjunctive constraint to improve the inference on a set of tasks that are disjunctive at the root of the problem. This additional level supplements the default level of reasoning.
Propagators of the cumulative constraint will not be used at all if all the tasks are disjunctive at root node. This always result in better propagation, but it is usually slow, so depending on the problem, turning this off may lead to a faster solution.
Definition at line 4956 of file SatParameters.pb.cs.
|
getset |
When set, it activates a few scheduling parameters to improve the lower bound of scheduling problems. This is only effective with multiple workers as it modifies the reduced_cost, lb_tree_search, and probing workers.
Definition at line 5263 of file SatParameters.pb.cs.
|
getset |
Definition at line 4710 of file SatParameters.pb.cs.
|
getset |
Whether we try to branch on decision "interval A before interval B" rather than on intervals bounds. This usually works better, but slow down a bit the time to find the first solution.
These parameters are still EXPERIMENTAL, the result should be correct, but it some corner cases, they can cause some failing CHECK in the solver.
Definition at line 4683 of file SatParameters.pb.cs.
|
getset |
When this is true, the no_overlap_2d constraint is reinforced with energetic reasoning. This additional level supplements the default level of reasoning.
Definition at line 5066 of file SatParameters.pb.cs.
|
getset |
Whether we use the ERWA (Exponential Recency Weighted Average) heuristic as described in "Learning Rate Based Branching Heuristic for SAT solvers", J.H.Liang, V. Ganesh, P. Poupart, K.Czarnecki, SAT 2016.
Definition at line 963 of file SatParameters.pb.cs.
|
getset |
The solver usually exploit the LP relaxation of a model. If this option is true, then whatever is infered by the LP will be used like an heuristic to compute EXACT propagation on the IP. So with this option, there is no numerical imprecision issues.
Definition at line 7582 of file SatParameters.pb.cs.
|
getset |
Use extended probing (probe bool_or, at_most_one, exactly_one).
Definition at line 5675 of file SatParameters.pb.cs.
|
getset |
Parameters for an heuristic similar to the one described in the paper: "Feasibility Jump: an LP-free Lagrangian MIP heuristic", Bjørnar Luteberget, Giorgio Sartor, 2023, Mathematical Programming Computation.
Definition at line 6130 of file SatParameters.pb.cs.
|
getset |
Adds a feasibility pump subsolver along with lns subsolvers.
Definition at line 7301 of file SatParameters.pb.cs.
|
getset |
If true, detect and create constraint for integer variable that are "after" a set of intervals in the same cumulative constraint.
Experimental: by default we just use "direct" precedences. If exploit_all_precedences is true, we explore the full precedence graph. This assumes we have a DAG otherwise it fails.
Definition at line 4888 of file SatParameters.pb.cs.
|
getset |
Stores and exploits "implied-bounds" in the solver. That is, relations of the form literal => (var >= bound). This is currently used to derive stronger cuts.
Definition at line 7709 of file SatParameters.pb.cs.
|
getset |
Turns on neighborhood generator based on local branching LP. Based on Huang et al., "Local Branching Relaxation Heuristics for Integer Linear Programs", 2023.
Definition at line 7333 of file SatParameters.pb.cs.
|
getset |
When set, this activates a propagator for the no_overlap_2d constraint that uses any eventual linear constraints of the model in the form {start interval 1} - {end interval 2} + c*w <= ub to detect that two intervals must overlap in one dimension for some values of w. This is particularly useful for problems where the distance between two boxes is part of the model.
Definition at line 5231 of file SatParameters.pb.cs.
|
getset |
Testing parameters used to disable all lns workers.
Definition at line 7179 of file SatParameters.pb.cs.
|
getset |
Experimental parameters to disable everything but lns.
Definition at line 7209 of file SatParameters.pb.cs.
|
getset |
Disable every other type of subsolver, setting this turns CP-SAT into a pure local-search solver.
Definition at line 6161 of file SatParameters.pb.cs.
|
getset |
If true, search will search in ascending max objective value (when minimizing) starting from the lower bound of the objective.
Definition at line 5832 of file SatParameters.pb.cs.
|
getset |
This search differs from the previous search as it will not use assumptions to bound the objective, and it will recreate a full model with the hardcoded objective value.
Definition at line 5864 of file SatParameters.pb.cs.
|
getset |
For an optimization problem, whether we follow some hints in order to find a better first solution. For a variable with hint, the solver will always try to follow the hint. It will revert to the variable_branching default otherwise.
Definition at line 4324 of file SatParameters.pb.cs.
|
getset |
If true, we automatically detect variables whose constraint are always enforced by the same literal and we mark them as optional. This allows to propagate them as if they were present in some situation.
Definition at line 7549 of file SatParameters.pb.cs.
|
getset |
When this is true, the cumulative constraint is reinforced with overload checking, i.e., an additional level of reasoning based on energy. This additional level supplements the default level of reasoning as well as timetable edge finding.
This always result in better propagation, but it is usually slow, so depending on the problem, turning this off may lead to a faster solution.
Definition at line 4747 of file SatParameters.pb.cs.
|
getset |
Whether to use pseudo-Boolean resolution to analyze a conflict. Note that this option only make sense if your problem is modelized using pseudo-Boolean constraints. If you only have clauses, this shouldn't change anything (except slow the solver down).
Definition at line 2436 of file SatParameters.pb.cs.
|
getset |
If this is true, then the polarity of a variable will be the last value it was assigned to, or its default polarity if it was never assigned since the call to ResetDecisionHeuristic().
Actually, we use a newer version where we follow the last value in the longest non-conflicting partial assignment in the current phase. This is called 'literal phase saving'. For details see 'A Lightweight Component Caching Scheme for Satisfiability Solvers' K. Pipatsrisawat and A.Darwiche, In 10th International Conference on Theory and Applications of Satisfiability Testing, 2007.
Definition at line 802 of file SatParameters.pb.cs.
|
getset |
When this is true, then a disjunctive constraint will try to use the precedence relations between time intervals to propagate their bounds further. For instance if task A and B are both before C and task A and B are in disjunction, then we can deduce that task C must start after duration(A) + duration(B) instead of simply max(duration(A), duration(B)), provided that the start time for all task was currently zero.
This always result in better propagation, but it is usually slow, so depending on the problem, turning this off may lead to a faster solution.
Definition at line 4583 of file SatParameters.pb.cs.
|
getset |
If true, search will continuously probe Boolean variables, and integer variable bounds. This parameter is set to true in parallel on the probing worker.
Definition at line 5645 of file SatParameters.pb.cs.
|
getset |
Turns on relaxation induced neighborhood generator.
Definition at line 7271 of file SatParameters.pb.cs.
|
getset |
Enable or disable "inprocessing" which is some SAT presolving done at each restart to the root level.
Definition at line 3551 of file SatParameters.pb.cs.
|
getset |
Set on shared subtree workers. Users should not set this directly.
Definition at line 6569 of file SatParameters.pb.cs.
|
getset |
Enable stronger and more expensive propagation on no_overlap constraint.
Definition at line 4647 of file SatParameters.pb.cs.
|
getset |
When we have symmetry, it is possible to "fold" all variables from the same orbit into a single variable, while having the same power of LP relaxation. This can help significantly on symmetric problem. However there is currently a bit of overhead as the rest of the solver need to do some translation between the folded LP and the rest of the problem.
Definition at line 7904 of file SatParameters.pb.cs.
|
getset |
When this is true, the cumulative constraint is reinforced with timetable edge finding, i.e., an additional level of reasoning based on the conjunction of energy and mandatory parts. This additional level supplements the default level of reasoning as well as overload_checker.
This always result in better propagation, but it is usually slow, so depending on the problem, turning this off may lead to a faster solution.
Definition at line 4821 of file SatParameters.pb.cs.
|
getset |
When this is true, the no_overlap_2d constraint is reinforced with propagators from the cumulative constraints. It consists of ignoring the position of rectangles in one position and projecting the no_overlap_2d on the other dimension to create a cumulative constraint. This is done on both axis. This additional level supplements the default level of reasoning.
Definition at line 5034 of file SatParameters.pb.cs.
|
getset |
Definition at line 5125 of file SatParameters.pb.cs.
|
getset |
Each time a conflict is found, the activities of some variables are increased by one. Then, the activity of all variables are multiplied by variable_activity_decay.
To implement this efficiently, the activity of all the variables is not decayed at each conflict. Instead, the activity increment is multiplied by 1 / decay. When an activity reach max_variable_activity_value, all the activity are multiplied by 1 / max_variable_activity_value.
Definition at line 1391 of file SatParameters.pb.cs.
|
getset |
This search takes all Boolean or integer variables, and maximize or minimize them in order to reduce their domain. -1 is automatic, otherwise value 0 disables it, and 1, 2, or 3 changes something.
Definition at line 5896 of file SatParameters.pb.cs.
|
getset |
Probability of using compound move search each restart.
Definition at line 6503 of file SatParameters.pb.cs.
|
getset |
How long violation_ls should wait before perturbating a solution.
Definition at line 6472 of file SatParameters.pb.cs.