A maximum edge-weight clique extraction algorithm based on branch-and-bound
Introduction
For a simple undirected graph , a vertex subset is called a clique if any pair of vertices in are adjacent. Given a simple undirected graph , the maximum clique problem (MCP) is to find the clique of maximum cardinality. MCP has lots of practical applications: bioinformatics [1], coding theory [2], [3], economics [4] and more. MCP is known to be NP-hard [5], and the decision version is one of the Karp’s 21 NP-complete problems [6]. Since it has theoretical importance, there have been a number of studies in decades [7].
To represent various practical problems, there exist some generalizations of MCP. Given a simple undirected graph and non-negative weight for each vertex, the maximum weight clique problem (MWCP) is to find a clique such that the total vertex-weight is maximum. Although MWCP is uniquely defined, two different problems are referred to as the maximum edge-weight clique problem (MEWCP). Given a simple undirected graph and non-negative weight for each edge, one is to find the clique such that the total edge-weight of its vertex induced subgraph is maximum [8], [9], [10], [11]. In this paper, we call this problem as MEWCP. The other asks the maximum edge-weight clique of cardinality for a given edge-weighted complete graph and a natural number . It is also known as the maximum diversity problem (MDP) [12] or -clique problem [13]. In this paper, we call this problem as MDP. Our study focuses on MEWCP. Because of edge-weights, MEWCP has practical applications that cannot be handled by MCP: pattern recognition [14] protein side-chain packing [15], [16], market basket analysis [17], communication analysis [18] and so on.
For MEWCP, there are some heuristic approaches. Phased local search (PLS) is based on the local search that switches three phases to avoid local optimums [9]. A heuristic based on the genetic algorithm is proposed in [19]. In the papers, they show the results of computational experiments to compare their performances. Although heuristic algorithms can find good solutions in a short time, their solutions are not guaranteed to be the global optimum. Therefore only lower bounds are shown in the experimental results in [9], [19] for many instances.
To obtain exact solutions of MEWCP, there are two approaches in previous works. One approach is to formulate MEWCP as mathematical programming and solve it by existing solvers. Formulations based on integer programming (IP) [10] and mixed integer programming (MIP) [20] were proposed.
The other approach is based on the branch-and-bound method. Branch-and-bound algorithms recursively divide subproblems into smaller subproblems to search for an optimal solution. For each subproblem, they calculate upper bounds of the weight of feasible solutions and prune unnecessary subproblems that cannot improve the incumbent (current best solution). A variety of algorithms adopt different strategies in branching strategy, search strategy and pruning rule. The branching strategy is how to divide a given problem into subproblems. The search strategy is the order in which subproblems are explored. The pruning rule is how to calculate upper bounds to prune unnecessary subproblems. A survey of the branch-and-bound method is shown in [21]. For clique problems, the branch-and-bound algorithm has been originally proposed in [22]. There are variety of branch-and-bound algorithms for MCP [23], [24], for MWCP [25], [26], for MDP [12], and for MEWCP [8], [11], [27].
Our previous algorithm EWCLIQUE for MEWCP is also based on the branch-and-bound method [8]. Although it was faster than previous methods, there still exist some points that can be improved. EWCLIQUE decomposes each subproblem into three components and calculates an upper bound for each of the components separately. Finally, it obtains an upper bound for each subproblem by merging them. If we can calculate an upper bound for each subproblem at once without decomposing and merging, the upper bounds may be improved. Furthermore, EWCLIQUE adopts a method called Russian Doll Search(RDS) to obtain upper bounds for one of the three components. For clique problems, RDS has been originally proposed in [25] (called backtrack search in [25]). RDS starts searching from small subgraphs and then to larger subgraphs. Finally, it searches solutions in the entire graph to obtain global optimum. The weights of solutions found in small subgraphs are used to calculate upper bounds for larger subgraphs. Because of RDS, EWCLIQUE cannot accept an initial solution as a lower bound.
In this paper, we propose a new branch-and-bound algorithm MECQ for MEWCP. For each subproblem, our algorithm calculates an upper bound without decomposing or merging. Vertex coloring is used in the upper bound calculation. Since it does not use RDS, it can accept an initial solution obtained by heuristics for MEWCP to improve its performance. By some computational experiments, we confirm our algorithm works fine.
The remainder of this paper is organized as follows. Our algorithm MECQ is described in Section 2. The results of computational experiments are in Section 3. We conclude the paper in Section 4.
Section snippets
Our algorithm MECQ
The proposed algorithm MECQ is based on the branch-and-bound method. In this section, we first describe the branching strategy. Next, we show the pruning rules and the search strategy.
For a graph , let and denote the weight of vertex and the weight of edge , respectively. Hereafter we define for any for simplicity. is the set of adjacent vertices of . Let be a subgraph of induced by a set of vertices . denotes the edge set of .
Computational experiments
We implemented our algorithm MECQ in C++ to compare with some previous algorithms. In the experiments, our algorithm received an initial solution calculated by phased local search (PLS) [9]. PLS switches three phases of different search policies: random phase, penalty phase, and degree phase. To obtain an initial solution for MECQ, we apply 10 times repetition of 50 random phases, 50 penalty phases, and 100 degree phases. Our algorithm uses the best solution found by the PLS as an
Conclusion
We proposed a branch-and-bound algorithm MECQ for MEWCP. Our algorithm calculates upper bounds using vertex coloring. In the vertex coloring procedure, our algorithm assigns edge weights to vertices to calculate upper bounds. By some computational experiments, we confirmed our algorithm works fine.
Although modern techniques are proposed for MCP [37], [38], they cannot be directly applied to MEWCP because of edge weights. It is one of the future works to modify those techniques for MEWCP.
Acknowledgments
We thank two anonymous reviewers for comments on earlier drafts of the manuscript.
References (40)
- et al.
Mining market data: A network approach
Comput. Oper. Res.
(2006) - et al.
A review on algorithms for maximum clique problems
European J. Oper. Res.
(2015) - et al.
Solving the maximum edge-weight clique problem in sparse graphs with compact formulations
EURO J. Comput. Optim.
(2015) - et al.
A branch and bound algorithm for the maximum diversity problem
European J. Oper. Res.
(2010) New facets and a branch-and-cut algorithm for the weighted clique problem
European J. Oper. Res.
(2004)A scalable algorithm for the market basket analysis
J. Retailing Consum. Serv.
(2007)- et al.
Branch-and-bound algorithms: A survey of recent advances in searching, branching, and pruning
Discrete Optim.
(2016) - et al.
An exact algorithm for the maximum clique problem
Oper. Res. Lett.
(1990) - et al.
An exact bit-parallel algorithm for the maximum clique problem
Comput. Oper. Res.
(2011) - et al.
Fast maximum weight clique extraction algorithm: Optimal tables for branch-and-bound
Discrete Appl. Math.
(2017)
On minimization of the number of branches in branch-and-bound algorithms for the maximum clique problem
Comput. Oper. Res.
Point matching under non-uniform distortions and protein side chain packing based on efficient maximum clique algorithms
Genome Inform.
Greedy and heuristic algorithms for codes and colorings
IEEE Trans. Inform. Theory
Error-correcting codes over an alphabet of four elements
Des. Codes Cryptogr.
Computers and Intractability - A Guide to the Theory of NP-Completeness
Reducibility among combinatorial problems
A branch-and-bound based exact algorithm for the maximum edge-weight clique problem
Approximating the maximum vertex/edge weighted clique using local search
J. Heuristics
A nonconvex quadratic optimization approach to the maximum edge weight clique problem
J. Global Optim.
Generalizing the Motzkin-Straus theorem to edge-weighted graphs, with applications to image segmentation
Cited by (5)
A Fast Exact Solver with Theoretical Analysis for the Maximum Edge-Weighted Clique Problem
2024, Proceedings of the AAAI Conference on Artificial IntelligenceFast optimization for large scale logistics in complex urban systems using the hybrid sparrow search algorithm
2023, International Journal of Geographical Information ScienceFast Loop Closure Selection Method with Spatiotemporal Consistency for Multi-Robot Map Fusion
2022, Applied Sciences (Switzerland)Mathematical Programming Models and Exact Algorithms
2022, The Quadratic Unconstrained Binary Optimization Problem: Theory, Algorithms, and ApplicationsRobust Loop Closure Method for Multi-Robot Map Fusion by Integration of Consistency and Data Similarity
2020, IEEE Robotics and Automation Letters