Комплекс программ для моделирования процесса написания символов при чтении лекций

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

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

В файле _Complex.doc приведена подробная инструкция по работе с файлами программного комплекса.

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

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

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

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

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

Назначение - пошаговая иллюстрация и контроль процесса перемножения прямоугольных матриц.
Область применения - учебный процесс. Для иллюстрации на лекциях и для контроля процесса перемножения матриц на практических занятиях.
Используемый алгоритм - обработка событий, связанных с нажатием клавиш, левой кнопки мыши и наведении указателя мыши, для организации интерактивной иллюстрации и пошагового контроля процесса перемножения матриц.
Функциональные возможности - в программах генерируются различные квадратные, прямоугольные матрицы, в том числе матрицы-векторы, которые перемножаются с пошаговым контролем. Наибольший размер матриц 5x5.
Инструментальные средства создания - программы написаны на языке Java в среде Eclipse

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

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

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

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

Комплекс программ для интерактивной иллюстрации и контроля решения задачи вычисления определителя

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

Назначение -  иллюстрация и контроль вычисления определителей.
Область применения - учебный процесс. Интерактивная иллюстрирующая программа может быть использована на лекциях или практических занятиях; программа-тренажер - для выработки навыков решения  задач по вычислению определителей и контроля процесса решения.  
Используемый алгоритм - обработка событий, связанных с нажатием клавиш, левой кнопки мыши и перемещением указателя мыши, для организации интерактивной обработки задачи вычисления определителя.
Функциональные возможности - программы позволяют проводить разложение определителя 4 порядка по любому ряду, программа-тренажер контролирует правильность процесса вычисления определителя 4 порядка на каждом шаге.
Инструментальные средства создания - программы написаны на языке Java в среде Eclipse.

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

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

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

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

Расчет моделей протоколов управления соединениями

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR13033
Дата регистрации в ФАП: 
2013-07-19
Тематическая направленность: 
Многошаговые беспроводные сети. Управление соединениями
Разработчики программы (базы данных): 
Аннотация: 

Назначение: Программа рассчитывает среднее время нахождения соединения в открытом состоянии, среднее время нахождения соединения в закрытом состоянии, а также вероятность обнаружить соединение в открытом состоянии при использовании механизма управления соединениями в сетях стандарта IEEE 802.11s (Wi-Fi Mesh). Полученные результаты позволяют выбрать оптимальные значения параметров механизма управления соединениями для определенных условий работы беспроводной сети.

Область применения: Беспроводные сети. Многошаговые сети IEEE 802.11s (Wi-Fi Mesh)

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

Рассматривается пара беспроводных станций, которые входят в состав беспроводной многошаговой сети стандарта IEEE 802.11s (Wi-Fi Mesh). Каждая станция строго периодически отправляет служебные сообщения, которые называются биконы. Станция A, получив определенное число биконов от станции B, которую станция A не считает своим соседом, принимает решение о запуске процедуры установления соединения. Если после этого станция A потеряет необходимое число биконов от станции B, которую станция A считает своим соседом, то станция A принимает решение о запуске процедуры закрытия соединения. Программа позволяет найти среднее время жизни соединения, среднее время нахождения соединения в закрытом состоянии, а также вероятность обнаружить соединение в открытом состоянии. Программа проводит вычисления  согласно аналитической модели, описанной в работе [1]. 

Входные параметры:

·         вероятность успешной передачи бикона;

·         число биконов, которое необходимо получить для запуска процедуры открытия соединения;

·         число биконов, которое необходимо получить для запуска процедуры закрытия соединения;

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

Выходные параметры:

·         среднее время нахождения соединения в открытом состоянии;

·         среднее время нахождения соединения в закрытом состоянии;

·         вероятность обнаружить соединение в открытом состоянии в произвольный момент наблюдения.

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

[1]  Evgeny Khorov, Anton Kiryanov, Andrey Lyakhov, Alexander Safonov.  Analytical Study of Link Management in IEEE 802.11s Mesh Networks // International Symposium on Wireless Communication Systems (ISWCS). France, 2012. P. 786-790.

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

