Разбиение изображений на односвязные области с помощью алгоритма кластеризации

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR15003
Дата регистрации в ФАП: 
2015-05-19
Тематическая направленность: 
Анализ изображений
Разработчики программы (базы данных): 
Аннотация: 

Назначение  Программа предназначена для поиска односвязных областей на изображении.

Область применения  Задача выделения односвязных областей на изображении является актуальной при решении многих прикладных задач: обработка спутниковых фотографий поверхности земли, обработка снимков биологических объектов под микроскопом, обработка медицинских данных, локализация текста на изображениях. Полученные односвязные области на изображении могут быть использованы для дальнейшего анализа изображения (например, для распознавания образов).

Используемый алгоритм  Набор пикселей исходного изображения преобразуется в множество точек векторного пространства RGBXY (три цветовые координаты и две пространственные). Цветовые координаты каждой точки нормализуются.

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

Для изображения ищется самый популярный интервал цветов. На изображении находится точка, попадающая в самый популярный интервал цветов, и имеющая одну соседнюю точку такого же цвета. Данная точка выбирается в качестве начальной для алгоритма кластеризации. По всем точкам строится минимальное остовное дерево. Для начальной точки и всех точек, не присоединённых к дереву, вычисляется расстояние между точками. Точка с наименьшим расстоянием до начальной точки присоединяется к дереву ребром с весом, равным данному расстоянию. Далее для всех точек (вершин) в дереве вычисляются расстояния для всех «неиспользованных» точек, а точка с наименьшим расстоянием присоединяется к дереву. Алгоритм продолжается пока все точки не будут присоединены к дереву. Для выделения односвязных областей требуется разбить данное дерево на поддеревья. Для этого начнём удалять рёбра с весом больше некоторого порога t . После этого дерево разбивается на поддеревья, представляющие собой односвязные области на изображении. В алгоритме выполняется проверка, что размер полученных кластеров после разбиения превышает некоторый порог minimum_cluster_size; если размер кластера меньше данного порога, ребро, удаление которого привело к такому разбиению, не удаляется. Таким образом, на каждой новой итерации алгоритм производит более глубокую кластеризацию. Подробное описание алгоритма - в статье [1].

[1] Белим С.В., Кутлунин П.Е. Использование алгоритма кластеризации для разбиения изображения на односвязные области // Наука и образование: электронное научно-техническое издание, 2015, №.3, URL: http://technomag.bmstu.ru/doc/759275.html].

Функциональные возможности  Изображение размером 256х256 пикселей на компьютере с двухъядерным процессором Intel Core i5 2.26GHz обрабатывается около 3 минут. Минимальное остовное дерево для этого изображения занимает в памяти 12 Мб. Ограничений со стороны алгоритма на размер обрабатываемого изображения не накладывается.

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

На вход подаётся 5 обязательных параметров:

1) file_name - путь к изображению, которое необходимо разбить на односвязные области;

2) r_coefficient - коээфициент уменьшения расстояния между рёбрами. Рёбра, превышающие значение r_coefficient * MAX_DISTANCE на очередной итерации, удаляются из дерева, тем самым распадаясь на поддеревья, представляющие собой односвязные области на исходном изображении. MAX_DISTANCE - максимальное расстояние между двумя рёбрами в исходном остовном дереве;

3) percent - процент от MAX_DISTANCE, при достижении значения которого алгоритм останавливает свою работу;

4) minimum_cluster_size - ограничение на минимальное количество пикселей в односвязной области;

5) color_intervals - количество цветовых интервалов, используемое для определения наиболее популярного для исходного изображения интервала и выбора первоначальной точки для построения дерева из этого цветового интервала.

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

Инструментальные средства создания  Программа написана на языке Java. Для написания использовались стандартные библиотеки классов JDK, в том числе классы из пакетов java.awt и javax.imageio для работы с изображениями.

Вложение  Прикреплён архив imagesegmentationexample.zip, в котором представлены результаты работы программы для изображения «Перцы» размером 100х100 пикселей. Программа запускалась со следующими параметрами: r_coefficient=0,8; percent=5; minimum_cluster_size=30; color_intervals=16.

