УДК 519.688
DOI: 10.17586/0021-3454-2016-59-12-1052-1054
ПАРАЛЛЕЛЬНОЕ МОДЕЛИРОВАНИЕ АДАПТИВНЫХ СЛУЧАЙНЫХ БУЛЕВЫХ СЕТЕЙ С ПРИМЕНЕНИЕМ ТЕХНОЛОГИИ GPGPU
К. В. Кувшинов1, К. О. Боченина1, П. Горски2, Я. Холыст2
1Университет ИТМО, 197101, Санкт-Петербург, Россия E-mail: [email protected] 2Варшавский политехнический университет, 00-662, Варшава, Польша
Описан параллельный алгоритм моделирования эволюции случайных булевых сетей (СБС) с применением технологии GPGPU. Рассмотрено влияние ограничения на длину аттракторов при моделировании эволюции. С использованием предложенного алгоритма получены распределение длин аттракторов и значения средних входных полустепеней для критических адаптивных СБС.
Ключевые слова: случайная булева сеть, GPGPU, регуляторные сети
Случайная булева сеть (СБС) как модель генетической регуляторной сети представляет собой ориентированный граф из N вершин (узлов), причем состояние i-й вершины на t-м шаге Si (t) е {0,1} определяется булевой функцией (БФ) от состояний ее вершин-родителей на шаге t -1. Правило изменения топологии сети позволяет перевести адаптивную СБС (АСБС) в критическое состояние путем добавления/удаления ребер случайно выбранного узла в зависимости от его среднего состояния на аттракторе [1]. Процесс изменения топологии сети назван эволюцией АСБС, а одна итерация этого процесса — поиск аттрактора и добавление/удаление ребер — называется эпохой эволюции. С увеличением размера СБС длина аттракторов возрастает экспоненциально, что затрудняет процесс моделирования эволюции АСБС. Ускорить его можно следующими способами:
1) применение эвристических алгоритмов поиска аттрактора [1—3];
2) параллельное обновление состояний узлов при поиске аттрактора;
3) введение ограничений на максимальную длину аттрактора;
4) перевязка нескольких узлов за эпоху.
В настоящей работе предложен алгоритм на основе технологии GPGPU, агрегирующий указанные способы.
Для повышения производительности при вычислениях на GPU целесообразно представлять СБС матрицей вида:
= |2" если/е N„ Vi ^ , = jl, «шф,| = 0, ^
[0, иначе, [0, иначе.
Здесь Ni — упорядоченное множество родителей вершины i, k — номер родителя в Nz-. Так
как i-й узел имеет 2 г| возможных входных состояний, его БФ может быть представлена вектором bi размерности 1х 2^ Nil, а БФ всей сети — матрицей В размерности N х 2max N (где
N — число узлов в сети). Предложенный подход позволяет определить обновление состояния сети с помощью двух операций: умножения A на вектор состояний S(t) (v = A х S(t)) для получения индексов v следующих состояний узлов и операции выбора значений по полученным индексам ( Si (t +1) = Bi v +1).
Параллельное моделирование адаптивных случайных булевых сетей
1053
При малых размерах сети (меньше 200 узлов) последовательная версия алгоритма оказывается быстрее параллельной из-за задержек, связанных с запуском функции обновления состояния на GPU, а также синхронизацией CPU и GPU. Однако с ростом N эти задержки перестают оказывать существенное влияние на ускорение. На рисунке, а представлено время Tsim исполнения 100 эпох CPU и GPU алгоритмов для фиксированной (2-10 ) длины аттрак-
тора.
а)
б)
60
40
20
CPU GPU
0 200 400 600 800 1000 N
K 2,4
2,3
2,2
2,1
2,0
Nrew=1 _ N =2 1 v rew ^ Nrew 3
NNrew==54
0
200 400 600 800 1000 t
в)
г)
f
— N=300, Nrew=3 N=500, Nrew=6 N=750, Nre„=9
— N=1000, N„.„,=51
200 400 600 800 1000 t
10101010101010-
A ■ N=200 N=500 N=1000
A • _щ_
A
*
t ■
* ■ ■ *
A
101 102 103 104 105 106
О достижении критического состояния можно судить по изменению средней входной полустепени К во время эволюции сети (см. рисунок, б, в). Увеличение числа перевязываемых узлов позволяет сократить число эпох, достаточных для достижения критического состояния. Например, при N = 1000, = 5 устойчивое состояние наблюдается уже после 500 эпох эволюции (см. рисунок, б). Результаты экспериментов, в частности, полученные в ходе эволюции (в) значения К33 и распределение длин ц аттракторов АСБС (г) согласуются с предыдущими исследованиями [4].
Зависимость доли найденных аттракторов и средней входной полустепени
Максимальная длина аттрактора Доля найденных аттракторов, % / Средняя входная полустепень
N=100 N=200 N=300 N=500 N=750
5 104 99,77 / 2,64 88,19 / 2,59 71,19 / 2,58 45,48 / 2,52 29,62 / 2,47
2,5 105 99,99 / 2,66 95,92 / 2,60 81,24 / 2,56 56,10 / 2,51 35,96 / 2,48
5 105 100,00 / 2,68 97,43 / 2,59 86,58 / 2,55 59,36 / 2,51 38,73 / 2,48
2,5 106 100,00 / 2,69 99,14 / 2,60 92,99 / 2,55 68,74 / 2,51 46,46 / 2,48
5 106 100,00 / 2,69 99,53 / 2,59 94,40 / 2,55 73,00 / 2,52 49,22 / 2,48
1107 100,00 / 2,68 99,75 / 2,62 96,08 / 2,55 77,73 / 2,51 53,81 / 2,48
ч
3
0
М
Применение описанных выше способов позволило увеличить размеры исследуемых АСБС с 80 [4] до 1000 узлов. Эксперименты демонстрируют, что введение ограничения на длину рассматриваемых аттракторов (см. таблицу) не оказывает влияния на среднюю входную полустепень в устойчивом состоянии. Предложенный алгоритм моделирования АСБС с использованием технологий ОРОРИ демонстрирует кратное ускорение для сетей с N > 300.
Полученные в результате данного исследования распределения длин аттракторов критических СБС могут быть использованы для задания априорных предположений о длинах аттракторов в эвристических алгоритмах.
Работа поддержана Российским научным фондом (соглашение № 14-21-00137 от 15.08.2014 г.)
список литературы
1. Liu M., Bassler K. E. Emergent criticality from coevolution in random Boolean networks // Phys. Rev. E. 2006. Vol. 74, N 4. P. 41910.
2. Knuth D. E. The Art of Computer Programming Vol. 2: Seminumerical Methods. Addison-Wesley, Reading, Mass, 1981.
3. Bhattacharjya A., Liang S. Median attractor and transients in random boolean nets: article // Phys. D. Nonlinear Phenom. Elsevier, 1996. Vol. 95, N 1. P. 29—34.
4. Gorski P. J., Czaplicka A., Holyst J. A. Coevolution of Information Processing and Topology in Hierarchical Adaptive Random Boolean Networks: article // arXiv Prepr. arXiv1502.03338. 2015.
Сведения об авторах
Кирилл Витальевич Кувшинов — студент; Университет ИТМО; E-mail: [email protected]
Клавдия Олеговна Боченина — канд. техн. наук; Университет ИТМО;
E-mail: [email protected] Пётр Горски — Варшавский политехнический университет, научный сотрудник;
E-mail: [email protected]
Януш Холыст — Варшавский политехнический университет, научный сотрудник;
E-mail: [email protected]
Рекомендована Поступила в редакцию
Университетом ИТМО 20.09.16 г.
Ссылка для цитирования: Кувшинов К. В., Боченина К. О., Горски П., Холыст Я. Параллельное моделирование адаптивных случайных булевых сетей с применением технологии GPGPU // Изв. вузов. Приборостроение. 2016. Т. 59, № 12. С. 1052—1054.
PARALLEL SIMULATION OF ADAPTIVE RANDOM BOOLEAN NETWORKS USING THE GPGPU TECHNOLOGY
K. V. Kuvshinov1, K. O. Bochenina1, P. Gorsky2, Ya. Holyst2
1ITMO University, 197101, St. Petersburg, Russia E-mail: [email protected]
2Warsaw Polytechnic University, 00-662, Warsaw, Poland
A parallel algorithm for modeling random Boolean network (RBN) evolution with the use of the GPGPU technology is described. The influence of constraints on the length of attractors in modeling evolution is analyzed. Distribution of attractors length and the values of the average vertex outdegree for critical adaptive rBn derived with the use of proposed algorithm are presented.
Keywords: random Boolean network, GPGPU, regulatory network
Data on authors
Kirill V. Kuvshinov — Student; ITMO University; E-mail: [email protected]
Claudia O. Bochenina — PhD; ITMO University; E-mail: [email protected] Peotr Gorsky — Warsaw Polytechnic University; Scientist; E-mail: [email protected]
Yanush Holyst — Warsaw Polytechnic University; Scientist; E-mail: [email protected]
For citation: Kuvshinov K. V., Bochenina K. O., Gorsky P., Holyst Ya. Parallel simulation of adaptive random Boolean networks using the GPGPU technology // Izv. vuzov. Priborostroenie. 2016. Vol. 59, N 12. P. 1052—1054 (in Russian).
DOI: 10.17586/0021-3454-2016-59-12-1052-1054