Introducción (planteamiento)
Dado el siguiente modelo, generar "datos experimentales" con la adición de un ruido blanco (estructura OE) e identificar el modelo y calcular los intervalos de confianza aplicando el método de bootstrapping residual (ver la explicación del método en el libro):
G(s)=10.23e−0.12ss2+2.45s+9.65
Método (plan de solución)
Pasos: (i) obtener el período de muestreo; (ii) simular el modelo en MATLAB con una entrada PRBS y adicionar un ruido blanco, con lo cual se obtienen lo equivalente a "datos experimentales"; (iii) identificar el modelo con las funciones iv4 y pem de MATLAB; (iv) calcular los intervalos de confianza en cada caso con MATLAB utilizando el método de bootstrapping residual; (v) analizar los resultados.
Resultados (solución)
A partir de la respuesta temporal con una entrada escalón se obtiene un tiempo de crecimiento de 0.469 segundos (un sistema rápido), por lo que un período de muestreo de 0.05 segundos es adecuado.
Se puede descargar en este enlace una función de MATLAB para el cálculo de los intervalos de confianza utilizando el método de bootstrapping residual y aplicando la distribución t de Student para el cálculo de los intervalos de confianza. El código de MATLAB de este enlace utiliza dicha función para implementar las tareas de este ejemplo.
Figura 1 con los resultados de la estimación con el método del error de predicción y 100 remuestreos con reemplazo:
Figura 2 con los resultados de la estimación con el método de la variable instrumental y 100 remuestreos con reemplazo:
Figura 3 con los resultados de la estimación con el método de mínimos cuadrados y 100 remuestreos con reemplazo (para comparar con una estructura incorrecta):
Figura 4 con los resultados de la estimación con el método de la variable instrumental y 1000 remuestreos con reemplazo:
Figura 5 con los resultados de la estimación con el método de la variable instrumental y 600 remuestreos con reemplazo:
Figura 6 con los intervalos de confianza con el método PEM y bootstrapping con 2000 datos:
Figura 7 con los errores con la función getcov a partir del modelo obtenido con el System Identification Toolbox de MATLAB:
Análisis y verificación
El ejemplo ilustra una forma simple de obtener los intervalos de confianza por un método de remuestreo con reemplazo llamado bootstrapping residual. A partir de un modelo obtenido con el System Identification Toolbox de MATLAB se pueden calcular los residuos, remuestrear y calcular de nuevo el modelo, con un mismo conjunto de datos y sin necesidad de realizar múltiples experimentos de identificación. Aunque se deben tomar siempre con precaución los resultados obtenidos, el método entrega resultados bastantes buenos si se comparan con los parámetros conocidos (en este experimento de simulación se conoce el modelo exacto). En los resultados obtenidos, dado que el intervalo de confianza es simétrico, solo se da el error absoluto (diferencia entre la cota superior del intervalo y el parámetro nominal) y el error relativo (error absoluto sobre el valor nominal por el 100%).
En todos los casos donde se obtiene una estructura a partir de una hipótesis correcta del modelo de perturbación OE, los intervalos de confianza son aceptables (figuras 1, 2, 4 y 5), aunque según la definición de intervalo de confianza solo el 95 % de los intervalos obtenidos contendrían el valor exacto.
El método de la variable instrumental (figuras 2 y 4) da mejores resultados en este ejemplo que el método del error de predicción (figura 1) y los intervalos de confianza son también más acertados. Al aumentar el número de remuestreos no se obtiene una mejora evidente, tal y como se menciona en algunos estudios. Según los resultados anteriores, un remuestreo alrededor de 600 es un número adecuado (figura 5), dado que con un mayor número no se mejora la probabilidad de obtener un intervalo que incluya el valor exacto. De otro lado, si el modelo no es correcto (figura 3) el método de bootstrapping no da resultados adecuados, lo cual se observa al obtener errores relativos grandes.
En la figura 7 se observan los intervalos de confianza obtenidos a partir de la función getcov del System Identification Toolbox con el modelo obtenido con esa herramienta, la cual da errores pequeños similares a los que se obtienen con el método de bootstrapping con un número de remuestreos igual a 2000.
Comentarios