Modeling the reliability of software components of cyber-physical systems

Cover Page

Cite item

Full Text

Abstract

This relevance of the research is due to the reliability of software components of cyber-physical systems being a key component of their effective functioning. Its appropriate mathematical modeling is essential for the economy digitalization. The paper aims to eliminate the disadvantages of known approaches to modeling the reliability of software components, when the estimates of reliability characteristics are based on empirical data on the errors detected during the testing of programs. Hence, the testing results mostly depend on test duration and on the completeness of the processed data area coverage by the sub-area of the data generated during testing. This reduces the efficiency of reliability estimation. The research focuses on the reliability modeling methods for software components of cyber-physical systems. The reliability is characterized by the delay time in the feedback loop between components. The authors of the paper used methods of software engineering, reliability theory, probability theory and Markov processes. The main result is mathematical reliability models of software components of cyber-physical systems. They combine semi-Markov models of software components, generations of their faults and failures. The developed mathematical models are based on the structural-parametric semi-Markov model of software faults and failures. Its parameters are determined by the computational complexity and requirements to the software taking into account its functional purpose. The authors obtained formalized descriptions of Poisson flows of faults and failures of software components of a cyber-physical system. The practical relevance of the paper is due to its application for determining the reliability of software components at all stages of a cyber-physical system life cycle, where elements interact, self-adjust and adapt to changes using standard software-implemented protocols.

Full Text

Введение. Ключевые достижения и тренды научно-технического прогресса связаны с цифровизацией, предполагающей повсеместное применение цифровых технологий сбора и обработки информации [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) – распределения, описывающие пуассоновские потоки сбоев и отказов программных компонентов киберфизической системы.

Выводы

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

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

×

About the authors

Aleksandr N. Privalov

Tolstoy Tula State Pedagogical University

Email: privalov.61@mail.ru

Dr.Sci. (Engineering), Professor, Director of the Institute

Russian Federation, Tula, 300026

Evgeny V. Larkin

Tula State University

Email: elarkin@mail.ru

Dr.Sci. (Engineering), Professor

Russian Federation, Tula, 300012

Aleksey V. Bogomolov

Federal Research Center “Computer Science and Control” of RAS

Author for correspondence.
Email: a.v.bogomolov@gmail.com

Dr.Sci. (Engineering),  Professor, Leading Researcher

Russian Federation, Moscow, 119333