·         Вероятность успешной попытки передачи пакета – любая из диапазона (0,1).

·         Число биконов, которое необходимо получить для запуска процедуры открытия соединения – целое число больше нуля.

·         Число биконов, которое необходимо получить для запуска процедуры закрытия соединения – целое число больше нуля.

·         Число биконов, которое необходимо получить для согласия на запуск процедуры открытия соединения – целое число больше либо равное нулю.

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

Версия регистрируемой программы (базы данных): 
1
Использованные при разработке материалы: 
Среда разработки Eclipse
Признак доступности программы (базы данных): 
доступ по запросу
Требования к аппаратным и программным средствам: 

Ubuntu 10. 1GHz, 1GB RAM

Контактная информация: 
khorov@frtk.ru, kiryanov@iitp.ru

Метрика качества видеопотока, переданного по беспроводной сети

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

Назначение: Программа ЭВМ позволяет вычислить значения метрик качества видеоизображения MSE, PSNR, и SSIM для видеофрагмента, переданного по беспроводной сети, с учетом потерь целых кадров, а также определять число и номера потерянных кадров.

Область применения: Современные сети связи. Передача видеопотоков по беспроводной сети.

Используемый алгоритм: Так как потеря некоторых кадров из оригинального видеофрагмента при его передаче по беспроводной сети приводит к необходимости определения соответствия между кадрами оригинального и полученного фрагментов, необходимым компонентом программы для расчёта значений любой из метрик является алгоритм выравнивания кадров в оригинальном и полученном видеофрагментах. Процесс получения значений метрики состоит их следующих этапов:

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

2.     Путём сравнения некоторого количества начальных байт заголовков закодированных кадров из обоих видеофрагментов, кадры сопоставляются друг другу. Несопоставленные кадры из оригинального фрагмента (для которых не найдено соответствия в полученном фрагменте) считаются потерянными при передаче.

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

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

Входные параметры:

·         Оригинальный видеофрагмент;

·         Видеофрагмент, полученный в результате передачи оригинального фрагмента по беспроводной сети;

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

Выходные параметры:

·         Значения одной из метрик (MSE, PSNR или SSIM) для каждого кадра из полученного видеофрагмента;

·         Номера кадров из оригинального видеофрагмента, которые были потеряны при передаче.

Алгоритм опубликован в работе: А. Гущин, А. Кирьянов, А. Ляхов, Е. Хоров «Быстрый алгоритм выравнивания кадров для оценки качества MPEG-4 видеопотоков, передаваемых по беспроводным сетям» // Труды конференции «Информационные технологии и системы (ИТиС-2013)», Калининград, Россия, 2013

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

·         Расчёт значений метрик качества видеоизображения MSE, PSNR, и SSIM;

·         Технология кодирования видеофрагментов: MPEG 4 Part 2;

·         Длительность видеофрагментов: до десятков минут (зависит от размера ОЗУ ЭВМ);

·         Разрешение видеофрагментов: до Full HD 1920 на 1080 пикселей.

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

Среда разработки MATLAB .

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

ОС Windows, MATLAB, ffmpeg.

Контактная информация: 
khorov@frtk.ru, guschin@iitp.ru

Модель механизмов передачи видеопотока по беспроводной сети

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR13031
Дата регистрации в ФАП: 
2013-07-19
Тематическая направленность: 
Беспроводные сети. Передача мультимедийных данных
Разработчики программы (базы данных): 
Аннотация: 

Назначение: Программа моделирует механизмы передачи видеопотока по беспроводной сети. В частности, программа позволяет использовать различные политики управления MAC-очередью, вносить в них изменения, а также моделировать использование оригинальных политик управления MAC-очередью.

Область применения: Современные сети связи. Многошаговые сети на базе IEEE 802.11. Передача видеопотоков по беспроводной сети.

