Download presentation

Presentation is loading. Please wait.

Published byDevan Trego Modified about 1 year ago

1
Smooting voter : a novel voting algorithm for handling multiple errors in fault-tolerant control systems Microprocessors and Microsystems 2003 G.Latif-Shabgahi,S.Bennett,J.M.Bass Presented by Kübra Ekin CmpE

2
CmpE 516 Outline Introduction Related Work Voting Algorithms Proposed Voter : Smoothing Voter Experimental Method Error Model Scenario Performance criteria Experimental Results Conclusion

3
CmpE 516 Introduction Goal : increasing system dependability Fault Tolerant Computing Not to allow a fault to result of a failure of the entire system Fault Masking N modular redundancy N-version programming

4
CmpE 516 Introduction

5
CmpE 516 Related Work Voting Algorithms N input Majority voter Returns a correct result if (N+1)/2 voter inputs match Otherwise returns an exception flag Formalised plurality voter Returns a correct result if m out of n match E.g. 2-out of-5 voting Median Voter Mid-value selection algrorithm

6
CmpE 516 Related Work Weighted Average voter Voter output = ∑w i x i / ∑x i Calculating weights Distance metric between voter inputs : x 1 : 1,1 x 2 : 1,3 x 3 : 1,5 w 1 = d(1,1-1,3)+d(1,1-1,5) = 0,6 w 2 = d(1,3-1,1)+d(1,3-1,5) = 0,4 w 3 = d(1,5-1,1)+d(1,5-1,3)= 0,6

7
CmpE 516 Smoothing Voter Extended version of majority voter Previos cycle’s result is used in case of disagreement Smoothing threshold is introduced (β) Inexact voting : voter threshold (ε) Selection of smooting threshold is critical

8
CmpE 516 Smoothing Voter Algorithm A= {d 1 d 2 d 3...d n } set of n voter inputs AS={x 1 x 2 x 3...x n } sorted A(ascending) Partitions : V j ={x j x j+1 x j+m-1 }, j=1:m,m=(n+1)/2 If at least one of Vj’s satisfies the property d(xj,xj+m-1)<=ε then the majority is satisfied and the output is produced If none of the partitions satisfy the above constraint, then determine the output x k such that : d(x k,X) = min{d(x 1,X),d(x 2,X)...d(x n,X)} X: previous successful voter result If d(x k,X)<=β then x k is selected as voter’s output otherwise no result is selected

9
CmpE 516 Smoothing Voter Basic Smoothing Voter(Fixed β) Example :

10
CmpE 516 Smoothing Voter Modified Smoothing Voter(Dynamically adjusted β) More rapid recovery from an error Cumulative smooting threshold Adjusted when no result is found Β is added to the smooting threshold when each successive result is more positive B is subtracted from the smooting threshold when each successive result is more negative

11
CmpE 516 Smoothing Voter

12
CmpE 516 Experimental Method Error Model Each voter input is defined as a tuple : (c,ε+-,A T +-)

13
CmpE 516 Experimental Method Assumptions The voter used in a cyclic system : a relationship between correct results of cycles The perturbations below some predifined accuracy threshold in voter inputs are considered as acceptable inaccuracies, otherwise errors There exist a notional correct result which can be calculated from the current inputs and the system states

14
CmpE 516 Experimental Method Assumptions (cont’d) The notional correct result is the desired voter result A comparator used to check the agreement between the notional correct result and the voter output An accuracy threshold is used to determine if the distance between notional correct result and the voter output is within acceptable limits MAJ : Majority Voter SM : Smoothing Voter MED : Median Voter WA : Weighted Average Voter

15
CmpE 516 Experimental Method Parameters : Input to variants : u(t) = 100sin(t)+100 sampled at 0.1sec Voter-threshold value,ε = 0.5 Accuracy threshold value, AT=0,5 Two/three variants were perturbed using uniform error distribution with amplitude varies from 0.5 to 10 Smooting threshold is set to a fixed value

16
CmpE 516 Experimental Method Performance criteria Described as a tuple : (n c /n,n ic /n,n d /n) where n : total number of runs n c : normalised correct results n ic : normalised incorrect results n d : normalised disagreed results(no result) n c /n : measure of availability n ic /n : measure of catastrophic outputs(safety) n d /n : benign results, initiate a safe shutdown

17
CmpE 516 Experimental Results 1-Results using triple error injection ε between 1 and 10 case (large errors)

18
CmpE 516 Experimental Results

19
CmpE 516 Experimental Results

20
CmpE 516 Experimental Results ε <=1.2 case (small errors)

21
CmpE 516 Experimental Results

22
CmpE 516 Experimental Results Comparison of Smooting Voter and Majority Voter q = n d (MAJ)-n d (SM)

23
CmpE 516 Experimental Results 2-Results using double error injection ε between 1 and 10 case (large errors)

24
CmpE 516 Experimental Results

25
CmpE 516 Experimental Results

26
CmpE 516 Experimental Results Comparison of Smooting Voter and Majority Voter q = n d (MAJ)-n d (SM)

27
CmpE 516 Experimental Results 3-Results using double transient errors More realistic Transient errors are smiluated by : Two arbitrary values from [-e max....+e max ] Randomly selected saboteurs every T e voting cycle

28
CmpE 516 Experimental Results T e : [10,15] e max : [-10,+10]

29
CmpE 516 Experimental Results

30
CmpE 516 Experimental Results

31
CmpE 516 Experimental Results Comparison of Smooting Voter and Majority Voter q = n d (MAJ)-n d (SM) Parameters emax = 2 q 100 q ic (SM) 26 g c (SM) 74 75% are converted to correct outputs

32
CmpE 516 Conclusion Nature and requirements of the application decides the voter type Median voter is best when availability is the main concern, majority is best when safety is the main concern Trade off between the above cases can be achieved by means of smoothing voter Smoothing voter extends the majority voter by introducing a smoothing threshold to be used for disagreement cases and median voter by decreasing the catastrophic results with no result outputs In double transient error case smoothing voter outperforms the other voting techniques

Similar presentations

© 2016 SlidePlayer.com Inc.

All rights reserved.

Ads by Google