向科学家证明渐进最坏情况分析


22

我一直在努力将计算复杂性的一些结果引入理论生物学,尤其是进化与生态学,目的是使生物学家感兴趣/有用。我面临的最大困难之一是证明渐近最坏情况下限分析的有用性。有没有文章长度的参考文献可以证明科学界的下限和渐近最坏情况分析的合理性?

我确实在寻找我可以在写作中参考的良好参考,而不必在有限的可用空间内论证(因为这不是本文的重点)。我也知道的其他种类范式分析的,所以求,说最坏的情况是“最好的”分析的参考(因为有设置时,它非常不),但它不是完全没用:它仍然可以为我们提供理论上对实际算法在实际输入上的行为的有用见解。文章针对普通科学家也很重要 而不仅仅是工程师,数学家或计算机科学家。

例如,蒂姆·拉夫加登(Tim Roughgarden)向经济学家介绍复杂性理论的论文正朝着我想要的方向走。但是,只有第1部分和第2部分是相关的(其余的内容太过于具体于经济学),并且比大多数科学家[1],预定的受众对定理-定理-反思想的思考更为满意。


细节

进化中的自适应动力学的背景下,我遇到了理论生物学家提出的两种特定类型的抵抗:

[A]“为什么我应该关心任意行为?我已经知道该基因组具有碱基对(或者可能是基因)而已。n = 3 * 10 9 n = 2 * 10 4nn=3109n=2104

使用“我们可以想象等待秒,而不是 ” 这样的论点,这相对容易解决。但是,一个更复杂的论点可能会说:“当然,您说您只关心一个特定的,但是您的理论从未使用过这个事实,他们只是使用了一个很大但有限的事实,而我们正在研究的是您的理论渐近分析”。2 10 9 n1092109n

[B]“但是您仅通过使用这些小工具建立特定的景观就表明这很难。为什么我要关心这个而不是平均值?”

这是一个较难解决的批评,因为人们在该领域中通常使用的许多工具来自统计物理学,在统计学中通常可以安全地假设一个统一的(或其他特定的简单)分布。但是生物学是“有历史的物理学”,几乎所有事物都不处于平衡或“典型”状态,经验知识不足证明关于投入分配的假设是合理的。换句话说,我想要一个类似于软件工程中用于均布平均情况分析的论点:“我们对算法进行建模,我们无法构建关于用户将如何与算法交互或他们的分布如何的合理模型。的投入是;那是给心理学家或最终用户的,而不是我们的。” 除非在这种情况下,否则科学就不会处于与“心理学家或最终用户”同等的地位,以找出潜在的分布(或者甚至是有意义的)。

注意事项及相关问题

  1. 该链接讨论了认知科学,但是在生物学上的思维方式是相似的。如果您浏览《进化论》《理论生物学杂志》,则很少会看到定理-证明定理,当您这样做时,通常只是一种计算,而不是诸如存在证明或复杂构造之类的东西。
  2. 算法复杂度分析的范例
  3. 除了最坏情况,平均情况等之外,还有其他类型的运行时间分析吗?
  4. 通过算法的视角看生态与进化
  5. 为什么经济学家应该关心计算复杂性

23
最坏情况的行为是无法辩解的……单纯形算法具有指数最坏情况的行为,并且唯一关心过的人是理论家。您需要争论的是(a)平均情况下的渐近行为很重要;(b)平均情况下的渐近行为和最坏情况下的渐近行为通常很相似;(c)最坏情况下的渐近行为通常比平均情况下的渐近行为容易计算(特别是因为没人知道相关的概率分布是什么)。
彼得·索尔

5
渐近已经是一个有问题的方面。我们都知道有关矩阵乘法算法的故事(实际上,渐进上限是没有意义的),也许还有关于密码学中选择参数的故事(实际上,渐进下界是没有意义的;指数算法有时是可行的[DES])。如果您的分析具有实际常数,那么它将更有说服力。
Yuval Filmus 2014年

6
如果您将计算视为输入提供者和算法之间的博弈(即战争),那么最坏情况分析就是一种标准的军事方法-您想知道它有多糟糕。其次,更重要的是,最坏情况分析不允许您在理智上变得懒惰,无法接受可能对您所相信的世界(而不是现实世界)有益的解决方案。最后,也许是最重要的一点,它提供了一种统一的方式,以一种有意义的方式比较算法。简而言之,除了所有其他方法之外,这是最糟糕的方法。
Sariel Har-Peled 2014年

6
我认为,最坏情况的下限应视为将球推回球场。您已经展示了没有一种算法可以在合理的时间范围内解决所有实例上的问题。他们可能会合理地认为自己的实例很简单-但您刚刚表明,如果是这样,那将是不平凡的事实。因此,他们的模型是不完整的,除非他们提出了这样做的解释。
亚伦·罗斯

