En maîtrise statistique des procédés (ou SPC), l’analyse de “la capabilité” est une partie très importante de la phase de mesure (le M du DMAIC).

Par une analyse de capabilité nous mesurons comment la performance de notre processus s’adapte aux exigences du client. Ces exigences sont traduites avec des limites de spécification USL/LSL (limites supérieure/inférieure).

Ces spécifications sont “la voix du client”, en dehors de ces limites la performance du processus est inacceptable. Mais être dans les limites spécifiques ne suffit pas, le processus est juste lorsque nous approchons de la cible avec aussi peu de variations possibles.

L’idée est de comparer les spécifications de la “voix du client VoC” aux limites naturelles du processus (ou limites de contrôle UCL/LCL) “la voix du processus VoP”.

L’analyse de capabilité va quantifier ces différences à travers des indices et des outils graphiques.

Indices de capabilité

Les indices de capabilité comparent les spécificités du client avec les performances du processus.

\(Capability =\frac{USL - LSL }{6\sigma}\;\) (que nous noterons \(C_{p}\))

On suppose ici que \(X\), la statistique étudiée, suit la loi normale de moyenne \(\mu\) et d’écart type \(\sigma\) avec l’hypothèse que \(\mu=\frac{USL+LSL}{2}\)

On peut alors écrire que la proportion de non conformes est :

\(p=P(X\leq LSL) + P(X\geq USL) = 2-2\Phi(\frac{USL-LSL}{2\sigma})\)

\(p= 2-2\Phi(3C_{p}) \quad\) (avec \(\; 6\sigma C_{p}=USL - LSL\))

Nous voyons souvent un \(\;C_{p} = \frac{4}{3} \approx1.33\,\) ce qui correspond à une proportion de défectueux de 6 pour 100000

2-2*pnorm(4)
## [1] 6.334248e-05

Si \(\;C_{p} \approx 1.67\) la proportion de défectueux est d’environ 6 pour 10 millions

La formule \(C_{p} =\frac{USL - LSL }{6\sigma}\;\) ne nous permet pas de vérifier si le processus est centré par rapport à la moyenne. Pour traiter ce problème nous utilisons l’indice : \(C_{pk}=min\left \{ \frac{USL-\mu}{3\sigma} ; \frac{\mu-LSL}{3\sigma}\right \}\) remarquons que si \(\mu=\frac{USL+LSL}{2}\) on a : \(C_{p}=C_{pk}\)

