我正在解决一个问题:找到一个最大尺寸的布尔矩阵非连续子矩阵,使得其中的所有单元都是1。
以以下矩阵为例:
M = [[1, 0, 1, 1],
[0, 0, 1, 0],
[1, 1, 1, 1]]
M的一个非连续子矩阵由一组行R和一组列C指定。子矩阵由所有在R中的某些行且在C中的某些列(即R和C的交集)中的单元格组成。请注意,非连续子矩阵是子矩阵的概括,因此任何(连续)子矩阵也是非连续子矩阵。
M中有一个最大的非连续子矩阵,其所有单元格均为1。此子矩阵定义为R = {1, 3, 4}和C = {1, 3},其结果如下:
M[1, 2, 4][1, 3] = [[1, 1, 1],
[1, 1, 1]]
我在查找关于这个问题的现有文献时遇到了困难。我正在寻找高效算法,它们不一定需要是最优的(因此我可以将问题放松到找到最大尺寸的子矩阵)。当然,这可以用整数线性规划来建模,但我想考虑其他选择。
特别地,我想知道这个问题是否已经为学术界所知,并且我想知道我的非连续矩阵的定义是否合理,以及是否已经存在另一个名称。
谢谢!