Белковые нити приспособили для параллельных вычислений

Нити белка актина. Wikimedia Commons Нити белка актина. Wikimedia Commons

Группа ученых из Калифорнийского университета создала простой биохимический компьютер на основе белковых нитей, способный к параллельным вычислениям. Результаты исследований опубликованы в журнале Proceedings of the National Academy of Sciences.

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

Ученые с помощью простых математических алгоритмов закодировали задачу в виде сети наноразмерных каналов. Саму сеть изготавливали с помощью нанолитографии на кремниевой подложке. Исследователи выстилали каналы слоем двигательных белков — миозина и кинезина, — которые осуществляли перемещение молекулярных агентов. Агенты представляли собой микротрубочки —  цилиндры, состоящие из белка тубулина, — а также микрофиламенты, нити из белка актина.

Схема вычисления всевозможных сумм чисел 2, 5 и 9. Dan V. Nicolau Jr. et all, 2016

Молекулярные агенты перемещались по каналам, а на широких развилках, местонахождение которых определялось алгоритмом при проектировании сети, могли случайно выбирать одно из двух направлений. В результате из всех возможных траекторий они проходили только по тем путям, что соответствовали суммам всех возможных подмножеств. Схема, таким образом, находила решение задачи.

В эксперименте ученые использовали простой вариант задачи, в которой множество состояло из трех чисел. Однако увеличение количества чисел при данном подходе не приводило к экспоненциальному росту времени решения, пространства или материала. Вместо этого экспоненциально росло только количество молекулярных агентов, необходимых для выполнения вычислений.   

Параллельные вычисления являются подходом, при котором ряд вычислительных процессов протекает параллельно друг другу, а не последовательно. Это позволяет эффективно и быстро решать задачи, которые бы в ином случае занимали много времени.

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

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

nplus1.ru