Entropy Based Test Point Evaluation and Selection Method for Analog Circuit Fault Diagnosis

By simplifying tolerance problem and treating faulty voltages on different test points as independent variables, integer-coded table technique is proposed to simplify the test point selection process. Usually, simplifying tolerance problem may induce a wrong solution while the independence assumption will result in over conservative result. To address these problems, the tolerance problem is thoroughly considered in this paper, and dependency relationship between different test points is considered at the same time. A heuristic graph searchmethod is proposed to facilitate the test point selection process. First, the information theoretic concept of entropy is used to evaluate the optimality of test point. The entropy is calculated by using the ambiguous sets and faulty voltage distribution, determined by component tolerance. Second, the selected optimal test point is used to expand current graph node by using dependence relationship between the test point and graph node. Simulated results indicate that the proposedmethod more accurately finds the optimal set of test points than other methods; therefore, it is a good solution to minimize the size of the test point set. To simplify and clarify the proposed method, only catastrophic and some specific parametric faults are discussed in this paper.


Introduction
Among various fault diagnosis methods, fault dictionary method is still the most widely used SBT method [1][2][3][4][5].The fault dictionary approach consists of three important phases [5], that is, fault dictionary construction, test points selection, and fault isolation.In the first phase, the adopted fault model, such as catastrophic fault, parametric fault, or slope based model [6], should be determined.In the second phase, the optimum test point, test stimuli, and/or measurement set is required to achieve the desired degree of fault diagnosis.Modern densely loaded circuit boards have posed problems for fault diagnosis with in-circuit testers because only limited physical access to the boards is allowed.Minimum set of test points selection method is, therefore, badly needed to reduce the number of test point.This paper focus on the test points selection method, which, applicable to catastrophic fault, discretized parametric fault and slope based model (continuous parametric fault model).To simplify the problem and clarify the proposed method, only catastrophic and some specific parametric faults are discussed in this paper.
The problem of test points, test stimulus, and/or measurements selection for the analog fault dictionary technique has been studied extensively [4,5,[7][8][9][10][11][12][13][14][15][16][17][18][19][20][21]].An entropybased approach was proposed by Starzyk et al. [4].Two broad test points selection categories, that is, inclusion and exclusion methods, are summarized by Prasad and Babu [5].Varghese et al. [7] proposed a heuristic method for test points selection based on the concept of confidence levels determined by distance concepts.Stenbakken and Souders proposed a method of QR factorization of circuit sensitivity matrix [8].Abderrahman et al. [9] used sequential quadratic programming and constraint logic programming to generate the test set.van Spaandonk and Kevenaar [10] proposed to look for a set of test points by combining the decomposition method of system sensitivity matrix and an iterative algorithm.Prasad and Babu [5] proposed four algorithms for inclusive approaches and three strategies for  exclusive approaches.Based on fault detection table and computing the information content of every node, Pinjala and Kim [11] proposed an approach to get the near-minimum test sets.Golonek and Rutkowski [14] proposed a Genetic-Algorithm-Based test points selection method.Yang et al. [15,16] transformed the test point selection problem into a graph search problem and made use of information theoretic entropy to guide graph search.Lei and Qin [18] use the quantum-inspired evolutionary algorithm to solve the test point selection problem.Different from the traditional integer-coded table technique, faulty voltage distribution is considered in literature [19].Under the expert system control, heuristic test points selection algorithm proposed by Pulka [20].The application of discrete particle swarm optimization algorithm to test point selection is discussed in [21].
Most of the mentioned test points selection methods [4,5,11,12,[14][15][16][18][19][20][21] use the concept of ambiguous set defined by Hochwald and Bastian [1].At any given node, numerous faulty conditions may give rise to voltage values close to each other and hence it may not be possible to clearly identify the specific faulty condition that has caused a particular voltage value.In such situation, the faulty conditions fall into the same ambiguous set.If tolerances are also taken into account, the voltage value of a node for a given faulty condition can be anywhere within a range depending upon the exact values of the components.
In actual analog circuit, a parameter of a circuit element may vary within a range around its nominal value without treating it as a fault.This is termed as "tolerance." On any test point, the  th is used as a unified criterion to handle the tolerance problem.It is not feasible.Different test points may have different sensitivities to a given component's parameter deviation [24].Even on the identical test point, the faulty voltage with respect to different fault source may vary within different range.Another misconception about the integercoded technique is that the faulty voltages on different test points are independent from each other [12].In fact, the strong dependence of faulty voltages on different test points is a robust solution to fault diagnosis [6].Making use of (1) the faulty voltage distribution relationship of different faults on one test point and (2) the voltage relationship between different test points with respect to one fault, this paper propose a new test point selection method.
The paper is organized as follows.Section 2 formulates the basic problems (i.e., tolerance affected faulty voltage distribution and faulty voltage dependence relationship).Simulation based solution to these problems is illustrated in Section 3. Section 4 proposes heuristic graph search method to facilitate the test points selection process.Section 5 presents several simulated results and Section 6 concludes this work.

Problem Formulation
In order to formulate the test selection problem, we assume that the following information is available.Mathematical Problems in Engineering 3 : two-dimensional matrix.Each element   is a bit array.The length of array is equal to MC.If the th simulated faulty voltage of the th fault fall into the th ambiguous interval (V  , V +1 ),   is set to 1, 0 otherwise.(): information content for a given test point .

Tolerance Affected Faulty Voltage Distribution and
Entropy.If the tolerance is taken into consideration, faulty voltage of any fault varies in a range around its nominal value.The faulty voltage distributions induced by the th fault case   are represented by PDFs   ().Because the components' parameter vary within the tolerance limit, the variable  varies within a limited range (V  , V  ).Suppose that there are || fault cases; there are All the extrema are arranged in ascending order and rewritten as V 1 , V 2 , V 3 , . . ., V 2|| .They partition the whole faulty voltage space into 2×||−1 distinct intervals, referred to as ambiguous intervals in this paper.If any fault voltage of the th fault case fall into the th interval (V  , V +1 ), this fault case is added to the th ambiguous set   .Any fault case might fall into more than one ambiguous sets, and any ambiguous set might contain more than one fault cases.If the cardinality of set   is 1, only one fault case   is involved in this ambiguous set.In the fault diagnosis phase, if the measured fault voltage falls into the interval (V  , V +1 ), which determine the set   , the fault case must be   .Without loss of any generality, the th ambiguous set containing  fault cases is denoted by    .In the fault diagnosis phase, if the measured fault voltage falls into voltage interval which determine any ambiguous set  1   , the fault source must be pinpointed.Therefore, for a given CUT, the probability of faults can be pinpointed and is calculated as follows: where FR  is fault resolution to  fault cases.
The physical explanation of () is the information needed to isolate the faults in ambiguous sets, which are derived from test point .Obviously, the smaller () is, the better the test point  is.In particular, if all faults are isolated, that is, |  | ≡ 1 for all possible , () is equal to zero.(4)

Example
Illustration.An example is used to further clarify the proposed method.Take test point  1 in Figure 1 for example.The faulty voltage distributions induced by  0 ,  1 ,  2 ,  3 , and  4 are shown in Figure 2.These curves are represented by PDFs  1 (),  2 (),  3 (), and  4 (), respectively.Take  0 , for example.The measured faulty voltage varies within (V  , V  ).Similarly, the upper and lower faulty voltage bounds (or extrema) of  1 are V  and V  , respectively.Totally, there are five fault cases; hence, there are ten extrema, that is, V  , V  , . . ., V  .They partition the whole faulty voltage space into nine distinct intervals.It can be seen clearly from Figure 2 that if measured faulty voltage falls into the interval (V  , V  ), the fault case must be  0 .If the faulty voltage is larger than V  and smaller than V  , either  2 or  3 occurred.Ambiguous sets determined by ambiguous intervals are shown in Table 1.
It can be seen from this table that some faults can be pinpointed.For example, the faults must be  0 ,  1 ,  3 , and  4 if the measured voltages fall into the range of (V  , V  ), (V  , V  ), (V  , V  ), and (V  , V  ), respectively.The probability of these faults being diagnosed is as follows:  Similarly, FR 2 and FR 3 are calculated: The entropy-based measurement of  1 is calculated by formula (3): On test point  1 , faulty voltages induced by three faults { 2 ,  3 ,  4 } fall into the identical range (V  , V ℎ ).To diagnose these faults, another test point  2 is needed.Figure 3 is used to illustrate how to use selected test point to further partition current ambiguous set.
First, we need to find the parameter subspace   which induces the faulty voltages range (V  , V ℎ ) on test point  1 .Then, with the parameter varying within the same subspace   , the faulty voltages on the newly selected test point  2 are measured.The faulty voltage distribution curves represented by   2 ( 2 ),   3 ( 2 ), and   4 ( 2 ) are shown in Figure 3.The fault resolution FR   on test point  2 can be calculated as follows: The fault resolution determined by  1 and  2 together is Only the 6th ambiguous set in Table 1 is considered so far.After all ambiguous sets were further partitioned by test point  2 , the fault resolution and entropy determined by  1 and  2 together are obtained.If the entropy is equal to zero, the test points selection process is complete; otherwise, additional test points are needed.However, there are two difficulties in the test points selection process.First, the explicit expression of faulty voltage PDF is hard to obtain.Second, finding the parameter subspace   which induces a specific faulty voltage range is prohibitive.Solutions to these problems are proposed in the following section.

Monte-Carlo Simulation Method.
The following simulation procedure is automatically executed by using MATLAB calling PSPICE.
Step 1.The Monte-Carlo simulation times is initialized to MC.
Step 2. Within the predefined tolerance limit, the fault free CUT is simulated for MC times.The simulated voltages on test point   are saved in (1, ,   ), 1 ≤  ≤ MC, where 1 represents fault free case and  is the index of simulation.
Step 3. Loop variable  is equal to 2. The following steps are repeated until  > ||.

Solution to the Entropy Calculation.
For any test point   , there are three steps to calculate its entropy (i.e., ambiguous sets partition, ambiguous set occurrence probability calculation, and entropy calculation).In the first step, the maximum and minimum values (i.e., max  (, ,   ) and min  (, ,   )) are calculated; hence, 2|| extrema (i.e., V 1 , V 2 , . . ., V 2|| ) are obtained.They are saved in either ascending or descending order,  = {V 1 , V 2 , . . ., V 2|| }.These extrema are used to partition the voltage space into 2|| − 1 ambiguous intervals (i.e., (V 1 ,V 2 ), (V 2 , V 3 ), . ..,(V 2||−1 ,V 2|S| )).These intervals are used to determine 2|| − 1 ambiguous sets  = { 1 ,  2 , . . .,  2||−1 }.Take Figure 2, for example.There are five faults and ten extrema, that is, from V  through V  .These ten extrema partition the voltage space into nine ambiguous intervals.If there is any faulty voltage of fault   falls into the th ambiguous interval, the fault   is added into the corresponding ambiguous sets   .After all faults are examined, we obtain the ambiguous set information (i.e., the number of ambiguous set || and the detailed fault index in each set The second step is ambiguous set occurrence probability calculation.The fault voltage index of fault case    fallen into the th ambiguous interval is saved in an bit array   : where 0 <  < MC.Therefore, in the th ambiguous interval, the number of fault voltages induced by fault case    is ∑ MC =1   , and the sum of fault voltages fallen into the th ambiguous interval is ∑ Hence, the probability of the th ambiguous set occurrence is as follows: Thirdly, based on formula (3), the information content of test point   is expressed by the following formula: For the 2|  |−1 ambiguous sets, the conditional probability Pr(  |   ) is calculated by using formula (11), where 1 ⩽  ⩽ 2|  | − 1.Therefore, the probability Pr  = Pr(  |   ) × Pr  .Only the   ambiguous set on test point   is considered so far.After all ambiguous sets were further partitioned by test point   , the entropy determined by   and   together is calculated by using (11).

Heuristic Graph Search Algorithm
Breadth-first and depth-first searches are two commonly used graph search algorithms.Breadth-first search algorithm can find a global minimum set [25], but it is NP-complete [26] and, therefore, is computationally expensive.In this paper, a heuristic depth-first graph search algorithm is developed to solve the test point selection problem.Root node  contain all fault cases.In Sections 2 and 3, the symbol  represents fault set and  = { 1 ,  2 , . . .,  || }.Because the root node represents all faults too, the root node and potential fault set can be represented by the same symbol  without confusion.First, every candidate test point is used to expand  and the new generated graph node belongs to Level 1.The main task is to calculate the ambiguous set information (i.e., the number of ambiguous sets, detailed fault cases in each set and bit array   ) of every graph node.The calculation method is illustrated in Section 3.2.Node  in graph G saves the ambiguous set information.Second, on Level 1, a graph node  with minimal entropy () is selected to be expanded for the second iteration.The entropy () is calculated by using formula (12).Finally, the selected graph node is expanded with each test point except those used on the path from current node to root node, and the new generated graph nodes belong to Level 2. The basic node expanding method is the same as the test point adding procedure proposed in Section 3.3.These steps are executed iteratively until all faults are isolated.The detailed algorithm is given as follows.
Step Step 2. Repeat the following steps until () = 0 or || = 0. Tracing the pointer from  to , solution is derived (pointer is set in Step 3).
Step 3. Selected node  is expanded with each test point in , respectively.By setting pointer from each newly generated node to , these expanded nodes are added to graph G as successor nodes of  ⋅  =  + 1. Information () of every newly generated node on graph level  is calculated.
Step 4. On current level, node  with minimum () value is chosen.The test point used on the path from  to its direct parent node is removed from .
In Step 3, the node expanding method is illustrated in Section 3.3 and the entropy calculation method is given in Section 3.2.

Simulation Results
All the simulations are executed by MATLAB calling PSPICE in an Intel 2.7 GHz processor, 2G RAM, and the Microsoft Windows XP operating system.The following parameters are used in all simulations: (i) resistance tolerance limit   = ±5%; (ii) capacitance tolerance limit   = ±5%; Example 1 (bandpass voltage-controlled voltage source (VCVS) filter).This example is mainly used to further clarify the proposed test selection method.The filter circuit shown in Figure 4 is stimulated by a 300 Hz, 1 V sinusoidal wave.Totally, three candidate test points  1 ,  2 , and  3 and ten possible fault components are examined.This example is mainly used to further illustrate the proposed algorithm.By using the method proposed in Section 3. In Step 1 of the proposed algorithm, all faults belong to one ambiguity set; that is,  = { 1 } and  1 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}.The probability of ambiguous set  1 is initialized to one, Pr 1 = 1.The length of bit array  1 (1 ⩽  ⩽ 11) is initialized to MC = 10.Every bit of  1 is initialized to one.The ambiguity information , probability Pr, and  are contained in root node  of graph G. Graph level label  is set to zero, as shown in Figure 5.All available test points are listed in set  = { 1 ,  2 ,  3 }.Current selected node  is .The entropy () is set to one.Since the condition to stop in Step 2 is not satisfied, the selected node  is expanded by using Steps 3 and 4.
In Step 3, every test point in  is used to expand node .Take  1 for example.
First, the new ambiguous set information is calculated.For each fault case   , its maximum and minimum faulty voltages are calculated and listed in the last column of Table 2.For the first iteration, every bit of  1 is one; hence, all ten simulated voltages of   are considered.It can be seen from the last column of Table 2 that some of the scale values are identical.Fifteen distinct voltages (i.e., V 1 , V 2 , . . ., V 15 ) are arranged in descending order and saved in Table 3.Any two adjacent voltages determine an ambiguous interval; therefore, the voltage space on test point  1 is partitioned into 14 ambiguous intervals (i.e., (V 1 , V 2 ), (V 2 , V 3 ), . . ., (V 14 , V 15 )).Fourteen ambiguous sets are determined by these intervals.Take the 6th ambiguous interval (V 6 = 0.51, V 7 = 0.53), for example.In Table 2, there are some faulty voltages of faults  8 and  10 falling into this interval.Hence the index of these faults are save in the 6th ambiguous set  6 = {8, 10}.After all ambiguous intervals were examined; the detailed ambiguous sets are obtained and saved in Table 4.
Second, ambiguous set occurrence probability is calculated.Take the 6th ambiguous set  6 = {8, 10}, for example.Fault voltages of the first fault  8 fallen into this ambiguous interval are indexed by bit array  61 .It can be seen from Table 2 that the 2nd, 4th, 7th, and 10th simulated faulty voltages of fault  8 fall into the interval (V 6 = 0.51, V 7 = 0.53); hence  61 = 0101001001, as shown in Table 5.
Similarly, the fault voltages of fault  10 fallen into this ambiguous interval are indexed by bit array  62 = 1011111111.The probability of the 6th ambiguous set occurrence is calculated by formula (11): After all ambiguous sets listed in Table 4 were examined, the detailed probability of each ambiguous sets are obtained and saved in the last row of Table 4.There are some sets that have only one fault, due to the fact that log(1) = 0 and the diagnosed fault do not need any further consideration; these sets can be removed from the table and not considered in the following graph node expanding.
Thirdly, the information content of graph node  1 , which is expanded by test point  1 from root node , is calculated by formula (12).Consider ( 1 ) = ∑ 14 =1 Pr  log |  | ≈ 0.43.In Figure 5, value in parentheses is the information content of graph node.The ambiguous sets information , probability Pr listed in Table 4, and Monte-Carlo simulation index matrix  are all saved in the new generated graph node  1 on Level 1 of graph G.
Only the first test point  1 in  is considered so far.After the other two test points were examined, three graph nodes  1 ,  2 , and  3 of Level 1 are obtained and added into the graph G as successor nodes of root node .The results are shown in Figure 5.According to Step 4 of the proposed algorithm, node  1 has the minimum information value on Level 1; hence, it is chosen for further expanding.The test point  1 used on the path from  1 to its direct parent node  is removed from .Therefore,  = { 2 ,  3 }.Obviously, the condition to stop in Step 2 is not satisfied, the proposed algorithm is executed for the second iteration.The selected node  1 is expanded by using Steps 3 and 4. Node  1 is referred to as  in the following context.
In Step 3, every test point in  is used to expand node .Take  3 , for example.
First, every ambiguous set in node  is repartitioned by  3 .Take the 6th ambiguous set  6 = {8, 10} shown in Table 4, for example.It can be seen from Table 5 that  the 2nd, 4th, 7th, and 10th simulated faulty voltages of fault  8 are involved in this ambiguous set.The involved faulty voltages are denoted in italics in Table 6.The maximum and minimum value of the involved faulty voltages on test point  3 are (0, 0).By using the index array  62 shown in Table 5 and the faulty voltages listed in Table 6, the involved maximum and minimum faulty value of  10 on test point  3 is 0.48 V and 0.43 V, respectively.Therefore, two ambiguous intervals (i.e., (0, 0.43), (0.43, 0.48)) are achieved.In Table 6, the faulty voltages of  8 fall into (0, 0.43), and all the faulty voltages of  10 fall into (0.43, 0.48); hence, two newly generated ambiguous sets are  1 = { 8 } and  2 = { 10 }.It means that the faults in ambiguous set  6 are all diagnosed.Besides the faults in the 6th ambiguous set, all other faults involved in node  can be diagnosed by adding test point  3 .The graph node generated by  3 from node  1 on Level 1 is drawn on Level 2 of graph G, as shown in Figure 5.The generated node is denoted by  2 on Level 2. Due to the fact that information ( 2 ) = 0, the condition to stop in Step 2 is satisfied.Test points { 1 ,  3 } used on the path from node  2 on Level 2 to root node  are the final solution.The computation time of this example is about 0.011 second.
If the ambiguous set concept defined by Hochwald and Bastian [1] and the integer-coded fault table technique adopted in literatures [4,5,11,12,[14][15][16][17][18][19][20][21] are used, Table 7 is derived based on the simulated faulty voltages.We can conclude from Table 7 that even if all test points are used, faults  5 and  8 have the same integer-code "211"; hence they are not distinguishable.Apparently, the traditional integercoded technique induces a wrong conclusion in this example.
In Table 8,  1 and  2 represent measurements on the th test point under the 500 Hz and 1 kHz sinusoidal wave excitations, respectively.Due to the page limitation, only the maximum and minimum voltage values of each fault are shown in Table 8.Take R2open, for example.With the 500 Hz sinusoidal wave excitation, the voltage on test point  1 varies within the interval (4.52, 5.76).It varies within (4.03, 7.89) if the frequency is adjusted to 1 kHz.In this example, the proposed algorithm is used to select the optimum measurements   .
By using the proposed test points selection algorithm, the expanded graph is obtained and shown in Figure 7.The algorithm is executed for five iterations.In the 5th iteration, the information of newly generated graph node  1 is ( 1 ) = 0.It is the target node.Measurements { 11 ,  62 ,  21 ,  52 ,  32 } used on the path from the target node to root node  are the final solution.The computation time of this example is 0.40 second.
Example 3 (negative feedback amplifier).The circuit is shown in Figure 8.The excitation (input) signal is a 1 kHz 10 mV sinusoidal wave, and   = 5V.All 9 test points are assumed to be accessible.Totally, 19 potential faults, including hard and soft faults, listed in Table 10 are examined,  = { 0 ,  1 ,  2 , . . .,  19 }.In particular, the CUT is operated in saturation region when 1 is short.For each fault, the Monte-Carlo simulation is run for 1000 times.The voltages on all test points are saved.Due to the page limitation, only the maximum and minimum voltage values of each fault are shown in Table 10.
By using the proposed test points selection algorithm, the expanded graph is obtained and shown in Figure 9.The algorithm was executed for three iterations.Test points { 6 ,  3 ,  8 } used on the path from the target node to root node  are the final solution.The computation time of this example is 0.08 second.
The integer-coded results of this example are show in Table 11.It can be seen that faults in set { 1 ,  5 ,  13 } have the same code "111112122", and the code for faults { 2 ,  7 ,  8 } is "212212122".Hence, the integer-coded technique will induce a wrong conclusion that faults  1 ,  5 ,  13 ,  2 ,  7 , and  8 are not distinguishable.
Example 4 (statistical experiment 1).In the former three examples, the proposed heuristic graph search algorithm can always find the minimum test points set while the integer-coded technique usually induces wrong conclusion.To statistically check the accuracy of the proposed approach, it is examined on randomly computer-generated fault dictionary.Besides, for comparison, integer-coded technique based exhaustive method is examined too on the same dictionary.Totally, there are 100 fault dictionaries and each dictionary has 40 simulated faults.To ensure that the integercoded technique based method can steadily find the solution, 100 test points are contained in every dictionary.For each faults, there are 1000 fault voltages.The voltages are real numbers which can vary between −10.00 volt and 10.00 volt.These voltages follow normal distribution.First, the proposed algorithm is carried out on the randomly generated fault dictionaries.Then these dictionaries are transformed into integer-coded tables, and the exhaustive algorithm is used to select the optimum solution.Table 12 lists the results.
From this table, if the proposed method is adopted, 100 simulated fault dictionaries (100% of the simulated cases) need no more than 8 test points to isolate all faults.Unfortunately, if the integer-coded table technique and the exhaustive algorithm are used, the sizes of final solutions are all larger than 11.It means that these solutions contain at least four redundant test points.Therefore the proposed test points selection algorithm has very high accuracy.Although the execution time of the proposed algorithm is greater than the integer-coded table technique, since we do not execute the algorithm in real-time, but rather do it offline, the proposed algorithm is still a computationally viable algorithm.For example, the executing time for a 100 × 1000 × 40 fault dictionary is only about 1 second.
Example 5 (statistical experiment 2).It should be pointed out that the more Monte-Carlo simulations are run, the more accurate the result is.Too few simulations usually lead to a wrong result.However, it can also induce a correct result.Take the first column voltages shown in Table 2, for example.If only this Monte-Carlo simulation is executed for each fault, we can conclude that all faults are distinguishable except for  3 and  7 .It can be seen from the second column of Table 6 that these two faults can be distinguished by test point  3 .Hence,  1 and  3 are final solution derived by one Monte-Carlo simulation.This result is the same as that derived from ten simulations (see Example 1).
Usually, to ensure the robust of the proposed method, as many Monte-Carlo simulations as possible should be executed.However, the simulation time is another consideration.We need to find a tradeoff between the simulation number and the result accuracy.Whether the selected test points set  opt is accurate or not can be evaluated by following method.
Step 1.Standard faulty voltages matrix  construction: the tolerance is not considered; the faulty voltage of   on the selected test points is simulated and saved in vector  →   = ( 1 ,  1 , . . .,  | opt | ).After all fault are simulated, the faulty voltages are save in Step 2. Monte-Carlo simulation: for each fault case, the simulation number is set to  = 1000.During each simulation, the fault free components vary within the predefined tolerance.Step 4. By using the selected test points set  opt , the fault diagnosis accuracy is   = /(|| × ) × 100%.
To statistically find the minimum number of Monte-Carlo simulations required to have meaningful results correlated to circuit complexity and when probability and conditioned probability assessment gain a reasonable degree of accuracy, the proposed method is examined on various computer-generated fault dictionary.Five fault dictionaries with 10, 50, 75, 100, 500, 750, and 1000 fault sources are examined separately.Each fault in every dictionary is simulated for 10, 50, 75, 100, 500, 750, and 1000 times separately.Hence, there are 7 × 7 = 49 fault dictionaries.100 test points are contained in every dictionary.The voltages are real numbers which can vary between −10.00 volt and 10.00 volt.These voltages follow normal distribution.Then, for every fault dictionary, the proposed method is used to find the optimal test point sets.Thirdly, the accuracy of the selected test point sets are evaluated by the method proposed in this section.
The results are shown in Figure 10.In this figure, the -axis represents the number of faults contained in the CUT, the axis represents the number of Monte-Carlo simulations used to select the test points set, and the -axis shows the fault diagnosis accuracy   by using the selected test points.
It can be seen from this figure that if the number of Monte-Carlo simulations is fewer than 10, the fault diagnosis accuracy is very low.Take the dictionary with 10 fault sources, for example, the fault diagnosis accuracy   = 50%.Additionally, the fault diagnosis accuracy decreases to   = 10% when the fault source number increases to 1000.With the incensement of simulation number, by using the selected test points, the fault diagnosis accuracy increases dramatically.In particular, if the number of Monte-Carlo simulations is not fewer than 500, no matter how many faults are examined (the number of the fault case represents the complexity of the CUT), the fault diagnosis accuracy is greater than 90%.Take the 1000 faults dictionary, for example.  = 91%.When the number of simulations is 1000, fault diagnosis accuracy is greater than 97% for all the simulated dictionary.

Conclusion
Modern densely loaded circuit boards have posed problems for fault diagnosis with in-circuit testers because only limited  physical access to the boards is allowed.Minimum set of test points selection method is, therefore, badly needed to reduce the number of test point.The recently proposed test points selection algorithms are based on the integer-coded faultwise table technique.Unfortunately, according to the illustration presented in Section 1 and examples in Section 5, the integer-coded table technique usually leads to a wrong conclusion and is not applicable to moderate table; let alone large dictionary.Based on these considerations, the main contributions of this paper are listed as follows.
(i) The tolerance problem is thoroughly tackled: this contribution ensures that the fault sources can be pinpointed by using the selected points under the tolerance influence.(ii) Simulation based method is proposed to find the dependence relationship of faulty voltages on different test points/or different measurements, and the mapping relationship is established in turn.This method can dramatically decrease the number of test points.
(iii) The test points selection process is transformed into a heuristic graph search problem.Entropy-based method is proposed to evaluate the optimization of graph node.Hence, the test points selection process is optimized.
The proposed algorithm is succinct and applied.It is easy to program and execute.Its accuracy is proved by theoretical analysis and statistical experiments.Hence, it is specially fit for engineering application.Additionally, the proposed method can also be used to select optimum measurements and frequencies in analog fault diagnosis.
Based Test Point Adding.Additional test points are needed to further partition the fault cases involved in set {  | |  | > 1}.Suppose that the faulty voltage range determining the set { | |  | > 1} is (V  , V +1 ).First, we need to find the parameter subspace   which induce the faulty voltage range (V  , V +1 ) on test point  1 .Then, with the same parameter subspace   , the faulty voltage on the newly selected test point  2 is measured.After all fault cases in set {  | |  | > 1} are examined, the faulty voltage distribution of th fault is represented by PDFs   ( 2 ).By using the same ambiguous set partition method illustrated in the first paragraph of Section 2.1, the fault cases are further partitioned into several ambiguous sets and fault voltage intervals.  denote the th ambiguous set determined by the formerly selected test points.If a new test point is used to further partition the faults in   , the fault resolution to  fault casesof the newly selected test point is denoted by FR

Table 1 :
Ambiguous set information.
.(12) 3.3.Solution to Adding Test Point.If there is ambiguous set   satisfying |  | > 1, additional test point is needed to further distinguish the faults   1 ,   2 , . . .,  |A  | in ambiguous set   .The basic idea proposed in Section 2.2 is to find the parameter subspace   which induce the ambiguous set   on test point   .Then, with the parameter varying within the same subspace   , the faulty voltages on the newly selected test point   are measured and grouped.Obviously, the parameter subspace   is not known.But it can be seen from Figure 3 that if we can directly map the fault voltage from test points   to   , we do not have to know the parameter subspace   .Suppose that the CUT parameter is P in the th simulation of fault    ; the voltage on test point   is (  , ,   ).With the same parameter, the voltage on test point   is (  , ,   ).Hence, the second subscript  shows the voltage relationship between the two test points.On test point   , whether the th simulation of    falls into the th ambiguous interval (V  , V +1 ) is indicated by   .If   = 1, the answer is positive, negative otherwise.Therefore, we use  ⋅   to indicate whether the th faulty voltage of    on test point   is considered or not.For each fault    in set   , the maximum and minimum values of (  ,  ⋅   ,   ) are calculated.Hence, 2|  | extrema (i.e., V 1 ,V 2 , . . ., V 2|  | ) are obtained.They are saved in array and arranged in either ascending or descending order.These extrema are used to partition the voltage space into 2|  |−1 ambiguous intervals.These intervals are used to determine 2|  | − 1 ambiguous sets.It means that the th ambiguous set   of test point   is further partitioned by test point   into 2|  | − 1 ambiguous sets.
1.The graph G is initialized to the root node .All potential faults are contained in node  and belong to one ambiguity set; that is,  = { 1 } and  1 = {1, 2, . . ., ||}.The length of bit array  1 (1 ⩽  ⩽ ||) is initialized to MC.Every bit of  1 is initialized to one.The ambiguity set , probability Pr, and  are contained in root node  of graph G. Graph level label  is set to zero.All available test points are contained in set .Current selected node  is  (viz. = ).The entropy () is set to one.
1, the CUT is simulated, and the voltages on all test points are saved.Totally, eleven catastrophic faults ( 0 ,  1 , ...,  10 ) shown in Table2are considered.Due to the page limitation, only ten Monte-Carlo simulations are run for each fault case.In each simulation, all the fault free components vary within the predefined parameter limitation, that is,   = ±5% and   = ±5%.It is necessary to point out that in each simulation the voltages on every test point are induced by identical parameter space P. The simulated voltages on test points  1 and  3 are shown in Table2 and Table 6, respectively.For each fault case, the ten Monte-Carlo simulated voltages represent the faulty voltage PDF.Taking Table2for example, the ten voltages corresponding to  1 are derived on test point  1 .They represent the faulty voltage distribution of R1 short on test point  1 .

Table 4 :
Ambiguous set information.

Table 5 :
Faulty voltage involved in ambiguous set  6 .
, in   , there must be , which minimize the distance between the two vectors   →   , and  →   ; that is,