CRN++ — новый язык программирования молекулярных химических процессов

Главная » Технологии » CRN++ — новый язык программирования молекулярных химических процессов
CRN++

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

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

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

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

Новый язык программирования позволяет запрограммировать определяемую массовыми взаимодействиями сложную химическую кинетику. Другими словами, компилятор языка CRN++ переводит программу, написанную на высокоуровневом языке и, поэтому, легко читаемую и воспринимаемую человеком, в цепочку химических реакций.

Работа компилятора CRN++

Работа компилятора CRN++

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

А собственно операции языка CRN++ как раз и представляют собой определенные действия с отдельными модулями. Химический генератор используется для оптимизации и превращения череды инструкций языка и операций с модулями с последовательность химических реакций.

Привлеченные к работе сторонние исследователи уже произвели проверку работы компилятора языка CRN++, используя, как хорошо известные цепочки химических превращений, так и абсолютно новые. Практически во всех случаях компилятор CRN++ выдавал последовательность химических реакций, которую можно воплотить в реальности, пусть и не в промышленных, а в лабораторных условиях.

Естественно, что при выполнении программ, написанных на языке CRN++, могут возникать ошибки. Но проведенные испытания показали, что количество возникающих при расчетах ошибок гораздо ниже количества ошибок, возникающих при работе других систем «цифрового химического моделирования и синтеза», построенных на традиционных вычислительных принципах.

Более того, язык CRN++ в скором времени будет дополнен множеством новых модулей химических реакций и дополнительными инструкциями, что позволит при его помощи составлять даже самые сложные «молекулярные программы».

Источник

Ещё: