计算机科学家创建可重编程的分子计算系统

加州理工学院的计算机科学家设计了可以进行可重编程计算的DNA分子,这是第一次创建所谓的算法自组装,其中可以配置相同的“硬件”来运行不同的“软件”。

在二月二十日在Nature上发表的一篇论文中,由加州理工学院的计算机科学,计算和神经系统以及生物工程学教授Erik Winfree(博士'98)领导的团队展示了DNA计算如何执行简单执行的六位算法任务。该系统类似于计算机,但它不使用晶体管和二极管,而是使用分子来表示六位二进制数(例如,011001)作为输入,在计算期间和作为输出。一种这样的算法确定输入中的1位数是奇数还是偶数(上面的例子是奇数,因为它有三个1位);而另一个确定输入是否是回文;然而另一个产生随机数。

“将它们视为纳米应用程序,”爱尔兰都柏林附近的梅努斯大学计算机科学教授Damien Woods说,他是这项研究的两位主要作者之一。“能够在不改变硬件的情况下运行任何类型的软件程序,这使得计算机变得非常有用。我们正在分子中实现这一想法,实质上是在化学中嵌入一种算法来控制化学过程。”

该系统通过自组装工作:小的,特别设计的DNA链粘在一起构建逻辑电路,同时执行电路算法。从表示输入的原始六位开始,系统逐行添加分子 - 逐步运行算法。现代数字电子计算机使用流过电路的电来操纵信息;在这里,粘在一起的DNA链行执行计算。最终结果是一个充满数十亿个完整算法的试管,每个算法类似于DNA的针织围巾,代表计算的读数。每个“围巾”上的图案为您提供了运行算法的解决方案。

“我们对能够设计的程序的多功能性感到惊讶,尽管仅限于六位输入,”加州大学戴维斯分校的主要作者兼计算机科学助理教授David Doty说。“当我们开始实验时,我们只设计了三个程序。但是一旦我们开始使用该系统,我们就意识到它有多大的潜力。这是我们第一次编程计算机时感受到的同样兴奋,我们变得非常好奇关于这些股票还能做些什么。到最后,我们设计并运行了21个电路。“

研究人员能够通过实验证明六位分子算法可用于各种任务。在数学中,他们的电路测试输入以评估它们是否是三的倍数,执行相等检查,并计数到63.其他电路在DNA“围巾”上绘制“图片”,例如锯齿形,双螺旋形和不规则间隔钻石。还展示了概率行为,包括随机游走,以及一个聪明的算法(最初由计算机先驱约翰冯诺伊曼开发),用于从偏置硬币中获得公平的50/50随机选择。

在开始这项研究时,Woods和Doty都是理论计算机科学家,所以他们必须学习一套新的“湿实验室”技能,这些技能通常更多地属于生物工程师和生物物理学家。“当工程学需要跨学科时,进入的障碍很大,”温弗里说。“计算机工程通过设计高水平可重新编程的机器克服了这一障碍 - 所以今天的程序员不需要了解晶体管物理学。我们在这项工作中的目标是表明分子系统同样可以在高水平进行编程,因此,在未来,明天的分子程序员可以释放他们的创造力而不必掌握多个学科。“

“与先前专门设计用于执行单一计算的分子的实验不同,重新编程我们的系统以解决这些不同的问题就像选择不同的试管混合在一起一样简单,”伍兹说。“我们在实验室工作台上编程。”

虽然DNA计算机有可能执行比“自然”杂志中的特色更复杂的计算,但Winfree警告说,人们不应指望他们开始更换标准硅微芯片计算机。这不是本研究的重点。“这些是基本的计算,但它们有能力教会我们更多关于自组装等简单分子过程如何编码信息和执行算法。生物学证明化学本质上是基于信息的,可以存储可以指导算法的信息在分子水平上的行为,“他说。