3
(当与博弈论者交谈时,这种方法似乎行得通。它提出了一个问题-市场是否真正真正地实现了平衡-实际市场具有什么样的特殊属性可以避免最坏的情况?有可能定义一个合理的可能性这样的属性,其下限只是表明这样做是一个重要的研究方向)
Aaron Roth 2014年

Answers:


8

我个人(并带有偏见)认为,渐近最坏情况分析是更实用的分析的历史垫脚石。因此,似乎很难为从业人员辩护。

最坏情况的证明边界通常比平均情况的“好的”定义要容易。渐近分析通常也比证明合理的紧边界容易得多。因此,最坏情况的渐近分析是一个很好的起点。

在我看来,丹尼尔·斯皮尔曼(Daniel Spielman)和滕尚华(Tenghuahua Teng)在平滑分析Simplex方面所做的工作似乎预示着当我们开始更好地理解问题的形式时会发生什么:首先解决最坏的情况将使人们更加细致入微。发达。此外,正如亚伦·罗斯(Aaron Roth)在评论中所建议的那样,如果系统的“正常”行为与其最坏的情况显着不同,则该系统尚未完全指定,因此需要更多工作来改进模型。因此,从长远来看,超越最坏情况似乎是重要的长期目标。

就渐近分析而言,它通常可以使冗长而混乱的证据不至于使人分心。不幸的是,目前似乎还没有一种方法来奖励填写细节以获得实际常数的繁琐工作,因此似乎很少完成。(页数限制也可以解决这个问题。)对渐近边界的细节进行仔细的分析已经形成了实际的算法,并且在常量上有很好的边界,因此我个人希望看到更多此类工作。也许,如果使用证明助手系统将更多的证明形式化,则可以用较少的额外工作来估计常数。(或者按照Gowers的Szemerédi正则引理的界线,常数的界限可能会变得更加常规。)还有其他方法可以证明没有常数的下界,通过使用更明确的机器模型(例如确定性有限状态自动机)。但是,对于更通用的计算模型,这样的(近)精确下界可能需要大量工作,或者根本无法解决。这似乎是在自动机理论的第一个鼎盛时期的1958-73年间进行的,但据我所知,此后基本上就被搁置了。

简而言之:将来,我认为我们将把最坏情况的分析视为第一步,并且希望将第一步,将具有银河隐藏常数的 *类的表达式看作是第一步。我发现很难向从业者证明当前关注最坏情况的渐近分析,但是将其视为更长的旅程的开始也许是有用的。n kO(nk)


我不赞同您放弃渐近线而偏爱带有确定常数的精确范围的热情。渐近疗法可能不精确-但有用的是不精确的。他们抽象出相同机器模型的实现差异。例如,在1950年代硬件上是二次方的排序算法在当今的硬件上仍将是二次方。此外,渐近公式很好地构成。例如,线性和多项式在合成下是封闭的。(请注意,与最坏情况相比,争论平均情况下更好的界限与反对渐近论是正交的。)
brandjon 2014年

您通常是正确的,但是小的常数与作为相关参数的非基本函数的常数之间存在很大的差异。
安德拉斯·萨拉蒙

我总体上喜欢这个答案,但是我同意@brandjon的观点,隐藏常量至关重要。对我来说,TCS在生物学中有用的原因是因为它需要对微观动力学的假设要比物理学少得多。但是,如果您不对微观动力学做出假设(即计算模型的确切规范),那么您将无法得出常数因子。TCS的另一个有用功能是严格的定性二分法(与生物中更定性的观察值相比,这更容易进行比较),通常要获得这些结果,还必须舍弃常数。
Artem Kaznatcheev

隐藏常量在某种程度上是可以的。但是,当人们读到一个使用时间的算法时(就像我经常做的那样),肯定会丢失一些东西。另外,我并不完全相信,在分析中包含常量通常需要详细的机器模型。例如,排序算法中的常数现在是众所周知的,并且不需要对特定机器进行一些微观描述。O~(nO~(1/ϵ))

1
附带说明一下,有一些例子可以说明最坏情况。例如,当您开发通用子例程库时,却不知道它们在哪些应用程序域中会有用:例如,您可能无法预期某人何时以及为什么要计算最低成本两部分匹配的所有情况。对抗性设置(例如密码学)更加清晰(但是,在加密中,您真的想知道涉及安全性参数的常量)。
Sasho Nikolov 2014年

4

下限分析和最坏情况分析通常不会同时出现。您不会说算法在最坏的情况下至少要花费指数时间,因此很糟糕。您说在最坏的情况下最多可能需要线性时间,因此是很好的。前者仅在您要在所有可能的输入上运行算法而不仅仅是平均输入时才有用。

如果要使用下限来证明不良,则需要进行最佳案例分析或平均案例分析。您可以通过依靠@PeterShor的观点(最差值和平均值通常非常相似)简化事情,并给出确实适用的算法清单。(例如:除快速排序外的所有经典排序。)

