Научная статья на тему 'Применение символьных вычислений к исследованию дискретных моделей некоторых классов генных сетей'

Применение символьных вычислений к исследованию дискретных моделей некоторых классов генных сетей Текст научной статьи по специальности «Математика»

CC BY
242
46
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
ДИСКРЕТНЫЕ МОДЕЛИ ГЕННЫХ СЕТЕЙ / НЕПОДВИЖНЫЕ ТОЧКИ АВТОМАТНЫХ ОТОБРАЖЕНИЙ / ФУНКЦИОНАЛЬНЫЙ ГРАФ / СИНТЕЗ МАТРИЦЫ СМЕЖНОСТИ ГРАФА ГЕННОЙ СЕТИ / ПОРОГОВЫЕ ФУНКЦИИ / SAT / ROBDD / DISCRETE MODELS OF GENE NETWORKS / FIXED POINTS OF AUTOMATON MAPPINGS / FUNCTIONAL GRAPH / SYNTHESIS OF GENE NETWORK GRAPH ADJACENCY MATRIX / THRESHOLD FUNCTION / ROBD

Аннотация научной статьи по математике, автор научной работы — Евдокимов Александр Андреевич, Кочемазов Степан Евгеньевич, Семенов Александр Анатольевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Евдокимов Александр Андреевич, Кочемазов Степан Евгеньевич, Семенов Александр Анатольевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Application of symbolic computations to the study of discrete models of some gene networks

This article deals with studies of some discrete models of gene networks. Problems such as fixed points search and matrix synthesis for the graph specifying regulatory circuit of gene networks are solved. Problems considered in the article can be reduced to the systems of Boolean equations. These systems are solved using SATand ROBDD approaches. Final part of the article contains the results of numerical experiments on randomly generated gene networks.

Текст научной работы на тему «Применение символьных вычислений к исследованию дискретных моделей некоторых классов генных сетей»

Вычислительные технологии

Том 16, № 1, 2011

Применение символьных вычислений к исследованию

«J» «J» >к

дискретных моделей некоторых классов генных сетей*

A.A. Евдокимов1, С. Е. Кочемазов2, А. А. Семенов2 1 Институт, математики СО РАН, Новосибирск, Россия 2Институт динамики систем, и теории, управления СО РАН, Иркутск, Россия e-mail: [email protected], [email protected], [email protected]

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

Ключевые слова: дискретные модели генных сетей, неподвижные точки автоматных отображений, функциональный граф, синтез матрицы смежности графа генной сети, пороговые функции, SAT, ROBDD.

Введение

Сети как математические модели отношений на множествах объектов возникают в научных исследованиях в, казалось бы, слабосвязанных областях: от дискретной математики и математической кибернетики до биоинформатики, экономики и социологии [1]. В современной биоинформатике генные сети являются одним из наиболее интенсивно изучаемых объектов. Формально генная сеть задается ориентированным помеченным графом, вершины которого трактуются как некие "биологические элементы", имеющие разную степень концентрации [2]. Числовые показатели в вершинах генной сети могут меняться во времени в соответствии с протекающими в ней эволюционными процессами. При этом сеть может быть разнородной в том смысле, что различные ее фрагменты, называемые регуляторными контурами, могут функционировать в соответствии с различными правилами.

Исследование свойств сетей (не только генных) — актуальное и интенсивно развивающееся направление. В обзоре [1] приведен большой объем результатов (в основном качественного характера) относительно самых разнообразных типов сетей. К настоящему времени наиболее существенных успехов в изучении динамических свойств генных сетей удалось добиться, применяя аппарат дифференциальных уравнений [3-5]. Однако еще в 1969 г. в работе [6] отмечалась возможность описания процессов в генных

* Работа выполнена при финансовой поддержке Интеграционного проекта СО РАН № 119 "Системная компьютерная биология: Компьютерный анализ и моделирование живых систем", а также РФФИ (гранты № 09-01-00070-а и 08-01-00671-а).

сетях дискретными автоматными моделями, В [7] были введены в рассмотрение гипотетические генные сети с дискретными пороговыми функциями в вершинах регулятор-ного контура и исследованы свойства таких сетей с регуляторными контурами в виде циркуляптпых графов. Идеи [7] получили развитие в [8], где был предложен подход к решению задачи восстановления регуляторного контура в дискретных моделях генных сетей.

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

Итак, в соответствии с принятым подходом [2], функционирование регуляторного контура генной сети определяется динамикой изменения показателей концентрации в ее вершинах в каждый такт времени в зависимости от структуры всей сети и свойств функций, сопоставляемых вершинам. Таким образом, некоторый фрагмент эволюции сети можно рассматривать как последовательность "состояний", переходы между которыми определяются структурой сети и задают отображения на множествах векторов с числовыми компонентами. Такие отображения называются автоматными, в частности, аддитивными или мультипликативными в зависимости от выбора функций в вершинах [7, 8]. Интерес представляет изучение различных свойств таких отображений. Одной из важных в практическом плане является проблема поиска неподвижных точек автоматных отображений. Такие точки определяют некоторые стационарные состояния генной сети. Далее будет описана задача поиска неподвижных точек в одном классе генных сетей, следуя работе [7].

