DNA計算機證實化學編程指日可待
單細胞利用自己的DNA進行分裂、繁殖和分化,從而產生一個發育完全的生物體,這可謂是化學計算中最巧妙神秘的行為。本週,《自然》(Nature)雜誌發表研究報告稱,計算機科學家建造了第一台可廣泛編程的DNA計算機,朝著利用化學計算的路途上邁出了至關重要的一步。
圖片來自Erik Winfree/Caltech
該系統利用DNA編寫的指令來執行不同的6位程序。以前的DNA計算機本質上都是定制的系統,只能夠解決特定的問題。但現在,研究人員用新系統來執行21個測試程序。在可編程物質中,化學軟件會自動指導具有復雜、可編程納米材料的構建。雖然僅由DNA和鹽水組成的新系統本身不足以成為科技應用,但是,它讓自組裝可編程物質的發展更進了一步。這項研究主要在加州理工學院(Caltech)進行。研究負責人、計算機科學和生物工程學教授埃里克·溫弗里(Erik Winfree)解釋說,新系統的創造者“試圖找出將計算行為嵌入化學的方式,從而控制化學的行為”。
DNA會形成一個由兩條長鏈組成的梯狀結構,每條鏈都有四種化學物質。這台計算機的原理就在於:單鏈DNA會因化學序列的互補性和其他DNA鏈配對。加州理工學院的研究小組將他們的DNA序列設計成類似於2-輸入/2-輸出布爾邏輯門。這些門中的五個被連接成一個層,用6個輸入和6個輸出執行所需的計算。但是僅僅一層不能完成計算。相反,一系列功能相同的層,其中一個層的輸出連接到另一個層的輸入,迭代地執行計算,直到得到一個答案。我們可以這麼理解:隨著一層又一層的連接,算法最後編織了一個包含計算過程的納米級圍巾。
溫弗里(Winfree)和他的團隊把這些電路抽像地想像成四方形的瓦片,瓦片兩邊都有固定裝置,只允許它們連接到帶有互補裝置的瓦片上,就像拼圖。計算機的全套指令由355種不同類型的瓦片組成。實際上,每塊瓦片上並非1條DNA單鏈而是4條,這樣就增加了足夠的餘地來克服意想不到的錯誤。
為了使計算有序進行(本質上是合成一種可以計算的晶體),研究人員需要某種既可以作為起點,又能承載DNA進行組裝的結構。達米安•伍茲(Damien Woods)曾從事DNA計算機研究,現在就職於愛爾蘭的梅努斯大學。他說,“我們想讓DNA有序地連接在一起形成迴路,而不是像在溶液裡一樣隨機粘在一起。這種DNA使用了一種叫做DNA摺紙的技術,設計成一個長150納米,寬20納米的納米管。計算晶體在納米管上進行組裝,方式類似於冰糖在裹著糖衣的繩子上結晶。
圖片來自Damien Woods/Maynooth University
想要在這台6位DNA計算機上運行一個程序,首先需要一個自定義編譯器。“大量的想法和科學會投入到編譯器中,”伍茲如是說道。它允許研究人員編寫任何他們想要的軟件算法,並通過各種抽象層次將算法轉換為:邏輯到塊、塊到糾錯子塊、子塊到DNA序列等等。最後,它產生了一個指南,即指導DNA序列添加的內容、時間、以及溫度。DNA摺紙納米管需要一到兩個小時的時間來合成,而完成計算則需要一天左右的時間。(溫弗里指出,速度從來都不是重點。)
對於Winfree來說,這一結果是其職業生涯的一大進步。“對我來說,這是一段相當長的路要走,”他說。大約25年前,當他還是一名研究生時,他對數學瓦片理論和理論計算機科學之間的奇妙聯繫產生了興趣,他想知道這種聯繫是否可以擴展到描述晶體生長的模型上。“這讓我非常好奇,偽晶體是否會在生長過程中進行計算。“現在我們知道他們可以。
本文編譯自IEEE Spectrum