Populations Modeler

Работа выполнена при финансовой поддержке РФФИ (проект №09-01-00098-A) и СО РАН (интеграционный проект №26)

Оглавление

Описание библиотеки

Базовые предположения

Библиотека Populations Modeler предназначена для проведения численных экспериментов с моделями сообществ особей, удовлетворяющих следующим предположениям:

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

Примеры параметров: пол, масса, стадия развития, ...

Переходы

Переход — это "запланированное" изменение состояния сообщества.

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

Примеры переходов: вступление в половозрелую стадию, производство потомства, гибель в результате старения, ...

Взаимодействия

Взаимодействие — это "незапланированное" изменение состояния сообщества.

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

Примеры взаимодействий: конкуренция, хищничество, воздействие среды, ...


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

Особенности реализации

Работа над этой версией программы началась в 2009 году и продолжается до сих пор.

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

Файлы для скачивания

Библиотека pm.jar

Пример 1. Демонстрационное сообщество

В данном примере реализовано следующее сообщество.
  • В начальный момент времени состояние сообщества n = 100.
  • С интенсивностью 1 состояние сообщества увеличивается на 1: n = n + 1.
  • С интенсивностью 2 состояние сообщества увеличивается на 2: n = n + 2.
  • С интенсивностью 3 состояние сообщества увеличивается на 3: n = n + 3.
  • В начальный момент времени происходит событие DemoEvent, в результате которого:
    • состояние сообщества уменьшается на 1: n = n - 1;
    • планируется возникновение события DemoEvent через единицу времени;
    • с вероятностью 0.5 планируется возникновение события DemoEvent через случайное время, распределённое равномерно на промежутке (0; 2).

  • Скачать готовый проект для JetBrains IDEA: [01-demo.7z]

Пример 2. Модель популяции под воздействием токсичных веществ

В этом примере представлена модель, описанная в статье

Н. В. Перцев, Б. Ю. Пичугин, К. К. Логинов, Статистическое моделирование динамики популяций, развивающихся в условиях воздействия токсичных веществ, Сиб. журн. индустр. матем., 14:2 (2011), 84–94. (Статья поступила: 03.06.2010) [pdf]

  • Скачать готовый проект для JetBrains IDEA: [02-poison.7z]

Пример 3. Модель распространения туберкулеза

В этом примере представлена модель, описанная в статье

Н. В. Перцев, Б. Ю. Пичугин, Индивидуум-ориентированная стохастическая модель распространения туберкулеза, Сиб. журн. индустр. матем., 12:2 (2009), 97–110. (Статья поступила: 24.09.2008) [pdf]


 

Вернуться на главную страницу