Scientific journal
Modern high technologies
ISSN 1812-7320
"Перечень" ВАК
ИФ РИНЦ = 0,940

TESTING ANT COLONY ALGORITHMS FOR THE FORMATION OF SOFTWARE FOR REAL TIME SYSTEMS

Kovalev I.V. 1, 2, 3 Kovalev D.I. 2, 4 Borovinsky D.V. 5 Mansurova T.P. 4 Voroshilova A.A. 1, 4
1 Siberian Federal University
2 Krasnoyarsk State Agrarian University
3 Siberian State University of Science and Technology named after M.F. Reshetnyova
4 Krasnoyarsk Science and Technology City Hall
5 Siberian Fire and Rescue Academy EMERCOM of Russia
The article presents the results of testing the ant colony algorithms for the formation of software for the real-time data processing system of a long-term orbital station. The system is characterized by time restrictions on the implementation of a set of performed functions and imposed restrictions on the methods for implementing software redundancy in the case of multiversion software implementation. Thus, a comparative analysis of modifications of the ant colony algorithms used to form fault-tolerant software is an urgent task for the considered real-time data processing systems. The composition of the modules of the test software system is presented. All versions of software modules are characterized by indicators of reliability and cost of their use. It is taken into account that each operating mode of the station is characterized by its own set of modules that ensure the performance of the functions of this mode, as well as its objective function and limitations on the final solution. For each of the flight modes of a long-term orbital station, the corresponding schemes of the software system are presented. The characteristics of the modes included in the mock-up flight plan are briefly described, to which the presented diagrams of the software system correspond. The modification of the ant colony algorithm used in testing consists in changing the formula for calculating the weights of arcs, introducing a new coefficient that takes into account resource intensity (the cost of using the module) and the possibility of analyzing the dynamic (changeable) program architecture for the bottom-up principle of designing software systems. The article presents graphs of changes in reliability indicators and the cost of using software system modules in the process of executing a flight plan. As a result of the analysis of test data, it was concluded that the modified algorithm surpasses the standard one in all parameters, which should ensure its preferential use in the formation of software for the real-time data processing system of a long-term orbital station.
software
real-time system
ant colony algorithm
multiversion program
testing
program scheme

В работах [1–3] рассмотрен ряд модификаций алгоритма муравьиной колонии, применяемых для решения задач формирования отказоустойчивых программных систем для управления объектами критических приложений. Такие объекты характеризуются сложностью процессов управления, а системы обработки информации в таких объектах непосредственно влияют на эффективность функционирования аппаратных и программных средств, выполняющих ключевые функции по управлению объектом [4–7]. Система обработки данных реального времени долговременной орбитальной станции (ДОС) характеризуется временными ограничениями на реализацию множества выполняемых функций и накладываемыми ограничениями на способы реализации программной избыточности при мультиверсионной реализации программного обеспечения (ПО) [8]. Таким образом, сравнительный анализ модификаций алгоритмов муравьиной колонии, применяемых для формирования отказоустойчивого ПО, является актуальной задачей для систем данного типа [9–11].

Для возможности тестирования алгоритмов с учетом изменяющейся структуры программной системы (ПС) реального объекта управления рассматривается задача управления системой обработки данных реального времени (СОД РВ) ДОС. Как отмечается в [9], современная ДОС представляет собой аппаратно-программный комплекс с избыточной архитектурой, компоненты которой, как правило, функционально зависимы и структурно взаимосвязаны, что позволяет эффективно выполнять целевые задачи ДОС.

Мультиверсионное программное обеспечение систем обработки данных реального времени ДОС можно рассматривать как иерархическую систему резервирования, обобщенная модель которой представлена в [5]. На бортовые ЭВМ и обеспечивающие системы ДОС в процессе функционирования действуют различные дестабилизирующие факторы. Эти факторы действуют и на систему резервирования, представленную мультиверсионным программным обеспечением, функционирующим в режиме реального времени.

Можно предположить, что возможные изменения в архитектуре программ связаны с нарушением связей между подсистемами ДОС и, соответственно, между модулями мультиверсионного ПО. Эффект «стирания» ребер [12] в схеме программы или частичная или полная недоступность отдельных мультиверсий программных модулей формирует динамическую (изменяемую) архитектуру ПО СОД РВ ДОС. С точки зрения целевого функционирования мультиверсионных программ анализ нарушения связей между модулями показывает, что воздействия данного типа соответствуют переходу на некоторое время, до восстановления структуры программы, на новую структуру с использованием соответствующего пула доступных программных модулей, обеспечивающих выполнение целевой задачи. Таким образом, можно полагать, что дестабилизирующее воздействие на мультиверсионную программу приводит к изменению состава резервированных модулей (мультиверсий) на некотором интервале времени.

Объект управления и постановка задачи

При формулировке тестовой задачи рассматривается четыре группы управляемых процессов в ДОС [9]: процессы движения ДОС; рабочие процессы (целевое назначение ДОС); энергетические процессы; процессы жизнеобеспечения космонавтов. Анализ алгоритмов решения бортовых задач ДОС и их особенностей [10] позволяет ставить задачу формирования мультиверсионного программного обеспечения с динамической (изменяемой) архитектурой.

В общем виде динамическую архитектуру ПО представим, как t-уровневую программную систему с мультиверсиями. Количество мультиверсий i-го типа в f-м модуле программы l-го уровня обозначим bilf , а clf – f-й модуль l-го уровня мультиверсионной программы.