Внутри архива папка level7 содержит результаты кластеризация изображения на седьмом уровне кластеризации. 

Использованные при разработке материалы: 
Белим С.В., Кутлунин П.Е. Использование алгоритма кластеризации для разбиения изображения на односвязные области // Наука и образование: электронное научно-техническое издание, 2015, №.3, URL: http://technomag.bmstu.ru/doc/759275.html
Регистрационный номер в Роспатенте: 
№2015614744 от 28.04.2015
Признак доступности программы (базы данных): 
доступ по запросу
Требования к аппаратным и программным средствам: 

установленная JRE версии не ниже 1.6
ОП: 256 Мб
ОС: любая, поддерживающая JVM.

Контактная информация: 
kutlunin.pavel@gmail.com

Вычисление вероятностных характеристик решения систем со случайной структурой с распределенными переходами методом Монте-Карло

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14020
Дата регистрации в ФАП: 
2014-12-31
Тематическая направленность: 
Математическое моделирование. Статистическое моделирование. Численные методы решения систем со случайной структурой
Разработчики программы (базы данных): 
Аннотация: 

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

Область применения: Программа рассчитана на математиков – вычислителей и может быть использована для моделирования   динамических систем (модели которых заданы системами со случайной структурой с распределенными переходами) в  различных областях науки - автоматическом управлении, статистической механике, химии, медицине, радиотехнике, теории надежности и др.

Используемый алгоритм: Для моделирования решения используется алгоритм на основе обобщенного метода Эйлера и метода максимального сечения [1].

Оцениваются следующие вероятностные характеристики решения:

  • условные: первый, второй момент и дисперсия для каждой структуры;
  • безусловные: первый, второй момент и дисперсия; вероятности состояний;
  • плотность вероятности для каждой структуры;
  • одномерная плотность распределения.

Вектор состояния Y(t) в каждой l-й структуре задан автономными стохастическими дифференциальными уравнениями (СДУ) в смысле Ито

dY(t) = A_l(Y(t))*dt + B_l(Y(t))*dW(t), где 

    Y(t) - вектор состояния системы (размерности n);

   W(t) - вектор независимых стандартных винеровских процессов (размерности m);

   A_l(Y) - известные векторные функции размерности n (снос);

   B_l(Y) - известные матричные функции размерности n x m (диффузия).

Интенсивности переходов зависят от времени и заданы матричной функцией V размерности lk x lk, где lk – число структур. Предполагается, что в начальный момент времени Т0 известно распределение вектора состояния системы Y(T0) и номер начальной структуры l(T0).

1. Т.А. Аверина. Статистический алгоритм моделирования динамических систем с переменной структурой  // Сиб. ЖВМ, 2002, т. 5, № 1, сс. 1-10.

В приложении находятся два файла:

1.  test_random_str_2014.pdf - Описание основного алгоритма и демонтстрация вычисленных вероятностных характеристик тестового примера: решалась задача стабилизации малого искусственного спутника, находящегося под действием гравитационного и управляющего моментов;

2.  random_structure_2014.rar - .заархивированные файлы программы и ее описания.
Инструментальные средства создания - Язык программирования Фортран ...

Версия регистрируемой программы (базы данных): 
1.0
Использованные при разработке материалы: 
Использовался датчик псевдослучайных чисел rnd128 http://osmf.sscc.ru/~mam/parmonc_rus.html
Признак доступности программы (базы данных): 
полностью свободный доступ
Требования к аппаратным и программным средствам: 

Windows 8.1

Контактная информация: 
e-mail автора: ata@osmf.sscc.ru

Вычисление статистических текстурных признаков изображения системы CONTEXT

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14018
Дата регистрации в ФАП: 
2014-12-31
Тематическая направленность: 
Обработка и анализ изображений и сигналов. Обработка и анализ данных дистанционного зондирования Земли
Разработчики программы (базы данных): 
Аннотация: 

Назначение: программа предназначена для вычисления и сохранения в виде raw-файла текстурных признаков CONTEXT для всех пикселей полутонового изображения.

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

