From 03afc540876b71a7b7ad2cd1b8e4050143a435d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Apitzsch?= Date: Fri, 2 Aug 2024 10:20:08 +0200 Subject: [PATCH] Use CoinBronKerbosch::PivotingStrategy enum --- src/CglBKClique/CglBKClique.cpp | 7 +++---- src/CglBKClique/CglBKClique.hpp | 9 ++++----- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/CglBKClique/CglBKClique.cpp b/src/CglBKClique/CglBKClique.cpp index d05d3757..c6b6ded4 100755 --- a/src/CglBKClique/CglBKClique.cpp +++ b/src/CglBKClique/CglBKClique.cpp @@ -25,7 +25,6 @@ #include "CglBKClique.hpp" #include "CoinConflictGraph.hpp" #include "CoinStaticConflictGraph.hpp" -#include "CoinBronKerbosch.hpp" #include "CoinCliqueList.hpp" #include "CoinCliqueExtender.hpp" #include "CoinCutPool.hpp" @@ -38,8 +37,8 @@ double CglBKClique::sepTime_ = 0.0; static void *xmalloc( const size_t size ); -CglBKClique::CglBKClique() : cap_(0), maxCallsBK_(1000), -extMethod_(4), minFrac_(0.001), minViol_(0.02), pivotingStrategy_(3) +CglBKClique::CglBKClique() : cap_(0), minFrac_(0.001), minViol_(0.02), +pivotingStrategy_(CoinBronKerbosch::PivotingStrategy::Weight), extMethod_(4), maxCallsBK_(1000) { minWeight_ = floor(BKCLQ_MULTIPLIER + (minViol_ * BKCLQ_MULTIPLIER)); vertexWeight_ = NULL; @@ -394,7 +393,7 @@ void CglBKClique::setMinViol(const double minViol){ minWeight_ = BKCLQ_MULTIPLIER + (minViol_ * BKCLQ_MULTIPLIER); } -void CglBKClique::setPivotingStrategy(const size_t pivotingStrategy) { +void CglBKClique::setPivotingStrategy(const CoinBronKerbosch::PivotingStrategy pivotingStrategy) { pivotingStrategy_ = pivotingStrategy; } diff --git a/src/CglBKClique/CglBKClique.hpp b/src/CglBKClique/CglBKClique.hpp index 4557aa82..67607e0f 100755 --- a/src/CglBKClique/CglBKClique.hpp +++ b/src/CglBKClique/CglBKClique.hpp @@ -20,6 +20,7 @@ #define _CglBKClique_h_ #include +#include "CoinBronKerbosch.hpp" class CoinCliqueList; class CoinConflictGraph; @@ -119,11 +120,9 @@ class CGLLIB_EXPORT CglBKClique : public CglCutGenerator { void setMinViol(const double minViol); /** - * Set the pivoting strategy used in BK algorithm: - * 0 = off; 1 = random; 2 = degree; 3 = weight; 4 = modified degree; - * 5 = modified weight; 6 = modified degree + modified weight. + * Set the pivoting strategy used in BK algorithm **/ - void setPivotingStrategy(const size_t pivotingStrategy); + void setPivotingStrategy(const CoinBronKerbosch::PivotingStrategy pivotingStrategy); /** * Number of cuts separated. @@ -221,7 +220,7 @@ class CGLLIB_EXPORT CglBKClique : public CglCutGenerator { /** * Pivoting strategy employed in the BK algorithm. **/ - size_t pivotingStrategy_; + CoinBronKerbosch::PivotingStrategy pivotingStrategy_; /** * Strategy used to extend cliques.