References

  1. Loginov, I.V., Fedorov, V.I. (2023) ‘Management of functional development of multifunctional cyber-physical systems’, IS&CS, (2), pp. 108–120 (in Russ.).
  2. Larkin, E.V., Bogomolov, A.V., Privalov, A.N., Akimenko, T.A. (2024) ‘Mathematical support for hierarchical digital control of a complex technological object’, Bull. of the SUrSU. Ser. Math. Mechanics. Physics, 16(4), pp. 43–55 (in Russ.). doi: 10.14529/mmph240406.
  3. Danilyuk, A.Yu., Minakov, E.P., Privalov, A.E., Aleksandrov, M.A. (2023) ‘Analytical method of evaluation of efficiency of control of cyberphysical systems taking into account characteristics of their digital counterparts’, Bull. of RARAS, (4), pp. 79–89 (in Russ.).
  4. Obychaiko, D.S., Shikhin, V.A. (2023) ‘Analysis of and decision-making on the operational reliability of cyber-physical systems’, Bull. of MPEI, (3), pp. 154–162 (in Russ.). doi: 10.24160/1993-6982-2023-3-154-162.
  5. Shatnawi, O. (2013) ‘Testing-effort dependent software reliability model for distributed systems’, IJDST, 4(2), pp. 1–14. doi: 10.4018/jdst.2013040101.
  6. Aital, P., Sashikala, P. (2021) ‘Role of software reliability models in performance improvement and management’. J. of Software Engineering and Applications, 5(9), pp. 737–742. doi: 10.4236/jsea.2012.59086.
  7. Barack, O., Huang, L. (2020) ‘Assessment and prediction of software reliability in mobile applications’, J. of Software Engineering and Applications, 13(9), pp. 179–190. doi: 10.4236/jsea.2020.139012.
  8. Lysov, D.V. (2020) ‘Reliability analysis in the software life cycle’, Control Systems and Inform. Tech., (2), pp. 76–82 (in Russ.).
  9. Soldatov, E.S., Bogomolov, A.V., Larkin, E.V., Soldatov, A.S. (2024) ‘Sensor networks for monitoring the condition of aviation equipment during testing and operation’, Aerospace Instrument-Making, (2), pp. 61–68 (in Russ.).
  10. Soloviev, S.Yu. (2008) ‘On one method of generating page maps for websites’, Information Processes, 8(1), pp. 24–29 (in Russ.).
  11. Soloviev, S.Yu., Stelmashenko, D.E. (2013) ‘The expert classification method as a for formal concept analysis tool’, AIDM, (4), pp. 57–61 (in Russ.).
  12. Larkin, E.V., Privalov, A.N., Bogomolov, A.V. (2020) ‘Discrete approach to modeling synchronized relay races’, Sci. and Tech. Inform. Ser. 2: Inform. Processes and Systems, (2), pp. 17–26 (in Russ.).
  13. Golosovskiy, M., Tobin, D., Balandov, M., Khlopotov, R. (2023) ‘Architecture of software platform for testing software of cyber-physical systems’, in LNNS. Proc. CoMeSySo, 597, pp. 488–494.
  14. Telnov, Yu.F., Kazakov, V.A., Danilov, A.V., Bryzgalov, A.A. (2023) ‘Network enterprises: Production and business process models based on multi-agent systems’, Software & Systems, 37(4), pp. 632–643 (in Russ.). doi: 10.15827/0236-235X.144.632-643.
  15. Golosovsky, M.S. (2015) ‘Information and logical model of the software development process’, Software Systems and Computational Methods, 28(1), pp. 59–68 (in Russ.). doi: 10.7256/2305-6061.2015.1.14119.
  16. Golosovsky, M.S., Bogomolov, A.V., Tobin, D.S. (2023) ‘Algorithm for setting fuzzy logical inclusion systems based on statistical data’, Sci. and Tech. Inform. Ser. 2: Inform. Processes and Systems, (1), pp. 1–9 (in Russ.). doi: 10.36535/0548-0027-2023-01-1.
  17. Ulasen, A.F., Stalnov, A.N., Zueva, A.N. (2022) ‘Ensuring the reliability of the functional software of informatively-managing systems real time’, Information-Measuring and Control Systems, 20(6), pp. 67–71 (in Russ.).
  18. Malkovsky, M.G., Soloviev, S.Yu. (2016) ‘The designing of pseudo chronological order relation in the therminological networks’, OSTIS, (6), pp. 183–186 (in Russ.).
  19. Larkin, E.V., Soldatov, E.S., Bogomolov, A.V. (2024) ‘Mathematical support for monitoring the state and controlling the operating modes of cryogenic product storage systems’, Bull. of the SUrSU. Ser. Math. Mechanics. Physics, 16(1), pp. 23–31 (in Russ.).
  20. Bielecki, T.R., Jakubowski, J., Niewęgłowski, M. (2017) ‘Conditional Markov chains: Properties, construction and structured dependence’, Stochastic Processes and their Applications, 127(4), pp. 1125–1170. doi: 10.1016/j.spa. 2016.07.010.
  21. Lu, H., Pang, G., Mandjes, M. (2016) ‘A functional central limit theorem for Markov additive arrival processes and its applications to queuing systems’, QUESTA, 84(3), pp. 381–406.
  22. Larkin, E., Privalov, A., Bogomolov, A., Akimenko, T. (2022) ‘Digital control of continuous production with dry friction at actuators’, in SIST. Proc. Electromechanics and Robotics, 232, pp. 427–436. doi: 10.1007/978-981-16-2814-6_37.
  23. Hayes, M.H. (1996) Statistical Digital Signal Processing and Modeling, NY: John Willey & Sons Publ., 624 p.
  24. Stranneby, D., Walker, W. (2004) Digital Signal Processing and Applications. London: Elsevier Publ., 357 p.
  25. Briat, C. (2018) ‘Stability and performance analysis of linear positive systems with delays using input-output methods’, Int. J. of Control, 91(7), pp. 1669–1692. doi: 10.1080/00207179.2017.1326628.
  26. Li, D., Chen, G. (2019) ‘Impulses-induced p-exponential input-to-state stability for a class of stochastic delayed partial differential equations’, Int. J. of Control, 92(8), pp. 1805–1814. doi: 10.1080/00207179.2017.1412089.
  27. Sanz, R., García, P., Albertos, P., Fridman, E. (2020) ‘Robust predictive extended state observer for a class of nonlinear systems with time-varying input delay’, Int. J. of Control, 93(2), pp. 217–222. doi: 10.1080/00207179.2018. 1562204.
  28. Grigelionis, B.I. (1963) ‘On the convergence of sums of step random processes to a Poisson process’, Theory of Probability and its Applications, 8(2), pp. 177–182. doi: 10.1137/1108017.
  29. Larkin, E.V., Akimenko, T.A., Bogomolov, A.V. (2021) ‘Modeling the reliability of the onboard equipment of a mobile robot’, Izv. Sarat. Univ. Math. Mech. Inform., 21(3), pp. 390–399. doi: 10.18500/1816-9791-2021-21-3-390-399.
  30. Kobayashi, H., Marl, B.L., Turin, W. (2011) Probability, Random Processes and Statistical Analysis. London: Cambridge University Press, 812 p.

Supplementary files

Supplementary Files
Action
1. JATS XML
2. Algorithm for determining the reliability of software components of a cyber-physical system characterized by the delay time in the feedback loop

Download (1MB)

Copyright (c) 2025 Privalov A.N., Larkin E.V., Bogomolov A.V.

Creative Commons License
This work is licensed under a 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») на элемент с текстом «Принять и продолжить».