Используемый алгоритм - Вычисляются статистические текстурные признаки CONTEXT, определяемые в пикселе  как гистограмма уровней серого тона в его окрестности [1]. Использование признаков  CONTEXT для неконтролируемой классификации изображений леса на аэроснимках с помощью алгоритма [2] описано и иллюстрировано на сайте http://loi.sscc.ru/lab/RFFI2013/RU/sidorova_separability_TEXTURA.htm. Использование контекстных характеристик требует предварительного  сокращения размерности и квантования пространства спектральных признаков. 

Достоинство контекстной характеристики состоит в том, что в отличие от общепринятой одноканальной текстуры, может быть рассмотрена «цветная», многоспектральная. Кроме того, в качестве текстурных признаков непосредственно используются значения гистограммы в окрестности пикселя (а не формируются из нее сложные, долго вычисляемые формы).  

На сайте проиллюстрировано применение признаков для автоматизации распознавания леса на аэроснимках определенного масштаба. Наземная таксация (точное выборочное измерение параметров деревьв и характеристик лесных сообществ) осуществляется лесоводами в наиболее однородных частях контуров, построенных визуальным дешифрированием. Однако, визуальному дешифрированию свойствен субъективизм. Автоматизация в описании текстур и сегментации изображения позволяет избежать этого недостатка.  Полученные карты кластеров по признакам CONTEXT оказались очень похожими на аналогичные карты по признакам модели SAR. Новая карта несколько больше соответствует карте наземной таксации: лиственные насаждения разделились по кластерам более точно, меньшим оказалось как общее число кластеров, так и число кластеров с узкими сегментами, находящимися на границах различных тексту в плоскости изображения.

1.     Gong P and P Howarth Frequency base classification and grey level vector reduction for land use identification. // PE&RS, Vol.58, No.4, April 1992, PP.423-437

2.      V. S. Sidorova. Detecting Clusters of Specified Separability for Multispectral Data on Various Hierarchical Levels. // Pattern Recognition and Image Analysis, 2014, Vol. 24, No. 1, pp. 151–155...

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

Принципиальных ограничений на память программа не имеет. Только объем памяти используемого компьютера может ограничить размер обрабатываемого файла.

Инструментальные средства создания - Алгоритм реализован в программной среде системы объектно-ориентированного программирования Visual C++ версии 5.0 фирмы Microsoft c библиотекой классов MFC, разработанной для ОС Windows. При разработке программы  использовался механизм многодокументного интерфейса MDI.

Использованные при разработке материалы: 
Visual C++ версии 5.0 фирмы Microsoft
Признак доступности программы (базы данных): 
доступ по запросу
Требования к аппаратным и программным средствам: 

ОС Windows
1.6 ГГц 512 МБ
BMP файлы, raw-файлы

Контактная информация: 
VSidorova@inbox.ru, svs@ooi.sscc.ru

Квантование векторного пространства спектральных признаков с сохранением ячейки квантования в форме гиперкуба

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14019
Дата регистрации в ФАП: 
2014-12-31
Тематическая направленность: 
Классификация многомерных наблюдений
Разработчики программы (базы данных): 
Аннотация: 

Назначение - программа предназначена для квантования и сокращения размерности векторного пространства спектральных признаков изображения.

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

Используемый алгоритм - Данные дистанционного зондирования Земли могут иметь большой объем и размерность (число спектральных каналов). Актуальной является задача предварительного сокращения этого объема, например,  в задачах кластеризации или классификации. Обычно каждый спектральный канал представлен 8-битовым машинным словом, т.е. уровень серого тона может пробегать целочисленные значения от 0 до 256. Квантование означает, что размер ячейки квантования увеличивается с уменьшением числа уровней квантования, благодаря этому исходные вектора объединяются. При этом число уровней квантования по каждому каналу может быть разным. Чтобы определить их соотношение, строится ковариационная матрица спектральных векторов данных, затем определяются собственные значения матрицы. Для нахождения собственных чисел и векторов ковариационной матрицы векторов признаков используется метод Якоби [1].  При квантовании для меньшей потери информации ячейка квантования в собственном пространстве (ортонормированном) векторов  должна оставаться гиперкубической. При этом условии разброс данных по каждому направлению, определяемый соответствующим собственным числом, должен быть пропорционален числу уровней квантования. Сохраняя число уровней серого по каждой оси собственного пространства  целым числом от 0 до 255, мы получим максимально возможное число уровней равным 256 и минимальное для задач классификации 2. Учитывая вышесказанное, если отношение какого-либо собственного числа к максимальному меньше 1/128, то соответствующая ось собственного пространства может не рассматриваться. Для задачи кластеризации часто требуется максимальное число уровней квантования существенно меньшее 256, поэтому число отсеченных осей возрастет. Соответственно размерность пространства, связанная таким образом с детальностью рассмотрения, уменьшится [2]. Исходное изображение данной программой переписывается в новой системе координат собственного пространства в виде raw-файла.           

