我正在寻找一种生成图的方法,以便知道最佳的顶点覆盖率。节点或边的数量没有限制,只有图形已完全连接。
想法是生成一个不容易找到最佳顶点覆盖的图形,以便能够测试其上的不同启发式方法
我发现了论文《Arthur,J.&Frendeway,J.用已知的最优行程生成旅行商问题》,《运筹学学会杂志》,第1卷。39,第2号(1988年2月),第153-159页,用于生成具有已知最优值的TSP,可惜我无法访问它。
有已知的算法吗?
我正在寻找一种生成图的方法,以便知道最佳的顶点覆盖率。节点或边的数量没有限制,只有图形已完全连接。
想法是生成一个不容易找到最佳顶点覆盖的图形,以便能够测试其上的不同启发式方法
我发现了论文《Arthur,J.&Frendeway,J.用已知的最优行程生成旅行商问题》,《运筹学学会杂志》,第1卷。39,第2号(1988年2月),第153-159页,用于生成具有已知最优值的TSP,可惜我无法访问它。
有已知的算法吗?
Answers:
将vzn的评论扩展为答案:从CNF-SAT到顶点覆盖的标准简化非常容易:为每个术语(变量或其取反)创建一个顶点,通过边将每个变量与其否定连接,为每个子句创建一个派系,然后将集团中的每个顶点连接到该条款中其中一项的顶点。如果从已知满意的赋值开始满足可满足性问题,这将为您提供具有已知最优解的顶点覆盖问题(选择赋值给定的术语顶点,在每个子句中选择一个顶点即可,除未选择的子句顶点与选择的术语顶点相邻)。
因此,现在您需要找到具有令人满意的分配但很难找到解决方案的可满足性问题。有许多已知的方法来产生严格的可满足性问题(例如,生成接近可满足性阈值的随机k-SAT实例),但是您知道令人满意的分配的额外要求限制了可能性。您可以在这里做的一件事是,从因数分解等密码学难题出发,再进行另一层还原。即选择两个大质数p和q,建立一个布尔电路,将p和q乘以二进制数,然后将其转换为CNF公式,其中每个输入(p和q)以及中间的每个中间值都有一个变量电路中的电线,每个输出的子句强制其具有正确的值,每个门的条款强制门的输入和输出彼此一致。然后将此CNF公式转换为顶点覆盖。
对于更简单的策略,首先选择对3CNF公式满意的赋值,然后随机生成子句,仅保留与赋值一致的子句,然后转换为顶点覆盖。如果子句具有统一的概率,这将很容易受到基于程度的启发式的影响(与所选赋值相匹配的术语顶点的程度要低于与不匹配的术语顶点的程度),但是可以通过调整子句的概率来避免这一缺点根据条款中有多少条款与所选分配相符。这可能易受某种多项式时间攻击的影响,但对于顶点覆盖来说可能不是很自然,因此尽管没有太多保证硬度,但它可能会成为一组很好的测试实例。
我发现的最接近的参考是- 在 Sundar Vishwanathan 的近似顶点覆盖的硬实例中。没有看到裁判查看确切问题的难解之谜。
如我的评论所述,针对SAT的这种相应方法有大量研究,可简化为顶点覆盖。
关于DE的评论,对我来说,生成随机实例并仅选择那些很难用于标准算法的实例的想法对我来说是完全合理的,特别是采用经验/实验研究方法[1],这是针对SAT进行类似研究的标准操作程序过渡点。[2]
顺便说一句,其中“硬”区域是针对任何其他NP完全问题的,[3,4,5]大致与二进制指定的随机实例中“密度”为1的临界点有关。对于顶点覆盖,这可能对应于边缘密度。
请注意,证明一个人可以构造一组硬实例,并且只有硬实例基本上等效于P vs NP问题。Razborov / Rudich Natural Proofs论文对这种等效性进行了更正式的分析。
[1] 实验算法
[2] SAT相变研究
[3] NP难题中的相变
[4] NP完全问题中的相变:摩尔,组合论和计算机科学的挑战
[5] Walsh的相变行为