Application of majority voting and consensus voting algorithms in N-version software

被引:2
|
作者
Tsarev, R. Yu [1 ]
Durmus, M. S. [2 ]
Ustoglu, I. [3 ]
Morozov, V. A. [1 ]
机构
[1] Siberian Fed Univ, 79 Svobodny Pr, Krasnoyarsk 660041, Russia
[2] Pamukkale Univ, Kinikli Campus, TR-20070 Denizli, Turkey
[3] Yildiz Tech Univ, TR-34220 Istanbul, Turkey
关键词
RELIABILITY; SYSTEMS; OPTIMIZATION; BEHAVIOR; UNITS;
D O I
10.1088/1742-6596/1015/4/042059
中图分类号
TM [电工技术]; TN [电子技术、通信技术];
学科分类号
0808 ; 0809 ;
摘要
N-version programming is one of the most common techniques which is used to improve the reliability of software by building in fault tolerance, redundancy and decreasing common cause failures. N different equivalent software versions are developed by N different and isolated workgroups by considering the same software specifications. The versions solve the same task and return results that have to be compared to determine the correct result. Decisions of N different versions are evaluated by a voting algorithm or the so-called voter. In this paper, two of the most commonly used software voting algorithms such as the majority voting algorithm and the consensus voting algorithm are studied. The distinctive features of N-version programming with majority voting and N-version programming with consensus voting are described. These two algorithms make a decision about the correct result on the base of the agreement matrix. However, if the equivalence relation on the agreement matrix is not satisfied it is impossible to make a decision. It is shown that the agreement matrix can be transformed into an appropriate form by using the Boolean compositions when the equivalence relation is satisfied.
引用
收藏
页数:6
相关论文
共 50 条
  • [21] Using Blockchain Technology to Improve N-Version Software Dependability
    Gruzenkin, Denis V.
    Mikhalev, Anton S.
    Grishina, Galina V.
    Tsarev, Roman Yu.
    Rutskiy, Vladislav N.
    COMPUTATIONAL AND STATISTICAL METHODS IN INTELLIGENT SYSTEMS, 2019, 859 : 132 - 137
  • [22] Self-learning consensus voting strategy and its application based on multiple classification algorithms
    Bao, Yi-Qin
    Zhao, Qiang
    Yang, Zhong-Xue
    Zheng, Hao
    Wang, Yin-Tong
    Journal of Computers (Taiwan), 2020, 31 (04) : 198 - 210
  • [23] N-VERSION APPROACH TO FAULT-TOLERANT SOFTWARE.
    Avizienis, Algirdas
    IEEE Transactions on Software Engineering, 1985, SE-11 (12) : 1491 - 1501
  • [24] Disaster tweet classification: A majority voting approach using machine learning algorithms
    Krishna, Dasari Siva
    Srinivas, Gorla
    Reddy, P. V. G. D. Prasad
    INTELLIGENT DECISION TECHNOLOGIES-NETHERLANDS, 2023, 17 (02): : 343 - 355
  • [25] THE RELATIONSHIP BETWEEN 2 ALGORITHMS FOR DECISIONS VIA SOPHISTICATED MAJORITY VOTING WITH AN AGENDA
    REID, KB
    DISCRETE APPLIED MATHEMATICS, 1991, 31 (01) : 23 - 28
  • [26] Application of majority voting to pattern recognition: An analysis of its behavior and performance
    Lam, L
    Suen, CY
    IEEE TRANSACTIONS ON SYSTEMS MAN AND CYBERNETICS PART A-SYSTEMS AND HUMANS, 1997, 27 (05): : 553 - 568
  • [27] N-version Software Module Requirements to Grant the Software Execution Fault-Tolerance
    Gruzenkin, Denis V.
    Chernigovskiy, Alexey S.
    Tsarev, Roman Yu
    CYBERNETICS APPROACHES IN INTELLIGENT SYSTEMS: COMPUTATIONAL METHODS IN SYSTEMS AND SOFTWARE 2017, VOL. 1, 2018, 661 : 293 - 303
  • [28] A software-reliability growth model for N-version programming systems
    Teng, XL
    Pham, H
    IEEE TRANSACTIONS ON RELIABILITY, 2002, 51 (03) : 311 - 321
  • [29] Hu's Algorithm Application for Task Scheduling in N-Version Software for Satellite Communications Control Systems
    Chernigovskiy, Alexey S.
    Tsarev, Roman Yu.
    Knyazkov, Alexey N.
    2015 INTERNATIONAL SIBERIAN CONFERENCE ON CONTROL AND COMMUNICATIONS (SIBCON), 2015,
  • [30] Compensation Model of Multi-attribute Decision Making and Its Application to N-Version Software Choice
    Gruzenkin, Denis Vladimirovich
    Grishina, Galina Viktorovna
    Durmus, Mustafa Seckin
    Ustoglu, Ilker
    Tsarev, Roman Yurievich
    SOFTWARE ENGINEERING TRENDS AND TECHNIQUES IN INTELLIGENT SYSTEMS, CSOC2017, VOL 3, 2017, 575 : 148 - 157