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

Обложка

Цитировать

Полный текст

Аннотация

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

Полный текст

Введение. Ключевые достижения и тренды научно-технического прогресса связаны с цифровизацией, предполагающей повсеместное применение цифровых технологий сбора и обработки информации [1]. Ускоренное внедрение цифровых технологий в экономику и социальную сферу является одной из национальных целей развития России. Ее достижение необходимо в интересах создания условий для высокотехнологичного бизнеса, повышения конкурентоспособности страны на глобальном рынке, укрепления национальной безопасности и повышения качества жизни людей. Одним из приоритетов цифровизации является внедрение киберфизических систем, отличительная особенность которых в интеграции вычислительных ресурсов в инженерно-технические системы [2, 3]. Причем вычислительная компонента киберфизической системы распределена по всей системе и синергетически увязана с составляющими ее элементами [4, 5]. Элементы киберфизических систем и отдельные киберфизические системы взаимодействуют, самонастраиваются и адаптируются к изменениям с помощью стандартных программно реализуемых интернет-протоколов [6, 7]. Поэтому надежность программных компонентов киберфизических систем является ключевой составляющей их эффективного функционирования, а ее адекватное моделирование имеет существенное значение для прогресса цифровизации.

Обзор существующих подходов

Причиной сбоев/отказов любого ПО являются ошибки, допущенные человеком, в том числе новые, возникшие при исправлении ранее сделанных ошибок и приводящие к отказам/сбоям того же самого или другого типа [8, 9]. Концепция моделирования надежности программных компонентов киберфизических систем должна быть единой, например, привязанной к их аппаратной части, а ввиду специфики причин отказов программная часть должна исследоваться в контексте моделей и задач обработки данных, сопровождающих функционирование киберфизических систем [10–12].

Недостатком известных подходов к моделированию надежности программных компонентов является то, что оценки характеристик надежности формируются на основе эмпирических данных о количестве ошибок, выявленных при тестировании программ [2, 13, 14]. Поэтому результаты тестирования существенно зависят как от его длительности, так и от полноты покрытия области обрабатываемых данных подобластью данных, генерируемых при тестировании [12, 15].

Программные компоненты киберфизических систем решают задачи обеспечения их взаимодействия, самонастройки и адаптации к изменениям [16, 17]. В простейшем случае обработка данных по заданному алгоритму осуществляется последовательно, а целью обработки является формирование управляющих воздействий, направленных на обеспечение заданных характеристик: устойчивости, времени достижения установившегося режима функционирования киберфизической системы, перерегулирования, точности поддержания установившегося режима и т.п. [1, 18, 19]. Кратковременный выход перечисленных характеристик за заданные пределы означает сбой функционирования программных компонентов киберфизической системы, а устойчивое несоблюдение требований – их отказ.

Структурно-параметрической моделью функционирования программных компонентов киберфизической системы является полумарковский процесс [20, 21], состояния которого – абстрактный аналог операторов алгоритма функционирования. Время пребывания в состояниях определяется вычислительной сложностью реализуемых алгоритмов, а вероятность переключения в сопряженные состояния – спецификой обрабатываемых данных и логическими условиями выбора каждого состояния [22]. Таким образом, моделирование надежности программных компонентов киберфизической системы сводится к синтезу структурно-параметрической модели отказов ПО, применимой на этапе разработки программных компонентов. Недостаточно полная разработка моделирования надежности программных компонентов киберфизических систем обусловливает актуальность проведенных исследований, отличительные особенности которых определяются ориентацией на устранение недостатков известных подходов к моделированию надежности программных компонентов, при реализации которых оценки характеристик надежности формируются только на основе эмпирических данных о количестве ошибок, выявленных при тестировании программ.

Метод исследования

Анализ опыта эксплуатации киберфизических систем показывает, что наиболее часто мониторинг состояния их элементов и компонентов реализуется с помощью циклического опроса (поллинга) [2, 22]. Поллинг реализует алгоритм, включающий множество операторов:

S=s0,s1,...,sn,...,sN,sN+1,

где s0 и sN+1 – фиктивные (неисполняемые) операторы, соответствующие операциям «Начало» и «Конец» запуска цикла поллинга, а остальные операторы sn – исполняемые (инициирующие действия) операторы. Обратная связь между двумя неисполняемыми операторами придает цикличность алгоритму поллинга, а общее количество обращений (N) к элементам и компонентам киберфизической системы в цикле поллинга определяется количеством связей (К) между ними:

N=2K

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

μ=S,h(t),

где S – множество состояний, совпадающих с множеством операторов sn,n[1,...,N]; h(t) = p f(t) – полумарковская матрица; f(t)=fj,n(t) – матрица плотностей распределения времени выполнения операторов поллинга; p=pj,n – стохастическая матрица.

При разорванной обратной связи (связи между s0 и sN+1) полумарковский процесс имеет одно стартовое (s0) и одно поглощающее (sN+1) состояния и будет эргодическим, только если для любой пары состояний (sj, sn), j, n∈[0, N+1], существует хотя бы один путь из состояния sj в состояние sn и хотя бы один путь из состояния sn в состояние sj. Свойство эргодичности следует из требований к процедуре поллинга, которая в течение каждого цикла должна иметь возможность хотя бы по одному разу опросить каждый компонент киберфизической системы.

В общем случае плотности распределения fj,n(t) время пребывания полумарковского процесса в состоянии sj, если априорно известно, что следующим его состоянием будет sn, определяется сверткой

fj.n(t)=fj.nc(t)fj.nd(t),

где fj.nc(t) – плотность распределения времени программной подготовки данных для обмена с j-м элементом киберфизической системы в процессе поллинга; fj.nd(t) – плотность распределения времени активации программного драйвера j-го элемента киберфизической системы в процессе поллинга;  – операция свертки.

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

В простейшем случае поллинг представляет собой последовательный однократный опрос каждого элемента киберфизической системы, реализуемый подачей на вход вектора входных сигналов с последующим анализом времени получения и компонентов вектора выходных сигналов. Кортеж s0,s1,...,sN,sN+1 образует на полном ориентированном графе процедуры поллинга гамильтонов (посещающий каждую вершину ровно один раз) путь из s0 в sN+1. Одна из очевидных реализаций гамильтонова пути получается исключением из кортежа состояний s0 и sN+1. Замыкание (связь) состояний s1 и sN гамильтонова пути порождает гамильтонов цикл, в соответствии с которым производится опрос элементов киберфизической системы при поллинге.

Конкретная последовательность опроса элементов определяется разработчиком алгоритма поллинга с учетом специфики эксплуатации конкретной киберфизической системы. Плотности распределения времени пребывания процесса в состояниях s0 и sN+1 определяются вырожденным законом распределения:

fN+1.0(t)=f0,j(t)=δ(t),

где δ(t) – δ-функция Дирака. Как и ранее, предполагается, что обработка данных производится в операторах {si}, i∈ [1…N].

Плотность распределения времени возврата в любой из операторов {s1, … sN}, образующих при замыкании цикл, равна

fSj(t)=L1j=1NL(fj(t)),

где L[…] и L-1[…] – прямое и обратное преобразования Лапласа соответственно; fj(t) ∈ f(t) – плотность распределения времени выполнения оператора sj, выбираемая из матрицы f(t) в соответствии с построенным гамильтоновым циклом. Период цикла, характеризуемый оценкой математического ожидания времени возврата в начало после цикла поллинга, равен

T=j=1NTj=j=1N0tfj(t)dt,

где Tj – математическое ожидание времени выполнения операции sj, j∈[1…N].

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

2πT>Ω(k),k{1,...,K},

где Ω(k) – минимальная круговая частота дискретизации k-го параметра, определяемая теоремой Котельникова для спектра вектора входных сигналов [23, 24]. На практике это условие, как правило, не выполняется, поэтому ошибка дискретизации при ее реализации с помощью процедуры поллинга должна быть меньше допустимой, то есть удовлетворять условию

εminεkk[1,...,K],

где ε – допустимая ошибка дискретизации; εk – допустимая ошибка дискретизации k-го параметра.

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

pk=εfSj(t)dt.

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

fz(t)=L1LfSj(t)M,

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

TZ=0tfZ(t)dt.

Временной интервал между вводом входного сигнала и выводом выходного представляет собой чистое запаздывание в контуре обратной связи [25–27]. С точностью, достаточной для практических целей, можно считать, что запаздывание по времени во всех цепях обратной связи одинаково и определяется как временной интервал, начинающийся от чтения из буфера входного сигнала и заканчивающийся выводом выходного сигнала.

