430 likes | 569 Views
EE-240/2009 Proportional Hazards Model. Proportional Hazards Model. Informações da População. p (t). p (t). t. t. T . 0. 0. t. t. =1. =1. =2. =2. =n-1. =n-1. =n. =n. Informações da População. x 2 = f ON-OFF. 0. 0. t. t. x 1 = T. =1. =1. =2. =2.
E N D
EE-240/2009 Proportional Hazards Model
Informações da População p (t) p (t) t t T 0 0 t t =1 =1 =2 =2 =n-1 =n-1 =n =n
Informações da População x2 = fON-OFF 0 0 t t x1 = T =1 =1 =2 =2 =n-1 =n-1 =n =n
Risk Set: R1 = {1,2,3,4,5,6} R2 = {2,3,4} R3 = {3,4} R4 = {4} Seja t1 < t2 < ... < tk Ri = conjunto de componentes sobreviventes até ti- Exemplo:
P(componente x = xj falhar em tj | algum componente de Rj falhar em tj) = P(componente x = xj falhar em tj ) = P(algum componente de Rj falhar em tj) P(componente j falhar em tj | algum componente de Rj falhar em tj) = ? j havia sobrevivido até t falhar em t
dR ( ) ( ( ) ) ( ) ( ( ) ) ( ) l = - = l 0 t a x t a x a x a x t x 0 dt Em modelos com tempo de falha acelerada os covariates x atuam diretamente sobre a escala de tempo: Tempo de falha ti associado com xi
Exemplo de Aplicação Modelo de Riscos Proporcionais
0 0 t t x1 = T =1 560 =1 =2 830 =2 =n-1 =n-1 580 =n =n 290 Exemplo
0 t x1 = T 560 =1 830 =2 =n-1 580 =n 290 Exemplo Ordenado
Dados Censurados Conjunto sob Risco
= 0.068 Maximização de L(): Método Gráfico
Como contar ciclos? Temp t
y t Rainflow Counting
Rainflow Counting 10
Rainflow Counting 10 5
Rainflow Counting 10 5 5
Rainflow Counting 10 5 5 10
Rainflow Counting 10 5 5 10 7
Rainflow Counting 10 5 5 10 7 6
Rainflow Counting 10 5 5 10 7 6 9
Rainflow Counting 10 5 5 10 7 6 9 9
Rainflow Counting Num ciclos 10 5 5 10 Amplitude dos Ciclos 7 6 9 10 5 9 9 ni ciclos de amplitude i observados Ni ciclos de amplitude i até falha Miner's Rule Falha esperada se degradação = 1
x1 = fciclos 0 t x2 = T =1 1 = 0.080 2 = 0.002 0(t) = 1.000 =2 =n-1 =n Exemplo: Transistor sujeito a Ciclos de Temperatura
x1 x2 tf 4.2306 89.2317 0.0048 6.8886 72.0119 0.0315 2.6111 38.8399 0.0813 6.8938 76.0953 0.0956 7.9026 33.1328 0.1225 2.0328 6.8882 0.1869 5.1552 89.4266 0.2455 3.0149 18.0024 0.2530 4.3336 9.8591 0.2664 3.6429 61.5732 0.3403 5.9924 20.8155 0.3917 7.6678 24.4291 0.4065 4.8371 84.4551 0.4382 0.0822 58.1682 0.5185 1.5801 74.4378 0.5431 x1 x2 tf 0.7944 12.3874 0.5682 7.7666 10.4694 0.5849 6.8524 97.3821 0.6050 2.6404 99.4168 0.6327 6.4964 4.1755 0.6453 3.7506 64.4742 0.7492 3.6956 38.3876 0.7518 4.0088 34.0689 0.7793 0.9710 39.1862 0.8369 1.7397 92.1909 0.9740 7.8625 86.9611 1.1034 8.9069 23.8137 1.1754 1.9242 23.3173 1.2395 5.2769 34.1514 1.6436 0.2712 32.0848 2.7048
Método da Maximização da Verossimilhança (log) >> x=fminsearch(@neglogpartlikelihood,[0.09 ; 0.002]) x = 0.0892 0.0033
function [L]=neglogpartlikelihood(beta) % Número de componentes N = 30; table = [2.2974 49.5063 2.6412 6.4795 40.0443 0.1454 ... 3.0467 81.7767 0.1391]; % Ordenar por instantes de falha tables=sortrows(table,3); % Calcula Somatoria de beta’*x bex=0; for kk=1:N bex=bex + beta(1)*tables(kk,1)+beta(2)*tables(kk,2); end % Calcular Somatoria de beta’*x para R(kk) somat(N+1)=0.; for kk=N:-1:1 somat(kk)=somat(kk+1)+ exp(beta(1)*tables(kk,1)+beta(2)*tables(kk,2)); end L = -bex + sum(log(somat(1:N)));
log L() [ x10-2 ] beta1 9.4 beta2 [ x 10-3 ] 2.9 8.0 2.0 Método Gráfico
Exemplo: Rolamento 20 rolamentos em ambiente limpo x = 0: tf = { 1 3 3 6 7 7 10 12 14 15 18 19 22 26 28+ 29 34 40 48+ 49+ } 20 rolamentos em ambiente com partículas abrasivas x = 1: tf = { 1 1 2 2 3 4 5 8 8 9 11 12 14 16 18 21 27+ 31 38+ 44 }
x = 0: tf = { 1 3 3 6 7 7 10 12 14 15 18 19 22 26 28+ 29 34 40 48+ 49+ } x = 1: tf = { 1 1 2 2 3 4 5 8 8 9 11 12 14 16 18 21 27+ 31 38+ 44 }
x = 0: tf = { 1 3 3 6 7 7 10 12 14 15 18 19 22 26 28+ 29 34 40 48+ 49+ } x = 1: tf = { 1 1 2 2 3 4 5 8 8 9 11 12 14 16 18 21 27+ 31 38+ 44 }
x = 0: tf = { 1 3 3 6 7 7 10 12 14 15 18 19 22 26 28+ 29 34 40 48+ 49+ } x = 1: tf = { 1 1 2 2 3 4 5 8 8 9 11 12 14 16 18 21 27+ 31 38+ 44 }
x = 0: tf = { 1 3 3 6 7 7 10 12 14 15 18 19 22 26 28+ 29 34 40 48+ 49+ } x = 1: tf = { 1 1 2 2 3 4 5 8 8 9 11 12 14 16 18 21 27+ 31 38+ 44 }
x = 0: tf = { 1 3 3 6 7 7 10 12 14 15 18 19 22 26 28+ 29 34 40 48+ 49+ } x = 1: tf = { 1 1 2 2 3 4 5 8 8 9 11 12 14 16 18 21 27+ 31 38+ 44 }