基于蛮力和最佳算法之间的差距的复杂性的替代概念?


17

通常,高效的算法具有多项式运行时间和指数级的求解空间。这意味着问题必须从两个方面讲是容易的:首先,可以通过多项式的步数来解决问题,其次,解决方案空间必须非常结构化,因为运行时在可能的解决方案中只是多对数的。

但是,有时这两个概念会有所不同,仅从第一意义上讲,问题就很容易解决。例如,一种近似算法和参数化复杂性的通用技术是(大约)证明,实际上可以将解空间限制为比朴素定义小得多的大小,然后使用蛮力在此受限空间中找到最佳答案。如果我们可以先验地将自己限制为n ^ 3个可能的答案,但是我们仍然需要检查每个答案,那么从某种意义上说,这样的问题仍然很“棘手”,因为没有比蛮力更好的算法了。

相反,如果我们对可能的答案有双指数的问题,但只能在指数时间内解决,那么我想说这样的问题是“容易的”(“结构化”可能会更好字),因为运行时仅是解决方案空间大小的日志。

是否有人知道基于有效算法与强力或相对于溶液空间大小的硬度之间的差距而考虑诸如硬度之类的论文?

Answers:


12

将问题形式化的一个问题是,短语“问题A的解决方案空间”的定义不明确。解决方案空间的定义需要一个验证程序算法,该算法在给定实例和候选解决方案的情况下,验证该解决方案是否正确。然后,实例到验证者的解空间是使验证者输出“正确”的候选解的集合。

例如,假设问题SAT0:给定一个布尔公式,全零分配是否满足?这个问题在多项式时间内很简单,但是其解决方案空间可能千差万别,具体取决于您使用的验证程序。如果您的验证程序忽略了候选解决方案,而只是检查全零是否对该实例起作用,那么该验证程序上任何SAT0实例的“解决方案空间”都是微不足道的:所有可能的解决方案。如果验证者检查候选解是否满足要求,则SAT0实例的解空间实际上可能非常复杂,可以说与任何SAT实例的解空间一样复杂。

也就是说,“避免暴力搜索”的问题可以通过以下方式来形式化(如论文“改善穷举搜索意味着超多项式下界”所示)。在大小为n的实例和k位候选解的情况下,将向您提供在时间中运行的验证程序算法。问题是,*在大小为n的任意实例上,我们是否可以确定在短于O 2 k t n k 时间的情况下是否存在一个正确的解决方案(wrt此验证程序),最多k位?ŤñķñķñķØ2ķŤñķ

注意是尝试所有长度最大为k的字符串并运行验证程序的开销。因此,以上内容可以看作是询问我们是否可以改进针对给定验证程序的蛮力搜索。“针对NP难题的精确算法”领域可以看作是一项长期工作,旨在研究对某些非常自然的验证者进行蛮力搜索的难度:例如,寻找优于2 n的算法的问题对于SAT来说,是一个问题,我们是否总能改进对验证器的蛮力搜索,该验证器会检查给定的候选解是否满足给定的SAT实例。Ø2ķŤñķ2ñ

本文显示了改进蛮力搜索某些问题的一些有趣结果。即使改进对“多项式大小解空间”的强力搜索,也会产生有趣的结果。


1

我不愿在答案中引用自己的论文。但是,当它完全适合这个问题时,很难抗拒……
Ryan Williams

5

您将如何处理典型的动态编程问题?在这里,经常发生的是最优解的空间是多项式有界的,但是解的空间却不是。因此,从您的角度看,这似乎是“轻松”的,因为运行时间在解决方案空间中是对数的,但在您的意义上,这却是“艰苦的”,因为它对所有可能的最佳解决方案都施加了“蛮力”。


在定义中有许多微妙之处需要解决,就像什么算法可以算是蛮力一样。我可能会尝试按以下方式限制解决方案空间:如果对于给定的问题大小,您可以不考虑数据就从考虑中删除答案,那么它不在解决方案空间中(诚然,这允许多个不同的解决方案空间)。就是说,即使答案在许多细节上有所不同,我也会很高兴得到与我的问题在精神上相似的答案。
伊恩

3

透视图似乎假设了一些事情,例如解空间的有限性。

例如,考虑从一组输入点生成Voronoi镶嵌的问题。这里存在无限大小的解空间,因为图边缘中的每个点都是实数元组。仍然可以在输入点数(平面)的O(n log(n))中找到解决方案。


的确,某些问题可能不适用于此框架。尽管对于实数输出的某些问题,可以通过以输入形式(例如,输入点的线性组合)代数描述输出,从而使空间有限。我对几何算法了解不多,因为几何算法通常会遇到实数,因此我不确定这样做的频率或可能性。
伊恩

1
实数并不是获得无限解空间的唯一方法。考虑爱丽丝和鲍勃之间的一场比赛。爱丽丝选择一个整数n。鲍勃猜测,爱丽丝告诉他,他是更高,更低还是等于她的秘密n。鲍勃(Bob)有找到n的有限时间策略,因为它总是有限的。他从0开始,然后选择一个大常数c。爱丽丝告诉他,她的n处于哪个方向,鲍勃将猜测c转向,直到找到上下限,然后在其中进行n的二元搜索。再说一次,我想你可能会说n的位数有一个有限的解空间...
Ross Snider 2010年

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.