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 条
  • [11] ANALYSIS OF FAULTS IN AN N-VERSION SOFTWARE EXPERIMENT
    BRILLIANT, SS
    KNIGHT, JC
    LEVESON, NG
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1990, 16 (02) : 238 - 247
  • [12] Reliability of N-version programming software with testing effort
    Gupta R.
    Jain M.
    International Journal of Reliability and Safety, 2020, 14 (04) : 229 - 251
  • [13] Algorithm diversity metric for N-version software
    Gruzenkin, D. V.
    Yakimov, I. A.
    Kuznetsov, A. S.
    Tsarev, R. Yu
    Grishina, G. V.
    Pupkov, A. N.
    Bystrova, N. V.
    INTERNATIONAL CONFERENCE: INFORMATION TECHNOLOGIES IN BUSINESS AND INDUSTRY, 2019, 1333
  • [14] Software bug prediction using weighted majority voting techniques
    Moustafa, Sammar
    ElNainay, Mustafa Y.
    El Makky, Nagwa
    Abougabal, Mohamed S.
    ALEXANDRIA ENGINEERING JOURNAL, 2018, 57 (04) : 2763 - 2774
  • [15] Majority voting for discrete population-based optimization algorithms
    Sedigheh Mahdavi
    Shahryar Rahnamayan
    Abbas Mahdavi
    Soft Computing, 2019, 23 : 1 - 18
  • [16] Majority voting for discrete population-based optimization algorithms
    Mahdavi, Sedigheh
    Rahnamayan, Shahryar
    Mahdavi, Abbas
    SOFT COMPUTING, 2019, 23 (01) : 1 - 18
  • [17] THE N-VERSION APPROACH TO FAULT-TOLERANT SOFTWARE
    AVIZIENIS, A
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1985, 11 (12) : 1491 - 1501
  • [18] Predicting Bug Severity using Customized Weighted Majority Voting Algorithms
    Awad, Michael A.
    ElNainay, Mustafa Y.
    Abougabal, Mohamed S.
    2017 PROCEEDINGS OF THE JAPAN-AFRICA CONFERENCE ON ELECTRONICS, COMMUNICATIONS, AND COMPUTERS (JAC-ECC), 2017, : 170 - 175
  • [19] Tag SNP selection using clonal selection and majority voting algorithms
    Ilhan, Ilhan
    Tezel, Gulay
    INTERNATIONAL JOURNAL OF DATA MINING AND BIOINFORMATICS, 2016, 16 (04) : 290 - 311
  • [20] A study of N-version programming and its impact on software availability
    Xie, Min
    Xiong, Chengjie
    Ng, Szu-Hui
    INTERNATIONAL JOURNAL OF SYSTEMS SCIENCE, 2014, 45 (10) : 2145 - 2157