Un autre indice commence aussi à être très utilisé le \(C_{pm}\) (dit index de Taguchi), il tient compte à la fois de la dispersion et du centrage (voir ici : https://hal.archives-ouvertes.fr/hal-00974315/document ) :

\(C_{pm} =\frac{USL - LSL}{6\sqrt{\sigma^{2}+\left ( \mu - cible\right )^{2}}}=\frac{C_{p}}{\sqrt{1+9\left ( C_{p} - C_{pk}\right )^{2}}}\)

De même pour le décentrage :

\(C_{pmk} =\frac{min\left \{ USL - cible ; cible -LSL\right \} }{3\sqrt{\sigma^{2}+\left ( \mu - cible\right )^{2}}}\) qui peut-être calculé avec le \(C_{pk}\) :

\(C_{pmk}=\frac{C_{pk}}{\sqrt{1+\left ( \frac{\mu-cible}{\sigma}\right )^{2}}}\)

(Dans le cas où le process est parfaitement centré on a bien évidement : \(C_{pm}=C_{p}=C_{pk}=C_{pmk}\))

Remarque : Il est bien évident, que les hypothèses faites plus haut sont discutables, l’hypothèse de normalité en particulier et il faut avoir à l’esprit que σ et μ sont inconnus… Rares sont les études qui portent sur des indices de capabilité dans des conditions non normales (distributions asymétriques par exemple)

Pour estimer σ il sera non seulement nécessaire de prendre en compte la taille de l’échantillon mais aussi de considérer sur quel temps on se place, “court” ou “long”.

D’où deux types de dispersion :

Pour compliquer les choses, depuis une quarantaine d’années différentes normes et notations ont vu le jour… (voir à ce propos l’article de Maurice Pillet : Le point sur les études de capabilité ou d’aptitude)

De nos jours la plupart des industriels s’aligne sur la norme ISO/TS 16949, et les indices qui ont gagné en popularité sont les \(C_{p}\) et \(C_{pk}\) pour le court terme et les \(P_{p}\) et \(P_{pk}\) pour le long terme (Performance Process) et le fameux indice de Taguchi \(\;C_{pm}\) (B. LEROUX "Outils Avancés pour le management Niveau C -Ellipses)

Il faudra être très prudent lors de l’examen des indices de capabilité et être certain de l’estimation de l’écart-type sur laquelle ils sont basés. Des intervalles et des limites de confiance peuvent être établis pour \(C_{p}\) ou \(P_{p}\) lorsque les données sont supposées provenir d’une distribution normale. L’intervalle de confiance de 100(1-\(\alpha\))% est :

\(\hat{C_{p}}\sqrt{\frac{\chi_{1-\alpha/2,\nu }^{2}}{\nu }}\leq C_{p}\leq \hat{C_{p}}\sqrt{\frac{\chi_{\alpha/2,\nu }^{2}}{\nu }}\)

\(\chi_{p,\nu }^{2}\) est la valeur de la distribution chi-carré avec \(\nu\) degrés de liberté qui est dépassée avec une probabilité \(p\)

La borne inférieure pour \(C_{p}\) dans le cas unilatéral est :

\(\hat{C_{p}}\sqrt{\frac{\chi_{1-\alpha,\nu }^{2}}{\nu }}\leq C_{p}\)

Quelques exemples de calcul avec R :

#chargeons la librairie QCC : R package for quality control charting
library(qcc)

Nous prendrons pour exemple les 200 observations 40 échantillons de 5 mesures qui sont dans le “pistonrings” de la librairie QCC

data(pistonrings)
attach(pistonrings)
diameter <- qcc.groups(diameter, sample) 
#diameter devient une matrice de 40 lignes et de 5 colonnes
#voici 10 échantillons de 5 mesures
diameter[2:11,]
##      [,1]   [,2]   [,3]   [,4]   [,5]
## 2  73.995 73.992 74.001 74.011 74.004
## 3  73.988 74.024 74.021 74.005 74.002
## 4  74.002 73.996 73.993 74.015 74.009
## 5  73.992 74.007 74.015 73.989 74.014
## 6  74.009 73.994 73.997 73.985 73.993
## 7  73.995 74.006 73.994 74.000 74.005
## 8  73.985 74.003 73.993 74.015 73.988
## 9  74.008 73.995 74.009 74.005 74.004
## 10 73.998 74.000 73.990 74.007 73.995
## 11 73.994 73.998 73.994 73.995 73.990

Nous créons à présent un objet qcc comme si nous voulions tracer une carte de contrôle

Examinons 10 échantillons succesifs (un échantillon représente 5 mesures) pris au hasard :

q1<-qcc(diameter[2:11,],type = "xbar")

Le processus reste bien à l’intérieur des limites naturelles.

Maintenant nous pouvons obtenir les indices de capabilité et une représentation graphique du processus en utilisant la fonction process.capability et bien sûr fixons les spécificités du client :

LSL<-73.96
USL<-74.04
process.capability(object = q1,spec.limits = c(LSL,USL))

## 
## Process Capability Analysis
## 
## Call:
## process.capability(object = q1, spec.limits = c(LSL, USL))
## 
## Number of obs = 50           Target = 74
##        Center = 74              LSL = 73.96
##        StdDev = 0.008942        USL = 74.04
## 
## Capability indices:
## 
##       Value   2.5%  97.5%
## Cp    1.491  1.197  1.785
## Cp_l  1.505  1.243  1.767
## Cp_u  1.477  1.220  1.734
## Cp_k  1.477  1.170  1.784
## Cpm   1.490  1.198  1.781
## 
## Exp<LSL 0%    Obs<LSL 0%
## Exp>USL 0%    Obs>USL 0%

Notons qu’en plus des indices un intervalle de confiance est fourni ce qui est utile pour le suivi de la capabilité. Nous constatons dans cette exemple que le processus est bien centré \(C_{pk}=1.477>1.33\) et capable \(C_{p}=1.491>1.33\)

Une étude de capabilité plus complète avec une sortie graphique peut aussi être réalisée avec le package SixSigma. Cette fois à titre d’exemple, nous allons effectuer les calculs sur le court terme et le long terme.

library(SixSigma)
ss.study.ca(xLT = pistonrings$diameter,xST = pistonrings$diameter[6:55],LSL = 73.96,USL = 74.04,Target = 74,alpha = 0.05,f.sub = "Diamètre")

Interprétation

Le graphique est un histogramme des données de l’échantillon, qui comprend la cible et les limites de la spécification. Les lignes de densité sont tracées pour les fonctions de densité empiriques et théoriques.

Dans cet exemple, nous constatons une dérive de la moyenne sur le long terme est donc une chute de la capabilité