Elsevier

Discrete Optimization

Volume 37, August 2020, 100583
Discrete Optimization

A maximum edge-weight clique extraction algorithm based on branch-and-bound

https://doi.org/10.1016/j.disopt.2020.100583Get rights and content

Abstract

The maximum edge-weight clique problem is to find a clique whose sum of edge-weight is the maximum for a given edge-weighted undirected graph. The problem is NP-hard and some branch-and-bound algorithms have been proposed. In this paper, we propose a new exact algorithm based on the branch-and-bound method. It assigns edge-weights to vertices and calculates upper bounds using vertex coloring. By some computational experiments, we confirmed our algorithm works fine.

Introduction

For a simple undirected graph G=(V,E), a vertex subset CV is called a clique if any pair of vertices in C are adjacent. Given a simple undirected graph G=(V,E), 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 G=(V,E) and non-negative weight w() 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 G=(V,E) and non-negative weight w(,) 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 b for a given edge-weighted complete graph and a natural number b. It is also known as the maximum diversity problem (MDP) [12] or b-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 G=(V,E), let w(v) and w(u,v) denote the weight of vertex v and the weight of edge (u,v), respectively. Hereafter we define w(u,v)=0 for any (u,v)E for simplicity. N(v) is the set of adjacent vertices of v. Let G(S) be a subgraph of G induced by a set of vertices SV. E(S) denotes the edge set of G(S).

Computational experiments

We implemented our algorithm MECQ in C++ to compare with some previous algorithms. In the experiments, our algorithm received an initial solution Cinitial 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)

  • LiC.-M. et al.

    On minimization of the number of branches in branch-and-bound algorithms for the maximum clique problem

    Comput. Oper. Res.

    (2017)
  • Bahadur K.CD. et al.

    Point matching under non-uniform distortions and protein side chain packing based on efficient maximum clique algorithms

    Genome Inform.

    (2002)
  • EtzionT. et al.

    Greedy and heuristic algorithms for codes and colorings

    IEEE Trans. Inform. Theory

    (1998)
  • BogdanovaG.T. et al.

    Error-correcting codes over an alphabet of four elements

    Des. Codes Cryptogr.

    (2001)
  • GaryM.R. et al.

    Computers and Intractability - A Guide to the Theory of NP-Completeness

    (1979)
  • KarpR.M.

    Reducibility among combinatorial problems

  • ShimizuS. et al.

    A branch-and-bound based exact algorithm for the maximum edge-weight clique problem

  • PullanW.

    Approximating the maximum vertex/edge weighted clique using local search

    J. Heuristics

    (2008)
  • HosseinianS. et al.

    A nonconvex quadratic optimization approach to the maximum edge weight clique problem

    J. Global Optim.

    (2018)
  • PavanM. et al.

    Generalizing the Motzkin-Straus theorem to edge-weighted graphs, with applications to image segmentation

  • Cited by (5)

    View full text