Так называемые биомолекулярные компьютеры, основным компонентом
которых выступает ДНК и другие биологические молекулы, существуют
сегодня лишь в лабораторных вариантах и неприменимы для сколько-нибудь
полезной нагрузки со стороны обычного пользователя компьютера. Тем не
менее, Том Рэн (Tom Ran) и Шей Каплан (Shai Kaplan),
студенты-исследователи при лаборатории профессора Эхуда Шапиро (Ehud
Shapiro), специализирующейся на биохимии, компьютерных науках и
прикладной математике в Институте Вайцмана (Weizmann Institute) нашли
путь сделать эти микроскопические вычислительные биоустройства
"дружественными к пользователю" даже при выполнении комплексных
расчетов и обработке сложных запросов.
Шапиро и возглавляемая им команда представили первое автономное
программируемое устройство на основе ДНК в 2001 году. Настолько
микроскопическое, что в капле воды поместилось бы таких триллион,
устройство могло производить такие операции, как проверка списка из
нулей и единиц на предмет совпадения количества единиц с заданным их
числом. Новая версия, созданная в 2004 году, определяла наличие раковых
клеток в пробирке и высвобождала молекулы для их разрушения. Помимо
завораживающей перспективы введения основанных на подобных технологиях
устройств в человеческое тело – таких себе "микродокторов",
определяющих местонахождение пораженной ткани и не дающих болезни
распространятся, - биомолекулярные компьютеры могли бы производить
миллионы параллельных вычислений.

В опубликованной на днях в издании Nature Nanotechnology статье
Шапиро рассказывает о разработке программы для биомолекулярных
компьютеров, которая заставляет их "мыслить" логически. Выполняемые
операции чрезвычайно близки к знакомой всем логике, правила которой
сформулировал еще Аристотель более 2000 лет назад в виде простой
операции "если… то": "Все люди смертны. Сократ – человек.
Следовательно, он смертен". Когда в компьютер вводится условное правило
"Все люди смертны" и факт "Сократ – человек", биомашина корректно
отвечает на вопрос "Смертен ли Сократ?". Команда ученых пошла дальше и
повысила сложность запросов, включавших несколько правил и фактов, и
ДНК-компьютеры каждый раз приходили к верному заключению.

В то же время, коллектив создал компилятор – программный механизм
сообщения между высокоуровневым компьютерным языком программирования и
вычислительным кодом ДНК. При компиляции запрос может быть преобразован
в нечто подобное: "Смертен(Сократ)?" Для расчета ответа различные нити
ДНК, представляющие правила, факты и запросы были скомбинированы
роботизированной системой и использовались для поиска соответствий в
иерархическом процессе вычислений. Ответ был закодирован в зеленом
световом сигнале: некоторые нити имели биологическую версию сигнальной
вспышки – естественно светящуюся флуоресцентную молекулу, сдерживаемую
другим протеином, закрывающим свет. Когда специальный фермент
притягивался к корректному "ответу", он удалял "прикрытие" и позволял
свету быть видимым. Небольшие капли воды, содержащие биомолекулярные
базы данных, смогли давать ответы на очень сложные запросы в виде
комбинаций разнообразных цветовых маркеров.
Очередное достижение методично ставящих свои рутинные
эксперименты ученых может иметь далеко идущие последствия для всей
индустрии интеллектуально-вычислительных систем, куда входят и нынешние
кремниевые процессоры, и концептуальные квантовые компьютеры, и
программные самообучающиеся алгоритмы. Кто знает, к чему приведет
где-то на стыке соответствующих технологий конвергенция живой и неживой
материи, призванная сделать жизнь человека проще?
|