300 likes | 547 Views
A Theoretical Investigation of Generalized Voters for Redundant Systems. Class: CS791F - Fall 2005 Professor : Dr. Bojan Cukic Student: Yue Jiang. A Theoretical Investigation of Generalized Voters for Redundant Systems. Introduction Different kinds of generalized voters
E N D
A Theoretical Investigation of Generalized Voters for Redundant Systems Class: CS791F - Fall 2005 Professor : Dr. Bojan Cukic Student: Yue Jiang
A Theoretical Investigation of Generalized Voters for Redundant Systems • Introduction • Different kinds of generalized voters • Comparison of generalized voters • Conclusions
1 Introduction • Objective: introduction to and analysis of voting techniques in fault tolerant systems • Related work: (1) majority voting; (2) adaptive or weighted voter; (3) median selection method • This paper: • 1) Formalized majority voter • 2) Generalized median voter • 3) Formalized plurality voter • 4) Weighted averaging voter
2 Generalized voters • Formalized majority voter - select majority • Generalized median voter - select median • Formalized plurality voter -partition the set of output based on metric equality and select the output from largest group • Weighted averaging technique - combines the output in a weighted average Assumption: N-versions software, N is odd
2 Generalized voters-Formalized majority voter • Definition: If more than half of the version outputs agree, this common output becomes the output of the N-version structure. • Agree is not the same, i.e. output is real value. • A threshold, ε, is needed.
x1 =0.18155 x2 =0.18230 x3 =0.18130 x4 =0.18180 x5 =0.18235 ε = 0.0005 |x1- x3| = 0.00025 |x1- x4| = 0.00035 |x2- x5| = 0.00005 2 Generalized voters-Formalized majority voter Example 1 (x1, x3 , x4) (x2, x5) Result: x1 or x3or x4
x1 = (2.1350, -1.9693, 4.3354) x2 = (2.1340, -1.9649, 4.3281) x3 = (2.1376, -1.9623, 4.3284) ε = 0.0005 d2(x1, x2) = (2.1350- 2.1340)2 + [-1.9693-(- 1.9649)]2 + (4.3354- 4.3281)2 d(x1, x2) =0.0086 > ε d(x1, x3) =0.0102 > ε d(x2, x3) =0.0044 < ε 2 Generalized voters-Formalized majority voter Example 2 Result: x2 or x3
x1 = (0, 0, 0, 1, 0, 0, 0, 0) x2 = (0, 1, 0, 0, 0, 0, 0, 0) x3 = (0, 0, 0, 1, 0, 0, 0, 0) ε = 0.0005 d(x1, x2) =2 > ε d(x1, x3) =0 = ε d(x2, x3) =2 > ε 2 Generalized voters-Formalized majority voter Example 3 Result: x1 or x3
x1 = 21338 x2 = 54106 x3 = 37722 x4 = 54106 x5 = 4954 ε = 0 {x1, x2, x4} {x3, x5} 2 Generalized voters-Formalized majority voter d(x1 , x2 )= | x1 - x2 | mod 32768 d(x1 , x2 ) =|x1 - x2 | mod 32768 = 0 = ε d(x1 , x3 ) = |x1 – x3 | mod 32768 = 16384 > ε d(x1 , x4 ) = |x1 – x4 | mod 32678 = 0 = ε d(x1 , x5 ) = |x1 – x5 | mod 32678 = 16384 > ε d(x2 , x3 ) = 16384 > ε d(x2 , x4 ) = 0 = ε d(x2 , x5 ) = 16384> ε d(x3 , x4 ) = 16384 > ε d(x3 , x5 ) = 0 =ε d(x4 , x5 ) = 16384 > ε Example 4 Result: x1 or x2or x4
2 Generalized voters-Generalized median voter • Select a median value from the set of N outputs.
x1 =0.18155 x2 =0.18230 x3 =0.18130 x4 =0.18180 x5 =0.18235 ε = 0.0005 |x1- x2| = 0.00075 |x1- x3| = 0.00025 |x1- x4| = 0.00035 |x1- x5| = 0.0008 |x2- x3| = 0.001 |x2- x4| = 0.0005 |x2- x5| = 0.00005 |x3- x4| = 0.0005 |x3- x5| = 0.00105 (!) |x4- x5| = 0.00045 2 Generalized voters-Generalized median voter Example 5 (1) |x1- x2| = 0.00075 (!) |x1- x4| = 0.00035 |x2- x4| = 0.0005 => x4 (x1, x2, x4) Result: x4
x1 = (2.1350, -1.9693, 4.3354) x2 = (2.1340, -1.9649, 4.3281) x3 = (2.1376, -1.9623, 4.3284) d(x1, x2) =0.0086 d(x1, x3) =0.0102 (!) d(x2, x3) =0.0044 Result : x2 2 Generalized voters-Generalized median voter Example 6 (2)
2 Generalized voters-Generalized median voter Example 7 (3) Example 3 x1 = (0, 0, 0, 1, 0, 0, 0, 0) x2 = (0, 1, 0, 0, 0, 0, 0, 0) x3 = (0, 0, 0, 1, 0, 0, 0, 0) ε = 0.0005 d(x1, x2) =2 > ε d(x1, x3) =0 = ε d(x2, x3) =2 > ε d(x1, x2) =2 (!) d(x1, x3) =0 d(x2, x3) =2 Majority Result: x1 or x3 Median Result: x1 or x3
2 Generalized voters-Generalized median voter Example 8 (4) d(x1 , x2 ) = d(x1 , x4 ) = d(x2 , x4 ) = d(x3 , x5 ) =0 d(x1 , x3 ) = d(x1 , x5 ) = d(x2 , x3 ) =d(x2 , x5 ) = d(x3 , x4 ) = d(x4 , x5 ) = 16384 x1 = 21338 x2 = 54106 x3 = 37722 x4 = 54106 x5 = 4954 ε = 0 Median Result: x1 or x2or x4 Majority Result:x1 or x2or x4
2 Generalized voters - formalized plurality voter • Construct a partition V1, …, Vk of A where for each i the set Vi is maximal with respect to the property that for any x, y in Vi d(x,y)<= ε • If there exist a set Va from V1, …, Vk , such that |Va | > | Vi | for any Vi <> Va , randomly select an element from Va is the voter output.
N N W1 =1 W1 Xi i=1 i=1 2 Generalized voters – weighted averaging voter • Suppose N versions of software with outputs in x produce the outputs x1, x2, … xN. Let w1, w2, … wNdenote the weight. Then • Define a new element of x by X=
2 Generalized voters – weighted averaging voter • Weight wi can be a priori knowledge • Weight wi can be calculated dynamically, i.e. by and where s= ais a fixed constant for scaling.
A Theoretical Investigation of Generalized Voters for Redundant Systems • Introduction • Different kinds of generalized voters • Comparison of generalized voters • Conclusions
3 Formalized majority vs. formalized plurality • Majority: result > half; plurality not necessary, relative large. • Majority is a special kind of plurality.
x1 = 0.486 x2 = 0.483 x3 = 0.530 x4 = 0.495 x5 = 0.489 x6 = 0.500 x7 = 0.481 ε =0.01 Formalized majority {x1 , x2 , x5 , x7 } >= (N+1)/2 {x4 , x6 } {x3} 3 Formalized majority vs. formalized plurality • Formalized plurality {x1 , x4 , x5 } {x2 , x7 } {x3} {x6}
3 Formalized majority vs. generalized median • The output produced by the formalized majority voting algorithm always contain the output of generalized median voter
x1 =0.18155 x2 =0.18230 x3 =0.18130 x4 =0.18180 x5 =0.18235 ε = 0.0005 3 Formalized majority vs. generalized median Example 1-5 Majority Result: x1 or x3or x4 x3 Median result:
x1 = (2.1350, -1.9693, 4.3354) x2 = (2.1340, -1.9649, 4.3281) x3 = (2.1376, -1.9623, 4.3284) ε = 0.0005 3 Formalized majority vs. formalized median Example 2-6 d(x1, x2) =0.0086 > ε d(x1, x3) =0.0102 > ε d(x2, x3) =0.0044 < ε Majority result: x2 or x3 Median result: x2
x1 = (0, 0, 0, 1, 0, 0, 0, 0) x2 = (0, 1, 0, 0, 0, 0, 0, 0) x3 = (0, 0, 0, 1, 0, 0, 0, 0) ε = 0.0005 3 Formalized majority vs. formalized median Example 3 - 7 d(x1, x2) =2 > ε d(x1, x3) =0 = ε d(x2, x3) =2 > ε Majority Result: x1 or x3 Median result: x1 or x3
x1 = 21338 x2 = 54106 x3 = 37722 x4 = 54106 x5 = 4954 ε = 0 3 Formalized majority vs. formalized median d(x1 , x2 )= | x1 - x2 | mod 32768 d(x1 , x2 ) =|x1 - x2 | mod 32768 = 0 = ε d(x1 , x3 ) = |x1 – x3 | mod 32768 = 16384 > ε d(x1 , x4 ) = |x1 – x4 | mod 32678 = 0 = ε d(x1 , x5 ) = |x1 – x5 | mod 32678 = 16384 > ε d(x2 , x3 ) = 16384 > ε d(x2 , x4 ) = 0 = ε d(x2 , x5 ) = 16384> ε d(x3 , x4 ) = 16384 > ε d(x3 , x5 ) = 0 =ε d(x4 , x5 ) = 16384 > ε Example 4 - 8 Majority Result: x1 or x2or x4 the same as Median voter
3 Formalized majority vs. formalized median • x1 = 101 • x2 = 102 • x3 = 103 • x4 = 104 • x5 = 105 • ε = 1 Majority and plurality: cannot make a decision. Median result: x3
4 Conclusion • Formalized majority voter - select majority • Generalized median voter - select median – result is contained in the formalized majority voter • Formalized plurality voter -select relative larger output • Weighted averaging technique - dynamically combines the output in a weighted average