Для каждого модуля j ∈ K имеется множество Dji мультиверсий i-го типа, доступных для него в системе резервирования. Отметим, что для всех модулей одного множества, множество Dji будет иметь один и тот же вид. Тогда «стирание» ребер в графе структуры программы с резервными мультиверсиями модулей, то есть связывающих j-й модуль с доступным для него множеством мультиверсий, соответствует сужению множества F(Dji). Это свидетельствует об удалении тех мультиверсий, в которые входят ставшие недоступными ресурсы. Очевидно, что тогда множество дестабилизирующих воздействий на мультиверсионную программу (резервируемую) может быть частично упорядочено относительно сужения множеств F(Dji), где j ∈ K.

Применение в этом случае динамической мультиверсионной программной системы позволяет обеспечить результативность функционирования резервированных модульных программ ПО СОД РВ ДОС и выполнить стоящие перед ней целевые задачи.

Основным средством управления ДОС является программа полета. Она состоит из последовательности режимов работы ДОС [9]. В макетный план полета включены стандартный режим, режим коррекции орбиты, режим внешней деятельности и режим микрогравитации. Поэтому для получения результатов сравнения стандартного и модифицированного алгоритма [1] была создана тестовая задача управления ДОС и выполнения макетного плана полета [11].

Результаты решения тестовой задачи

Программа, реализующая тестовую задачу, представляет из себя 22 модуля по 10 версий в каждом. Все версии программных модулей характеризуются показателями надежности R и стоимости их использования C. Перечень модулей и их назначение представлены в таблице.

Модули тестовой программной системы

Модуль

Назначение

UI

Получение и сбор информации для ее последующего использования

NAV

Выработка управляющих воздействий для движения станции

NAVLIM

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

ORIENT

Ориентация станции

ROTATION

Вращение станции

MOVE

Движение станции

AMOVE

Сегмент, отвечающий за движение станции

ENERGY

Система энергопитания станции

Solar

Управление солнечными батареями

EManager

Распределение энергии на станции

AESM

Взаимодействие с сегментом, отвечающим за энергоснабжение

LSMonitor

Контроль за параметрами жизнедеятельности

LSManager

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

BordSystemM

Слежение за параметрами бортовых систем

BordSystemR

Восстановление систем в случае их сбоя

ObjectSDMonitor

Система слежения за внешними объектами

ObjectSDControl

Система контроля скорости и направления внешних объектов

FuelAnalizer

Сбор и анализ информации об уровнях топлива

RefuelControl

Обеспечение дозаправки станции

ManipulatorControl

Управление внешними манипуляторами станции

ManipulatorLim

Задание ограничений на управляющие воздействия, передаваемые на манипуляторы

DataSaver

Сохранение и отправка данных о работе станции

Схемы ПС каждого из режимов полета ДОС представлены на рис. 1–5. Задача характеризуется следующим планом полета с учетом режима квантования времени [11]:

− Стандартный режим: 0 ≤ t < 100, C → min, Rmin = 0,95.

− Стыковка: 100 ≤ t < 200, R → max, Cmax → 300.

− Стандартный: 200 ≤ t < 300, C → min, Rmin = 0,95.

− Внешняя деятельность: 300 ≤ t < 400, R → max, Cmax → 350.

− Стыковка: 400 ≤ t < 500, R → max, Cmax → 250.

− Коррекция орбиты: 500 ≤ t < 600, R → max, Cmax → 400.

− Микрогравитация: 600 ≤ t < 700, C → min, Rmin = 0,98.

− Стандартный: 700 ≤ t < 800, C → min, Rmin = 0,95.

Как следует из рис. 1–5, каждый режим работы станции характеризуется своим набором модулей, которые обеспечивают выполнение его функций, а также своей целевой функцией и ограничениями на итоговое решение.

missing image file

Рис. 1. Схема программы в режиме внешней деятельности

missing image file

Рис. 2. Схема программы в режиме коррекции орбиты

missing image file

Рис. 3. Схема программы в режиме микрогравитации

missing image file

Рис. 4. Схема программы в стандартном режиме

missing image file

Рис. 5. Схема программы в режиме стыковки

Стандартный алгоритм построен по классической схеме [13–15]. Модификация алгоритма отражена в [1, 3–5] и заключается в изменении формулы расчета весов дуг, введении нового коэффициента, учитывающего ресурсоемкость (стоимость использования модуля C) и возможности анализа динамической (изменяемой) архитектуры программы для восходящего принципа проектирования ПС.

На рис. 6 представлены графики изменения показателей стоимости использования модулей ПС в процессе выполнения плана полета. В результате анализа полученных данных было установлено, что среднее значение стоимости, которое достигалось при использовании модифицированного алгоритма, на 4,96 % лучше, чем при использовании стандартного алгоритма. Как видно из графика, модифицированный алгоритм быстрее достигает результатов, которые были достигнуты при использовании стандартного алгоритма. При использовании модифицированного алгоритма тратилось в среднем на 70,86 % меньше времени на достижение результатов, полученных с помощью стандартного алгоритма.

missing image file

Рис. 6. Изменение стоимости решения в процессе выполнения плана полета

missing image file

Рис. 7. Изменение надежности ПС решения в процессе выполнения плана полета

На рис. 7 представлены графики изменения показателей надежности ПС в процессе выполнения плана полета. В результате анализа полученных данных было установлено, что среднее значение надежности, которое достигалось при использовании модифицированного алгоритма, на 0,086 % лучше, чем при использовании стандартного алгоритма. График показывает, что модифицированный алгоритм быстрее достигает результатов, которые были достигнуты при использовании стандартного алгоритма. Также при использовании модифицированного алгоритма тратилось в среднем на 59,5 % меньше времени на достижение результатов стандартного алгоритма.

Заключение

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

Проведение исследований по проекту осуществляется при поддержке Краевого государственного автономного учреждения «Красноярский краевой фонд поддержки научной и научно-технической деятельности» в соответствии с заявкой 2021110907918.