Используемый алгоритм: Первым шагом моделирования является получение с помощью медиаплеера VLC и программы-анализатора трафика Wireshark pcap-файла, который содержит внутри себя IP пакеты с исходным видеопотоком и относительные временные метки, когда эти пакеты должны быть поставлены в очередь на передачу в среду. Полученный pcap-файл - это входные данные для сетевого эмулятора ns3, который моделирует канальный и физический уровни стека сетевых протоколов. Именно с помощью ns3 моделируется, собственно, передача данных по беспроводному каналу с учетом возникающих при этом эффектов: задержек при распространении сигнала, интерференции, возможных потерь пакетов. Внутри данного эмулятора также имплементируется оригинальная политика управления очередью. Выходные данные эмулятора -  pcap-файл, содержащий пакеты полученного видеопотока с временными метками, соответствующими моментам получения пакетов. В выходном pcap-файле отражены возникающие при передаче эффекты, а именно задержки и возможные потери каких-то пакетов. Для получения видеоизображения выходной pcap-файл проигрывается с помощью утилиты Tcpreplay и сохраняется как видеофайл с помощью медиаплеера VLC.

Входные параметры:

·         видеофайл для передачи по беспроводной сети;

·         значения необходимых параметров беспроводной сети (характеристики используемых моделей распространения сигнала, моделей ошибок, настройки параметров используемых протоколов и др.).

Выходные параметры:

·         видеофайл, полученный в результате передачи по беспроводной сети.

Алгоритм описан в работе: Andrey Guschin, Evgeny Khorov, Anton Kiryanov, Andrey Lyakhov, Alexander Safonov. P-persistent Queue Management to Overcome Channel Failures in IEEE 802.11 Networks for Real-time Multimedia Streaming //Lecture notes in computer science. Volume 8072. 2013. 

Во Вложении прикреплен файл с примером снимка экрана при проигрывании выходного видеопотока.

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

·         Передача любых видеофайлов, воспроизведение которых поддерживает медиаплеер VLC.

·         Моделируемый стек протоколов: RTP/UDP/IP/MAC IEEE 802.11

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

·         Использование различных политик управления MAC-очередью, в том числе оригинальных политик.

·         Метод инкапсуляции видеокадров в пакеты транспортного уровня – MPEG-TS.

Рекомендуемое ограничение на интенсивность потока - менее 6 Мбит/с

Инструментальные средства создания: Среда разработки Eclipse, сетевой эмулятор ns3, медиаплеер VLC, утилита Tcpreplay, программа-анализатор трафика Wireshark 

Версия регистрируемой программы (базы данных): 
1
Использованные при разработке материалы: 
Eclipse, ns3, VLC, Tcpreplay, Wireshark
Признак доступности программы (базы данных): 
доступ по запросу
Требования к аппаратным и программным средствам: 

С++, VLC, Tcpreplay, Wireshark

Контактная информация: 
khorov@frtk.ru, kiryanov@iitp.ru

Программная система ТОПАС для отображения параллельных программ на архитектуру вычислительных систем (версия 42)

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR13030
Дата регистрации в ФАП: 
2013-07-15
Тематическая направленность: 
Дискретная оптимизация. Исследование операций. Параллелизм
Разработчики программы (базы данных): 
Аннотация: 

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

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

Используемый алгоритм - Программная система основана на новых алгоритмах оптимизации, включая алгоритм эволюционных вычислений, генетический алгоритм и нейронные алгоритмы. По сравнению с версией 41 системы (регистрационный номер в ФАП СО РАН - PR12008), в данную версию включены три модификации метода моделирования отжига, включая алгоритмы глобальных и локальных вычислений, что позволяет расширить множество исследуемых алгоритмов отображения.  Алгоритмы  опубликованы в монографии:  Монахов О. Г.,  Монахова Э. А. Параллельные системы с распределенной памятью: управление ресурсами и заданиями. Новосибирск: Изд-во ИВМиМГ СО РАН, 2001.  168с.

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

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

