TOLERANCING: ITS DISTRIBUTION, ANALYSIS, AND SYNTHESIS WOO-JONG LEE TONY C. WOO Department of Industrial and Operations Engineering The University of Michigan Ann Arbor, Michigan 48109-2117 Technical Report No. 86-30 DECEMBER 1986 <Revised on August 30, 1987>

ABSTRACT Tolerance, representing a permissible variation of a dimension in an engineering drawing, is synthesized by considering assembly stack-up conditions based on manufacturing cost minimization. A random variable and its standard deviation are associated with a dimension and its tolerance. This probabilistic approach makes it possible to perform trade-off between performance and tolerance rather than worst case analysis as it is commonly practiced. Tolerance (stack-up) analysis, as an inner loop in the overall algorithm for tolerance synthesis, is performed by approximating the volume under the multivariate probability density function constrained by nonlinear stack-up conditions with a convex polytope. This approximation makes use of the notion of reliability index [10] in structural safety. Consequently, the probabilistic optimization problem for tolerance synthesis is simplified into a deterministic nonlinear programming problem. An algorithm is then developed and is proven to converge to the global optimum through an investigation of the monotonic relations among tolerance, the reliability index, and cost. Examples from the implementation of the algorithm are given.

1. INTRODUCTION Dimensions in engineering drawings specify ideal geometry for size, location, and form [1,2]. Since dimensions are subject to variability inherent in the manufacturing process, some variations, such as + 0.001, from the nominal value are allowed. The permissible amount, in this example 0.002, is called tolerance. As a design variable, tolerance should be as near zero as possible. But, because of practical considerations such as an increase in cost, tolerance as a manufacturing variable is often larger than ideal. While larger tolerances are less costly to realize, they are usually associated with poor performance. This trade-off between specification and realization illustrates the traditional conflict between design and manufacturing. As a design-manufacturing variable, tolerance has more than a local effect in the decision process. Parts are "in-spec" if they are functionally equivalent and interchangeable in assembly. Even though individual tolerances are in-spec, the sum of the individual tolerances in an assembly may not be. For example, in Figure 1, suppose the dimension D consists of nominal dimensions A, B, and C with tolerances of ~a, +b, and ~+c, respectively. Now, the variations a, b, and c represent the worst case for the components. Does the entire assembly whose nominal dimension is D need a tolerance of ~(a + b +c)? The study of the aggregate behavior of given individual variations is referred to as tolerance analysis or, more commonly, as stack-up analysis. In practice, a designer starts with some initial values for tolerances. If the result of the analysis turns out to be "out-of-spec," the designer reassigns some of the tolerances and iterates the analysis procedure. The process of deciding which tolerances are to be changed and by how much, is referred to as tolerance distribution. When performed manually, tolerance distribution is often guided by experience. Without a rigorous procedure, it is difficult to ensure that local changes in tolerances reflect global criteria such as functionality and cost. Distributing tolerances such that the result of tolerance analysis is reflected is referred to 1

2 as tolerance synthesis. This paper presents the development of such a procedure. <Insert Figure 1> Tolerance synthesis is formulated here as an optimization problem by treating cost minimization as the objective function and the stack-up conditions as the constraints. Probabilistic concepts are used. Since tolerance implies randomness, a random variable and its standard deviation are associated with a dimension and its tolerance. Such a probabilistic approach enables the partial satisfaction of the stack-up conditions. By permitting a small fraction of the assemblies, say 0.3%, to be out-of-spec, an increase in tolerances may be obtained and in turn a reduction in cost may be achieved. This probabilistic approach is considered to be advantageous over the deterministic approach. Since the deterministic approach [3,4,16] handles only the 100% in-spec case, the resulting tolerances are often more conservative than necessary. In the probabilistic approach, tolerance analysis involves computing the probability of satisfying the stack-up conditions, given the standard deviations (tolerances). Suppose an inequality F(X) > 0 represents a certain stack-up condition, where X is a random vector composed of dimensions. The probability of satisfying this stack-up condition, i.e., P(F(X) > 0), is then described by the following multiple integral: fF(x) X)f(X) d(1) where f(X) is the multivariate probability density function (p.d.f.) for X. F(X), the function for stack-up condition, is nonlinear if non-rectangular shapes and/or angular dimensions are in an engineering drawing. Consider Figure 2-(b). Suppose the vertical distance between points A and B is to be less than 5.2000. The stack-up condition is F2(X) 0, where F2(X) = - x sin x - x sin (xl + x3) + 5.2000. (2) The linear case [5,11,13,21] offers simplicity in representation and in processing. As