Пусть С = С (и, О) — ориентированный связный граф без петель и кратных дуг, \и\ = п. Каждой вершине г & и приписан целый вес хг & {0,...,р — 1}, г = 1,...,п, задающий концентрацию белка в данной вершине; натуральное число р,р > 2, определяет верхнюю границу значения веса по всем вершинам С и называется значноетыо.

Графу С можно ставить в соответствие отображения вида

п

Ас :ГП

где через Г^ обозначено множество всевозможных слов длины п над алфавитом Гр = {0,...,р — 1}, Смысл таких отображений заключается в пересчете за один такт времени значений весов во всех вершинах графа С, Функции, определяющие для каждой вершины новое значение, могут задаваться разными способами, В работе [7] был рассмотрен класс генных сетей, для которых отображение Ас задавалось следующими соотношениями:

Ас(хг) = х

хг + 1, если х^ = 0 и хг < р — 1,

X2 €Хг

хг — 1, если ^2 х^ > 0 и хг > 0, (1)

хг, иначе.

При Хг = 0 полагаем, что ^2 х^ = 0, Здесь х = (х\,..., хп) — начальный набор весов

вершин графа С Хг — множество весов тех вершин из и\ {г}, дуги из которых ведут в вершину г, х1 — новое значение веса вершины г, г = 1, ...,п, тем самым Ас (х) = х1. Пример 1. На рис, 1 представлен один такт функционирования генной сети с отоб-Ас

чальном состоянии. Римские числа — вершины графа, арабские — концентрации вещества в соответствующих вершинах, Значноеть р = 5, Граф справа описывает состояние,

в которое переходит генная сеть при однократном применении отображения AG, заданного (1): вершины IV и V уменьшили концентрацию (для i Е {IV, V} ^22 xj > 0

Xj £Xi

и при этом Xi > 0); вершина I увеличила концентрацию (так как для i = I X = 0 ^

22 Xj = 0 и при этом xj < p — 1); вершины II и III концентрацию не изменили (для xj

i = II 2 Xj > 0 однако хц = 0, а для i = III 22 Xj = 0, так как Хш = 0, однако xj eXj xj ехш

хщ = 4 = p — 1),

Задача поиска неподвижных точек произвольного автоматного отображения AG заключается в нахождении таких векторов весов вершин графа G, которые данным отображением переводятся сами в себя. Автоматные отображения с функциями пересчета

p

В работах |7, 8| были рассмотрены различные детализации приведенной выше задачи о неподвижных точках, а также исследовались другие свойства отображений AG. В частности, изучалась задача поиска циклов различной длины для AG. Цикл длины 1 — это неподвижная точка. Циклом длины r, r > 2, называется такое семейство наборов

X = х°, X1 = Ag (X) ,..., x(r-1) = Ag (x{r-2)) , что Ag (x(r-1)^ = X.

В |7| получены необходимые и достаточные условия существования неподвижных точек автоматных отображений, определяемых циркулянтными графами специального вида (Gre>fc-графы), здесь же было предпринято исследование циклов длины > 2 для таких отображений. Результаты дальнейших исследований свойств G^-графов приведены в |7-11|.

Дня алгоритмического исследования дискретных моделей генных сетей, в том число дня поиска неподвижных точек автоматных отображений "нерегулярной природы", можно использовать логические (булечзы) уравнения |10|,

В настоящей работе исследуются генные сети, описанные в |2, 7, 8|, допускающие относительно простые сводимости к булевым уравнениям. Дня решения получаемых уравнений были применены символьные алгоритмы, хорошо зарекомендовавшие себя на аргументированно трудных задачах обращения криптографических функций (речь идет о SAT- и RO В DD-подход ах).

Рис. 1. Пример функционирования рмуляторжих) контура генной сети

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

Раздел 2 посвящен численным экспериментам. Приведены результаты решения задач поиска неподвижных точек для классов генных сетей из [7, 8] с числом вершин до 200, Эксперименты проводились для случайных графов с варьированием параметра Pij — вероятность дуги от i к j (описание тестового материала приведено в разделе 2.1.1). Кроме того," для сетей, описанных в [7], решены тестовые задачи восстановления матриц смежности функциональных графов на 100 вершинах по известным неподвижным точкам соответствующих отображений.

1. Задачи обращения дискретных функций в применении к исследованию генных сетей

1.1. Основные понятия

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

f = {fkW , fk : {0,1}k ^{0,1}* •

Интерес представляет класс, образованный семействами дискретных функций, для которых выполнены следующие условия:

1) для каждого к Е Ж функция fk определена всюду на {0,1}k (данный факт записываем как domfk = {0,1}k);

2) существует программа Mf для детерминированной машины Тьюринга (ДМТ),

f

Mf к к

Далее запись fk Е f будет означать факт принадлежности дискретной функции fk семейству, обладающему свойствами 1-3. Рассматривается задача обращения функции fk в точке у: задана дискретная функция fk Е f в виде пары (Mf ,к) и слово у Е range fk] требуется найти такое x Е {0,1}k, что у = fk (x), Общую задачу обращения дискретных функций, образующих вычислимое за полиномиальное время семейство со свойствами 1-3, обозначим через Inv (f),

Булевыми уравнениями называются выражения вида

L (хъ...,хп )= в, в Е {0,1} , (2)

где L (xi,... ,хп) — произвольная формула исчисления высказываний над множеством булевых переменных X = {xi,...,хп}. Решением уравнения (2) называется вектор (ai,..., an), а Е {0,1} i Е {1,..., n}, подстановка которого в (2) обращает это урав-

