DNA算法与使用图灵机定义的复杂性类别之间的关系是什么?DNA算法中诸如时间和空间之类的复杂性度量对应什么?它们是否可以用于解决von Neumann机器在实践中无法解决的NP完全问题(例如TSP)?
DNA算法与使用图灵机定义的复杂性类别之间的关系是什么?DNA算法中诸如时间和空间之类的复杂性度量对应什么?它们是否可以用于解决von Neumann机器在实践中无法解决的NP完全问题(例如TSP)?
Answers:
咬咬人的答案:尽管1990年代一些受人尊敬的研究人员曾想过可能,但DNA计算并不能提供解决NP完全问题的魔杖。
最初的DNA计算实验是在由著名数字理论家Len Adleman领导的实验室中进行的。Adleman解决了一个小的Traveling Salesman问题-一个众所周知的NP完全问题,他和其他人认为该方法可能会扩展一会儿。Adleman在这个简短的视频中描述了他的方法,我觉得很有趣。他们遇到的问题是,要解决中等规模的TSP问题,他们将需要比地球更大的DNA。他们想出了一种方法,可以通过增加并行完成的工作量来节省时间,但这并不意味着TSP问题所需的资源少于指数资源。他们只是将指数成本从时间量转移到了物理量上。
(还有一个附加的问题:如果您需要数量成倍的机械来解决问题,那么您是否首先自动地就需要成指数的时间或至少进行预处理来制造这些机器?我将把这个问题留给一侧)。
这个普遍的问题-减少了计算所需的时间而以其他一些资源为代价-已经在生物学启发的计算模型中多次出现。Wikipedia页面上的膜计算(生物细胞的抽象)说,某种类型的膜系统能够在多项式时间内解决NP完全问题。之所以行之有效,是因为该系统允许在多项式时间内在整个膜内创建指数级的许多子对象。好吧...如何以指数形式的原材料从外部进入具有恒定表面积的膜的入口?答:不考虑。他们没有为计算所需的资源付费。
最后,对安东尼·拉巴尔(Anthony Labarre)的回应,他链接到一篇论文,该论文显示AHNEP可以在多项式时间内解决NP完全问题。甚至有论文表明AHNEP可以线性求解3SAT时间。AHNEP =接受进化处理器的混合网络。进化处理器是受DNA启发的模型,其核心具有一个字符串,可以在每个步骤中通过替换,删除或(重要)插入进行更改。此外,每个节点上都可以使用任意数量的字符串,并且在每个通信步骤中,所有节点都将其所有正确的字符串发送给所有连接的节点。因此,无需花费时间,就可以传输指数级的信息,并且由于插入规则,单个字符串在计算过程中可能变得越来越大,所以这是双重打击。
如果您对专注于实际计算的研究人员感兴趣的最新生物计算工作,我可以提供我最近为SIGACT新闻撰写的书评,该书概述了多个领域。
这在很大程度上取决于您的模型。
实际上,DNA计算遵循(非相对论)物理定律,因此可以在量子计算机上进行模拟。因此,您最好的期望是它可以解决BQP完全问题。但是,实际上这不太可能是正确的(DNA很大,因此连贯性并不是真正的问题),因此通过仿真,几乎可以肯定是P。但是要注意,这在效率上很重要原子的价格便宜,坦率地说,原子的价格是天文数字,这使得对装有DNA的试管的实际模拟远远超出了目前可能的范围。
结果,许多人选择使用模型来近似实际发生的事情,但是当推到极点时就会崩溃。其中一个例子是抽象切片模型,事实证明它是NEXP完整的(请参阅去年FOCS的Gottesman和Irani的论文)。
这是部分答案
在您提到的Wikipedia文章中,解决NP完全问题的分子DNA计算算法并不能证明NP完全问题在顺序机器上的多项式时间内是可解决的(假设在实践中,可行的意思是多项式时间)。DNA计算可以认为是并行计算形式。最后,从可计算性理论的角度来看,DNA计算没有图灵机强大。