3 another example, suppose the clearance between two components is to be greater than 0.0001. As illustrated in Figure 2-(a), the stack-up condition is F1(X)_0, where F1(X) = x1 - x2 - 0.0001. (3) Processing for the linear case is made simple by the following property: under the assumption of independence, the variance of a linear function can be expressed as the linear sum of the variances of the constituting dimensions. Hence, tolerance synthesis becomes the problem of distributing the given sum of variances into the constituting variances. This distribution can be done by using linear programming [5,21] provided that the tolerance-cost relation takes the form of a piecewise convex function. Unfortunately, this approach cannot be used for the nonlinear case, since there is no general rule for expressing the variance of a nonlinear function such as F2(X) in terms of variances of its parameters x1, x2, x3, and x4. <Insert Figure 2> To compute the multiple integral of (1) without knowledge of the variance of F(X), two approaches to tolerance analysis have been considered - simulation and approximation. Monte Carlo simulation [9,21], while powerful, is computationally intensive. As tolerance analysis is an inner loop in a procedure for tolerance synthesis, a faster method is sought. Now, approximation is practical if it also gives a reasonably accurate solution. In this paper, the volume under the multivariate p.d.f. constrained by nonlinear stack-up conditions is approximated by a convex polytope. The distance of each face of the polytope from the nominal dimension point, which is the origin of a transformed coordinate system, is computed through a notion called the "reliability index" introduced by Hasofer and Lind [10] in their civil engineering work. Such an approximation yields a pleasant surprise to the computation as it converts a probabilistic optimization problem (with nonlinear cost function as objective function and nonlinear stack-up conditions as constraints) to a deterministic one (with distances as constraints).

4 A nonlinear programming (NLP) algorithm for tolerance synthesis is developed. The steps in the algorithm are shown in Figure 3. For a given probability of yield, it computes optimal assignments of tolerances to individual dimensions while minimizing the manufacturing cost. The algorithm is shown to converge to the global optimum through an investigation of the monotonic relations among tolerances, the reliability index, and cost. (Conceptually, monotonicity is easy to understand: as tolerance increases, performance, which is measured by the reliability index, and cost decrease.) This theoretical basis is considered to have an advantage over others [12,16,17,18] whose algorithms do not necessarily guarantee convergence. <Insert Figure 3> This paper is organized as follows. Section 2 presents the probabilistic concepts for tolerance analysis and synthesis. Section 3 reviews tolerance analysis in connection with the reliability index and provides the basis for simplification. Section 4 formulates tolerance synthesis as a probabilistic optimization problem and then converts the problem into an NLP problem. Section 5 develops an algorithm of ensuring convergence to global optimum. Section 6 illustrates the algorithm with examples.

5 2. BASIC CONCEPTS FOR TOLERANCE ANALYSIS AND SYNTHESIS To capture the randomness of manufacturing processes, a random vector X=(xl,..,xn) is used to represent the n dimensions in an engineering drawing. Mean and — " - - T T standard deviation vectors for X, denoted by X=(x,...,x ) and S=(al,',n), are associated with nominal dimensions and tolerances, respectively. The notation in this paper is given in Table 1. < Insert Table 1> Each dimension variable x. is assumed to follow the normal distribution since errors in the processing of x. are due to many small independent sources (operator, material, machine, etc). Indeed, Mansoor [15] showed that most manufacturing processes produce dimensions having a normal distribution. The interval between symmetric tolerance limits is then considered as a confidence interval. Symbolically, if the confidence coefficient for a dimension xi is yi, the corresponding confidence interval is x. - 7yii < xi 5 xi + 7yii and the tolerance is 2-yi-i. Tolerance is then determined by standard deviation and confidence coefficient. In the n dimensional space, the region bounded by the tolerance limits is called a tolerance region RT. It is the region within which dimensions are to be manufactured. The tolerance region for the two dimensions xl and x2 of FI(X) in (3) is illustrated in Figure 4-(a). Because of the probabilistic nature, this manufacturing objective can be represented by a confidence level. For example, +3ai indicates a confidence level that 99.73% of the dimensions will be in-spec. The confidence level ac for each dimension is assumed to be given. Then, the confidence coefficients i.ys can be derived strictly from the normal distribution table since a= 1 - 2 (-7i). Hence, tolerances can be determined by standard deviations only. <Insert Figure 4>