Описание применения для сокращения размерности  и кластеризации [3] по картированию промышленных загрязнений [4] на сайте http://loi.sscc.ru/lab/WEBLAB/InfresLab2013/sidorova_pollution.htm. Рассматривалось изображение Омской области (около 57 Мбайт)  в семи спектральных каналах со спутника ИСЗ  “ Landsat-8” (разрешение 15 м, получен 08.02.2014). Предварительно было осуществлено сокращение  размерности векторного пространства спектральных признаков с семи до трех. Этого оказалось  достаточно для требуемой детальности кластеризации. Детальность, различная по полученным кластерам,  определялась делимым иерархическим гистограммным  алгоритмом [3] для предельной отделимости кластеров d=0.15  (0<d<1).

1.     Н.Н. Калиткин. Численные методы.  под ред. А.А. Самарского. Москва “Наука” 512 с  1978.

2.     V.S. Sidorova. Contextual Clustering Multispectral Data of Remote Sensing the Earth. Труды Международной научной  конференции. “Актуальные проблемы вычислительной и прикладной математики 2014” Июнь 8-11, 2014, Академгородок, Новосибирск, Россия. С. 108.

3.     V.S. Sidorova. Detecting Clusters of Specified Separability for Multispectral Data on Various Hierarchical Levels. Pattern Recognition and Image Analysis, 2014, Vol. 24, No. 1, pp. 151–155.         (SCOPUS)

4.     Программа фундаментальных исследований по стратегическим направлениям развития науки Президиума РАН № 43.

Функциональные возможности - Принципиальных ограничений на память программа не имеет. Только объем памяти используемого компьютера может ограничить размер обрабатываемого файла. Обработка изображения производится при построчном сканировании его. 

Инструментальные средства создания - Алгоритм реализован в программной среде системы объектно-ориентированного программирования Visual C++ версии 5.0 фирмы Microsoft c библиотекой классов MFC, разработанной для ОС Windows.

Использованные при разработке материалы: 
VisualC++ версии 5.0 фирмы Microsoft
Признак доступности программы (базы данных): 
доступ по запросу
Требования к аппаратным и программным средствам: 

ОС Windows
1.6 ГГц 512 МБ
BMP файлы, raw-файлы

Контактная информация: 
vsidorova@inbox.ru, svs@ooi.sscc.ru

Тренажер с посимвольным контролем процесса решения линейного дифференциального уравнения методом Бернулли-Фурье

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14016
Дата регистрации в ФАП: 
2014-12-30
Тематическая направленность: 
Обучающие программы
Разработчики программы (базы данных): 
Аннотация: 

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

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

Используемый алгоритм: в массиве строк размещено решение произвольного линейного дифференциального уравнения со всеми промежуточными действиями, полученного с помощью метода Бернулли-Фурье. Для каждого символа фиксируется информация о том, в каком месте формулы он находится. Последовательность таких символов определяет эталонное решение, с которым сравниваются вводимые символы. К эталонному решению добавлено несколько исключений, устраняющих неоднозначность при расположении вводимых символов в текущей формуле. Подробнее алгоритм изложен в статье [1].

[1] Попов А.А. Методика программирования на языке Java тренажеров по математике с посимвольным контролем аналитических преобразований. Программная инженерия, 2012, №8, с.38-43.

