Поль Ротмунд подробно рассказывает об укладке ДНК

ср, 25/05/2011 - 06:40 — Анатолий Шперх

 

Как вы знаете, люди очень живо обсуждают, как дать определение жизни. Обсуждают, следует ли включать туда воспроизводство, метаболизм, эволюцию. Ответ на это я не знаю, и говорить об этом не собираюсь. Но я хочу сказать, что жизнь включает в себя вычисления. То есть это – компьютерная программа. Будучи загруженной в клетку, программа выполнится, и в результате получится этот человек, или, при небольшом изменении, может получиться этот человек – или, ещё одно изменение, и – этот,или, при более серьезном изменении – эта собака, или это дерево, или этот кит.

Так вот, если серьёзно принять такую метафору генома как программы, то придется считать, что Крис Андерсон – это продукт работы компьютера, равно как и Джим Уотсон, Крейг Вентер, а также любой из нас. Что касается убедительности этой метафоры, то достаточно найти много схожего между генетическими и компьютерными программами, чтобы иметь возможность убедиться. Лично для меня самый убедительный аргумент – это удивительная чувствительность к малым изменениям,которая, как результат, приводит к большим вариациям биологического развития. Малая мутация способна превратить двукрылую муху в 4-х-крылую. Или способна у мухи посадить ножки там, где у неё должны быть усики. Или, для тех, кому знаком [роман и фильм] «Принцесса-невеста», малая мутация способна создать человека с 6-ю пальцами.

Так вот, характерной чертой компьютерных программ является как раз такого рода чувствительность к малым изменениям. Если на вашем банковском счету 1 доллар, и вы поменяете всего один бит, там может оказаться 1000 долларов. Эти малые изменения, по моему мнению, и указывают на то, что в основе усиления амплитуды изменений лежит сложный вычислительный процесс.

При этом всё указывает на наличие молекулярных программ в основебиологических процессов, и мощь молекулярных программ доказывается биологией. Моя цель – писать молекулярные программы с потенциалом создания технологии. Занимается этим масса специалистов по синтетической биологии, таких как Крейг Вентер; они концентрируются на использовании клеток. Их работы – ориентированы на клетки. Мы с моими друзьями, молекулярными программистами,сконцентрировались на, как бы, био-молекулярном подходе. Мы начинаем с ДНК, РНК и белка, и строим новые языки для построения снизу вверх, с использованием биомолекул, что в принципе может не иметь ничего общего с биологией. Итак, внутри клетки имеются вот эти машины. Вот – камера. Вот – солнечные батареи клетки, переключатели для включения и выключения генов, опорные балки для клетки, моторчики для движения мускулов.Мы в нашей небольшой группе молекулярных программистов пытаемся переделать все эти элементы из ДНК. Мы не энтузиасты ДНК, но ДНК – это наиболее дешёвый, наиболее понятный и наиболее легко программируемый для этого материал. По мере того, как станет легче использовать прочие вещи – возможно, белок, – мы будем работать и с ними.

Как будет выглядеть молекулярное программирование если мы добьемся успеха?Вы садитесь за свой компьютер, и собираетесь проектировать, скажем, сотовый телефон. Вы описываете желаемый телефон на высокоуровневом языке, а затем запускаете компилятор, который, исходя из вашего описания, преобразует его в описание реальных молекул. Это описание отправляется в синтезатор, а синтезатор упаковывает эти молекулы и получается одно семя. Если это семя соответствующим образом поливать и питать, то оно проделает все необходимые для его развития вычисления, молекулярные вычисления, и построит электронный компьютер. А раз уж я ещё не раскрывал свои убеждения, скажу, что, по моему мнению, жизнь идёт путём того, что молекулярные компьютерыстроят электрохимические компьютеры, которые строят электронные компьютеры, которые, вместе с электрохимическими компьютерами, построят новые молекулярные компьютеры, которые построят новые электронные компьютеры, и т.д.

Если вы готовы всё это принять, и считаете, также как и я, что жизнь всецело состоит из вычислений, тогда вы будете смотреть на мир глазами специалиста по компьютерным технологиям. Тут возникает один большой вопрос. Откуда ребёнок знает, что пора прекращать рост? Для молекулярного программиста вопрос состоит в том, откуда сотовому телефону знать, что пора прекращать рост? (Смех) Или, откуда компьютерной программе знать, что пора остановиться? А ещё точнее, откуда мы знаем, что программа вообще остановится? Есть и другие вопросы, подобные этому. Один из них – вопрос, поставленный Крейг Вентером. Оказывается, Крейг – настоящий, как я считаю, специалист по компьютерным наукам. Он спросил, каков минимальный размер генома, который необходим для создания функционирующего микроорганизма? Насколько малым числом ген можно обойтись? Это в точности аналогично вопросу о том, программу какого минимального размера можно написать, чтобы она работала в точности, как Microsoft Word?(Смех) Аналогично тому, как он пишет малые бактерии – он пишет геномы, которые сделают дело – так же и мы могли бы написать малые программы, которые бы делали всё, что делает Microsoft Word.

