Программирование экспрессии генов

Программирование экспрессии генов

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

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

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

Возможное решение представлено линейной последовательностью символов, называемой нотацией Карвы или K-выражением, где каждый символ соответствует терминальной функции или узлу. Линейное представление сопоставляется с деревом выражений расширенным способом. K-выражение имеет фиксированную длину и включает одно или несколько подвыражений (генов), которые также имеют фиксированную длину. 

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

Длина хромосомы от pпрограммирование экспрессии генов определяется количеством генов, где длина гена определяется как h + t. h — определяемый пользователем параметр (например, 10), а t определяется как t = h(n-1)+1, где n представляет максимальную арность функциональных узлов в выражении (например, 2, если арифметическая используются функции *;/;-;+).

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

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

С малой вероятностью можно использовать оператор обращения, который обращает небольшую последовательность символов (1-3) в секции гена (хвост или голова). Оператор транспонирования можно использовать с рядом различных режимов, включая: дублирование небольшой последовательности (1-3) откуда-то из гена в начале, небольшие последовательности гена из корня гена и перемещение гена в хромосома. В случае внутригенных транспозиций последовательность в головке гена смещается вниз, чтобы приспособиться к скопированной последовательности, а длина головки укорачивается для сохранения согласованных размеров гена.

Когда рпрограммирование экспрессии генов, тынет ? может быть включен в терминальный набор и представляет числовую константу из вектора, который развился в конце генома. Константы считываются с конца генома и заменяют ? при создании дерева выражений (в первом порядке ширины).

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

Вот алгоритм программирования экспрессии генов:

программирование экспрессии генов

Делиться
ru_RURU