Population Modeler: программа для индивидуум-ориентированного моделирования сообществ взаимодействующих особей
Программа Population Modeler предназначена для проведения численных экспериментов с вероятностными моделями сообществ особей, удовлетворяющих следующим предположениям:
-
все сообщество поделено на несколько популяций;
-
каждая особь сообщества охарактеризована своим набором параметров, количество и семантика параметров определяются популяцией, к которой принадлежит особь;
-
изменение состояния сообщества (рождение и гибель особей, изменение параметров особей) происходит скачкообразно в случайные моменты времени;
-
скачки состояния сообщества могут быть вызваны взаимодействиями или переходами;
-
взаимодействия — это "незаплпнированные" изменения состояния сообщества:
-
моменты возникновения взаимодействий описываются пуассоновским потоком, интенсивность которого зависит от состояния сообщества;
-
вероятность выбора особи в качестве участника взаимодействия и результат взаимодействия могут зависеть от параметров особей;
-
переходы — это "запланированные" изменения состояния сообщества:
-
моменты возникновения переходов описываются ветвящимся процессом типа Беллмана–Харриса с несколькими типами частиц, в котором тип частицы интерпретируется как тип перехода;
-
цепь переходов может быть инициирована в момент рождения особи или в момент взаимодействия особей;
-
распределение времени между переходами и результат перехода могут зависеть от параметров особей.
В частности, при помощи данной программы можно рассчитывать реализации широкого класса ветвящихся случайных процессов с взаимодействием частиц и марковских случайных процессов как с дискретным так и с непрерывным временем.
Особенности реализации:
-
использован мультипликативный датчик случайных чисел с модулем 2128;
-
вычисления распараллеливаются по реализациям как в рамках одной ЭВМ, так и между несколькими ЭВМ, соединенных в локальную сеть;
-
разработаны специальные структуры данных, позволяющие рассчитывать сообщества в несколько миллионов особей;
-
разработаны эффективные контекстно-зависимые алгоритмы поиска ближайшего перехода, добавления и удаления особей;
-
использован алгоритм накопления ошибки для представления моментов времени (фактически этот алгоритм дает четверную точность представления времени);
-
кросплатформенность.
To reports list