Если τk1, τk2 – пороговые значения времени запаздывания в цепи обратной связи, при которых перерегулирование параметра входного сигнала достигает критических значений, а τk3 – порог, при достижении которого киберфизическая система теряет устойчивость, то вероятность сбоя/отказа киберфизической системы определяется как

pZ=τfZ(t)dt,

где

τ=mink[1,...,K]τk1,τk2,τk3.

Обсуждение результатов

Оценки вероятностей pk и pz, а также плотностей распределения fk(t) и fz(t) являются основой для построения полумарковской модели отказов программных компонентов киберфизической системы. На рисунке показан алгоритм определения надежности программных компонентов киберфизической системы, характеризуемой временем запаздывания в цепи обратной связи.

 

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

Algorithm for determining the reliability of software components of a cyber-physical system characterized by the delay time in the feedback loop

 

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

С помощью полумарковской модели времена наработки программных компонентов киберфизической системы до сбоя (TS) и до отказа (TO) могут быть оценены как

TS=TZpZ,

To=NTZ+TZ(1pZ)(1pZN)i=1NipZi1pZN,

где TZ – математическое ожидание времени цикла поллинга; pZ – вероятность отказа программных компонентов в текущем цикле наблюдения.

Поток выходов времени запаздывания формирования вектора выходных сигналов относительно вектора входных сигналов в цепи обратной связи за установленные пределы, представляющий собой сумму потоков с разными значениями времени запаздывания, стремится к пуассоновскому [28–30]. Плотность распределения времени между двумя выходами времени запаздывания за порог в пуассоновском потоке равна

fTS(t)=1TSetTS, fTO(t)=1TOetTO,

где fTS(t) и fTO(t) – распределения, описывающие пуассоновские потоки сбоев и отказов программных компонентов киберфизической системы.

Выводы

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

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

×

Об авторах

Александр Николаевич Привалов

Тульский государственный педагогический университет им. Л.Н. Толстого

Email: privalov.61@mail.ru

д.т.н., профессор, директор института

Россия, г. Тула, 300026

Евгений Васильевич Ларкин

Тульский государственный университет

Email: elarkin@mail.ru

д.т.н., профессор

Россия, г. Тула, 300012

Алексей Валерьевич Богомолов

Федеральный исследовательский центр «Информатика и управление» РАН

Автор, ответственный за переписку.
Email: a.v.bogomolov@gmail.com

д.т.н., профессор, ведущий научный сотрудник

Россия, г. Москва, 119333