Но в молекулярном программировании вопрос стоит так: сколько молекул необходимо поместить в семя, чтобы получить телефон?Каким их минимальным числом можно обойтись? Так вот, для компьютерных технологий – это большие проблемы. Это вопросы уровня сложности, и в компьютерных технологиях они считаются очень трудными вопросами. Многие из них неразрешимы. Но в отношении некоторых задач, всё же, можно попытаться ответить на них. Потому, я поставлю эти вопросы для структур ДНК, о которых сейчас расскажу. Вот – нормальная ДНК. Та, которую принято считать нормальной. Она имеет две нити и двойную спираль. Имеет парные A, T, C, G, которые удерживают нити вместе. Иногда я это буду показывать вот так, просто чтобы не напугать вас. Мы будем рассматривать отдельные нити и не думать о двойной спирали.При синтезировании мы получаем однонитевые структуры, поэтому мы можем взять синюю нить в одной пробирке, и сделать оранжевую нить – в другой; они гибкие, пока находятся по отдельности. Но если их перемешать, они составят негнущуюся двойную спираль. За последние 25 лет Нед Симан и целый ряд его последователей очень интенсивно потрудились и создали трёхмерные структуры, используя эту реакцию ДНК на перемешивание. Однако многие из их, в общем-то, элегантных подходов требуют много времени. Может понадобиться несколько лет, или их может быть тяжело проектировать.

И вот пару лет назад, я предложил новый метод, который я назвал ДНК-оригами. Он настолько прост, что вы можете этим заниматься дома на кухне, и спроектировать всё на портативном компьютере. Однако, для этого нужна очень длинная нить ДНК, а её технически очень трудно получить. Можно обратиться к естественному источнику. Можно заглянуть внутрь этого продукта работы компьютера, но его 2-х-нитевой геном ничего не даст. Можно заглянуть внутрь его кишечного тракта, где есть миллиарды бактерий – тоже без толку. Опять двойные нити, но внутри они заражены вирусом, который имеет прекрасный, длинный, однонитевой геном. Мы можем сложить его как лист бумаги, и вот как мы это делаем.

Это – часть того генома. Мы добавляем серию коротких синтетических ДНК, которые я назвал «скрепками». Каждая из них имеет левую половинку, которая стыкуется с длинной нитью в одном пункте, и правую половинку, которая стыкуется с ней в другом пункте, и завязывает длинную нить примерно так. Результатом воздействия многих скрепок на длинную нитьявляется укладка её в нечто типа прямоугольника.

Киносъёмку этого процесса сделать невозможно, но Шон Дуглас в Гарварде создал для нас хорошую визуализацию, которая начинается с длинной нити и нескольких коротких нитей. Наши действия состоят в перемешивании этих нитей. Нагреваем, добавляем немного соли, нагреваем почти до кипения, охлаждаем, и по мере охлаждениякороткие нити стыкуются с длинными и начинают формировать структуру. Здесь видно начало формирования двойной спирали. Если посмотреть на ДНК-оригами, то можно увидеть, что на самом деле, даже если это покажется сложным, здесь – серия параллельных друг другу двойных спиралей, удерживаемых вместе через те пункты, где короткие нити идут вдоль одной спирали, но затем перепрыгивают на другую. Так что, вот нить, которая идёт вот так, идёт вдоль одной спирали и стыкуется,перепрыгивает на другую спираль и возвращается, и это удерживает длинную нить вот таким образом.

Чтобы доказать, что мы можем создать какую угодно форму и фигуру, я попробовал вот эту форму. Я хотел, чтобы ДНК уложилась вот так: вверх к глазу, вниз по носу, вверх по носу, вокруг лба, обратно вниз и кончик в виде такой вот петельки. Идея была в том, что если удастся это, то удастся и всё, что угодно. А потому я заставил компьютерную программу спроектировать для этой цели короткие «скрепки». Я заказал их, получил по [срочной почте] FedEx перемешал, подогрел, охладил, и получил 50 миллиардов смайликов, свободно плавающих в одной капле воды. Каждая из них имеет размер, представьте себе, в одну тысячную толщины человеческого волоса.

