Dodekaeder    MB Matheblog # 11 blog overwiew
previous article
main page
index website

2021-07-01 deutsche Flagge  deutsche Version

Checking Subsets of Components for QC                    Comments are welcome

A sequel to blog # 10


We address a problem occurring with functionality checks of multi-component assemblies. A mass-produced technical assembly consists of  \(n\)  components which may interact and can be activated independently by  \(n\)  switches. In this case Quality Control (QC) is assumed to imply a functionality check for varying positions of the switches. We ask for the probability that after  \(m\)  runs of these checks all components have been in ON position at least once. This provides useful information within the prerequisites of Statistical Process Control (SPC). A comprehensive SPC as a part of QC would consist of  \(2^n-1\)  functionality checks (for each member of a sample) covering all possible ON/OFF-positions of the switches, skipping simultaneous OFF for all switches.

A once-at-a-time check of each singular switch would not be appropriate in terms of QC. In technical assemblies an internal interaction of the components should normally be assumed. But the switches will be independently wired to the components. This leads to the requirement to test various combinations of ON/OFF positions of the switches.

This reminds us of one of W.E. Deming's famous 14 rules (cited e.g. in [6; 1.6]):

Rule 3:  Cease dependence on mass inspection. Require instead statistical evidence that quality is built in, to eliminate need for inspection on a mass basis.

While this rule is quite commonplace in modern quality management the cited statistical evidence in the problem presented above is far from being trivial and to the author's knowledge is not covered by QC textbooks.

\(2^n-1\)  checks would indeed represent mass inspection within the sample and could in practice turn out to be a too big number of checks to deal with efficiently, so a different (statistical) approach should be considered: For each test of a produced assembly a random string of  \(n\)  \(1\)s and  \(0\)s is generated (excluding an all  \(0-\)string) which defines the ON/OFF positions of the switches during the functionality check.

We will present two operational scenarios based on this random procedure. The first will deal with  \(m\)  checks for each produced assembly which receives quality inspection. As we have mass production in mind a second scenario will be taken into consideration. If we look at (sufficiently many)  \(m\)  consecutively produced assemblies which are each tested only once it should be highly unlikely that a component which turns out to be defective repeatedly in consecutive assemblies would remain undetected for a long time. Our task will be to provide a corresponding exact probability as a function of the number  \(m\)  of checks.

1.  Two scenarios and an example

We present an example. A small machine has a lot of different parts but  \(n=6\)  components have an independent power supply controlled by  \(6\)  switches. Because the parts may interact it is not sufficient to check each component individually. In QC one of the following scenarios is chosen:

(1)  Each machine is  \(m=7\)  times checked for functionality. Each check is based on a randomly generated  \(6-\)tuple of  \(1\)s (for ON) and  \(0\)s (for OFF) for the position of the  \(n=6\)  switches. The results of the  \(7\)  checks can be viewed as a sample taken from all possible switch positions.

(2)  Due to time-consuming and/or expensive testing procedures each machine is checked for functionality only once. Again each check is based on a randomly generated  \(6-\)tuple of  \(1\)s and  \(0\)s for the position of the  \(6\)  switches. Then the results of the checks of  \(m=7\)  consecutively produced machines can be viewed as a sample.

In both scenarios a simple binary matrix representation of the testing procedure suggests itself. Each matrix row stands for a switch and each column stands for a check. The  \(1\)s and  \(0\)s in a column will then show the ON/OFF status of the switches during a certain check.

With  \(n=6\)  and  \(m=7\)  the resulting  \((6\times 7)-\)matrix  \(B\)  would show a random example (as in table 1 below) for the ON/OFF-positions of the  \(6\)  switches during each of the  \(7\)  functionality checks.

\(B=\left(\begin{array}{lllllll} 1 & 1 & 0 & 1 & 0 & 1 & 1\\ 1 & 0 & 0 & 1 & 1 & 1 & 1\\ 0 & 1 & 0 & 1 & 1 & 1 & 0\\ 1 & 0 & 0 & 0 & 1 & 1 & 0\\ 0 & 0 & 0 & 1 & 1 & 1 & 1\\ 1 & 0 & 1 & 0 & 0 & 1 & 0\end{array}\right)\)

Table 1

Which probability  \(p(n,m)\)  can we assign to the event that each component has been activated at least once after  \(m\)  checks  -  on the same machine in scenario 1, or on  \(m\)  consecutive machines in scenario 2 ?