В приложении приведен пример визуализации работы программы.

 

Версия регистрируемой программы (базы данных): 
42 (Регистрационный номер версии 41 в ФАП СО РАН - PR12008)
Использованные при разработке материалы: 
Java, Eclipse
Регистрационный номер в Роспатенте: 
№2012617452 , №2011617256
Признак доступности программы (базы данных): 
доступ по запросу
Требования к аппаратным и программным средствам: 

Тип ЭВМ: IBM PC -совмест. ПК
Язык: Java
ОС: Windows, Linux, Unix

Контактная информация: 
monakhov@rav.sscc.ru

Программа эволюционного поиска описаний оптимальных циркулянтных сетей

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR13029
Дата регистрации в ФАП: 
2013-07-12
Тематическая направленность: 
Дискретная оптимизация.Теория графов. Сети связи
Разработчики программы (базы данных): 
Аннотация: 

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

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

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

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

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

Алгоритм опубликован в монографии:  Монахов О. Г.,  Монахова Э. А. Параллельные системы с распределенной памятью: структуры и организация взаимодействий. Новосибирск: Изд-во СО РАН, 2000.  242с.

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

Инструментальные средства создания - Язык: C. ОС: Windows, Linux, Unix.

В приложении приведен пример работы программы.

Использованные при разработке материалы: 
Язык: C. ОС: Windows, Linux, Unix
Регистрационный номер в Роспатенте: 
№2012617451
Признак доступности программы (базы данных): 
доступ по запросу
Требования к аппаратным и программным средствам: 

Тип ЭВМ: IBM PC -совмест. ПК
Язык: C. ОС: Windows, Linux, Unix

Контактная информация: 
emilia@rav.sscc.ru

Incinerate. Анализатор поведения процессов

Тип разработки: 
Программа
Регистрационный номер в ФАП: 
PR13028
Дата регистрации в ФАП: 
2013-07-11
Тематическая направленность: 
Компьютерная безопасность. Защита от вредоносного программного обеспечения. Анализ поведения процессов в ОС Windows
Заявитель: 
Разработчики программы (базы данных): 
Аннотация: 

Назначение: Анализ поведения процессов в ОС Windows. 

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

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

Область применения: Компьютерная безопасность. Защита от вредоносного ПО.

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

Основной идеей алгоритма является разделение персептрона-анализатора на несколько (4) атомарных трехслойных персептронов. Например, 17 входов персептрона были разделены на 4 группы: 3, 4, 5, 5. Каждый из таких персептронов имеет свой выход и отвечает за соответствие образа какому-либо признаку (тому признаку, за который отвечает персептрон). В качестве входов используется количество произошедших событий в системе событий определенного класса (использовано 17 типов событий по 1 на каждый вход). Каждый из 4 атомарных персептронов возвращает свой ответ, является ли процесс «своим» или нет. Например, {да, нет, да, да}. Эти ответы согласуются с помощью вектора доверия размерности 4 в финальный ответ всего анализатора как скалярное произведение вектора доверия на вектор ответов. Вектор доверия формируется на этапе обучения анализатора. Данный алгоритм был разработан с целью решения проблемы неэффективности нейронных сетей, когда подавляющее большинство входов равно нулю.         

1. Р.С. Прохоров, Методика бихевиористической классификации процессов в ОС Windows 7 // Информационные технологии и автоматизация управления - Материалы V Всероссийской научно-практической конференции студентов, аспирантов, работников образования и промышленности, Омск, Издательство ОмГТУ, стр 163-165, 23-26 апреля, 2013.        

Функциональные возможности: Обучение агентов на основе предоставляемых администратором данных, распознавание процессов с помощью обученных агентов. Данное приложение является библиотекой для построения систем защиты операционных систем на основе анализа поведения процессов. Содержит пример (IncinerateCmd - IncinerateService), демонстрирующий работу с основными компонентами разработанного алгоритма.