Вот все они плавают в растворе, но, чтобы их увидеть, надо сделать так, чтобы они прилипли к какой-нибудь поверхности. А потому мы выливаем их на поверхность, и они начинают к ней прилипать, а мы делаем съёмку с помощью атомно-силового микроскопа. Он оснащён иглой, подобно проигрывателю, которая ходит взад-вперёд по поверхности, и, сталкиваясь с неровностями, чувствует высоту первой поверхности. Он чувствует ДНК-оригами. Вот атомно-силовой микроскоп в действии, вам видно, что результат грубоват. Если увеличить, то видно, как слабые челюсти взлетели выше головы, некоторые носы разбиты, но всё же неплохо. Приблизившись ещё, можно даже увидеть маленькую петлю, в виде нано-бородки.

Самое лучшее в этом – то, что это способен создать каждый. Примерно через год после того, как мне удалось это сделать, я получаю вот что от неизвестного мне отправителя. Кто знает, что это? Это – Китай. Одна китайская студентка магистратуры, по имени Лулу Цзянь,сделала прекрасную вещь. Она сама написала программу для проектирования и создала это ДНК-оригами, красивое изображение Китая, на котором даже есть Тайвань. Видно, что его держат на самом, по-видимому, коротком в мире поводке. (Смех) [ревностность реакции КНР на Тайвань] Итак, это прекрасно функционирует и мы можем создавать фигуры и формы. Можно создать карту двух Америк, надпись ДНК с помощью ДНК.

Самая прекрасная сторона в этом… вообще-то всё это похоже на произведения искусства нано-размеров, но дело в том, что нано-искусство – это и есть всё, что надо для создания нано-схем. Значит, можно поставить компоненты схем на скрепки, подобно лампочке и переключателю, запустить процесс сборки и получить некую схему. А потом, может быть, удастся смыть ДНК и получить в осадке схему. Это и сделали мои коллеги в Калтехе.Они взяли ДНК-оригами, организовали углеродные нано-пробирки, сделали вот тут маленький переключатель, соединили его,протестировали и убедились, что это действительно переключатель. Так вот, это – всего лишь один переключатель, а для компьютера нужно полмиллиарда, так что ещё есть, над чем поработать. Но это многообещающе, потому что оригами может создать элементы размера 1/10 того, что имеется в обычном компьютере. Значит, это очень перспективно для создания малых компьютеров.

Теперь я вернусь к компилятору. ДНК-оригами является доказательством того, что компилятор на самом деле работает. Итак, запускаем что-то в компьютере. Получаем высокоуровневое описание программы, высокоуровневое описание оригами. Можно скомпилировать его в молекулы, послать всё на синтезатор, и это всё на самом деле функционирует. Как оказалось, одна фирма создала прекрасную программу намного лучше моей, совершенно некрасивой на вид. Их программа позволяет работать с помощью красивого, визуального интерфейса.

Теперь возникает вопрос: если всё так прекрасно, почему же дело не кончается на ДНК-оригами? У вас есть молекулярный компьютер, теперь вы можете делать всё, что угодно. Проблема в том, что результаты не масштабируются. Например, для создания человека из ДНК-оригами, потребуется очень длинная нить, в 10 триллионов триллионов основ. Это – ДНК длиной в 3 световых года, то есть просто нереально. И мы обращаемся к другой технологии, которая называетсяалгоритмическая самосборка плиток. Начало ей дал Эрик Уинфри, и вот что она делает.Имеются плитки размером 1/100 от ДНК-оригами, увеличив, мы видим лишь 4 нити ДНК,на которых есть маленькие однонитевые кусочки. Они могут, если найдут себе пару, состыковать одну плитку с другой. Эти плитки мы будем рисовать как квадратики. Если приглянуться к их липким краям, к этим кусочкам ДНК, то можно видеть, что они располагаются в шахматном порядке. Значит, эти плитки образуют сложную само-собирающуюся шахматную доску. Если вы ещё не догадались, смысл этого в том, что плитки – это нечто типа молекулярной программы, и они производят фигуры. А самое потрясающее – это то, что любая компьютерная программа может быть преобразована в одну их этих плиточных программ, – в частности, такова программа подсчёта. Значит, можно получить набор плиток, которые будучи собранными вместе образуют маленький бинарный счётчик, а не просто шахматную доску. То есть, можно с неё считывать бинарные числа: пять, шесть и семь.

И чтобы правильно начать этот тип вычислений,нужны исходные данные, нужно нечто типа семени. Для этого можно использовать ДНК-оригами. Можно закодировать число 32 в правой части ДНК-оригами, и, когда подсчитывающие плитки будут складываться,они начнут подсчёт, прочитают число 32 и на 32 остановятся. Значит, мы нашли способзаставить молекулярную программу понять, когда остановить рост. Она понимает, когда надо остановить рост, потому что она умеет считать. Она знает, насколько она велика. Это – ответ на первый вопрос, о котором я говорил.Однако это ничего не говорит нам о том, как же дети делают это.