Функциональные возможности: случайно генерируется более 100 шаблонов линейных дифференциальных уравнений, содержащих различные варианты функций из таблицы производных. В каждый шаблон кроме табличных функций включаются их аргументы в виде квадратичной или линейной функции со случайно генерируемыми коэффициентами. Различия в функциях и их аргументах обеспечивают случайный выбор интегрируемого уравнения из объема, содержащего не менее 10000 различных уравнений.

Инструментальные средства создания: программы написаны на языке Java с использованием среды Eclipse

Во вложении архивный файл TrainBernulli.rar содержит 7 файлов: файл с расширением .bat необходим для загрузки файла с основным классом TrainBernulli.class, который в процессе выполнения использует остальные классы. В файле TrainBernulli.doc проиллюстрированы основные моменты работы программы.

Версия регистрируемой программы (базы данных): 
1.0
Использованные при разработке материалы: 
Не использовались материалы, являющиеся объектами авторского права
Признак доступности программы (базы данных): 
полностью свободный доступ
Требования к аппаратным и программным средствам: 

Операционная система не ниже Windows XP Professional и соответствующая операционной системе виртуальная Java машина

Контактная информация: 
apopov@vvoi.ru

Интерактивная иллюстрация процесса решения линейного дифференциального уравнения методом Бернулли-Фурье

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14017
Дата регистрации в ФАП: 
2014-12-30
Тематическая направленность: 
Обучающие программы
Разработчики программы (базы данных): 
Аннотация: 

Назначение - для иллюстрации процесса решения линейного дифференциального уравнения первого порядка методом Бернулли-Фурье с добавлением по одному символу после временной задержки.

Область применения - для сопровождения лекций и практических занятий по дифференциальным уравнениям.

Используемый алгоритм - в массиве строк размещено решение произвольного линейного дифференциального уравнения методом Бернулли-Фурье от формулировки исходного уравнения до записи общего решения со всеми промежуточными формулами. Строки включают управляющие символы, позволяющие в графическом представлении аналитических преобразований ту или иную часть строки разместить в числителе или знаменателе дроби, вне дроби или под радикалом. Информация о каждом графическом символе, в том числе и о горизонтальных и вертикальных линиях, входящих в формулу, фиксируется в массивах. Счетчик выведенных на экран символов изменяется с некоторой временной задержкой, обеспечивая посимвольный вывод всех преобразований. Более подробно алгоритм изложен в статье [1].

[1] Попов А.А. Методика программирования на языке Java тренажеров по математике с посимвольным контролем аналитических преобразований. Программная инженерия, 2012, №8, с.38-43.

Функциональные возможности - программа управляется 4 клавишами и является электронным эквивалентом процесса написание символов на аудиторной доске. Случайно генерируется более 100 шаблонов линейных дифференциальных уравнений, содержащих различные варианты функций из таблицы производных. На основе данных шаблонов генерируются различные линейные дифференциальные уравнения с подробными решениями, на примере которых можно проиллюстрировать метод Бернулли-Фурье и дополнительно процедуру подведения функции под знак дифференциала.

Инструментальные средства создания - программы написаны на языке Java с использованием среды Eclipse

Во вложении запакованный файл IllustrBernulli.rar содержит 7 файлов: файл с расширением .bat необходим для загрузки файла с основным классом IllustrBernulli.class, который в процессе выполнения использует остальные классы.В файле IllustrBernulli.doc проиллюстрированы основные моменты работы программы.

Версия регистрируемой программы (базы данных): 
1.0
Использованные при разработке материалы: 
Не использовались материалы, являющиеся объектами авторского права
Признак доступности программы (базы данных): 
полностью свободный доступ
Требования к аппаратным и программным средствам: 

Операционная система не ниже Windows XP Professional и соответствующая операционной системе виртуальная Java машина

Контактная информация: 
apopov@vvoi.ru

SphereGenerator3D. Моделирование и расчет дисперсии плотных упаковок шаров

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14014
Дата регистрации в ФАП: 
2014-12-22
Тематическая направленность: 
Физика. Математика. Плотные упаковки шаров
Заявитель: 
Разработчики программы (базы данных): 
Аннотация: 