Список литературы

  1. Логинов И.В., Федоров В.И. Управление функциональным развитием многофункциональных киберфизических систем // ИСУ. 2023. № 2. С. 108–120.
  2. Ларкин Е.В., Богомолов А.В., Привалов А.Н., Акименко Т.А. Математическое обеспечение иерархического цифрового управления сложным технологическим объектом // Вестн. ЮУрГУ. Сер. Математика. Механика. Физика. 2024. Т. 16. № 4. С. 43–55. doi: 10.14529/mmph240406.
  3. Данилюк А.Ю., Минаков Е.П., Привалов А.Е., Александров М.А. Аналитический метод оценивания эффективности управления киберфизическими системами с учетом характеристик их цифровых двойников // Изв. РАРАН. 2023. № 4. С. 79–89.
  4. Обычайко Д.С., Шихин В.А. Анализ и принятие решений по эксплуатационной надежности киберфизических систем // Вестн. МЭИ. 2023. № 3. С. 154–162. doi: 10.24160/1993-6982-2023-3-154-162.
  5. Shatnawi O. Testing-effort dependent software reliability model for distributed systems. IJDST, 2013, vol. 4, no. 2, pp. 1–14. doi: 10.4018/jdst.2013040101.
  6. Aital P., Sashikala P. Role of software reliability models in performance improvement and management. J. of Software Engineering and Applications, 2021, vol. 5, no. 9, pp. 737–742. doi: 10.4236/jsea.2012.59086.
  7. Barack O., Huang L. Assessment and prediction of software reliability in mobile applications. J. of software engineering and applications, 2020, vol. 13, no. 9, pp. 179–190. doi: 10.4236/jsea.2020.139012.
  8. Лысов Д.В. Анализ надежности в жизненном цикле программного обеспечения // СУИТ. 2020. № 2. С. 76–82.
  9. Солдатов Е.С., Богомолов А.В., Ларкин Е.В., Солдатов А.С. Сенсорные сети контроля состояния авиационной техники при испытаниях и эксплуатации // Авиакосмическое приборостроение. 2024. № 2. С. 61–68.
  10. Соловьев С.Ю. Об одном методе генерации страниц-карт для веб-сайтов // Информационные процессы. 2008. Т. 8. № 1. С. 24–29.
  11. Соловьев С.Ю., Стельмашенко Д.Е. Метод экспертной классификации как инструмент анализа формальных понятий // ИИиПР. 2013. № 4. С. 57–61.
  12. Ларкин Е.В., Привалов А.Н., Богомолов А.В. Дискретный подход к моделированию синхронизированных эстафет // НТИ. Сер. 2: Информ. процессы и системы. 2020. № 2. С. 17–26.
  13. Golosovskiy M., Tobin D., Balandov M., Khlopotov R. Architecture of software platform for testing software of cyber-physical systems. In: LNNS. Proc. CoMeSySo, 2023, vol. 597, pp. 488–494.
  14. Тельнов Ю.Ф., Казаков В.А., Данилов А.В., Брызгалов А.А. Разработка моделей производственных и бизнес-процессов сетевых предприятий на основе многоагентных систем // Программные продукты и системы. 2023. Т. 37. № 4. С. 632–643. doi: 10.15827/0236-235X.144.632-643.
  15. Голосовский М.С. Информационно-логическая модель процесса разработки программного обеспечения // Программные системы и вычислительные методы. 2015. Т. 28. № 1. С. 59–68. doi: 10.7256/2305-6061.2015.1.14119.
  16. Голосовский М.С., Богомолов А.В., Тобин Д.С. Алгоритм настройки систем нечеткого логического вывода на основе статистических данных // НТИ. Сер. 2: Информ. процессы и системы. 2023. № 1. С. 1–9. doi: 10.36535/0548-0027-2023-01-1.
  17. Уласень А.Ф., Стальнов А.Н., Зуева А.Н. Надежность функционального программного обеспечения информационно-управляющих систем реального времени // Информационно-измерительные и управляющие системы. 2022. Т. 20. № 6. С. 67–71. doi: 10.18127/j20700814-202206-08.
  18. Мальковский М.Г., Соловьев С.Ю. Конструирование отношения псевдохронологического порядка в терминологических сетях // Открытые семантические технологии проектирования интеллектуальных систем. 2016. № 6. С. 183–186.
  19. Ларкин Е.В., Солдатов Е.С., Богомолов А.В. Математическое обеспечение мониторинга состояния и управления режимами эксплуатации систем хранения криогенных продуктов // Вестн. ЮУрГУ. Сер.: Математика. Механика. Физика. 2024. Т. 16. № 1. С. 23–31.
  20. Bielecki T.R., Jakubowski J., Niewęgłowski M. Conditional Markov chains: Properties, construction and structured dependence. Stochastic Processes and their Applications, 2017, vol. 127, no. 4, pp. 1125–1170. doi: 10.1016/j.spa.2016.07. 010.
  21. Lu H., Pang G., Mandjes M. A functional central limit theorem for Markov additive arrival processes and its applications to queueing systems. QUESTA, 2016, vol. 84, no. 3, pp. 381–406.
  22. Larkin E., Privalov A., Bogomolov A., Akimenko T. Digital control of continuous production with dry friction at actuators. In: SIST. Proc. Electromechanics and Robotics, 2022, vol. 232, pp. 427–436. doi: 10.1007/978-981-16-2814-6_37.
  23. Hayes M.H. Statistical digital signal processing and modeling. John Willey & Sons Publ., NY, 1996, 624 p.
  24. Stranneby D., Walker W. Digital signal processing and applications. Elsevier Publ., London, 2004, 357 p.
  25. Briat C. Stability and performance analysis of linear positive systems with delays using input-output methods. Int. J. of Control, 2018, vol. 91, no. 7, pp. 1669–1692. doi: 10.1080/00207179.2017.1326628.
  26. Li D., Chen G. Impulses-induced p-exponential input-to-state stability for a class of stochastic delayed partial differential equations. Int. J. of Control, 2019, vol. 92, no. 8, pp. 1805–1814. doi: 10.1080/00207179.2017.1412089.
  27. Sanz R., García P., Albertos P., Fridman E. Robust predictive extended state observer for a class of nonlinear systems with time-varying input delay. Int. J. of Control, 2020, vol. 93, no. 2, pp. 217–222. doi: 10.1080/00207179.2018. 1562204.
  28. Григелионис Б.И. О сходимости сумм ступенчатых случайных процессов к пуассоновскому // Теория вероятностей и ее применения. 1963. Т. 8. № 2. С. 189–194.
  29. Ларкин Е.В., Акименко Т.А., Богомолов А.В. Моделирование надежности бортового оборудования мобильного робота // Изв. Сарат. ун-та. Нов. сер. Сер.: Математика. Механика. Информатика. 2021. Т. 21. № 3. С. 390–399 (на англ.). doi: 10.18500/1816-9791-2021-21-3-390-399.
  30. Kobayashi H., Marl B.L., Turin W. Probability, random processes and statistical analysis. Cambridge University Press, London, 2011, 812 p. doi: 10.1017/CBO9780511977770.

