设置置换矩阵的封面


16

给定一组S个n×n个置换矩阵(仅占n!个可能置换矩阵的一小部分),我们如何才能找到S的最小大小子集T,使得在每个位置加T的矩阵至少有1个?

我对这个问题感兴趣,其中S是S_n的一小部分。我想知道是否有可能找到(并实现!)比贪婪算法快得多的近似算法(运行多次直到它变得“幸运”,这是一个非常缓慢的过程,但是它却给出了一些接近最佳的界限(在较小的情况下),还是无法逼近性保证了我不能。

有关此问题的一些简单事实:长度为n的置换矩阵循环组当然可以最佳地解决此问题。(至少需要n个矩阵,因为每个置换矩阵都有n个矩阵,并且需要n ^ 2个矩阵。)

我感兴趣的集合S中没有n环基团。

这个问题是机套的非常特殊的情况。实际上,如果我们将X设为具有n ^ 2个元素的集合(1,2,... n)*(1,2,... n),则每个置换矩阵对应于一个大小为n的子集,而I我正在寻找覆盖X的这些子集的最小子集合。集合覆盖本身并不是解决此问题的好方法,因为近似于一般集合覆盖问题。

使用贪婪方法使此问题不会变得太慢的唯一原因是,置换组中的对称性有助于消除大量冗余。特别是,如果S是一个子组,并且T是一个小的子集,它是一个最小覆盖集合,则集合sT(将T乘以该组s的任何元素)仍在S中,并且仍然是覆盖集合(当然如果您想知道,成功的案例有n〜30和| S |〜1000,幸运的贪婪结果有| T |。〜37。n〜50的情况的边界很差,需要很长时间才能获得。

综上所述,我想知道是否存在对此问题的近似方法,或者它是否仍然足够通用以适合某些不可近似性定理,就像一般集合覆盖问题一样。在实践中使用什么算法来近似相关问题?由于子集的大小都相同,并且每个元素以相同的小频率1 / n出现,因此似乎存在某种可能性。

-B


你真的是说加吗?我认为您是说是一种“联盟”,还是真正的ORing?因为否则您可能会在条目中以2结尾。
Suresh Venkat 2010年

合并效果很好。如果添加,那么我需要在每个条目中至少获得1。我之所以将其想象为加法,是因为我确实是一名数学家,并且在添加组元素(不依赖于表示为置换矩阵的组)时仍然具有数学含义,但在“结合”矩阵时仍然没有数学意义。
Brayden Ware

但是,如果没有置换矩阵,则没有任何有用的方法来说明这种情况,因此请随意考虑合并。2s(上帝禁止使用3s或更多)将仅用作标记,说明我们不在完全将n个矩阵添加到全1s矩阵,2s或更高数量的梦境解决方案中,只能测量我们使用了多少个额外矩阵。(每个额外的矩阵最后将n加到总和中。)
Brayden Ware 2010年

Answers:


10

下面是可近似为其中的情况下的几乎紧分析小号成为对称组的子组必需的。

这个问题是Set Cover的特例,并且有一个简单的贪婪近似算法[Joh74]。如果将第k次谐波数表示为H k = ∑ i = 1 k 1 / i,则贪心算法将获得近似比率H n = ln n +Θ(1)。(有一种算法[DF97]导致近似比率H n -1/2 稍微好一些。)(编辑:修订版2和更早的版本指出贪婪算法的近似比率比正确值差。)

此外,在以下方面,这几乎是最佳的:

定理。对于任何常数0 < ε <1,除非有NP⊆DTIME(n O(log log n),否则不能在近似比(1- ε)ln n内对矩阵进行设置。

这是证明的草图。我们写[ n ] = {1,…,n }。我们将从Set Cover构造一个减少量:

设置覆盖
实例:一个正整数m和[ m ] 的子集的集合C。溶液:一个子集dÇ使得在组的并集d等于[ ]。目标:最小化 D |。

Feige [Fei98]的一个著名结果是,对于任何常数0 < ε <1,除非NP⊆DTIME(n O(log log n),否则Set Cover不能在近似比(1- ε)ln m内近似。

令(mC)是Set Cover的一个实例。我们将为置换矩阵构造Set Cover 的实例(nS)。

01个1个01个001个Ñ(其中索引 2被解释为模Ñ)。对于0≤ Ĵ,定义小号Ĵ = { P Ë Q ĴÈÇ ∪{{ 1}}}和小号 = 小号0 ∪...∪ 小号

索赔。令kC中[ m ] 的最小覆盖的大小。然后,S中的最小覆盖大小等于(k +1)(m +1)。

证明草图。如果dÇ是[盖 ],我们可以构建一个盖Ť小号尺寸的(| d(1 |)由1)Ť = { P Ë Q ĴÈ小号 ∪{{ 1}},0≤ Ĵ }。

在另一方面,让牛逼小号是一个盖。注意,S 0中的所有矩阵都是块对角线,块的大小为2×2,而S中的其他矩阵在这些块中都为0。因此,Ť小号0覆盖这些块。此外,Ť小号0包含P { +1}因为否则(2 1 2 2)-entry不会被覆盖。观察到(Ť小号0)∖{ P { +1}}对应于C中的机顶盒。因此,Ť小号0 |≥ ķ 1。同样,对于任何0≤ Ĵ,| Ť小号Ĵ |≥ ķ 1。因此,T |≥(k +1)(m +1)。 索赔证明草图的结尾

根据权利要求,上述构造的约简保留了近似比率。特别地,它建立了定理。

参考文献

[DF97]杜荣吉和马丁·菲勒。通过半局部优化逼近k集覆盖。在第二十九届ACM年度研讨会上的计算理论(STOC)论文集,第256-264,1997年5月 http://dx.doi.org/10.1145/258533.258599

[Fei98] Uriel Feige。ln n的阈值,用于近似设置覆盖率。 ACM学报,45(4):634-652,1998年7月 http://dx.doi.org/10.1145/285055.285059

[Joh74] David S. Johnson。组合问题的近似算法。 [计算机与系统科学,9(3):256-278,1974年十二月 http://dx.doi.org/10.1016/S0022-0000(74)80044-9


3
刚,您最近的回答令人印象深刻。总有一天,您在本网站上获得的证明之一将被称为Ito Lemma。:-)
Aaron Sterling

@Aaron:感谢您的友好评论。注意,这个问题中最困难的事情,即对小组成员的限制,被完全忽略了。现在该思考了!
伊藤刚(Tsuyoshi Ito)2010年

3
@Aaron:我不知道您是否故意这样说,但是伊藤的引理被接受了(en.wikipedia.org/wiki/Ito_lemma)。
罗宾·科塔里

11

在布鲁塞尔的午餐中,通过3SAT的短暂减少,我们证明了这个问题是NP-Hard。我们的证明还不会导致不可近似的结果(尚未)。我们会考虑更多。

大致而言,您将3-SAT实例(具有n个变量和c子句)转换为一系列如下排列的排列:

1 ... n用于对变量小工具n + 2使用的n个变量n + 1进行编号,n + 3代表第一个子句... n + 2j,n + 2j + 1代表第j个子句n + 2c + 2由垃圾收集器使用

变量xi由置换1,...,i-1,n + 1,i + 1,...,n,i,...表示,并为每个子句交换n + 2j + 1,n + 2j xi在哪里出现?和排列1,...,i-1,n + 1,i + 1,...,n,i,...并为每个子句交换n + 2j + 1,n + 2j其中j其中- xi出现。

然后,我们使用垃圾收集器将每个数字放置在否则不会出现的位置。要将x放置在y位置,我们将y放置在n + 2c + 2位置,将n + 2c + 2放置在x位置。对于每个变量,我们将有n + 2c-1个这样的垃圾收集器,对于每个子句,我们将有2(n + 2c-1)个。如果我们可以为每个变量选择2个置换中的一个,则3SAT是可满足的,前提是置换集覆盖的大小为n +(n + 2c-1)(n + 2c)。

小实例可能缺少一些次要细节。

斯特凡

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.