Назначение - Программа представляет собой электронный конструктор, позволяющий моделировать плотные упаковки шаров, заполняющих сферу. Можно производить расчет дисперсии как для одного, так и для большого колличества построений в автоматическом режиме.

Область применения - Программа может быть использована в  области физики, материаловедения, математики.

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

Теория плотных упаковок и алгоритмы построения для них описаны в [1,2,3].

1. Sloane, N. J. A. (1998). "The Sphere-Packing Problem".Documenta Mathematika 3: p. 387–396.

2. В. М. Сидельников. О плотнейшей укладке шаров на поверхности n-мерной евклидовой сферы и числе векторов двоичного кода с заданным кодовым расстоянием. Доклады АН СССР, 1973, т. 213, № 5, с. 1029–1032

3. O’Toole, P. I.; Hudson, T. S. (2011). "New High-Density Packings of Similarly Sized Binary Spheres". The Journal of Physical Chemistry C 115 (39): 19037.

Реализованный в программе алгоритм разработан автором  и заключается в следующем:

  • Упорядоченная плотная упаковка шаров (послойная). Представляет собой заполнение большого шара слоями малых шаров. Алгоритм: построение каждого слоя начинается с края окружности каждого слоя с последующим уменьшением расстояния до центра слоя.
  • Упорядоченная плотная упаковка шаров (кубическая). Представляет собой обычную кубическую упаковку, вложенную в шар. Алгоритм: вокруг каждого шара строится строится восемь окружающих его шаров.
  • Неупорядоченная плотная упаковка шаров в сферических координатах. Представляет собой неплотную упаковку шаров, расположенных случайным образом. Алгоритм: построение нескольких шаров осуществляется случайным образом, затем построение в сферических координатах.
  • Неупорядоченная плотная упаковка шаров на основе кубической. Представляет собой неплотную упаковку шаров расположенных случайным образом. Алгоритм: построение нескольких шаров осуществляется случайным образом, затем построение по принципу кубической упаковки.
  • Неупорядоченная упаковка шаров с малой плотностью. Алгоритм: Построение шаров случайным образом. Число генерирования координат в 1000 раз превышает отношение кубов радиусов большого и малого шаров (R1)3/(R2)3 .
  • Неупорядоченная упаковка шаров со средней плотностью. Алгоритм: Построение шаров случайным образом. Число генерирования координат в 10000 раз превышает отношение кубов радиусов большого и малого шаров (R1)3/(R2)3 .
  • Неупорядоченная упаковка шаров с большой плотностью. Алгоритм: Построение шаров случайным образом. Число генерирования координат в 100000 раз превышает отношение кубов радиусов большого и малого шаров (R1)3/(R2)3 .

Функциональные возможности

   С помощью данной программы можно:

         - осуществлять различные построения плотных упаковок;

         - осуществлять обзор упаковок в режиме 3D;

         - сохранять абсолютно точное изображение упаковки.

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

         - шары пожно строить полностью или строить только их центры координат;

         - предусмотрена защита от столкновений и наложений внутренних шариков;

         - работа с объектами происходит в реальном времени;

         - автоматический расчет дисперсии для большого числа случаев;

         - удобные настройки построения объектов.         

Инструментальные средства создания - Среда программирования Delphi 7.0

Версия регистрируемой программы (базы данных): 
1.8
Использованные при разработке материалы: 
Использовались материалы, не являющиеся объектами авторского права
Признак доступности программы (базы данных): 
доступ по запросу
Требования к аппаратным и программным средствам: 

Поддерживаемые ОС: Windows XP/Vista/7/8
Процессор с тактовой частотой 1,5 ГГц и выше
Разрешение экрана: не менее 1024х768 пикселей

Контактная информация: 
mr__chester@mail.ru

Тест Люка-Лемера для сверхбольших чисел Мерсенна

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14015
Дата регистрации в ФАП: 
2014-12-24
Тематическая направленность: 
Теория чисел
Разработчики программы (базы данных): 
Аннотация: 

Назначение - Тест проверяет принадлежность к простым числам сверхбольших чисел Мерсенна.
 

Область применения - Теория чисел, тестирование производительности вычислительных систем.
 