Section 4 will provide an easily evaluable formula for this probability  \(p(n,m)\) .  For  \(n=6\)  and  \(m=7\)  we will get  \(p(6,7)\approx 0.9587\).  So  \(7\)  checks will nearly always suffice to reach the goal of each switch having been ON at least once.

The needed random binary numbers can easily be automatically produced; any standard calculation software tool provides a random number program.

2.  Coverings

The problem we addressed above concerns coverings of sets by a choice of subsets.

\(M = \{m_1,~...~,m_n\}\)  will stand for a numbered set of  \(n\)  components (e.g. \(m_3=\) green lamp). A  \(m-\)tuple  \((A_1,~...~,A_m)\)  of non-empty subsets of  \(M\)  is conveniently described by a  \((n\times m)-\)matrix  \(B\)  with entries  \(b_{ik} = 1\)  for  \(m_i \in A_k\)  and  \(b_{ik} = 0\)  else. So the  \(i^{th}\)  row of  \(B\)  indicates (by  \(b_{ik} = 1\))  which subsets  \(A_k\)  contain  \(m_i\) ,  and the  \(k^{th}\)  column of  \(B\)  indicates which elements of  \(M\)  are also elements of  \(A_k\) .

\((A_1,~...~,A_m)\)  is called a covering of  \(M\)  if each row of  \(B\)  contains at least one entry  \(1\) .  (Note that each column of  \(B\)  contains at least one entry  \(1\)  because the  \(A_k\)  are non-empty.)

In our QC application we define  \(1=\) ON and  \(0=\) OFF  for the switch positions. Then covering means that each of the  \(n\)  switches is in ON position at least once within the  \(m\)  functionality checks. Table 1 shows a covering because there is no all\(-0\) row. This random choice of switch positions guarantees that each part of the machine will be activated at least once.  -  \(B\)  provides a condensed and formal description of any set of  \(m\)  checks of  \(n\)  components.

3.  Total number of coverings

The number  \(u(n,m)\)  of all coverings of a  \(n-\)element set  \(M\)  by  \(m\)  non-empty subsets is the number of  \(m-\)tuples  \((A_1,... ,A_m)\)  with  \(\bigcup A_k = M\) ,  i.e.  \(M\)  being the union of the non-empty sets  \(A_k\) .  Note that in this definition the  \(A_k\)  are ordered.  \(u(n,m)\)  was derived in this blog in article # 10. There we got the following theorem. \[\textbf{Theorem}~~~u(n,m) = \sum_{j=0}^m (-1)^{m-j} \binom{m}{j} (2^j-1)^n\]
4.  Probability of  m  checks yielding a covering

The theorem can be expressed in stochastic terms. We pick  \(m\)  non-empty subsets from  \(M\)  randomly and independently. In the QC context these are  \(m\)  random choices of positions of the switches. We ask for the probability that these subsets cover  \(M\) .  As  \(M\)  has  \(2^n-1\)  non-empty subsets there are  \((2^n-1)^m\)  possible choices of ordered subsets. So the probability in question is \[p(n,m) = \frac{u(n,m)}{(2^n-1)^m}\] Now the theorem gives the final result. We will express it for QC purposes:

The probability that after  \(m\)  runs of functionality checks with random choices of ON/OFF-positions for  \(n\)  components all components will have been activated at least once is \[p(n,m) = \frac{1}{(2^n-1)^m}\cdot \sum_{j=0}^m (-1)^{m-j} \binom{m}{j} (2^j-1)^n\] This is our main result. It applies to both scenarios in section 1. The complement probability  \(1-p(n,m)\)  is the risk of missing at least one component in the testing procedure.

5.  Implementation into a SPC system

Statistical process control features a wide range of powerful instruments for gaining statistical evidence concerning quality criteria. One of these instruments is the control chart. The results of this paper can be connected with a certain kind of control chart, the attribute chart (cf. [5; ch. 12]). The family of attribute charts deals with different testing and sampling conditions having the dichotomous criterion working/defective in common. For our purposes the  \(np-\)chart is suitable. This chart records the number of defective items in a sample of fixed size and is therefore appropriate for both scenarios in section 1 (cf. [3; 3.3.4], [4; 4.4.1], [5; 12.24 - 12.28]). Within SPC, we should regard the random process of choosing switch positions described above as a certain  -  and often necessary  -  way to collect statistical data for control charts.

6.  Remarks

