T. 35 № 1 (2022)
Статьи в выпуске: 15
Для управления проектами менеджерам требуется знать реально затрачиваемое рабочее время. Однако, по данным опросов исследовательской компании IDC, процедура заполнения табеля рабочего времени сотрудниками многих компаний является довольно неудобной и долгой. Авторы данной статьи предлагают способ решения проблемы учета рабочего времени сотрудников предприятия в условиях удаленной работы, основанный на разработке отдельной информационной системы с возможностью ее интеграции в существующую систему управления проектами. Для серверной части был использован фреймворк NestJS, для клиентского веб-приложения - фреймворк Angular JS. В процессе моделирования информационной системы получены диаграммы процесса учета рабочего времени до и после автоматизации с использованием современных нотаций для их построения. В качестве системы управления реляционными БД использован MS SQL Server. В работе проведен сравнительный анализ существующих для учета времени сотрудников предприятия решений, таких как TMetric, StaffCop, WorkPoint, Kickidler, ManicTime, CrocoTime, выявлены их основные преимущества и недостатки. Рассмотрены методика, средства проектирования и разработка информационной системы, успешно внедренной во внутреннюю структуру малого предприятия, 70 % сотрудников которого перешли на удаленный режим работы. Расчет эффективности работы средств автоматизации показал сокращение трудоемкости заполнения табелей учета времени на 80 %, а временных затрат на 60 %. Детальные отчеты о затраченном времени позволяют более эффективно распределять ресурсы по задачам, что обусловливает повышение общей управляемости проектами.
В настоящей работе исследуется эффективность планирования очереди с помощью предобученных моделей. Суперкомпьютерный кластер применяет планировщик для распределения поступающего потока заданий между доступными вычислительными ресурсами. Для размещения задания в очереди планировщик использует данные, указанные пользователем, в том числе заказанное время работы программы. Однако пользователи часто неверно оценивают время работы и указывают верхнюю оценку. Если задание завершается раньше, чем указано, то планировщику необходимо перепланировать очередь. Большое количество подобных событий может снижать эффективность распределения ресурсов. В последнее время появилось множество работ, посвященных применению машинного обучения для предсказания времени работы задания. Это позволяет в процессе планирования использовать время работы, вычисленное с помощью предобученной модели. Однако все полученные модели содержат ошибку. Проблема заключается в необходимости оценки эффективности планирования при заданном значении ошибки модели. В данном исследовании для оценки эффективности планирования очереди с помощью предобученных моделей сравниваются два сценария: планировщик использует указанное пользователем время (сценарий 1) и реальное время работы задания (сценарий 2). С помощью симулятора планировщика SLURM была произведена симуляция на статистических данных суперкомпьютера МВС-10П ОП2, установленного в Межведомственном суперкомпьютерном центре РАН. Результаты показали, что среднее время ожидания в сценарии 2 уменьшилось на 25 %, а приведенное время ожидания - на 50 %. Утилизация ресурсов изменилась незначительно. Данные эксперимента доказывают целесообразность применения алгоритмов машинного обучения для предсказания времени работы заданий, поступающих на суперкомпьютерный кластер. Таким образом, в статье приводится оценка предельной оптимизации, так как эксперимент предполагает стопроцентную точность предсказания, что на сегодняшний день не демонстрирует ни одна из представленных работ по предсказанию времени работы заданий.
В работе выделены основные направления исследования: проектирование сети с заданными численными характеристиками, расчет устойчивости заданной сети и решения, решение оптимизационных многокритериальных задач со многими параметрами, моделирование динамических сетей. Структура сетей иерархическая, с высокими параметрами кластеризации, обладает свойствами самоподобия на уровне глобальных авиаперевозок. Сети воздушного движения относят к типу безмасштабных сетей, или «маленького мира», а для анализа применяется теория сложных сетей. В качестве инструментария решения оптимизационных задач предложен аппарат предфрактальных графов, приведены основные определения и обозначения, рассмотрены динамические правила порождения графов. Для решения NP-полных задач, встречающихся в транспортно-логистических системах, может быть применен метод, снижающий трудоемкость для ряда подзадач. Рассмотрена модель покрытия сети авиамаршрутов предфрактальным графом, предложена постановка многокритериальной задачи размещения кратного центра со многими весами, проведена оценка радиальной метрики. Предложен алгоритм размещения кратного центра предфрактального графа при сохранении смежности старых ребер, сгенерирован граф и выделены вершины кратного центра. Правила порождения предфрактального графа позволяют генерировать сети с заранее заданными характеристиками, такими как центральность вершин, диаметр и др., в том числе для построения авиамаршрутов, размещения аэропортов и пересадочных узлов. Перспективными направлениями дальнейших исследований являются распознавание реальных сетей авиамаршрутов в виде динамических графов, взвешивание многими весами и постановка оптимизационных многокритериальных задач, анализ структурных характеристик сетей, статистический анализ на основе малых структурных элементов сети, генерирование сетей с заданными свойствами и сравнение их с реальными сетями, анализ структурной устойчивости сетей и др.
В статье описано ПО для решения задач оптимального управления каталитическим процессом в реакторе идеального смешения. На основе математической модели процесса в реакторе идеального смешения сформулирована в общем виде задача оптимального управления. В качестве управляющего параметра рассматривается температура хладоагента, на значения которой наложены ограничения. Приведен пошаговый алгоритм численного решения поставленной задачи, в основу которого положен эволюционный метод искусственных иммунных систем. Применение данного метода дает возможность получить приближенное решение задачи за приемлемое с практической точки зрения время. На основе сформулированного алгоритма разработано приложение для каталитической реакции димеризации a-метилстирола в присутствии цеолитного катализатора NaHY, продукты которой (линейные димеры) широко применяются в промышленном производстве. Для расчета процесса в реакторе идеального смешения в программе реализован ряд численных методов. В программном средстве имеется возможность настройки пользователем параметров как каталитического процесса, так и алгоритма метода искусственных иммунных систем. Критерий оптимизации задается пользователем в ходе работы программы, что позволяет применять ее для различных постановок задач каталитического процесса димеризации α-метилстирола и получать набор оптимальных концентраций веществ и оптимальный температурный режим, соответствующие заданным показателям протекания процесса. Приведено решение задачи поиска оптимального температурного режима рассматриваемого каталитического процесса, критерием оптимальности которой является достижение максимального выхода линейных димеров при минимальном выходе циклических димеров и тримеров.
Предлагается алгоритм обеспечения требуемого уровня устойчивости управления беспилотным летательным аппаратом в условиях противодействия. Под внешним воздействием понимаются как преднамеренные деструктивные воздействия внешней среды, так и непреднамеренные. Устойчивое управление беспилотным летательным аппаратом рассматривается как способность управляющих органов выполнять свои функции в сложной, резко меняющейся обстановке, в условиях помех, воздействия противника (огневого, радиоэлектронного и др.) и технических отказов, сохраняя в установленных пределах значения всех показателей управления соответственно. В качестве преднамеренных деструктивных воздействий внешней среды, угрожающих устойчивости управления беспилотным летательным аппаратом при автоматическом управлении, рассмотрены средства огневого и физического поражения, радиоэлектронного подавления, а также функционального поражения электромагнитным и лазерным излучением. В зависимости от вероятности поражения беспилотного летательного аппарата в результате преднамеренного деструктивного воздействия внешней среды сформированы зоны, характеризующие влияние средств воздействия на уровень боеспособности беспилотного летательного аппарата. Определен допустимый уровень вероятности устойчивого управления, удовлетворяющий требованиям его боеспособного состояния. С целью обеспечения требуемого уровня устойчивости управления беспилотным летательным аппаратом использован принцип адаптивного управления, заключающийся в изменении параметров его движения, для реализации возможности облета опасных зон. Вычисление параметров управления движением беспилотного летательного аппарата осуществляется с использованием математической модели динамики его бокового движения. Параметры управления движением беспилотного летательного аппарата формируются в виде суммы программного управления и корректирующего, вычисленных через требуемые параметры движения аппарата. Предложенный алгоритм учитывает возможное преднамеренное деструктивное воздействие внешней среды, может быть реализован с помощью микроконтроллеров современных беспилотных летательных аппаратов и не предполагает внесения изменений в их конструкцию. Реализация алгоритма в автоматизированных системах управления беспилотным летательным аппаратом позволит эффективно решать задачи воздушной разведки в условиях противодействия для вычисления требуемых параметров движения и соответствующего текущей обстановке управления.
В статье рассмотрены вопросы выбора алгоритмов распараллеливания, реализованных в инструментальных средствах разработки параллельных программ для многоядерных (многопроцессорных) вычислительных систем с общей памятью. Целью данного исследования является оценка влияния времени выполнения распараллеленных циклических участков целевой программы при многопоточном параллельном выполнении программы в многоядерных (многопроцессорных) ПЭВМ на показатели результатов имитационного моделирования боевых действий. Научная новизна заключается в разработке нового метода создания параллельных программных средств моделирующих комплексов военного назначения. Проведенный анализ современных программных средств моделирующих комплексов военного назначения показал, что на оперативность их применения при использовании по назначению в значительной степени оказывает влияние продолжительность расчетов при проведении моделирования. В работе приведены примеры расчетов в среде Mathcad. Для исключения ошибок выбора предпочтительных алгоритмов распараллеливания анализ производился на основе элементов математической статистики с введением вероятности доверительного интервала для оценки времени выполнения цикла определенным алгоритмом по верхней границе доверительного интервала. Предложен вариант построения программных средств на примере внедрения технологических разработок в программную архитектуру моделирующего комплекса.
В статье анализируется эффективность процесса обслуживания потока заявок на создание ИТ-сервисов с использованием метода имитационного моделирования. Показано, что известные средства имитационного моделирования не позволяют полностью сымитировать процесс обслуживания заявок в подразделениях администрирования инфокоммуникационными инфраструктурами, отличающийся управляемым характером потока ресурсов. В рамках исследования разработано ПО имитационного моделирования процесса обслуживания потока заявок на создание ИТ-сервисов. Основным отличием разработки является возможность управления источником ресурсов в процессе обслуживания заявок и одновременного проведения экспериментов на одних исходных данных с несколькими дисциплинами обслуживания. Имитационная модель разработана в среде Microsoft Visual Studio и состоит из пяти макроблоков: генератор заявок, генератор ресурсов, обслуживающий прибор, блок алгоритма и блок проведения эксперимента. Блок алгоритма позволяет подключать внешние модели в виде блоков библиотек, реализующих через унифицированный интерфейс обработку потока заявок, включая возможность генерации команд на управление источником ресурсов. Блок эксперимента позволяет выполнять потоковые эксперименты на основе заданных настроек, а также сохраненных файлов экспериментов. Главным отличием разработанной имитационной модели является создание множества независимых потоков обслуживания заявок для различных алгоритмов. Возможность проведения сравнительного анализа проиллюстрирована серией экспериментов со стационарными и нестационарными потоками заявок и стационарным, нестационарным и управляемым потоками ресурсов на базе семейства альтернативных алгоритмов управления. Результаты применения имитационной модели процесса обслуживания заявок на создание инфокоммуникационных сервисов позволили оценить эффективность перспективных алгоритмов управления, разработанных в рамках исследования.
Статья посвящена разработке алгоритма извлечения программных идиом из корпуса исходных текстов программ. Программные идиомы - это фрагменты исходных текстов программ, которые встречаются в исходных текстах различных программ и служат для решения одной типичной задачи. В данной работе программная идиома рассматривается как поддерево абстрактного синтаксического дерева (Abstract Syntax Tree, AST) программы, обеспечивающее максимальное сокращение информации в исходном коде программы при замене всех его вхождений на отдельную синтаксическую конструкцию (например, на вызов функции). Разработана метрика ценности поддерева в качестве идиомы, оценивающая сокращение количества информации от такой замены. Таким образом, поиск программных идиом сводится к поиску максимума функции ценности поддерева на множестве поддеревьев AST. Чтобы сократить перебор поддеревьев, поиск максимума функции ценности поддерева предлагается осуществлять методом наискорейшего спуска: на каждом шаге в поддерево добавляется узел, обеспечивающий наибольшее увеличение ценности поддерева. Для хранения поддеревьев используется структура, являющаяся обобщением префиксного дерева. Предложен алгоритм ускоренного извлечения программных идиом. Ускорение достигается за счет повторного использования результатов поиска максимума функции ценности поддерева. Для программной реализации разработанных алгоритмов, а также для исследования выбран язык Python, поскольку он имеет большой корпус исходных текстов и удобные средства построения AST. С помощью разработанной программной реализации проведен эксперимент по извлечению программных идиом из корпусов исходных текстов программ с открытым исходным кодом на языке Python. Полученные в результате программные идиомы являются осмысленными фрагментами исходных текстов программ. Показано, что применение разработанных алгоритмов к исходному коду одного проекта позволяет выявить варианты рефакторинга исследуемой программы.
В статье рассматривается обобщенная задача коммивояжера с ограничениями предшествования (PCGTSP), в которой подобно классической задаче коммивояжера (TSP) ищется замкнутый цикл минимальной стоимости, при этом множество вершин разбито на непустые попарно непересекающиеся подмножества - кластеры и каждый допустимый маршрут обязан посетить каждый из кластеров в единственной вершине. Кроме того, множество допустимых маршрутов стеснено дополнительным ограничением на порядок посещения кластеров, то есть некоторые кластеры должны посещаться раньше других. Такая задача в отличие от TSP и обобщенной задачи коммивояжера (GTSP) является слабо исследованной как теоретически, так и с точки зрения проектирования и реализации алгоритмов. В данной работе предлагаются первые специализированные алгоритмы ветвей и границ, использующие в качестве начального приближения решения, полученные при помощи недавно разработанной эвристики PCGLNS. Исходная задача PCGTSP подвергается нескольким релаксациям, в результате чего получаются несколько нижних оценок на решение исходной задачи, наибольшая из которых используется для отсечения ветвей дерева поиска и сокращения тем самым перебора. Алгоритмы реализованы в виде открытого ПО на языке программирования Python 3 с использованием специализированной библиотеки NetworkX. Производительность предложенных алгоритмов оценивается на тестовых примерах из общедоступной библиотеки PCGTSPLIB в сравнении с общеизвестным солвером Gurobi, использующим недавно предложенную авторами модель MILP, и представляется вполне конкурентоспособной даже в текущей реализации. Разработанные алгоритмы могут применяться в широком классе практических задач, например, для оптимальной маршрутизации инструмента машин листовой резки с ЧПУ, а также для оценки качества решений, получаемых другими методами.
В статье рассматриваются вопросы реализации прототипа исследовательско-практического комплекса для автоматизации анализа аккаунтов пользователей в социальных сетях. Данный прототип используется в качестве инструмента для косвенной оценки выраженности психологических особенностей пользователей, их уязвимостей к социоинженерным атакам и выработки рекомендаций по защите от них. Прототип разработан на языке программирования Python 3.8 с применением веб-фреймворка Django 3.1, а также PostgreSQL 13.2 и Bootstrap 4.6. Цель работы заключается в повышении оперативности процесса извлечения информации из размещаемых в социальных сетях данных, позволяющей косвенно оценить психологические, поведенческие и иные особенности пользователей, и достигается через автоматизацию извлечения указанных данных и разработку инструментария для их анализа. Предметом исследования являются методы автоматизированного извлечения, предобработки, унификации и представления данных из аккаунтов пользователей социальных сетей в контексте их защиты от социоинженерных атак. Предложенный прототип приложения на основе веб-фреймворка Django решает задачу автоматизированного извлечения, предобработки, унификации и представления данных со страниц пользователей социальных сетей, что является одним из важных этапов в построении системы анализа защищенности пользователей от социоинженерных атак, опирающейся, в свою очередь, на синтез профиля пользователей. Теоретическая значимость работы заключается в комбинировании и апробации через автоматизацию разработанных ранее методов и подходов для восстановления пропущенных значений атрибутов аккаунта и сопоставления аккаунтов пользователей социальных сетей на предмет их принадлежности одному пользователю. Практическая значимость состоит в разработке прикладного инструмента, размещенного на поддомене sea.dscs.pro и позволяющего производить первичный анализ аккаунтов пользователей социальных сетей.
В статье представлена формальная модель многоагентных систем для федеративного обучения. Концепция федеративного обучения очень близка к многоагентным системам, поскольку агенты позволяют обучать модели машинного обучения на локальных устройствах, сохраняя при этом конфиденциальную информацию. Возможности агентов взаимодействовать друг с другом позволяют обобщать (агрегировать) такие модели и повторно их использовать. В работе описываются взаимодействие и координация агентов, которые должны осуществляться с учетом стратегий обучения: последовательно, когда модель обучается по очереди на каждом узле; централизованно, когда модели обучаются параллельно на каждом узле и агрегируются на центральном сервере; децентрализованно, когда обучение и агрегация выполняются на каждом из узлов. Выделены основные типы агентов, необходимые для выполнения полного цикла федеративного обучения: принимающий задачу от пользователя, собирающий информацию о среде, выполняющий планирование обучения, выполняющий обучение на узле с данными, предоставляющий информацию и доступ к данным, осуществляющий агрегацию моделей. Для каждого из агентов определены основные действия и типы сообщений, которыми они обмениваются. Проанализированы и описаны конфигурации размещения агентов для каждой из стратегий федеративного обучения. На основе предложенной формальной модели можно осуществлять разработку многоагентных систем, используемых для задач федеративного обучения, а на основе выделенных типов агентов и видов сообщений - платформы агентов, сами агенты и протоколы их взаимодействия.
В статье представлен метод классификации изображений с использованием, помимо базовой нейронной сети, дополнительной, способной адаптивно концентрироваться на классифицируемом объекте изображения. Задача дополнительной сети является задачей о контекстном многоруком бандите и сводится к предсказанию такой области на исходном изображении, при вырезании которой в процессе классификации возрастет уверенность базовой нейронной сети в принадлежности объекта на изображении правильному классу. Обучение дополнительной сети происходит с помощью методов обучения с подкреплением и стратегий достижения компромисса между эксплуатацией и исследованием при выборе действий для решения задачи о контекстном многоруком бандите. На подмножестве набора данных ImageNet-1K проведены различные эксперименты по выбору архитектуры нейронной сети, алгоритма обучения с подкреплением и стратегии исследования при обучении. Рассмотрены такие алгоритмы обучения с подкреплением, как DQN, REINFORCE и A2C, и такие стратегии исследования, как -жадная, -softmax, -decay-softmax и метод UCB1. Большое внимание уделено описанию проведенных экспериментов и обоснованию полученных результатов. Предложены варианты применения разработанного метода, демонстрирующие увеличение точности классификации изображений по сравнению с базовой моделью ResNet. Дополнительно рассмотрен вопрос о вычислительной сложности данного метода. Дальнейшие исследования могут быть направлены на обучение агента на изображениях, не задействованных при обучении сети ResNet.
В статье сделан обзор ключевых особенностей и преимуществ основных существующих подходов и систем обработки больших графов на персональном компьютере, таких как GraphChi, TurboGraph, GraphChi-DB и другие, а также распределенных систем, таких как Apache GraphX. Особое внимание уделено задачам, требующим в процессе вычислений существенных изменений в структуре графа, и особенностям реализации таких задач в системах обработки графов. Проведены сравнительные эксперименты с использованием известного алгоритма восстановления сети связей между узлами по наблюдаемому распространению инфекций среди населения или распространению новостей и мемов в социальных сетях. В используемом алгоритме для получения оценок изменяющейся во времени структуры и временной динамики предполагаемой сети применяется стохастический градиент. Алгоритм был реализован для моделей вычисления GraphChi и Apache Spark, измерена скорость выполнения для различных наборов реальных и синтетических данных, описаны ограничения для этих моделей вычисления, обнаруженные в процессе экспериментов. Для реализации GraphChi вычисления проведены на одиночном компьютере, для Apache Spark - на различном количестве серверов в кластере. Показано, что существующие системы разделяются на три класса: быстрые системы со статическим разбиением графа на разделы и дорогим переразбиением при существенных изменениях структуры; в среднем более медленные системы, способные эффективно обрабатывать большие объемы изменений; еще более медленные, но хорошо масштабируемые системы, компенсирующие низкую удельную производительность возможностью масштабировать вычисления на кластеры из большого количества узлов. Сделан вывод, что проблема эффективного хранения и обработки динамических графов в полной мере не решена и требует дополнительного исследования.
Предложена реализация программной платформы для создания нейросетевых моделей с их тестированием, используемых для формирования специализированных словарей автоматизированных систем. Она позволяет ускорить процесс поиска оптимального метода для разработки нейросетевой модели. В основе платформы лежит обзор существующих инструментов и методов, используемых для создания моделей анализа текстов и технологий виртуализации ПО. Авторами исследования разработана архитектура программной платформы для формирования специализированных словарей, обеспечивающая одновременное создание разных нейросетевых моделей в виртуальных контейнерах. Контейнерная виртуализация программных элементов, создающих и тестирующих нейросетевые модели, обеспечивает проведение всех математических расчетов по обработке текстовой информации, обучению и тестированию нейросетевой модели децентрализованно, параллельно и изолированно друг от друга. Обмен данными между виртуальными контейнерами, а также хранение результатов их работы осуществляются через специальную шину данных, представляющую собой дисковое пространство, к которому имеют доступ все контейнеры. Применение разработанной платформы позволит ускорить процесс поиска алгоритма создания специализированных словарей через проверку гипотез, основанных на использовании различных методов построения моделей. Ускорение процесса происходит благодаря параллельности и повторному использованию математических результатов общих этапов алгоритмов, математические расчеты которых проведены похожим алгоритмом. Это позволяет масштабировать и дробить процесс обучения за счет параллельного создания различных моделей, а также на уровне отдельных этапов создания моделей. Предложенная платформа была успешно применена для поиска локально-оптимального метода создания модели в текстах узкой тематики.
Предложен метод для прогнозирования некоторых угроз в сложных распределенных системах. Метод основан на интеллектуальном анализе и обработке больших разнородных данных, полученных в результате автоматического контроля изменения уровня воды в водных объектах и температуры воздуха в точке измерения. Такой контроль позволяет повысить эффективность планирования и реализации мероприятий по парированию подобных угроз. Будущее значение уровня воды в точке измерения выбирается по результатам обработки данных, накопленных за все предыдущие паводковые периоды. В качестве анализируемых данных используются измеренные в равноотстоящие моменты времени значения температуры воздуха и уровня воды, вычислительные значения изменения уровня воды и температуры воздуха, а также прогнозные значения (по официальным данным гидрометслужбы) изменения температуры воздуха. На основании вычисления ретроспективной частоты изменения этой температуры и уровня воды в соответствующей точке в качестве прогнозируемого значения предлагается выбрать то, которому соответствует максимальная частота появления такого сочетания измеряемых параметров. Результаты экспериментальной оценки точности прогнозирования уровня воды в водных объектах Республики Башкортостан в паводковый период 2021 г. подтверждают применимость предложенного метода прогнозирования для поддержки принятия решений по парированию угроз в сложных распределенных системах от резкого подъема воды даже при недостаточно автоматизированной системе наблюдений. При более широком изменении высокоавтоматизированных программно-аппаратных комплексов мониторинга паводковой ситуации существенно возрастает количество анализируемых и обрабатываемых программными средствами данных. Это, с одной стороны, усложнит применение традиционных методов использования данных, а с другой - повысит эффективность и востребованность предложенного в данной работе метода.