Теперь мы можем использовать эту программу подсчёта и попытаться получить более крупные вещи, чем с помощью только ДНК-оригами. Вот – ДНК-оригами. Мы можем вписать число 32 с обоих концов ДНК-оригами, использовать нашу лейку, начать взращивать плитки и создать квадрат. Счётчик служит шаблоном для заполнения пространства посередине этой штуки. Значит, теперь нам удалось сделать нечто намного большее, чем ДНК-оригамипутём комбинирования ДНК-оригами с плитками. И тут есть еще одно хорошее свойство – всё это поддаётся перепрограммированию. Можно просто изменить пару нитей ДНК в этом бинарном представлении, и вместо 32 получить 96. Если так сделать, то оригами останется того же размера, но полученный квадрат будет в три раза больше.

Итак, это сводит вместе всё то, что я говорил о развитии. Имеется очень чувствительная компьютерная программа, где малые изменения – единичные, малейшие мутации –превращают то, что производило квадрат одного размера в нечто, выдающее квадрат намного больший. Так вот, использование программы подсчёта для вычисления и построения такого рода вещей путём подобного процесса развития имеет отношение вопросу, поставленному Крейг Вентером. Можно спросить, а сколько нитей ДНК потребуется для построения квадрата заданной длины? Если нужно построить квадраты размеров 10, 100 или 1000 и разрешается использовать только ДНК-оригами, то число нитей ДНК, которые потребуются для создания квадрата равно квадрату его размера, то есть 100, 10 тысяч или 1 миллион нитей ДНК. Ясно, что это – вне пределов досягаемости. Но если воспользоваться небольшими вычислениями –если использовать ДНК-оригами плюс несколько плиток со счётчиком – то тогда можно обойтись числом в 100, 200 или 300 нитей ДНК. Таким образом, число нитей ДНК можно экспоненциально сократить при помощипрограммы подсчёта, при помощи небольших вычислений. То есть, вычисление представляет собой очень мощный способ сокращения числа необходимых для построения молекул,сокращения размера создаваемого генома.

И наконец, я возвращаюсь к этой сумасбродной идее о том, что компьютеры строят компьютеры. Если взглянуть на созданный из оригами квадрат и на взращенные на нём программы подсчёта, то можно увидеть, что его структура – это в точности структура, нужная для создания памяти компьютера. Значит, если присовокупить к плиткам провода и переключатели, то есть, использовать скрепки не для нитей, а для плиток, то они будут само-собираться в довольно сложные схемы:демультиплексные схемы, необходимые для адресации этой памяти. Значит, при помощи небольших вычислений можно создать сложные схемы. Вот как молекулярный компьютер строит электронный компьютер.Теперь вы меня спросите, а насколько далеко мы продвинулись в этом деле? Вот – экспериментальный результат прошлого года.Это – прямоугольник ДНК оригами, а это – взращенные на нём плитки. Можете посмотреть, как они считают. Один, два, три, четыре, пять, шесть, девять, 10, 11, 12, 17.Ошибки налицо, но, по крайней мере, правильное направление счёта. (Смех)

Дело в том, что эти идеи у нас были ещё девять лет назад. Это даёт вам представление о константе времени, о том, сколь долго нужнодля такого рода вещей, и я считаю, что мы продвинулись далеко. Мы представляем себе, как можно будет исправить эти ошибки. И в следующие 5-10 лет, как я думаю, мы создадим описанные мною плитки и, может быть даже, доберёмся до самосборочных схем.

Итак, что же я хотел донести до вас в этом выступлении? Я хотел бы, чтобы вы помнили, что при создании разнообразия и сложности своих форм, жизнь использует вычисления.Используемые вычисления – это молекулярные вычисления, а для их понимания, для более полного управления, нужно, как говорил Фейнман, строить: «Что не могу воспроизвести, того не понимаю». Вот мы и собираемся использовать молекулы и преобразовать эту штуку, перестроить всё снизу вверх, применяя ДНК так, как природа никогда и не предполагала, применяя ДНК-оригами и ДНК-оригами для выращивания алгоритмической самосборки.

Всё это очень круто, конечно, но я хотел бы, чтобы вы вынесли из этого выступления, из этих больших, как я надеюсь, вопросов, понимание того, что молекулярное программирование не сводится к созданию очередных технических ухищрений. Эта область не просто создаётсамосборочные телефоны и схемы. На самом деле молекулярное программирование начинает с того, что представляет крупные проблемы науки вычислений в новом свете,ставит вопросы по-новому, в попытке понять,как биология может создавать такие изумительные создания. Благодарю вас.(Аплодисменты)