Раздел III. Использование суперЭВМ в математическом моделировании
УДК 519.6:532.5
А.И. Сухинов, А.В. Никитина, И.С. Семенов
РЕАЛИЗАЦИЯ ПАРАЛЛЕЛЬНЫХ АЛГОРИТМОВ РЕШЕНИЯ МОДЕЛЬНОЙ ЗАДАЧИ БИОЛОГИЧЕСКОЙ КИНЕТИКИ В АЗОВСКОМ
МОРЕ
Рассматривается разработка параллельного алгоритма, учитывающего архитектуру суперЭВМ с общей и распределенной памятью. Параллельный алгоритм разрабатывается для численного решения задачи биологической кинетики на примере модели взаимодействия фито- и зоопланктона. Использование библиотеки MPI обеспечивает лучшее распределение ресурсов компьютера и прирост эффективности алгоритма на распределенных вычислительных системах. В то же время для систем с общей памятью используется OpenMP, что обеспечивает универсальность алгоритма для суперЭВМ с различными операционными системами.
Математическая модель; планктон; многопоточность; OpenMP; MPI; Азовское море.
A.I. Sukhinov, A.V. Nikitina, I.C. Semenov
REALIZATION OF PARALLEL ALGORITHMS FOR SOLVING MODEL PROBLEM OF THE BIOLOGICAL KINETICS IN AZOV SEA
The work is devoted to the development of a parallel algorithm takes into account the supercomputer's architecture with shared and distributed memory. The parallel algorithm is developed for numerical solution of the problem of biological kinetics on the example of model of interaction between phyto - and zooplankton. Using the MPI library provides a better distribution of the resources of your computer and increases the effectiveness of the algorithm on distributed computing systems. At the same time for systems with shared memory is used OpenMP, which ensures universal algorithm for super-computers with different operating systems.
Mathematical model; plankton; multi-threading; OpenMP; MPI; the sea of Azov.
Введение. В настоящее время получили широкое распространение процессорные системы с распределенной и общей памятью. Для повышения эффективности алгоритмов можно использовать библиотеку MPI, а также многопоточность операционной системы. Message Passing Interface (MPI, интерфейс передачи сообщений) - программный интерфейс (API) для передачи информации, позволяющий обмениваться сообщениями между процессорами, выполняющими одну задачу. В данной работе реализован параллельный алгоритм для систем с распределенной памятью, в котором используются средства библиотеки MPI.
Постановка задачи. За основу был взят последовательный алгоритм, с помощью которого было получено численное решение задачи биологической кинетики на примере задачи взаимодействия фито- и зоопланктона, имеющих наибольшее значение в питании рыб Азовского моря [1].
Предположим, что область решения задачи О представляет собой замкнутый бассейн, ограниченный невозмущенной поверхностью моря 2 0, дном 2н = 2н (х, у) и боковой поверхностью а (2 = 2н и 20 иа).
Рассмотрим модель, учитывающую не только пространственно-неоднородное распределение фито- и зоопланктона, биогенов, движение водного потока, но и температурный и кислородный режимы:
¿X + (их) = МХ + ^ (ц ] + 1 (Б) X - «1 X 2 )-6> X Х2 - е X,, + (их2) = МХ2 (Ц Ц ^ ] + «212 (5) Х2 - «2 (х2, г) - в2XХ2 - е2Х2,
iz It
- + div (UZ) = ßz AZ + f [vZ az j + <*zVz (■X>X 2) Z - h (M 2) Z, (1) |S + div(US) = ßsAS + |-^az|-( (x,X2) + £X, + £-2X2 + h(M2)Z + B( -S) + f,
ЭМ1
It v ' 3 1 lz l, 3 lz
IM,
+ div(UM1) = ^3AM1 + — [ v3 |M I + kX1 - £3M1,
12
+ div (UM2) = ßAAM2 + -I [V4 |M21 + k2X2 - £4M2.
It
В модели (1) значительную роль играет зоопланктон - Bosmina longirostris, способный употреблять в пищу как зеленые, так и сине-зеленые водоросли, тем самым снижая их концентрацию. В системе (1) приняты обозначения: Xi - концентрация зеленых (Chlorella Vulgaris BIN) и синезеленых водорослей (Aphanizomenon) соответственно, i = 1,2; Z - концентрация зоопланктона (Bosmina Longirostris); S - концентрация биогенного вещества; Mi - концентрация метаболита i - го вида; A - двумерный оператор Лапласа; ¡лг ,ßz ,ßs, vr,vz,vS - диффузионные коэффициенты в горизонтальном и вертикальном направлениях субстанций Xt, Z , S , Mt, r = 1,4; ai = (a0i + у Mi) - функция роста i -го вида; d0i, у - скорость роста в отсутствии метаболита и параметр воздействия i-го вида; CXZ - скорость роста зоопланктона; yrZ (X1, X2) - функция, описывающая рост Z за счет потребления вида X1 и угнетения видом X2 ; gi (Xi, Z) - функция поглощения зоопланктоном i -го вида фитопланктона; (S (X1, X2)- функция потребления биогенного вещества водорослями; B - скорость поступления биогенного вещества; S p - предельно возможная концентрация биогенного вещества; £i - коэффициенты смертности i -го вида; u - поле скоростей водного потока; U = u + u 0i - скорость конвективного переноса вещества; u0i- скорость осаждения i -й субстанции, iе|X1, X2,Z, S,M1,M2}; h -функция смертности зоопланктона, включающая в себя риск элиминации за счет
метаболита сине-зеленой водоросли; £т - коэффициенты разложения метаболита, т е {3,4}; к; - коэффициенты экскреции г -го вида; / - функция источника биогенного вещества (загрязнения).
где /Лшах - максимальная скорость (с-1) поглощения биогенного вещества фитопланктоном, К- константа полунасыщения I -го вида по биогенному веществу; в1 - коэффициент межвидовой конкуренции I -го вида; ^шах - максимальная скорость (с-1) поглощения фитопланктона зоопланктоном; Л - постоянная Ивлева; Хи - пороговая конкуренция г - го вида, ниже которой поглощение прекращается.
Пусть для системы (1) выполняются следующие предположения:
¥i (S) = S ; yrs (XX2) = YSX!X2; ¥z (XX2) = Xx -X2; gi (Xi,Z) = 8iXiZ ; A(M2) = £ZM2; <ps (X X2) = (ßXx + ß2X2)S,
планктоном I - го вида; 81 - коэффициенты переработки биомассы водорослей I -го вида в биомассу зоопланктона, >> 8г (зоопланктон предпочитает зеленые
водоросли, сине-зеленые ест вынужденно).
Данная модель с учетом описанных выше упрощений может быть представлена следующей системой уравнений:
где рг - коэффициент переработанной биомассы водорослей г - го вида в биомассу зоопланктона.
Пусть п - вектор внешней нормали к поверхности X , ип - нормальная по
отношению к X составляющая вектора скорости водного потока. Начальные условия для модели (2) задаются в виде
где ¡51 = + уМ г) - коэффициенты поглощения биогенного вещества фито
X,. (х, у, г,0) = X,.0 (х, у, г); г (х, у, г,0) = г0 (х, у, г); S (х, у, г ,0 ) = (х, у, г);
М, (х, у,г,0) = М,0 (х,у,г), (х, у,г)е О , ге{1,2},г = 0. (3)
Граничные условия для модели (2) имеют вид:
X. = г = 5 = М1 = 0, ге{1,2} на а, если ип < 0;
Х= 0, «г = 0, ^ = 0, М = 0 на а, если и >0;
дп дп дп дп
дх1 п дг п д5 дМ; х
= 0, — = 0, — = 0, —^ = 0 на Е 0; (4)
дг дг дг дг
= -£кХг, ^ = -4г, -Г- = -45, ^ = -4Мг на Ен , дг дг дг дг
где , £г, ,к = 1,4 - неотрицательные постоянные; - учитывает опус-
кание водорослей на дно и их затопление; - учитывает элиминацию зоопланктона и опускание его на дно; , £3, £4 - учитывает поглощение биогенного вещества и
метаболитов зеленых и сине-зеленых водорослей донными отложениями.
Входными параметрами для модели (2)-(4) являются компоненты вектора скорости водной среды, которые описываются гидродинамической моделью [2].
Построение и исследование дискретной модели. Для численной реализации построенной модели вводится равномерная сетка:
^ЛДГ ={гп = пт х. = , у. = Д, гк = к\; п = ,; = а.^, 1 = 0-^у, к = ;
= Т, ^Д = ¡х, = /у, = ^ } = х йКкЛ , где Т - шаг по времени, , Ну Нг - шаги по пространству, N - верхняя граница по времени, Ых , Ыу - границы по пространству, /х, /у, /z - характерные размеры модельной области О .
Линеаризация задачи (2)-(4) выполнена на основе метода Ньютона. Для дискретизации модели взаимодействия фито и зоопланктона использовались схемы с центральными разностями следующего вида [3], [4]:
X? Д+1 + их р+1 + уХ р+1 + жХ р+1 =
(1)г (1)х (1)у (1)г
= (Х (рх + х (Т+ру) + (Х (Г^ ) + Рх (1)+1 - Рх? (1)+1 - в1х (2)х (1)+1 - £1х (1)+1' Х р+1 + их р+1 + уХ Р+1 + жХ р+1 =
(2)г (2)х (2)у (2)г
= ^2 (Х(г)* + Х(2)^ ) + (Х(2)"1 )) + а25 рх?(2+1 - ^2гРХ(2)1 - ^2Хр)Х(р2+1 - £2Х(2) >
¿гр+1+и2р+1 + угр+1 + жгр+1 =
х у г
= ^г (г^хТх"1 + ¿у;1)+(+1) + р1 Х? р+1 - р2 Х (2)гр+1 - егы р2)гр+1,
S Г1 + US p+1 + VSp+1 + WSp+1 = Ms ( ( + %+1 ) + ( vS Sp+l ) -
x y z z
-ßX 1)Sp+1 -ßXp)Sp+1 + 61Xfc + 6Xp2) + ezMp)Zp+1 + B( - S~p+1 ) + f,
т = min
, i = 1,3,
M p V + UM p+1 + VM p+1 + WM p+l =
im ) ° ° °
x у z
= Я (MДк + M) + (M)z + KXm1 ~£rMm6 {l,2},r 6 {3,4}.
Здесь X(m), Z, S, M(m), m 6 {1,2} - значения соответствующих функций в
узлах сетки на n + 1-м временном слое, X = oX + (l - а) X , сгб [0,1] - вес схемы; p - номер итерации в итерационном процессе [5], [6].
Погрешность аппроксимации математической модели взаимодействия фито и
зоопланктона равна о(т2 +||h||2 ) в случае o = 1 / 2, где ||h|| = ^h2x + h^ + h2z [7].
Достаточное условие устойчивости и монотонности разработанной модели (2)-(8) определяется на основе принципа максимума при ограничениях на шаг
временным координатам т < min{т1 , т2, т3} [8]:
Ж )-1, ((1 -01h2 + 2ßl hy + 2v/ h-<|| )-1
где ||||| = max ||,
< = a1Sn-S1Zn-01 Xn-£1, < = a2Sn-S2Zn -02X1n -f2,
| = px X 1n - p2X2n -ezM2n. Разработка параллельного алгоритма. За основу был взят метод k-means для разбиения области COhh h на примерно равное число независимых подобластей. Примерно равные подобласти получаются тогда, когда число расчетных узлов сетки не кратно количеству требуемых подобластей. При численном решении задачи (2)-(4) был выбран метод минимальных поправок (ММП) в виду того, что для данной задачи он имеет высокую скорость сходимости и работает при любом способе разбиения дискретной области на конечное число подобластей произвольной формы [9], [10].
Метод k-means основан на миниминазии функционала суммарной выборочной дисперсии разброса элементов относительно центра тяжести подобластей:
Q = Q 3), где Xi - множество расчетных узлов сетки, входящих в i-ю подобласть, i6 {1,...,m} , m - заданное количество подобластей.
Q(3) = ЕйЛZ d2(x,^i)^ min,
i
где c = 1 Е x - центр подобласти Xt, а d ( x, ci ) - расстояние между расчет-
\XA XEX,
ным узлом сетки X центром подобласти е1 в Эвклидовой метрике. Метод к-шеап будет сходиться только тогда, когда все подобласти будут примерно равны.
Опишем алгоритм к-шеаш.
1. Выбираются начальные центры подобластей при помощи максиминного алгоритма.
2. Все расчетные узлы разбиваются на т клеток Вороного по методу ближайшего соседа, т.е. текущий расчетный узел сетки х е Хс, где Хс - подобласть выбирается из условия х — я = шш х — , где я - центр
11 с 11 1<г <т 11 ' 11 с
области Хс.
1
3. Рассчитываются новые центры по формуле я(ск+1)
Х.к)
(к+1) = „( к)
Е
х.
хеХ(к >
4. Проверяется условие остановки яс ) = яс ) для всех к = 1,...,т . Если
условие остановки не выполняется, то переходим на пункт 2 алгоритма. В качестве центров подобластей максиминный алгоритм выбирает расчетные узлы сетки по следующему принципу:
1. Первый центр - первый расчетный узел области.
2. Второй центр находится в расчетном узле сетки, расположенном на максимальном расстоянии от первого центра.
3. Если количество подобластей больше 3-х, то каждый следующий центр находится на максимальном удалении от ближайшего центра [11].
Результат работы метода к-шеаш для модельной области представлен на рис. 1.
Рис. 1. Результат работы алгоритма к-теапя для разбиения модельной области
на 3, 5, 13 подобластей
Опишем преимущества выбора ММП и метода к-шеаш: 1. Разработанный алгоритм легко масштабируется для любого количества вычислителей.
XI Х;|
N - то IV I ч
у
2. Если т ^ МММ,, то |Х.| ^
т
3. к-шеаш можно использовать для трехмерных областей с произвольной границей.
При таком подходе алгоритм численного решения задачи (2)-(4) для каждой подобласти будет одинаковый. При реализации алгоритма для суперЭВМ с общей памятью необходимо учитывать порядок чтения/записи данных для расчетных узлов сетки, которые попали на границу подобластей. Также необходима синхронизация в работе алгоритма ММП при расчете параметра Т . Для реализации алгоритма с учетом архитектуры суперЭВМ с распределенной памятью необходимо при формировании элементов СЛАУ для каждой подобласти передать данные,
находящиеся в граничных точках подобластей и получить данные с соседних подобластей. При решении СЛАУ методом минимальных поправок и формировании итерационного параметра Т используем тот же принцип, который применяется в методе сдваивания (рис. 2).
Рис. 2. Расчет параметра Т при решении СЛАУ методом минимальных поправок
Заключение. С помощью экспедиционных исследований проведена первичная верификация моделей биологической кинетики в Азовском море [12]—[15]. В работе описан параллельный алгоритм численного решения задачи биологической кинетики на примере модели взаимодействия фито- и зоопланктона [16].
Математические модели биологической кинетики могут быть использованы для разработки возможных сценариев реабилитации мелководных водоемов с целью восстановления их экосистем до естественного уровня [17].
Предлагаемый алгоритм численного решения поставленной задачи на суперЭВМ с использованием метода k-means позволяет существенно сократить время работы программного комплекса, численно реализующего описанную модельную задачу биологической кинетики в Азовском море [18]-[21].
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Сухинов А.И, Никитина А.В. Математическое моделирование и экспедиционные исследования качества вод в Азовском море // Известия ЮФУ. Технические науки. - 2011.
- № 8 (121). - С. 62-73.
2. Сухинов А.И., Чистяков А.Е., Алексеенко Е.В. Численная реализация трехмерной модели гидродинамики для мелководных водоемов на супервычислительной системе // Математическое моделирование. - 2011. - Т. 23, № 3. - C. 3-21.
3. Никитина А.В. Модели биологической кинетики, стабилизирующие экологическую систему Таганрогского залива // Известия ЮФУ. Технические науки. - 2009. - № 8 (97).
- С. 130-134.
4. Никитина А.В. Численное решение задачи динамики токсичных водорослей в Таганрогском заливе // Известия ЮФУ. Технические науки. - 2010. - № 6 (107). - С. 113-117.
5. Sukhinov A.I., Sukhinov A.A. Reconstruction 0f 2001 Ecological Disaster in the Azov Sea on the Basis of Precise Hydrophysics Models. Parallel Computational Fluid Dynamics, Mutidisciplinary Applications, Prcoceedings of Parallel CFD 2004 Conference, Las Palmas de Gran Canaria, Spain, ELSEVIER, Amsterdam-Berlin-London-New York-Tokyo, 2005.
- P. 231-238.
6. Никитина А.В., Долгой В.Е. Построение пространственно-неоднородных математических моделей в Таганрогском заливе // Известия ЮФУ. Технические науки. - 2008.
- № 1 (78). - С. 177-178.
7. Никитина А.В., Третьякова М.В. Моделирование процесса альголизации мелководного водоема путем вселения в него штамма зеленой водоросли Chlorella vulgaris bin. Известия ЮФУ. - 2012. - № 1 (126). - C. 128-133.
8. Чистяков А.Е. Теоретические оценки ускорения и эффективности параллельной реализации ПТМ скорейшего спуска // Известия ЮФУ. Технические науки. - 2010. - № 6 (107). - С. 237-249.
9. Гергель В.П. Высокопроизводительные вычисления для многопроцессорных многоядерных систем. - М.: Изд.-во МГУ. - 2010. - 534 с.
10. Воеводин В.В. Вычислительная математика и структура алгоритмов. - М.: Изд.-во МГУ,
- 2010. - 166 с.
11. Лепский А.Е., Броневич А.Г. Математические методы искусственного интеллекта.
- Таганрог: Изд-во ЮФУ, 2009. - 39 с.
12. Сухинов А.И., Никитина А.В., Чистяков А.Е. Моделирование сценария биологической реабилитации Азовского моря // Математическое моделирование. - 2012. - T. 24, № 9.
- С. 3-21.
13. Сухинов А.И., Никитина А.В., Чистяков А.Е., Семенов И.С. Математическое моделирование условий формирования заморов в мелководных водоемах на многопроцессорной вычислительной системе // Вычислительные методы и программирование. - 2013.
- Т. 14. - С. 103-112.
14. Сухинов А.И., Никитина А.В. Создание комплекса математических моделей трофических взаимодействий комаров-звонцов (хирономид) и рыб с целью улучшения экологической обстановки в г. Таганроге и акватории Таганрогского залива // Труды Международной научно-практической конференции «Преобразование Таганрога - ключ к возрождению России», 29-30 января 2013 г. - С. 137-138.
15. Сухинов А.И., Никитина А.В., Чистяков А.Е. Восстановление качества вод Азовского моря с помощью численного моделирования // Труды Международной научно-практической конференции «Преобразование Таганрога - ключ к возрождению России», 29-30 января 2013 г. - С. 135-137.
16. Никитина А.В., Семенов И.С. Параллельная реализация модели динамики токсичной водоросли в Азовском море с применением многопоточности в операционной системе Windows // Известия ЮФУ. Технические науки. - 2013. - № 1 (138). - С. 130-135.
17. Никитина А.В., Чистяков А.Е., Фоменко Н.А. Применение адаптивного модифицированного попеременно-треугольного итерационного метода для численной реализации двумерной математической модели движения водной среды // Электронный научно-инновационный журнал. Инженерный вестник Дона. - 2012. - C. 4.
18. Никитина А.В., Чистяков А.Е, Семенов И.С. Расчет распространения токсичной водоросли в Азовском море на вычислительной системе с использованием многопоточности в среде Windows. Зарегистрирован в Реестре программ для ЭВМ: N 2012614681 от 25.05.2012.
19. Сухинов А.И., Никитина А.В, Семенов И.С. Расчет для модели взаимодействующих фи-топланктонных популяций в Азовском море на вычислительной системе с использованием базы экспедиционных данных. Зарегистрирован в Реестре программ для ЭВМ: N 2012614678 от 25.05.2012.
20. Сухинов А.И., Никитина А.В, Семенов И.С. Расчет для модели взаимодействия планктона и промысловых рыб в мелководном водоеме на вычислительной системе с использованием библиотеки программ эффективного решения сеточных уравнений. Зарегистрирован в Реестре программ для ЭВМ: N 2012614677 от 25.05.2012.
21. Сухинов А.И., Никитина А.В., Чистяков А.Е., Царевский В.В., Фоменко Н.А. Программный комплекс решения сеточных уравнений для трехмерных задач диффузии-конвекции-реакции итерационными методами. Зарегистрирован в Реестре программ для ЭВМ: N 2012614680 от 25.05.2012.
Статью рекомендовал к опубликованию д.т.н., профессор Я.Е. Ромм.
Sukhinov Alexander Ivanovich - Federal State-Owned Autonomy Educational Establishment of
Higher Vocational Education "Southern Federal University"; e-mail: [email protected]; 44,
Nekrasovskiy, Taganrog, 347928, Russia; phone: +79281021106; dr. of phis.-math. sc.; professor.
Никитина Алла Валерьевна - e-mail: [email protected]; тел.: 89515168538; кафедра высшей математики; к. ф.-м.н.; доцент.
Семенов Илья Сергеевич - e-mail: [email protected]; тел.: 89085029807; кафедра высшей математики; аспирант.
Сухинов Александр Иванович - Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Южный федеральный университет»; e-mail: [email protected]; 347928, г. Таганрог, пер. Некрасовский, 44; тел.: 89281021106; д.ф.-м.н.; профессор.
Nikitina Alla Valervevna - e-mail: [email protected]; phone: +79515168538; the department of higher mathematics; cand. of pthis.-math. sc. associate professor.
Semenov Ilya Sergeevich - e-mail: [email protected]; phone: +79085029807; the department of higher mathematics; postgraduate student.
УДК 519.6:532.5
И.С. Семенов
РАЗРАБОТКА МЕТОДОВ РЕШЕНИЯ СЛАУ ДЛЯ ЗАДАЧ ДИНАМИКИ ПОПУЛЯЦИЙ ПРИМЕНИТЕЛЬНО К АКВАТОРИИ АЗОВСКОГО МОРЯ
Работа посвящена разработке параллельного алгоритма, учитывающего архитектуру суперЭВМ с распределенной памятью. Параллельный алгоритм разрабатывается для численного решения задачи биологической кинетики на примере модели взаимодействия планктона и рыб. В работе для численного расчета модельной задачи динамики планктонных и рыбных популяций используются методы решения СЛАУ вариационного типа, а также их параллельная реализация на многопроцессорной вычислительной системы с распределенной памятью. Использование библиотеки MPI обеспечивает лучшее распределение ресурсов компьютера и прирост эффективности алгоритма на распределенных вычислительных системах.
Математическая модель; планктон; алгоритм; эффективность; k-means; MPI; Азовское море.
I.C. Semenov
DEVELOPMENT OF METHODS OF THE SOLUTION OF SLAE FOR THE PROBLEMS OF THE DYNAMICS OF POPULATIONS IN RELATION TO THE WATER AREA OF THE AZOV SEA
The work is devoted to the development of a parallel algorithm that takes into account the architecture of supercomputers with distributed memory. The parallel algorithm is developed for numerical solution of the problem of biological kinetics on the example of model of interaction of plankton and fish. In the work for the numerical calculation of the model problem of the dynamics of plankton and fish populations are used methods of the solution of SLAE of variational type, as well as their parallel implementation on multiprocessor computer systems with distributed memory. Using the MPI library provides a better distribution of the resources of your computer and increases the effectiveness of the algorithm on distributed computing systems.
Mathematical model; plankton; algorithm; efficiency; k-means; MPI; the Sea of Azov.
Введение. С развитием вычислительной техники возникает необходимость в создании эффективных алгоритмов, предназначенных для высокопроизводительных систем. На сегодняшний день суперЭВМ используются во всех сферах человеческой жизни. При численной реализации математических моделей требуется создание высокоэффективных параллельных алгоритмов. При переходе от непрерывных моде-