6 Stack-up conditions are assumed to be given and are represented by requirement functions F.(X), 1 j<m, that are inequalities. Each inequality divides the space into a safe region RS = { X F F.(X)O0 for j l,-.,m} and a fail region RF={ X | F.(X)<O for j= l,..,m}. These two regions are illustrated in Figure 4-(b), again using F1(X) as -an example. The hypersurface denoted by F.(X)=O is called the limit-state surface and the value of F.(X),.1 J denoted by M., is called the safety margin of the j-th requirement function. The intersection of RT and Rs is referred to as the reliable region RR. Symbolically, RR={ X IRT n Rs) = {X I {nl(Xi I- I xi Xi+ijy)} n {F,(X)>o,,F(X)0}}. It is formed by m + 2n functions: m of them are from the requirement functions for Rs and 2n functions are from the upper and lower tolerance limits for the n dimensions. To simplify the explanation on reliable region, hereafter, the functions defined by tolerance limits will also be referred to as requirement functions. That is, the tolerance limit for x., i.e., xj - 7y.r < x. < x. i+., will be treated as two different requirement functions x. - xi+Yicri and xi+7iai - Xi. A reliable region is illustrated in Figure 4-(c) for the RT and RR from Figures 4-(a) and (b). It is noted that the RR depends on ri since the RT varies with r.. Figure 5-(a) shows two tolerance regions having the same P(RT). These two regions are, however, different in area because of the difference in the standard deviation of the two density functions. But, for a given set of stack-up conditions, Rs is fixed as illustrated in Figure 5-(b). An important concept called yield is computed as the probability of X being in RR, i.e.: P(RR) = E RR +(X; V)dX. (4) This probability indicates the degree to which the manufactured dimensions satisfy the given stack-up conditions. Note that RT and Rs correspond to the region for the manufactured dimensions and for the desired stack-up conditions, respectively. The yield

7 P(RR) increases by being given smaller tolerances (standard deviations). Figure 5-(c) illustrates this concept. The one on the right offers a higher yield than the one on the left, since it has smaller tolerances. But, smaller tolerances may incur higher manufacturing costs. To resolve the trade-off between yield and cost, due to tolerances, a synthesis procedure is needed. But, the basis for synthesis should be established first. <Insert Figure 5>

8 3. SIMPLIFICATION OF TOLERANCE ANALYSIS Tolerance analysis is to compute the yield P(RR) from a set of tolerances (standard deviations) that constitute the multivariate normal p.d.f. 4(X;V) in equation (4). The integration is to be taken in the reliable region RR bounded by m+ 2n functions. As an inner loop in the overall algorithm for tolerance synthesis (shown in Figure 3), tolerance analysis demands speed and accuracy. For speed, a two-step approximation of RR, illustrated in Figure 6, is taken: first as a convex polytope and then as an inscribed hypersphere. While the computational advantage of replacing m + 2n functions by m + 2n hyperplanes and subsequently by a single radius may be obvious, the locations at which linear approximation is to be taken may not be. For accuracy, the consideration of preserving the probabilistically densest area should be taken as illustrated by the column of figures on the right. Now, suppose RR has been suitably transformed such that the dimensions zi are independent and that they follow the standard normal distribution. Refer to Figure 7 and consider two expansion points for linearization, Z * and Z2, with distances dl and d, respectively. Because of normality, the densest area is in the vicinity of the origin. Furthermore, the 2 2 -d 2/2 -d 2/ I density decreases exponentially in distance squared, i.e., (1/27r)(e 1 - e 2 ). It becomes clear then, by choosing the point Z* closest to the origin, as illustrated in Figure 7-(b), both speed and accuracy can be achieved. <Insert Figures 6 and 7> The reliability index / is defined as the minimum distance from the origin to a limitstate surface formed by a requirement function in an independent standardized coordinate system, called the standard system. (The transformation from the dependent vector space X to the standard system Z is explained in the Appendix.) The point Z* on the limit-state surface with the minimum distance to the origin is referred to as the design point. Linearization at the design point is performed by finding the tangent hyperplane in the

9 standard system. The requirement function G(Z) is thus linearized by the tangent hyperplane L(Z*) at Z* such that RF is approximated by Rt. The remainder of this section is devoted to the relations between P(RR) and 3. Consider the simple case of only one requirement function. Because of the rotational symmetry in the standard system, the probability of covering one side of the tangent hyperplane can be computed from the univariate normal distribution. Hence, the approximated yield P(RR) only involves looking up the standard normal distribution table. Lemma 1. In the case of a single requirement function, P(RR) can be approximated by P(RR) - (/). (5) Note that, for a linear requirement function, P(RR)= 4(/8). The accuracy of (5) depends on the curvature of the requirement function. As long as the radius of curvature at the design point is large compared to the reliability index, (5) has been shown to be quite accurate in most practical cases [14]. Now, consider the general case of multiple requirement functions. The approximated reliable region RR after the linearization is always convex and P(RR) can be obtained by the following lemma: Lemma 2. The yield P(RR) is approximated after the linearization by: P(RR) _ P(RR) = m+2n... f1_ i(0; CM) dz, dm+2n (6) where the correlation matrix of z.js, denoted by CM, is the correlation matrix of the safety margins M. [6]. J Bounds are useful since equation (6) cannot be evaluated for a general CM [6,7].