(a)  The matrix  \(B\)  for which we presented an example in table 1 shows a similarity to the matrices used in Design of Experiments (DoE) (cf. e.g. [2; Part II]) where also a certain subset of possible combinations is chosen.

(b)  The OEIS\(^{TM}\) data base contains  \(u(n,m)\)  as integer sequence OEIS A183109  \((1, 1, 7, 1, 25, 265, 1, 79, 2161, 41503, ...)\).  This sequence is generated by the "triangle" with  \(u(n,m)\)  in the  \(n^{th}\)  row at the  \(m^{th}\)  position,  \(m = 1,~...~,n\) ,  and read by rows. As a consequence of the restriction  \(m \le n\)  the example given in section 1 is not covered by the OEIS sequence. In this case it is necessary to make use of the identity  \(u(n,m)=u(m,n)\) .  This symmetry is helpful with the numerical evaluation of  \(p(n,m)\)  because one would prefer small  \(m\)  in the upper entry of the sum. The symmetry can be easily seen as we deal with a binary  \((n\times m)-\)matrix with no zero rows or columns. With regard to transposition, the number of these matrices equals the number of binary  \((m\times n)-\)matrices with no zero rows or columns.  -  We give an example: An assembly built of  \(n=4\)  components is tested according to scenario 2 in section 1. We want to evaluate the risk of missing a component (or more) in the testing procedure within  \(m=10\)  consecutive trials. Then it is much easier to swap  \(n\)  and  \(m\) .  The required risk is  \(1-p(4,10)\approx 0.002\) .

7.  An application; Tables

We revisit the example in section 1, scenario 1 and take now  \(m\)  as a variable. Each machine is checked  \(m\)  times with randomly generated settings of the activation of the  \(n=6\)  components. We want to choose a sufficiently small  \(m\) .  \(p(6,m)\)  gives the probability of each component having been activated at least once. This is shown in table 2.

m  p(6,m)     m  p(6,m)
1  0.0159     6  0.9175
2  0.1832     7  0.9587
3  0.4618     8  0.9795
4  0.6935     9  0.9899
5  0.8381    10  0.9950

Table 2   -   Probabilities of coverings of  \(6\)  components for  \(m=1,~...~,10\)  random checks

Which  \(m\)  is "sufficiently small"? We can read table 2 as a list of confidence values:  \(m = 7\)  gives a  \(95\%\)  confidence for each component having been activated at least once,  \(m = 10\)  gives a  \(99\%\)  confidence.

Quality engineers may be interested in a condensed information in order to avoid the evaluation of  \(p(n,m)\) .  Table 3 provides the minimum  \(m\)  for two confidence levels as a function of the number  \(n\)  of components. As a rule-of-thumb it seems safe to perform  \(m=10\)  checks on not too complex assemblies. Table 3 also shows that for assemblies with few components smaller values of  \(m\)  will suffice.  -  On the other hand, checking every component in ON position at least once in a test cycle may not be the only goal of SPC. We should keep in mind that the procedure described in this article tests only a small sample of potential switch positions. If there are many interactions between the components it would be advisable to increase  \(m\) .

    n      m (95%)   m (99%)
    2        4         5
    3        5         7
    4        6         8
    5        7         9
    6        7        10
  7 - 10     8        10
 11 - 13     8        11
 14 - 20     9        11
 21 - 26     9        12
 27 - 41    10        12
 42 - 52    10        13
 53 - 82    11        13
 83 - 105   11        14
106 - 150   12        14

Table 3   -   Minimum number  \(m\)  of checks needed for  \(n\)  components, at confidence levels  \(95\%\)  and  \(99\%\) ,  \(n=2,~...~,150\)


[1]  Textbook containing the combinatorics background:  Aigner, M.:  Combinatorial Theory  (Springer, Berlin, 2013)

[2]  Allen, T.:  Introduction to Engineering Statistics and Six Sigma  (Springer, London, 2006)

[3]  Dietrich, E., Schulze, A.:  Statistical Procedures for Machine and Process Qualification  (Hanser, Munich, 2010)

[4]  Joglekar, A.:  Statistical Methods for Six Sigma  (Wiley, Hoboken, 2003)

[5]  Pyzdek, T.:  The Six Sigma Handbook  (McGraw-Hill, New York, 2003)

[6]  Thompson, J., Koronacki, J.:  Statistical Process Control for Quality Improvement  (Chapman and Hall, New York, 2001)

Comments are welcome.

Last update 2020-10-21

blog overview   |    previous article

Manfred Börgens   |   main page