DOI: 10.37614/2307-5252.2020.8.11.001 УДК 004.94, 004.75
В.В. Быстров, Д.Н. Халиуллина, С.Н. Малыгина
Апатиты, Институт информатики и математического моделирования ФИЦ КНЦ РАН
ТЕХНОЛОГИЯ ДИНАМИЧЕСКОГО КОНФИГУРИРОВАНИЯ СЕТЕЦЕНТРИЧЕСКОЙ СИСТЕМЫ ИНФОРМАЦИОННОЙ ПОДДЕРЖКИ УПРАВЛЕНИЯ РЕГИОНАЛЬНОЙ БЕЗОПАСНОСТЬЮ
Аннотация
Статья посвящена разработке программных средств информационно-аналитической поддержки управления региональной безопасностью. Авторы формулируют понятия конфигурации сетецентрической системы поддержки управления и ее динамического конфигурирования. Предлагается концептуальная схема конфигурации в нотации ER-диаграмм и ее реализация в виде конфигурационного файла. Описывается технология динамического конфигурирования многоуровневых сетецентрических информационно-управляющих систем. Технология предназначена для автоматизированного развертывания сети программных агентов и их параметрической настройки в зависимости от контекста решаемой прикладной задачи.
Ключевые слова:
динамическое конфигурирование, конфигурация информационной системы, сетецентрическое управление, региональная безопасность.
V.V. Bystrov, D.N. Khaliullina, S.N. Malygina
Apatity, Institute for Informatics and Mathematical Modelling, KSC RAS
TECHNOLOGY FOR DYNAMIC CONFIGURATION OF THE NETWORK-CENTRIC INFORMATION SUPPORT SYSTEM FOR REGIONAL SECURITY MANAGEMENT
Abstract
The article is devoted to the development of software of information and analytical support for regional security management. The authors formulate the concepts of configuration of a network-centric management support system and its dynamic configuration. The conceptual scheme of the configuration in the notation of ER diagrams and its implementation in the form of a configuration file is proposed. The technology for dynamic configuration of multi-level network-centric information and control systems is described. The technology is designed for automated deployment of a network of software agents and their parametric configuration depending on the context of the application problem being solved
Keywords:
dynamic configuration, information system configuration, network-centric management, regional security
Введение
Одним из актуальных направлений развития информационных систем является разработка систем поддержки принятия решений для разных предметных областей. В частности, в качестве перспективного тренда можно выделить создание информационно-аналитических средств поддержки
управления региональным развитием. В последние годы в рамках указанного направления активно работает научный коллектив Института информатики и математического моделирования КНЦ РАН. Членами данного коллектива было предложено для решения задач информационной поддержки развития региональных социально-экономических систем использовать комплексную методологию, объединяющую в себе разные подходы и технологии: функционально-целевой подход, проектный и процессный подходы, концептуальное и имитационное моделирование, онтологические описания и технологии разработки многоагентных программных систем. Ключевым звеном предложенной методологии, объединяющим все перечисленные методы и технологии, является сетецентрическое управление [1-3].
Авторами настоящего исследования и их коллегами ранее были предложены методические и инструментальные средства для организации сетецентрических систем поддержки управления региональной безопасностью [4-6]. Одной из актуальных на данный момент научно-практических задач является разработка алгоритма настройки компонентов сетецентрической системы поддержки принятия решений в зависимости от решаемой ею задачи. В связи с этим основное внимание в данной статье будет уделено рассмотрению одного из возможных способов решения указанной проблемы.
Динамическое конфигурирование
Традиционно в системном администрировании информационных систем процесс настройки программных продуктов принято называть конфигурированием. С другой стороны, в рамках научных дисциплин по 1Т-менеджменту похожие процессы рассматривают как управление конфигурацией информационных систем. Для определения смыслового содержания термина «конфигурация» приведем примеры наиболее популярных декларативных описаний данного понятия из различных областей информатики и вычислительной техники.
В общенаучной терминологии под конфигурацией понимают расположение каких-либо предметов или соотношение их частей. Данное смысловое наполнение можно выявить и в более узко специализированных областях знаний и соответствующих им документах.
Например, согласно ГОСТ Р ИСО/МЭК ТО 10032-2007: «Эталонная модель управления данными» в качестве конфигурации рассматривают совокупность процессов информационной системы и способ взаимосвязи этих процессов [7].
С точки зрения терминологического словаря «Часть 1. Стадии жизненного цикла продукции» термин «конфигурация» объединяет понятия структуры и состава изделия и предполагает, что конкретные компоненты в составе обладают определенными значениями описывающих атрибутов [8]. Отметим, что в качестве изделия в данном случае может выступать и программный продукт.
В соответствии с ГОСТ Р ИСО/МЭК 10746-2-2000: «Информационная технология. Взаимосвязь открытых систем. Управление данными и открытая распределенная обработка. Часть 2. Базовая модель» конфигурация определяет набор объектов, взаимодействующих между собой посредством интерфейсов. Спецификация конфигурации может быть статической или выраженной в терминах действия динамического механизма, который изменяет конфигурацию [9].
В области информационных и компьютерных систем под конфигурацией понимают определенный набор комплектующих элементов, исходя из их предназначения, номера и основных характеристик. Обычно конфигурация означает выбор аппаратного и программного обеспечения, прошивок и сопроводительной документации [10].
С точки зрения программной инженерии [11] конфигурация программного обеспечения — совокупность настроек программы, задаваемая пользователем, а также процесс изменения этих настроек в соответствии с нуждами пользователя.
В российском ГОСТе 15971-90 «Системы обработки информации» вводится понятие «конфигурации системы обработки информации», которое определяется как совокупность функциональных частей системы обработки информации и связей между ними, обусловленная основными техническими характеристиками этих функциональных частей, а также требованиями решаемых задач [12].
Резюмируя выше изложенное, можно утверждать, что в области компьютерных технологий понятие «конфигурации» так или иначе интерпретируется как перечисление элементов некоторых искусственных систем и их настройка в зависимости от устанавливаемых кем-либо требований.
Процесс формирования конфигурации принято называть конфигурированием [13]. Под конфигурированием системы/устройства согласно [14] понимается стадия системного проектирования, заключающаяся в выборе функциональных блоков системы/устройства, размещении блоков и определении их взаимосвязей. При этом выделяется понятие автоматического конфигурирования как процесса автоматической корректировки настраиваемых параметров конфигурации устройств без ручного вмешательства, без программной коррекции настроек или переключения специальных перемычек.
Если рассматривать понятие конфигурирования относительно информационных систем (ИС), то традиционно оно связано с процессом настройки ИС с целью их адаптации к специфике области внедрения. В процессе конфигурирования ИС выполняются следующие действия: изменение объектной модели; определение авторизаций пользователей; настройка интерфейса; создание типовых объектов данных: справочников, шаблонов, отчетов, процессов и т. д.; настройка вариантов развертывания и взаимодействия программных компонентов, определение параметров системных служб, сервисов и т.д. [15].
В современных условиях конфигурирование программного обеспечения (ПО) принято называть управлением конфигурацией. Согласно стандарту ГОСТ Р ИСО/МЭК 12207-2010 «Информационная технология. Системная и программная инженерия. Процессы жизненного цикла программных средств» вводится понятие «составная часть конфигурации (configuration item)» как объект в пределах конфигурации, который удовлетворяет некоторой функции целевого применения и может быть однозначно идентифицирован в данный момент времени [16]. Таким образом, управление конфигурацией ПО обычно сводится к операциям учета и модификации соответствующих конфигурационных объектов.
В рамках текущего исследования ведется разработка технологии динамического конфигурирования сетецентрических управляющих систем. Одной из особенностей таких систем является настройка их конфигураций под решение актуальной на данный момент задачи предметной области. В процессе функционирования такого класса программного обеспечения решаемая задача
периодически меняется, что требует внесения соответствующих изменений в действующую конфигурацию системы. Данный процесс перенастройки предлагается называть динамическим конфигурированием.
В качестве примера разработки алгоритмов динамического конфигурирования программных систем можно выделить работу [17], которая наиболее близка к тематике текущего исследования. Данная публикация рассматривает динамическое конфигурирование системы имитационного моделирования морской обстановки в рамках разработки тактического тренажерного комплекса для ВМФ РФ. Авторы работы за счет динамического конфигурирования пытаются удовлетворить следующие требования к тренажеру: обеспечить возможность постепенного увеличения количества и сложности моделей как в ходе разработки тренажера, так и в ходе последующей модернизации, а также организовать независимость программной реализации имитационных моделей от остальных компонентов тренажера. Динамическое конфигурирование сводится к определению набора параметров имитационного комплекса, а также перечня используемых компьютерных моделей в зависимости от решаемой в данный момент задачи.
Подводя итог, в рамках данной статьи под конфигурацией сетецентрических систем управления понимается формализованное параметрическое описание компонентов разрабатываемой системы с указанием взаимосвязей между ними, которая характеризует текущее состояние программной системы в целом и может меняться в зависимости от решаемой задачи. Процесс изменения конфигурации в ходе функционирования системы при смене актуальной задачи называется динамическим конфигурированием.
Описание конфигурации сетецентрической системы
Традиционно в информационных системах конфигурация сводится к представлению компонентов системы в виде описания формата «объект конфигурации - его атрибут». В текущей работе авторы придерживаются мнения, что в конфигурации, в первую очередь, должны быть отражены конфигурационные объекты и их атрибуты, характеризующие техническую составляющую работоспособности программной системы. В соответствии с этим было принято решение в конфигурацию системы включить следующие объекты: многоагентная программная среда, распределенное хранилище данных, распределенная имитационная среда.
На высоком уровне абстракции описание конфигурации можно представить в виде ЕЯ-диаграммы (рис. 1). Так как основной задачей динамического конфигурирования является обеспечение работоспособности системы и настройка ее на решение конкретной прикладной задачи, то в конфигурацию системы включаются объекты виртуального уровня.
Рис.1. Концептуальная схема конфигурации системы
Многоагентная программная среда (Network_of_agents)
В разрабатываемой многоагентной сетецентрической системе поддержки управления предлагается рассматривать два типа агентов: агенты-представители и служебные агенты. Агенты-представители предназначены для отражения интересов и реализации алгоритмов поведения в виртуальной среде реальных участников процессов решения задач управления региональной безопасностью. Служебные агенты ориентированы на обеспечение безотказного функционирования разрабатываемой программной системы.
Программный агент (Software_Agent) в конфигурации описывается следующими группами атрибутов: общие, сетевые, функциональные и специфические. Рассмотрим их более подробно.
1. Общие атрибуты Total - группа атрибутов, характеризующая любой программный агент в сетецентрической системе:
• ID_agent - уникальный идентификатор: неотрицательное неповторяющееся числовое значение.
• Type_agent - тип агента: текстовое значение (128 знаков; Service_ag -служебный агент, Represent_ag - агент-представитель).
• Name_agent - название агента: текстовое значение (128 знаков).
2. Сетевые атрибуты Net - группа атрибутов, отражающая расположение агента в сети:
• IP_agent - IP-адрес агента: форматированный текст (xxxx.xxxx.xxxx.xxxx).
• MAC_agent - MAC-адрес агента: числовое неотрицательное значение (48 бит).
• Protocols_agent - протоколы коммуникации агента: класс иерархии.
■ TCP/IP - булево значение (true или false).
■ UDP - булево значение (true или false).
■ HTTP - булево значение (true или false).
■ DNS - булево значение (true или false).
■ ICMP - булево значение (true или false).
■ FTP - булево значение (true или false).
• Platform_agent - платформа, на которой работает агент: текстовое значение (JADE, Jason и др.). В рамках текущей работы используется только платформа JADE, поскольку она является промышленным стандартом и имеет большое количество описательных материалов и вспомогательных инструментов.
3. Функциональные атрибуты Func характеризуют набор функций, которые может выполнять программный агент.
На данном этапе исследования реализуется следующий набор функций
агента:
• Администрирование состава агентов (принудительное удаление агентов с платформы, процедуры уникальной идентификации агентов и др.) -ADMIN_AG.
• Коммуникация агентов (организация взаимодействия между разными агентами, в том числе и с помощью обмена сообщениями по определенному протоколу) - COMMUN_AG.
• Поиск агентов (реализация возможна разными способами: поиск по каталогу агентов на основе заданных критериев, опрос определенной группы агентов, либо комбинация этих подходов) - SEARCH_AG.
• Управление каталогом агентов (обновление информации об актуальном состоянии списка агентов в сетецентрической системе) -CATALOG_AG.
• Имитация (управление процессами организации и непосредственного проведения вычислительных экспериментов на базе имитационных моделей) -IMIT_AG.
• Взаимодействие с хранилищем данных (набор операций агентов с распределенным хранилищем информации в сетецентрической системе) -STORE_AG.
• Семантический/синтаксический анализ (разбор текстовых выражений для выделения ключевых понятий и формулировок на разных этапах решения задач) - SS_ANALYSIS_AG.
• Управление процессами решения поставленной задачи предметной области (формирование коалиции агентов на разных этапах решения задачи) -MANAGE_DA_AG.
Предлагается в качестве записи данной группы атрибутов использовать один из вариантов реализации:
■ Представление в виде строки с перечислением идентификаторов функций, которые выполняет описываемый агент. Пример:
Func_agent = < ADMIN_AG, COMMUN_AG, CATALOG_AG>.
■ Представление в виде фиксированного списка идентификаторов функций, которые принимают булево значение в зависимости от реализуемости агентом конкретной функции. Пример:
Func_agent = < ADMIN_AG = true, COMMUN_AG = true, SEARCH_AG = false, CATALOG_AG = true, IMIT_AG = false, STORE_AG = false, SS_ANALYSIS_AG = false, MANAGE_DA_AG = false>.
4. Специфические атрибуты Spec - группа атрибутов, характеризующая программный агент в зависимости от типа агента (служебный или агент-представитель). Так как данная группа атрибутов напрямую не влияет на техническую организацию функционирования системы, то предлагается в конфигурации системы хранить лишь уникальные идентификаторы. Более подробную информацию об объекте можно найти в соответствующих структурах распределенного хранилища информации по этим уникальным идентификаторам.
• Role_agent - роль агента: текстовое значение (128 знаков).
• ID_Personnel_agent - уникальный идентификатор представителя: числовое неотрицательное значение. Например, для служебного агента ID_Personnel_agent = 0.
• ID_Struct_agent - уникальный идентификатор структуры данных, ассоциированный с локальным хранилищем информации программного агента (например, таблицы базы данных).
Отметим, что на данном этапе исследования предлагаются следующие роли агентов: системный координатор, имитатор, сборщик данных, аналитик, администратор системы и др. [5, 6]. Список ролей служебных агентов может быть расширен за счет добавления новых комбинаций реализуемых агентами функций.
Распределенное хранилище (Disturbed_storage)
Хранилище данных сетецентрической системы представляет собой обобщенное понятие, включающее в себя информационные ресурсы, организованные с помощью разных способов хранения информации (реляционные базы данных, онтологии и т.п.).
Каждое конкретное хранилище (Storage) описывается следующими атрибутами:
• ID_Struct_storage - уникальный идентификатор структуры хранилища данных: неотрицательное целое число.
• Adress_storage - сетевой адрес хранилища, например, использовать классический IP-адрес узла сети (xxxx.xxxx.xxxx.xxxx).
• Name_storage - наименование хранилища: текстовое значение (128 знаков).
• Type_storage - тип хранилища, который позволяет агенту-администратору использовать соответствующие протоколы для доступа к этому
хранилищу: текстовый идентификатор, принимающий значение из заранее определенного набора.
• Format_storage - поддерживаемый формат файла хранилища: текстовый идентификатор, принимающий значение из заранее определенного набора.
•
Распределенная имитационная среда (Simulationenv)
Имитационная среда включает в себя два типа объектов: средство имитационного моделирования и имитационную модель.
Средство имитационного моделирования (Sim Tool)
• ID_sim_tool - уникальный идентификатор средства имитационного моделирования: неотрицательное целое число.
• Adress_sim_tool - сетевой адрес узла, на котором располагается рассматриваемое средство имитационного моделирования (xxxx.xxxx.xxxx.xxxx).
• Name_sim_tool - название средства имитационного моделирования: текстовое значение (128 знаков).
• ID_sim_tool_agent - идентификатор агента, который отвечает за работу средства имитационного моделирования: неотрицательное целое число.
• Type_sim_tool - тип инструмента имитационного моделирования, который определяет возможности среды: текстовый идентификатор, принимающий значение из заранее определенного набора. На данном этапе исследования рассматриваются два типа инструментального средства имитационного моделирования, один из которых позволяет выполнять весь спектр действий с моделью от ее разработки до верификации (например, AnyLogic Professional 8.3), а другой - служит лишь вычислительной платформой для имитации уже готовых моделей (например, AnyLogic Cloud).
• ID_sim_product - уникальный идентификатор программного продукта, используемого в качестве средства имитационного моделирования: неотрицательное целое число.
• Ver_sim_product - версия программного продукта, используемого в качестве инструментального средства имитационного моделирования: текстовое
значение (128 знаков).
•
Имитационная модель (SimModel)
• ID_sim_model - уникальный идентификатор имитационной модели: неотрицательное целое числовое значение.
• Name_sim_model - название имитационной модели: текстовое значение (128 знаков).
• ID_sim_tool_model - уникальный идентификатор средства моделирования, в котором разработана имитационная модель: неотрицательное целое числовое значение.
• ID_storage_sim_model - уникальный идентификатор хранилища, в котором содержится файл данной модели: неотрицательное целое числовое значение.
• Type_sim_model - тип имитационной модели: текстовый идентификатор, принимающий значение из заранее определенного набора. На данном этапе разработки выделяются два типа модели: исполняемый файл (не
требует дополнительного программного обеспечения); файл конкретного средства имитационного моделирования (требуется соответствующий программный продукт для работы с моделью).
• Ver_sim_product_model - версия программного обеспечения, в котором разрабатывался файл имитационной модели: текстовое значение (128 знаков).
• ID_owner_sim_model - уникальный идентификатор агента-имитатора, который является владельцем данной модели и несет ответственность за ее реализацию: целое неотрицательное числовое значение.
С точки зрения программной реализации сетецентрической системы поддержки управления конфигурация представляется в виде конфигурационного файла. Данный файл может быть представлен различными форматами: XML, JSON, INI, XSL и др. На рисунке 2 приведен пример реализации конфигурационного файла в формате XML, как наиболее распространенного в программных системах.
1 <?x.ml version="1.0"?> 2• <Virtual_level_of_system>
3 <ID_virtual_level>0001</ID_virtual_level>
4 <Name_virtual_level>Virtual level of system</Name_virtual_level>
5 - <Network_of_agents>
6 <Name_rietwork>Network o-f Virtual agents</Name_network>
7 <agents> 8' <agent>
9 <ID_agent>0002</ID_agent>
10 <Name_agent>Agent N<l</Naine_agent>
11 <Type_agent>Service_ag</Type_agent>
12 <IP_agent>192.168.55.8/16</IP_agent>
13 <MAC_agent>54: ab : 3a :©2 :15 :16</MAC_agent>
14 - <Protocols_agent>
15 <Protocol_TCP>true</Protocol_TCP>
16 < Prot dc ol_UDP>t ru e< /Prot oe ol_UDP>
17 <Protocol_HTTP>true</Protocol_HTTP>
18 <Protocol_FTP>true</Protocol_FTP>
19 <Protoeol_DNS>true</Protoeol_DNS> 29 < Prot oc ol_ICHP>t rue </Prot oc ol_ICMP>
21 </Protocols_agerit>
22 <Platform_agent>3AOE</Platform_agent> 23' <Func_agent>
24 <ADMIN_AG>true</ADMIN_AG>
25 < COMMUN_AG > t r ü e </COMMUN_AG >
26 <SEARCH_AG>true</SEARCH_AG>
27 <CATALOG_AG>true</CATALOG_AG>
28 <IMIT_AG>false</IMIT_AG>
29 < STGRE_AG>fa1s e </STORE_AG>
30 < 5S_ANALYSIS_AG>fals e </55_ANALYSI5_AG>
31 < MANAG E_DA_AG >t ru e</MANAG E_DA_AG >
32 </Func_agent>
33 <Role_agent>Admin</Role_agent>
34 <ID_Personnel_agent>©001</ID_Personnel_agent>
35 <IO_Struct_agent>00B7</ID_Struct_agent>
36 i/agent>
37 - <agent>
38 <ID_agent>0007</ID_agent>
39 <Name_agent>Agent N!2</Name_agent>
40 <Type_agent>Represent_ag</Type_agent>
41 <IP_agent>192.168.55.8/16</IP_agent>
42 <MAC_agent>54! ab : 3a ! 02:15 :16</MAC_agent>
43 - <Protocols_agent>
44 < Prot oc ol_T CP>t ru e</Prot oc ol_T CP>
45 < Prot oc ol_UDP>t ru e</Prot oc ol_UDP>
46 <Protocol_HTTP>true</Protocol_HTTP>
47 <Protocol_FTP>true</Protocol_FTP>
48 <Protocol_DNS>true</Protoeol_DNS>
49 < Prot oc ol_ICMP>t rue </Prot oc ol_ICMP> 56 </Protocols_agent>
51 <Platforn_agent>3ADE</Platform_agent>
52 - <Func_agent>
53 <ADMIM_AG>fa1s e </ADMIM_AG >
54 < COMMUN_AG >t г u e </COMMUN_AG >
55 < SEA RCH_AG >false</S EARCH_AG >
56 <CATALOG_AG>false</CATALOG_AG>
57 <IMIT_A6>t г и e < /1MIT_AG>
58 < STORE_AG>t ru e </STOR E_AG >
Рис.2. Пример описания конфигурации сетецентрической системы в формате XML
Отметим некоторые особенности программной реализации процедуры оперирования с конфигурационным файлом в разрабатываемой системе. На этапе инициализации системы конфигурационный файл будет содержать информацию об определенном наборе программных агентов и ассоциированных с ними хранилищах данных. Данная совокупность программных агентов является ядром системы, без развертывания которых не представляется возможным
функционирование всей разрабатываемой системы. Обновление конфигурационного файла происходит при любой операции, затрагивающей изменение конфигурации системы, как ее состава и структуры, так и параметрического описания конфигурационной единицы.
Технология динамического конфигурирования
Основным назначением описываемой ниже технологии динамического конфигурирования сетецентрической системы поддержки управления является регламентация процессов создания и изменения в ходе функционирования системы ее конфигурации в зависимости от стадии решения задачи.
Основным этапами технологии динамического конфигурирования сетецентрической системы являются:
1. Формирование ядра сетецентрической системы.
В работе под ядром системы понимается сеть служебных агентов и объектов распределенного хранилища информации, обеспечивающая реализацию всех сервисных функций системы, в частности, администрирование состава агентов, коммуникацию агентов, поиск агентов, управление каталогом агентов, имитацию, взаимодействие с хранилищем данных,
семантический/синтаксический анализ, управление процессами решения поставленной задачи предметной области и др.
На данном этапе исследования предлагается следующая схема развертывания первоначального ядра системы, в которой активное участие принимает группа сопровождения многоуровневой сетецентрической системы информационной поддержки управления региональной безопасностью. В данную группу входят специалисты, занимающиеся вопросами обеспечения работоспособности системы и ее продвижения среди заинтересованных лиц. Члены группы сопровождения договариваются, как и на каких узлах сетевой инфраструктуры физически размещаются все служебные программные агенты и распределенное хранилище информации, образующие ядро системы. В соответствии со сформированным планом технические специалисты осуществляют процесс развертывания ядра системы. При установке любого программного агента проводится процедура его саморегистрации, которая сводится к записи служебной информации в специальную структуру данных системы - каталог агентов (по принципу агентной платформы JADE). Каталог агентов содержит имя, сетевой адрес, тип и роль агента. Отметим, что технически добавление в систему объекта распределенного хранилища информации реализуется через установку и настройку служебного агента Storage_Manager, через которого в дальнейшем и реализуется все взаимодействие с данным хранилищем информации. Аналогичная процедура проводится с объектом имитационной среды при его добавлении в сетецентрическую систему. Таким образом, процесс формирования конфигурации системы реализуется служебным агентом-администратором посредством сбора параметрических описаний всех участников ядра (в режиме «запрос-ответ») и их автоматического добавления в соответствующий конфигурационный файл.
2. Формирование профессионального сообщества.
Для обеспечения эффективной работы разрабатываемой системы поддержки принятия решений в области региональной безопасности необходимо сформировать группу лиц, обладающих высокой квалификацией и набором
профессиональных компетенций для решения сложных прикладных задач. То есть необходимо сформировать профессиональное сообщество заинтересованных лиц, которые не только предлагают идеи, но и могут воплощать их в объективную реальность. Для этой цели в разрабатываемой системе реализуется веб-портал, содержащий основную информацию о системе (архитектура, задачи, функциональные возможности и др.), а также список участников и анкету для вступления в данное профессиональное сообщество. Таким образом, веб-портал реализует функцию информирования и продвижения проекта в интернет-пространстве.
При развертывании сетецентрической системы первоначальный список участников профессионального сообщества формируется вручную группой сопровождения. В соответствии с полученным перечнем участников происходит рассылка приглашений на известные адреса электронной почты и другие социальные медиа ресурсы. Для обеспечения информационной безопасности предусмотрены меры по регулированию списка участников профессионального сообщества, в частности, реализована процедура предварительного согласования кандидатов. Согласование заключается в рассмотрении членом группы сопровождения заполненной на веб-портале анкеты от кандидата в участники. При включении кандидата в профессиональное сообщество ему предлагается скачать с веб-портала программное обеспечение, которое и является программным агентом (агентом-представителем).
3. Наполнение системы агентами-представителями.
При установке программного обеспечения, ранее загруженного с веб-портала системы, запускается процедура регистрации нового программного агента. Данная процедура выполняется в автоматическом режиме в ходе взаимодействия нового агента с агентом-администратором системы. Установление связи с агентом-администратором осуществляется посредством интернет-протоколов по фиксированному 1Р-адресу. При установлении связи агент-администратор начинает опрос регистрируемого в системе агента с помощью служебных сообщений. В результате такого опроса на стороне агента-администратора формируется следующая информация: имя регистрируемого агента, организация, к которой прикреплен агент, его сетевые параметры и др. Полученную информацию агент-администратор распределяет между тремя компонентами системы: каталогом агентов, распределенным хранилищем данных, конфигурационным файлом. При таком распределении допускается дублирование информации об отдельных параметрах регистрируемого агента.
4. Инициация решаемой проблемы.
При необходимости любой участник профессионального сообщества посредством его программного агента-представителя может сформулировать проблему обеспечения региональной безопасности на естественном языке и инициировать процесс ее рассмотрения в разрабатываемой системе. Формулировка выдвинутой проблемы поступает служебному агенту Manager_Problems, выполняющего роль менеджера задач предметной области. Он фиксирует проблему в соответствующей структуре данных посредством общения с менеджером распределенного хранилища информации Dist_Storage_Manager. Менеджер проблем Manager_Problems отправляет служебному агенту Semantic_Analysis запрос на семантический анализ формулировки проблемы. В свою очередь агент Semantic_Analysis преобразует данную формулировку на
естественном языке в список ключевых слов, типа субъект проблемы, объект проблемы, условия проблемы. Промежуточные результаты данной процедуры как минимум сохраняются в локальных хранилищах данных программных агентов. На основе сформированного перечня ключевых слов агент Manager_Problems формирует поисковый запрос к распределенному хранилищу информации системы, где содержатся данные, как об актуальных, так и сохраненных в архиве проблемах.
В результате поиска формируется список семантически близких проблем к указанной. Поскольку каждой проблеме соответствует определенная конфигурация сетецентрической системы поддержки управления региональной безопасности, то на основе полученного списка проблем можно выполнить следующие действия:
• Если проблема является архивной, то восстанавливается соответствующая конфигурация системы.
• Если проблема является актуальной, то система предлагает инициатору проблемы присоединиться к рабочей группе, решающей данную проблему.
• Если подобная проблема не найдена, то Manager_ProЫems инициализирует процесс создания новой конфигурации системы по указанной проблеме.
Отметим, что при наличии в системе семантически близких актуальных проблем с помощью агента Semantic_Analysis формируется обобщенная формулировка этой группы проблем на естественном языке. Данный процесс сопровождается выбором основного инициатора из числа авторов инициированных проблем. Назначение инициатора производится посредством анализа ранга агента-представителя, рассчитываемого на основе оценки его опыта работы в системе и его компетенций согласно алгоритму, представленному в работах [5, 6]. Запись в хранилище о данной проблеме производится агентом Storage_Manager автоматически.
5. Формирование коалиции агентов, участвующих в решении инициированной проблемы.
Данная процедура выполняется в том случае, если на предыдущем этапе инициированная проблема еще не решалась в системе, а значит, отсутствует соответствующая конфигурация. При формировании коалиции поиск агентов реализуется в системе служебным агентом Manager_Problems на основе определенного списка критериев, предъявляемых к потенциальным участникам коалиции. Список критериев можно формировать по-разному: первый вариант -на основе описания проблемы (в частности, по ключевым словам), второй вариант - на основе критериев, предложенных агентом-инициатором, третий вариант -гибридный (комбинация первого и второго вариантов). Поиск происходит непосредственно в специальной структуре данных - каталоге агентов системы.
В результате поиска формируется список потенциальных участников коалиции агентов. Далее в соответствии со списком производится рассылка приглашений агентам для вступления в коалицию. Агенты-представители, положительно ответившие на запрос в установленный срок, добавляются в коалицию, что фиксируется в соответствующих структурах распределенного хранилища информации.
6. Параметрическое описание сформированной коалиции в виде конфигурационного файла (конфигурации системы).
На основе сформированного на предыдущем этапе списка агентов (участников коалиции) производится запись их параметров (представленных более подробно в разделе «Описание конфигурации сетецентрической системы» текущей статьи) в конфигурационный файл рассматриваемой проблемы. Данная процедура реализуется агентом-администратором в результате его взаимодействия с агентами Dist_Storage_Manager и Manager_Problems. Все конфигурационные файлы системы, как ядра, так и ассоциированные с конкретной проблемой дублируются у агентов, входящих в ядро системы.
7. Процесс решения задачи предметной области.
В соответствии с алгоритмом решения задачи обеспечения региональной безопасности [5, 6] коалиция привлекаемых агентов изменяется от этапа к этапу. Изменение состава программных агентов двух типов, принимающих участие в рабочей коалиции, влечет за собой обновление соответствующего конфигурационного файла, ассоциированного с решаемой проблемой. Операции по отслеживанию состояния конфигурационного файла и внесения в него корректировок осуществляет агент-администратор при взаимодействии с агентом Manager_Problems.
В качестве примера действий, приводящих к обновлению конфигураций, можно указать следующие процедуры: построение дерева целей, синтез дерева функций, генерация цепочек процессов, формирование списка исполнителей и др.
8. Расширение ядра системы.
В процессе функционирования системы и возрастания количества одновременно решаемых проблем необходимо предусмотреть возможность увеличения вычислительной мощности и объема хранимой информации разрабатываемой системы. Эта техническая задача может быть решена за счет расширения ядра системы. Программный агент Storage_Manager следит за объемом свободного пространства для хранения информации на своем сетевом узле. При критическом уровне свободного места этот агент отправляет запрос на увеличение информационного пространства по следующей цепочке: Storage_Manager ^ Dist_Storage_Manager ^ Агент-администратор ^ Группа сопровождения системы.
Группа сопровождения системы принимает решение о способе ликвидации проблемы нехватки свободного пространства: либо увеличение дискового пространства на уже существующих узлах распределенного хранилища информации, либо добавление новых узлов. При добавлении новых узлов возникает задача обновления конфигурации ядра системы, и ее решение осуществляется по аналогии с алгоритмом, представленным на первом этапе данной технологии. Расширение распределенной имитационной среды при внесении соответствующих изменений в конфигурацию ядра системы осуществляется аналогичным способом.
9. Финализация решения прикладной задачи.
В текущей работе под финализацией решения задачи предметной области понимается получение целевых результатов для поставленной проблемы либо вывод о том, что проблема на данный момент не может быть решена полностью либо частично. Если проблема остается нерешенной, то конфигурационный файл проблемы заносится в архив нерешенных проблем. Если проблема решена, то данный конфигурационный файл заносится в архив решенных проблем. У всех агентов, имеющих доступ к конфигурационному файлу этой проблемы,
удаляются все дубликаты конфигурации. Сохранение конфигурационного файла в архиве реализовано с целью последующего его восстановления в случае необходимости (например, инициация семантически схожей проблемы).
Отметим, что предложенные выше основные этапы технологии могут выполняться не обязательно в строгой последовательности. В зависимости от способа программной реализации некоторые шаги могут осуществляться в параллельном режиме. Приводимое описание этапов технологии в рамках данной статьи не является детальным, что обусловлено желанием авторов статьи представить концептуальную схему данной технологии. Более подробное описание этапов может быть представлено в дальнейших публикациях по данной тематике.
Заключение
В данной статье уделяется внимание процессу динамического конфигурирования сетецентрической системы поддержки управления региональной безопасностью. На основе анализа открытых публикаций и регламентирующей документации в области разработки и сопровождения информационных систем определены понятия конфигурации сетецентрической системы и ее динамического конфигурирования. В результате обобщения способов имплементации конфигурации информационных систем предложены концептуальная схема конфигурации в нотации ER-диаграмм и примеры ее практической реализации в виде конфигурационного файла определенных форматов (XML, JSON, MDB и др.). В соответствии с разработанным ранее общим алгоритмом функционирования сетецентрической системы поддержки управления предложена технология динамического конфигурирования такой системы. Технология предназначена для автоматизированного развертывания сети программных агентов и их параметрической настройки в зависимости от контекста решаемой прикладной задачи.
В статье рассматриваются некоторые результаты, полученные в ходе выполнения темы НИР № 0226-2019-0035 «Модели и методы конфигурирования адаптивных многоуровневых сетецентрических систем управления региональной безопасностью в Арктической зоне Российской Федерации» государственного задания Министерства науки и высшего образования РФ.
Реализация сложных многоагентных сетецентрицеских систем позволяет решать комплексные задачи по управлению региональной безопасностью, а также в других предметных областях. Класс подобных информационных систем ориентирован на решение таких вопросов как фиксация в формальном виде и повторное использование экспертных знаний (опыта), мониторинг и выявление потенциально опасных ситуаций для управляемого объекта, прогнозирование и анализ возможных сценариев критических ситуаций, а также автоматизированное формирование рекомендаций для принятия обоснованных решений. Предложенная технология динамического конфигурирования позволяет обеспечить функционирование сетецентрической системы при решении перечисленных задач.
Литература
1. Korovin Iakov S., et al. Usage of Network-Centric Approach to Distributed Management of Complex Systems // Applied Mechanics and Materials, vol. 834,
Trans Tech Publications, Ltd., Apr. 2016, pp. 199-204. doi: 10.4028/www.scientific.net/amm.834.199.
2. Vladimir Muliukha, Alexander Ilyashenko, Leonid Laboshin Network-centric Supervisory Control System for Mobile Robotic Groups // Procedia Computer Science, 2017. vol. 103. pp. 505-510. https://doi.org/10.1016/j.procs.2017.01.036.
3. Clay Wilson Network Centric Operations: Background and Oversight Issues for Congress // CRS Report for Congress, 2015. 55 p. - Режим доступа https://fas.org/sgp/crs/natsec/RL32411.pdf (дата обращения - 28.11.2020)
4. Маслобоев А.В. A technology for dynamic synthesis and configuration of multiagent systems of regional security network-centric control // Надежность и качество сложных систем. 2020. №3(31). С. 115-127. doi: 10.21685/2307-42052020-3-13
5. Bystrov V.V., Khaliullina D.N., Malygina S.N. Development of the information support system components for personnel security management of the region // Advances in Intelligent Systems and Computing. 2020. vol. 1226. pp. 348-361. doi: 10.1007/978-3-030-51974-2_34
6. Быстров В.В., Малыгина С.Н., Халиуллина Д.Н. Разработка формальных моделей и средств сетецентрического управления кадровой безопасностью региона// Труды Кольского научного центра РАН. Информационные технологии. 9/2019 (10), Выпуск 10. - С. 69-84. doi:10.25702/KSC.2307-5252.2019.9.69-84
7. ГОСТ Р ИСО/МЭК ТО 10032-2007: «Эталонная модель управления данными» - Режим доступа http://protect.gost.ru/document.aspx?control=7&id=173888 (дата обращения 06.11.2020)
8. Р 50.1.031-2001 Информационные технологии поддержки жизненного цикла продукции. Терминологический словарь. Часть 1. Стадии жизненного цикла продукции - Режим доступа: http://docs.cntd.ru/document/1200028627 (дата обращения 06.11.2020)
9. ГОСТ Р ИСО/МЭК 10746-2-2000: «Информационная технология. Взаимосвязь открытых систем. Управление данными и открытая распределенная обработка. Часть 2. Базовая модель» - Режим доступа: http://protect.gost.ru/document.aspx? control=7&id=138412 (дата обращения 06.11.2020)
10.Federal Standart 1037 - Режим доступа: https://www.its.bldrdoc.gov/resources/ federal-standard-1037c.aspx (дата обращения 28.11.2020)
11.ISO/IEC TR 19759:2015 Software Engineering - Guide to the software engineering body of knowledge (SWEBOK) - Режим доступа: https://www.iso.org/ standard/67604.html (дата обращения 28.11.2020)
12.ГОСТ 15971-90 «Системы обработки информации. Термины и определения» -Режим доступа http://protect.gost.ru/document.aspx?control=7&id=137975 (дата обращения 06.11.2020)
13.ГОСТ Р 54456-2011 «Телевидение вещательное цифровое. Домашняя мультимедийная платформа. Класс 1.0. Основные параметры» - Режим доступа http://docs.cntd.ru/document/1200091429 (дата обращения 06.11.2020)
14.ГОСТ Р 54325-2011 (IEC/TS 61850-2:2003) «Сети и системы связи на подстанциях. Часть 2. Термины и определения» - Режим доступа http://protect.gost.ru/document.aspx?control=7&id=180174 (дата обращения 06.11.2020)
15.Вичугова А.А., Мелконян Р.Г. Инструментальные средства информационных
систем : учебное пособие // Томск : ТПУ, 2015. — 136 с. — ISBN 978-5-43870574-1
16. ГОСТ Р ИСО/МЭК 12207-2010. «Информационная технология. Системная и программная инженерия. Процессы жизненного цикла программных средств» - Режим доступа http://protect.gost.ru/document.aspx?control=7&id=176990 (дата обращения 06.11.2020)
17.Андреев В.Ю., Базлов А.Ф. Динамическое конфигурирование системы имитационного моделирования морской обстановки // Программные продукты и системы - 2004 - №4 - С.44-46
DOI: 10.37614/2307-5252.2020.8.11.002 УДК 004.832, 550.34
А.А. Зуенко1, О.В. Фридман1, О.Г. Журавлева2, С.А. Жукова2
1 Институт информатики и математического моделирования ФИЦ КНЦ РАН
2 Горный институт ФИЦ КНЦ РАН
МЕТОДЫ ГРУППОВОЙ КЛАССИФИКАЦИИ НА ОСНОВЕ ТЕОРИИ МУЛЬТИМНОЖЕСТВ В ЗАДАЧЕ ЛОКАЛИЗАЦИИ ЗОН С РАЗЛИЧНЫМ УРОВНЕМ СЕЙСМИЧЕСКОЙ АКТИВНОСТИ ПРИ ВЕДЕНИИ ГОРНЫХ РАБОТ*
Аннотация
Работа посвящена оценке применимости методов групповой классификации с учителем, разработанных на основе теории мультимножеств, для решения задачи выявления зон с различной степенью сейсмической активности (на примере одного из участков высоконапряженного массива горных пород Кукисвумчоррского апатит-нефелинового месторождения). В качестве исходных объектов для процедур классификации выступают пространственные ячейки, на которые разбит участок месторождения. Каждая пространственная ячейка описывается определенным набором факторов, оказывающих, по мнению экспертов, влияние на возникновение сейсмических событий в данной ячейке. Предложено оригинальное представление пространственных ячеек (их групп) в виде совокупности мультимножеств. Проведены исследования, направленные на выявление влияния различных вариантов представления исходных данных на результат процедур классификции. Представление объектов, описываемых количественными и/или качественными признаками и существующих в нескольких версиях (экземплярах), в виде мультимножеств дает возможность не трансформировать качественные признаки в числовые при выполнении процедур кластеризации и использовать методы групповой классификации объектов. Получены обобщенные решающие правила групповой классификации для отнесения объектов (пространственных ячеек) к четырем классам сейсмической опасности. В отличие от широко применяемых в настоящее время технологий на основе нейросетевого подхода, в настоящей работе результатом обучения является не "черный ящик" в виде обученной нейронной сети, а набор правил, которые могут быть легко проинтерпретированы, что повышает доверие конечных пользователей к процедурам принятия решений.
* Исследование выполнено при финансовой поддержке РФФИ в рамках научных проектов №№ 18-07-00615-а, 20-07-00708^