OCLGMLMar 17, 2024

A Semidefinite Programming-Based Branch-and-Cut Algorithm for Biclustering

arXiv:2403.11351v32 citationsh-index: 6INFORMS j comput
Originality Incremental advance
AI Analysis

This is an incremental improvement for researchers in combinatorial optimization and data analysis, addressing scalability in biclustering tasks.

The paper tackles the k-densest-disjoint biclique problem for biclustering by developing a tailored branch-and-cut algorithm with a semidefinite programming relaxation and a rounding procedure, achieving the ability to solve instances about 20 times larger than general-purpose solvers.

Biclustering, also called co-clustering, block clustering, or two-way clustering, involves the simultaneous clustering of both the rows and columns of a data matrix into distinct groups, such that the rows and columns within a group display similar patterns. As a model problem for biclustering, we consider the $k$-densest-disjoint biclique problem, whose goal is to identify $k$ disjoint complete bipartite subgraphs (called bicliques) of a given weighted complete bipartite graph such that the sum of their densities is maximized. To address this problem, we present a tailored branch-and-cut algorithm. For the upper bound routine, we consider a semidefinite programming relaxation and propose valid inequalities to strengthen the bound. We solve this relaxation in a cutting-plane fashion using a first-order method. For the lower bound, we design a maximum weight matching rounding procedure that exploits the solution of the relaxation solved at each node. Computational results on both synthetic and real-world instances show that the proposed algorithm can solve instances approximately 20 times larger than those handled by general-purpose solvers.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes