Cyclic quorum
Transcript of Cyclic quorum
Introduction
• Originally proposed by [Luk and Wong 97]• Now utilized in different areas:– Power-saving protocols/wakeup scheduling– Control channel establishment in cognitive radio
network– Anti-jamming communication– Suffix array construction
Quorum Design Problem
• N people are assigned to k groups (quorum) such that:1. For each pair of quorums, there is at least one
person who is a member of both groups (Non-empty intersection property)
2. Each quorum contain exactly k people 3. Each person joins exactly k quorums
• Question:– How the groups are designed with minimal k?
Example: N=8, k=4
• B0 = { 0, 1, 2, 4 }
• B1 = { 1, 2, 3, 5 }
• B2 = { 2, 3, 4, 6 } <--
• B3 = { 3, 4, 5, 7 }
• B4 = { 4, 5, 6, 0 }
• B5 = { 5, 6, 7, 1 } <--
• B6 = { 6, 7, 0, 2 }
• B7 = { 7, 0, 1, 3 }
Some Facts
• For a fixed k, the maximal value of N is k(k-1) + 1. Hence, the theoretical lower bound of k for a given N is ~sqrt(N).
• If N = k(k-1)+1 and n=k-1 is prime power, the solution can be constructed via a finite projective plane of order n.
• In general, optimal solution is very hard to find.
Cyclic Quorum
• Impose one more restriction: a set of quorums has a cyclic property.
• In the previous example, Bi = { 0+i, 1+i, 2+i, 4+i } modulo 8.
• Advantage: the whole solution can be specified by just one single quorum. Hence, easy to hard coded in hardware.
• Exhaustive search method is used for finding the optimal solution.
Techniques for Exhaustive Search
• Pruning:– Detect partial solutions which cannot generate
optimal solution.• Isomorphic rejection:– E.g. Let B1 = {a0, a1, …, an}. We can always assume
that a0 = 1 and a1 = 2.
– Also we can search only with ak floor(N/2)
Table of Optimal Cyclic Quorums