в=в

уравнение не имеет решений. Стандартным образом вводятся понятия системы булевых уравнений и ее решения. Если система булевых уравнений не имеет решений, она называется несовместной. Важнейший класс образован булевыми уравнениями вида C (xi,..., xn) = 1, где C (xi,..., xn) — конъюнктивная нормальная форма (КНФ) над множеством переменных X = {xi,...,xn}. Задачи поиска решений таких уравнений называются SAT-задачами,

1.2. SAT-подход к обращению полиномиально вычислимых дискретных функций

Основу SAT-подхода к решению задачи Inv (f) составляет следующая теорема, концептуально аналогичная теореме Кука [12].

к

стъю, который, получив на, входе onисапие fk Е f в виде пары (Mf ,к), выдает, КНФ C (xi,... ,xq(k)^ над множеством булевых переменных X* = |xi, ...,xq(k^, где q (•) —

некоторый полином. Подстановка в C (xi,... ,xq(k)^ двоичного вектора у, образованного значениями некоторых перемениых из X*, дает конъюнктивно нормальную форму Cy (xi, ...,xq/(k)^, q' (к) < q (к), зоторая выпнлнима, если у Е range fk и невыполнима, если у Е range fk. Если Cy (xi,... ,xq/(k)j выполнима, то от решения уравнения Cy (xi,..., xq'(k)) = 1 можно за линейное время перейти к x е{0, 1}k: fk (x) = у.

Доказательство данной теоремы здесь не приводится. Отметим, что рассмотрение в качестве формальной вычислительной модели машины Тьюринга имеет главным образом теоретический интерес. В работе [13] было приведено доказательство аналогичного результата в контексте двоичной машины с неограниченными регистрами (МНР, RAM) — модели, которая гораздо ближе к реальным вычислительным системам, чем машина Тьюринга. Это доказательство было взято за основу при разработке специализированного транслятора, преобразующего алгоритмы вычисления дискретных функций из широкого класса в выражения исчисления высказываний.

Теорема 1 формулирует идеологию рассмотрения задач обращения дискретных функций как SAT-задач. В общей постановке SAT-задачи являются NP-трудными, Однако для множества частных случаев, возникающих в практических приложениях, SAT-задачи допускают весьма "эффективные" (на практике) процедуры поиска решений эвристическими алгоритмами, В последние 10 лет прогресс в практическом решении SAT-задач огромен, о чем свидетельствуют множество публикаций, специализированные издания и материалы конференций [14], Феномен высокой эффективности современных SAT-решателей следует объяснить, по всей видимости, естественностью и простотой базовых структур данных, а также хорошей сочетаемостью алгоритмики SAT с наиболее продуктивными методами и приемами, используемыми в решении комбинаторных задач (стратегии сокращения недетерминизма, обучение, пространственно-временной компромисс и др.). Одним из аргументов в пользу использования SAT-подхода в решении задач обращения дискретных функций является тот факт, что посредством специализированных SAT-решателей удавалось решать даже задачи криптоанализа некоторых систем шифрования [15-17]. На основании этого можно сделать предположение об эффективности SAT-подхода на задачах, которые (в отличие от задач криптоанализа) не сконструированы специально, чтобы быть вычислительно трудными.

1.3. Задачи исследования свойств отображений Ас в контексте общей задачи обращения полиномиально вычислимых дискретных функций

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

Будем использовать стандартные процедуры двоичного кодирования конечных объектов [12-18], Для дальнейших целей потребуются разумные [12] схемы двоичного кодирования матриц смежности графов (схема (Г\) и векторов с натуральными компонентами (схема 02)■

Определим семейство функций /А = {/к} кеМ с перечисленными ниже свойствами, Для каждого натурального к функция / А получает на входе произвольное слово х Е {0,1}к. В соответствии со схемами о-! и о2 данное слово делится на два поделова: х = х' |х", Будем считать, что слово х кодирует индивидуальную задачу вычисления Ас на входе 5 тогда и только тогда (по определению), когда слово х' является двоичным кодом при схеме о1 матрицы смежности графа С, а слово х'' есть двоичный код при схеме о2 входного набора весов вершин графа О (табор 5, состоящий из п целых чисел, где п — число вершин в графе О).

х Ас

/ А х Ас

на некотором 5, то значением / А является набор 51 = Ас (5),

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

Рассмотрим произвольное семейство /А = {/к}кеМ- Сопоставим данному семейству

семейство булевых функций дА = {п^^д^ определяемых следующим образом:

пА(х с 10пк) = I 0, /А(х) = о V (/А(х) = 0)&(51 = 5),

дк (х Е{0,1} ) = | !, (/А(х) = 0)&(5! = 5)_

дА

номиальное время функциями. Пусть Мд — ДМТ-программа, вычисляющая функции данного семейства. Напрямую из теоремы 1 вытекает следующий факт,

к

стью, который, получив на входе описание дА Е дА в виде пары (Мд,к), выдает КНФ С над множеством булевых переменных X * = |х1 ,...,хя(к^, где д (•) — некоторый полином,. Подстановка в С значения "1" некоторой перемени ой из X * дает конъюнк-тивно нормальную форму С1 (х1,... ,хд'(к^, д' (к) < д (к), которая выполнима, тогда и

только тогда, когда существует такой х Е {0,1}к, х = х' 1х'', что х'' кодирует неподвижную точку отображения Ас, кодируемого словом х'. В случае выполнимости КНФ С1 (х1,..., хя/( к)) из выполняющего ее набора за линейное время можно выделить

х' х''

Доказательство (общая схема).

Полные доказательства подобных утверждений весьма громоздки, хотя и элементарны по своей природе. Приведем общую схему доказательства. Работу программы Мд {0, 1 }

уравнений, которая совместна тогда и только тогда, когда существует слово х Е {0,1}к с требуемыми свойствами [13]. При этом возможен ввод новых переменных, отличных от переменных множества X = {х\,... ,хк}, кодирующих входные слова. Ввод новых переменных осуществляется при помощи преобразований Цейтина [19]. От полученной системы логических уравнений опять-таки в результате последовательности преобразований Цейтина можно перейти к одному уравнению вида С\ [х\, ...,хя>(к)^ = 1. При этом

множество слов в {0,1}к с требуемы ми свойствами попето тогда и только тогда, когда пусто множество решений уравнения С\ [х\,... ,хд/(к-^ = 1. Если же эти множества не

пусты, то между ними имеет место биекция, В итоге биты слова из {0,1}к с требуемыми свойствами представляют собой значения некоторых компонент вектора, являющегося решением С\ (х\,..., хд/(к^ = 1.

Важное следствие данного результата — возможность решения проблемы восстановления структуры генной сети, т. е. матрицы смежности графа С, по конкретным векторам, являющимся неподвижными точками отображения Ас- Действительно, пусть х'[,..., х'' — двоичные кодировки векторов с натуральными компонентами, которые являются неподвижными точками некоторого отображения Ас. Задача состоит в восстановлении матрицы смежности графа С. Теорема 2 фактически утверждает, что можно поступить следующим образом. Во-первых, закодировать алгоритм применения отображения Ас к х'[,..., х'' и тем самым получить систему, со стоящую из 5 булевых уравнений вида КНФ 1. Общими переменными в уравнениях этой системы являются переменные, кодирующие матрицу смежности графа С (образующие вектор х'). Далее

следует перейти к одному уравнению вида КНФ = 1, из решения которого затем выде-

х'

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

Основной недостаток БАТ-подхода при решении перечисленных задач состоит в том, что с его помощью можно быстро найти одно конкретное решение ЯЛТ-задачи. При поиске новых решений (например, при перечислении неподвижных точек) информацию о найденных решениях приходится учитывать, добавляя к КНФ запрещающие ограничения-дизъюнкты. Однако в общем случае число решений никаким полиномом от длины входа не ограничивается.

1.4. ЬЮЕШВ-подход к задачам обращения дискретных функций

В настоящее время КОВОБ-подход наиболее популярен при верификации моделей программ [20, 21], но его применение возможно и к решению задачи 1пь (/),

Используя идеи, изложенные, например, в [22], можно показать, что алгоритм вычисления функции дк, дк Е д\ на произвольном входе из {0,1}к может быть представлен в виде схемы Б го функциональных элементе в в базисе {&, У, Ана-

ро

Б (д/к), к Е N будет вести себя как некоторый полином от к. Входные полюса

схемы S (g ^соответствуют п временным го множес тва X = {х1,... ,х k}, кодирующим

входные данные, Выходной пол юс S ^^соответствует переменной y.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

S gA B gA

ответствующей булевой функции [23, 24], Преимуществом данного подхода является

B gA

Ac и [

B gA

и[

B gA

тех классов булевых уравнений, задачи поиска решений которых полиномиально разрешимы, не существует полиномиальных алгоритмов построения ROBDD-предетавлений

P = NP

Ac

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

2. Численные эксперименты по исследованию дискретных моделей генных сетей

В данном разделе приводятся результаты численных экспериментов по исследованию свойств дискретных моделей генных сетей, описанных в [7, 8], Были решены задачи поиска неподвижных точек отображений, определяемых регуляторными контурами этих сетей, а также задачи синтеза матриц смежности графов сетей по известным неподвижным точкам. Во всех экспериментах использовалась вычислительная платформа ноутбук Asus F3Sr (Intel Core 2 Duo T7250 2Ghz, 2 Gb Ram, Windows Vista 32bit).

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

2.1. Поиск неподвижных точек аддитивных автоматных отображений

Первые численные результаты были получены для генных сетей, в которых функции пересчета значений весов в вершинах (пороговые функции) задаются соотношениями вида (1) [7],

Сведение задачи поиска неподвижных точек для соответствующих отображений к булевым уравнениям оказалось весьма простым благодаря двум результатам работы [7], Эти результаты в дальнейшем фигурируют в форме теоремы 3,

n

счета весов которой имеют вид (1). Справедливы следующие утверждения.

1. Если X = (х1 ,...,хп) является, неподвижной точкой p-значного аддитивного автомата, то возможно лишь xi = 0 ил и xi = p — 1, i = l,...,n.

Рис. 2. Генные сети на 10 вершинах; структура каждой сети — случайный граф с параметром Ргз (вероятность дуги), равным соответственно 0.2 (а), 0.5 (б), 0.8 (в)

2. Если х = (х\,..., хп) является неподвижной точкой р-значного аддитивного автомата, то для, любого в > I набор у = (у\,..., уп), где

Уг

0, в - 1,

хг

0,

хг

Р — 1,

1,

,п,

в

Перечисленные факторы позволяют перейти от задачи поиска неподвижных точек отображения, заданного (1), к аналогичной задаче для отображения, заданного соотношениями (р = 2)

Ас (хг)

х

0, 1,

если

если

£ хз > 0,

■з

£ хз = 0

(3)

(при Хг = 0 считаем, что £ хз = 0).

Хз €Хг

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

п

ми (отсутствие петель); элемент а^ для произвольных %,] Е {1,.. .,п}, I = принимает значения "1" с фиксированной вероятностью Р^ (вероятность существования дуги от вершины с номером г к вершине с номером ]) и "0" с вероятностью 1 — Р^. На рис. 2 приведены примеры генных сетей на 10 вершинах, которые были сгенерированы в соответствии с данной схемой.

2.1.1. БАТ-подход к поиску неподвижных точек аддитивных автоматов

Теорема 3 дает очень эффективную схему перехода от задачи поиска неподвижных точек в сетях произвольной значноети к аналогичной задаче для сетей значности 2.

Хз £Х

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

Рассматриваем генную сеть значности р =2, функционирование которой описывается соотношениями вида (3), В этом случае для каждого конкретного п Е N автоматное отображение Ас имеет вид дискретной функции

Ас : {0,1}п ^{0,1}" •

Пусть — булевы переменные, кодирующие входной вектор из {0,1}", Анали-

зируя (3), несложно заметить, что вектор Х = (х\, • ••, хп) является неподвижной точкой отображения Ас тогда и только тогда, когда он является решением системы булевых уравнений

[хг = & хЛ = 1,

V хп еХ1 )

(х2 = & х~) = 1, т

< V Хз2 ех2 ) (4)

(Хп = & Х]п

х]п £Хп

при том что для г Е {1,^^,п} : Xг = 0 соответствующее уравнение принимает вид

Хг = 1-

Задача поиска решений (4) сводится к задаче поиска выполняющих наборов следующей КНФ С над множеством булевых переменных X = {х1, • • • ,хп}:

XIV У xjl) ■ & (х^Ух];)-... ■ [хпУ V Хуп • & {х^МЩ^). (5)

\ ХЛ ^Х1 ) ХН ехг \ хзп ) хп ехп

Отметим, что при такой сводимости не возникает дополнительных (так называемых цейтиновеких [13]) переменных, хотя число дизъюнктов в С (х1 ,•••,хп) растет как 0(п2).

Таблица 1. Результаты решения задачи поиска всех неподвижных точек отображений Ас на случайных графах с 200 вершинами и вероятностями дуг от 0.2 до 0.9

Среднее Минимальное Максимальное Среднее время

Вероятность время число число поиска всех

ДУГИ генерации неподвижных неподвижных неподвижных

КНФ, с точек точек точек, с

0.2 0.43 0 10 2993.80

0.3 0.48 1 13 2205.36

0.4 0.52 2 13 1171.89

0.5 0.57 3 19 334.44

0.6 0.62 4 18 142.34

0.7 0.72 5 22 101.96

0.8 0.72 10 31 112.41

0.9 0.89 13 38 185.79

Получаемые КНФ оказываются простыми даже для неспециализированных ЯЛТ-решателей. Во всех численных экспериментах использовался ЯАТ-решатель пнпЬн! 2,0 (см, [26]), Были сгенерированы серии случайных графов на 200 вершинах по 50 тестов для каждого значения параметра Ргз го диапазон а от 0.2 до 0.9 с шагом 0.1, В табл. 1 приведены среднее время поиска, а также минимальное и максимальное (по соответствующей серии тестов) число неподвижных точек. Отметим, что во всех сгенерированных тестах число неподвижных точек не превышало числа вершин. Если функци-п

п

чек, причем г-я неподвижная точка, г Е {1,...,п}.; описывается вектором, в котором в г

использовался для проверки корректности вычислительного эксперимента: для определяемого полным графом на 200 вершинах аддитивного автомата все 200 неподвижных точек корректно находились примерно за 40 мин работы решателя miшsat 2,0,

2.1.2. НОВОЮ-подход к поиску неподвижных точек автоматных отображений

Под характеристической функцией системы булевых уравнений Б

( Ц (х1, ...,хп) = 1, [ ит (хг, ...,хп) = 1 будем понимать булеву функцию хя : {0,1}п ^ {0,1}, заданную формулой

Ц1 (х1, ..., хп) ' ..." Цт (х11 ... хп) .

Фактически данная функция есть характеристическая функция задачи: является ли произвольный вектор а Е {0,1 }п решением снстемы Б?

Если В — КОВОБ-представление функции хя> то множество решений системы Б определяется всеми путями из корня КОВББ В в терминальную вершину "1", Из рис, 3 видно, что в построенной КОВББ из корня в "1" ведут только три пути (все остальные ведут в "0"), каждый из которых может определять, вообще говоря, множество решений (если некоторые переменные в данном пути не фигурируют, то в соответствующем решении они могут принимать значения как 0, так и 1),

В

ннн системы булевых уравнений, описывающей неподвижные точки аддитивного отображения, то векторы, задающие эти неподвижные точки, определяются путями из кор-В

предетавления), В общем случае можно подсчитать их число за время, линейно завиВ

В следующей серии экспериментов был использован КОВББ-решатель булевых уравнений, разработанный в ИДСТУ СО РАН [27], который применялся к системам уравнений вида (4), Результаты численных экспериментов приведены в табл. 2 (для каждого значения параметров "число вершин" и Ргз = 0.5 приведено среднее время по серии из 20 тестов).

Рис. 3. ЫОЕГОВ-представление характеристической функции системы вида (4) для генной сети на 10 вершинах с Р^ = 0.5 (вторая сеть на рис. 1)

Таблица 2. Результаты решения задачи поиска всех неподвижных точек отображений Ас (1) с использованием НОВРР-подхода

Число вершин в генной сети 50 70 80 90 100

Время построения КОВРР < 10 с ~ 1 мин ~ 2.5 мин ~ 9 мин ~ 15 мин

Следует отметить, что по скорости НОВПП-подход значительно проигрывает ЯА'Г-подходу. Это объясняется тем, что РОВББ-графы являются более медленными структурами данных, чем КНФ. С другой стороны, успешное построение РОВББ, как уже отмечалось, дает полную информацию о всех неподвижных точках рассматриваемого отображения.

2.2. Поиск неподвижных точек автоматных отображений смешанной структуры

Еще один тип дискретных моделей генных сетей — сети, определяемые автоматными (аддитивно-мультипликативными) отображениями смешанной структуры. Данный класс отображений был рассмотрен в [8]. Функции пересчета весов вершин в этих отображениях могут быть двух типов: аддитивные и мультипликативные. Тем самым в графе, задающем регуляторный контур такой генной сети, можно выделить два типа вершин: условно белые и черные. Для белых вершин (помеченных w) пороговые функции определяются соотношением, аналогичным (1) (если X^ = 0, то х^ = 0):

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

АС (хг)

хг + 1, если £ Тз = О И хг < р — 1,

Х3 €Хг

хг — 1, если £ Хз > О и хг > О,

Х3 €Хг

хг, иначе.

Для черных вершин (помеченных Ь) пороговые функции имеют следующий вид (если

Хг = 0, то п Хз = О):

хг + 1, если П Хз = О и хг < р — 1,

Ас (хг) = хг — 1, если П хз > О и хг > О,

(6)

хг

.

На случай данного отображения несложно перенести теорему 3 и перейти к задачам поиска неподвижных точек автоматных отображений, пороговые функции которых имеют вид (р = 2)

Ас (хг)

Ас (хг)

(если Хг = 0, то £ хз = О, П хз

О, если Е Хз Е.Х1 хз > О,

1, если Е Хз Е.Х1 хз = О,

О, если п Х3 Е.Х1 хз > О,

1, если п Х3 Е.Х1 хз = О

О

(7)

Системы булевых уравнений, описывающих неподвижные точки в сетях данного типа, делятся на две подсистемы. Для белых вершин выписывается система, целиком аналогичная (4). Для черных вершин, анализируя (7), заключаем, что соответствующая система имеет следующий вид:

х\ = V Хз1 1=1,

Хз1 еХг

Х2 — V Х32 I = 1 ^

хз2 еХ2

(8)

\хп= V хзп | = 1.

У Х3п

Данная система эквивалентна уравнению

хг У V х^Л & (хгУхз^

V Хз1 еХ1 / Хз1 еХг

~хп V у ж" & (хпУх3п) = 1. (9)

ч Хзп I хп еХп

Таким образом, при переходе от (8) к (9) (так же, как при переходе от (4) к (5)) не возникает дополнительных переменных, при том что порядок роста числа дизъюнктов есть О (и2),

В табл. 3 приведены результаты численных экспериментов по поиску неподвижных точек аддитивно-мультипликативных автоматных отображений с использованием ЯЛТ-подхода.

Таблица 3. Результаты решения задачи поиска всех неподвижных точек отображений Ас для случайных графов на 200 вершинах с аддитивно-мультипликативными пороговыми функциями

Среднее Минимальное Максимальное Среднее время

Вероятность время число число поиска всех

ДУГИ генерации неподвижных неподвижных неподвижных

КНФ, с точек точек точек, с

0.2 0.42 0 13 67.61

0.3 0.55 1 14 12.43

0.4 0.82 0 11 8.56

0.5 1.32 0 11 12.44

0.6 1.91 0 7 14.81

0.7 2.49 0 8 16.87

0.8 3.05 0 6 17.47

0.9 3.88 1 4 15.55

Приведем некоторые дополнительные комментарии, В экспериментах рассматривались сети, в которых две вершины окрашивались в черный цвет, а все остальные в белый. Параметр "вероятность дуги" изменялся от 0,2 до 0,9, Для каждого значения вероятности генерировались 50 тестов, В табл. 3 приведены среднее время поиска, а также минимальное и максимальное (по соответствующей серии тестов) число неподвижных точек. Из результатов экспериментов видно, что задачи поиска неподвижных точек для генных сетей смешанной структуры в вычислительном плане более просты, чем аналогичные задачи для аддитивных автоматов: решатель тратит на поиск всех неподвижных точек в среднем на порядок меньше времени. Более того, даже незначительная разнородность структуры дает резкое упрощение тестов. При использовании более равномерной раскраски (примерно половина вершин белые) в большинстве тестов находилась единственная неподвижная точка, которая обычно являлась так называемым правильным весовым набором [8].

2.3. Задачи восстановления матриц смежности графов, задающих аддитивные автоматы

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

Будем исходить из предположения, что известны неподвижные точки некоторого автоматного отображения Ас : {0,1}п ^ {0,1 }п. Требуется восстановить граф С, определяющий данное отображение. Сразу оговоримся, что во всех проводимых экспериментах не использовалось требование связности данного графа.

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

Пример 2. Рассматриваем аддитивное автоматное отображение вида

Ag : {0,1}3 ^{0,1}3 •

Требуется построить матрицу смежности графа G, задающего данное отображение, в предположении, что известны его неподвижные точки y = (yi,y2,y3), £ = (£ъ£2,£3)-

G

1 0 ai2 ai3 \

«21 0 a23 , aij G {0,1} , i,j = 1,2,3. V a3i a32 0 J

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

Результат действия отображения AG на компоненты произвольного вектора x G {0,1}3, X = (xi,x2,x3), можно записать в следующем виде (результирующий вектор обозначаем через xi = (xi,x2,xii)):

х\ = (a21 • xi V ail) • («31 • xi V ail) x\ = (xi V аЦ) • (Щ V ail)

x\ = (a12 ■ x{ V аЦ) • (a32 • Щ V аЦ) ~ x\ = (xi V aH) • (xi" V aii) . xi = («13 • ж! V ali) • (a23 • xi V a^) Жд = (xi V Щ^) • V аЦ)

Предположим,что автоматное отображение AG оставляет неподвижными точки y = (yi,y2,y3), £ = (£ъ£2,£3)- Тогда компоненты матрицы графа G удовлетворяют системе булевых уравнений

' (yi - (yi V Wii) • (m Vail)) = 1

(y2 = (yi V Щi) • (Wi Vaii)) = 1

(y3 = (Vi V аЦ) (yi V%)) = 1

(£i - (zi V WH) (~i v ail)) = 1

(£2 - (zi V аЦ) (~i V aii)) = 1

, (£3 - (zi V аЦ) • (zi V a^)) = 1

Тем самым задача восстановления матрицы смежности графа С для данного класса генных сетей допускает относительно простую сводимость (опять-таки без полномасштабного использования теоремы 2) к булевым уравнениям. Однако при переходе от систем такого типа к БАТ-задачам уже возникают дополнительные ("цейтиновекие" [13]) переменные,

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

К

......«12

«21

\°13\ /¿32 /

аз1\\/ „Аз

2

Рис. 4. Общий вид функционального графа генной сети на трех вершинах

Таблица 4. Результаты решения задачи восстановления матрицы смежности функционального графа генной сети на 100 вершинах с пороговыми функциями вида (1)

Вероятность дуги (Р^) 0.5 0.9 0.95 1

Среднее время генерации КНФ для задачи по- 0.28 0.43 0.47 0.27

иска неподвижных точек, с

Число неподвижных точек 143 10-28 4-17 100

Среднее время поиска всех неподвижных то- 5.68 14.05 9.64 66.16

чек, с

Среднее время генерации КНФ для задачи син- 12.58 42.97 22.75 60.28

теза матрицы, с

Среднее время решения задачи синтеза 39.36 361.25 104.81 9515.18

матрицы, с

функциями вида (1) на основе известных неподвижных точек соответствующих отображений, Параметр "вероятность дуги" принимал значения 0,5, 0,9, 0,95, Для каждого значения генерировались 50 случайных тестов. Для каждого сгенерированного графа находились все неподвижные точки. На основе найденных неподвижных точек строилась БАТ-задача вида Сс = 1, из решений которой выделялись компоненты возможных альтернатив матрицы смежности С. Для значений параметра Ргз, отличных от 1, уравнение Сс = 1 имеет очень большое число решений. Однако при Ргз = 1 данная БАТ-задача имеет единственное решение, дающее матрицу смежности полного орграфа без петель.

Из представленных результатов видно, что время работы решателя возрастает с увеличением числа неподвижных точек, по которым строится матрица смежности функционального графа. Наибольшая трудоемкость наблюдается на задаче восстановления матрицы смежности полного графа (соответствующая КНФ содержала около 2 млн дизъюнктов). Следует отметить,что матрицу смежности полного орграфа без петель на ии ным точкам (которые задаются единичными векторами) за полиномиальное время, используя технику, описанную в [8], В настоящей работе данная задача рассматривалась только в качестве теста, подтверждающего корректность применяемых алгоритмов.

Заключение

Описанные в работе символьные алгоритмы поиска неподвижных точек автоматных отображений (т, е, стационарных состояний функционирования генных сетей) показали свою высокую производительность и быстродействие на сложных граф-структурах сетей довольно большого объема (десятки и сотни вершин), Разработанные методы особенно перспективны для тех дискретных моделей генных сетей, которые имеют граф-структуру нерегулярного строения. Такие структуры, близкие к случайным, являются "типичными графами" и, возможно, близки по своему строению значительному числу реальных генных сетей.

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

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

Список литературы

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

fl] Newman M.E.J. The structure and function of Complex Networks // SIAM Rev. 2003. Vol. 45, No. 2. P. 167-256.

[2] Системная компьютерная биология / Под. ред. H.А. Колчанова, С.С. Гончарова,

B.А. Лихошвая, В.А. Иванисенко. Новосибирск: Изд-во СО РАН, 2008. 767 с.

[3] Лихошвай В.А., Матушкин Ю.Г., Фадеев С.И. Задачи теории функционирования генных сетей // Сибирский журн. индустр. математики. 2003. Т. 6, № 2(14). С. 64-80.

[4] Колчанов Н.А., Латыпов А.Ф., Лихошвай В.А. и др. Задачи оптимального управления в динамике генных сетей и методы их решений // Изв. РАН. Теория и системы управления. 2004. № 6. С. 36-45.

[5] Демиденко Г.В., Колчанов Н.А., Лихошвай В.А. и др. Математическое моделирование регуляторных контуров генных сетей // Журн. вычисл. математики. 2004. Т. 44.

C. 2276-2295.

[6] Kauffman S.A. Met abolie stabilitv and epigenesis in randomlv constructed genetic nets // J. Theor. Biol. 1969. Vol. 22, No. 3. P. 437-467.

[7] Григоренко Е.Д., Евдокимов A.A., Лихошвай В.A., Ловарева И.A. Неподвижные точки и циклы автоматных отображений, моделирующих функционирование генных сетей // Вестник Томского гос. ун-та. Приложение № 14. 2005. С. 206-212.

[8] Евдокимов А.А., Лихошвай В.А., Комаров А.В. О восстановлении структуры дискретных моделей функционирования генных сетей // Там же. 2005. С. 213-217.

[9] Евдокимов А.А., Лиховидова Е.О. Дискретная модель генной сети циркулянтного типа с пороговыми функциями // Вестник Томского гос. ун-та. Управление, вычислительная техника и информатика. 2008. № 2(3). С. 18-21.

[10] Евдокимов А.А. Дискретные модели генных сетей: Анализ и сложность функционирования // Вычисл. технологии. 2008. Т. 13; Вестник КазНУ им. Аль-Фараби. Серия: математика, механика, информатика. № 3(58). Ч. II. С. 31-37. Совместный выпуск по материалам Междунар. конф. "Вычислительные и информационные технологии в науке, технике и образовании".

[11] Евдокимов А.А., Лиховидова Е.О. Дискретная модель регуляторного контура генной сети с пороговыми функциями // Материалы XVII Междунар. школы-семинара "Синтез и сложность управляющих систем". Новосибирск: Ин-т математики СО РАН, 2008. С. 36-42.

[12] Гэри M.. Джонсон Д. Вычислительные машины и труднорешаемые задачи. М.: Мир, 1982.

[13] Семенов А.А. Трансляция алгоритмов вычисления дискретных функций в выражения пропозициональной логики // Прикладные алгоритмы в дискретном анализе. Серия: Дискретный анализ и информатика. Вып. 2. Иркутск: Изд-во ИГУ, 2008. С. 70-98.

[14] SatLive [http://www.satlive.org]

[15] Семенов A.A., Заикин О.С., Беспалов Д.В., Ушаков A.A. SAT-подход в криптоанализе некоторых систем поточного шифрования // Вычисл. технологии. 2008. Т. 13, № 6. С. 134-150.

[16] Занкнн О.С., Семенов A.A. Технология крупноблочного параллелизма в SAT-задачах // Проблемы управления. 2008. № 1. С. 43-50.

[17] Семенов A.A., Заикин О.С. Неполные алгоритмы в крупноблочном параллелизме комбинаторных задач // Вычисл. методы и программирование. 2008. Т. 9. С. 108-118.

[18] Пападимитриу X., Стайглиц К. Комбинаторная оптимизация. Алгоритмы и программирование. М.: Мир, 1985.

[19] Цейтин Г.С. О сложности вывода в исчислении высказываний // Записки научных семинаров ЛОМИ АН СССР. 1968. Т. 8. С. 234-259.

[20] Кларк Э.М., Грамберг О., Пелед Д. Верификация моделей программ: Model Checking. М.: МЦНМО, 2002.

[21] Гаранина Н.О., Шилов Н.В. Верификация комбинированных логик знаний, действий и времени в моделях // Системная информатика. 2005. Вып. 10. С. 114-173.

[22] Кормен Т., ЛейзерсОН Ч., Ривест Р. Алгоритмы. Построение и анализ. М.: МЦНМО, 2001. 955 с.

[23] Bryant R.E. Graph-based algorithms for boolean function manipulation // IEEE Transact. Comput. 1986. Vol. 35(8). P. 677-691.

[24] Meinel Ch., Theobald T. Algorithms and Data Structures in VLSI-Design: OBDD-Found-ations and Applications. Berlin; Heidelberg; New York: Springer-Verlag, 1998. 267 p.

[25] Семенов A.A. Декомпозиционные представления логических уравнений в задачах обращения дискретных функций // Изв. РАН. Теория и системы управления. 2009. № 5. С. 47-61.

[26] MiniSat [http://minisat.se/MiniSat.html]

[27] Игнатьев A.C., Семенов A.A., Хмельнов А.Е. Использование двоичных диаграмм решений в задачах обращения дискретных функций // Вестник Томского гос. ун-та. Управление, вычисл. техника, информатика. 2009. № 1(6). С. 115-129.

Поступила в редакцию 25 февраля 2010 г., с доработки — 3 июня 2010 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.