Используемый алгоритм - Используется  алгоритм теста Люка-Лемера, в котором сверхбольшие числа представлены в виде динамических линейных массивов в двоичной системе счисления. Арифметические операции над числами выполняются по алгоритмам длинной арифметики. Поиск очередного самого большого простого числа   Мерсенна вида 2PM - 1 , где РM, в свою очередь, простое число, принимающее значения более 57 млн, является весьма трудоемкой задачей. В соответствии с тестом Люка-Лемера выполняется (PM -2) итераций цикла, на каждой из которых определяется целочисленный остаток от деления на число Мерсенна. Эта операция и определяет в основном трудоемкость теста. Только при представлении чисел в двоичной системе счисления представляется возможность упростить эту операцию до одной элементарной операции сложения. 

В программе реализован разработанный авторами алгоритм вычисления целочисленного остатка при делении на сверхбольшое чисто Мерсенна в двоичной системе счисления.  Целочисленный остаток в двоичной системе счисления определяется как сумма двух частей в записи делимого. Первая часть записи от разряда единиц (нулевой разряд) до разряда с номером (PM - 1), где PM - показатель степени числа Мерсенна. Вторая часть записи от разряда с номером PM и до старшего разряда в записи делимого. Использование данного алгоритма позволяет существенно снизить трудоемкость теста Люка-Лемера и время работы программы.

Алгоритм описан в статье Гончаренко В.Е. "Оптимизация вычислений целочисленного остатка в тесте Люка-Лемера для сверхбольших чисел Мерсенна" в сборнике статей Международной научно-практической конференции "Теоретические и практические вопросы науки XXI века", 2014 г., г. Уфа, Ч2.

Функциональные возможности - Функциональные возможности могут быть ограничены размером свободной динамической памяти ЭВМ. Размер используемых в программе двух динамических линейных массивов равен значению степени PM числа Мерсенна, которое в современных вычислениях принимает значение более 57 млн. В программе предусматривается проверка достаточности оперативной памяти для текущих вычислений.

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

Во Вложении прикреплен файл исходного кода программы на языке C++.

Версия регистрируемой программы (базы данных): 
исходный код на С++
Название составного произведения: 
-
Использованные при разработке материалы: 
-
Регистрационный номер в Роспатенте: 
№2014660821 от 16 октября 2014 г., авторы Гончаренко В.Е. и Тихонов А.А.
Признак доступности программы (базы данных): 
свободный доступ для пользователей СО РАН
Требования к аппаратным и программным средствам: 

Совместимые с IBM PC

Контактная информация: 
V_E_G_A@mail.ru

Численный метод решения совмещенной обратной задачи для уравнений мелкой воды

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14013
Дата регистрации в ФАП: 
2014-11-10
Тематическая направленность: 
Математическое моделирование. Обратные задачи. Волновые уравнения
Разработчики программы (базы данных): 
Аннотация: 

Назначение. Программа предназначена для уточнения формы источника цунами по двум типам измерений высоты возмущения водной поверхности океана: точечные (надводные буи DART (Deep-ocean Assessment and Reporting of Tsunamis)) и пространственные (альтиметрические спутниковые) измерения.

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

Используемый алгоритм:
В работе используется градиентный метод решения обратных задач (метод сопряженных градиентов) для волнового уравнения, основанный на решении соответствующей сопряженной задачи [1-3].

В программе есть возможности  решения задач:

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

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

[1] S.I. Kabanikhin, M.A. Bektemesov, D.B. Nurseitov, O.I. Krivorotko, A.N. Alimova. An optimization method in the Dirichlet problem for the wave equation // Journal of Inverse and Ill-Posed Problems, V. 20, N. 2, 2012, pp. 193-211.
[2] S.I. Kabanikhin, A. Hasanov, I.V. Marinin, O.I. Krivorotko, D. Khidasheli. A variational approach to reconstruction of an initial tsunami source perturbation // Applied Numerical Mathematics, V. 83, 2014, pp. 22-37.
[3] S.I. Kabanikhin, O.I. Krivorotko. Optimization approach to combined inverse tsunami problem // Proceedings conference Inverse Problems – from Theory to Applications (IPTA2014), Bristol, UK, 26-28 August, 2014, pp. 102-107.