至于证明渐进性与恒定输入和恒定因子相比很重要,我最喜欢的主题是Jon Bentley的“编程珍珠:算法设计技术”。他为一个简单的数组问题提供了四种不同的解决方案,并演示了线性方法如何消除三次立方方法。在物理学家用它来表示火箭方程的难解性之后,他称自己的餐桌为“无症状的暴政”。我使用此示例来激发对更好的算法的搜索,以帮助大学预科学生。

非计算机科学家是否会通读包含代码的文章,并知道跳过低级细节来获得全局?我不知道。也许其他地方会有更好的演示。但是我认为这是一个不错的资源。

如果他们认为自己不在乎任意大的n,请让他们在3 * 10 9个碱基对上运行递归未存储的Fibonacci ,并告诉他们O(1),因为DNA序列的大小是固定的。;)


1
我喜欢斐波那契示例:)
Suresh Venkat 2014年

3
回复:您的第一段:实际上,这几乎就是许多复杂性理论所做的工作。如果问题是EXP完全的,则意味着在最坏的情况下,它需要指数时间。通常将其视为其总体难度的指标(公平地说,实际上,它通常不如一般指标那么糟糕)。这是事实上的标准,称为“无限常”或下限。有时追求的目标是平均情况或几乎到处都存在下界(即,除了有限输入之外的所有下界),但与下界相比通常是遥不可及的。
2014年

2
让我指出,您不仅可以列出最坏情况分析和平均情况分析都相同的算法清单,还可以给出许多例子,其中它们有很大不同(单纯形算法是最著名的这些)。您确实需要以某种方式争辩说它们对于您的特定应用程序是相同的。实验测试是做到这一点的好方法。
彼得·索尔

1
@JoshuaGrochow公平。我们如何修改该语句,如下所示:当您想证明没有非恐怖性的数学保证时,最坏情况的下限很重要。;)
brandjon 2014年

-3

许多人同意这是一个重要的要调查/发现的话题,但似乎还没有很多。风格/覆盖范围/受众/ 形式不同的几种参考文献并非完全按要求提供,而是有些接近(到目前为止,在中等搜索量中在线最佳,希望能听到更多更好的参考文献;以下更多注释):

  • 算法阿特金森算法的复杂性(在本文中仅提及生物学的单一参考,但可以满足更一般的科学/工程术语)

    现代算法理论可以追溯到1960年代末,当时开始使用渐近执行时间测量方法。有人认为,该主题既有工程学又有科学知识。工程部门由易于理解的设计方法组成,而科学部门则关注理论基础。调查了两个部门的关键问题。最后,就该主题将要去往何处提出一些个人意见。

  • 复杂性和算法 J. Diaz。100张幻灯片。宽; 一个人可能会摘录相关的东西。

  • 算法复杂度分析的简要介绍 Dionysis“ dionyziz” Zindros

换句话说,对于复杂性理论的镜头,在科学中与先进的算法镜头紧密结合/结合/相伴,是否有某种介绍/调查/概述?例如“针对科学家,工程师和研究人员的复杂性理论”

有昔日的“算法镜头”你有引如良好的裁判PAPADIMITRIOU但它似乎并没有一个非常令人满意的裁判在该领域的专家已经被写入后“复杂镜头”上... 还没有(也许一些“精英”,该网站的成员将其视为下一个书籍或论文项目)。

请注意,除了复杂性理论和其他科学领域以外,还有很多关于P与NP相关性的参考文献,可以用于这些目的。如果有兴趣,将在评论中添加它们。


3
我认为这并不能真正回答问题。
哈克贝内特2014年

1
呃,你看过任何裁判吗?我的答案的一部分是还没有理想完美的答案:|
vzn 2014年

1
他们似乎在定义渐进和最坏情况分析,而不是专注于证明其合理性,但也许我错过了一些东西?
哈克贝内特2014年

7
实际上,我认为,TCS以外的研究人员可以轻易地将最坏情况视为“在实践中永远不会发生的人为构造的示例”,并且(在没有其他强有力的说服力的情况下)会对平均情况更感兴趣(尽管目前尚不清楚平均情况要比真实情况更近)。
2014年

1
@vzn:渐近(例如big-Oh)和最坏情况有些正交。可以进行渐近最坏情况分析,渐进平均情况分析,甚至渐进最简单情况分析(尽管我承认后者似乎有些不正确)。取而代之的是,可以进行精确的最坏情况分析或精确的平均情况分析,依此类推,尽管它们将更多地依赖于模型并且不那么健壮。证明使用渐近性(以及隐藏诸如常数因素之类的东西)与证明最坏情况与平均情况或“真实”情况(无论后者可能意味着...)完全不同。
2014年
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.