Prácticas de Fiabilidad Práctica 1: Objetivo: En esta práctica se van a analizar una serie de muestras de duración de procesos para ver si corresponden a procesos con Tasa de Fallos (Hazard Rate) creciente, decreciente o constante. También se aprenderá a calcular la función de supervivencia empírica y a aplicarla en el cálculo de fiabilidad de sistemas. Conceptos básicos: En las prácticas de fiabilidad las variables que van a ser analizadas son duraciones o tiempos de vida útil de componentes. Es decir, se va a partir de una muestra de tiempos x1, x2, ..., xn. Estos tiempos se comportan (distribuyen) de acuerdo a alguna función de distribución de probabilidad que llamamos F(x). La función de densidad asociada a F(x) es f(x) y cumple que t F (t ) = ∫ f ( x)dx . 0 Se define la función de supervivencia para un instante t como la probabilidad de que el componente funcione más de dicho tiempo, es decir, como ∞ R (t ) = P( X ≥ t ) = ∫ f ( x)dx = 1 − F (t ) . t La tasa de fallos o h(t) representa la posibilidad de fallo inmediatamente después del tiempo t dado que en t el componente funcionaba. Así pues una tasa de fallos elevada indica una alta probabilidad de fallo justo después de dicho instante. Esta tasa se define como f (t ) h(t ) = . R(t ) Se pueden diferenciar esencialmente tres tipos de tasas de fallos: • • • Tasa de fallos CONSTANTE o CFR (Constant Failure Rate): La probabilidad de fallo instantáneo es siempre la misma. NO hay desgaste y NO hay defectos ocultos en el componente. Tasa de fallos CRECIENTE o IFR (Increasing Failure Rate): Conforme pasa el tiempo aumenta la probabilidad de fallo. SI hay desgaste del componente. Tasa de fallos DECRECIENTE o DFR (Decreasing Failure Rate): La probabilidad de fallo al principio es alta y va disminuyendo conforme pasa el tiempo. Hay defectos ocultos del componente que salen a la luz en el inicio del uso. La combinación de estos tres tipos de tasas da lugar a otros modelos más complejos entre los que destaca la curva de la bañera: Tasa de fallos primero decreciente (mortalidad infantil), luego constante (vida útil) y finalmente creciente (desgaste en el componente). La función de supervivencia empírica para un instante t se define como la proporción de tiempos de la muestra que sobrepasa dicho tiempo. Es decir, dada la muestra x1, x2, ..., xn de tiempos de fallo, la función de supervivencia empírica para un tiempo t queda definida como # {xi : xi ≥ t} n º de observaciones con duraciones ≥ t = . Rˆ (t ) = n n NOTA IMPORTANTE: El programa Statgraphics no proporciona la tasa de fallo, sino la Tasa de Fallo Acumulada (Cumulative Hazard Function). La tasa de fallos acumulada es la integral de la tasa de fallos: t H (t ) = ∫ h( x)dx . 0 Por lo tanto se tiene que la tasa de fallos acumulada será: • • • • Una recta de pendiente positiva si h(t) es constante Una curva creciente y convexa si h(t) es creciente Una curva creciente y cóncava si h(t) es decreciente Creciente y Cóncava más recta de pendiente positiva más creciente y convexa si h(t) es una curva de bañera. Datos: Los datos que se van a analizar se encuentran en el fichero practica 1 fiabilidad.sf. El fichero contiene 18 muestras denominadas V1 hasta V18. Todas las variables contienen tiempos de fallos simulados. La primera parte de la práctica consiste en averiguar el tipo de tasa de fallos que tiene cada una de las 18 variables contenidas en el fichero. La segunda parte consiste en la estimación de la fiabilidad de sistemas formados por componentes en serie y en paralelo. Qué hay que hacer: • • Se abre el fichero practica 1 fiabilidad.sf. Se va a: DESCRIBE LIFE DATA LIFE TABLES (times) • • • En Data ponemos el nombre de la variable que queremos analizar. En la práctica se empezará con V1 y se continuará con todas las variables del fichero. El ordenador proporciona: o La tabla de la función de supervivencia empírica (figura 1) y o El gráfico de la función de supervivencia empírica (figura 2). Hay que obtener también el gráfico de la tasa de fallos acumulada (figura 3) (Cumulative Hazard Function). Este se obtiene presionando el botón de opciones y seleccionando el gráfico. gráficas (o Graphical options) Análisis de resultados y de tasas de fallos: En primer lugar en la parte de los análisis numéricos tenemos la función de supervivencia empírica o estimada. Esta tabla recoge información de los tiempos de fallos, del número de observación, de los que aún no han fallado en un tiempo determinado, de la función de supervivencia y de la tasa de fallos acumulada. Pero para ilustrar mejor la tabla veamos qué tenemos para la primera fila: • El componente que falla primero (es la primera fila, tiempos ordenados), lo hizo en el instante de tiempo 3.68535 (Time). Éste corresponde a la observación 26 de los datos (Row). El estado (Status) que se recoge es el de un fallo (en prácticas siguientes no todos serán fallos). El número de observaciones que tienen tiempos (estrictamente) mayores que 3.68535 (Number at Risk) es 99, lo que representa un 0.99 ya que tenemos 100 observaciones en esta variable (Cumulative Survival). Las últimas dos columnas representan la desviación típica (Standard Error) de esa estimación (de 0,99) y la tasa de fallos acumulada (Cumulative Hazard). • ¿Cuál es la función de supervivencia en el instante 35? Hay que buscar cuántos tiempos están por encima de este valor. Para ello localizamos el fallo inmediatamente anterior a dicho valor: fila 4, tiempo de fallo 32.3228 y 96 tiempos más altos. Por lo tanto la supervivencia es 0.96=96/100. ¿Cuál es la función de supervivencia en 40? No varía sigue siendo 0.96. ¡¡La función de supervivencia empírica se caracteriza por ser escalonada!! Figura 1. Tabla del resumen del análisis. En segundo lugar vamos a analizar los resultados de la parte gráfica, es decir, el gráfico de la función de supervivencia empírica (Estimated Survival Function, figura 2) y el de la tasa de fallos acumulada (Estimated Cumulative Hazard Function, figura 3). La figura 2 muestra la función de supervivencia empírica para la variable V1. Es decir, es la representación de la columna “Cumulative Survival” de la tabla anterior. Se aprecia que es monótona decreciente y escalonada. Para tiempos más grandes la probabilidad de supervivencia siempre será menor que para tiempos pequeños. Al ser escalonada habrá muchos tiempos que compartan una misma probabilidad de supervivencia. Figura 2. Función de supervivencia empírica. Por último la figura 3 nos muestra la tasa de fallos acumulada para la variable V1. Se observa que la tasa de fallos acumulada evoluciona de forma lineal, por lo tanto, como ésta es la integral de la tasa de fallos, podemos decir que la tasa de fallos de esta variable es constante, es decir, es CFR (Constant Failure Rate). Figura 3. Tasa de fallos acumulada de V1. Tasas de fallo de otras variables En este apartado vamos a estudiar las tasas de fallo de otras variables del fichero. Analizamos las variables V7, V8 y V16. Se vuelven a hacer los análisis para estas variables. DESCRIBE LIFE DATA LIFE TABLES (times) (y en data el nombre de estas variables) La figura 4 muestra la tasa de fallos acumulada de la variable V7. Se puede observar que el crecimiento es más rápido que lineal, es decir, estamos ante una función convexa, cuya derivada (la tasa de fallos) será creciente. Por lo tanto diremos que la tasa de fallos de V7 es IFR (Increasing Failure Rate) o creciente. Figura 4. Tasa de fallos acumulada de V7. La figura 5 muestra la tasa de fallos acumulada de la variable V8. Observamos que el crecimiento es más lento que lineal, es decir, estamos ante una función cóncava, cuya derivada (tasa de fallos) será decreciente. Por lo tanto diremos que la tasa de fallos de V8 es DFR (Decreasing Failure Rate) o decreciente. Figura 5. Tasa de fallos acumulada de V8. La figura 6 muestra la tasa de fallos acumulada de la variable V16. Al principio el crecimiento es más lento que lineal, es decir, estamos ante una función cóncava, cuya derivada (tasa de fallos) será decreciente (DFR). Después de ese periodo se tiene un crecimiento lineal, por tanto su derivada será constante (CFR). Y finalmente se tiene un crecimiento más rápido que lineal, es decir, tiene derivada creciente (IFR). Así pues diremos que la tasa de fallos de V16 es una curva de bañera. Figura 6. Tasa de fallos acumulada de V16. Análisis de la fiabilidad de sistemas: En la segunda parte de la práctica se van a realizar estimaciones de la fiabilidad de sistemas compuestos por varios componentes. Es decir, se va a aprender a realizar estimaciones de la probabilidad de que un sistema compuesto por varios componentes funcione correctamente más de un tiempo determinado. Los datos de que se va a disponer son datos de tiempos de vida de componentes. Así podemos planificar cómo es mejor montar un sistema sin necesidad de montarlo realmente. La distribución de componentes en un sistema la podemos realizar de dos formas: • Poniendo los componentes en serie: Ambos tienen que funcionar para que el sistema funcione • Poniendo los componentes en paralelo: Con que funcione uno es suficiente para que el sistema también lo haga Los sistemas pueden estar formados por cualquier combinación de estas dos configuraciones. Pero, ¿cómo puedo calcular la fiabilidad de un sistema? ¿cómo puedo elegir la mejor configuración de los componente con el objetivo de obtener la más fiable? En esta práctica se aborda este problema desde dos puntos de vista y se aplican ambos métodos para calcular la fiabilidad del siguiente sistema Los tiempos de vida de los distintos componentes C1 a C4 están recogidos en las variables V1 a V4. En total tenemos 100 tiempos para cada componente y supondremos independencia entre componentes (es decir, que el tiempo de fallo de un componente no afecta al tiempo de fallo de los demás). Opción 1: Se irá descomponiendo el sistema en procesos en serie y en paralelo más pequeños y manejables. Como hemos supuesto independencia y tenemos cien tiempos de cada componente vamos a suponer que cada fila de nuestra tabla de datos son los tiempos de fallo de los cuatro componentes de un sistema con la configuración anterior. Es decir, tenemos una muestra de 100 sistemas (ver figura 7). Figura 7. Visión de simulación del sistema completo. La figura 8 muestra la descomposición en subsistemas del sistema que se va a analizar y los nombres de éstos. Figura 8. Descomposición en subsistemas. Empezamos viendo el tiempo de fallo del subsistema en serie de los componentes C1 y C2, al que llamaremos S12. Al ser una configuración en serie, el subsistema S12 fallará cuando falle uno de los dos, es decir, fallará cuando falle el primero. Por lo tanto el tiempo de fallo de S12 es igual al mín(V1,V2). El siguiente paso es analizar el comportamiento del sistema S12 con el componente C3. Como esta configuración es en paralelo, se tiene que el sistema falla cuando fallen los dos, es decir, cuando falle el último. Por lo tanto, llamando a este nuevo sistema S123 tenemos que el tiempo de fallo será el máx(V3,S12) que es igual al máx(V3,min(V1,V2)). Y finalmente tenemos que el fallo del sistema entero, llamémoslo S1234, será lo que ocurra primero, bien el fallo de C4 o bien el de S123. Es decir, tendremos que el tiempo de fallo del sistema entero será: S1234=mín(S123,V4)=min(máx(V3,min(V1,V2)),V4). Para poder estimar la fiabilidad del sistema para distintos tiempos vamos a generar nuevas columnas que contengan el tiempo de fallo de cada subsistema en cada una de las 100 réplicas. El Statgraphics no permite trabajar con columnas para calcular máximos y mínimos entre ellas. Así que se va a proceder de la siguiente forma para poder obtenerlas. Se van a ir obteniendo las variables S12, S123 y S1234 en distintas columnas. Para resolver el problema del máximo y del mínimo entre variables vamos a usar expresiones lógicas. Así podemos usar: min(a, b) = a ⋅ I (a < b ) + b ⋅ I (b ≤ a ) y max(a, b) = b ⋅ I (a < b ) + a ⋅ I (b ≤ a ) donde I (a < b ) vale 1 si a es menor que b y 0 en caso contrario (booleano). Comenzamos calculando S12, que es el mínimo entre V1 y V2: situar el cursor sobre el nombre de la variable Col_19, se presiona el botón derecho y se elige la opción “Generate data”. Figura 7. Generación de datos. A continuación se escribe: V1*(V1<V2)+V2*(V2<=V1) y se presiona “Ok”. Figura 8. Ecuación de generación de S12. Le cambiamos el nombre (sobre Col_19, botón derecho, “Modify column”) y ponemos S12. El siguiente tiempo a calcular es S123=máx(V3,S12). En Col_20 vamos a generar de nuevo una columna de datos. En esta ocasión es un máximo, por lo tanto debemos escribir: S12*(V3<S12)+V3*(S12<=V3). Renombramos la columna como S123. Figura 9. Ecuación de generación de S123. Y para finalizar tenemos que calcular S1234=mín(S123,V4). Generamos sobre Col_21 la nueva variable con el siguiente texto: V4*(V4<S123)+S123*(S123<=V4). Renombramos la columna como S1234. Esta columna contiene los tiempos de fallo de nuestro sistema, así que si queremos por ejemplo saber cual es la probabilidad de que dure más de 100 instantes basta con hacer: DESCRIBE LIFE DATA LIFE TABLES (times) EN DATA PONER S1234 Y en la tabla se busca el fallo inmediatamente anterior al instante 100, que es en el instante 77.1862 y se ve cual es la supervivencia de ese instante: 0.92. ¿Y en el instante 105? También 0.92. Recordemos que las funciones de supervivencia empíricas son escalonadas. Opcion 2: Como en el caso anterior descomponemos el sistema en los mismos subsistemas. La diferencia reside en que ahora vamos a trabajar con supervivencias estimadas de los componentes pero de forma individual. Antes se trabajó de forma conjunta. Una hipótesis fundamental es de nuevo la independencia entre componentes. Esta independencia nos dice que dados dos valores a y b cualesquiera, la probabilidad de que el componente i supere el instante a no depende de si el componente j (j distinto de i) ha superado o no el instante b. Matemáticamente nos indica que: P(Vi > a y Vj > b) = P(Vi > a) ⋅ P(Vj > b) . Con esta hipótesis de partida vamos a ir construyendo las probabilidades de cada subsistema, pero antes de nada hay que obtener la supervivencia de los cuatro componentes al instante 100. DESCRIBE LIFE DATA LIFE TABLES (times)... Hacemos el análisis para cada componente (de V1 a V4) y buscamos el valor en la tabla del resumen del análisis. En este caso tenemos los siguientes valores: P(V 1 > 100) = 0.9, P(V 2 > 100) = 0.84, P(V 3 > 100) = 0.85 y P(V 4 > 100) = 0.94 . Fiabilidad del subsistema S12. Este sistema falla cuando falle uno de los dos, así que sigue funcionando cuando ambos lo hagan: P(V 1 > 100 y V 2 > 100) = P(V 1 > 100) ⋅ P(V 2 > 100) = 0.9 ⋅ 0.84 = 0.756 . Fiabilidad del subsistem a S123. Este sistema funciona cuando funcione bien C3, bien C1 y C2, o bien todos a la vez. Es decir, cuando funcione bien el sistema S12, bien el C3 o bien ambos (unión de sucesos): P( S123 > 100) = P( S12 > 100 ó V 3 > 100) P( S12 > 100 ó V 3 > 100) = P( S12 > 100) + P(V 3 > 100) − P( S12 > 100) ⋅ P(V 3 > 100) = 0.756 + 0.85 − 0.756 ⋅ 0.85 = 0.9634 Fiabilidad del Sistema entero. Funcionará cuando lo hagan el sistema S123 y también C4. Por lo tanto: P ( S1234 > 100 ) = P ( S123 > 100 y V 4 > 100 ) = P ( S123 > 100 ) ⋅ P (V 4 > 100) = 0.9634 ⋅ 0.94 = 0.905596 Se observa que las probabilidades obtenidas por ambos métodos son distintas pero sí son bastante próximas. Estas probabilidades son aproximaciones no paramétricas (no suponemos que los datos siguen un modelo probabilístico determinado, por ejemplo exponencial, Weibull, etc.). En la siguiente práctica se aprenderá a encontrar modelos adecuados a los datos, lo que nos permitirá que podamos estimar mediante funciones no escalonadas la fiabilidad de los componentes. Evitando de ese modo que la fiabilidad en dos instantes de tiempo distintos sea la misma. Ejemplo de otro sistema Supongamos ahora que tenemos un sistema con todos los componentes en serie (ver figura 10). Figura 10. Sistema de cuatro componentes en serie. ¿Cual es más fiable de los dos en el instante 100? Habría que calcular la probabilidad de que el nuevo sistema funcione más allá del instante 100. De nuevo se puede hacer de las dos formas. De forma rápida se realiza el cálculo del segundo método (se deja para el alumno el conseguir los tiempos de fallo suponiendo que tenemos una muestra de 100 sistemas, ya que nos aporta más información: función de supervivencia, tasa de fallos, ...). Al ser un sistema en serie tienen que funcionar todos los componentes para que el sistema funcione: 4 P(V 1 > 100 y V 2 > 100 y V 3 > 100 y V 4 > 100) = ∏ P (Vi > 100) = 0.9 ⋅ 0.84 ⋅ 0.85 ⋅ 0.94 = 0.604044 i =1 Se tiene que para el instante 100 es más fiable el primer sistema, ya que sigue funcionando después de ese instante con una mayor probabilidad. Autoevaluación de la práctica: Se puede dar por superada esta práctica cuando tras su realización el alumno sea capaz de: • • • • • • Calcular la supervivencia para cualquier instante de tiempo Clasificar una variable en función de su tasa de fallos Calcular, para la función de densidad exponencial ( f ( x ) = λe − λx , x ≥ 0, λ > 0 ), la función de supervivencia, la tasa de fallos y la tasa de fallos acumulada Calcular la fiabilidad de sistemas complejos Obtener los tiempos de fallo de sistemas complejos a partir de muestras de los componentes independientes y analizar su tasa de fallos y su función de supervivencia Seleccionar de entre dos sistemas el más fiable para un instante determinado.