10 Lemma 3. The probability of covering the convex polytope RR is bounded by: 2X((min m + 2n ) P( min + 2nn-o Xn ((min j 2) P(RR) < min j= { (j) (7) The lower bound is based on the observation that the hypersphere with a radius of the minimum of 3. always lies inside RR (and RR) and the probability covered by this ndimensional hypersphere is n ((min m+n /S)2). The upper bound of (7) holds since the probability of the intersection is less than or equal to its component probability.

11 4. FORMULATION OF TOLERANCE SYNTHESIS The objective of tolerance synthesis is to determine tolerances by minimizing the manufacturing cost C(T). The tolerances t. are constrained to satisfy the stack-up conditions with a certain probability level such that at least a given yield, 1 - 6, should be guaranteed. The problem can be then formulated as: Min C(T) subject to (8) P(RR) > 1-6 where t. > 0 for i=l,-,n. Associating tolerance t. with standard deviation a., problem (8) becomes the following probabilistic optimization problem, in which all the parameters are described by random variables and their first and second moments: Min C(S) subject to (9) fxeRR (X;V) dX 1 -6 where a. i 0 for i=l,-,n. Since (9) involves the computation of yield in the constraint, the formulation can be simplified by using the reliability index. This simplification converts (9) into a deterministic optimization problem. The discussion begins with the simple case of a single requirement function. Based on Lemma 1, the constraint of (9) can be modified such that the reliability index should be greater than 3* where the constant 3* comes from the equation 1-6= (b3*). Then, the formulation becomes:

12 Min C(E) subject to (10) 1-65 = =(*). Formulation (10) is next extended to the general case if the values of 6. for each of the F.(X), 1l<j m+2n, are given. J Suppose the 6.,s are same, e.g., 6. =6, for 1<j m + 2n. This implies that each stackup condition is satisfied with at least 1-6 level. Then, the resultant yield P(RR) is upper bounded by 1-6 due to Lemma 3. This approach, referred to as MULTI-1, is formulated as follow: Min C(S) subject to (11) ~:3* forj=l, -,m 1-6=- b(*). Notice that the constraints for the tolerance limits are omitted since they have already been considered when setting the confidence coefficients. That is, for m+ 1<j m+2n, /j = 3* = 7j. MULTI-1 gives loose tolerances since the desired yield is reflected by its upper limit. Another approach MULTI-2 is designed here to reflect the desired yield with the lower limit so that tighter tolerances are produced. As indicated by Lemma 3, the lower limit of P(RR) can be obtained through the largest hypersphere inscribed in the approximated reliable region RR, which is a convex polytope. The center of such a hypersphere must be coincident with the origin in the standard system. This approach can

13 be summarized as follows: Min C(E) subject to (12) 6.j /3* for j=l, -,m 1-=2(,3*2). As in (11), the constraints for the tolerance limits are omitted since 3. = 3* = y. for m + l<j m + 2n. MULTI-2 produces tolerances that ensure at least 1-6 yield. From these two approaches, the limits of tolerances for the convex polytope representing the yield 1-6 can be obtained as follows: i,2 < ai < a. for 1 <i < n - -,1 (13) where a.1 and ai2 are the i-th standard deviations from MULTI-1 and MULTI-2, respectively. To aid the decision of choosing cri, a simple variation of MULTI-1, referred to as MULTI-1.5, is also developed by setting /3* based on the equations 4(*) =(1-o)1/m MULTI-1.5 has a special meaning if the requirement functions are nonnegatively correlated, i.e., if every element of CM is nonnegative. Under this condition, P(RR) of equation (6) is greater than FiJ= 1 Oj), which is the approximated yield when the requirement functions are independent, i.e., when CM is an identity matrix [7]. In other words, mm 2n* m+2n nm+2n (j) < P(RR) < minj=1 {( j)}(14) By distributing 6 equally into the m stack-up conditions through (1-6) 1/m, the lower and upper bounds of (14) become (1-6) xP(RT) and (1- ) /m respectively.

14 5. ALGORITHM An algorithm for the nonlinear programming problems (11) and (12) is developed. To show convergence, emphasis is given to the monotonicity among the reliability index, cost, and tolerances (standard deviations). A function g(X) is said to be monotone nonincreasing in every elements xi if X >X2 results in g(X1)_g(X2). 5-1. Monotonicity of Cost in Tolerance Monotonicity is generally understood in practice: the more tolerance the less cost. Indeed, most tolerance-cost models [19,20,22] describe this relation with inverse or exponential functions. A common characteristic of these models is that the first derivative of the cost function XCi(ai)/Iai is always negative and monotone increasing with respect to tolerance (standard deviation). These properties imply that Ci(ai) is strictly decreasing convex. This paper uses the following additive cost function to represent the total manufacturing cost: n C(S) = ECi(ur) (15) i= 1 Then, the following lemma holds since the sum of convex functions is also convex: Lemma 4. C(S) is a convex function. 5-2. Monotonicity of Reliability Index in Tolerance Observe the effect of a change in tolerance on the change of distance d. of a point X0 on the limit-state surface F.(X)= 0 to the origin of the standard system. J

15 Theorem 1. If the dimensions are independent,.d. j,0 -- 0 for lin and ljm. ac. - 1T - 1/2 Proof. The distance dj0 can be expressed by {(X -X)TV'(X0-X)}2 (For details, refer to the Appendix). This expression corresponds to the equation of an ellipsoid with center X, the semi-axes of which are expressed as the product of d. and the standard deviations. jO Then, 2 n (xOk -k) d2 __ _ (16) jd, k = 1 2 crk As a standard deviation rk decreases, the distance dj O from a point chosen arbitrarily on F.(X) to the origin increases. From this theorem, it follows immediately that the minimum distance, i.e., the reliability index, also increases if a standard deviation decreases. Lemma 5. If the dimensions are independent, - 0 for 1<i<n and l1jm m. ar. This lemma not only shows the nonincreasing monotonicity of the reliability index, but also reconfirms the trade-off between tolerance and performance: the tolerance represented by standard deviation has an inverse relationship with performance implied by the reliability index.

16 5-3. Convergence to Global Optimum From Lemma 5, the functional form of 3i can be established. Lemma 6.,j, which is a function of E, is a quasi-concave function provided that the dimensions are independent. Proof. A function is quasi-concave if the functional value of the convex combination of any two arbitrarily chosen points is greater than or equal to the lesser of the functional values of the two chosen points. From Lemma 5, j. is quasi-concave. ~ Lemmas 4 and 6 provide the basis for the development of the algorithm. With the additional aid of Lemma 7, the local optimum satisfying the Kuhn-Tucker conditions [23] becomes the global optimum. Lemma 7. In the NLP problem with C(S) and,j, for 1<jsm, differentiable to aj for 1 icn, let the minimization-based objective function C(S) be convex and the constraints be quasi-concave. Suppose E* satisfies the Kuhn-Tucker conditions. Then S* is optimal for the NLP problem. Proof. The proof can be found in pp. 43-44 of [23]. 5-4. Development of the Algorithm Algorithm TOL-M is developed for problems (11) and (12). The algorithm starts with fairly large tolerances. This initial assignment incurs a low cost but it may not satisfy the stack-up conditions. To satisfy the conditions, some or all of tolerances need to be decreased. TOL-M provides a tolerance reduction procedure to the level that the resulting reliability index is equal to j3*. For clarity, it is described in pseudo-PASCAL.

17 Algorithm TOL-M {Input: Requirement functions F.(X), j = l,.,m Output: Optimum standard deviation vector S* Note: *3 comes from the equation 1-6= 4(3*) for (11) or 1-56=X2(,*2) for (12).} Begin StopFlag: = false; E*:= fairly large standard deviations; Repeat For j:= 1 to m do Calculate.j under the current E*; {Refer to the iterative scheme in the Appendix for computing,j} /3min: min(8l,.,am); If Ipmiin-* | < then StopFlag:= true Else If min > /* then min Obtain new E* by increasing some standard deviations {Under the current solution, the system is over-reliable} Else Obtain new E* by decreasing some standard deviations; {Under the current solution, the system is under-reliable} Until StopFlag = true; End; The increase or decrease of standard deviations at every iteration is done by the following three steps: (i) Check each variable in the given order to see if it can be changed to make the constraints more feasible. (ii) If so, modify the variable. The amount is determined by bisection because of the monotonicity of the reliability index. (iii) Repeat steps (i) and (ii) from the next variable. This local search procedure (i)-(iii) guarantees the convergence to the global optimum due to Lemma 7. Theorem 2. Algorithm TOL-M converges to the global optimum of problems (11) and (12), under the assumption of independence of dimensions.

18 6. EXAMPLES The algorithm has been implemented in PASCAL and it runs on the University of Michigan IBM 3090-400/VM under the MTS operating system. Two examples, in which the requirement functions are linear and nonlinear, are examined. Example 1. Linear Stack-Up Conditions The linear requirement functions for this example are listed in Figure 8. The first requirement function F1(X) is for the size condition of the base part, that is, the length x4+x5 is to be less than or equal to 5.005. The other three functions reflect the clearance conditions between the two parts. <Insert Figure 8> -T The nominal dimensions are given as X =(1.0, 2.0, 3.0, 4.0, 1.0, 0.998, 2.0, 2.998). And, the additive cost function of (15) is used for total manufacturing cost where each tolerance-cost function Ci(ci) is assumed to follow a. x103 Ci(a) = -- (17) The coefficients in (17) are set as: al=a2= 1.0, a3a4= 1.5, a5=0.8, a6=0.9, a7=0.8, and a8=0.6; and bl=2.0, b2=1.8, b3=1.7 b4=2.0, b5=3.0, b6=2.0, and b7=b=1.9. With these data, three approaches (MULTI-1, MULTI-1.5, and MULTI-2) are tested for a 95% yield, i.e., 1-6= 0.95. The initial variances are assigned in accordance with the loose fit case of ANSIY14.5M [2] for hole and shaft tolerance determination. The result of executing TOL-M is given in Table 2. MULTI-1 generates loose tolerances as prescribed by the upper bound in Lemma 3. For a total cost of 946.83, each stack-up condition would be satisfied with a

19 95% confidence if the dimensions xl to x. are manufactured within the tolerances obtained by MULTI-1. MULTI-1.5 gives the result when the 95% yield is equally distributed into the given four stack-up conditions by (0.95)1 =0.98726. With the tolerances from MULTI-1.5, each stack-up condition can be satisfied with 98.726% confidence. MULTI-2 generates tight tolerances by inserting a hypersphere covering 95% into the reliable region, for a total cost 6383.17. The four stack-up conditions are satisfied simultaneously with at least the 95% confidence. The resulting yield from the tolerances of MULTI-1 and MULTI-1.5 are upper bounded by 95% and 98.726%, respectively. MULTI-2 ensures the given 95% yield while MULTI-1 and MULTI-1.5 may not. < Insert Table 2 > Example 2. General Stack-Up Conditions Six requirement functions for Example 2 are shown in Figure 9. The first and second functions, Fi(X) and F2(X), are for the vertical and the horizontal clearance conditions of the two parts. And, the third and the fourth functions show that the difference between angles 91 and 62 should be within +7r/180 radians for successful assembly. The last two functions show that the size difference of the two parts should be within 0.01. <Insert Figure 9> The nominal dimensions are given as X = (50.0, 40.00125, 20.05, 9.9985, 9.9985, 30.0, 10.0, 30.0, 10.05, 30.0, 40.0, 50.0). Each tolerance has the cost function of (17). The coefficients in (17) are set as: a= 0.2, a2 =1.0 a3=a4 =0.015, a5=0.008, a6=0.009, a7=0.008, a8 0.006, a9= 1.0, a10=0.01, a1 =0.015, and a12=0.2; and b=.=b122.0. With these data, three approaches (MULTI-1, MULTI-1.5, and MULTI-2) are tested for a 95% yield. The result of executing TOL-M is given in Table 3. < Insert Table 3 >

20 7. SUMMARY This paper presents a unified procedure for tolerance synthesis by distributing tolerances so as to satisfy the stack-up conditions. As a global criterion, cost minimization is used. Probabilistic concepts for tolerance analysis and synthesis are introduced. In terms of dimensions and tolerances, areas of interest to manufacturing and to design are defined as tolerance region and safe region, respectively. The intersection of the two regions, i.e., the reliable region RR, is investigated in detail. Tolerance analysis for computing P(RR) is expedited through an approximation of * * RR with a convex polytope RR. Bounds of P(RR) is examined by using the reliability index,3. For the upper and lower bounds, the probabilistic optimization problem for tolerance synthesis is converted into two NLPs. Then, effort is devoted to developing an algorithm, which is an iterative method of ensuring convergence. This iterative method demonstrates the potential for automatic tolerance synthesis, especially for the general nonlinear case. The concepts in this paper contributes to the understanding of parameters in design, manufacturing, and assembly by investigating: (a) the relation between tolerance and nominal dimension, (b) the relation between tolerance and desired yield, and (c) the relation between tolerance and stack-up condition.

21 REFERENCES 1 ISO System of Limits and Fits, General Tolerances and Deviations, R286-1962, American National Standards Institute, New York, 1962. 2 Dimensioning and Tolerancing, ANSI Standard Y14.5M-1982, American Society of Mechanical Engineering, New York, 1982. 3 Balling, R.J., Free, J.C., and Parkinson, A.R., "Consideration of Worst-Case Manufacturing Tolerances in Design Optimization," ASME Journal of Mechanisms, Transmissions, and Automation in Design, Vol. 108, Dec. 1986, pp. 438-441. 4 Bandler, J., "Optimization of Design Tolerances Using Nonlinear Programming," Journal of Optimization Theory and Applications, Vol. 14, No. 1, July 1974, pp. 99114. 5 Bjorke, O., Computer Aided Tolerancing, Tapir, Norway, 1978. 6 Ditlevsen, O.D., "Narrow Reliability Bounds for Structural Systems," ASCE Journal of Structural Mechanics, Vol. 7, No. 4, Dec. 1979, pp. 453-472. 7 Ditlevsen, O.D. and Bjerager, "Methods of Structural System Reliability," Structural Safety, Vol. 4, 1986, pp. 195-229. 8 Graybill, F.A., An Introduction to Linear Statistical Model -Volume 1, McGraw-Hill Book Co., Inc., New York, 1961. 9 Grossman, D.D., "Monte-Carlo Simulation of Tolerancing in Discrete Parts Manufacturing and Assembly," Report No. STAN-CS-76-555, Computer Science Department, Stanford Univ., May 1976 10 Hasofer, A.M. and Lind, N.C., "Exact and Invariant Second-Moment Code Format," ASCE J.Eng.Mech.Div., Vol. 100, EM1, 1974, pp. 111-121. 11 Huang, J. and Ostwald, P.F., "A Method for Optimal Tolerance Selection," ASME Paper No. 76-WA/DE-23. 12 Johnson, R.H., "How to Evaluate Assembly Tolerances," Product Engineering, Jan. 1953, pp. 179-181. 13 Kirkpatrick, E.G., Quality Control for Managers and Engineers, John Wiley and Sons, Inc., New York, 1970. 14 Madsen, H.O., Krenk, S., and Lind, N.C., Methods of Structural Safety, Prentice-Hall, Inc., Englewood Cliffs, New Jersey, 1986. 15 Mansoor, E.M., "The Application of Probability to Tolerances Used in Engineering Designs," Proc.Inst.Mech.Eng., Vol. 178, No. 1, 1963, pp. 29-51. 16 Michael, W. and Siddall, J.N., "The Optimization Problem with Optimal Tolerance Assignment and Full Acceptance," ASME Journal of Mechanical Design, Vol. 103, Oct. 1981, pp. 842-848. 17 Michael, W. and Siddall, J.N., "The Optimal Tolerance Assignment with Less Than

22 Full Acceptance," ASME Journal of Mechanical Design, Vol. 104, Oct. 1982, pp. 855860. 18 Parkinson, D.B., "The Application of Reliability Methods to Tolerancing" ASME Journal of Mechanical Design, Vol. 104, July 1982, pp. 612-618. 19 Peat, A.P., Cost Reduction Charts for Designers and Production Engineers, The Machining Publishing Co. Ltd., Brighton, 1968. 20 Spotts, M.F*, "Allocation of Tolerances to Minimize Cost of Assembly," ASME Journal of Engineering for Industry, Aug. 1973, pp. 762-764. 21 Turner, J.U., "Tolerances in Computer-Aided Geometric Design," Ph.D. Dissertation, Rensselaer Polytechnic Institute, Troy, New York, 1987. 22 Wilde, D. and Prentice, E., "Minimum Exponential Cost Allocation of Sure-Fit Tolerances," ASME Paper No. 75-DET-93. 23 Zangwill, W.I., Nonlinear Programming - A Unified Approach, Prentice-Hall Inc., Englewood Cliffs, New Jersey, 1969.

23 APPENDIX. RELIABILITY INDEX The solution scheme for the reliability index is composed of the following two steps: first, transform the correlated variable space into the standard system; second, find a point which is of the minimum distance from origin to the limit-state surface of a requirement function. The transformation of the correlated vector X is accomplished by taking the following three steps [8]: first, translation X~= X - X; second, orthogonal transformation Z~=PTX~, where P is the orthogonal matrix to diagonalize V through PTVP=V; third, standardization Z =D ZO where DDT=V. Figure 10 shows the changes of a given function before and after the transformation. Then, the requirement function in the standard system is expressed symbolically by G(Z) as: G(Z) = F(D- 1PT(X-X)) <Insert Figure 10> The next step is to find a point on the limit-state surface G(Z) having the minimum distance from the origin. Since the Euclidean distance from the origin to a point Z is expressed as (ZTZ)12 = ((X-X) V (X-X))12, the following NLP can be used for finding 3: Min -(X-g)TV -(X-X) subject to (18) F(X) < 0. Here, the objective function is expressed as P2 instead of /3 since the positive definiteness of the covariance matrix V always guarantees the same solution. As a solution scheme for (18), the iterative method based on the Newton-Raphson method [7,14] is used:

24 (X(k)-X)T vF(X()) - F(X (k)) X(k+l) = X + V VF(X(k)) VF(X(k))T V VF(X(k)) where X(k) denotes the solution after the k-th iteration and VF(X) is the nxl gradient vector of F(X) at X.

25 Table 1. Notation Notation Description C() manufacturing cost function F.(X) the j-th requirement function where F.(X) 2 0 is the desired condition J j m number of given requirement functions, 1 j 5 m M. safety margin of F.(X) n number of tolerances to be decided, lin P(.) probability RR reliable region Rs, RF safe region, fail region RT tolerance region R* approximated region T tolerance vector V n xn covariance matrix X random vector for dimensions X mean vector of X Z dimension vector transformed into the standard system 3.j reliability index for Fj(X) /* reliability index derived from the desired yield.i given confidence coefficient for xi 6 permissible dissatisfaction of assembly,i.e., 1-6 is the desired yield 6. permissible dissatisfaction of F.(X) standard deviation vector of X () cumulative standardized normal distribution function q(X;V) multivariate normal p.d.f. having mean X and covariance V Xn() cumulative chi-squared distribution with n degree of freedom

26 Table 2. Result of Example 1 Tolerance t. () Dimension x. MULTI-1 MULTI-1.5 MULTI-2 x1 0.00446 0.00328 0.00186 x2 0.00168 0.00124 0.00070 x3 0.00238 0.00176 0.00100 x4 0.00547 0.00403 0.00229 x5 0.01740 0.01281 0.00727 x6 0.00168 0.00123 0.00070 x7 0.00142 0.00104 0.00059 X8 0.00371 0.00273 0.00155 Normalized Cost 1.00 1.92 6.74 (Actual Cost) (946.83) (1,816.38) (6,383.17) Run Time in CPU seconds 0.137 0.141 0.151 (set at 6 set at 6a. 1

27 Table 3. Result of Example 2 Tolerance t. () Dimension x. MULTI-1 MULTI-1.5 MULTI-2 x1 X1 x2 x3 x4 x5 x6 x7 x8 x9 X11 xlo xli x12 Normalized Cost (Actual Cost) Run Time in CPU seconds 0.0265 1.7907 0.0840 0.1023 0.0280 0.0032 0.0028 0.0021 1.7947 0.1035 0.0840 0.0250 0.0187 1.2331 0.0579 0.0705 0.0019 0.0022 0.0019 0.0015 1.2385 0.0714 0.0579 0.0168 0.0093 0.6411 0.0301 0.0367 0.0010 0.0011 0.0010 0.0008 0.6451 0.0371 0.0301 0.0092 1.00 2.11 7.77 (4.93) (10.38) (38.30) 0.416 0.418 0.417 () set at 6 set at 6a. 1

- 28 - A~a B~b C c D ~ (a + b + c) Figure 1. Tolerance Stack-Up

- 29 - (a) X2 t _4- xx 1 clearance between x F1(X) > 0 where and x2 > 0.0001 F1(X)= x - x2- 0.0001 (b) vertical height from A to B < 5.2000 F2(X) > 0 where F2(X) = - 2 sin x - x4 sin(x + x3)+ 5.2000 Figure 2. Examples of Linear and Nonlinear Stack-Up Conditions

- 30 - Tolerance Synthesis Initial Tolerance Setting IA Tolerance Distribution Stack-up conditions Desired yield Cost Model,..... 4. 4* —- "-05 "_2ZJ Tolerance Analysis I I Feasibility Test feasible Infeasible Optimality Test L not optimum optimum (Optimum Tolerances Figure 3. Basic Scheme of Tolerance Synthesis

- 31 - X 2 (a) tolerance limit of x2 I X2:: r l. --------------------— W WW.. -.,i i.i 1 * X1 I - tolerance = X2 (b) (c) RF,.:.. -: -:i. -.:..:....i....... * S a F(X) = 0 X2 x X1 X 1 0.00: Figure 4. Tolerance, Safe, and Reliable Regions

co *5) o PIll 4) c~ C3 et4 ~^4 i~ 3w QJ 4), - 13 c)

- 33 - Z2 p.d.f. Z1 Z'1, Z1,2 1, zi zi1 p.d.f. Z2 I d e ~ Zi, Z Z2 4 p.d.f. i 6I -.6 01 I S /ob. C~ ~ ~~~. I z 1, z1,2 Z1 Z1 4 It t," Figure 6. Approximation of RR

- 34 - Z2 R F 1 (a);tate Surface G(Z) Z1 state Surface G(Z) it Hyperplane L(Z*) Z2 R* F point Z* (b) Figure 7. Reliability Index as Distance

- 35 - x ----- --- ---- II I _ X7 _ ~I * ~ ~ l d — 6 % i0~~ i I I,6 L.~~~~mi i i k k k k k k II k k k II i II I i i i k, - II W 1 I _ —W x _ X W — -2 -- -- -; -3 - c'-I xI x~~~~~~ i — w —- W — 4 F (X) = 1 - X 4 - X + 5.005 5 F (X) (X) F3(X) 3 = X - X 2 1 -. + X 8 - 0.0003 7 = X - 7 X - X + X 6 3 2 -0.001 F (X) = 4 X - X 4 3 - X - 0.0003 6 Figure 8. Example of Linear Requirement Functions

Suo!liunA 1uamua!nbal Jauu!lUuoN pue Jeau!r jo aldumexa'6 anS!~A 10'0 + Z x Tx = (X)9a 10'0 + + XI X+ X - {( Sx - 9x) * ( LX - 8X)+ ( SX - ZX) * ( 6X - Ox)} *(081 / L) u + (E X - X)*(LX -8X) - (6X - ) * ( X - 9X) f('9 9x y(L - x)+(x - Zx)*(6x -~ x)} * (081 /a)U + (6x - ox)*(Sx -9 x) - (~ x -Z x) (Lx - 9x) f.x - "x) - ( x x) (Lx - 8x) - ( x - X) 7T,r Y' II v 01 y VP 4 6Y~4 ---- L 8 X 91x X,_ _ _ _ __ —I I - *. ~ ~* I k k b q 4 I Ix - 9~ -

- 37 - X* (design point) F(X) x) 2 r I 4 4 4 4 4 4 l A x 1 A Z 2 Z* (design point) N.\ \ 6 G(Z) z1 Figure 10. Transformation to the Standard System