Пример представляет из себя два приложения

  1. Основное приложение (IncinerateService), которое можно зарегистрировать как сервис Windows, а можно просто запускать как консольное приложение. Возможности:
    1. обучение нового агента (Learn)

      для этого администратору необходимо задать список PID'ов целевого процесса и имя нового агента (произвольная строчка, но уникальный идентификатор). когда обучаемый агент получает достаточно информации для работы (настраивается), он сохраняется в репозиторий агентов (c:/program data/incinerate).
    2. запуск обученного агента в состояние слежки за системой (Watch). Из репозитория агентов (c:/program data/incinerate) берется агент по имени из запроса. Данный агент будет искать "свой" процесс среди всех активных процессов и, например, писать в лог определенную информацию (можно задать любую модель поведения)
    3. получение информации обо всех обученных или обучающихся агентах (GetInfo)
  2. Клиентское приложение (IncinerateCmd), работающее с сервисом и подающее ему соответствующие команды (L, W, I). Взаимодействие идет через pipe. Канал открытый.
    1. incicmd -w=<имя_агента> - Запуск слежения за процессами с помощью ранее обученного агента
    2. incicmd -a=<имя_нового_агента> -p=<PID_1,PID_2,...,PID_N> - Запуск обучения агента с новым именем, который будет считать, что все указанные процессы - целевые, а все остальные - чужие.
    3. incicmd -l - Печатает список обучающихся и готовых агентов

Инструментальные средства создания: Visual C# Express

Описание содержимого репозитория

В репозитории https://github.com/Evlikat/incinerate находится полностью компилируемый под  платформу  .NET Framework 3.0+ проект Visual C# Express 2010. Подпроекты в составе:

  1. IncinerateCmd - проект-пример, клиентское приложение, описанное выше. Состоит из одного файла - main'а консольного приложения
  2. IncinerateService - проект-пример, серверное приложение, которое можно зарегистрировать как сервис Windows. Описано выше.
  3. NeuroApplication - проект, содержащий программы-эксперименты для установления эффективности работы алгоритма
  4. NeuroIncinerate - базовый проект, содержащий все необходимые алгоритмы
  5. Sample.Eventing, TraceEvent - дочерние проекты, используются для подключения к системе отслеживания событий Windows (сторонние библиотеки с открытым кодом)
  6. Incinerate - сторонний исторический проект, отношения к алгоритму не имеет (можно игнорировать)

Инструкция по использованию

  1. Запустить IncinerateService/bin/Debug/IncinerateService.exe от имени администратора. Сервис будет запущен как консольное приложение
  2. Запустить IncinerateCmd/bin/Debug/incicmd -a=ИмяНовогоАгента -p=PID'ыЦелевых процессов
  3. Сервис обучит анализатор на заданных процессах. Как только наберется 500 образцов поведения целевых процессов и 2500 образцов любых других процессов, он будет сохранен в c:/ProgramData/Incinerate/ИмяНовогоАгента.agent
  4. Получить список всех агентов с помощью команды incicmd -l
  5. Запустить в режим слежения команда (incicmd -w=ИмяНовогоАгента)
  6. Сервис будет писать в окно PID опознанного процесса. [HARD] - свидетельствует о жестком опознании, то есть высоком уровне уверенности. [SOFT] - указывает, что процесс был опознан, но анализатор "сомневается" тот ли это процесс

Замечания к использованию

  1. Если агент плохо опознает целевые процессы, то возможно его удалить и обучить заново. Повторять до желаемого уровня уверенности
  2. Агент также можно "отрегулировать" с помощью необходимого уровня доверия данному агенту. Файл IncinerateService/Core/AgentRegistry.cs содержит константы для "регулировки" агентов. После внесения изменения программу необходимо перекомпилировать
Версия регистрируемой программы (базы данных): 
0.1
Использованные при разработке материалы: 
TraceEvent, AForge.NET
Признак доступности программы (базы данных): 
полностью свободный доступ
Требования к аппаратным и программным средствам: 

Windows 7+
.NET Framework 3.0+

