Asymmetric random scatter process for probabilistic modeling system for product design

Information

  • Patent Grant
  • 8209156
  • Patent Number
    8,209,156
  • Date Filed
    Wednesday, December 17, 2008
    16 years ago
  • Date Issued
    Tuesday, June 26, 2012
    12 years ago
Abstract
A method is provided for designing a product. The method may include obtaining data records relating to one or more input variables and one or more output parameters associated with the product and selecting one or more input parameters from the one or more input variables. The method may also include generating a computational model indicative of interrelationships between the one or more input parameters and the one or more output parameters based on the data records and providing a set of constraints to the computational model representative of a compliance state for the product. Further the method may include using the computational model and the provided set of constraints to generate statistical distributions for the one or more output parameters. The one or more input parameters and the one or more output parameters represent a design for the product.
Description
TECHNICAL FIELD

This disclosure relates generally to product design systems and, more particularly, to probabilistic design based modeling systems for use in product design applications with asymmetric random scatter processing techniques.


BACKGROUND

Many computer-based applications exist for aiding in the design of products. Using these applications, an engineer can construct a computer model of a particular product and can analyze the behavior of the product through various analysis techniques. Further, certain analytical tools have been developed that enable engineers to evaluate and test multiple design configurations of a product. While these analytical tools may include internal optimization algorithms to provide this functionality, these tools generally represent only domain specific designs. Therefore, while product design variations can be tested and subsequently optimized, these design variations are typically optimized with respect to only a single requirement within a specific domain.


Finite element analysis (FEA) applications may fall into this domain specific category. With FEA applications, an engineer can test various product designs against requirements relating to stress and strain, vibration response, modal frequencies, and stability. Because the optimizing algorithms included in these FEA applications can optimize design parameters only with respect to a single requirement, however, multiple design requirements must be transformed into a single function for optimization. For example, in FEA analysis, one objective may be to parameterize a product design such that stress and strain are minimized. Because the FEA software cannot optimize both stress and strain simultaneously, the stress and strain design requirements may be transformed into a ratio of stress to strain (i.e., the modulus of elasticity). In the analysis, this ratio becomes the goal function to be optimized.


Several drawbacks result from this approach. For example, because more than one output requirement is transformed into a single goal function, the underlying relationships and interactions between the design parameters and the response of the product system are hidden from the design engineer. Further, based on this approach, engineers may be unable to optimize their designs according to competing requirements.


Thus, there is a need for modeling and analysis applications that can establish heuristic models between design inputs and outputs, subject to defined constraints, and optimize the inputs such that the probability of compliance of multiple competing outputs is maximized. There is also a need for applications that can explain the causal relationship between design inputs and outputs. Further, there is a need for applications that can collect desired patterns of design inputs to reduce computational load required by the optimization. Additionally, there is a need for applications that may allow for high fidelity of the model near one or more boundary conditions of the design parameters.


