From 407312e12960ad6f752c7cfe673435c0047dccb5 Mon Sep 17 00:00:00 2001 From: "Alinson S. Xavier" Date: Wed, 13 Aug 2025 14:44:41 -0500 Subject: [PATCH] FisSal2011: Keep only active cuts at the end --- src/Cuts/tableau/gmi_dual.jl | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/Cuts/tableau/gmi_dual.jl b/src/Cuts/tableau/gmi_dual.jl index 6ed4e8c..1596c07 100644 --- a/src/Cuts/tableau/gmi_dual.jl +++ b/src/Cuts/tableau/gmi_dual.jl @@ -744,6 +744,17 @@ function collect_gmi_FisSal2011( end @info "Best gap closure: $(gapcl_best)" + + @timeit "Keep only active cuts" begin + positive_idx = findall(multipliers_best .> 1e-6) + @info "Keeping $(length(positive_idx)) active cuts" + pool.lhs = pool.lhs[:, positive_idx] + pool.lb = pool.lb[positive_idx] + pool.ub = pool.ub[positive_idx] + pool.hash = pool.hash[positive_idx] + multipliers_best = multipliers_best[positive_idx] + multipliers_curr = multipliers_curr[positive_idx] + end to = TimerOutputs.get_defaulttimer() stats_time = TimerOutputs.tottime(to) / 1e9