Контактная информация: 
roman.evlikat.prokhorov@gmail.com, ссылка на репозиторий - https://github.com/Evlikat/incinerate

Апостериорный анализ качества эвристических алгоритмов для приближенного решения двух задач минимизации энергозатрат в сетях сбора и передачи данных

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

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

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

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

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

- 2 авторских эвристических алгоритма для приближенного решения задачи максимизации времени жизни беспроводной сенсорной сети в условиях заданного множества покрытий [1].

- жадный алгоритм для приближенного решения задачи максимизации времени жизни беспроводной сенсорной сети в условиях заданного множества покрытий [1].

- алгоритм Прима для построения остовного дерева минимального веса.

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

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

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

 В программе реализовано:

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

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

  1. Файл Exp1.exe. Пользователь указывает любое число комбинаций параметров {n, m, d, r1, r2}, где n - число сенсоров, m - число покрытий, d - шаг регулярной решетки для построения покрытий, r1 и r2 - границы, в пределах которых для каждого сенсора случайно определяется ресурс. Кроме того, пользователь задает количество испытаний (случайных тестовых примеров) с одной комбинацией параметров. В ходе работы программы в файле Exp1_results.txt для каждой комбинации параметров записываются результаты численных экспериментоов: средняя по всем испытаниям относительная точность приближенных алгоритмов (AR(CPLEXR), AR(GREED), AR(H1), AR(H2)), среднеквадратичное отклонение относительной точности (S(CPLEXR), S(GREED), S(H1), S(H2)), а также средняя доля покрытых узлов (Covered), среднее количество сенсоров в одном покрытии (NbSensInCov) и среднее количество покрытий, содержащих один и тот же сенсор (NbCovInSens). В текстовый файл Exp1_time.txt записывается среднее время работы каждого алгоритма и время, затрачиваемое на создание модели для каждой комбинации параметров.
  2. Файл Exp2.exe. Пользователь сначала выбирает режим работы программы: запуск серии испытаний с заданной размерностью, либо запуск CPLEX и генетического алгоритма с принудительной остановкой через указанное время. Затем пользовтель может задать произвольное число вариантов размерностей задачи, количество испытаний с одной размерностью, а также, в случае, если выбран второй режим работы программы, произвольное число вариантов времени принудительной остановки алгоритмов. Общие результаты вычислений - относительная точность или оценка относительной точности, и время работы алгоритмов GA_LI (гибридный генетический алгоритм с локальными улучшениями), GA_R (генетический алгоритм со случайной мутацией), T1 (остовное дерево минимального веса), T2 (остовное дерево минимального веса для специальных весов), LI (применение процедуры локальных улучшений к лучшему из деревьев T1 и T2) - записываются в виде текстового файла Exp2_results.txt:, результаты решения каждого тестового примера записываются в виде одной строки в файле Exp2_log.txt.

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

  • Первая программа (файл Exp1.exe) работает с любой комбинацией входных параметров в пределах: 25 < n < 1000, 5 < m < 100, 0 < d < 100, 1 <= r1 <= r2 <= 100.
  • Вторая программа (файл Exp2.exe) работает с размерностью n от 10 до 500. При этом точное решение задачи строится пакетом CPLEX только при n < 40.

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

[1] Ерзин А.И., Плотников Р.В. О максимизации времени функционирования сенсорных сетей при ресурсных ограничениях // Дискретный анализ и исследование операций, Т. 18, №6, 2011, 17-32.

[2] Ерзин А.И., Плотников Р.В., Шамардин Ю.В. О некоторых полиномиально разрешимых случаях и приближенных алгоритмах для задачи построения оптимального коммуникационного дерева. Дискретный анализ и исследование операций, Т. 20, № 1, 2013, с.12-27.

Инструментальные средства создания - Microsoft Visual Studio 2008 (язык C++), IBM ILOG CPLEX

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

OS Windows XP/7

Контактная информация: 
8-923-146-2486
Ленты новостей