Разработки СО РАН - каталоги программ и БД

Поиск по каталогам:

2014-04-21

Назначение: Библиотека "SPSL" ( Site Percolation on Square Latticeобеспечивает построение отдельных реализаций и выборочных совокупностей кластеров узлов на двух- и трёхмерных квадратных изо- и анизотропных перколяционных решётках при различных размерах и относительных долях достижимых узлов с (1,0)-окрестностью фон Неймана и (1,π)-окрестностью Мура.

Область применения: Компьютерное моделирование решёточной перколяции при исследовании полимеризации и гелеобразования, композитных материалов, процессов массопереноса в пористых средах и т.п.

Используемый алгоритм: Перколяционной решёткой в задачах решёточной перколяции называется однородный граф, взвешенный в вершинах (узлах) и/или рёбрах (связях) выборочной совокупностью некоторой (обычно равномерно распределённой) случайной величины. Кластером называется подмножество узлов и/или связей перколяционной решётки, связанное с заданным стартовым подмножеством узлов и/или связей.
Определяющее влияние на формирование кластера узлов оказывают радиус и вероятностные характеристики окрестности выделенного узла перколяционной решётки. 
(1,0)-окрестность фон Неймана на анизотропной квадратной решётке образована узлами, только одна координата которых отличается от координаты выделенного узла на единицу, а их достижимость задана неравенством uj<pj, где 0<uj<1 – псевдослучайный вес j-го узла окрестности; 0<pj<1 – j-ый компонент вектора относительных долей достижимых узлов.
(1,π)-окрестность Мура на анизотропной квадратной решётке образована узлами, хотя бы одна координата которых отличается от координаты выделенного узла на единицу, а их достижимость задана неравенством uj<pjj(π), где ρj(π) – неметрическое расстояние до j-го узла в окрестности Мура с показателем Минковского π. 
  • Функция ssTNd() выполняет построение кластера узлов для произвольного стартового подмножества на n-мерной квадратной решётке с анизотропной (1,pi)-окрестностью Мура.
  • Функции ssi20() и ssi30() выполняют построение кластера узлов для заданного стартового подмножества на изотропной двух- и трёхмерной квадратной решётке заданного размера с заданной долей достижимых узлов и (1,0)-окрестностью фон Неймана.
  • Функции ssa20() и ssa30() выполняют построение кластера узлов для заданного стартового подмножества на анизотропной двух- и трёхмерной квадратной решётке заданного размера с заданными долями достижимых узлов и (1,0)-окрестностью фон Неймана.
  • Функции ssi2d() и ssi3d() выполняют построение кластера узлов для заданного стартового подмножества на изотропной двух- и трёхмерной квадратной решётке заданного размера с заданной долей достижимых узлов и (1,pi)-окрестностью Мура.
  • Функции ssa2d() и ssa3d() выполняют построение кластера узлов для заданного стартового подмножества на анизотропной двух- и трёхмерной квадратной решётке заданного размера с заданными долями достижимых узлов и (1,pi)-окрестностью Мура.
  • Функции fssi20() и fssi30() рассчитывают распределение относительных частот узлов при заданном объёме выборки, заданном стартовом подмножестве на изотропной двух- и трёхмерной квадратной решётке заданного размера с заданной долей достижимых узлов и (1,0)-окрестностью фон Неймана.
  • Функции fssa20() и fssa30() рассчитывают распределение относительных частот узлов при заданном объёме выборки, заданном стартовом подмножестве на анизотропной двух- и трёхмерной квадратной решётке заданного размера с заданными долями достижимых узлов и (1,0)-окрестностью фон Неймана.
  • Функции fssi2d() и fssi3d() рассчитывают распределение относительных частот узлов при заданном объёме выборки, заданном стартовом подмножестве на изотропной двух- и трёхмерной квадратной решётке заданного размера с заданной долей достижимых узлов и (1,pi)-окрестностью Мура.
  • Функции fssa2d() и fssa3d() рассчитывают распределение относительных частот узлов при заданном объёме выборки, заданном стартовом подмножестве на анизотропной двух- и трёхмерной квадратной решётке заданного размера с заданными долями достижимых узлов и (1,pi)-окрестностью Мура. 
Функциональные возможности: Предельные размеры перколяционных решёток ограничены лишь разрядностью используемой версии операционной системы и размером доступной оперативной памяти.
 
Инструментальные средства создания: R версии 2.14.0, GCC версии 4.6.3
 
Реализации базовых алгоритмов для библиотеки "SPSL" были разработаны П.В. Москалевым [1] и описаны в работе [2]. 
  1. Moskalev P.V. SPSL: Site percolation on square lattice, CRAN.– 2012.– URL: http://cran.r-project.org/package=SPSL/ (online; accessed: 28.12.2012). R package version 0.1-8.
  2. Москалев П.В. Структура моделей перколяции узлов на трёхмерных квадратных решётках // Компьютерные исследования и моделирование.– 2013.– Т.5, №4.– С.607–622.– URL: http://crm.ics.org.ru/uploads/crmissues/crm_2013_4/13410.pdf
С регулярно обновляемыми результатами выполнения описанных в документации к библиотеке "SPSL" тестовых примеров на стендах с различной       
программно-аппаратной конфигурацией можно ознакомится по URL: http://cran.r-project.org/web/checks/check_results_SPSL.html        
2014-04-16

Назначение:  Библиотека "Voss" обеспечивает построение реализаций одно- и двумерных фрактальных броуновских функций на равномерных сетках с помощью классической и обобщённой версий алгоритма последовательных случайных сложений Фосса.

Область применения: Моделирование стохастических фрактальных структур, используемых в задачах потенциальной перколяции, при исследовании полимеризации и гелеобразования, процессов массопереноса в пористых средах, в эконофизике, анализе финансовых рынков и т.д.

Используемый алгоритм:

Фрактальный броуновский процесс (или функция) представляет собой обобщение винеровского случайного процесса на случай зависимых приращений.

Алгоритм последовательных случайных сложений основан на использовании рандомизированной системы итерированных функций: xk+1 = xk + Δxk, где k = 0, 1, ... – номер текущей итерации; Δxk ~ N(0, σk) – центрированное нормально распределённое псевдослучайное приращение; число точек определения реализации Nk = Nk-1/r определяется величиной коэффициента разбиения 0 < r < 1.

Базовая версия алгоритма последовательных случайных сложений была предложена Р. Фоссом [1] и предусматривала использование показательной функции распределения σk по итерациям: σk = σ0*rkH, где 0 < H < 1 – показатель Хёрста. Обобщение алгоритма последовательных случайных сложений разработано и реализовано П.В. Москалевым [2,3] и допускает использование произвольных функций распределения σk по итерациям (в библиотеке "Voss" по-умолчанию используется распределение Пуассона). 

  • Функции voss1d() и voss2d() выполняют построение одно- и двумерных реализаций фрактальных броуновских функций на равномерных сетках с помощью классического алгоритма случайных сложений Фосса.
  • Функции voss1g() и voss2g() выполняют построение одно- и двумерных реализаций фрактальных броуновских функций на равномерных сетках с помощью обобщённого алгоритма случайных сложений Фосса.
  1. Voss R.F. Random fractal forgeries // Fundamental algorithms for computer graphics.– Vol.17.– Berlin: Springer-Verlag, 1985.– P.805–835.
  2. Шитов В.В., Москалев П.В. О модификации алгоритма Фосса при моделировании внутренней структуры пористой среды // Журнал технической физики.– 2005.– Т.75, №2.– С.1–5.
  3. Moskalev P.V. Voss: Generic Voss algorithm (random sequential additions), CRAN.– 2012.– URL: http://cran.r-project.org/package=Voss/ (online; accessed: 04.06.2012). R package version 0.1-4.

Функциональные возможности: Предельные размеры генерируемых реализаций ограничены лишь разрядностью используемой версии операционной системы и размером доступной оперативной памяти.

Инструментальные средства создания: R версии 2.14.0

С регулярно обновляемыми результатами выполнения описанных в документации к библиотеке "Voss" тестовых примеров на стендах с различной программно-аппаратной конфигурацией можно ознакомится по URL: http://cran.r-project.org/web/checks/check_results_Voss.html

 

2014-04-10

Назначение – Библиотека "RIFS" обеспечивает построение и отображение реализаций предфрактальных множеств в Rn с помощью рандомизированной системы итерированных функций. 

Область применения – Компьютерное моделирование и анализ данных, обладающих фрактальной структурой.

Используемый алгоритм: Применяемая в библиотеке "RIFS" рандомизированная система итерированных функций (РСИФ) строится на основе формулы: xi+1 = (x+ muj*zj)/(1+muj), где xi – i-ая итерационная точка предфрактала; zj – j-ая псевдослучайная точка протофрактала Z, выбранная согласно распределению вероятностей P(Z); muj – коэффициент разбиения итерационных отрезков, соответствующий j-ой псевдослучайной точке Z.

Под протофракталом понимается множество точек Z вместе с множеством коэффициентов разбиения итерационных отрезков M и заданным распределением вероятностей P(Z), которое определяет характеристики порождаемого фрактала A. Под предфракталом понимается счетное множество точек Х, соответствующее выборке A и порождаемое в результате итераций РСИФ.
  • Функция R2ngon() вычисляет координаты вершин правильного многоугольника с заданным разбиением ребер, вписанного в окружность заданного радиуса и используемого в качестве протофрактального множества.
  • Функция preRIFS() выполняет построение предфрактального множества X в Rn с помощью РСИФ для дискретного протофрактального множества Z с произвольным распределением вероятностей P(Z) и переменным коэффициентом разбиения итерационных отрезков M=var.
  • Функция preRSum0() выполняет построение предфрактального множества X в Rn с помощью матрицы случайных сумм для заданного протофрактального множества Z с произвольным распределением вероятностей P(Z) и постоянным коэффициентом разбиения итерационных отрезков M=const.
  • Функция plotR2pre() выполняет визуализацию предфрактального множества X в R2 с описанием основных параметров порождающего протофрактального множества Z.

Базовая рандомизированная система итерированных функций была предложена и исследована А.Г. Буховцом с соавторами [1,2]. Алгоритм построения реализаций фрактальных структур на основе рандомизированной системы итерированных функций был реализован П.В. Москалевым и А.Г. Буховцом [3,4]. Алгоритм построения реализаций фрактальных структур на основе матрицы случайных сумм был реализован П.В. Москалевым, А.Г. Буховцом и Т.Я. Бирючинской [4]. 

  1. Буховец А.Г., Буховец Е.А. Моделирование фрактальных структур данных // Системы управления и информационные технологии.– 2008. – Т.33, №3.– С.4–7.
  2. Буховец А.Г., Бирючинская Т.Я., Буховец Е.А. Использование фрактальных моделей в задачах классификации // Системы управления и информационные технологии.– 2009. – Т.37, №3.1.– С.117–121.
  3. Москалев П.В., Буховец А.Г. О размерности подобия рандомизированной системы итеративных функций // Компьютерные исследования и моделирование.– 2012.– Т.4, №4.– С.681–691.
  4. Moskalev P.V., Bukhovets A.G., Biruchinskay T.Ya. RIFS: Random iterated function system, CRAN.– 2012.– URL: http://cran.r-project.org/package=RIFS/ (online; accessed: 04.06.2012). R package version 0.1-5.

Инструментальные средства создания – R версии 2.14.0.

2014-03-31

Назначение - Обеспечение интерфейса интеграции, позволяющего наполнять целевую БД  данными, полученными из различных источников на основании критериев выборки.

Область применения - Любая сфера бизнеса, где необходимо для наполнения БД получать данные из внешних систем (например, автомобильный дилер: получение данных по клиентам, автомобилям, маркам, моделям, модификациям, прайс-листам, запчастям и сервисным работам из внешней базы данных импортера с контролем целостности и релевантности).

Используемый алгоритм - Алгоритм разработан автором. В качестве алгорима обработки данных выступает логика разбиения синхронизируемых запросов на очередь и обработка этой очереди как в синхронном, так и асинхронном режимах, в зависимости от настройки пользователя. Для уменьшения нагрузки на программно-аппаратную часть реализована клиент-серверная архитекутура с основной обработкой очереди в системном сервисе, связь с которым клиентская часть поддерживает за счет очереди сообщений. Для уменьшения нагрузки на стандартные методы доставки сообщений в ОС  Windows  в очереди сообщений передаются только информация о состоянии сервиса интеграции (запущен или остановлен), времена начала и окончания синхронизации каждого из синхронизируемых запросов. Выборка релевантных записей для ускорения получения результатов строится на анализе последней даты изменения записи, получаемой из системной таблицы баз данных. Контроль целостности строится на рассчете контрольной суммы, отвечающей за содержимой таблицы. В случае, если синхронизируемый запрос получает данные не из реляционной базы данных, а из файла типа  XML,  релевантность записи определяется системными битами релевантности файла на жестком диске, что позволяет обрабатывать только актуальные записи на диске. Программное решение позволяет производить и настраивать через пользовательский интерфейс интеграцию с различными источниками данных, в качестве которых могут выступать как традиционные базы данных, так и файлы XML  типа. Задание синхронизации может выполняться как по расписанияю, так и по запросу. Запросы на получение данных могут редактироваться во встроенном редакторе запросов, изменения в котором применяются сразу же, без необходимости перезапуска процесса интеграции.

Функциональные возможности - На данный момент отсутствуют какие-либо ограничения на объем обрабатываемых данных. В процессе тестовых испытаний и опытной эксплуатации проводилась успешная интеграция и обработка данных суммарным объемом 898000 строк. Общая загрузка системы не превышала 10%  в пиковые периоды обработки данных. 

Более подробное описание функционала и методики работы - в прикрепленном файле.

Инструментальные средства создания - Microsoft Visual Studio 2012, EntityFramework, Microsoft Visual C++

2013-12-31

Назначение - Противодействие разрушающим воздействиям DoB (Depletion of Battery), направленным на быструю разрядку батареи сенсора в беспроводных сенсорных сетях.
Область применения - Обеспечение безопасности информационных технологий.

Используемый алгоритм - опубликован в статье: Vladimir V. Shakhov: Protecting Wireless Sensor Networks from Energy Exhausting Attacks. Lecture Notes in Computer Science, Volume 7971, 2013, pp 184-193. (ISSN0302-9743). Алгоритм основан на методе кумулятивных сумм для обнаружения «разладки» случайного процесса. 

Функциональные возможности -  Требуется настройка параметров алгоритма, в частности порогового значения, для того, чтобы запаздывание в обнаружении "разладки" было приемлемым в конкретном случае.  Априорная информация о характере распределения моментов возникновения «разладки» не требуется. Уменьшение порогового значения приводит к более быстрому обнаружению атаки, однако при этом увеличивается вероятность ложной тревоги. Во вложении имеется график зависимости оценики математического ожидания времени до объявления ложной тревоги от величины порога. Кроме того, в прилагаемом архиве содержится С++ файл (example_alg.cpp), демонстрирующий возможности программы  (создание потока случайных наблюдений, по которым делается вывод о наличии атаки, инициализация параметров атаки, вычисление порогового значения, обнаружение атаки)  и скриншот с результатом работы.  

Инструментальные средства создания - MSVC 2008, библиотека libRNGnet.