Дополнительные файлы

Доп. файлы
Действие
1. JATS XML
2. Алгоритм определения надежности программных компонентов киберфизической системы, характеризуемой временем запаздывания в цепи обратной связи


© Privalov A.Н., Larkin E.В., Bogomolov A.В., 2025

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution-ShareAlike 4.0 International License.

Согласие на обработку персональных данных с помощью сервиса «Яндекс.Метрика»

1. Я (далее – «Пользователь» или «Субъект персональных данных»), осуществляя использование сайта https://journals.rcsi.science/ (далее – «Сайт»), подтверждая свою полную дееспособность даю согласие на обработку персональных данных с использованием средств автоматизации Оператору - федеральному государственному бюджетному учреждению «Российский центр научной информации» (РЦНИ), далее – «Оператор», расположенному по адресу: 119991, г. Москва, Ленинский просп., д.32А, со следующими условиями.

2. Категории обрабатываемых данных: файлы «cookies» (куки-файлы). Файлы «cookie» – это небольшой текстовый файл, который веб-сервер может хранить в браузере Пользователя. Данные файлы веб-сервер загружает на устройство Пользователя при посещении им Сайта. При каждом следующем посещении Пользователем Сайта «cookie» файлы отправляются на Сайт Оператора. Данные файлы позволяют Сайту распознавать устройство Пользователя. Содержимое такого файла может как относиться, так и не относиться к персональным данным, в зависимости от того, содержит ли такой файл персональные данные или содержит обезличенные технические данные.

3. Цель обработки персональных данных: анализ пользовательской активности с помощью сервиса «Яндекс.Метрика».

4. Категории субъектов персональных данных: все Пользователи Сайта, которые дали согласие на обработку файлов «cookie».

5. Способы обработки: сбор, запись, систематизация, накопление, хранение, уточнение (обновление, изменение), извлечение, использование, передача (доступ, предоставление), блокирование, удаление, уничтожение персональных данных.

6. Срок обработки и хранения: до получения от Субъекта персональных данных требования о прекращении обработки/отзыва согласия.

7. Способ отзыва: заявление об отзыве в письменном виде путём его направления на адрес электронной почты Оператора: info@rcsi.science или путем письменного обращения по юридическому адресу: 119991, г. Москва, Ленинский просп., д.32А

8. Субъект персональных данных вправе запретить своему оборудованию прием этих данных или ограничить прием этих данных. При отказе от получения таких данных или при ограничении приема данных некоторые функции Сайта могут работать некорректно. Субъект персональных данных обязуется сам настроить свое оборудование таким способом, чтобы оно обеспечивало адекватный его желаниям режим работы и уровень защиты данных файлов «cookie», Оператор не предоставляет технологических и правовых консультаций на темы подобного характера.

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

10. Я согласен/согласна квалифицировать в качестве своей простой электронной подписи под настоящим Согласием и под Политикой обработки персональных данных выполнение мною следующего действия на сайте: https://journals.rcsi.science/ нажатие мною на интерфейсе с текстом: «Сайт использует сервис «Яндекс.Метрика» (который использует файлы «cookie») на элемент с текстом «Принять и продолжить».