В ДНК записали «Прибытие поезда» и операционную систему KolibriOS

Янив Эрлих  (Yaniv Erlich) и Дина Зелински (Dina Zielinski)  — сотрудники Колумбийского университета и Геномного центра в Нью Йорке — разработали новую технологию записи информации в ДНК, которая приближается к теоретическому пределу по плотности закодированной информации, гарантирует надежность считывания в условиях большого количества ошибок и способна уместить до 215 петабайт данных в одном грамме нуклеиновой кислоты. Подробности метода опубликованы в журнале Science.

Информационные возможности ДНК стали понятны сразу после открытия ее структуры в 1953 году, однако в инженерном ключе ученые стали думать на эту тему лишь несколько лет назад. Связано это прежде всего с резким падением стоимости химического синтеза и (особенно) стоимости чтения последовательности нуклеиновых кислот (о том, как это произошло, можно прочитать здесь).

Одна из первых серьезных работ, в которой информационные возможности ДНК были проверены на практике, была проведена в 2012 коллективом под руководством известного молекулярного биолога Джоржа Чёрча (George Church). Тогда ученые закодировали в последовательности ДНК книгу объемом в 52 тысячи слов, несколько jpeg-изображений и небольшую программу на JavaScript. Общий объем информации составил ~700 килобайт, которые уместились в 55 тысяч отдельных фрагментов ДНК длиной по 159 нуклеотидов. Бóльшую (но не всю) часть закодированной информации тогда удалось прочитать. Однако ни метода коррекции ошибок, ни системы избыточности в использованной Чёрчем и коллегами кодировке не было: бинарную последовательность просто переводили в последовательность нуклеотидов по принципу один нуклеотид — один бит (аденин или цитозин соответствовал 0, гуанин или тимин — 1).

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

В ДНК содержится четыре типа оснований (A, T, G и C), поэтому максимальная плотность кодирования информации в ней может достигать двух бит на нуклеотид. В реальности же количество кодируемой информации на символ всегда оказывается ниже: во-первых из-за необходимости вносить избыточность, которая должна компенсировать ошибки синтеза и чтения фрагментов ДНК, во-вторых, из-за внесения «сервисных последовательностей», которые нужны для индексации (баркодинга) последовательностей, обеспечения возможности копирования ДНК в ПЦР и т. д. По расчетам авторов новой статьи (подробности приведены здесь) шенноновская плотность информации, учитывающая среднюю длину нуклеотидов, размеры адапторов для копирования и типичные ошибки синтеза составляет около 1,83 бит на нуклеотид. Использование нового метода позволило добиться информационной плотности, которая составляет 86% этого теоретического предела.

Кадр из киноролика братьев Люмьер, закодированного в ДНК новым методом. Public Domain

Работает новое кодирование следующим образом. Сначала двоичная последовательность разбивается на непересекающиеся сегменты фиксированной длины в 32 байта, а затем они кодируются с помощью т. н. «капель», — специальным образом полученных последовательностей чуть большей длины. Полученные капли затем переводятся напрямую в последовательность ДНК с максимальной плотностью (по два бита на нуклеотид), и — в этом состоит надстройка над фонтанным кодом — проверяются по биохимическим ограничениям, которые накладывает техника чтения ДНК: фрагменты не должны содержать длинных однонуклеотидных повторов или участков со слишком большой или слишком малой долей GC-нуклеотидов (сотношение A+T/G+С влияет на физические свойства молекул). Если кодирование приводит к нарушениям ограничений, оно просто повторяется заново до тех пор, пока не удастся создать правильную последовательность. Полученный результат дополняют стандартными адаптерами для ПЦР и отправляют на аппарат автоматического синтеза.

Ключевое отличие фонтанного кодирования заключается в том, что каждая «капля» кода содержит информацию о нескольких разных сегментах исходной последовательности — так, что даже потеря нескольких капель может быть компенсирована за счет других. Для индексации же капель используется генератор случайных чисел, который добавляет т. н. зерно в каждую из них — метод описан Майклом Люби из MIT еще в конце 90-х и в настоящее время он широко используется при передаче мобильного видео, где возможно частое выпадение блоков информации.

В результате применения нового метода — фонтанного кода, модифицированного авторами для работы с ДНК, — ученым удалось экспериментально закодировать и прочитать 2,14 мегабайт информации в виде ДНК-олигонуклеотидов. В них уместилась подарочная карта Amazon, операционная система KolibriOS, статья Шеннона о передаче информации в зашумленном канале, видеофайл «Прибытия поезда» братьев Люмьер и даже один компьютерный вирус. Итоговая физическая плотность записи — ее измеряли в эксперименте с постепенным «гомеопатическим» разбавлением ДНК — составила 215 петабайт (215 000 000 гигабайт) на грамм нуклеиновой кислоты.

Главным результатом новой работы — далеко не первой в своей области — можно назвать приближение к теоретическому пределу плотности и надежности кодирования информации на основе ДНК. Учитывая близость полученных данных к теоретическим пределам сложно надеяться на какое-то радикальное улучшение этих показателей в будущих работах. Сейчас главным препятствием к практическому применению ДНК в качестве носителя информации остается дороговизна синтеза. Так, в новой работе итоговая стоимость «ДНК-флешки» составила 3,5 тысяч долларов за мегабайт данных. Однако оценивать эту цифру следует в правильном контексте: во-первых, единожды созданный такой носитель может быть легко скопирован почти не ограниченное количество раз. Во-вторых, текущая стоимость записи информации в ДНК является результатом применения обычного современного метода химического синтеза, разработанного прежде всего с приоритетом требования точности. Как показано в новой работе, такая точность сильно избыточна для задач хранения информации. Значительное снижение стоимости может быть достигнуто ослаблением этого требования, но пока такие «быстрые и грязные» методы синтеза ДНК не получили распространения из-за того, что у них не было практического применения.

Интересно, что новая работа хотя и превосходит по плотности записи все проделанные до сих пор, существенно уступает им по объему данных. Так, летом прошлого года учеными из Вашингтонского университета при финансовой поддержке частной компании удалось записать в ДНК более 200 мегабайт данных, среди которых были оцифрованные произведения искусства, 100 литературных произведений из проекта «Гутенберг», Всеобщая декларация прав человека ООН более чем на 100 языках, база данных семян некоммерческой организации Crop Trust и клип This Too Shall Pass группы OK Go в высоком разрешении.

Автор: Александр Ершов

Пожалуйста, оцените статью:
Ваша оценка: None Средняя: 5 (3 votes)
Источник(и):

nplus1.ru