Proceedings of International Conference on Advances in Engineering and Technology
ISBN : 978 - 1505606395
Performance Voting Algorithms for Software Safety Estimation on Safety-Critical Systems B.UMAMAHESWARARAO
P.SEETHARAMAIAH
S.PHANIKUMAR
Dept. of CS & SE Andhra University Visakhapatnam, India +91 9000084878 umamaheshbatta@gmail.com
Dept. of CS & SE Andhra University Visakhapatnam, India +91 9848224505 psrama@gmail.com
Dept. of Computer Sciences GITAM University Hyderabad, India. +91 9618205719 phanikumar.s@gmail.com
ABSTRACT The focus of this work is the analysis and performance evaluation of different weighted-average voting algorithms like standard weightedaverage voter, flexible weighted-average voter and static and dynamic rule-based fuzzy weighted-average voter algorithms. For this task a MatLab environment was implemented and several experiments were conducted. For performing fault- making process, several weighted-average voter algorithms are used of which scorebased weighted-average voter is the most important algorithm. We calculate the safety evaluation on the six existing voting algorithms and a modified dynamic-bandwidth-based fuzzy-voting algorithm with soft-dynamic threshold value is proposed. Safety performance is evaluated for all six voting algorithms on a triple-modular redundant system. In this paper different weighted average voting algorithms are surveyed and merits and limitations are discussed. The experimental results show that the novel Voter gives higher safety than the other weighted-average voters. This paper presents a voting criterion with a dynamic threshold value and compares different weighted-average voting algorithms with their safety criteria. The Experimental outcomes show that the dynamic bandwidth and dynamic threshold Voter give more correct results than the remaining voting algorithms.
KEY WORDS: Safety-Critical Systems, Voter, Redundancy, Fault Tolerance, Threshold.
ACRONYMS AND ABBREVIATIONS SWAV Standard weighted-average voter FLWAV Flexible weighted-average voter FZWAV Fuzzy weighted-average voter WAVST weighted average voter with soft threshold value FWAVDB Fuzzy weighted-average voter with dynamic bandwidth selection SBFWAV Score-based fuzzy weighted-average voter SBFWAVDB Score-based fuzzy weighted-average voter with dynamic bandwidth selection SBFWAVDBDT Score-based fuzzy weighted-average voter with dynamic bandwidth and dynamic threshold selection NMR N-Modular Redundancy NVP N-Version Programming TMR Triple-Modular Redundancy WAV Weighted-average voter SCS Safety-critical systems
I. INTRODUCTION Software is the main aspect of many safety critical system (SCS) applications [12]. Many software safety voting algorithms have been proposed over the past years and they have been studied and used in SCS applications. The aim of these algorithms is to mask the faults in SCS by using NVP to increase the safety. A Voter is a crucial element in the execution of N-Modular Redundant systems [1]. NModular Redundancy (NMR) and N-Version Programming (NVP) [3] are well-known methods of fault-masking. Both use redundant modules and a voting unit to hide the occurrence of errors from the system output [3, 11]. The simplest form of the N-Modular
www.iaetsd.in
Redundancy approach is the well-known Redundancy (TMR) as shown in Fig. 1.
Triple-Modular
Figure1.Experimental setup to evaluate the performance of a Voter Three similar modules execute an identical operation on identical copies of information, and then pass the results to the voter [13]. The voter arbitrates between the acquired results and produces only one result [11]. A variety of voting methods most commonly used [13, 11]. Fault-tolerance is the property that enables a safety critical system to continue functioning properly even in the presence of errors. These techniques are used in Infrastructure, Medicine, Recreation, Railway, Automotive, e-commerce, Ad-hoc systems, transport, nuclear power station, aerospace and Army [13]. Voting can be implemented at different system levels, for example in data fusion at sensory level using a set of redundant sensors [14]. Redundancy is one of the important techniques for accomplishing fault-tolerance .The main objective of this research paper is designing SBFWAVDBDT for safety-critical systems. This Research Paper is organized as follows. Section 2 presents the related work on different weighted-average voter algorithms. Section3 describes the Performance evaluation of different WAVs. Section 4 describes conclusions.
2. RELATED WORKS 2.1 SWAV SWAV provides poor safety that is nonoccurrence of incorrect outputs [4]. The activities involved in this voting process are as follows. Determine the differences between module results. Take weight value to each module as: Wi = The output is determined as the weighted mean of the module results as:
Output =
98 International Association of Engineering and Technology for Skill Development
Proceedings of International Conference on Advances in Engineering and Technology
ISBN : 978 - 1505606395
µmedium (dij) =
Figure2.Standard weighted-average Voter
µlarge (dij) =
2.2 FLWAV ‘FLWAV uses two tunable parameters for flexibility to voting algorithm’ [5]. Compute the distances between the module results. Calculate the ‘degree of closeness' of the modules is Sij
=
where, q parameter tunes the rate of roll off of this function, and p is used to set the midpoint value of the function The modified function is Sij
=
Fuzzy rules are used to find the fuzzy agreeability. It can be done in two ways, one is a fuzzy rule set to the module result xi that gives agreeability. For example, if (d12 is small) AND (d13 is small) Then x1 agreeability is very high. Another one is mapping is done quantitatively between the fuzzy differences to the fuzzy agreeability [6]. Defuzzyfy the fuzzy agreeability values and get the weight values for the module results. Wi =
Final output =
The weight value is Wi =
This fuzzy voting gives higher safety compared to the remaining weighted-average voting algorithms .The availability is also less here than the other WAV algorithms.
Final Output =
Figure3. Flexible weighted-average voter
Figure4. Fuzzy weighted-average Voter
This voting algorithm uses the tunable parameter and gives more appropriate outcomes than the SWAV algorithm in the presence of small permanent and transient errors.
Higher safety values than all the other WAV criteria can be carried out by using this voting criteria at the existence of large mistakes. But, it provides poor availability. For small errors, it gives lower safety than all the other weighted average voting.
2.3 FZWAV FZWAV or Rule-based fuzzy weighted-average voter also provides smooth actions in the place of the harsh actions associated with a difficult threshold value [6]. A set of fuzzy guidelines are used here to calculate the agreeability of each module depending on the range sets of that component outcomes with the other component outcomes. Determine the distances between the modules. The membership function of the module ‘i’ is given below:
µsmall (dij) =
2.4 FWAVDB Module outputs are x1, x2, x3 and Calculate Differences (d12, d23, d31). Setting the dynamic fuzzy bandwidth, B=mean (ND), A=Bstandard deviation (ND), C = B + standard deviation (ND). Defuzzyfy the fuzzy agreeability values to obtain the weight values for the module results. Weighted values and output is determined by using above voting. FWAVDB overcomes the problems associated with a fixed threshold value. It is designed based on two thresholds. They are all distances below, above, middle values between below and above and the parameters which will decide small, medium and large membership values. Performance of the static voter varies with variations of these fuzzy parameter values. So there is a need for dynamic values for these parameters. The complexity is Rule based fuzzy inference step with centroid norm is used to calculate the weights [11].
2.5 SBFWAV Module scores are calculated instead of using fuzzy rule set to inference step [11]. Scores for the module ‘i’ and ‘j’ which has dij as the module agreement distance can be calculated as follows:
www.iaetsd.in
99 International Association of Engineering and Technology for Skill Development
Proceedings of International Conference on Advances in Engineering and Technology
Si + = μhigh (dij) + μmed (dij) – μlow (dij) Sj += μhigh (dij) + μmed (dij) – μlow (dij) If any module score is negative, normalize all the module scores to make all of them positive. Calculate the Voter output as a weightedaverage of scores and module output values. % Code for normalizing scores if any score is negative If (s1<0 || s2<0 || s3<0) Small=s1; If (score2<small) Small=s2; End If (s3<small) Small=s3; End Big=s1; If (s2>big) Big=s2; End If (s3>big) Big=s3; End s1= (s1-small) / (big-small); s2= (s2-small)/ (big-small); s3= (s3-small)/ (big-small); End %End of normalization of scores
If
s1=s1+uhigh+umed-ulow; s2=s2+uhigh+umed-ulow; %end d12 %d23 if(nd23==0) uhigh=1; elseif(nd23>=0 && nd23<=a) uhigh=(1-((nd23-0)./(a-0))); else uhigh=0; end
Otherwise Output = The SBFWAV increases the performance by avoiding the classical fuzzy rules use for inference. Performance of this membership function based voter is little lower compared to the rule based fuzzy voter but computational complexity is far reduced. In this technique optimal values are selected for fuzzy parameters statically based on trial and error method.
2.6. SBFWAVDBDT Find the distances between module output I, j. Normalize the module agreement distances (ND).Substitute upper triangular of the distance matrix in to ND. The fixed threshold value is 0.5.Accuracy threshold value is taken same as the voter threshold value. The Dynamic threshold is set as: Vt = X / 100. Setting the dynamic fuzzy bandwidth as follows b=mean (ND), a=b-standard deviation (ND), c=b+ standard deviation (ND).
www.iaetsd.in
if(nd12<a) umed=0; else if(nd12>=a && nd12<=b) umed=(nd12-a)./(b-a); else if(nd12>=b && nd12<=c) umed=1-((nd12-b)./(c-b)); else umed=0; end if(nd12<=b) ulow=0; else if(nd12>=b && nd12<=c) ulow = (nd12-b)./(c-b); else ulow=1; end
>0 then output=
% Code for dynamically modifying a, b, c values If (((nd12+nd23+nd31)/3) ~= 0) b= (nd12+nd23+nd31) /3; A= [nd12 nd23 nd31]; a= (b-std (A, 1)); If (a<0) a=0; End c= (b+ std (A, 1)); If(c>1) c=1; End End % Code for finding the scores for modules results %d12 if(nd12==0) uhigh=1; else if(nd12>=0 && nd12<=a) uhigh=(1-((nd12-0)./(a-0))); else uhigh=0; end
ISBN : 978 - 1505606395
if(nd23<a) umed=0; else if(nd23>=a && nd23<=b) umed=(nd23-a)./(b-a); else if(nd23>=b && nd23<=c) umed=1-((nd23-b)./(c-b)); else umed=0; end if(nd23<=b) ulow=0; else if(nd23>=b && nd23<=c) ulow = (nd23-b)./(c-b); else ulow=1; end s2=s2+uhigh+umed-ulow; s3=s3+uhigh+umed-ulow; %end d23 %d31 if(nd31==0) uhigh=1; else if (nd31>=0 && nd31<=a) uhigh=(1-((nd31-0)./(a-0))); else uhigh=0; end if(nd31<a) umed=0; else if(nd31>=a && nd31<=b) umed=(nd31-a)./(b-a); else if(nd31>=b && nd31<=c) umed=1-((nd31-b)./(c-b)); else umed=0;
100 International Association of Engineering and Technology for Skill Development
Proceedings of International Conference on Advances in Engineering and Technology
end
ISBN : 978 - 1505606395
2.7 DESIGN OF PROPOSED VOTER
if(nd31<=b) ulow=0; else if(nd31>=b && nd31<=c) ulow = (nd31-b)./(c-b); else ulow=1; end s1=s1+uhigh+umed-ulow; s3=s3+uhigh+umed-ulow; %end d31 The fuzzy membership function can be computed for the agreement set. Therefore, it is possible to compute the membership values μhigh (dij), μmed (dij), μlow (dij) very efficiently. In existing system finding the fuzzy rule set to use for inference is overhead. One key element to increase the performance to be the avoidance of fuzzy rule set. Therefore compute module scores instead of making use of fuzzy rule set to inference step. Scores for the module ‘i’ and ‘j’ which has dij as the module agreement distance can be calculated as follows: Si + = μhigh (dij) + μmed (dij) – μlow (dij) Sj += μhigh (dij) + μmed (dij) – μlow (dij) If any module score is negative, normalize all the module scores to make all of them positive. Calculate the Voter output as a weightedaverage of scores and module output values.
If
>0 then output=
Figure5. Block diagram of the proposed voter algorithm for a TMR system
Otherwise Output = In this mean of the normalized distance vector for a particular voting cycle is calculated and assigned to parameter ‘b’. Standard deviation of the normalized distances subtracted from the mean is assigned to ‘a’ and the standard deviation added to mean is assigned to parameter ‘c’.
The SBFWAVDBDT voting improves the both safety and reliability than remaining weighted average voting algorithms. It can be used for any system and for any input ranges. The SBFWAVDBDT useful for multi state SCS. It improves the both safety and availability. In all cases this algorithm gives good results both small errors and large errors.
2.8 MERITS & DEMERITS NAME ALGORITHM
SWAV
OF
WEIGHT MODULE
VALUE
TO
Large number of correct results and use of the tunable parameter β gives
Wi =
flexible characteristics to this voting, the safety is very inadequate. This voting algorithm uses the tunable parameter and gives more appropriate outcomes than the SWAV.
FLWAV Wi =
WAVST Wi =
FZWAV
FWAVDB SBFWAV
www.iaetsd.in
MERITS & DEMERITS
Wi =
Wi = Si + = μhigh (dij) + μmed (dij) – μlow (dij) Sj += μhigh (dij) + μmed (dij) – μlow (dij)
At the presence of small errors, this can give higher safety and availability performances compared to both SWAV. The safety and availability increases with the increasing ‘n’ parameter for small errors. But at the presence of large errors, this reduces the safety performance considerably compared to the inexact majority voting. Availability,at the case of large errors, is also not so high. This FZWAV gives higher safety compared to the previously stated WAV algorithms, but lower safety values compared to the inexact majority voting, at the presence of large errors. At the presence of small errors FZWAV provide lower safety values than the other previously stated SWAV, FLWAV, WAVST algorithms and higher safety compared to the inexact majority voting algorithm. This FWAVDB can be used for any systems with little system knowledge and for any input data ranges. The drawback in this system is calculated of the classical fuzzy rules used for inference. Module scores are computed instead of fuzzy rule set. Computational complexity is reduced. Drawback is the use of static fuzzy bandwidth values.
101 International Association of Engineering and Technology for Skill Development
Proceedings of International Conference on Advances in Engineering and Technology
SBFWAVDB
SBFWAVDBDT
ISBN : 978 - 1505606395
Si + = μhigh (dij) + μmed (dij) – μlow (dij) Sj += μhigh (dij) + μmed (dij) – μlow (dij)
The SBFWAVDB improves the both safety and reliability than remaining WAV
Si + = μhigh (dij) + μmed (dij) – μlow (dij)
This technique improves both the safety and availability performances than fuzzy
algorithms. It can be used for any system and for any input ranges. It is not used for multi state SCS.
weighted voting fixed threshold value. It is used for multi state SCS.
Sj += μhigh (dij) + μmed (dij) – μlow (dij)
3. PERFORMANCE EVALUATION 3.1. SWAV
3.3. FOUR FZWAV ALGORITHMS
Assessment of SWAV is done by operating each Voter for 10000 voting period on a TMR program since TMR is commonly used in safety-critical programs. One error 100 % free module and the other modules perturbed with huge errors. For each error amplitude e=0 to e=10 and ‘e’ value incremented by 1, Voters are run for 10000 voting period and how many periods each Voter is providing the appropriate outcome (safety performance) is documented. Module1 is error totally exempt from 0 to 3999 periods, whereas module2, module3 is perturbed with a mistake in the variety [-e +e]. Module3 is mistake totally exempt from 4000 to 6999 periods, whereas module1 and module2 are perturbed with a mistake in the variety [-e +e]. Module2 is a mistake totally exempt from 7000 to 10000 periods, whereas module2, module1 is perturbed with an error in the variety [-e +e]. Different accuracy threshold like 0.1 are taken while determining the safety efficiency.
In this case, two modules are perturbed with the large errors and the other module is mistake 100 % free. For each error amplitude e=0 to e=10 and ‘e’ value incremented by one, Voters are run for 10000 voting period and how many periods each Voter is providing the safety performance is documented. From voting pattern 0 to 3999, module1 is error 100 % free and module2 is perturbed with the mistake in the variety [-e +e] and module3 is perturbed with the error in the variety [-2e +2e].
Figure8 four fuzzy weighted-average Voters Assessment of the six regular Voters is done by operating each Voter for 10000 voting period on a TMR program. SBFWAVDBDT gives more safety, evaluate to the staying voting methods. The dynamic threshold value here is set proportional to the input value because, the threshold value should be different for different variety of input. This voting enhances the both safety and stability activities than the staying voting methods. Figure6. Standard weighted-average Voter
3.2. FLWAV Assessment of the FLWAV is done by operating each Voter for 10000 voting period on a TMR program since TMR is commonly used in safety-critical programs. Two error 100 % free segments and the other component perturbed with huge mistakes. In this, two segments are mistake 100 % free and the other component is perturbed with the huge mistakes. For each error amplitude e=0 to e=10 and ‘e’ value incremented by 1, Voters are run for 10000 voting period and how many periods each Voter is providing the appropriate output (safety performance) is documented.
Figure9. Six weighted-average Voters Dynamic fuzzy Voter is giving better safety performance for small errors compared to static fuzzy Voter since it is calculating the local mean for each data set and deciding the fuzzy bandwidth.
Figure7 Flexible weighted-average Voter
www.iaetsd.in
102 International Association of Engineering and Technology for Skill Development
Proceedings of International Conference on Advances in Engineering and Technology
Table.3.1 static fuzzy voter Cycle Input number
ISBN : 978 - 1505606395
Module1
Module2
Module3
a
b
c
Output
1
100.00
100.00
100.00
100.00
0.4
0.65
0.9
100.00
2
109.98
109.98
109.98
109.98
0.4
0.65
0.9
109.98
3
119.86
119.86
119.86
119.86
0.4
0.65
0.9
119.86
4
129.55
129.55
129.55
129.55
0.4
0.65
0.9
129.55
5
138.94
138.94
138.94
138.94
0.4
0.65
0.9
138.94
6
147.94
147.94
147.94
147.94
0.4
0.65
0.9
147.94
7
156.46
156.46
156.46
156.46
0.4
0.65
0.9
156.46
As shown in Table 3.1, static fuzzy Voter gives 100% correct outputs when three modules are error free. Up to cycle no 7 module1, module2 and module3 are error free, whereas module3 is perturbed with error and cycle no 40 onwards module2 and module3 are free. Static selection of fuzzy parameters ‘a’,’ b’ and ‘c’ are shown in Table3.1. Module outputs which are far away from the mean of the module outputs are identified as outliers and less weight is given and hence avoided from contributing to the output. Table.3.2 dynamic fuzzy voter with module1 is error free Cycle Input Module1 Module2 number
Module3
a
b
c
Output
1
100.00
100.00
99.13
100.79
0
0.3599
0.8137
100.222
2
109.98
109.98
109.52
110.17
0.1201
0.5307
0.9412
110.007
3
119.86
119.86
119.60
120.17
0
0.3845
0.824
119.806
4
129.55
129.55
129.79
129.11
0.0727
0.4818
0.8908
129.562
5
138.94
138.94
138.06
139.33
0.108
0.5178
0.9268
138.973
6
147.94
147.94
146.19
147.23
0.0215
0.4388
0.8561
147.324
As shown in Table 3.2, dynamic fuzzy Voter gives 99% correct outputs when one module is error free. From cycle no 1 to 6 module1 is error free, whereas module2 and module3 is perturbed with error. Dynamic fuzzy Voter detected the erroneous module as an outlier as it is far from the other module outputs and avoided from contributing to the Voter output. Dynamic selection of fuzzy parameters ‘a’, ‘b’ and ‘c’ are shown in Table3.2. Table.3.3 dynamic fuzzy voter with module3 is error free Cycle Input Module1 Module2 number
Module3
a
b
c
Output
400
140.39
136.58
143.30
140.39
0
0.412
0.839
140.90
401
137.25
136.72
134.33
137.25
0.163
0.59
1
136.89
402
133.74
135.93
130.43
133.74
0.029
0.44
0.86
133.99
403
129.88
130.60
127.46
129.88
0.148
0.567
0.987
130.06
404
125.73
126.48
125.45
125.73
0.126
0.538
0.950
125.69
405
121.32
120.63
123.49
121.32
0.142
0.559
0.975
121.17
406
116.70
117.56
117.56
116.70
0.157
0.58
1
116.94
407
111.91
115.80
114.66
111.91
0.117
0.52
0.937
114.79
As shown in Table 3.3, dynamic fuzzy Voter gives 99% correct outputs when one module is error free. From cycle no 400 to 407 module3 is error free, whereas module1 and module2 are perturbed with error. Dynamic fuzzy Voter detected the erroneous module as an outlier as it is far from the other module outputs and avoided from contributing to the Voter output. Dynamic selection of fuzzy parameters ‘a’, ‘b’ and ‘c’ are shown in Table3.3. Table.3.4 dynamic fuzzy voter with module2 is error free Cycle Input Module1 Module2 number
Module3
a
b
c
Output
700
135.33
139.20
135.33
134.94
0.183
0.63
1
135.17
701
138.69
142.47
138.69
138.59
0.192
0.658
1
138.64
www.iaetsd.in
103 International Association of Engineering and Technology for Skill Development
Proceedings of International Conference on Advances in Engineering and Technology
ISBN : 978 - 1505606395
702
141.66
140.52
141.66
139.31
0
0.352
0.81
140.85
703
144.21
144.57
144.21
141.71
0.17
0.618
1
144.35
704
146.32
148.48
146.32
149.59
0.088
0.496
0.90
148.49
705
147.97
149.01
147.97
150.15
0
0.35
0.81
148.72
706
149.13
147.32
149.13
147.28
0.193
0.65
1
147.30
707
149.81
150.08
149.81
153.11
0.185
0.63
1
149.97
As shown in Table 3.4, dynamic fuzzy Voter gives 99% correct outputs when one module is error free. From cycle no 700 to 407 module2 is error free, whereas module1 and module3 are perturbed with error. Dynamic fuzzy Voter detected the erroneous module as an outlier as it is far from the other module outputs and avoided from contributing to the Voter output. Dynamic selection of fuzzy parameters ‘a’, ‘b’ and ‘c’ are shown in Table3.4.
IV. CONCLUSIONS In this work, SWAV, FLWAV and FZWAV using statistical parameters and dynamic parameters are designed. This static method is useful only in the situations where the data ranges are known based upon which optimal fuzzy parameters are selected to decide the fuzzy bandwidth. Dynamic Fuzzy Voter designed in this work, can dynamically configure itself for any data of any ranges as it decides the fuzzy parameters based upon the local data of a particular voting cycle, using statistical parameters like mean and standard deviation. This dynamic fuzzy Voter can be used in any safety-critical system without having much knowledge about the system, data and ranges of data. This dynamic fuzzy Voter can be used in any safety-critical system without having much knowledge about the system, data and ranges of data. If, one module is error free, this proposed voting algorithm can provide almost hundred percent (100%) safety. The time complexities and space complexities are used to test the performances of voter algorithms are left as a future work.
REFERENCES [1] S. Lee, J.-I. Jung, and I. Lee. Voting Structures for Cascaded Triple Modular Redundant Modules, IEICE Electronics Express, 2007, 4 (21): 657-664. [2] A. B. Baykant. Hierarchical Triple-Modular Redundancy (HTMR) Network For Digital Systems, OncuBilim Algorithm And Systems Labs. 2008, 8 (5), URL: http://arxiv.org/ftp/arxiv/papers/0902/0902.0241.pdf [3] L. Chen and A. Avizienis, “N-Version Programming: a faulttolerance approach to reliability of software operation,” in Digest of Papers FTCS’8: IEEE 8th Annu. Int. Symp. Fault-Tolerant Computing Systems, Toulouse, France, June 1978, pp. 3–9. [4] P. Lorczak, A. Caglayan, and D. Eckhardt, “A Theoretical Investigation of Generalized Voters for Redundant Systems”, IEEE Computer Soc. Press, 21-23 June1989, pp 444-451.
www.iaetsd.in
[5] G. Latif-Shabgahi, A. J. Hirst and S. Bennett, "A novel family of weighted average Voters for fault tolerant computer control systems”, in Proc. of ECC03: European Control Conf., Cambridge, Sept. 2003, pp. 1-10. [6] G. Latif-Shabgahi and A. J. Hirst, “A fuzzy voting scheme for hardware and software fault tolerant systems,” Fuzzy Sets and Systems, vol. 150, issue 3, pp. 579-598, March 2005. [7] G. Latif-Shabgahi, S. Bennett and J. M. Bass, “Smoothing voter: a novel voting algorithm for handling multiple errors in fault-tolerant control systems,” Microprocessors and Microsystems, vol. 27, issue 7, pp. 303-313, August 2003. [8] G. Latif-Shabgahi, J.M. Bass, S. Bennett, "History-based weighted-average voter: a novel software voting algorithm for faulttolerant computer systems," in 9th workshop Parallel and Distributed Processing, 2001, pp. 402-409. [9] G. Latif-Shabgahi, A. J. Hirst and S. Bennett, "A novel family of weighted average voters for fault tolerant computer control systems", in Proc. of ECC03: European Control Conf., Cambridge, Sept. 2003, pp. 1-10. [10] G. R. Latif-Shabgahi, “A novel algorithm for weighted-average voting used in fault tolerant computing systems,” Microprocessors and Microsystems, vol. 28, issue 7, pp. 357-361, Sept. 2004. [11]S.PhaniKumar, P.SeethaRamaiah “Automatic Fuzzy Parameter Selection in Dynamic Fuzzy Voter for SCS” International Journal of Fuzzy System Applications, 2(2), 68-90, April-June 2012 [12] Chao-Jung Hsu and Chin-Yu Huang” Optimal Weighted Combinational Models for Software Reliability Estimation and Analysis” IEEE TRANSACTIONS ON RELIABILITY G. Latif-Shabgahi, Julian M. Bass and Stuart Bennett, “A taxonomy for software voting algorithms used in safety-critical systems,” IEEE Trans. Reliability, vol. 53, no.3, pp 319-328, Sept. 2004. [14] K. Marzullo, Tolerating failures of continuous-valued sensors, ACM Transactions on Computer Systems 8(1990) 284–304 [13]
104 International Association of Engineering and Technology for Skill Development