Certain applications have been developed that attempt to optimize design inputs based on multiple competing outputs. For example, U.S. Pat. No. 6,086,617 (“the '617 patent”) issued to Waldon et al. on Jul. 11, 2000, describes an optimization design system that includes a directed heuristic search (DHS). The DHS directs a design optimization process that implements a user's selections and directions. The DHS also directs the order and directions in which the search for an optimal design is conducted and how the search sequences through potential design solutions.


While the optimization design system of the '617 patent may provide a multi-disciplinary solution for product design optimization, this system has several shortcomings. The efficiency of this system is hindered by the need to pass through slow simulation tools in order to generate each new model result. Further, there is no knowledge in the system model of how variation in the input parameters relates to variation in the output parameters. The system of the '617 patent provides only single point solutions, which may be inadequate especially where a single point optimum may be unstable when subject to variability introduced by a manufacturing process or other sources. Further, the system of the '617 patent is limited in the number of dimensions that can be simultaneously optimized and searched. Additionally, the '617 patent does not provide for high fidelity or scaled solutions near boundary conditions of the input parameters.


Methods and systems consistent with certain features of the disclosed systems are directed to improvements in the existing technology.


SUMMARY

One aspect of the present disclosure includes a method for designing a product. The method may include obtaining data records relating to one or more input variables and one or more output parameters associated with the product and selecting one or more input parameters from the one or more input variables. The method may also include generating a computational model indicative of interrelationships between the one or more input parameters and the one or more output parameters based on the data records and providing a set of constraints to the computational model representative of a compliance state for the product. Further the method may include using the computational model and the provided set of constraints to generate statistical distributions for the one or more input parameters based on an asymmetric random scatter process and the one or more output parameters. The one or more input parameters and the one or more output parameters may represent a design for the product.


Another aspect of the present disclosure includes a computer readable medium. The computer readable medium may include a set of instructions for enabling a processor to obtain data records relating to one or more input variables and one or more output parameters associated with a product and to select one or more input parameters from the one or more input variables. The set of instructions may also enable the processor to generate a computational model indicative of interrelationships between the one or more input parameters and the one or more output parameters based on the data records and to provide a set of constraints to the computational model representative of a compliance state for the product. Further, the set of instructions may enable the processor to use the computational model and the provided set of constraints to generate statistical distributions for the one or more input parameters based on an asymmetric random scatter process and the one or more output parameters. The one or more input parameters and the one or more output parameters may represent a design for the product.


Another aspect of the present disclosure includes a computer-based product design system. The design system may include a database containing data records relating one or more input variables and one or more output parameters associated with a product to be designed and a processor. The processor may be configured to obtain data records relating to one or more input variables and one or more output parameters associated with the product and to select one or more input parameters from the one or more input variables. The processor may also be configured to generate a computational model indicative of interrelationships between the one or more input parameters and the one or more output parameters based on the data records and to provide a set of constraints to the computational model representative of a compliance state for the product. Further, the processor may be configured to use the computational model and the provided set of constraints to generate statistical distributions for the one or more input parameters based on an asymmetric random scatter process and the one or more output parameters. The one or more input parameters and the one or more output parameters represent a design for the product.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram representation of a product design system according to an exemplary disclosed embodiment;



FIG. 2 is a flow chart representing an exemplary disclosed method for designing a product consistent with certain disclosed embodiments;



FIG. 3 illustrates a flowchart of an exemplary symmetric random scatter process consistent with certain disclosed embodiments; and



FIG. 4 illustrates a flowchart of an exemplary asymmetric random scatter process consistent with certain disclosed embodiments.





DETAILED DESCRIPTION

Reference will now be made in detail to exemplary embodiments, which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.



FIG. 1 provides a block diagram representation of a product design system 100 for generating a design of a product. A product may refer to any entity that includes at least one part or component. A product may also refer to multiple parts assembled together to form an assembly. Non-limiting examples of products include machines, engines, automobiles, aircraft, boats, appliances, electronics, and any sub-components, sub-assemblies, or parts thereof.


A product design may be represented as a set of one or more input parameter values. These parameters may correspond to dimensions, tolerances, moments of inertia, mass, material selections, or any other characteristic affecting one or more properties of the product. The disclosed product design system 100 may be configured to provide a probabilistic product design such that one or more input parameters can be expressed as nominal values and corresponding statistical distributions. Similarly, the product design may include nominal values for one or more output parameters and corresponding statistical distributions. The statistical distributions of the output parameters may provide an indication of the probability that the product design complies with a desired set of output requirements. The statistical distribution may be one sided, such as in a unilateral tolerance, where the nominal value may vary in only one direction.


Product design system 100 may include a processor 102, a memory module 104, a database 106, an I/O interface 108, and a network interface 110. Product design system 100 may also include a display 112. Any other components suitable for receiving and interacting with data, executing instructions, communicating with one or more external workstations, displaying information, etc. may also be included in product design system 100.


Processor 102 may include any appropriate type of general purpose microprocessor, digital signal processor, or microcontroller. Memory module 104 may include one or more memory devices including, but not limited to, a ROM, a flash memory, a dynamic RAM, and a static RAM. Memory module 104 may be configured to store information accessed and used by processor 102. Database 106 may include any type of appropriate database containing information relating to characteristics of input parameters, output parameters, mathematical models, and/or any other control information. I/O interface 108 may be connected to various data input devices (e.g., keyboards, pointers, drawing tablets, etc.) (not shown) to provide data and control information to product design system 100. Network interface 110 may include any appropriate type of network adaptor capable of communicating with other computer systems based on one or more communication protocols. Display 112 may include any type of device (e.g., CRT monitors, LCD screens, etc.) capable of graphically depicting information.



FIG. 2 provides a flow chart representing an exemplary disclosed method for designing a product using product design system 100. At step 202, product design system may obtain data records relating to input variables and output parameters associated with a product to be designed. The data records may reflect characteristics of the input parameters and output parameters, such as statistical distributions, normal ranges, and/or tolerances, etc. For each data record, there may be a set of output parameter values that corresponds to a particular set of input variable values. The data records may represent pre-generated data that has been stored, for example, in database 106. The data may be computer generated or empirically collected through testing of actual products.


In one embodiment, the data records may be generated in the following manner. For a particular product to be designed, a design space of interest may be identified. A plurality of sets of random values may be generated for various input variables that fall within the desired product design space. These sets of random values may be supplied to at least one simulation algorithm to generate values for one or more output parameters related to the input variables. The at least one simulation algorithm may be associated with, for example, systems for performing finite element analysis, computational fluid dynamics analysis, radio frequency simulation, electromagnetic field simulation, electrostatic discharge simulation, network propagation simulation, discrete event simulation, constraint-based network simulation, or any other appropriate type of dynamic simulation.


At step 204, which may be optional, the data records may be pre-processed. Processor 102 may pre-process the data records to clean up the data records for obvious errors and to eliminate redundancies. Processor 102 may remove approximately identical data records and/or remove data records that are out of a reasonable range in order to be meaningful for model generation and optimization. For randomly generated data records, any cases violating variable covariance terms may be eliminated. After the data records have been pre-processed, processor 102 may then select proper input parameters at step 206 by analyzing the data records.


The data records may include many input variables. In certain situations, for example, where the data records are obtained through experimental observations, the number of input variables may exceed the number of the data records and lead to sparse data scenarios. In these situations, the number of input variables may need to be reduced to create mathematical models within practical computational time limits and that contain enough degrees of freedom to map the relationship between inputs and outputs. In certain other situations, however, where the data records are computer generated using domain specific algorithms, there may be less of a risk that the number of input variables exceeds the number of data records. That is, in these situations, if the number of input variables exceeds the number of data records, more data records may be generated using the domain specific algorithms. Thus, for computer generated data records, the number of data records can be made to exceed, and often far exceed, the number of input variables. For these situations, the input parameters selected for use in step 206 may correspond to the entire set of input variables.


Where the number on input variables exceeds the number of data records, and it would not be practical or cost-effective to generate additional data records, processor 102 may select input parameters at step 206 according to predetermined criteria. For example, processor 102 may choose input parameters by experimentation and/or expert opinions. Alternatively, in certain embodiments, processor 102 may select input parameters based on a Mahalanobis distance between a normal data set and an abnormal data set of the data records. The normal data set and abnormal data set may be defined by processor 102 by any suitable method. For example, the normal data set may include characteristic data associated with the input parameters that produce desired output parameters. On the other hand, the abnormal data set may include any characteristic data that may be out of tolerance or may need to be avoided. The normal data set and abnormal data set may be predefined by processor 102.


Mahalanobis distance may refer to a mathematical representation that may be used to measure data profiles based on correlations between parameters in a data set. Mahalanobis distance differs from Euclidean distance in that Mahalanobis distance takes into account the correlations of the data set. The Mahalanobis distance of a row i of set X (e.g., a set of multivariate vectors) from the mean of set X may be represented as

MDi=(Xi−μx−1(Xi−μx)′  (1)

where μx is the mean of X and Σ−1 is an inverse variance-covariance matrix of X. MDi weights the distance of a data point Xi from its mean μx such that observations that are on the same multivariate normal density contour will have the same distance. Such observations may be used to identify and select correlated parameters from separate data groups having different variances.


Processor 102 may select a desired subset of input parameters such that the Mahalanobis distance between the normal data set and the abnormal data set is maximized or optimized. A genetic algorithm may be used by processor 102 to search the input parameters for the desired subset with the purpose of maximizing the Mahalanobis distance. Processor 102 may select a candidate subset of the input parameters based on a predetermined criteria and calculate a Mahalanobis distance MDnormal of the normal data set and a Mahalanobis distance MDabnormal of the abnormal data set. Processor 102 may also calculate the Mahalanobis distance between the normal data set and the abnormal data (i.e., the deviation of the Mahalanobis distance MDx=MDnormal−MDnormal). Other types of deviations, however, may also be used.


Processor 102 may select the candidate subset of the input parameters if the genetic algorithm converges (i.e., the genetic algorithm finds the maximized or optimized Mahalanobis distance between the normal data set and the abnormal data set corresponding to the candidate subset). If the genetic algorithm does not converge, a different candidate subset of the input parameters may be created for further searching. This searching process may continue until the genetic algorithm converges and a desired subset of the input parameters is selected.


After selecting input parameters, processor 102 may generate a computational model to build interrelationships between the input parameters and output parameters (step 208). Any appropriate type of neural network may be used to build the computational model. The type of neural network models used may include back propagation, feed forward models, cascaded neural networks, and/or hybrid neural networks, etc. Particular types or structures of the neural network used may depend on particular applications. Other types of models, such as linear system or non-linear system models, etc., may also be used.


The neural network computational model may be trained by using selected data records. For example, the neural network computational model may include a relationship between output parameters (e.g., engine power, engine efficiency, engine vibration, etc.) and input parameters (e.g., cylinder wall thickness, cylinder wall material, cylinder bore, etc). The neural network computational model may be evaluated by predetermined criteria to determine whether the training is completed. The criteria may include desired ranges of accuracy, time, and/or number of training iterations, etc.


After the neural network has been trained (i.e., the computational model has initially been established based on the predetermined criteria), processor 102 may statistically validate the computational model (step 210). Statistical validation may refer to an analyzing process to compare outputs of the neural network computational model with actual outputs to determine the accuracy of the computational model. Part of the data records may be reserved for use in the validation process. Alternatively, processor 102 may generate simulation or test data for use in the validation process.


Once trained and validated, the computational model may be used to determine values of output parameters when provided with values of input parameters. Further, processor 102 may optimize the model by determining desired distributions of the input parameters based on relationships between the input parameters and desired distributions of the output parameters (step 212).


Processor 102 may analyze the relationships between distributions of the input parameters and desired distributions of the output parameters (e.g., design constraints provided to the model that may represent a state of compliance of the product design). Processor 102 may then run a simulation of the computational model to find statistical distributions for an individual input parameter. That is, processor 102 may separately determine a distribution (e.g., mean, standard variation, etc.) of the individual input parameter corresponding to the ranges of the output parameters representing a compliance state for the product. Processor 102 may then analyze and combine the desired distributions for all the individual input parameters to determined desired distributions and characteristics for the input parameters.


Alternatively, processor 102 may identify desired distributions of input parameters simultaneously to maximize the probability of obtaining desired outcomes (i.e., to maximize the probability that a certain product design is compliant with the desired requirements). In certain embodiments, processor 102 may simultaneously determine desired distributions of the input parameters based on zeta statistic. Zeta statistic may indicate a relationship between input parameters, their value ranges, and desired outcomes. Zeta statistic may be represented as







ζ
=



1
j









1
i






S
ij





(


σ
i



x
_

i


)



(



x
_

j


σ
j


)





,





where xi represents the mean or expected value of an ith input; xj represents the mean or expected value of a jth outcome; σi represents the standard deviation of the ith input; σj represents the standard deviation of the jth outcome; and |Sij| represents the partial derivative or sensitivity of the jth outcome to the ith input.


Processor 102 may identify a desired distribution of the input parameters such that the zeta statistic of the neural network computational model is maximized or optimized. A genetic algorithm may be used by processor 102 to search the desired distribution of input parameters with the purpose of maximizing the zeta statistic. Processor 102 may select a candidate set of input parameters with predetermined search ranges and run a simulation of the product design model to calculate the zeta statistic parameters based on the input parameters, the output parameters, and the neural network computational model. Processor 102 may obtain xi and σi by analyzing the candidate set of input parameters, and obtain xj and σj by analyzing the outcomes of the simulation. Further, processor 102 may obtain |Sij| from the trained neural network as an indication of the impact of ith input on the jth outcome.


Although maximizing the zeta statistic may increase stability of the outcome in the face of variable inputs, it does not ensure that the outcome converges to an optimal solution. Incorporating the Cpk, min statistic may produce more robust outcomes and improve the optimization of the solution. The Cpk, min statistic may be represented as








C

pk
,
min


=

min


{



USL
-


x
_

j



3






σ
j



,




x
_

j

-
LSL


3






σ
j




}



,





where Cpk,min represents the process capability index, USL,LSL represent the upper and lower specification limits, respectively, of the jth outcome, xj represents the mean or expected value of a jth outcome, and σj represents the standard deviation of the jth outcome.


The zeta statistic multiplied by Cpk, min may serve as a goal function for the optimization, where Cpk, min is the process capability of the outcome that is least in control of the outcomes under consideration. It is desirable to maximize the zeta statistic multiplied by Cpk, min. The zeta statistic multiplied by Cpk, min may be a useful goal function, as it is stable and focuses on the inputs that most affect the outcomes. Least in control may be the lowest value for Cpk, min, and this lowest value drives the goal function. This approach may allow consideration of multiple input/outcome relationships simultaneously in the zeta statistic. The zeta statistic may provide for the possibility that a jth outcome may not vary over a portion of the ith variable range by allowing Sij=0 for that portion of the range. In other words, to maximize the zeta function we want poor input control to produce consistent outcome control by focusing on only the most significant input/outcome relationships.


Processor 102 may select the candidate set of values of input parameters if the genetic algorithm converges (i.e., the genetic algorithm finds the maximized or optimized zeta statistic of the product design model corresponding to the candidate set of input parameters). If the genetic algorithm does not converge, a different candidate set of values of input parameters may be created by the genetic algorithm for further searching. This searching process may continue until the genetic algorithm converges and a desired set of values of the input parameters is identified. Processor 102 may further determine desired distributions (e.g., mean and standard deviations) of input parameters based on the desired set of values of input parameters.


In certain embodiments, processor 102 may perform a symmetric random scatter (SRS) process to decrease the amount of time that processor 102 spends on the above searching process. In other embodiments, processor 102 may perform an asymmetric random scatter (aSRS) process to decrease the amount of time that processor 102 spends on the above searching process.


The SRS process can be thought of as creating a set of symmetric seed points around a center point in the design space. The aSRS process can be thought of as creating the same percentage of points on each side of a center point in the design space. In some cases, such as when the boundaries of one or more inputs are asymmetric about the center point, an aSRS process may converge with less iterations than a SRS process.


A symmetric scatter, as used herein, may refer to a mathematical object resulted from a symmetric transformation of an original mathematic object. The original mathematic object may include any appropriate mathematical objects, such as polynomials, vectors, shapes, or discrete mathematical objects, etc. The symmetric transformation may include any appropriate type of mathematical operations, such as mirroring, geometrical transformation, or space/vector transformation, etc. A symmetric random scatter may refer to the symmetric scatter of a random original mathematical object. FIG. 3 illustrates an exemplary SRS process performed by processor 102.


An asymmetric scatter, as used herein, may refer to a mathematical object resulting from an asymmetric transformation of an original mathematic object. The original mathematical object is scaled, that is, the engineering units are converted to a range between minus one (−1) and one (1). The original mathematic object may include any appropriate mathematical objects, such as polynomials, vectors, shapes, or discrete mathematical objects, etc. The asymmetric transformation may include any appropriate type of mathematical operations, such as mirroring, geometrical transformation, or space/vector transformation, etc. An asymmetric random scatter may refer to the asymmetric scatter of a random original mathematical object. FIG. 4 illustrates an exemplary aSRS process performed by processor 102.


As shown in FIG. 3, at the beginning of the SRS process, processor 102 may obtain a starting range for each of the input parameters (step 302). Processor 102 may obtain the starting range by analyzing the select data records of the input parameters. The processor 102 may also obtain the starting range from other applications or processes associated with the input parameters. After the starting range for each of the input parameters are obtained (step 302), processor 102 may create a centroid data record of the input parameters (step 304). The centroid data record may be a mean of the input parameters. The mean may include any appropriate mathematical mean of the input parameters, such as statistical mean, or geometric mean, etc. For example, the centroid data record may include a midpoint of each of the input parameters. Other types of means, however, may also be used.


The starting range of each input parameters may define an input space (i.e., all ranges or possible values of the input parameters), the centroid data record may then be referred to as a center of the input space. After the centroid data record is created (step 304), processor 102 may create a plurality of sample data records within the starting range (step 306). The sample data records may include any data record having a value for each input parameter from the starting range. Processor 102 may create the sample data records in various ways. In certain embodiments, the sample records may be created randomly by processor 102. The total number of the sample data records may be predetermined base on a particular application. For example, a total of approximately 10 sample data records may be created for the applications described in this disclosure. Other numbers of sample data records, however, may also be used.


Further, processor 102 may create a corresponding plurality of SRS data records (step 308). To create the SRS data records, processor 102 may calculate a SRS for each sample data record. That is, each sample data record may be an original mathematic object and the SRS of each sample data record may be a symmetric vector opposite of each original mathematic object (e.g., a vector) with respect to the centroid data record (e.g., the center of the input space). For example, an original two-dimensional vector (1,1) may have a symmetric scatter of (−1, −1) with respect to a centroid of (0, 0). Because the SRS data records may be symmetric scatters of the sample data records, the combination of the SRS data records, the sample data records, and the centroid data record may reflect a random part of the starting range centered at the mean of the input parameters.


After creating the plurality of SRS data records, processor 102 may use the SRS data records, the sample data records, and the centroid data record as the selected data records to perform the zeta statistic optimization as describe above (step 310). Processor 102 may also generate a desired distribution or desired range of the input parameters from the zeta statistic optimization. Further, processor 102 may compare the starting range of the input parameters with the desired range of the input parameters (step 312).


Processor 102 may determine whether the starting range matches with the desired range (step 314). The criteria for determining whether or not the two ranges match may be different depending on the particular application. For example, processor 102 may determine a match if the two ranges match each other exactly. Or processor 102 may determine a match if the two ranges match each other within a predetermined error margin. Further, processor 102 may determine a match if the desired range covers the starting range, or the starting range covers the desired range, within a predetermined error margin. Other types of matching, however, may also be used.


If processor 102 determines that the desired range matches the starting range (step 314; yes), processor 102 may complete the SRS process and continue with the designing process. On the other hand, if processor 102 determines that the desired range does not match the starting range (step 314; no), processor 102 may use the desired range as the starting range in step 302 and continue the SRS process until the two ranges match or until a predetermined time period expires. In an alternate embodiment, if processor 102 determines that the desired range does not match the starting range (step 314; no), processor 102 may begin an aSRS process until the two ranges match or until a predetermined time period expires. FIG. 4 illustrates a flowchart 400 depicting an exemplary aSRS process.


The aSRS process may perform many of the same steps as the SRS process, and those steps may not be described in full detail again where similar. As shown in FIG. 4, at the beginning of the aSRS process, processor 102 may obtain a starting range for each of the input parameters (step 402). Processor 102 may obtain the starting range by analyzing the select data records of the input parameters. The processor 102 may also obtain the starting range from other applications or processes associated with the input parameters. After the starting range for each of the input parameters are obtained (step 402), processor 102 may create an initial central data record of the input parameters (step 404). The initial central data record may be a starting value for the input parameters. The starting value may be derived from the boundaries of the problem, probable solutions, sound engineering judgment, or as a desired range produced by a previous SRS process or a previous aSRS process. The initial central data record may not be in the center of the range of the input parameters. For example, the initial central data record may include a starting value of each of the input parameters. In one exemplary embodiment, the initial central data record may have starting values close to one or more boundaries of the input parameters, and not in the center or mean of the input ranges.


The starting range of each input parameters may define an input space (i.e., all ranges or possible values of the input parameters), the initial central data record may then be referred to as a center of the input space, even though technically it is not at the center of the input space. After the initial central data record is created (step 404), processor 102 may scale each starting range for each of the input parameters centered around the starting value of each of the input parameters (step 406). Scaling may comprise transforming the range between the lower boundary and the starting value of each input parameter to between minus one (−1) and zero (0). Scaling my further comprise transforming the range between the starting value of each input parameter and the upper boundary to between zero (0) and one (1). Scaling may cause each pair in the creation of a corresponding plurality of aSRS data records in step 410 to be an equal distance around the center of the input space in the scaled space. Scaling should make a matched pair of points around the center of the input space an equal percentage of distance to the boundary. For example, in a range of 800 rpm to 3000 rpm, where 1800 rpm is the center of the input space, scale 800 to 1800 rpm to −1 to 0, and scale 1800 to 3000 rpm from 0 to 1.


After scaling each starting range (step 406), processor 102 may create a plurality of sample data records within the starting range (step 408). Step 408 may be essentially the same as step 306, and the details will not be repeated.


Further, processor 102 may create a corresponding plurality of aSRS data records (step 410). The creation of aSRS data records is the same as the creation of SRS data records in step 308, except the data records are created in the scaled input space. Because the aSRS data records may be symmetric scatters in the scaled input space of the sample data records, the combination of the aSRS data records, the sample data records, and the initial center data record may reflect a random part of the starting range centered at the mean of the scaled input parameters.


After creating the plurality of aSRS data records, processor 102 may use the aSRS data records, the sample data records, and the initial center data record as the selected data records to perform the zeta statistic optimization as describe above (step 412). Processor 102 may also generate a desired distribution or desired range of the input parameters from the zeta statistic optimization.


Processor 102 may transform the scaled results of step 412 back into engineering units (step 414). De-scaling may comprise transforming results at or below the initial center data point from minus one (−1) and zero (0) to the range between the lower boundary and the starting value of each input parameter. Scaling my further comprise transforming results at or above the initial center data point from zero (0) and one (1) to the range between the starting value of each input parameter and the upper boundary. Further, processor 102 may compare the starting range of the input parameters with the desired range of the input parameters (step 416).


Processor 102 may determine whether the starting range matches with the desired range (step 416). The criteria for determining whether or not the two ranges match may be different depending on the particular application. For example, processor 102 may determine a match if the two ranges match each other exactly. Or processor 102 may determine a match if the two ranges match each other within a predetermined error margin. Further, processor 102 may determine a match if the desired range covers the starting range, or the starting range covers the desired range, within a predetermined error margin. Other types of matching, however, may also be used.


If processor 102 determines that the desired range matches the starting range (step 418; yes), processor 102 may complete the aSRS process and continue with the designing process. On the other hand, if processor 102 determines that the desired range does not match the starting range (step 418; no), processor 102 may use the desired range as the starting range in step 402 and continue the aSRS process until the two ranges match or until a predetermined time period expires.


Returning to FIG. 2, after the product design model has been optimized (step 212), processor 102 may define a valid input space (step 214) representative of an optimized design of the product. This valid input space may represent the nominal values and corresponding statistical distributions for each of the selected input parameters. To implement the design of the product, values for the input parameters selected within the valid input space would maximize the probability of achieving a compliance state according to the constraints provided to the model.


Once the valid input space has been determined, this information may be provided to display 112 (step 216). Along with the input space information, the nominal values of the corresponding output parameters and the associated distributions may also be supplied to display 112. Displaying this information conveys to the product design engineer the ranges of values for the selected input parameters that are consistent with the optimized product design. This information also enables the engineer to determine the probability of compliance of any one of or all of the output parameters in the optimized product design.


While the processor 102 may be configured to provide an optimized product design based on the interrelationships between the selected input parameters and the output parameters and on the selected output constraints, the model allows for additional input by the product design engineer. Specifically, at step 218, the engineer is allowed to determine if the optimized product design generated by processor 102 represents the desired final design. If the answer is yes (step 218, yes), then the process ends. If the answer is no (step 218, no) the engineer can generate a design alternative (step 220).


To generate a design alternative, the engineer can vary any of the values of the input parameters or the distributions associated with the input parameters. The changed values may be supplied back to the simulation portion of the model for re-optimization. Based on the changed values, the model will display updated values and distributions for the output parameters changed as a result of the change to the input parameters. From the updated information, the engineer can determine how the alternative product design impacts the probability of compliance. This process can continue until the engineer decides on a final product design. It should be noted that alternative designs may also be generated by varying the values or distributions for the output parameters or by defining different or additional product design constraints.


Display 112 may also be used to display statistical information relating to the performance of the product design model. For example, distributions for the input parameters and the output parameters may be calculated based on the original data records. These distributions may represent an actual statistical space that can be compared with a predicted statistical space generated by the model. Overlap of the actual statistical space with the predicted statistical space may indicate that the model is functioning as expected.


INDUSTRIAL APPLICABILITY

The disclosed systems and methods may efficiently provide optimized product designs for any type of product that can be modeled by computer. Based on the disclosed system, complex interrelationships may be analyzed during the generation of computational models to optimize the models by identifying distributions of input parameters to the models to obtain desired outputs. The robustness and accuracy of product designs may be significantly improved by using the disclosed systems and methods.


The efficiency of designing a product may also be improved using the disclosed systems and methods. For example, the disclosed zeta statistic approach yields knowledge of how variation in the input parameters translates to variation in the output parameters. Thus, by defining the interrelationships between the input parameters and the output parameters in a system, the disclosed product design system can operate based on a proxy concept. That is, because these interrelationships are known and modeled, there is no need to use domain specific algorithm tools each time the model wishes to explore the effects of a variation in value or distribution of an input parameter or output parameter. Thus, unlike traditional systems that must pass repeatedly pass through slow simulations as part of a design optimization process, the disclosed modeling system takes advantage of well-validated models (e.g., neural network models) in place of slow simulations to more rapidly determine an optimized product design solution.


The disclosed product design system can significantly reduce the cost to manufacture a product. Based on the statistical output generated by the model, the model can indicate the ranges of input parameter values that can be used to achieve a compliance state. The product design engineer can exploit this information to vary certain input parameter values without significantly affecting the compliance state of the product design. That is, the manufacturing constraints for a particular product design may be made less restrictive without affecting (or at least significantly affecting) the overall compliance state of the design. Relaxing the manufacturing design constraints can simplify the manufacturing process for the product, which can lead to manufacturing cost savings.


The disclosed product design system can also enable a product design engineer to explore “what if” scenarios based on the optimized model. Because the interrelationships between input parameters and output parameters are known and understood by the model, the product designer can generate alternative designs based on the optimized product design to determine how one or more individual changes will affect the probability of compliance. While these design alternatives may move away from the optimized product design solution, this feature of the product design system can enable a product designer to adjust the design based on experience. Specifically, the product designer may recognize areas in the optimized model where certain manufacturing constraints may be relaxed to provide a cost savings, for example. By exploring the effect of the alternative design on product compliance probability, the designer can determine whether the potential cost savings of the alternative design would outweigh a potential reduction in probability of compliance.


The disclosed product design system can also enable a design engineer to collect a pattern of design candidates that gives an improved probability of modeling the design space in a minimum number of simulation or data collection operations based on the symmetric random scatter (SRS) process and/or the asymmetric random scatter (aSRS) process. The SRS process and/or the aSRS process may also be combined with other modeling or design applications to significantly reduce the order of design iterations. Asymmetric random scatter may be helpful for modeling cases where one or more tolerances are unilateral, as opposed to bilateral.


The disclosed product design system has several other advantages. For example, the use of genetic algorithms at various stages in the model avoids the need for a product designer to define the step size for variable changes. Further, the model has no limit to the number of dimensions that can be simultaneously optimized and searched.


Other embodiments, features, aspects, and principles of the disclosed exemplary systems will be apparent to those skilled in the art and may be implemented in various environments and systems.

Claims
  • 1. A computer-implemented method for designing a product, comprising: obtaining data records relating to one or more input variables and one or more output parameters associated with the product;selecting one or more input parameters from the one or more input variables;generating a computational model indicative of interrelationships between the one or more input parameters and the one or more output parameters based on the data records;providing a set of constraints to the computational model representative of a compliance state for the product; andusing, by at least one processor, the computational model and the provided set of constraints to generate statistical distributions for the one or more input parameters based on an asymmetric random scatter process and the one or more output parameters, wherein the one or more input parameters and the one or more output parameters represent a design for the product.
  • 2. The method of claim 1, further including using the computational model to generate nominal values for the one or more input parameters and the one or more output parameters.
  • 3. The method of claim 2, further including modifying the design for the product by adjusting at least one of the statistical distributions and the nominal values for any of the one or more input parameters and the one or more output parameters.
  • 4. The method of claim 1, wherein using the computational model further includes: obtaining respective ranges of the input parameters;creating a plurality of scaled model data records based on the respective ranges of the input parameters;determining a candidate set of values of scaled input parameters using the plurality of scaled model data records with a maximum zeta statistic multiplied by a process capability index Cpk, min using a genetic algorithm; anddetermining the statistical distributions of the one or more input parameters based on the candidate set,defining the zeta statistic ζ as:
  • 5. The method of claim 4, wherein the creating further includes: scaling the respective ranges of the input parameters;creating an initial central data record including corresponding to starting values of the scaled respective ranges of the input parameters;randomly creating a plurality of sample data records of the input parameters within the scaled respective ranges of the input parameters;creating a plurality of respective asymmetric random scatter (aSRS) data records of the plurality of sample data records as asymmetric scatter of the plurality of sample data records with respect to the initial central data record; andcreating the plurality of data records by combining the initial central data record, the sample data records, and the aSRS data records.
  • 6. The method of claim 5, wherein corresponding to starting values includes starting values that are derived from one or more of the boundaries of the computational model, probable solutions to the computational model, or a desired range produced by a previous symmetric random scatter (SRS) process or aSRS process.
  • 7. The method of claim 4, further including: comparing the statistical distributions of the input parameters with the scaled respective ranges of input parameters; anddetermining whether the statistical distributions of the input parameters match the scaled respective ranges of input parameters.
  • 8. The method of claim 7, further including: if the statistical distributions of the input parameters do not match the scaled respective ranges of the input parameters, changing the scaled respective ranges of the input parameters to the same as the statistical distributions of the input parameters; andre-determining the statistical distributions of the input parameters based on the changed scaled respective ranges until the statistical distributions of the input parameters match the scaled respective range of the input parameters.
  • 9. The method of claim 8, further including graphically displaying on a display: the statistical distributions for the one or more input parameters and the one or more output parameters;nominal values for the one or more input parameters and the one or more output parameters; andstatistical information for the one or more input parameters and the one or more output parameters obtained based on the data records.
  • 10. A non-transitory computer readable medium storing a set of instructions for enabling a processor to: obtain data records relating to one or more input variables and one or more output parameters associated with a product;select one or more input parameters from the one or more input variables;generate a computational model indicative of interrelationships between the one or more input parameters and the one or more output parameters based on the data records;provide a set of constraints to the computational model representative of a compliance state for the product; anduse the computational model and the provided set of constraints to generate statistical distributions for the one or more input parameters based on an asymmetric random scatter process and the one or more output parameters, wherein the one or more input parameters and the one or more output parameters represent a design for the product.
  • 11. The computer readable medium of claim 10, wherein the instructions for enabling the processor to use the computational model further enable the processor to: obtain respective ranges of the input parameters;create a plurality of scaled model data records based on the respective ranges of the input parameters;determine a candidate set of values of scaled input parameters using the plurality of scaled model data records with a maximum zeta statistic multiplied by a process capability index Cpk, min using a genetic algorithm; anddetermine the statistical distributions of the one or more input parameters based on the candidate set,define the zeta statistic ζ as:
  • 12. The computer readable medium of claim 11 further including instructions for enabling the processor to: scale the respective ranges of the input parameters;create an initial central data record including corresponding to starting values of the scaled respective ranges of the input parameters;randomly create a plurality of sample data records of the input parameters within the scaled respective ranges of the input parameters;create a plurality of respective asymmetric random scatter (aSRS) data records of the plurality of sample data records as asymmetric scatter of the plurality of sample data records with respect to the initial central data record; andcreate the plurality of data records by combining the initial central data record, the sample data records, and the aSRS data records.
  • 13. The computer readable medium of claim 12, wherein corresponding to starting values includes starting values that are derived from one or more of the boundaries of the computational model, probable solutions to the computational model, or a desired range produced by a previous symmetric random scatter (SRS) process or aSRS process.
  • 14. The computer readable medium of claim 11 further including instructions for enabling the processor to: compare the statistical distributions of the input parameters with the scaled respective ranges of input parameters; anddetermine whether the statistical distributions of the input parameters match the scaled respective ranges of input parameters.
  • 15. The computer readable medium of claim 11 further including instructions for enabling the processor to graphically display: the statistical distributions for the one or more input parameters and the one or more output parameters;nominal values for the one or more input parameters and the one or more output parameters; andstatistical information for the one or more input parameters and the one or more output parameters obtained based on the data records.
  • 16. A computer-based product design system, comprising: a database containing data records relating one or more input variables and one or more output parameters associated with a product to be designed; anda processor configured to: obtain data records relating to the one or more input variables and the one or more output parameters associated with the product;select one or more input parameters from the one or more input variables;generate a computational model indicative of interrelationships between the one or more input parameters and the one or more output parameters based on the data records;provide a set of constraints to the computational model representative of a compliance state for the product; anduse the computational model and the provided set of constraints to generate statistical distributions for the one or more input parameters based on an asymmetric random scatter process and the one or more output parameters, wherein the one or more input parameters and the one or more output parameters represent a design for the product.
  • 17. The computer-based product design system of claim 16, wherein to use the computational model to generate statistical distributions, the processor is further configured to: obtain respective ranges of the input parameters;create a plurality of scaled model data records based on the respective ranges of the input parameters;determine a candidate set of values of scaled input parameters using the plurality of scaled model data records with a maximum zeta statistic multiplied by a process capability index Cpk, min using a genetic algorithm; anddetermine the statistical distributions of the one or more input parameters based on the candidate set,define the zeta statistic ζ as:
  • 18. The computer-based product design system of claim 17, wherein to use the computational model to generate statistical distributions, the processor is further configured to: scale the respective ranges of the input parameters;create an initial central data record including corresponding to starting values of the scaled respective ranges of the input parameters;randomly create a plurality of sample data records of the input parameters within the scaled respective ranges of the input parameters;create a plurality of respective asymmetric random scatter (aSRS) data records of the plurality of sample data records as asymmetric scatter of the plurality of sample data records with respect to the initial central data record; andcreate the plurality of data records by combining the initial central data record, the sample data records, and the aSRS data records.
  • 19. The computer-based product design system of claim 18, wherein corresponding to starting values includes starting values that are derived from one or more of the boundaries of the computational model, probable solutions to the computational model, or a desired range produced by a previous symmetric random scatter (SRS) process or aSRS process.
  • 20. The computer-based product design system of claim 16, further including: a display;wherein the processor is configured to display the statistical distributions for the one or more input parameters and the one or more output parameters;nominal values for the one or more input parameters and the one or more output parameters; andstatistical information for the one or more input parameters and the one or more output parameters obtained based on the data records.
CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of U.S. patent application Ser. No. 11/477,515, filed on Jun. 30, 2006, now U.S. Pat. No. 7,877,239 which is a continuation-in-part of U.S. patent application Ser. No. 11/101,498, filed on Apr. 8, 2005, now abandoned all of which are incorporated herein by reference.

US Referenced Citations (157)
Number Name Date Kind
3316395 Lavin Apr 1967 A
4136329 Trobert Jan 1979 A
4533900 Muhlberger et al. Aug 1985 A
5014220 McMann et al. May 1991 A
5163412 Neu et al. Nov 1992 A
5262941 Saladin et al. Nov 1993 A
5341315 Niwa et al. Aug 1994 A
5386373 Keeler et al. Jan 1995 A
5434796 Weininger Jul 1995 A
5539638 Keeler et al. Jul 1996 A
5548528 Keeler et al. Aug 1996 A
5561610 Schricker et al. Oct 1996 A
5566091 Schricker et al. Oct 1996 A
5585553 Schricker Dec 1996 A
5594637 Eisenberg et al. Jan 1997 A
5598076 Neubauer et al. Jan 1997 A
5604306 Schricker Feb 1997 A
5604895 Raimi Feb 1997 A
5608865 Midgely et al. Mar 1997 A
5666297 Britt et al. Sep 1997 A
5682317 Keeler et al. Oct 1997 A
5698780 Mizutani et al. Dec 1997 A
5727128 Morrison Mar 1998 A
5750887 Schricker May 1998 A
5752007 Morrison May 1998 A
5835902 Jannarone Nov 1998 A
5842202 Kon Nov 1998 A
5914890 Sarangapani et al. Jun 1999 A
5925089 Fujime Jul 1999 A
5950147 Sarangapani et al. Sep 1999 A
5966312 Chen Oct 1999 A
5987976 Sarangapani Nov 1999 A
6086617 Waldon et al. Jul 2000 A
6092016 Sarangapani et al. Jul 2000 A
6119074 Sarangapani Sep 2000 A
6145066 Atkin Nov 2000 A
6195648 Simon et al. Feb 2001 B1
6199007 Zavarehi et al. Mar 2001 B1
6208982 Allen, Jr. et al. Mar 2001 B1
6223133 Brown Apr 2001 B1
6236908 Cheng et al. May 2001 B1
6240343 Sarangapani et al. May 2001 B1
6269351 Black Jul 2001 B1
6298718 Wang Oct 2001 B1
6370544 Krebs et al. Apr 2002 B1
6405122 Yamaguchi Jun 2002 B1
6438430 Martin et al. Aug 2002 B1
6442511 Sarangapani et al. Aug 2002 B1
6477660 Sohner Nov 2002 B1
6513018 Culhane Jan 2003 B1
6546379 Hong et al. Apr 2003 B1
6584768 Hecker et al. Jul 2003 B1
6594989 Hepburn et al. Jul 2003 B1
6698203 Wang Mar 2004 B2
6711676 Zomaya et al. Mar 2004 B1
6721606 Kaji et al. Apr 2004 B1
6725208 Hartman et al. Apr 2004 B1
6763708 Ting et al. Jul 2004 B2
6775647 Evans et al. Aug 2004 B1
6785604 Jacobson Aug 2004 B2
6810442 Lin et al. Oct 2004 B1
6823675 Brunell et al. Nov 2004 B2
6859770 Ramsey Feb 2005 B2
6859785 Case Feb 2005 B2
6865883 Gomulka Mar 2005 B2
6882929 Liang et al. Apr 2005 B2
6895286 Kaji et al. May 2005 B2
6935313 Jacobson Aug 2005 B2
6941287 Vaidyanathan et al. Sep 2005 B1
6952662 Wegerich et al. Oct 2005 B2
6976062 Denby et al. Dec 2005 B1
7000229 Gere Feb 2006 B2
7024343 El-Ratal Apr 2006 B2
7027953 Klein Apr 2006 B2
7035834 Jacobson Apr 2006 B2
7117079 Streichsbier et al. Oct 2006 B2
7124047 Zhang et al. Oct 2006 B2
7127892 Akins et al. Oct 2006 B2
7174284 Dolansky et al. Feb 2007 B2
7178328 Solbrig Feb 2007 B2
7191161 Rai et al. Mar 2007 B1
7194392 Tuken et al. Mar 2007 B2
7213007 Grichnik May 2007 B2
7356393 Schlatre et al. Apr 2008 B1
7369925 Morioka et al. May 2008 B2
7787969 Grichnik et al. Aug 2010 B2
7813869 Grichnik et al. Oct 2010 B2
8036764 Grichnik et al. Oct 2011 B2
20020014294 Okano et al. Feb 2002 A1
20020016701 Duret et al. Feb 2002 A1
20020042784 Kerven et al. Apr 2002 A1
20020049704 Vanderveldt et al. Apr 2002 A1
20020103996 LeVasseur et al. Aug 2002 A1
20020198821 Munoz Dec 2002 A1
20030018503 Shulman Jan 2003 A1
20030055607 Wegerich et al. Mar 2003 A1
20030093250 Goebel May 2003 A1
20030126053 Boswell et al. Jul 2003 A1
20030126103 Chen et al. Jul 2003 A1
20030130855 Babu et al. Jul 2003 A1
20030167354 Peppers et al. Sep 2003 A1
20030187567 Sulatisky et al. Oct 2003 A1
20030187584 Harris Oct 2003 A1
20030200296 Lindsey Oct 2003 A1
20040030420 Ulyanov et al. Feb 2004 A1
20040034857 Mangino et al. Feb 2004 A1
20040059518 Rothschild Mar 2004 A1
20040077966 Yamaguchi et al. Apr 2004 A1
20040122702 Sabol et al. Jun 2004 A1
20040122703 Walker et al. Jun 2004 A1
20040128058 Andres et al. Jul 2004 A1
20040135677 Asam Jul 2004 A1
20040138995 Hershkowitz et al. Jul 2004 A1
20040153227 Hagiwara et al. Aug 2004 A1
20040230404 Messmer et al. Nov 2004 A1
20040267818 Hartenstine Dec 2004 A1
20050047661 Maurer Mar 2005 A1
20050055176 Clarke et al. Mar 2005 A1
20050091093 Bhaskaran et al. Apr 2005 A1
20050209943 Ballow et al. Sep 2005 A1
20050210337 Chester et al. Sep 2005 A1
20050240539 Olavson Oct 2005 A1
20050261791 Chen et al. Nov 2005 A1
20050262031 Saidi et al. Nov 2005 A1
20050278227 Esary et al. Dec 2005 A1
20050278432 Feinleib et al. Dec 2005 A1
20060010057 Bradway et al. Jan 2006 A1
20060010142 Kim et al. Jan 2006 A1
20060010157 Dumitrascu et al. Jan 2006 A1
20060025897 Shostak et al. Feb 2006 A1
20060026270 Sadovsky et al. Feb 2006 A1
20060026587 Lemarroy et al. Feb 2006 A1
20060064474 Feinleib et al. Mar 2006 A1
20060068973 Kappauf et al. Mar 2006 A1
20060129289 Kumar et al. Jun 2006 A1
20060130052 Allen et al. Jun 2006 A1
20060229753 Seskin et al. Oct 2006 A1
20060229769 Grichnik et al. Oct 2006 A1
20060229852 Grichnik et al. Oct 2006 A1
20060229854 Grichnik et al. Oct 2006 A1
20060230018 Grichnik et al. Oct 2006 A1
20060230097 Grichnik et al. Oct 2006 A1
20060230313 Grichnik et al. Oct 2006 A1
20060241923 Xu et al. Oct 2006 A1
20060247798 Subbu et al. Nov 2006 A1
20070061144 Grichnik et al. Mar 2007 A1
20070094048 Grichnik Apr 2007 A1
20070094181 Tayebnejad et al. Apr 2007 A1
20070118338 Grichnik et al. May 2007 A1
20070124237 Sundararajan et al. May 2007 A1
20070150332 Grichnik et al. Jun 2007 A1
20070168494 Liu et al. Jul 2007 A1
20070179769 Grichnik et al. Aug 2007 A1
20070203864 Grichnik Aug 2007 A1
20080154811 Grichnik et al. Jun 2008 A1
20080201054 Grichnik et al. Aug 2008 A1
20090024367 Grichnik et al. Jan 2009 A1
Foreign Referenced Citations (9)
Number Date Country
1103926 May 2001 EP
1367248 Dec 2003 EP
1418481 May 2004 EP
10-332621 Dec 1998 JP
11-351045 Dec 1999 JP
2002-276344 Sep 2002 JP
WO9742581 Nov 1997 WO
WO02057856 Jul 2002 WO
WO2006017453 Feb 2006 WO
Related Publications (1)
Number Date Country
20090132216 A1 May 2009 US
Continuation in Parts (2)
Number Date Country
Parent 11477515 Jun 2006 US
Child 12314847 US
Parent 11101498 Apr 2005 US
Child 11477515 US