É um estudo de engenharia para estimar a capacidade natural de um processo
Avalia a uniformidade do processo, medindo sua variabilidade inerente em relação aos requisitos do produto
O processo deve estar estável (sob controle estatístico) para que a análise tenha validade
Sem estabilidade, as estimativas de variância refletem causas atribuíveis e não a verdadeira capacidade intrínseca do processo
Ferramentas Básicas para Análise de Capacidade
As técnicas mais fundamentais incluem gráficos de controle, histogramas e gráficos de probabilidade
Um gráfico de controle deve sempre preceder a avaliação da capacidade, para garantir a ausência de causas atribuíveis
O histograma permite uma visualização imediata da forma da distribuição, centralização e dispersão dos dados
O gráfico de probabilidade ajuda a validar os pressupostos distributivos (como a Normalidade) exigidos pelos índices de capacidade
Análise da Capacidade Utilizando o Histograma
O histograma exibe a distribuição empírica da característica da qualidade
Exige uma amostra de tamanho razoável: recomenda-se pelo menos 100 observações para estabilidade visual
Permite observar instantaneamente se o processo está centrado entre os limites de especificação
Junto com a média amostral (\(\bar{x}\)) e o desvio-padrão amostral (\(s\)), fornece a base para inferências de tolerância
Tolerância natural estimada: \(\text{LNT} = \bar{x} \pm 3s\) (cobre cerca de 99,73% das observações, se a distribuição for Normal)
Visualização de Desempenho com Histograma
O histograma mapeia a frequência em classes, evidenciando o comportamento da característica da qualidade
Barras que ultrapassam os limites de especificação representam a fração de itens não conformes
Clique para ver o código
set.seed(42)dados_demo <-data.frame(x =rnorm(300, mean =50, sd =3))LIE_demo <-42; LSE_demo <-58ggplot(dados_demo, aes(x = x)) +geom_histogram(aes(fill =after_stat(x) < LIE_demo |after_stat(x) > LSE_demo),bins =25, color ="black") +scale_fill_manual(values =c(`FALSE`=unname(pal["azul"]), `TRUE`=unname(pal["coral"])),guide ="none") +geom_vline(xintercept =c(LIE_demo, LSE_demo), color = pal["coral"],linetype ="dashed", linewidth =1) +labs(title ="Histograma com Limites de Especificacao (LIE / LSE)",x ="Caracteristica da qualidade", y ="Frequencia") +tema_cep()
Exemplo 8.1 — Capacidade com um Histograma
Considere a análise da resistência à ruptura de 100 garrafas de vidro. Qual é a capacidade do processo, visualizada em um histograma? Do livro, \(\bar{x} = 264{,}06\) e \(s = 32{,}02\) psi.
Clique para ver o código
set.seed(42)dados_garrafas <-data.frame(Resistencia =rnorm(100, mean =264.06, sd =32.02))ggplot(dados_garrafas, aes(x = Resistencia)) +geom_histogram(color ="black", fill = pal["azul"], bins =15) +geom_vline(xintercept =mean(dados_garrafas$Resistencia),color = pal["verde"], linewidth =1) +labs(title ="Histograma de Resistencia a Ruptura (Exemplo 8.1)",x ="Resistencia (psi)", y ="Frequencia") +tema_cep()
A forma do histograma sugere Normalidade: cerca de 99,73% das garrafas devem romper entre 168 e 360 psi — uma estimativa de capacidade independente de qualquer especificação do cliente.
Análise Utilizando o Gráfico de Probabilidade
O histograma apenas sugere a forma; o gráfico de probabilidade (Q-Q plot) é um teste visual mais rigoroso
Se o modelo paramétrico (ex.: Normal) for adequado, os dados plotados se alinharão aproximadamente em uma reta
Desvios acentuados da reta nas caudas indicam não normalidade, invalidando o uso de índices como o \(C_p\) padrão
Pode ser usado não só com a Normal, mas também com Lognormal, Weibull, etc.
Avaliação de Normalidade no R
Validando a premissa de distribuição Normal para a resistência das garrafas de vidro (Exemplo 8.1).
ggplot(dados_garrafas, aes(sample = Resistencia)) +stat_qq(color = pal["azul"]) +stat_qq_line(color = pal["coral"], linetype ="dashed") +labs(title ="Grafico de Probabilidade Normal (Q-Q Plot)",x ="Quantis teoricos", y ="Quantis amostrais") +theme_classic()
Os pontos se alinham razoavelmente bem com a reta de referência, sustentando a suposição de Normalidade usada nos índices de capacidade que seguem.
Razões da Capacidade de um Processo (\(C_p\))
O histograma mostra os dados; as razões de capacidade resumem o desempenho em um único número (adimensional)
O índice de capacidade do processo (\(C_p\)), proposto por Juran (1974), compara o corredor tolerado pelo cliente com a variação intrínseca da máquina
Variação intrínseca = \(6\sigma\) (largura natural da curva Normal, que abrange 99,73% da produção)
A Formulação do Índice \(C_p\)
Relaciona a Largura de Especificação (LSE − LIE), a Tolerância Especificada (TE), com o espalhamento estatístico \(6\sigma\), a Tolerância Natural (TN) do processo:
Interpretando o \(C_p\): Percentual da Faixa Utilizada
Outra interpretação útil obtida a partir de \(C_p\) é o percentual da faixa de especificação efetivamente utilizado pelo processo:
\[P_p = \left(\frac{1}{C_p}\right) \times 100\%\]
Quanto menor\(P_p\), mais “folga” o processo tem dentro da especificação
Veremos a seguir um exemplo clássico (anel de pistão) onde \(C_p = 1{,}68\) implica \(P_p \approx 59{,}5\%\)
Interpretando o \(C_p\) em Fração de Refugo (ppm)
O \(C_p\) tem um vínculo direto com Peças Por Milhão (ppm) defeituosas, assumindo Normalidade, processo sob controle e média centrada entre LSE e LIE:
\(C_p\)
ppm (unilateral)
ppm (bilateral)
0,50
66.807
133.614
0,70
17.865
35.729
0,90
3.467
6.934
1,00
1.350
2.700
1,20
159
318
1,33
48
96
1,50
4
7
1,60
1
2
2,00
0,0009
0,0018
Exemplo — Razão de Capacidade do Anel de Pistão
Especificação do diâmetro: \(74{,}00 \pm 0{,}05\) mm. Do gráfico \(\bar{x}\)/\(R\) do processo (sob controle), estima-se \(\hat\sigma = \bar{R}/d_2 = 0{,}0099\).
cat(sprintf("Pp = %.1f%% da faixa de especificacao utilizada\n", Pp_anel))
Pp = 59.4% da faixa de especificacao utilizada
\(C_p > 1\) indica situação desejável: o processo utiliza apenas cerca de 60% da faixa de especificação disponível.
Calculando \(C_p\) no R (Caso Genérico)
Um processo possui média \(\mu=50\) e desvio-padrão estimado \(\hat{\sigma}=2\). Os limites do cliente são \(LSE=58\) e \(LIE=42\). Calcule o \(C_p\).
LSE <-58LIE <-42sigma_est <-2Cp <- (LSE - LIE) / (6* sigma_est)cat(sprintf("O indice Cp do processo e: %.2f\n", Cp))
O indice Cp do processo e: 1.33
Interpretação: \(C_p = 1{,}33\) indica um processo capaz, com folga confortável dentro dos limites especificados.
Calculando Fração Não Conforme (Refugo) no R
Com os dados do slide anterior (\(\mu=50, \sigma=2, LIE=42, LSE=58\)), encontre o percentual exato de itens fora da especificação utilizando a distribuição Normal cumulativa.
Se \(C_p = C_{pk}\), o processo está centrado no ponto médio das especificações
Se a média encostar no limite da especificação, \(C_{pk} = 0\); se ultrapassar, \(C_{pk} < 0\)
Dinâmica Visual do \(C_p\) vs \(C_{pk}\)
A diferença entre \(C_p\) e \(C_{pk}\) quantifica exatamente o grau de falta de centralização da máquina (relação clássica de Montgomery, Figura 8.8):
Caso
\(\sigma\)
\(C_p\)
\(C_{pk}\)
Situação
(a)
2
2,0
2,0
Centrado
(b)
2
2,0
1,5
Levemente descentrado
(c)
2
2,0
1,0
Descentrado
(d)
2
2,0
0,0
Média no limite
(e)
2
2,0
−0,5
Média fora da especificação
Dinâmica Visual do \(C_p\) vs \(C_{pk}\)
Clique para ver o código
LIE_v <-38; LSE_v <-62; sigma_v <-2medias_v <-c(50, 53, 56, 59, 62)casos_v <-c("(a)", "(b)", "(c)", "(d)", "(e)")x_grid <-seq(30, 75, length.out =400)df_v <-do.call(rbind, lapply(seq_along(medias_v), function(i) {data.frame(x = x_grid, y =dnorm(x_grid, medias_v[i], sigma_v), caso = casos_v[i])}))ggplot(df_v, aes(x, y, color = caso)) +geom_line(linewidth =1) +geom_vline(xintercept =c(LIE_v, LSE_v), color = pal["coral"], linetype ="dashed") +scale_color_manual(values =c(unname(pal["azul"]), unname(pal["verde"]), unname(pal["ambar"]),unname(pal["roxo"]), unname(pal["coral"]))) +labs(title ="Relacao entre Cp e Cpk para diferentes graus de descentramento",x ="Caracteristica da qualidade", y ="Densidade", color ="Caso") +tema_cep()
Computando o \(C_{pk}\) no R usando qcc — Simulação
Simulando um processo descentrado (média \(\approx 54\)) num corredor (42 a 58) com desvio \(\approx 2\).
set.seed(9)dados_descentrados <-matrix(rnorm(100, mean =54, sd =2), ncol =5)q_desc <-qcc(dados_descentrados, type ="xbar", plot =FALSE)
O processo foi gerado com média deslocada para 54, dentro do corredor (42, 58), mas próxima do limite superior
A primeira etapa é sempre obter o objeto qcc (Fase I), que armazena a média geral, o desvio-padrão estimado e os limites de controle do gráfico \(\bar{x}\)
Esse objeto será passado para process.capability(), que calcula a penalidade automaticamente
Computando o \(C_{pk}\) no R usando qcc — Resultado
\(C_{pk}\) depende inversamente de \(\sigma\) e cresce quando \(\sigma \to 0\), mesmo que a média esteja longe do alvo — isso o torna inadequado sozinho como medida de centralização
Boyles (1991) demonstra formalmente que:
\(C_{pm} = C_{pk} = C_p\), quando \(\mu = T\)
\(C_{pm} \to 0\), quando \(|\mu - T| \to \infty\)
Recomendação prática: interpretar \(C_p\), \(C_{pk}\) e \(C_{pm}\) em conjunto, nunca isoladamente
Intervalos de Confiança para a Capacidade
Em Ciência de Dados, o \(C_p\) relatado é apenas uma estimativa pontual amostral\(\hat{C}_p\), sujeita a flutuação estatística
Deve-se prover aos gestores um Intervalo de Confiança (IC), evidenciando o quanto a métrica pode variar de verdade
Requer que a variável siga distribuição estritamente Normal para utilizar as aproximações assintóticas das caudas paramétricas
Intervalo de Confiança para \(C_p\)
Se a característica da qualidade segue distribuição Normal, um IC de nível \(100(1-\alpha)\%\) para \(C_p\) é obtido a partir da distribuição qui-quadrado com \(n-1\) graus de liberdade:
cat(sprintf("IC 95%% para Cp: [%.2f, %.2f]\n", li_84, ls_84))
IC 95% para Cp: [1.56, 3.01]
O intervalo é relativamente amplo: amostras pequenas/moderadas geram considerável flutuação em \(s\), refletida em ICs largos para \(C_p\).
A Fórmula do Intervalo de Confiança para \(C_{pk}\)
A aproximação pelo Método Delta (Bissell, 1990; Zhang, Stenback e Wardrop, 1990; Kushler e Hurley, 1992) gera o IC aproximado de nível \(100(1-\alpha)\%\) (Montgomery, Eq. 8.21):
Mostra que um \(C_{pk}\) estimado de amostras pequenas é pouco informativo isoladamente
Exemplo 8.5 — Um Intervalo de Confiança para \(C_{pk}\)
Utiliza-se uma amostra de tamanho \(n = 20\) de um processo estável para estimar \(C_{pk}\), com resultado \(\hat{C}_{pk} = 1{,}33\). Ache um IC aproximado de 95% para a métrica.
Esse exemplo evidenciará o quanto a estimativa pontual de 1,33 pode ser enganosa isoladamente
Como o limite inferior cai abaixo de 1, o processo não tem garantia de operar como Seis Sigma com base em apenas \(n=20\) amostras — a razão é o tamanho de amostra pequeno.
Análise de Capacidade por Gráfico de Controle
Para reportar \(C_p\) com confiança, os dados precisam ser contínuos no eixo do tempo e o processo sob Controle Estatístico
Gráficos \(\bar{x}\) e \(R\) resolvem isso: extraem os dados, comprovam a estabilidade do processo e fornecem a estimativa de desvio-padrão \(\bar{R}/d_2\)
Vantagens de Estimar via \(\bar{R}/d_2\)
O uso direto do desvio-padrão total \(s\) confunde ruído momentâneo e quebras de máquina em uma única estimativa enviesada
Quando usamos \(\hat{\sigma} = \bar{R}/d_2\), estamos estimando a capacidade de curto prazo, calculada a partir da variação dentro de subgrupos
Mostra o que a máquina faria se nenhuma causa atribuível externa a perturbasse
Capacidade no R: Dados de Anéis de Pistão — Preparação
Usando o conjunto de dados pistonrings, incluído no pacote qcc, que reproduz o exemplo clássico de Montgomery sobre o diâmetro de anéis de pistão.
data(pistonrings)diametro <-qcc.groups(pistonrings$diameter, pistonrings$sample)painel_anel <-qcc(diametro[1:25, ], type ="xbar", plot =FALSE)
qcc.groups() reorganiza os dados longos (diameter, sample) em uma matriz, com uma linha por subgrupo
Usamos apenas os 25 primeiros subgrupos (Fase I), garantindo que o painel represente um processo já confirmado como estável
O objeto painel_anel armazena a média geral, o desvio-padrão \(\bar{R}/d_2\) e os limites de controle do gráfico \(\bar{x}\)
Capacidade no R: Dados de Anéis de Pistão — Relatório
Com a especificação \(74{,}00 \pm 0{,}05\) mm, o processo dos anéis de pistão apresenta capacidade elevada — consistente com o exemplo do anel de pistão visto anteriormente (\(C_p \approx 1{,}68\)).
Relatório com Alvo Definido — Cálculo
Reaproveitando o painel painel_anel (Fase I, anéis de pistão), agora informando um alvo explícito \(T=74{,}02\) mm.
Repare como a inclusão de um alvo explícito (\(T=74{,}02\)) ativa o cálculo do \(C_{pm}\) dentro do mesmo relatório — e como ele cai em relação ao \(C_p\), refletindo o afastamento entre o alvo e o centro da especificação.
O Perigo da Máquina Fora de Controle
Às vezes a carta revela pontos fora dos limites \(3\sigma\) no gráfico \(\bar{x}\) ou \(R\)
É estatisticamente inválido estimar índices de capacidade (\(C_{pk}\)) de um processo fora de controle
Nestes casos, o trabalho prioritário não é calcular o índice para a diretoria, mas investigar e eliminar as causas atribuíveis (ciclo DMAIC — etapa Melhorar)
Se a máquina apresenta variação alta (\(C_p < 1\)), o gráfico de controle por si só não corrige a falha estrutural
Para encontrar a raiz do ruído, recorre-se ao Delineamento de Experimentos (DOE)
Em vez de observar passivamente, o estatístico força mudanças nas variáveis do processo (pressão, temperatura) e lê os reflexos em matrizes fatoriais balanceadas
Isolando Fatores via ANOVA
Em vez de uma variância total confusa \(\sigma^2_{Total}\), o DOE e a Análise de Variância (ANOVA) decompõem o erro:
O investimento financeiro pode então ser direcionado à variável de maior contribuição (ex.: trocar o controlador térmico) para recuperar o \(C_{pk}\)
Análise de Capacidade com Dados de Atributo
Quando não há régua decimal (variáveis contínuas), o setor monitora Passa/Falha (atributos), via Binomial ou Poisson
Não há curva de sino para encaixar limites LSE/LIE de engenharia fina
A capacidade é diretamente a taxa média de refugo gerada (\(\bar{p}\)) ou de defeitos (\(\bar{c}\)), extraída das cartas \(p\) ou \(c\) (vistas no Capítulo 7)
Relatório de DPMO no R (Atributos)
Um call center processou 10.000 requisições e 150 tiveram falhas ao longo do mês, com o processo estável. Extraia a capacidade Binomial.
Se o medidor (\(\sigma_{Medidor}\)) for muito ruidoso, o cientista pode rejeitar equivocadamente lotes de produtos geometricamente perfeitos
Repetitividade vs. Reprodutibilidade
O termo \(\sigma^2_{Medidor}\) é decomposto em duas frentes:
Repetitividade: variação causada pelo próprio instrumento ao medir repetidamente a mesma peça
Reprodutibilidade: variação causada pela diferença entre operadores que medem a mesma unidade
Gráficos de Controle para Estudos de Medidor
Engenheiros avaliam o instrumento extraindo \(\bar{x}\) e \(R\) de medições repetidas, feitas por múltiplos operadores, sobre as mesmas dez peças de referência
O gráfico \(R\) atesta a repetitividade: se a amplitude de medição sobre a mesma peça ultrapassar o LSC, o equipamento precisa de calibração
Clique para ver o código
set.seed(11)medicoes_medidor <-matrix(rnorm(60, mean =10, sd =0.3), ncol =3)g_medidor <-qcc(medicoes_medidor, type ="R", plot =FALSE)plot_carta(g_medidor$statistics, g_medidor$center, g_medidor$limits[1, "LCL"], g_medidor$limits[1, "UCL"],"Grafico R - Repetitividade do Medidor", ylab ="Amplitude")
Razão Precisão-para-Tolerância (P/T)
Métrica que mede quanta margem da tolerância do cliente (LSE − LIE) o medidor consome sozinho:
cat(sprintf("Variabilidade do produto (Peca) = %.2f (%.1f%% do total)\n", var_peca, 100* var_peca / var_total))
Variabilidade do produto (Peca) = NA (NA% do total)
cat(sprintf("Variancia total do medidor (R&R) = %.2f (%.1f%% do total)\n", var_medidor, 100* var_medidor / var_total))
Variancia total do medidor (R&R) = 5.70 (NA% do total)
Se a fração do medidor (R&R) for elevada em relação à variabilidade do produto, o instrumento — não o processo — pode estar mascarando a verdadeira capacidade.
Falsas Falhas e Falhas que Passam (Riscos)
Um medidor ruidoso distorce as decisões de qualidade:
Falsa falha (risco do produtor): a peça era boa (\(x\) dentro da especificação), mas o medidor reportou (\(y\)) fora — a fábrica descarta produto bom
Falha que passa (risco do consumidor): a peça era ruim, mas o medidor reportou dentro do túnel — um produto defeituoso chega ao cliente
Avaliados geometricamente integrando regiões de densidade Normal bivariada entre \(x\) (valor real) e \(y\) (valor medido)
Fixação de Limites de Especificação em Componentes
Concluída a avaliação do sistema de medição, passamos às interações dos componentes na montagem
Uma peça é fabricada em um setor e precisa se encaixar em outra peça fabricada em outro setor, formando o produto final
Como assinalar especificações que garantam o encaixe estatístico global, sabendo que cada peça tem variação própria e independente?
Combinações Lineares (Empilhamento de Tolerâncias)
As tolerâncias são aditivas, mas seguem a lei de propagação de variâncias (não de tolerâncias diretamente). Para uma montagem \(y = x_1 + x_2 + \dots + x_n\), com \(x_i\) independentes:
cat(sprintf("Percentual de montagens dentro da especificacao: %.3f%%\n", p_sucesso_88 *100))
Percentual de montagens dentro da especificacao: 98.158%
Apenas cerca de 98,17% das montagens atendem ao cliente — não é um produto Seis Sigma.
Combinações Não Lineares de Tolerâncias
Quando a dimensão final é uma função não linear dos componentes (ex.: folga em um conjunto eixo-mancal), usa-se uma expansão de série de Taylor de primeira ordem em torno das médias:
Avaliada nos valores médios \(\mu_1, \mu_2, \dots, \mu_n\)
É a base do Exemplo 8.10 (Montgomery): montagem de eixo e mancal, em que a folga é o produto/razão de duas dimensões, não uma soma simples
Estimando Limites Naturais de Tolerância (LNT)
Não confundir Limite de Controle (\(\bar{x}\)), que julga o equipamento ao longo do tempo, com Limite de Tolerância Natural, que expressa a faixa de variação esperada para 1 unidade individual
LNT Paramétrico Normal: traçado com \(100(1-\alpha)\%\) de confiança, usando \(\bar{x} \pm Ks\), com \(K\) extraído de tabelas de fatores de tolerância
LNT Não Paramétrico: se a variável falha no teste de Normalidade (Box-Cox), utilizam-se ordens estatísticas de distribuição livre, exigindo tipicamente \(n > 500\)
Conclusão do Capítulo 8 e LNT no R
media_processo <-100s_estimado <-2LNT_superior <- media_processo +3* s_estimadoLNT_inferior <- media_processo -3* s_estimadocat(sprintf("O processo produzira pecas tipicamente entre %.0f e %.0f\n", LNT_inferior, LNT_superior))
O processo produzira pecas tipicamente entre 94 e 106
Este capítulo fecha o intervalo entre o que o processo faz, estatisticamente, e o que o cliente exige
Sem o balizamento de métricas como \(C_p\), \(C_{pk}\), \(C_{pm}\) e Gage R&R, os gráficos de controle (Capítulos 6 e 7) operam sem referência clara de adequação ao uso
Exercício 8.22 — Estimativa Pontual e IC para \(C_p\)
Exercício 8.22 — Montgomery, Cap. 8
Um processo normalmente distribuído tem especificações \(LIE = 75\) e \(LSE = 85\). Uma amostra de 25 partes indica que o processo está centrado no meio da faixa de especificação e o desvio-padrão é \(s = 1{,}5\).
Encontre uma estimativa pontual para \(C_p\). O processo é capaz?
Encontre um intervalo de confiança de 95% para \(C_p\). Comente sobre a amplitude do intervalo.
cat(sprintf("IC 95%% para Cp: [%.3f, %.3f]\n", li_822, ls_822))
IC 95% para Cp: [0.799, 1.423]
Exercício 8.26 — Estimativa Pontual e IC para \(C_{pk}\)
Exercício 8.26 — Montgomery, Cap. 8
Uma característica da qualidade normalmente distribuída tem limites de especificação \(LIE = 10\) e \(LSE = 20\). Uma amostra de tamanho 50 resulta em \(\bar{x} = 16\) e \(s = 1{,}2\).
Calcule uma estimativa pontual de \(C_{pk}\).
Encontre um intervalo de confiança de 95% para \(C_{pk}\).
Um mesmo operador mede dez peças três vezes, em um estudo da capacidade de um medidor.
Descreva o erro de medição resultante.
Estime a variabilidade total e a variabilidade do produto.
Qual percentual da variabilidade total é decorrente do medidor?
Se as especificações forem \(100 \pm 15\), ache a razão \(P/T\) e comente a adequação do medidor.
Estrutura de solução: estimar \(\hat\sigma_{Medidor}\) a partir da repetitividade (gráfico \(R\) entre as 3 repetições), depois aplicar a fórmula de \(P/T\) vista anteriormente.
Obrigado!
Capacidade de Processos e Sistemas de Medida · UFPB