Содержание к диссертации
Введение
Глава 1. Обзор методов моделирования процессов самоорганизации 12
1.1. Моделирование процессов самоорганизации 12
1.2. КА-подход к моделированию процессов самоорганизации 15
1.2.1. Общее понятие классического КА 16
1.2.2. Композиционные КА-модели 20
1.3. Выводы к главе 23
Глава 2. КА-модель динамики численности организмов озера Байкал 24
2.1. Постановка задачи моделирования динамики численности организмов 24
2.2. Математическое описание модели 25
2.2.1. Собственное перемещение организмов 27
2.2.2. Перемещение организмов под влиянием течений 28
2.2.3. Оператор изменения численности 30
2.2.4. Зависимость рождаемости от сезонов 32
2.2.5. Влияние загрязнений 33
2.3. Оценка сложности алгоритмов 34
2.4. Выводы к главе 39
Глава 3. Программная реализация 41
3.1. Архитектура программного комплекса 42
3.2. Отображение структуры модели на архитектуру модельной части программного комплекса 42
3.3. Программный комплекс 44
3.3.1. Структуры данных 44
3.3.2. Реализация оператора перехода F 45
3.3.3. Методы представления входных данных модели 47
3.3.4. Используемые технологии 50
3.4. Результаты распараллеливания вычислений на системах с общей памятью51 3.5. Выводы к главе 52
Глава 4. Верификация модели 54
4.1. Верифицируемые параметры 54
4.2. Оценки верифицируемых параметров, доступные в литературе 55
4.3. Получение модельных оценок верифицируемых параметров 55
4.4. Сравнение результатов моделирования и экспериментальных данных 57
4.5. Выводы к главе 58
Глава 5. Результаты моделирования 59
5.1. Тестовые эксперименты 61
5.1.1. Исследование поведения базовой части модели для равномерного и неравномерного начального распределения 61
5.1.2. Влияние зависимости рождаемости голомянок от сезонов 63
5.1.3. Влияние водных течений 64
5.2. Вымирание макрогектопуса в северной части озера 67
5.3. Влияние загрязнения на динамику численности организмов 68
5.4. Выводы к главе 71
Заключение 73
Список литературы
- КА-подход к моделированию процессов самоорганизации
- Перемещение организмов под влиянием течений
- Методы представления входных данных модели
- Получение модельных оценок верифицируемых параметров
Введение к работе
Актуальность темы
Байкал является крупнейшим резервуаром пресной воды. Для его сохранения необходимо изучать экологические процессы, протекающие в озере, а также оценивать уровень допустимого антропогенного влияния на экосистему.
Поскольку влияние человека на экосистему, как правило, локально, важно, чтобы модели популяций в экосистемах учитывали особенности пространственного распределения организмов.
Пионерскими работами в исследовании динамики популяций принято считать модели Мальтуса, Ферхюльста, Хатчинсона и Лесли, описывающие динамику одной популяции. Исследования влияния загрязнений на динамику популяции проводили Dubev, Hussian, Пичугина, Перцев. Начала исследованиям экосистем хищник-жертва положены в работах Лотка-Вольтерра, которые были развиты Свирежевым и Базыкиным. Эти исследования базируются на анализе моделей, являющихся системами нелинейных дифференциальных уравнений и обладающих следующими ограничениями:
-
В процессе участвуют не более трёх групп организмов
-
Параметры модели усреднены по области моделирования, т.е. не учитывается пространственное распределение организмов.
Первое ограничение было снято с помощью численного моделирования коллективом под руководством Зоркальцева В. И., предложившим модель восьми групп организмов озера Байкал на базе систем дифференциальных уравнений.
Альтернативой системам дифференциальных уравнений является клеточно-автоматный (КА) подход, снимающий и второе ограничение.
Таким образом, проблема построения КА-модели экосистемы Байкала актуальна, во-первых, для сохранения озера, и, во-вторых, для развития методов моделирования систем хищник-жертва.
Цель
Целью диссертационной работы является разработка подхода к
построению КА-моделей динамики численности организмов,
позволяющего учитывать пространственное распределение организмов, локальные особенности окружающей среды и влияние возможных локальных загрязнений в области моделирования, и применение подхода к экосистеме озера Байкал для получения оценок допустимого и критического уровня загрязнений.
Для достижения поставленной цели необходимо решить следующие задачи:
Разработка математической КА-модели динамики численности восьми групп организмов озера Байкал.
Разработка алгоритмов моделирования, позволяющих эффективно реализовать математическую модель в виде программного комплекса в последовательном и параллельном виде.
Верификация модели по известным данным о динамике популяций организмов.
Использование модели для исследования влияния загрязнений на динамику численности организмов. Поиск критических значений интенсивности загрязнений: наименьшего значения, при котором происходит полное вымирание организмов и наибольшего, влияние которого незаметно на фоне естественных процессов.
Научная новизна
Предложена новая КА-модель динамики численности основных видов организмов озера Байкал, являющаяся параллельной композицией восьми КА, впервые позволяющая одновременно учитывать сезонность, пространственное распределение особей, влияние течений, возможные локальные загрязнения области моделирования.
Предложен новый клеточно-автоматный алгоритм, позволяющий учитывать перемещение организмов под действием водных течений.
Доказаны оценки временной сложности алгоритмов моделирования.
Достоверность
Достоверность полученных в диссертационной работе результатов обеспечивается результатами верификации модели по известным данным.
Основные положения, выносимые на защиту
Подход к КА-моделированию динамики численности популяций и его применение для нескольких видов организмов озера Байкал для получения оценок критического и допустимого уровня загрязнения.
Оценки временной сложности алгоритмов моделирования
Результаты верификации модели по экспериментальным данным. Полученные оценки по критериям соотношения продукции к биомассе и частоте встречаемости организмов отличаются от экспериментальных оценок не более чем на 10%, что позволяет говорить о возможной практической применимости модели.
Оценки критических значений интенсивности загрязнения, при которых влияние загрязнения не заметно на фоне естественных колебаний популяций и при которых происходит вымирание вида.
Программный комплекс для имитационного моделирования, поддерживающий возможность параллельного вычисления.
Научная апробация результатов
Основные положения диссертационной работы докладывались и обсуждались на 7 научных и научно-практических конференциях. В том числе на российских конференциях:
-
Водные и экологические проблемы Сибири и Центральной Азии (Барнаул, 2012),
-
Параллельные вычислительные технологии (Челябинск, 2013).
-
Методы создания, исследования и идентификации математических моделей (Новосибирск, 2013)
-
Конференция молодых учёных ИВМиМГ СО РАН (Новосибирск, 2014)
И международных конференциях:
-
Математическое моделирование и высокопроизводительные вычисления в биоинформатике, биомедицине и биотехнологии (Новосибирск, 2014)
-
The 9th International Conference on Bioinformatics of Genome Regulation and Structure\System Biology. (Novosibirsk, 2014)
-
Parallel Computing Technologies (Санкт-Петербург, 2013).
Научно-практическая значимость работы
Предложен подход к построению КА-моделей для систем хищник-жертва, основанный на параллельной композиции нескольких КА, и впервые позволяющий одновременно учитывать пространственное распределение организмов, сезонность, влияние водных течений и локальные загрязнения.
Реализован программный комплекс, позволяющий исследовать динамику численности основных видов организмов озера Байкал и предсказывать поведение популяции при появлении различных локализованных загрязнений в озере. Параллельная реализация алгоритма даёт возможность проводить вычисления за приемлемое время, а проведённая верификация модели предполагает относительную достоверность предсказаний.
Вклад автора
Работа проведена автором лично.
Публикации
По результатам диссертационной работы опубликовано 9 работ, из них 3 в журналах, рекомендованных ВАК.
Структура и объем диссертации
КА-подход к моделированию процессов самоорганизации
Известны два основных режима применения глобального оператора: синхронный р = а и асинхронный р = а. Синхронный режим предполагает, что сначала вычисляются новые состояния клеток согласно локальному оператору перехода, а затем все клетки одновременно изменяют свои старые состояния на новые. В асинхронном режиме случайно выбирается клетка, вычисляется её новое состояние и сразу заменяется старое состояние клетки на новое.
Простейшим примером классического КА, моделирующего процесс пространственной самоорганизации, может служить КА-модель процессов разделения фаз двух веществ, предложенная в работе [64] и подробно исследованная в [25]. Алфавит состояний клеток булев. Новое состояние клетки зависит от суммы а состояний клеток из локальной конфигурации. Локальной конфигурацией S(c) для этого КА является квадрат размером 5x5. Таким образом, сумма а может принимать целочисленные значения от 0 до 25.
Локальный оператор перехода f в локальной конфигурации S(c) изменяет только состояние клетки с именем с. При этом, новое состояние клетки равно 1, если 7 є А, и 0 в обратном случае, где А - некоторое подмножество множества {0,..,25}.
В зависимости от множества А КА может моделировать различные процессы самоорганизации. Для их классификации в [25] были введены критерии «мелкозернистости» и «нечёткости границ». В результате численного моделирования были выделены 3 группы:
1. «Полное разделение фаз». Примером КА этого класса будет К А с множеством А = {11,13} и {15,..,25}. В результате работы этого КА происходит полное разделение веществ на два кластера. На рисунке 1 приведены некоторые итерации этого КА. Рис. 1. Эволюция КА-представителя класса «полное разделение фаз».
Итерации (слева направо): t = 0, 5, 20, 300 2. «Мелкозернистые». КА этого класса приходят к устойчивому состоянию с большим числом граничных клеток. Клетка считается граничной, если среди её соседей есть клетка с иным состоянием. КА с оператором перехода, соответствующим множеству A = {12} и {14,..,25} является представителем этого класса. Некоторые его итерации приведены на рисунке 2.
Итерации (слева направо): t = 0, 15, 230, 1000. 3. Разделяющиеся вещества с нечёткими границами. Для КА этого класса характерно итоговое разделение веществ на два кластера, но граница между кластерами размыта и в ней происходят постоянные колебания. Чтобы дать численную характеристику этому явлению, введено понятие граничной нечёткой клетки - клетка, чьи соседи и соседи соседей являются граничными клетками. Нечёткость границ определяется как отношение числа нечётких граничных клеток к числу граничных клеток. КА с оператором перехода, соответствующим множеству A = {8, 9, 13, 14, 15} и {18, … , 25} является представителем этого класса. Некоторые его итерации показаны на рисунке 3.
Эволюция КА-представителя класса «разделяющиеся вещества с «нечёткими границами». Итерации (слева направо): t = 0, 15, 230, 1000. Chua разработал альтернативный подход к формализации клеточных автоматов, которые он назвал клеточно-нейронной сетью (CNN) [20]. Им были предложены клеточно-нейронные сети, моделирующие окраску животных (леопардов и рыб-зебр) (рис. 4). Слева – рыба-зебра, справа – результат моделирования клеточно-нейронной сетью.
Несколько клеточно-автоматных моделей для систем хищник-жертва предложены и исследованы работах [57-59]. В них хищники догоняют жертв в некотором радиусе видимости, а жертвы убегают от хищников. При этом хищник при поедании жертвы с некоторой вероятностью порождает потомство, а при отсутствии пищи с некоторой вероятностью погибает.
Влияние неравномерности условий обитания по пространству на динамику и распределение популяции для клеточно-автоматной модели исследовано в работе [60]. В этой модели организмы одной популяции распространяются по области моделирования, колонизируя её; и в каждой клетке определён параметр «качества окружающей среды», влияющий на смертность организмов. Получающееся при этом распределение организмов в устойчивом состоянии неравномерно.
КА могут обладать самыми разными характеристиками поведения. Поэтому возникает необходимость в классификации КА по поведенческим характеристикам. Такая классификация была предложена Вольфрамом [64]: 1. К первому классу отнесены КА, эволюционирующие к однородному состоянию. Т.е. все клетки, начиная с некоторой стадии, находятся в одинаковом состоянии. А небольшие изменения начального состояния не влияют на устойчивое состояние.
2. Второй класс представляют КА, в результате эволюции которых образуются устойчивые или периодические (в пространстве) структуры. При этом локальные изменения начального состояния изменяют устойчивое состояние КА лишь локально.
Примерами являются КА типа «разделения фаз» класса мелкозернистых, описанные в работе [25], КА-модель абстрактной системы хищник-жертва [66], симулирующие окраску животных модели, предложенные в [20].
Перемещение организмов под влиянием течений
Во второй главе описана предлагаемая клеточно-автоматная модель динамики численности восьми групп организмов озера Байкал, представляющая собой параллельную композицию восьми КА, каждый из которых описывает динамику численности определённой группы организмов.
Модель позволяет учитывать пространственное распределение организмов, их собственное перемещение и перемещение под действием водных течений, зависимость рождаемости от сезонов, а также исследовать влияние возможных загрязнений на динамику численности организмов.
Даны оценки временной сложности вычисления одной итерации и моделирования некоторого временного периода от размера сетки Q и шага по времени At. Глава 3. Программная реализация К программному комплексу, реализующему модель, выдвинуты следующие требования: Полная реализация всех особенностей модели, Возможность прерывать процесс моделирования, Возможность задавать различные начальные условия моделирования без перекомпиляции программы, Возможность изменять параметры модели без перекомпиляции программы (параметры рыб, параметры окружающей среды, число ячеек и др.), Возможность отключать различные особенности модели без перекомпиляции программы. Например, убрать зависимость коэффициентов рождаемости голомянок от времени года, убрать перемещение организмов под действием течений, не учитывать загрязнения и др. Поитерационная визуализация состояний клеток КА в процессе моделирования, а также возможность отключать визуализацию без перекомпиляции программы (для объемов данных, не вмещающихся в память видеоадаптера), Сбор и подсчёт статистик процесса моделирования, Построение графиков динамики исследуемых параметров после процесса моделирования, Анализ верификационных параметров модели после процесса моделирования, Приемлемое время расчёта экспериментов, Кроссплатформенность кодовой базы,
Архитектура программного комплекса имеет вид:
Схематичное изображение архитектуры программного комплекса Модель - часть комплекса, отвечающая за программное представление предлагаемой математической модели Контроллер - часть комплекса, отвечающая за управление процессом моделирования: о инициализация параметров модели , о управление процессом моделирования и визуализацией, о реакция на команды пользователя. Визуализатор - часть комплекса, отвечающая за визуальное представление процесса и результатов моделирования: о итеративное отображение состояний для каждой из групп организмов, о логирование исследуемых параметров, о составление графиков, отображающих динамику исследуемых параметров.
Отображение структуры модели на архитектуру модельной части программного комплекса Математическая модель представляет собой композицию восьми клеточных автоматов, каждый из которых можно представить как слой квадратных ячеек, описывающий поведение определённой группы организмов, где значениями этих ячеек являются целые числа - состояния клеток. Параметры модели, такие как карты течений и загрязнений, являются функциями, зависящими от имени клетки. Карты течений и загрязнений также представимы слоем квадратных ячеек, значениями которых являются векторы из R2 и числа из R соответственно.
Таким образом, математическая модель индуцирует архитектурное решение для программной реализации модели, представляющей собой набор семантически разных слоёв, каждый из которых отвечает строго за отведённую ему функциональность.
Соответствие слоёв математической модели и слоёв-модулей программной реализации. На рисунке 15 представлено соответствие слоёв математической модели и слоёв-модулей части комплекса, описывающего программную реализацию модели. Под слоем-модулем будем понимать данные и операции над ними, объединённые семантически.
В программную реализацию дополнительно введены два слоя: coords и neighbors. слой-модуль coords инкапсулирует сопоставление ячейке из Q её координат на карте, т.е. исключительно в его рамках доступна информация о физическом размещении клетки. слой-модуль neighbors инкапсулирует информацию о топологии пространства - отвечает за нахождение соседних ячеек. Каждой ячейке поставлен в соответствие набор соседей - не более 4-х ячеек. Таким образом, все знания о физическом размещении ячеек и топологии пространства инкапсулированы в слоях-модулях coords и neighbors. Остальные слои-модули функционируют вне зависимости от пространственной структуры области моделирования.
Методы представления входных данных модели
В [71] дана оценка биомассы макрогектопуса Вт в 110 000 тонн. Там же дана оценка продукции макрогектопуса Рт в 330 000 тонн. Хотя в [44] дана оценка снизу продукции макрогектопуса Рт в 673 000 тонн. Основываясь на этих данных, получим, что коэффициент Рт / Вт варьируется от 3 до 7. В работе [72] приведена оценка коэффициента Рт / Вт в пределах от 5.1 до 7.69. Примем, что коэффициент Рт / Вт должен лежать в пределах от 3 до 7.69.
Также в работе [72] приведены оценки для коэффициента Pd / Bj (от 0.97 до 1.91) и для коэффициента Рь / Въ (от 0.5 до 1.45). Оценки коэффициентов Nm / Nd и Nm / Nb взяты из статьи [43] и равны 6.05 и 21.52 соответственно. Оценка коэффициента Lj / Pd приведена в работе [45] и равна 0.52.
При получении модельных оценок верифицируемых параметров загрязнение не учитывалось (т.е. poll(c) = 0 \/сєМ). Проводился вычислительный эксперимент с начальным состоянием модельной плотности, соответствующему среднегодовому значению при установившихся колебаниях. После установления годовых колебаний в течение одного года с модели считываются параметры с каждой из групп организмов на каждой итерации: общая численность, количество умерших, постаревших, съеденных голомянками организмов. Затем собранные данные усредняются за год. Усреднённые за год данные агрегируются по возрастным группам для каждого вида:
Первый и третий критерии (Р/В - отношение годовой продукции к среднегодовой биомассе и L/P - отношение массы выедаемых голомянками к годовой продукции) используют понятие массы организмов, в то время как модель оперирует понятием модельной плотности, сводимой к численности организмов. Поэтому при расчёте модельных оценок верифицируемых параметров необходимо совершить переход от численности к массе.
Для оценки первого критерия (Р/В) переход от численности к массе выглядит следующим образом: где massm и massm - средняя масса организмов групп ті и М2 соответственно, NPm и NPm - число организмов групп mi и Ш2, учтённых в годовой продукции, 2
NBm и NBm - среднегодовые численность групп. Числа NPm , NPm , NBm и NBm известны в результате вычислительного эксперимента. Для дальнейших преобразований используем эмпирический закон [73], устанавливающий соответствие между массой рыбы и её длиной: где оценки средних длин /га организмов получены из предположения линейной зависимости длины организмов от возраста, возрастные данные для групп организмов взяты из [43], данные о длине особей последних возрастных групп взяты из [44], а величины NPm и МВт получены по результатам вычислительного эксперимента.
В четвёртой главе приведены критерии – физические параметры экосистемы, выбранные для верификации модели. Приведены оценки физических параметров, доступные в литературе. Описан алгоритм получения модельных оценок из данных вычислительного эксперимента. Проведено сравнение модельных оценок с оценками, взятыми из литературы, которое показало, что относительное различие не превосходит 20%, что говорит о теоретически возможном применении модели к описанию реальных процессов. Глава 5. Результаты моделирования
Для постановки вычислительных экспериментов определим соответствие между физическими и модельными величинами.
Физическое время At, соответствующее одной итерации, выбрано равным 2 дням. Число ячеек сетки Q равно 2 108 664. Площадь Байкала составляет 31 722 км . Т.е. площадь одной ячейки сетки Q равна 0,015 км . Следовательно, её линейный размер равен 123 м.
Для вычисления чисел КІ из (21), участвующих в определении оператора собственного перемещения организмов и обозначающие число применений оператора целочисленной диффузии за одну итерацию, необходимо знать средние крейсерские скорости организмов. В работе [74] отмечается, что скорость рыбы прямо пропорциональна корню кубическому из её длины:
Получение модельных оценок верифицируемых параметров
В рамках вычислительных экспериментов с вымиранием макрогектопуса в северной части проведено исследование модели на предмет поведения организмов в случае модификации исходных условий. Модель в результате колебаний численности приходит к устойчивому колебательному процессу с годовым периодом и неравномерным распределением особей по области моделирования.
Проведено исследование поведения модели для случая теоретического локального загрязнения в южной части Байкала. Экспериментально получено, что влияние загрязнения не распространяется далеко от эпицентра. Получены оценки критической интенсивности загрязнения, при котором происходит полное вымирание организмов, и допустимой интенсивности загрязнения, при котором его влияние не заметно на фоне годовых колебаний численности. В области, где интенсивность загрязнения лежит между допустимым и критическим значениями, происходит увеличение численности макрогектопуса и уменьшение численности голомянок. Заключение
Кратко сформулируем основные результаты работы:
1. Предложена КА-модель самоорганизации восьми групп организмов, позволяющая учитывать пространственное распределение особей по области моделирования, собственное перемещение особей, перемещение особей под действием водных течений, зависимость рождаемости организмов от времени года и возможные локальные загрязнения области моделирования.
2. В предложенной модели впервые использован метод синтеза КА с помощью параллельной композиции восьми КА.
3. Предложен новый КА-оператор, позволяющий моделировать перемещение организмов под действием водных течений.
4. Доказаны теоремы об оценках временной сложности алгоритмов моделирования от размера сетки и шага по времени.
5. Предложены способы верификации модели по критериям отношения годовой продукции к среднегодовой биомассе, отношения среднегодовых численностей организмов и отношения массы выедаемых хищниками жертв за год к годовой продукции. Получены оценки верификационных критериев для модели и проведено их сравнение с аналогичными оценками, взятыми из литературы. Расхождение модельных и литературных оценок по верификационным критериям не превосходит 20%.
6. Для проведения вычислительных экспериментов реализован программный комплекс преимущественно на языке С++. Приведен механизм отображения структуры математической модели на архитектуру программного комплекса. Реализовано распараллеливание вычислений с помощью технологии OpenMP на четыре потока. На тестовых экспериментах эффективность распараллеливания составляет 75%.
7. Проведены вычислительные эксперименты для исследования поведения модели. Получено, что моделируемый процесс приходит к годовым колебаниям численности, а распределение организмов по области моделирования неравномерно.
8. Исследовано влияние различных факторов на динамику популяций. Показано, что годовые колебания являются следствием зависимости коэффициентов рождаемости голомянок от сезона. Неравномерность распределения особей по области моделирования обусловлена перемещением организмов под действием течений.
9. Проведен вычислительный эксперимент для вымирания макрогектопуса в 10 раз на севере озера. Показано, что в этом случае динамика популяций в областях с начальным возмущением численности организмов восстанавливается спустя 20 лет.
10. Исследована зависимость динамики численности организмов от постоянно действующих локализованных загрязнений. Показано, что при превышении интенсивности загрязнения значения 10, происходит полное вымирание организмов, а в случае, если интенсивность загрязнения лежит между 0,03 и 5, то будет увеличено число макрогектопуса и уменьшено число голомянок. Если же интенсивность загрязнения не превосходит 0,03, то его влияние не заметно на фоне естественных процессов.