From a32f3afe220d0aa554b3df26fbfee31ff02c1007 Mon Sep 17 00:00:00 2001 From: "Nicolas L. Guidotti" Date: Wed, 2 Sep 2026 13:20:59 +0200 Subject: [PATCH] disable clique/zero-half cuts in determinism mode Signed-off-by: Nicolas L. Guidotti --- cpp/src/branch_and_bound/branch_and_bound.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cpp/src/branch_and_bound/branch_and_bound.cpp b/cpp/src/branch_and_bound/branch_and_bound.cpp index e2ea33bb6f..e05d7eb671 100644 --- a/cpp/src/branch_and_bound/branch_and_bound.cpp +++ b/cpp/src/branch_and_bound/branch_and_bound.cpp @@ -3545,7 +3545,8 @@ mip_status_t branch_and_bound_t::solve(mip_solution_t& solut omp_atomic_t* clique_signal = &signal_extend_cliques_; if ((settings_.clique_cuts != 0 || settings_.zero_half_cuts != 0) && clique_table_ == nullptr && - omp_get_num_threads() >= CUOPT_MIP_CLIQUE_CUTS_REQUIRED_THREAD_COUNT) { + omp_get_num_threads() >= CUOPT_MIP_CLIQUE_CUTS_REQUIRED_THREAD_COUNT && + !settings_.deterministic) { signal_extend_cliques_.store(false, std::memory_order_release); typename mip_solver_settings_t::tolerances_t tolerances_for_clique{}; tolerances_for_clique.presolve_absolute_tolerance = settings_.primal_tol;