Функциональные возможности подробно описаны в Инструкции в Приложении. Рекомендуется не задавать области размером более 100х100 километров, дабы ограничить время выполнения программы до 30 минут. Для визуализации результата в качестве примера приведены исполнительные файлы отрисовки в Gnuplot.

Инструментальные средства создания: программа разработана на языке программирования Fortran 90 в среде разработки Visual Studio 2010 с использованием функций BLAS и LAPACK библиотеки Intel Math Kernel Library и открытого стандарта для распараллеливания программ OpenMP.

В приложении находятся два файла:
1. instrukciya-sovmeshchennaya_obratnaya_zadacha.pdf - описание алгоритма и программы.
2. combenditp.rar - архив, содержащий 5 файлов:

Interface_CombinedITP.exe - исполняющий файл-форма, генерирующая входные параметры и вызывающая расчетный модуль.

OMITP.exe - расчетный математический модуль. Запускается автоматически файлом Interface_CombinedITP.exe.

Model_Bath.dat - тестовый файл, описывающий входную функцию дна (двумерный массив).

Plot2D.plt - исполняющий файл, позволяющий отрисовывать в формате *.eps выходные одномерные файлы как двумерные графики.

Plot3D_result.plt - исполняющий файл, позволяющий отрисовывать в формате *.eps входные и выходные двумерные файлы как трехмерные графики.

Версия регистрируемой программы (базы данных): 
1
Использованные при разработке материалы: 
BLAS и LAPACK библиотеки Intel Math Kernel Library
Признак доступности программы (базы данных): 
свободный доступ для пользователей СО РАН
Требования к аппаратным и программным средствам: 

Компьютер типа Intel Core 2 Duo (и выше) с операционной системой Windows XP и выше и оперативной памятью от 1 Гб. Для визуализации результата советуем иметь программу Gnuplot.

Контактная информация: 
krivorotko.olya@mail.ru

Приближенное вычисление несвязности высоконадежного планарного графа с весами на ребрах

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR14012
Дата регистрации в ФАП: 
2014-09-16
Тематическая направленность: 
Задачи на графах и сетях. Случайные графы
Аннотация: 

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

Программа является модификацией программы "Приближенное вычисление несвязности планарного графа с высоконадежными ребрами" http://fap.sbras.ru/node/4086. В её основе лежат аналогичные асимптотические отношения, параметры которых определяются с помощью разработанного алгоритма построения двойственного графа (файл Инструкция №2 в Приложении).  Однако наравне с существенным сокращением числа арифметических операций, данная модификация позволяет обрабатывать сети с различными весами на ребрах, что значительно расширяет класс рассматриваемых соединений и область применения программы.

[1] G.Sh. Tsitsiashvili, A.S. Losev, M.A. Osipova.  Disconnection probability of planar weighted graph // Applied Mathematical Sciences, Vol. 8, 2014, no. 10, 469-472 

В отличие от программ аналогичного типа данная программа позволяет:
1. Работать с графом произвольного вида;
2. Использовать новые, модифицированные алгоритмы, уменьшая вычислительную сложность;
3. Не требовать высоких технических характеристик к используемым аппаратным средствам.

Функциональные ограничения - в силу используемых формул вероятность отказа ребра должна быть меньше чем 0,01.
Исходя из удобства, не рекомендуется использовать программу для графов с количеством вершин более 100.

Программа разработана на Object Pascal  в среде разработки Delphi 7.

Версия регистрируемой программы (базы данных): 
2
Использованные при разработке материалы: 
G.Sh. Tsitsiashvili, A.S. Losev, M.A. Osipova. Disconnection probability of planar weighted graph // Applied Mathematical Sciences, Vol. 8, 2014, no. 10, 469-472
Признак доступности программы (базы данных): 
полностью свободный доступ
Требования к аппаратным и программным средствам: 

Компьютер типа IBM PC Pentium II с операционной системой Windows XP и выше и оперативной памятью от 256 Mb.

Контактная информация: 
A.S.Losev@yandex.ru
Ленты новостей