This paper presents an application example of the SciPy toolchain: Design for Six Sigma (DfSS). The DfSS engineering methodology contains numerous mathematical tools for statistical analysis of components, assemblies and functional responses. The objective is to design new products that will meet customer requirements robustly, while reducing the production costs.
This presentations describes examples and a short "HowTo", where DfSS engineering problems are solved using SciPy. Finally, the SciPy toolchain is compared with the common alternatives Excel(r) and MiniTab(r). The examples presented are useful for the DfSS practitioner and can also be used in the training of DfSS Black Belts.
One of the cornerstones of the DfSS methodology is understanding of production processes with random variation. To quantify the variation, statistical models are used. The two main tasks are descriptive statistics (quantifying statistical model parameters based on measurement data) and inferential statistics (based on a statistical model, predicting future behaviour). The SciPy.stats package contains functions for these tasks, and examples are given in the presentation.
Another aspect of DfSS is to understand the influence of various parameters on a process. Typically, linear models are fitted to noisy measurement data:
Y = A + BX1 + CX2 + DX3
The parameters A,B,C,D are found in the least square sense by elimination of the input matrix.
For nonlinear models of a process or product performance, optimization is often needed. Sometimes the output shall be optimized, which is straightforward with the scipy.optimization toolbox. Sometimes the variance of the output shall be minimized, which is a more complex task, due to the fact that there is also a bias term from the second derivative of the input parameters. Hereby, the separate SymPy toolbox is used for symbolic differentiation of the nonlinear function.
The SciPy solution can be compared with the common combination of Excel/Minitab. One advantage of SciPy is that all the calculations are in a text form, while the Excel/Minitab combination needs numerous menu-operations. This has clear advantages for quality control and traceability of computation results. The main disadvantage so far was the lack of application examples – which is now hopefully corrected. Also the advent of Python(X,Y) and Spider has improved usability.
With the recent availability of the Python(X,Y) package, a free, powerful and easy to use interface is available also on Microsoft Windows systems for Design for Six Sigma tasks.