Vous êtes sur la page 1sur 187

UNIVERSIDAD CARLOS III DE MADRID Departamento de Ingeniera de Sistemas y Automtica

Identicacin, Estimacin y Control de Sistemas No-lineales mediante RGO

Autor: Santiago Garrido

Directores: Dr. Luis Moreno Dr. Carlos Balaguer

Legans, 1999

Universidad Carlos III

Publication Data: Santiago Garrido Identificacin, Estimacin y Control de Sistemas No-lineales mediante RGO Universidad Carlos III ISBN 0-4850

Copyright c 1999 Santiago Garrido

A mi familia

AGRADECIMIENTOS
Quiero dar las gracias en primer lugar a mis directores de tesis, D. Luis Moreno y D. Carlos Balaguer, por su inapreciable ayuda y buenos consejos, no slo con el tema de la tesis, y que ahora culminan con la presentacin de este trabajo. A todos mis compaeros en el Departamento, por su desinteresada ayuda en todos los problemas que han ido surgiendo a lo largo de estos aos, y por los buenos ratos que hemos pasado entre tanto. En un aspecto ms personal, debo dar las gracias a mi familia por aguantar y animar durante tanto tiempo a alguien que hace cosas tan raras como sta.

VI

RESUMEN
La identicacin de sistemas trata de la estimacin de modelos de sistemas dinmicos a partir de los datos observados. La estimacin trata de evaluar y disear los estimadores de estado. Ambos se suponen que operan en un entorno estocstico. Esta tesis dirige su esfuerzo investigador principalmente hacia la mejora de la resolucin de los problemas de identicacin y estimacin de estados de sistemas dinmicos no-lineales y el control adaptativo de los mismos. Se presenta un nuevo mtodo hbrido para la optimizacin de funciones no lineales y no diferenciables que varan con el tiempo sin la utilizacin de derivadas numricas. Esto es especialmente importante por la presencia de ruido. Este mtodo est basado en los algoritmos genticos con una nueva tcnica de bsqueda que hemos denominado Optimizacin Gentica Restringida (RGO). Este mtodo est especialmente indicado para su uso en la identicacin para el control de sistemas dinmicos. Este mtodo de optimizacin es el marco unicador de la tesis y al ser un mtodo bsico permite su aplicacin a multitud de problemas relacionados con la Teora de Sistemas, que precisan de una optimizacin en lnea, puesto que las funciones varan con el tiempo y sin el uso de derivadas numricas ya que estos sistemas estn expuestos a ruidos. A partir de ste algoritmo, se presenta un mtodo de altas prestaciones para la identicacin de sistemas no lineales variables con el tiempo con modelos lineales y no lineales. Este mtodo puede ser usado en lnea y en bucle cerrado, por lo que se puede utilizar en control. Este mtodo utiliza un algoritmo de identicacin en lnea que empieza calculando qu ARX se adapta mejor al sistema, lo que nos da los rdenes y el retardo del modelo. A continuacin calcula un modelo ARMAX que sirve como semilla para inicializar el RGO y crear un modelo NARMAX. El algoritmo RGO permite describir un nuevo estimador no lineal para el ltrado de sistemas con procesos y modelos de observacin no lineales, basados en la optimizacin con RGO. Los resultados de simulacin se usan para comparar el rendimiento de este mtodo con EKF (Extended Kalman Filter), IEKF (Iterated Extended Kalman Filter), SNF (Second-order Non-linear Filter), SIF (Single-

stage Iterated Filter) y MSF (Montecarlo Simulation Filter) en presencia de diferentes niveles de ruido. Asimismo se compara con las Redes Neuronales de tipo Backpropagation. Cuando se aplica a la identicacin en el espacio de estados se obtiene un nuevo mtodo de identicacin que comienza calculando un ARX y posteriormente utiliza RGO para mejorar la identicacin previa. Este mtodo est basado en el modelo de parametrizacin completa y las realizaciones equilibradas. De esta manera se consiguen realizaciones de baja sensibilidad y que evitan los problemas de estructura de las realizaciones cannicas. Se presentan dos aplicaciones de estos mtodos. La primera es el control predictivo con RGO del Sistema MIMO de Rotores Gemelos (Twin Rotor MIMO System - TRMS), que es un laboratorio diseado expresamente para realizar experimentos de control. En ciertos aspectos su comportamiento recuerda al de un helicptero. Desde el punto de vista de control ejemplica un sistema de orden alto con acoplamientos cruzados muy signicativos. La segunda aplicacin es la localizacin de robots mediante la informacin de los distintos sensores. Para fusionar toda esta informacin y as poder corregir la posicin y orientacin del vehculo es necesario un algoritmo que en este caso es una extension del ltro de Kalman usando RGO.

VIII

ABSTRACT
The system identication deals with the problem of estimating models of dynamical systems from observed data. The estimation tries to evaluate and to design state estimators. The two of them are supposed to operate in a stochastic environment. In this thesis, It has been tried to improve the methods of identication and state estimation of non-linear dynamical systems and their adaptive control. A new optimization hybrid method of non-linear and non-differentiable, timevarying functions without using numerical derivatives is presented. This is important because of noise. This method based on Genetic Algorithms introduces a new technique called Restricted Genetic Optimization (RGO). This optimization method unies the thesis and due to the fact that it is a basic method, it can be applied to a lot of problems related with non-differentiable and time-varying functions. Based on this algorithm, a high performance method for the identication of non-linear, time-varying systems with linear and non-linear models, is presented. This method can be used on-line and in a closed loop. For this reason, it is well adapted to control. This method uses an on line identication algorithm that begins by calculating what ARX is the best adapted to the system. This way the order and the delay of the system are known. Then, an ARMAX that is used as a seed to start the RGO and to create a NARMAX model, is calculated. The RGO algorithm can describe a new non-linear estimator for ltering of systems with non-linear processes and observation models based on the RGO optimization. The simulation results are used to compare the performance of this method with EKF (Extended Kalman Filter), IEKF (Iterated Extended Kalman Filter), SNF (Second-order Non-linear Filter), SIF (Single-stage Iterated Filter) y MSF (Montecarlo Simulation Filter) with different levels of noise. When this method is applied to the state space identication a new method is obtained. This method begins by calculating an ARX and then uses RGO in order to improve the previous identication. This method is based on the full parametrization and balanced realizations. This way low sensitivity realizations are obtained and the structural issues of multivariable canonical parametrizations are

circumvented. Two applications of this method are considered. The rst application is the predictive control with RGO of the Twin Rotor MIMO System (TRMS), that is a laboratory set-up designed for control experiments. In certain aspects, its behaviour resembles that of a helicopter. From the control point of view, it exemplies a high order non-linear system with signicant cross-couplings. The second one is the robot localization based on different kind of sensor information. To fuse all the different information, an algorithm is necessary. In this case, it has been used an extension of the Kalman algorithm with RGO.

NDICE GENERAL
Agradecimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.. Fundamentos y Estado del Arte. . . . . . . . . . . . . . . . . . 1.1. Identicacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.1. Modelos de Sistemas Dinmicos . . . . . . . . . . . . . . 1.1.2. Modelos de Entrada-Salida . . . . . . . . . . . . . . . . . 1.1.3. Modelos Paramtricos Lineales . . . . . . . . . . . . . . 1.1.4. Modelos Paramtricos No-lineales . . . . . . . . . . . . . 1.1.5. Modelos No-Paramtricos, Redes Neuronales . . . . . . . 1.1.6. Identicacin con Algoritmos Genticos . . . . . . . . . . 1.1.7. Identicacin en Bucle Cerrado . . . . . . . . . . . . . . 1.2. Estimacin de Estados . . . . . . . . . . . . . . . . . . . . . . . 1.2.1. Modelos en el Espacio de Estados . . . . . . . . . . . . . 1.2.2. La estimacin lineal en sistemas dinmicos - El Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.3. El caso no lineal: Filtros No-lineales . . . . . . . . . . . . 1.2.4. Filtro Extendido de Kalman (EKF) y Filtro No-lineal de Segundo Orden (SNF) . . . . . . . . . . . . . . . . . . . 1.2.5. Filtro extendido Iterado de Kalman (IEKF) . . . . . . . . 1.3. Validacin de Modelos . . . . . . . . . . . . . . . . . . . . . . . 1.4. Control Adaptativo . . . . . . . . . . . . . . . . . . . . . . . . .
V VII IX XXI

1 1 2 3 4 4 8 15 16 18 18 19 20 21 22 23 24

2.. Conceptos Bsicos de los A.G. . . . . . . . . . . . . . . . . . 27 2.1. Algoritmos Genticos . . . . . . . . . . . . . . . . . . . . . . . 27 2.1.1. Algoritmo Gentico Simple . . . . . . . . . . . . . . . . 30

2.1.2. Mecanismos Avanzados . . . . . . . . . . . . . . . . . . 35 2.2. Algoritmos Genticos con parmetros continuos . . . . . . . . . . 40 3.. Estudio matemtico de los A.G. . . . . . . 3.1. Introduccin a los procesos de Markov . . . 3.2. Clasicacin de estados . . . . . . . . . . . 3.3. Algoritmos Genticos y Cadenas de Markov 3.4. Convergencia y Comportamiento Asinttico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 . . . 43 . . . 45 . . . 46 . . . 49 . . 53 . . . 53 . . . 54 . . . 54 . . . 55 . . . 57 . . . 59 61 61 62 63 63 64 67 67 68 69 70 75 79

4.. Mtodo de Optimizacin Gentica Restringida (RGO) 4.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . 4.2. Caractersticas de los Algoritmos Genticos . . . . . . . 4.3. Optimizacin Gentica Restringida (RGO) . . . . . . . . 4.3.1. RGO . . . . . . . . . . . . . . . . . . . . . . . 4.4. Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . 4.5. Caractersticas de la RGO . . . . . . . . . . . . . . . . .

5.. Identicacin de sistemas no lineales . . . . . . . . . . . . . 5.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2. Implementacin del Algoritmo . . . . . . . . . . . . . . . . . . . 5.3. Identicacin multimodelo y multiparmetro de sistemas no lineales mediante modelos paramtricos lineales. . . . . . . . . . . 5.3.1. Identicacin con modelos lineales . . . . . . . . . . . . 5.3.2. Identicacin RGO para modelos lineales . . . . . . . . . 5.4. Identicacin multimodelo y multiparmetro . . . . . . . . . . . 5.4.1. Modelos NARMAX . . . . . . . . . . . . . . . . . . . . 5.4.2. Identicacin RGO con modelos no lineales . . . . . . . . 5.5. Restricciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.7. Comparacin con las Redes Neuronales . . . . . . . . . . . . . . 5.8. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.. Estimacin de Estados . . . . . . . . . . . . . . . . . . . . . . 81 6.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 6.2. El Problema de Filtrado. . . . . . . . . . . . . . . . . . . . . . . 82 6.2.1. La estimacin lineal en sistemas dinmicos - El Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 6.3. Filtros No-lineales Tradicionales . . . . . . . . . . . . . . . . . . 86 6.3.1. Filtro Extendido de Kalman (EKF) y Filtro No-lineal de Segundo Orden (SNF) . . . . . . . . . . . . . . . . . . . 86
XII

6.3.2. Filtro extendido Iterado de Kalman (IEKF) . . . . . . . 6.3.3. Filtro Iterado de una Etapa (Single-stage Iterated Filter (SIF)) . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.4. Filtro con Simulacin Montecarlo (MSF) . . . . . . . . 6.4. El nuevo Filtro, RGO . . . . . . . . . . . . . . . . . . . . . . . 6.5. Comparacin de Filtros No-lineales. . . . . . . . . . . . . . . . 6.6. Discusin . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

87

. 88 . 89 . 90 . 92 . 94 97 97 98 99 100 101 103 104 105 107 107 108 109 110 110 111 112 114 116 116 117 119 120 121 123 123 125 127 128

7.. Identicacin en el Espacio de Estados . . . . . . . . . . . . 7.1. Modelos de Sistemas Lineales en el Espacio de Estados . . . . . . 7.2. Parametrizacin e Identicabilidad . . . . . . . . . . . . . . . . . 7.3. Modelos en el Espacio de Estados Totalmente Parametrizados . . 7.4. Realizaciones Equilibradas (Balanced Realizations) . . . . . . . . 7.5. Identicacin RGO en el Espacio de Estados . . . . . . . . . . . 7.5.1. El Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . 7.6. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.7. Discusin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.. Aplicaciones al Control Predictivo . . . . . . . . . . . . . . . . 8.1. Introduccin al Control Predictivo Basado en Modelo . . . . . . . 8.1.1. Estrategias de Control Predictivo Basado en Modelo . . . 8.1.2. La funcin objetivo . . . . . . . . . . . . . . . . . . . . . 8.1.3. Trayectoria de referencia . . . . . . . . . . . . . . . . . . 8.2. Control Predictivo GPC. . . . . . . . . . . . . . . . . . . . . . . 8.3. Ejemplo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.4. Control Predictivo RGO. . . . . . . . . . . . . . . . . . . . . . . 8.4.1. Ventajas de utilizar RGO en un GPC. . . . . . . . . . . . 8.5. Control Predictivo PID-RGO . . . . . . . . . . . . . . . . . . . . 8.5.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . 8.5.2. Identicacin mediante Modelos Paramtricos Lineales . 8.5.3. Control Predictivo PID-RGO . . . . . . . . . . . . . . . 8.5.4. Simulacin del control adaptativo PID-RGO. . . . . . . . 8.6. Anlisis de resultados . . . . . . . . . . . . . . . . . . . . . . . . 9.. Aplicaciones I: TRMS . . . . . . 9.1. Introduccin . . . . . . . . . . . 9.2. Modelado y parmetros . . . . . 9.3. Identicacin del TRMS . . . . 9.4. Control PID del TRMS . . . . .
XIII

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . . . . . . . . . . .

9.5. 9.6. 9.7. 9.8.

9.4.1. Estabilizacin y seguimiento 1-DOF vertical . 9.4.2. Estabilizacin y seguimiento 1-DOF horizontal 9.4.3. Estabilizacin y seguimiento 2-DOF. . . . . . 9.4.4. Controlador PID con acoplamiento cruzado . . Control Predictivo mediante PID y RGO . . . . . . . Control predictivo del TRMS . . . . . . . . . . . . . . Control en el Espacio de Estados del TRMS . . . . . . Comparacin de los distintos mtodos . . . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

128 129 130 131 132 135 139 140 143 143 143 145 146 146 148 151 151 151 151 152

10..Aplicaciones II: Robot Mvil . . . . . . . . . . . . . . . . . . . 10.1. El Filtro de Kalman Extendido Iterado . . . . . . . . . . . . . . . 10.2. Localizacin del Robot Mvil utilizando un Filtro RGO No-lineal 10.2.1. Consideraciones de diseo . . . . . . . . . . . . . . . . . 10.2.2. La estructura gentica . . . . . . . . . . . . . . . . . . . 10.2.3. La funcin de salud . . . . . . . . . . . . . . . . . . . . . 10.3. Resultados experimentales . . . . . . . . . . . . . . . . . . . . . 11..Conclusiones y Trabajo Futuro. . 11.1. Conclusiones . . . . . . . . . . . 11.1.1. Resumen y conclusiones . 11.2. Aportaciones principales . . . . . 11.3. Trabajo Futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

XIV

NDICE DE CUADROS
2.1. 2.2. 2.3. 2.4. 2.5. Fenotipos y salud asociada. . Nmero de copias esperado. Cruce . . . . . . . . . . . . Cruce . . . . . . . . . . . . Mapa de dominacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 32 33 34 38

3.1. El nmero de estados N como funcin de l y P. . . . . . . . . . . 47 3.2. La matriz Z para l = 2 y P = 2. . . . . . . . . . . . . . . . . . . 48 5.1. Comparacin de los mtodos de identicacin de sistemas. . . . . 74 5.2. Comparacin de los mtodos de identicacin: RGO y Redes Neuronales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 6.1. 6.2. 6.3. 6.4. 6.5. 6.6. Comparacin de BIAS para el nivel de ruido 0.1. Comparacin de RMSE para el nivel de ruido 0.1. Comparacin de BIAS para el nivel de ruido 0.5. Comparacin de RMSE para el nivel de ruido 0.5. Comparacin de BIAS para el nivel de ruido 1.0. Comparacin de RMSE para el nivel de ruido 1.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 94 94 95 95 95

7.1. Errores Cuadrticos Relativos . . . . . . . . . . . . . . . . . . . 105 9.1. Notacin usada en la gura 9.2 . . . . . . . . . . . . . . . . . . . 126 9.2. Resultados de la comparacin entre los distintos mtodos de control del TRMS. . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 10.1. Localizacin en posicin con y sin RGO (1). Error en mm. 10.2. Localizacin angular con y sin RGO (1). Error en grados. . 10.3. Localizacin en posicin con y sin RGO (2). Error en mm. 10.4. Localizacin angular con y sin RGO (2). Error en grados. . . . . . . . . . . . . . . . . . 148 149 149 149

XVI

NDICE DE FIGURAS
1.1. Red Feedforward con una capa oculta y una salida. . . . . . 1.2. Red Feedforward con dos capas ocultas. . . . . . . . . . . . 1.3. Red Recurrente. q 1 retarda la seal un tiempo de muestreo. 1.4. Identicacin Serie-Paralelo . . . . . . . . . . . . . . . . . 1.5. Identicacin Paralela . . . . . . . . . . . . . . . . . . . . 1.6. Red con realimentacin de la Capa Oculta. . . . . . . . . . . 1.7. Red con realimentacin de la Capa de Salida. . . . . . . . . 1.8. Sistema en bucle cerrado. . . . . . . . . . . . . . . . . . . . 1.9. Diagrama de ujo del ltro de Kalman. . . . . . . . . . . . 1.10. Sistema adaptativo con identicacin de modelo (MIAS) . . 1.11. Sistema adaptativo con modelo de referencia (MRAS) . . . . 2.1. 2.2. 2.3. 2.4. 2.5. 2.6. 2.7. 2.8. 2.9. Algoritmos Genticos. . . . . . . . . . . . . Bsqueda Gentica. . . . . . . . . . . . . . . Terminologa de los Algoritmos Genticos. . Ciclo de los Algoritmos Genticos. . . . . . . Cmo funcionan los Algoritmos Genticos? Mtodos de seleccin. . . . . . . . . . . . . . Funcin de salud. . . . . . . . . . . . . . . . Cruce. . . . . . . . . . . . . . . . . . . . . . Mutacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 10 10 11 12 13 14 17 21 25 25

. 27 . 28 . 29 . 30 . 30 . 31 . 32 . 33 . 34

4.1. Mecanismo de bsqueda de la Optimizacin Gentica Restringida. 56 4.2. Mecanismo de seguimiento de la Optimizacin Gentica Restringida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 4.3. Diagrama de ujo de la Optimizacin Gentica Restringida RGO . 60 5.1. 5.2. 5.3. 5.4. Diagrama de ujo de la RGO. Mecanismo de cruce . . . . . Mecanismo de mutacin . . . Montaje de la Planta 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 68 68 71

5.5. Fenmeno de blow-up al intentar identicar la planta 1 con el bloque ARMAX de Simulink. Este efecto se debe a que se correlan los errores (t) y (t) con la entrada y hace imposible la identicacin de este sistema mediante este mtodo. . . . . . . . . . . . 5.6. Resultados de la identicacin de la planta 1 con el mtodo RGO. Arriba: salida del modelo vs. salida real. Abajo: error cometido. . 5.7. Resultados de la identicacin de la planta 2 con el mtodo RGO. Arriba: salida del modelo vs. salida real. Abajo: error cometido. . 5.8. Resultados de la identicacin de la planta 3 con el mtodo RGO. Arriba: salida del modelo vs. salida real. Abajo: error cometido. . 5.9. Resultados de la identicacin de la planta 4 con el mtodo RGO. Arriba: salida del modelo vs. salida real. Abajo: error cometido. . 5.10. Estructura de la Red Multicapa utilizada en la comparacin. . . . 5.11. Resultados de la identicacin de la planta 1. Subgura 1: salida del modelo vs. salida real para RGO. Subgura 2: error cometido. Subgura 3: salida del modelo vs. salida real para la Red Neuronal. Subgura 4: error cometido. . . . . . . . . . . . . . . . . . . 5.12. Resultados de la identicacin de la planta 2. Subgura 1: salida del modelo vs. salida real para RGO. Subgura 2: error cometido. Subgura 3: salida del modelo vs. salida real para la Red Neuronal. Subgura 4: error cometido. . . . . . . . . . . . . . . . . . . 5.13. Resultados de la identicacin de la planta 3. Subgura 1: salida del modelo vs. salida real para RGO. Subgura 2: error cometido. Subgura 3: salida del modelo vs. salida real para la Red Neuronal. Subgura 4: error cometido. . . . . . . . . . . . . . . . . . . 5.14. Resultados de la identicacin de la planta 4. Subgura 1: salida del modelo vs. salida real para RGO. Subgura 2: error cometido. Subgura 3: salida del modelo vs. salida real para la Red Neuronal. Subgura 4: error cometido. . . . . . . . . . . . . . . . . . .

72 72 73 73 74 75

77

78

78

79

6.1. Diagrama de ujo del ltro de Kalman. . . . . . . . . . . . . . . 85 6.2. Diagrama de ujo de la Optimizacin Gentica Restringida aplicada a la estimacin de estados. . . . . . . . . . . . . . . . . . . 91 6.3. Ejecuciones tpicas para el modelo 5 con EKF y SRGOF para nivel de ruido 1.0. . . . . . . . . . . . . . . . . . . . . . . . . . . 93 7.1. Twin Rotor MIMO System (TRMS). . . . . . . . . . . . . . . . . 102 7.2. Resultados de identicacin de la Planta con el mtodo ARX. Arriba: Salida del Modelo vs. Salida del Sistema. Abajo: Error . . 103
XVIII

7.3. Resultados de identicacin de la Planta con el mtodo GaussNewton.Arriba: Salida del Modelo vs. Salida del Sistema. Abajo: Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 7.4. Resultados de identicacin de la Planta con el mtodo RGO. Arriba: Salida del Modelo vs. Salida del Sistema. Abajo: Error . . 104 8.1. 8.2. 8.3. 8.4. La metodologa del control predictivo basado en modelos. . . . . Estructura bsica del control predictivo. . . . . . . . . . . . . . . Distintas trayectorias de referencia. . . . . . . . . . . . . . . . . . Resultados de la identicacin de los parmetros l y1 , l y2 y lr1 del control predictivo RGO. . . . . . . . . . . . . . . . . . . . . . . 8.5. Esquema para la identicacin de los parmetros de la ley de control predictivo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.6. Resultados de la identicacin de los parmetros del sistema. . . . 8.7. Resultados de la identicacin de los parmetros del sistema y el retardo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.8. Esquema general del control adaptativo. . . . . . . . . . . . . . . 8.9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.10. Diagrama Simulink para Control 1 . . . . . . . . . . . . . . . . . 8.11. Resultados del Control Predictivo con RGO para = 0,12 . . . . 8.12. Resultados del Control Predictivo con RGO para = 0,16 . . . . 8.13. Resultados del Control Predictivo con RGO para = 0,20 . . . . 9.1. 9.2. 9.3. 9.4. 9.5. 9.6. 9.7. Twin Rotor MIMO System (TRMS). . . . . . . . . . . . . . . . . Twin Rotor MIMO System (TRMS). . . . . . . . . . . . . . . . . Diagrama de bloques del modelo TRMS. . . . . . . . . . . . . . . Respuesta del rotor principal del TRMS a una onda cuadrada. . . . Control del sistema 1-DOF (estabilizacin y seguimiento en vertical). Arriba: salida vs. seal de referencia. Abajo: error cometido. Diagrama de bloques del sistema 1-DOF (plano vertical). . . . . . Control del sistema 1-DOF (estabilizacin y seguimiento en vertical). Arriba: salida del sistema vs. seal de referencia. Abajo: error cometido. . . . . . . . . . . . . . . . . . . . . . . . . . . . Control del sistema 1-DOF (estabilizacin y seguimiento horizontal). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diagrama de bloques del sistema 1-DOF (plano horizontal). . . . Control del sistema 1-DOF (estabilizacin y seguimiento en horizontal). Arriba: salida del sistema vs. seal de referencia. Abajo: error cometido. . . . . . . . . . . . . . . . . . . . . . . . . . . . Control del sistema 2-DOF. . . . . . . . . . . . . . . . . . . . .
XIX

108 109 110 115 115 116 116 117 117 120 121 121 122 123 124 125 128 128 129

129 130 130

9.8. 9.9. 9.10.

9.11.

131 131

9.12. Experimento con el controlador de estabilizacin y seguimiento 2-DOF PID. Arriba: salida del sistema vs. seal de referencia en eje vertical. Abajo : error cometido . . . . . . . . . . . . . . . . 9.13. Experimento con el controlador de estabilizacin y seguimiento 2-DOF PID. Arriba: salida del sistema vs. seal de referencia en eje horizontal. Abajo : error cometido . . . . . . . . . . . . . . . 9.14. Diagrama de bloques del sistema de control 2-DOF PID de acoplamiento cruzado. . . . . . . . . . . . . . . . . . . . . . . . . . 9.15. Experimento con el controlador de estabilizacin y seguimiento 2-DOF PID con acoplamiento cruzado. Arriba: salida del sistema vs. seal de referencia en eje vertical. Abajo : error cometido . . . 9.16. Experimento con el controlador de estabilizacin y seguimiento 2-DOF PID con acoplamiento cruzado. Arriba: salida del sistema vs. seal de referencia en eje horizontal. Abajo : error cometido. . 9.17. Sistema adaptativo con identicacin de modelo (MIAS) . . . . . 9.18. Control del sistema con RGO-PID y RGO Predictivo. . . . . . . 9.19. Experimento con el controlador de estabilizacin y seguimiento: control predictivo-RGO en el plano vertical (con un grado de libertad). Arriba: salida del sistema vs. seal de referencia en eje vertical. Abajo: error cometido. . . . . . . . . . . . . . . . . . . 9.20. Experimento con el controlador de estabilizacin y seguimiento: PID-RGO (arriba) en el plano vertical (con un grado de libertad). Arriba: salida del sistema vs. seal de referencia en eje horizontal. Abajo : error cometido. . . . . . . . . . . . . . . . . . . . . . . . 9.21. Experimento con el controlador de estabilizacin: Predictivo-RGO con dos grados de libertad. Arriba: salida del sistema vs. seal de referencia en eje vertical. Abajo: error cometido. . . . . . . . . . 9.22. Experimento con el controlador de estabilizacin: PID-RGO con dos grados de libertad. Arriba: salida del sistema vs. seal de referencia en eje horizontal. Abajo: error cometido. . . . . . . . . . 9.23. Experimento con el controlador de estabilizacin (seales de control: control predictivo y PID). . . . . . . . . . . . . . . . . . . . 9.24. Control del sistema 2-DOF. . . . . . . . . . . . . . . . . . . . . 9.25. Experimento con el controlador de estabilizacin y seguimiento: PID-RGO en variables de estado. Arriba: salida del sistema vs. referencia en eje vertical. Abajo: salida del sistema vs. referencia en eje horizontal. . . . . . . . . . . . . . . . . . . . . . . . . . . 9.26. Experimento con el controlador de estabilizacin: diagrama de bloques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
XX

132

132 133

133

134 135 136

136

137

137

138 138 139

140 141

INTRODUCCIN
Ha habido un gran inters por parte de la comunidad de control en aplicar los algoritmos genticos a problemas de Ingeniera de Control de Sistemas. Basados en modelos computacionales de la evolucin biolgica natural, los Algoritmos Genticos pertenecen a la clase de los algoritmos evolutivos, que tambin incluyen la programacin evolutiva, la evolucin de estrategias y la programacin gentica. Comparado con los mtodos tradicionales de bsqueda y optimizacin, tales como los basados en el clculo o los basados en tcnicas enumerativas, los algoritmos genticos son una tcnica robusta, que puede ser utilizada de forma global o semi-local y que se puede aplicar generalmente de forma ms directa a situaciones que tienen poco o ningn conocimiento acerca del proceso a ser controlado. Para el ingeniero de control los algoritmos genticos y la programacin evolutiva, en general, presentan oportunidades de plantearse problemas que no permiten una solucin eciente a travs de la aplicacin de tcnicas convencionales. En los ltimos aos, los algoritmos genticos han sido aplicados a muchos temas relacionados con la Ingeniera de Control, incluyendo la optimizacin paramtrica y combinatoria y el control adaptativo. El diseo de controladores no-lineales es un problema muy importante en Ingeniera de Control, aunque difcil. Hoy en da, la mayora de los controladores industriales son lineales puros debido a las dicultades encontradas en el problema de diseo de controladores no lineales. Para construir un controlador no-lineal hemos de hacer suposiciones vlidas acerca de la estructura del controlador y del sistema a controlar. Estas suposiciones nos llevan frecuentemente al desarrollo de controladores no sucientemente robustos puesto que los efectos de la incertidumbre no han sido tenidos en cuenta a la hora de disear el controlador. La identicacin de sistemas de dinmica desconocida ha producido un campo de investigacin llamado identicacin de sistemas. En identicacin de sistemas denimos o describimos una estructura modelo que tiene un comportamiento similar al del sistema desconocido.

Objetivos de la tesis
El principal objetivo de la tesis es el desarrollo de nuevos mtodos hbridos

de identicacin y de estimacin de estados, on line de sistemas dinmicos nolineales, basados en algoritmos genticos. Asimismo, se han estudiado sus aplicaciones al control adaptativo de dichos sistemas. En la literatura, el uso de los algoritmos genticos como mtodo de optimizacin se hace off-line y el tiempo utilizado es bastante grande, ya que usualmente los algoritmos genticos se usan como un mtodo de bsqueda global y en paralelo. Hemos utilizado nuevos mecanismos para usarlos como lo hace la Naturaleza: On-line y de una manera local o semi-local. Hemos demostrado que los algoritmos genticos se pueden usar como un mtodo rpido de optimizacin de funciones que varen con el tiempo. A ste nuevo mtodo que hemos desarrollado lo hemos denominado Restricted Genetic Optimization (RGO) y simula el mtodo del gradiente sin utilizar derivadas y puede ser utilizado cuando las seales tienen mucho ruido. El mtodo de bsqueda restringida consiste en hacer la bsqueda en un entorno del punto correspondiente al ltimo modelo identicado y tomar el punto mejor adaptado como centro del entorno de bsqueda de la nueva generacin. Los individuos de cada generacin representan los vectores de diferencia respecto al mejor punto de la generacin anterior. El radio se toma proporcional a la incertidumbre.

Estructura de la Tesis
El contenido de la tesis se encuentra distribuido en diez captulos. Inicialmente se presenta un captulo dedicado a las distintas metodologas relacionadas con el contenido de la tesis. El desarrollo de un nuevo mtodo de optimizacin RGO (Restricted Genetic Optimization) para funciones que varen con el tiempo. Este mtodo ha probado ser muy til para minimizar o maximizar funciones posiblemente no-lineales y no-diferenciables. Este mtodo est especialmente indicado para su uso en la identicacin para el control de sistemas dinmicos. En el captulo 6 se presenta un mtodo de altas prestaciones para la identicacin de sistemas no lineales variables con el tiempo con modelos lineales y no lineales mediante RGO. El captulo 7 trata de nuevo estimador no lineal para la estimacin de los estados en sistemas con procesos y modelos de observacin no lineales, basados en la optimizacin con RGO (Restricted Genetic Optimization). Los resultados de simulacin se usan para comparar el rendimiento de este mtodo con EKF (Extended Kalman Filter), IEKF (Iterated Extended Kalman Filter), SNF (Second-order Nonlinear Filter), SIF (Single-stage Iterated Filter) y MSF (Montecarlo SimulaXXII

tion Filter) en presencia de diferentes niveles de ruido. Asimismo se compara con las Redes Neuronales de tipo Backpropagation. En el captulo 8 mostramos un nuevo mtodo de identicacin de sistemas dinmicos con modelos en el Espacio de Estados. Este mtodo un algoritmo de identicacin que comienza calculando un ARX y posteriormente utiliza RGO para mejorar la identicacin previa. Las aplicaciones de estos mtodos al control se tratan en el captulo 9 a partir del Sistema MIMO de Rotores Gemelos (Twin Rotor MIMO System - TRMS), que es un laboratorio diseado expresamente para realizar experimentos de control. En ciertos aspectos su comportamiento recuerda al de un helicptero. Desde el punto de vista de control ejemplica un sistema de orden alto con acoplamientos cruzados muy signicativos. En el captulo 10 presentamos la aplicacin a la deteccin de marcas articiales para la localizacin de robots, empleando para ello como sensores una cmara con zoom motorizado sobre una plataforma pan and tilt y un anillo perifrico de 24 sensores perifricos. Para fusionar toda la informacin y as poder corregir la posicin y orientacin del vehculo utilizamos un ltro de Kalman extendido basado en RGO. Algunas partes de esta tesis han sido publicadas previamente: La mayor parte (excepto la comparacin con las redes neuronales) del captulo 5 apareci como: Garrido,S.,Moreno,L.E.,Salichs,M.A.(1998). Nonlinear On-line Identication of Dynamic Systems with Restricted Genetic Optimization. 6th European Congress on Intelligent Techniques & Soft Computing. (EUFIT98) El captulo 6 fue publicado como: Garrido,S.,Moreno,L.E.,Balaguer,C.(1998). State Estimation for Nonlinear Systems using Restricted Genetic Optimization. Methodology and Tools in Knowledge-Based Systems. 11th International Conference on Industrial and Engineering Applications of Articial Intelligence and Expert Systems. IEA-98-AIE. Proceedings. SpringerVerlag, Berlin, Germany; 1998; pp.758-767 El captulo 7 apareci como: Garrido,S.,Moreno,L.E.,Salichs,M.A.(1999). Identication of StateSpace Models with RGO. 6th European Congress on Intelligent Techniques & Soft Computing. (EUFIT98)
XXIII

XXIV

Las aplicaciones a los Robots Mviles fueron desarrolladas junto con otros autores en: Armingol, J.M., Moreno, L.E., Garrido, S., de la Escalera, A., Salichs, M.A.: Mobile Robot Localization Using a Non-Linear Evolutionary Filter. 3rd IFAC Symp. on Intelligent Autonomous Vehicles (IAV98).

1. FUNDAMENTOS Y ESTADO DEL ARTE.


1.1. Identicacin

La identicacin de sistemas es la teora y el arte de construir modelos matemticos de sistemas dinmicos basndonos en las entradas y salidas observadas. Como disciplina cientca data de los primeros intentos de modelar series de tiempo usando tcnicas AR. Aunque una parte sustancial del desarrollo de las tcnicas est ligado a la Comunidad de Control, est bsicamente construida a partir de tcnicas estadsticas, en particular en los mtodos de regresin lineal y no-lineal. Construir modelos para sistemas desconocidos es un objetivo importante de la Ingeniera de control. Estos modelos necesitan simular el comportamiento real en los casos en que existe un conocimiento previo limitado de la estructura del sistema. Consideremos el motor de un coche por ejemplo. Es importante simular el comportamiento de un motor para la deteccin de fallos y para propsitos de diagnosis. Algunos factores importantes que afectan este proceso son las dicultades asociadas con el desarrollo de un modelo aceptable con un orden de complejidad mnimo y con un nmero de medidas mnimo. Estos factores hacen que el proceso de modelado de un motor de coche bastante difcil. Esto puede ser generalizado a una amplia clase de sistemas en la industria. La identicacin de sistemas no lineales se considera un problema difcil. La razn es que identicar un sistema no-lineal conlleva dos grandes etapas: la seleccin de la estructura del modelo con un cierto nmero de parmetros y la seleccin de un algoritmo que estime dichos parmetros. En la literatura han sido propuestos numerosos modelos lineales como solucin al proceso de identicacin. Estos modelos son simples, como OE y ARX por ejemplo. En este caso podemos elegir un algoritmo sencillo para estimar los parmetros del modelo. Aunque muchos sistemas no-lineales pueden ser linealizados representndolos por medio de una ecuacin diferencial o en diferencias, modelar sistemas no-

1. FUNDAMENTOS Y ESTADO DEL ARTE.

lineales con modelos lineales implica muchas aproximaciones. Con frecuencia, estas aproximaciones no reejan sucientemente el comportamiento real del sistema no lineal.. Por tanto, el obtener un buen modelo, con una estructura que reeje la informacin real del sistema, exige un incremento en coste. Este coste es debido a la necesidad de algoritmos ms avanzados que puedan manejar modelos con estructuras complejas. Los modelos pueden ser paramtricos, que tienen la ventaja de estar dados por un conjunto pequeo de coecientes, o bien no paramtricos como las redes neuronales, que tienen la ventaja de no estar restringidas a un cierto nmero, posiblemente pequeo, de descripciones posibles del modelo. El trmino Identicacin de sistemas fue acuado por Lofti Zadeh [116] en 1962, como: Identicacin es la determinacin, en base a la entrada y la salida, de un sistema, dentro de una clase de sistemas especicada, al cual el sistema probado es equivalente. Puede decirse que la identicacin de sistemas qued establecida como un campo de investigacin reconocido dentro del rea de control automtico a mediados de los sesenta: en el tercer congreso de la IFAC en Londres, 1966 en el que fue presentado un artculo de visin general sobre identicacin de sistemas (Eykhoff et al. 1966). Un ao despus fue organizado el primer Symposium IFAC sobre identicacin de sistemas en Praga. En la actualidad es el Symposium con una serie mas larga de la IFAC. La teora sobre identicacin de sistemas est reunida, por ejemplo, en los libros de Ljung [74] y de Sderstrom y Stoica [102], donde tambin se pueden encontrar numerosas referencias.

1.1.1.

Modelos de Sistemas Dinmicos

Cuando trabajamos con un modelo de un sistema, tenemos una cierta idea de cmo unas variables estn relacionadas entre s. Desde un punto de vista general, podemos decir que las relaciones observadas son un modelo del sistema. Est claro que los modelos pueden venir dados por diferentes estructuras y con distintas formulaciones matemticas. El uso deseado del modelo tambin determina el grado de sosticacin requerido. El modelado e identicacin de sistemas nolineales es, en buena medida, un problema dependiente de las aplicaciones y que frecuentemente tiene sus races en la tradicin y en las tcnicas especcas del rea de aplicacin.

1.1. IDENTIFICACIN

Un problema tpico Observamos las entradas u(t) y las salidas y(t) de un sistema, con t = 1, . . . , N . Deseamos construir el modelo de un sistema, y podemos buscar un modelo sencillo de la forma y(t) + a1 y(t 1) = b1 u(t 1) + b2 u(t 2) (1.1)

Es necesario determinar los valores de los parmetros a1 , b1 , y b2 . Esto puede ser hecho por medio del conocido mtodo de mnimos cuadrados
N

min a1 ,b1 ,b2


t=1

(y(t) + a1 y(t 1) b1 u(t 1) b2 u(t 2))2

(1.2)

N Los valores a1 , b1 , y b2 pueden ser calculados fcilmente en este caso puesto N N 1.2 es una funcin cuadrtica. As obtenemos el modelo del sistema: N N y(t) + a1 y(t 1) = b1 u(t 1) + b2 u(t 2) N (1.3)

Este sencillo problema de identicacin de sistemas es un caso especial de la amplia clase de problemas de construccin de modelos.

1.1.2.

Modelos de Entrada-Salida

Un modelo de entrada-salida describe un sistema dinmico basndose en los datos de entrada y de salida. Este tipo de modelos supone que la salida del sistema puede ser predicha a partir de las entradas y salidas pasadas del sistema. Si el sistema se supone, adems determinista, invariante en el tiempo, de una entrada una salida (SISO), el modelo de entrada-salida es: y(k) = f (y(k 1), y(k 2), . . . , y(k n), u(k 1), u(k 2), . . . , u(k m)) (1.4) donde u(k), y(k) representa el par de entrada-salida en el tiempo k. Los enteros positivos n y m son el nmero de salidas pasadas (tambin llamado el orden del sistema) y el nmero de entradas pasadas. En la prctica m es, normalmente, menor o igual que n. f puede ser cualquier funcin no-lineal denida desde el espacio de entradas y salidas pasadas hasta el espacio de salidas futuras. Si el sistema es lineal, f es una funcin lineal y la ecuacin anterior puede ser reescrita como: y(k) = a1 y(k 1) + a2 y(k 2) + ... + an y(k n) +b1 u(k 1) + b2 u(k 2) + ... + bm u(k m) (1.5)

1. FUNDAMENTOS Y ESTADO DEL ARTE.

1.1.3.

Modelos Paramtricos Lineales

El estado actual de la estimacin de parmetros en la identicacin de sistemas corresponde a la teora clsica de la regresin. Es una necesidad para el futuro de la identicacin de sistemas comprender en profundidad los relevantes desarrollos estadsticos en anlisis de la regresin, como los expuestos en los libros de Carroll y Ruppert [16] y de McCullagh y Nelder [84]. Algunos de los modelos lineales mas conocidos son: ARX (Auto-Regressive with eXogenous inputs), cuya expresin es A(q 1 )y(t) = B(q 1 )u(t nk) + ek (1.6)

, que puede ser visto como una manera de determinar el siguiente valor de la salida dadas las observaciones anteriores y las entradas. Aqu A(q 1 ) y B(q 1 ) son polinomios en el operador desplazamiento hacia atrs q 1 e y(t), u(t), y e(t) son las salidas, entradas y ruido, respectivamente. El ruido e(t) es una sucesin aleatoria normalmente distribuida de media cero y varianza 2 . OE (Output Error) cuya expresin es y(t) = B(q 1 ) u(t nk) + e(t) F(q 1 ) (1.7)

con la fuente de error e(t) que es la diferencia (error) entre la salida real y la salida libre de ruido (terica). ARMAX (Auto-Regressive Moving Average with eXogenous inputs), cuya expresin es A(q 1 )y(t) = B(q 1 )u(t nk) + C(q 1 )e(t) (1.8)

En ste modelo la expresin A(q 1 )y(t) = e(t) representa la auto-regresin, y(t) = C(q 1 )e(t) representa la media mvil de ruido blanco, mientras que B(q 1 )u(t) representa le entrada externa. Otros modelos pueden ser usados, como por ejemplo la representacin en el espacio de estados o el modelo de ceros y polos.

1.1.4.

Modelos Paramtricos No-lineales

La identicacin de modelos matemticos en forma de modelos lineales de una entrada - una salida est bien desarrollada en cuanto a la determinacin de

1.1. IDENTIFICACIN

parmetros y determinacin de la estructura. Sin embargo, se considera difcil aplicar con precisin la identicacin de sistemas lineales a sistemas no-lineales. Un punto de vista pesimista es mirar a los sistemas no-lineales como el complementario de la clase de sistemas para los cuales existen mtodos sistemticos de identicacin. Algunos resultados interesantes son: el artculo de Johnson [61] sobre regresin no-paramtrica y el libro de Grenander [41] Supongamos que se ha escogido una base del espacio de funciones {gk }, debemos intentar aproximar la verdadera relacin por una combinacin lineal nita de las funciones de la base:
n

y (t|) = g((t), ) =
k=1

(k)gk ((t))

(1.9)

donde (t) est formado por las entradas u(k) y salidas y(k) pasadas: (t) = [y(t 1), . . . , y(t n a ), u(t 1), . . . , u(y n b )]T (1.10)

y hemos introducido la notacin y (t|) para hacer hincapi en que g((t), ) es una estimacin de y(t) dada la informacin (t) y un vector de parmetros dado . El mejor valor de est determinado entonces por el conjunto de datos Z N = {[y(t), (t)]|t = 1, . . . , N } y ser: N = argmin
N

(1.11)

|y(t) y (t|)|2
k=s

(1.12)

Modelos paramtricos No-lineales Series de Volterra Las series de Volterra son desarrollos en serie que consisten en trminos lineales, bilineales y trilineales. Trminos de mayor orden pueden ser incluidos para algunas aplicaciones. Una serie de Volterra con un orden y un retardo apropiadamente escogidos pueden ser usados para modelar sistemas dinmicos no-lineales. Las series de Volterra vienen descritas por la expresin:
y(k) = i=0 ai u(k i) + i=0 bi j u(k i)u(k j) j=0 + i=0 j=0 l=0 ci jl u(k i)u(k j)u(k l) +...

(1.13)

1. FUNDAMENTOS Y ESTADO DEL ARTE.

El vector u representa la seal de entrada, el vector y la salida del modelo. Para sistemas estables las series innitas pueden ser truncadas sin problemas si el lmite superior de la suma es lo sucientemente alto. Entonces la ecuacin anterior puede ser simplicada como:
N 1 y(k) = i=0 ai u(k i) N 1 N 1 + i=0 j=0 bi j u(k i)u(k j) N 1 N 1 N 1 + i=0 j=0 l=0 ci jl u(k i)u(k j)u(k l) +...

(1.14)

De hecho, la mayora de los estudios en ste rea se limitan a series de Volterra de segundo o tercer orden. Las series de Volterra pueden ser representadas en notacin vectorial:
T T T y(k) = a1 x1 + b2 x2 + c3 x3 = x T a

(1.15)

donde el vector de datos x y el vector de coecientes viene dado por: x T = (x(k), x(k 1), . . . , x(k N + 1), x 2 (k), x(k)x(k 1), . . . , x 2 (k N + 1), x 3 (k), . . . , x 3 (k N + 1)) y a T = (a0 , . . . , a N 1 , b00 , . . . , b N 1,N 1 , c000 , . . . , c N 1,N 1,N 1
T c3 T a1 T b2

(1.16)

(1.17)

Los parmetros desconocidos de la serie pueden ser determinados a partir de las medidas de entrada-salida resolviendo la ecuacin y = Xa donde y= y(k) y(k 1) . . . (1.18)

y(k N )

1.1. IDENTIFICACIN

X =

T T T x1 (k N ) x2 (k N ) x3 (k N ) a1 a = b2 c3

T x1 (k) T x1 (k 1) . . .

T x2 (k) T x2 (k 1) . . .

T x3 (k) T x3 (k 1) . . .

La solucin por mnimos cuadrados viene dada por la ecuacin normal X T Xa = X T y que tiene como solucin: a = (X T X )1 X T y (1.19)

En caso de que no exista la inversa, habra que usar la inversa generalizada de Penrose, o bien replantear el experimento. Modelos NARMAX Entre los modelos no lineales, uno de los mas interesantes, es el modelo NARMAX (Non- linear Auto-Regressive Moving Average with eXogenous inputs), que es una generalizacin de las series de Volterra y que puede ser descrito como y(t) = F[ y(t 1), . . . , y(t n y ), u(t d), . . . , u(t d n u + 1), (t 1), . . . , (t n )] + (t) (1.20) donde t representa el tiempo discreto, y(t), u(t) y (t) son la salida, la entrada, y el error de prediccin, respectivamente, n y , n u y n son los rdenes correspondientes, F[.]es una funcin no lineal y d es el mnimo retardo de la entrada [Leontaritis 85]. El modelo polinomial NARMAX tiene como expresin

y(k) = a0 +

ny ny nu nu i=1 ai y(k i) + i=1 bi u(k i) + i=1 j=1 ci j y(k i)u(k j) ny nu n + i=1 ai y 2 (k i) + i=1 bi u 2 (k i) + i=1 ai (k i) (1.21)

nos permite una descripcin buena y sencilla de una amplia clase de sistemas no lineales. Por ejemplo, si el modelo exacto NARMAX es y(k) = y(k 1)eu(k1) (1.22)

1. FUNDAMENTOS Y ESTADO DEL ARTE.

podemos desarrollar en serie la exponencial ex p(x) =


i (x) i=0

i!

(1.23)

y emplear un modelo polinomial aproximado NARMAX 1 1 y(k) = y(k 1) y(k 1)u(k 1) + y(k 1)u 2 (k 1) y(k 1)u 3 (k 1) 2 6 (1.24)

1.1.5.

Modelos No-Paramtricos, Redes Neuronales

Los modelos de Redes Neuronales articiales han sido estudiados durante muchos aos con el nimo de conseguir prestaciones parecidas a las humanas en campos como el reconocimiento del habla o de imagen. Estos modelos estn compuestos por muchos elementos computacionales trabajando en paralelo y organizados en patrones que recuerdan a las redes neuronales biolgicas. Los elementos computacionales o nodos estn conectados mediante pesos que son adaptados a lo largo del proceso para mejorar sus prestaciones. Es imposible cubrir todos los tipos de redes neuronales y solamente vamos a considerar las llamadas Feedforward y Recurrentes, que son las ms utilizadas en identicacin de sistemas. Redes Feedforward El paso desde el desarrollo general 1.9 de una funcin en la base {gk } a lo que es una red neuronal no es grande. Basta escoger gk () = k (k + k ) donde k es un vector de parmetros y k y k son parmetros escalares para obtener
n

g() =
k=1

k (k + k ) + 0

(1.25)

donde 0 es el valor correspondiente al nivel medio. A este modelo se le denomina Red Feedforward con una capa oculta y una salida. Las funciones de la base, llamadas nodos o neuronas, son funciones univaluadas que convierten la red neuronal en un desarrollo en funciones simples. La eleccin especca de (.) es denominada funcin de activacin y suele ser escogida igual para todos los nodos. El nombre f eed f or war d est explicado por la gura; hay una direccin especca en el ujo de los clculos cuando se calcula la salida g. Primero se calculan

1.1. IDENTIFICACIN

1 S -> s

S -> s
.... .... ....

^ g

S -> s

Fig. 1.1: Red Feedforward con una capa oculta y una salida.

las sumas con peso en la entrada de cada unidad, despus estas sumas son pasadas por la funcin de activacin y forman las salidas de las capas ocultas. Para calcular g se forma una suma con pesos de las salidas de los nodos de la capa oculta. Si g es una funcin vectorial, hay varios nodos de salida formando la capa de salida. La entrada se denomina, a veces, capa de entrada. Los pesos de las diferentes sumas son los parmetros de la red. La funcin (x) se toma de tipo sigmoide, es decir es una funcin continua que verica lim x (x) = a y lim x (x) = b con a, b R y b < a. La red neuronal de una capa oculta 1.25 se puede generalizar a varias capas ocultas. La salida de la primera capa oculta alimenta la segunda capa y as sucesivamente, y la ltima capa oculta alimenta a la capa de salida, como se puede ver en la gura. La frmula para dos capas ocultas ser g() =
i 3 1,i ( j 2 i, j ( m 1 r,m m ))

(1.26)

Redes Recurrentes Si alguna de las entradas de la red f eed f or war d consiste en salidas retardadas de la red, o bien en algn estado interno retardado, la red recibe el nombre de red recurrente o red dinmica. ste tipo de redes es especialmente interesante para identicacin.

10

1. FUNDAMENTOS Y ESTADO DEL ARTE.

Capa de entrada

Capas ocultas

Capa de salida

1 > >
....

1 > >
....

....

^ g

>

>

Fig. 1.2: Red Feedforward con dos capas ocultas.


1 1

S -> s

S -> s

-1

-1

Fig. 1.3: Red Recurrente. q 1 retarda la seal un tiempo de muestreo.

Aspectos Algortmicos Los pesos de la red deben ser escogidos de forma que la salida se ajuste lo mejor posible a los datos observados, para ello hay que minimizar el funcional: 1 VN () = 2N
N

|y(t) g((t), )|2


t=1

....

(1.27)

Como no hay solucin analtica a este problema, es necesario emplear algn mtodo numrico de optimizacin. Las rutinas de bsqueda ms ecientes estn

1.1. IDENTIFICACIN

11

basadas en bsqueda local en una direccin de mayor pendiente desde el punto actual. Tenemos, por tanto, un esquema iterativo del tipo (i+1) = (i) i Ri1 gi (1.28)

donde i es el paso, gi es una estimacin del gradiente VN ( (i) y Ri es una matriz que modica la direccin de bsqueda. Identicacin con Redes Neuronales Los dos esquemas tradicionales de identicacin para sistemas dinmicos, llamados serie-paralelo y paralelo, son los representados en las guras 1.4 y 1.5, respectivamente.
ys (k+1)

SISTEMA

u(k)

+ Red Neuronal

e(k)

yn(k+1)

Fig. 1.4: Identicacin Serie-Paralelo

El esquema de identicacin serie-paralelo utiliza las entradas y salidas de la planta y deja que internamente la red deduzca el error existente. Este esquema, tambin llamado teacher forcing puede ser usado con cualquier algoritmo de aprendizaje. La idea es que durante la fase de entrenamiento, para calcular los nuevos estados de la red neuronal, se utilicen en el lazo de realimentacin las salidas actuales de la planta en lugar de las salidas de la red. Su implementacin puede ser muy sencilla con cualquier algoritmo. El serie-paralelo es til al inicio del aprendizaje para que los valores de la red no se alejen mucho y converja ms rpido. En el esquema de identicacin paralela, la red no tiene informacin directa acerca de las salidas de la planta, slo las entradas y el error entre las salidas de la planta y la red.

12

1. FUNDAMENTOS Y ESTADO DEL ARTE.

SISTEMA

ys (k+1)

u(k)

+ Red Neuronal

e(k)

yn(k+1)

Fig. 1.5: Identicacin Paralela

Redes neuronales con paralelizacin del tiempo La representacin del tiempo y su inuencia en el comportamiento de los sistemas es uno de los problemas mas difciles en las aplicaciones de modelado y control. Una forma de representar eventos temporales es su representacin directa como una dimensin explcita en un vector del espacio de entrada. El primer elemento representa el primer evento temporal, el segundo elemento de cada vector representa el segundo evento temporal y as sucesivamente. La representacin del tiempo en las redes neuronales utilizadas en aplicaciones de sistemas dinmicos se pueden clasicar en dos grupos de mtodos distintos. El primer grupo tiende a disear su propia arquitectura de red dinmica en aplicaciones especcas. El segundo grupo lo forman las modicaciones a las estructuras y a los algoritmos de aprendizaje esttico, para incluir en ellos de manera explcita el nuevo parmetro tiempo y as poder representar la dinmica del sistema. Los retardos pueden ser introducidos en la capa de entrada o en las capas internas. Ejemplos de estas arquitecturas son: Time Delay Neural Networks (TDNN): Hopeld y Tank [48] (1986) , Toma de decisiones y Optimizacin. Guyon y Albrecht [42] (1990), Reconocimiento de caracteres escritos a mano. Redes Neuronales Recurrentes : Rumelhart, Hinton y Williams [99] (1986), Completar secuencias. Williams y Zipser (1989), Reconocimiento de caracteres. Robinson y Fallside (1988), Reconocimiento de voz.

1.1. IDENTIFICACIN

13

Memory Neuron Networks : Poddar [93] (1991): Reconocimiento de caracteres. El segundo grupo est formado por las modicaciones a las estructuras y a los algoritmos de aprendizaje estticos para incluir en ellos el tiempo. Una de las ms conocidas es la red de la gura 1.6 que fue propuesta por Elman (1990). En ella se aprecia que la capa de entrada est dividida en dos partes ; el conjunto de entradas externas y una copia de la activacin de la capa oculta en el instante anterior.

Capa de entrada

Capa Oculta Capa de salida y1

Neuronas auxiliares

y2

Fig. 1.6: Red con realimentacin de la Capa Oculta.

La red es de propagacin hacia adelante y al ajustar los pesos hay que tener en cuenta los pesos que van desde las entradas auxiliares a la capa oculta. Este tipo de red puede reconocer o reproducir secuencias de periodos cortos de tiempo. Este tipo de red se utiliz para el reconocimiento de palabras generadas por una gramtica formal. Jordan propuso una arquitectura 1.7 donde la capa de entrada est dividida en dos partes: el conjunto de entradas externas y la realimentacin de la activacin de la capa de salida a travs de conexiones de valor jo.

14

1. FUNDAMENTOS Y ESTADO DEL ARTE.

Capa de entrada

Capa Oculta Capa de salida y1

Neuronas auxiliares

y2

Fig. 1.7: Red con realimentacin de la Capa de Salida.

Este tipo de red es utilizada para el reconocimiento y clasicacin de secuencias. Fue sugerida por Jordan para su empleo en la generacin de trayectorias de robots. Ejemplos de otras arquitecturas dentro de ste grupo son: Backpropagation in Dynamic Systems (BPD): [Narendra [89] (1991)]:Identicacin y Control, Control por Modelo de Referencia. Propone la construccin de una segunda red llamada sensitivity model para el clculo en lnea de las derivadas de las salidas con respecto a los parmetros (matriz Jacobiana) y de las derivadas con respecto a las entradas. En el artculo, por lo dems explica con detalle el esquema propuesto para generar el gradiente. Backpropagation through time (BTT): [Werbos [111] (1990)]: Identicacin, Camin remolque.

1.1. IDENTIFICACIN

15

El fundamento consiste en permitir a la red observar lo que ocurrir con el sistema durante un tiempo T de pasos futuros, para que pueda adaptar sus pesos en consecuencia. Debido a la duplicacin de unidades, los pesos y el coste computacional del entrenamiento, hacen que esta arquitectura no sea muy popular.

1.1.6.

Identicacin con Algoritmos Genticos

La mayora de los mtodos usuales en la identicacin de sistemas estn basados en mnimos cuadrados o en el mtodo de mxima verosimilitud que son mtodos locales guiados por el gradiente y necesitan una funcin de prdidas (loss function) diferenciable y un espacio de bsqueda suave. Esto tiene el inconveniente de que si las seales tienen ruido coloreado, como suele ser habitual en la prctica, los mtodos basados en mnimos cuadrados tienen el fracaso asegurado. Si adems estamos implementado el mtodo en lnea el ruido estar correlacionado con los regresores y el mtodo explotar, fenmeno conocido como blow-up. Para evitar esto en algunos casos sencillos, se puede usar un factor de olvido muy prximo a la unidad, pero en la mayora de los casos de sistemas no lineales variantes en el tiempo esta tcnica falla. A menudo fallan en la bsqueda de ptimos globales cuando ste espacio de bsqueda es no diferenciable, o no lineal en sus parmetros. Los mtodos de optimizacin basados en algoritmos genticos pueden mejorar los resultados porque no utilizan las propiedades de diferenciabilidad o de ser lineal en los parmetros. En 1992, Kristinsson y Dumont [69] hicieron un primer estudio de la identicacin de sistemas y del control off-line con algoritmos genticos de sistemas dinmicos continuos y discretos. Comprobaron que los algoritmos genticos son efectivos en ambos dominios y que es posible identicar directamente parmetros fsicos, o bien, polos y ceros. Hicieron simulaciones con sistemas de fase mnima y no mnima y de un sistema con dinmica no modelada. En 1993, Flockton y White [27] utilizan los algoritmos genticos para hacer otra identicacin off-line de polos y ceros con algunas pequeas mejoras. Posteriormente, en 1995, Tan, Li y Murray-Smith [104] usan los algoritmos genticos con "simulated anneling"para hacer una identicacin off-line y la linealizacin de sistemas no lineales, invariantes del tiempo con un modelo ARMAX. Utiliza esta tcnica de bsqueda para identicar los parmetros de un sistema descrito por un modelo ARMAX en variables de estado, en presencia de ruido blanco y para aproximar un sistema no lineal multivariable por un modelo en el

16

1. FUNDAMENTOS Y ESTADO DEL ARTE.

espacio de estados, lineal e invariante en el tiempo. En este mismo ao, Iba, de Garis y Sato [53] usan una tcnica numrica offline, que integra una bsqueda adaptativa de una estructura de rbol basada en programacin gentica y un mecanismo de ajuste local de parmetros empleando bsqueda estadstica. En la programacin gentica tradicional, la recombinacin causa frecuentes rupturas de los bloques de construccin y la mutacin puede causar abruptos cambios en la semntica. Para superar estas dicultades ellos implementan la programacin gentica tradicional con una bsqueda local "hillclimbing", usando un procedimiento de ajuste de parmetros. Todos estos mtodos trabajan off-line y precisan que el sistema sea invariante del tiempo. El ltimo adems utiliza un mtodo no paramtrico.

1.1.7.

Identicacin en Bucle Cerrado

La Identicacin para el Control ha tenido notable inters en los ltimos aos (ver, por ejemplo, los artculos de Gevers [36], Lee [72], Van den Hof [108] y la tesis de Forssell [29]). El objetivo es encontrar modelos vlidos para un control adaptativo. El uso de experimentos en bucle cerrado es una de las caractersticas de estos mtodos. Otra de las razones para su utilizacin puede ser la inestabilidad de la planta. La nalidad de la identicacin en Bucle Cerrado es obtener buenos modelos del sistema en bucle abierto, a pesar de la realimentacin. Varios mtodos que dan estimaciones consistentes para datos en bucle abierto pueden fallar cuando se aplican de manera directa a la identicacin en bucle cerrado. Estos incluyen los anlisis espectral y de correlacin, el mtodo de la variable instrumental, los mtodos de subespacios y los OE (output error) con modelo de ruido incorrecto (ver la tesis de Forssell [29] y el artculo de Forssell y Ljung [30]). Consideramos el sistema y(t) = G 0 (q)u(t) + H0 (q)e(t) con e(t) ruido blanco de varianza 0 y el regulador es u(t) = r (t) Fy (q)y(t). El sistema en bucle cerrado puede ser escrito como: y(t) = G o (q)So (q)r (t) + So (q)Ho (q)e(t) (1.31) (1.30) (1.29)

1.1. IDENTIFICACIN

17

v r u Go y

Fy

Fig. 1.8: Sistema en bucle cerrado.

donde So (q) es la funcin de sensibilidad, So (q) = 1 1 + Fy (q)G o (q) (1.32)

Es importante saber que el mtodo de error de prediccin puede ser aplicado directamente, como si la realimentacin no existiera, y el resultado dar una precisin ptima si el sistema verdadero puede ser descrito dentro de la estructura de modelo escogida. Sin embargo, debido a las trampas a que nos puede llevar la identicacin en bucle cerrado, han sido sugeridos diversos mtodos alternativos. Se pueden clasicar en (ver el artculo de Gustafsson [43]): Procedimiento Directo: Se aplica el mtodo de error de prediccin y se identica el sistema en bucle abierto usando medidas de la entrada y la salida. Procedimiento Indirecto: Se identica el sistema en bucle cerrado utilizando medidas de la seal de referencia r y de la salida y y se usa esta estimacin para hallar los parmetros del sistema en bucle abierto utilizando el conocimiento del controlador. Procedimiento de Entrada-Salida conjuntas: Se identican las funciones de transferencia de r a y y de r a u y se utilizan para hallar una estimacin del sistema en bucle abierto. y(t) = G o (q)So (q)r (t) + So (q)Ho (q)e(t) u(t) = So (r (t) Fy (q)So (q)Ho (q)e(t) (1.33)

El procedimiento de Identicacin Directa es el mtodo mas natural para hacer identicacin en bucle cerrado. Las principales razones son:

18

1. FUNDAMENTOS Y ESTADO DEL ARTE.

Funciona bien a pesar de la complejidad del regulador y no requiere conocimiento de la realimentacin. No se necesitan algoritmos ni software especiales. Se asegura la consistencia y la precisin ptima siempre que la estructura del modelo contenga al sistema verdadero. Los problemas que plantea ste procedimiento son: Es necesario tener buenos modelos del ruido (ver teorema 8.4 en el libro de Ljung [74]). Un pre-ltro/modelo de ruido que cambie las caractersticas del ruido verdadero produce sesgo. El problema bsico de los datos en bucle cerrado es que contienen menos informacin que cuando se toman los datos en bucle abierto, puesto que un importante propsito de la realimentacin es hacer al sistema en bucle cerrado insensible a los cambios del sistema en bucle abierto. Los mtodos de error de prediccin, aplicados de una manera directa, con modelo de ruido que puede describir las propiedades del ruido verdadero dan estimaciones consistentes y precisin ptima. Adems no se necesita conocimiento de la realimentacin. Por esto deben ser vistos como los mtodos de primera eleccin. Este procedimiento de Identicacin directa es el utilizado en esta tesis, teniendo en cuenta las precauciones anteriores.

1.2.

Estimacin de Estados

Cuando el estado de un sistema tiene que ser estimado a partir de informacin sensorial con ruido, se necesita emplear algn tipo de estimador de estados para fusionar los datos de los diferentes sensores y producir una estimacin precisa del verdadero estado del sistema. Si la dinmica del sistema y el modelo de observacin son lineales, entonces el estimador de mnimos cuadrados puede ser calculado usando el ltro de Kalman.

1.2.1.

Modelos en el Espacio de Estados

Un sistema dinmico puede ser tambin descrito por un modelo en el espacio de estados. El modelo en el espacio de estados de orden n de mltiples entradas y

1.2. ESTIMACIN DE ESTADOS

19

mltiples salidas (MIMO), no-lineal e invariante en el tiempo tiene la forma: x(k + 1) = (x(k), u(k)) y(k) = (x(k)) donde: x(k) = (x1 (k), x2 (k), . . . , xn (k))T u(k) = (u 1 (k), u 2 (k), . . . , u m (k))T y(k) = (y1 (k), y2 (k), . . . , yl (k))T (1.34)

(1.35)

x(k), u(k), e y(k)son el vector de estados, el vector de entradas y el vector de salidas, respectivamente. Si el sistema es lineal, x(k + 1) = Ax(k) + Bu(k) y(k) = C x(k) + Du(k) (1.36)

donde A, B, C y D son matrices (nxn), (mxn), (nxl) y (mxl) respectivamente. Estas estructuras sirven para modelar tanto sistemas lineales como no-lineales.

1.2.2.

La estimacin lineal en sistemas dinmicos - El Filtro de Kalman

El problema de estimacin dinmica Consideremos un sistema dinmico lineal en tiempo discreto descrito por una ecuacin vectorial en diferencias con ruido blanco Gaussiano aditivo que modela perturbaciones no predecibles. La ecuacin de estado es x(k + 1) = F(k)x(k) + G(k)u(k) + v(k), k = 0, 1, . . . (1.37)

donde x(k) es el vector de estado de dimensin n x , u(k) es el vector de entrada de dimensin n u (que es conocido), y v(k), k = 0, 1, . . . , es la secuencia de ruido blanco Gaussiano de media cero con covarianza E[v(k)v(k) ] = Q(k) La ecuacin de medida es z(k) = H (k)x(k) + w(k), k = 1, 2, . . . (1.39) (1.38)

con w(k) secuencia de ruido de medida blanco Gaussiano de media cero con covarianza E[w(k)w(k) ] = R(k) (1.40)

20

1. FUNDAMENTOS Y ESTADO DEL ARTE.

Las matrices F, G, H, Q, y R se suponen conocidas y que pueden cambiar con el tiempo. En otras palabras, el sistema puede cambiar con el tiempo y los ruidos son no estacionarios. El estado inicial x(0) es en general desconocido y se modela como una variable aleatoria Gaussiana con media y covarianza conocidas. Las dos secuencias de ruido y el estado inicial se suponen mutuamente independientes. Las anteriores condiciones se llaman lineales-Gaussianas. El algoritmo de estimacin El algoritmo de estimacin comienza con una estimacin inicial x(0|0) de x(0) y la covarianza inicial asociada P(0|0) , que se supone disponible. Un ciclo del algoritmo de estimacin dinmica (ltro de Kalman) consiste en estimar a partir (1.41) x(k|k) = E[x(k)|Z k ] que es la media condicional del estado en el tiempo k. dadas las observaciones hasta el tiempo k inclusive , y de la matriz de covarianza asociada P(k|k) = E[[x(k) x(k|k)][x(k) (k|k)] |Z k ] (1.42)

las correspondientes variables del siguiente paso, x(k + 1|k + 1) y P(k + 1|k + 1). Esto se puede hacer puesto que las variables Gaussianas quedan caracterizadas por sus dos primeros momentos.

1.2.3.
por

El caso no lineal: Filtros No-lineales

En el caso no lineal el problema de ltrado en el espacio de estados viene dado x(k) = g(k, x(k 1), (k)), z(k) = h(k, x(k), (k)),

(1.43) (1.44)

donde (k) y (k) son los ruidos, que se suponen vectores aleatorios, independientemente distribuidos: (k) (k) 0 0 , Q(k) 0 0 R(k) . (1.45)

La estimacin ptima implica la descripcin de la densidad de probabilidad condicional x M M S E (k|k) = E(x(k)|Z k ) = x(k) p(x(k)|Z k )d x . (1.46)

1.2. ESTIMACIN DE ESTADOS

21

Estado Real
Estado en t k x(k) Transicin a t k+1 x(k+1)= F(k)x(k) +G(k)u(k)

Entrada conocida
Control en t k u(k)

Estimacin del estado


Estimacin del estado en t k ^ x(k|k) Prediccin del estado ^ x(k+1|k)= F(k)x(k|k) +G(k)u(k) Prediccin de la medida ^ z(k+1|k)= H(k+1)x(k+1|k)

Clculo de la covarianza
Covarianza del estado en tk P(k|k) Covarianza de la prediccin del estado P(k+1|k)= F(k)P(k|k)F'(k)+Q(k) Innovacin de la covarianza S(k+1)= H(k+1)P(k+1)H'(k+1) +R(k+1)

Medida en t k+1 z(k+1)= H(k+1)x(k+1) +w(k+1)

Innovacin n(k+1)= z(k+1)-z(k+1|k)

Ganancia del Filtro W(k+1)= P(k+1|k)H'(k+1)S (k+1)

Actualizacin de la estimacin del estado ^ x(k+1|k+1)= x(k+1|k)+W(k+1)n(k+1)

Actualizacin de la covarianza del estado P(k+1|k+1)= P(k+1|k) -W(k+1)S(k+1)W'(k+1)

Fig. 1.9: Diagrama de ujo del ltro de Kalman.

Desafortunadamente, esta descripcin necesita un nmero innito de parmetros. Por esta razn, un nmero importante de aproximaciones subptimas han sido propuestas. Estos mtodos utilizan aproximaciones analticas de las distribuciones de probabilidad, la ecuacin de transicin de estados o la ecuacin de medida. Existen otros mtodos, tales como el mtodo de Montecarlo, que necesitan miles de puntos para aproximar la densidad de probabilidad condicional. En aplicaciones con muchas dimensiones, stos ltimos mtodos no son prcticos. Por esta razn son necesarios mtodos con un nmero razonable de operaciones, tales como los estudiados en este trabajo.

1.2.4.

Filtro Extendido de Kalman (EKF) y Filtro No-lineal de Segundo Orden (SNF)

El ltro Extendido de Kalman es similar a un ltro de Kalman linealizado, con la excepcin de que la linealizacin es realizada en la trayectoria estimada en

22

1. FUNDAMENTOS Y ESTADO DEL ARTE.

vez de hacerlo en una trayectoria nominal previamente calculada. Por esta razn, las funciones g(k, x(k 1), (k)) y h(k, x(k), (k)) son desarrolladas en serie de Taylor alrededor de x(k|k) con trminos hasta primer o segundo orden para obtener el EKF o SNF respectivamente. El desarrollo con trminos de segundo orden de la ecuacin de transicin es: x(k) = g(k, x(k 1), (k)) g(k, x(k|k 1), 0) +gx (k, x(k 1), (k))(x(k 1) x(k 1|k 1)) + g (k, x(k 1), (k))(k)
n

+1 2
j=1 n

e j (x(k 1) x(k 1|k 1)) gxj x (k, x(k 1), (k))(x(k 1) x(k 1|k 1))
j e j (k)g (k, x(k 1), (k))(k) j=1 n j e j (x(k 1) x(k 1|k 1)) gx (k, x(k 1), (k))(k) .

+1 2 +
j=1

(1.47) y el desarrollo con trminos hasta segundo orden de la ecuacin de medida es: z(k) = h(k, x(k), (k) h(k, x(k|k 1), 0) +h x (k, x(k 1), (k))(x(k 1) x(k 1|k 1)) + h (k, x(k 1), (k))(k)
n

+1 2
j=1 n

j e j (x(k 1) x(k 1|k 1)) h x x (k, x(k 1), (k))(x(k 1) x(k 1|k 1)) j e j (k)h (k, x(k 1), (k))(k) j=1 n j e j (x(k 1) x(k 1|k 1)) h x (k, x(k 1), (k))(k) .

+1 2 +
j=1

(1.48) donde e j es el j th vector de la base Cartesiana.

1.2.5.

Filtro extendido Iterado de Kalman (IEKF)

La prediccin de la medida, hasta primer orden, es z (k|k 1) = h(k, x(k|k 1). Hay errores en prediccin en usar x(k|k 1) para x(k). Otros errores adiciona les son debidos a la no linealidad en la medida. Es posible disminuir estos errores si el estado actualizado no es calculado como una aproximacin a la esperanza condicional sino como un estimador del tipo maximum a posteriori.

1.3. VALIDACIN DE MODELOS

23

La funcin de densidad de probabilidad condicional, PDF, de x(k) dado Z k , si todas las variables aleatorias son Gaussianas, es p(x(k)|Z k ) = p(x(k)|z(k), Z k1 ) = 1 p(z(k)|x(k)) p(x(k|Z k1 )) c = 1 N (z(k); h(k, x(k)), R(k)) N (x(k); x(k|k 1), P(k|k 1)) . c (1.49) Maximizar esta funcin es equivalente a minimizar la siguiente V (x(k)) = 1 (z(k) h(k, x(k))) R(k)1 (z(k) h(k, x(k))) 2 + 1 (x(k) x(k|k 1)) (P(k|k 1)1 (x(k) x(k|k 1)) . 2 (1.50) El Filtro de Kalman Extendido Iterado (IEKF) usa un algoritmo NewtonRaphson para estimar x(k|k). Desarrollando V en serie de Taylor hasta segundo orden alrededor de la i-sima estimacin de x(k)da como resultado: 1 V = V i + Vxi (x x i ) + (x x i ) Vxi x (x x i ) . 2 Poniendo el gradiente a cero: x i+1 = x i (Vxi x )1 Vxi . Esto da lugar a la ecuacin IEKF: x i (k|k) = x i1 (k|k) + P i1 (k|k)H i1 (k) R(k)1 {z(k) h(k, x i1 (k|k))} P i1 (k|k)P(k|k 1)1 (x i (k|k) x(k|k 1)), (1.53) with H i1 (k) = h x (k, x i (k|k)) . (1.52) (1.51)

1.3.

Validacin de Modelos

Despus de la estimacin, la pregunta obvia es si el modelo que se ha derivado es adecuado para el uso que se le pretende dar. ste es el difcil y subjetivo problema de la validacin. De acuerdo con Bohlin la mejor manera de atacar el problema es confrontar al modelo con todas las fuentes de informacin disponibles, incluyendo el conocimiento previo, los datos experimentales y la experiencia usando el modelo. Para tener ms conanza en el modelo el consejo general es emplear tantas herramientas de validacin como sea posible.

24

1. FUNDAMENTOS Y ESTADO DEL ARTE.

La primera forma concebible es el uso del sentido comn. Si, por ejemplo, un parmetro estimado representa la longitud de un eje, sta debe ser positiva. Otro ejemplo puede ser el nivel de un depsito. Los tests de ste tipo pertenecen a la categora del conocimiento previo y son especialmente importantes cuando los parmetros tienen algn signicado fsico. La gran mayora de los mtodos estn basados en datos experimentales. Un test bsico consiste en calcular la varianza de los parmetros estimados. Una varianza grande comparada con el valor del parmetro indica que algo est mal. Otra posibilidad es estimar varios modelos en paralelo. La respuesta en frecuencia del modelo paramtrico puede ser comparada con la respuesta espectral, por ejemplo. La herramienta de validacin ms verstil, en todas las categoras, es la simulacin. El sistema verdadero y el sistema derivado se alimentan con la misma seal de entrada y se comparan las salidas. Para una buena comparacin es deseable que el experimento se base en datos nuevos, es decir que no se hayan utilizado para la estimacin. Esto recibe el nombre de validacin cruzada. Tambin suele ser valioso investigar la secuencia de residuos {( N )}, especialmente con datos nuevos. Una manera muy sencilla es representar grcamente estos residuos y comprobar si la secuencia resultante muestra el patrn de ruidos esperado. Conjuntamente con esto, para saber si los residuos son ms o menos blancos, puede ser estudiada su covarianza muestral R ( ) = N 1 N
N t=1

(t, N )(t + N ),

que para > 0 debe ser pequeo, al menos si N es grande. Adems la independencia entre la entrada y la salida puede ser comprobada representando R ,u ( ) N 1 = N
min(N ,N ) t=max(1,1 )

(t, N )u(t + ),

para varios retardos . stos deben ser tambin pequeos, puesto que de lo contrario, hay ms informacin en la salida del sistema real, originada por la entrada. Lo que signica que todava existen dinmicas no modeladas.

1.4.

Control Adaptativo

Los problemas de control en los sistemas no-lineales han sido extensivamente estudiados en el pasado. No obstante, existe un gran inters en la comprensin de

1.4. CONTROL ADAPTATIVO

25

la conducta de los sistemas no-lineales en cuanto a la modelizacin e identicacin de la estructura y de los parmetros de tales sistemas cuando se disea un controlador adaptativo.
Parmetros del proceso

Clculo de los parmetros del Controlador

Estimacin de los parmetros del sistema

Parm. Contr. r u Proceso y

Controlador

Fig. 1.10: Sistema adaptativo con identicacin de modelo (MIAS)

El Control adaptativo trata el problema de controlar la salida de la planta en presencia de incertidumbres paramtricas o estructurales. En el control adaptativo tradicional, para conseguir que un problema fuera tratable, la planta se supona lineal con parmetros desconocidos. Se escoga una estructura de controlador, y los parmetros se ajustaban escogiendo una ley adaptativa, de modo que la salida de la planta siguiera a la referencia asintticamente.
Modelo de referencia ym ym

Clculo de los parmetros del Controlador

Parm. Contr. r u Proceso y

Controlador

Fig. 1.11: Sistema adaptativo con modelo de referencia (MRAS)

Desde el principio de la tecnologa de control adaptativo, se han propuesto dos clases distintas de controladores adaptativos. En el indirecto, los parmetros

26

1. FUNDAMENTOS Y ESTADO DEL ARTE.

de la planta se estiman y se ajustan en base a los datos de entrada-salida. En el directo, los parmetros del controlador se ajustan directamente en base a los datos de entrada -salida. Existen una gran variedad de esquemas adaptativos dentro de estas dos clases, tales como el Model Reference Adaptive Control (MRAC), Self-Tuning Adaptive Control (STAC), Self-Organizing Fuzzy Logic (SOFLIC), Neural Networks (NN), y Neurofuzzy Adaptive Control (NAC). Para los procesos cuyos parmetros varan lentamente en el tiempo, los controladores adaptativos con realimentacin pueden ser divididos en dos grandes grupos. Los sistemas adaptativos con identicacin de modelo (MIAS) determinan un modelo del proceso las medidas de entrada-salida y mtodos de identicacin. Aqu los parmetros son calculados de acuerdo con el mtodo de diseo del controlador que ha sido programado con anterioridad. Esta clase de reguladores adaptativos tambin es denominada self tuning regulators. Los sistemas adaptativos con modelo de referencia (MRAS) intentan obtener una respuesta en bucle cerrado prxima a la dada por el modelo de referencia para la seal de entrada. Aqu una seal externa, por ejemplo la variable de referencia, es medida y la diferencia entre las seales se forma usando las seales del bucle de control y del modelo de referencia y cambiando los parmetros del controlador por medio de un mtodo adaptativo. A lo largo de esta tesis hemos utilizado controladores adaptativos con identicacin de modelo(MIAS).

2. CONCEPTOS BSICOS DE LOS A.G.


2.1. Algoritmos Genticos

Introduccin Los algoritmos genticos son mecanismos de bsqueda basados en las leyes de la seleccin natural y de la gentica. Combinan la supervivencia de los individuos mejor adaptados junto con un intercambio aleatorio de informacin, lo que le da al algoritmo un aire de bsqueda biolgica. Los algoritmos genticos han sido desarrollados por John Holland y su equipo de estudiantes de la Universidad de Michigan. Las metas que se proponan eran: explicar rigurosamente los procesos adaptativos y disear nuevos sistemas articiales que sigan manteniendo los mecanismos de los sistemas naturales. Para ms detalles se pueden consultar [Goldberg 91] y [Davis 89]. Se parte, inicialmente, de un conjunto de individuos, la poblacin, y de una funcin que evala su ecacia para el problema concreto y que es la funcin que se desea optimizar. Al valor que se asigna a cada individuo a partir de esta funcin se le denomina salud.

Fig. 2.1: Algoritmos Genticos.

En cada generacin un conjunto de nuevos individuos se forma utilizando par-

28

2. CONCEPTOS BSICOS DE LOS A.G.

tes de la informacin de los cromosomas de los individuos mejor adaptados de la generacin anterior. Los algoritmos genticos no son slo una simple bsqueda aleatoria, ya que utilizan de forma eciente la informacin histrica de las generaciones anteriores para indagar nuevos caminos de bsqueda que mejoren los resultados anteriores. Las caractersticas principales son: Los algoritmos genticos no trabajan directamente con los objetos, sino con la codicacin de esos objetos, que pueden ser un nmero, un conjunto de parmetros, etc. A esta codicacin le llamamos cromosoma. Concretamente, en nuestro trabajo, hemos representado a cada individuo por un cromosoma denido por una sucesin de 0 y 1, que representan los coecientes del modelo paramtrico. Los algoritmos genticos realizan la bsqueda mediante toda una generacin objetos, no buscan un nico elemento. Los algoritmos genticos utilizan una funcin objetivo que nos da la informacin de lo adaptados que estn los individuos, y no las derivadas u otra informacin auxiliar.

Fig. 2.2: Bsqueda Gentica.

Las reglas de transicin son probabilsticas, no determinsticas. Los mecanismos de los algoritmos genticos simples son sorprendentemente fciles, dado que los mecanismos que utiliza son el mecanismo de copia y el de intercambio de partes de las cadenas de cromosomas.

2.1. ALGORITMOS GENTICOS

29

El por qu este mecanismo funciona es algo ms sutil, y el efecto combinado de simplicidad de la operacin y la potencia de su efecto son dos de las principales atracciones de la aproximacin mediante algoritmos genticos. Algunos de los principales atractivos de los algoritmos genticos como mtodo de optimizacin son: Se pueden utilizar como mtodo de optimizacin global o semi-local, segn interese.

Fig. 2.3: Terminologa de los Algoritmos Genticos.

No hace uso de ningn gradiente, ni conceptos similares. Por lo que se puede usar con seales con mucho ruido, en las que no tiene sentido las ideas asociadas a la derivada. No obstante, si las funciones son derivables, los algoritmos genticos se pueden usar en la primera fase de minimizacin, para encontrar las cuencas de atraccin, y a continuacin utilizar, por ejemplo, un mtodo basado en el gradiente. Se pueden utilizar en lnea. Los principales inconvenientes son: El nmero de operaciones y por tanto el coste computacional puede ser muy alto si no se toman precauciones. No hay ninguna teora matemtica hasta el momento, que nos asegure la convergencia. Se puede emplear fcilmente computacin en paralelo.

30

2. CONCEPTOS BSICOS DE LOS A.G.

Fig. 2.4: Ciclo de los Algoritmos Genticos.

Como es lgico, este tipo de mtodos son apropiados cuando trabajamos con funciones que no son suaves y no son convexas y que no se deben aplicar a casos sencillos en que son ms rpidos y precisos otros mtodos, como los basados en el gradiente.

Fig. 2.5: Cmo funcionan los Algoritmos Genticos?

2.1.1.

Algoritmo Gentico Simple

En un algoritmo gentico la informacin ha de codicarse para poder trabajar adecuadamente con ella. Existen numerosos sistemas de codicacin, aunque nosotros utilizaremos uno de los ms sencillos: el cdigo binario natural. Este cdigo a pesar de su simplicidad cumple la teora de los esquemas de Holland en cuanto a tener el menor nmero posible de caracteres (o alelos): nicamente dos. Una vez denido el sistema de codicacin a emplear vamos a ver como actan los operadores bsicos de seleccin, cruce y mutacin sobre este cdigo.

2.1. ALGORITMOS GENTICOS

31

Seleccin: Supongamos una poblacin de puntos codicados en cadenas binarias (limitamos el tamao de la poblacin a cuatro muestras):

Fig. 2.6: Mtodos de seleccin.

Individuo Codicado Valor(Fenotipo) 01101 13 10100 20 00100 4 00111 7

Salud asociada 169 400 16 49

Tab. 2.1: Fenotipos y salud asociada.

El valor decimal (fenotipo) de cada cadena codicada as como la salud que nos devuelve la funcin problema F(x)=x2 estn reproducidas en la tabla anterior. Vamos a denir la probabilidad de seleccin de cada individuo como el cociente entre su salud y la suma de la salud de todos los individuos (salud global, de manera que aquellos individuos con mayor salud tengan un mayor porcentaje de seleccin. El nmero de veces esperado que cada cadena sea seleccionada para reproducirse no es ms que su probabilidad por el tamao de la poblacin (as el tamao de la poblacin generada ser igualmente de cuatro muestras.

32

2. CONCEPTOS BSICOS DE LOS A.G.

Individuo Probabilidad No Copias Esperado 01101 169/634= 0,27 1,1 10100 400/634= 0,63 2,5 00100 16/634= 0,02 0,1 00111 49/634= 0,08 0,3

Tab. 2.2: Nmero de copias esperado.

El mecanismo de seleccin, de manera grca, es como sigue: supongamos una ruleta dividida en cuatro porciones proporcionales a la probabilidad de cada individuo, donde al individuo de mayor salud (mayor probabilidad) se le asigna la mayor porcin. Si elegimos un punto de la ruleta al azar, ste estar comprendido dentro de una de las porciones (cuanto ms grande sea la porcin ms probable es que el punto elegido al azar caiga dentro de ella), seleccionando para la reproduccin al individuo asociado a la misma. As, los individuos de mayor salud (mayor porcin) tienen una mayor probabilidad de ser seleccionados, mientras los de poca salud (poca porcin de ruleta) corren una suerte contraria.
   ,QG  ,QG  ,QG  ,QG 



Fig. 2.7: Funcin de salud.


El nmero de veces que debemos repetir el proceso de la ruleta es igual al tamao de la poblacin que deseamos generar, dado que por cada pareja de padres seleccionados obtendremos en la reproduccin una pareja de hijos. Cruce Una vez seleccionados dos padres, el cruce ocurre con una probabilidad Pc (entre 0 y 1, normalmente 0,4 a 0,6) jada de antemano en el algoritmo. Si se cumple Pc hemos de elegir al azar un punto de cruce en las cadenas binarias que representan a los padres, de manera que obtengamos por combinacin dos individuos hijos con la misma longitud de cadena que los padres. En el caso de no cumplirse la probabilidad de cruce tendramos dos hijos exactos a los padres.

2.1. ALGORITMOS GENTICOS

33

Fig. 2.8: Cruce.

Por ejemplo, si en la seleccin tenemos como padres a los individuos 10100 y 00111, con una probabilidad de cruce Pc=0,6 y en una tirada al azar entre 0 y 1 obtenemos un 0,3 ponemos en marcha el mecanismo de cruce, debiendo elegir al azar un punto de cruce en las cadenas (en nuestro caso ste debe limitarse entre las posiciones 1 y 4, donde existe cadena binaria). Si conseguimos, por ejemplo, un 3 al azar y contamos de derecha a izquierda, los padres quedaran divididos en dos subcadenas por el tercer bit: 10100 10|100 00111 00|111

PADRE 1 PADRE 2

Tab. 2.3: Cruce

Los hijos resultarn de una combinacin de estas cuatro subcadenas: el primer hijo contendr los tres primeros bits del Padre 1 y los dos ltimos del Padre 2, mientras el segundo hijo llevar la informacin relativa a los tres primeros bits del Padre 2 y los dos ltimos del Padre 1.

Hay que notar que en este mecanismo no se consideran como posibles puntos de cruce el bit 0 y el bit 5 (extremos de las cadenas), ya que tendramos

34

2. CONCEPTOS BSICOS DE LOS A.G.

PADRE1 PADRE 2 Hijo 1 .. | 100 + 00 | ... 00100 Hijo 2 10 | ... + .. | 111 10111

Tab. 2.4: Cruce

como hijos copias idnticas de los padres, lo que equivaldra a no haber cruce. Mutacin: El operador de mutacin, encargado de mutar alelos para conseguir una mayor riqueza gentica y no perder informacin, acta en nuestro algoritmo gentico bsico bajo una probabilidad de mutacin Pm jada de antemano (de valor muy bajo). Cada vez que generemos nuevas poblaciones, tras el mecanismo de cruce debemos correr el de mutacin para todos los alelos de cada individuo. Si se cumple Pm el alelo cambia de valor, de 0 a 1 y viceversa.

Fig. 2.9: Mutacin.


Supongamos uno de los individuos generados en el ejemplo del mecanismo de cruce bsico: 00100, mediante tiradas al azar chequeamos una posible mutacin en cada alelo con una Pm dada (por ejemplo de 0,01). Si se produce mutacin en el alelo 1 y en el 3, la cadena binaria quedara modicada como sigue: 00001, cambiando as el fenotipo del individuo (originalmente corresponda al valor 4; tras la mutacin ha pasado al valor 1). Esto habra que repetirlo con toda la poblacin generada.

2.1. ALGORITMOS GENTICOS

35

2.1.2.

Mecanismos Avanzados

Reescalado: Un problema frecuente en los algoritmos genticos es el de la convergencia prematura, donde se tiende a alcanzar un valor muy cercano al ptimo buscado en las primeras generaciones, para mantener despus este valor a lo largo de la simulacin sin llegar al mejor resultado posible. Este fenmeno es debido a una alta competitividad inicial entre individuos, permitiendo a aquellos con una salud excepcional dominar sobre el resto, y a un decremento de sta en generaciones posteriores, al irse hacinando la poblacin en intervalos cada vez ms reducidos. Contra esta convergencia prematura existen mecanismos de reescalado consistentes en modicar la salud de los individuos para optimizar en cada momento su competitividad, a n de lograr una solucin de equilibrio entre competitividad y eciencia. Reescalado lineal: es el ms utilizado y simple. La salud escalada viene denida por: (2.1) f = af + b con f la antigua funcin de salud. Siendo Cmult el nmero esperado de copias del mejor individuo de cada poblacin, las constantes a y b se eligen segn: f max = Cmult f media f media = f media (2.2) (2.3)

De esta manera reducimos el intervalo de salud en las primeras generaciones (disminuyendo su alta competitividad) y lo aumentamos en las ltimas (elevando la baja competitividad), logrando una mayor eciencia y retardando la convergencia. El problema del reescalado lineal aparece en aquellas situaciones en que es necesario disminuir la salud de individuos con una salud de por s baja respecto a la media. En este caso puede ocurrir que los nuevos valores escalados sean negativos. Para prevenir esto limitamos la salud escalada mnima a cero. Reescalado por desviacin tpica: sugerido por Forrest en 1985, utiliza la desviacin tpica de la poblacin para denir la funcin de reescalado: f = f ( f c ) (2.4)

36

2. CONCEPTOS BSICOS DE LOS A.G.

donde la constante c toma un valor mltiplo de la desviacin tpica , normalmente entre 1 y 3. Reescalado por potencias: Gilles, en 1985, experiment con otro mtodo de reescalado donde la salud escalada quedaba como potencia de la salud original: La variable k depende del problema en particular, siendo necesario modicarla a lo largo de la simulacin. Otros Mtodos de Seleccin Adems del mecanismo bsico de seleccin, implementado en el algoritmo gentico simple, existen otras versiones ms complejas y especializadas. Entre ellas cabe destacar:

Muestreo estocstico sin reemplazo: es el mtodo de seleccin experimentado por De Jong en su algoritmo de prueba R3, basado en valores esperados de seleccin. Muestreo determinstico: cada individuo es seleccionado un nmero de veces igual a la parte entera de su valor de copias esperado ( pseleccion n), completando la poblacin con aquellos individuos cuya parte fraccionaria de este valor sea mayor. Muestreo estocstico permanente con/sin reemplazo: tienen gran parecido al mtodo anterior (determinstico) aunque dieren en el modo de completar la poblacin de seleccin. En el muestreo estocstico permanente con reemplazo la parte fraccionaria del valor esperado de copias sirve para calcular el peso que cada individuo tendr en una seleccin bsica por ruleta. Por otra parte, en el muestreo estocstico permanente sin reemplazo, estas partes fraccionarias se utilizan directamente como probabilidades de seleccin a la hora de completar la poblacin. Muestreo estocstico por competicin: sugerido a Brindle por Wetzel en 1983. Inicialmente se realiza una seleccin de pares de individuos por el mecanismo bsico, calculando las probabilidades de seleccin de la manera habitual, para despus introducir en la nueva poblacin el individuo con mayor salud de cada pareja, desechando el otro. Aunque Brindle en sus estudios no pudo concluir cul de los anteriores era

2.1. ALGORITMOS GENTICOS

37

el mejor mtodo (todos tenan parecida eciencia, aunque siempre superior al mecanismo bsico de seleccin), Booker (1982) demostr en investigaciones sobre aprendizaje automtico la superioridad del muestreo estocstico permanente sin reemplazo.

Representacin Dual y Dominancia Si observamos la naturaleza gran parte de las especies asocian su genotipo a un par de cromosomas, donde ciertos alelos (dominantes) dominan sobre otros (recesivos), de manera que el fenotipo se determina por combinacin de estos dos cromosomas y por predominio de alelos. Esta representacin dual permite a los individuos tener memoria de informacin gentica pasada, y que puede ser de utilidad en cualquier otro momento. La dominancia se encarga de seleccionar de entre esta informacin la que se precisa en el momento actual. As, si se produjera un cambio brusco en el medio ambiente de una especie, ciertas combinaciones genticas que la sirvieron en el pasado podran ser de nuevo las que determinasen su supervivencia. En el siguiente ejemplo hemos representado los dos cromosomas que denen al individuo como una cadena de genes que pueden tomar valores dominantes (G mayscula) o recesivos (g minscula). El nmero que los acompaa marca su posicin dentro del cromosoma .
Cromosoma 1: {... g4 G3 G2 g1} Individuo Cromosoma 2: {... G4 g3 G2 g1} dominacin {G4 G3 G2 g1 } (Crom. expresado)

E1 cromosoma expresado es aquel que resulta de combinar el cromosoma 1 y el 2 aplicando el mecanismo de dominacin: G4 del cromosoma 2 domina frente a g4 del cromosoma 1, resultando que en la posicin 4 del cromosoma expresado tendremos G4 En el caso de los genes de la posicin 1 los dos son recesivos por lo que no dominara ninguno de ellos, resultando que el primer gen del cromosoma expresado sera el g1. La representacin dual es de gran efectividad en entornos cambiantes con el tiempo, donde aumenta la eciencia y adaptacin del algoritmo, mientras en entornos invariables no se perciben cambios signicativos con el uso de este mecanismo gentico. En la historia de los algoritmos genticos, estos operadores fueron utilizados por Bagley, Hollstien, Holland y Brindle. Bagley incluy en cada gen de la pareja de cromosomas un indicador de dominacin junto a la informacin codicada del fenotipo del individuo. Hollstien

38

2. CONCEPTOS BSICOS DE LOS A.G.

(1971) desarroll un sistema de dominacin triallico para cdigos binarios introduciendo tres alelos, el 1, equivalente a un 1 dominante, el -1, equivalente a un 1 recesivo y el 0 que tambin es recesivo. El mapa de dominacin es el siguiente: 0 0 0 -1 0 1 1 -1 0 1 1 1 1 1 1

Tab. 2.5: Mapa de dominacin.

Brindle experiment con otros modelos de dominacin: Dominacin variable y global: la probabilidad de dominacin de un 1 0 se determina a partir de su proporcin en la poblacin actual. Con estas probabilidades y mediante pruebas de Bernouilli obtenemos los alelos resultantes para cada gen de los cromosomas. Dominacin determinstica. variable y global: el alelo dominante es aquel con mayor proporcin en la poblacin actual. Seleccin aleatoria de un cromosoma: se seleccionan como alelos dominantes en sus respectivas posiciones todos los de un cromosoma elegido al azar de entre la poblacin. Dominacin del mejor cromosoma : de cada pareja de cromosomas de un individuo tomamos como alelos dominantes los de aquel cromosoma con mayor salud. Dominacin controlada por un tercer cromosoma: el mapa de dominacin se incluye para cada individuo en un tercer cromosoma, de manera que se pueda adaptar en las sucesivas generaciones. Este modelo tiene el inconveniente de no tener en cuenta las relaciones que pudieran establecerse entre los genes funcionales (correspondientes al genotipo) y aquellos que determinan la dominacin. En los sistemas biolgicos las leyes que rigen qu alelos y en qu momento son dominantes/recesivos estn ntimamente ligadas a la informacin gentica del individuo, y por tanto resulta inadecuado separar los genes de dominacin de los funcionales.

2.1. ALGORITMOS GENTICOS

39

Inversin: El operador de inversin acta permutando las posiciones de los genes dentro de las cadenas codicadas de informacin que representan a los individuos. Se trata de un mecanismo de reordenacin que intenta encontrar las mejores combinaciones posicionales de alelos, evitando la prdida de informacin. Su implementacin en los algoritmos genticos consiste en invertir la posicin de un par de alelos seleccionados a partir de puntos de cruce. As, elegimos al azar dos puntos de inversin de la cadena binaria, que queda dividida en tres subcadenas, permutando las posiciones del primer y ltimo alelo de la cadena central.
Cromosoma: puntos de cruce { . . . g6 | g5 g4 g3 | g2 g1 } {...1|011|10} inversin { ... g6 | g3 g4 g5 | g2 g1 } { ... 1 | 1 1 0 | 1 0 }

Hay que notar que, aunque debido al cdigo de representacin utilizado en nuestro algoritmo gentico la inversin modica el fenotipo del individuo, en los sistemas naturales la informacin contenida en los genes es independiente de su posicin en el cromosoma y la inversin no tiene efecto alguno sobre su salud. Un problema asociado al mecanismo de inversin en cdigos binarios es el de cruce entre cromosomas no homlogos. Si cruzamos dos cromosomas no homlogos a los que se haya aplicado la inversin, puede ocurrir que las cadenas resultantes no contengan el mapa gentico completo, reduciendo as la efectividad del mecanismo de cruce.
Cromosoma 1 (invertido): { ... g6 g3 | g4 g5 g2 g1 } Cruce Cromosoma 2 (invertido): { ... g6 g5 | g3 g4 g2 g1 } {. . . g6 g5 g4 g5 g2 g1 } {. . . g6 g3 g3 g4 g2 g1 }

En este ejemplo, debido a la recombinacin de los genes por la inversin, los cromosomas resultantes tras el cruce no contienen a todos los genes (del g1 al g7) sino que algunos se encuentran repetidos. As, podemos haber perdido informacin dado que estos cromosomas no poseen el mapa gentico completo. Bagley (1967) propuso restringir los cruces a cromosomas homlogos para evitar este efecto indeseado. En 1972 Frantz estudi dos modelos de inversin en funciones con distintos grados de no linealidad:

Inversin lineal: inversin simple (anteriormente explicada).

40

2. CONCEPTOS BSICOS DE LOS A.G.

Inversin lineal y extrema: asign una probabilidad de 0,75 a la inversin lineal, si sta no se cumpla poda suceder una inversin de los alelos extremos del cromosoma (primero y ltimo) con probabilidad 0,125. Esta variante intentaba contrarrestar el hecho de que la inversin tiende a permutar alelos centrales frente a los situados cerca de los extremos. Frantz utiliz estos modelos segn dos modos de funcionamiento: Inversin continua: el mecanismo de inversin se activa segn una cierta probabilidad pj y se aplica a cada nuevo individuo en cuanto es generado. Inversin masiva: no se aplica la inversin hasta que se ha generado toda la poblacin, para despus utilizar los dos mismos puntos de cruce (inversin simple) en la mitad de sta. Para evitar los problemas de cruce entre cromosomas no homlogos, Frantz experiment con cuatro sistemas: Cruce restringido: limitamos el cruce, tal como Bagley sugiri, a cromosomas homlogos. Cruce por viabilidad: no se restringe el cruce, aunque si las cadenas resultantes no incluyen todo el mapa gentico se desechan. Cruce por patrones: tras seleccionar dos cromosomas se aplica la inversin a uno de ellos (al azar), y segn el patrn de ste se invierte el segundo. El cruce se realiza, posteriormente, de la manera habitual. Cruce por patrn del mejor cromosoma: parecido a la variante anterior, pero el cromosoma que dene el patrn de inversin es el de mayor salud.

2.2.

Algoritmos Genticos con parmetros continuos

Esta tcnica ha tenido en los ltimos aos una gran difusin y resuelve el problema de la cuantizacin que se daba en los algoritmos tradicionales. Con la codicacin binaria en los algoritmos genticos es que normalmente no se aprovecha toda la precisin del ordenador. Cada parmetro necesita muchos bits para representarlo completamente. Que se puede hacer si se quiere usar toda la precisin posible? Una posible respuesta es representar los parmetros en coma otante. Cuando la variable es continua, sta es la manera ms natural de representar los nmeros. Adems se tiene la ventaja de que se requiere un menor tamao de memoria que para el almacenamiento en binario.

2.2. ALGORITMOS GENTICOS CON PARMETROS CONTINUOS

41

Uno puede, en principio, utilizar cualquier representacin concebible para representar los parmetros. Cuando los parmetros estn naturalmente cuantizados, los algoritmos genticos binarios se ajustan bien al problema. Sin embargo, cuando los parmetros son continuos es mas lgico representarlos por nmeros en coma otante. Adems, como los algoritmos genticos binarios tienen su representacin limitada a la representacin binaria de los parmetros, utilizando nmeros reales se consigue la precisin de la mquina de manera sencilla. Otra de las principales ventajas de los algoritmos genticos con parmetros continuos es la rapidez, ya que los operadores no suelen trabajar a nivel de bit como en el caso binario, sino que se trabaja a nivel de todo el nmero en coma otante: Seleccin Se ordenan los cromosomas con arreglo a su salud y nos quedamos con los mejores miembros de la poblacin. Cruce En los mtodos ms simples se escogen uno o ms puntos en el cromosoma para marcar los puntos de cruce. Entonces los parmetros entre estos puntos simplemente se intercambian entre los dos padres. Mutacin Con una cierta probabilidad, que suele estar comprendida entre un 1 % y un 20 % se seleccionan los cromosomas que van a ser mutados. A continuacin se seleccionan aleatoriamente los parmetros del cromosoma que van a ser mutados. Finalmente cada parmetro a mutar es reemplazado por otro nuevo parmetro aleatorio o bien se le suma otro nuevo parmetro aleatorio.

42

2. CONCEPTOS BSICOS DE LOS A.G.

3. ESTUDIO MATEMTICO DE LOS A.G.


Es natural modelar los Algoritmos Genticos como procesos o cadenas de Markov en los que el estado de un Algoritmo Gentico est dado por el contenido de la poblacin actual. Uno puede imaginar el espacio de estados de todas las posibles poblaciones y estudiar las caractersticas de las trayectorias de la poblacin (las cadenas de Markov) que un Algoritmo Gentico produce a partir de poblaciones generadas aleatoriamente.

3.1.

Introduccin a los procesos de Markov

Consideremos un proceso que puede ser descrito en cada paso por uno de los N estados distintos i 1 , i 2 , . . . , i N . En cada paso el sistema puede cambiar de estado (o permanecer en el mismo) de acuerdo con un conjunto de probabilidades de transicin. Cuando estas probabilidades slo dependen del estado de partida y de llegada y no de los estados anteriores, se dice que el proceso es de Markov. Denicin 3.1.1: Un proceso estocstico {X k }, k=1,2,... con un espacio de estados S = {i 1 , i 2 , i 3 , . . . i N } es un proceso (cadena) de Markov si para cada n y todos los estados i 1 , i 2 , . . . , i N es cierto que p(X n = i n |X n1 = i n1 , ..., X 1 = i 1 ) = p(X n = i n |X n1 = i n1 ) Esta propiedad es equivalente a la ecuacin p(X 0 = i 0 , . . . , X n = i n ) = p(X 0 = i 0 ) p(X 1 = i 1 |X 0 = i 0 ) . . . p(X n = i n |X n1 = i n1 ) (3.2) y tambin a la ecuacin p(AB|X n = j) = p(A|X n = j) p(B|X n = j) (3.3) (3.1)

44

3. ESTUDIO MATEMTICO DE LOS A.G.

donde A es un suceso arbitrario denido por los resultados de los pasos 0, 1, . . . , n 1 y B es un suceso denido por los resultados de los pasos n + 1, n + 2, . . . . Esta ecuacin se describe a menudo como la independencia entre el futuro y el pasado si el presente es conocido. En el caso de la caso de las cadenas de Markov, el sistema est descrito por una matriz P de dimensiones N N que da la probabilidad de transitar del estado i en el tiempo t 1 al estado j en el tiempo t. P(i, j)(t) = pi, j (t) = P(X t = j|X t1 = i) (3.4)

donde X t es la variable aleatoria de la cadena de Markov. Los valores pi, j (t) denen la matriz P(i, j)(t) de probabilidad de transicin de un estado a otro en un paso de tiempo. Denicin 3.1.2: La probabilidad de ir del estado i al estado j en el paso t se llama probabilidad de transicin pi j (t). Si la probabilidad de transicin es independiente de t, la cadena de Markov de llama homognea. Vamos a estudiar solamente cadenas de Markov homogneas en un espacio S = {i 1 , i 2 , . . . , i n } nito, por tanto, las probabilidades de transicin vienen dadas por una matriz de transicin P = ( pi j ) que verica pi j 0, i = 1, 2, . . . , n, j = 1, 2, . . . , n. A las matrices con estas propiedades se las denomina estocsticas. La matriz de transicin en n pasos es la n-sima potencia de P:
(n) (n) Pi, j = pi, j = P(X t = j|X tn = i)

(3.5)

Se verica la ecuacin
(n+m) pi, j = k (n) (m) pi,k pk j , n 0, m 0

(3.6)

que es llamada ecuacin de Markov. Tambin puede ser escrita en forma matricial como (3.7) P (m+n) = P (m) P (n) Es tambin posible calcular las probabilidades condicionales sobre un conjunto de estados J :
(n) pi,J = p(X t J |X tn = i) = jJ (n) pi, j

(3.8)

3.2. CLASIFICACIN DE ESTADOS

45

3.2.

Clasicacin de estados

Denicin 3.2.1: Un estado j es accesible desde un estado i cuando se puede ir de i a j en un nmero nito de pasos. Desde el punto de vista de la matriz de transicin, esta denicin implica i j si para algn n, Pi(n) > 0. j i j si para algn n y algn m, Pi(n) > 0 y Pi(m) > 0. j j En ste ltimo caso se dice que los estados i y j se comunican. Proposicin 3.2.1: La relacin de comunicacin es una relacin de equivalencia. 1. Reexividad: i j, ya que pi(0) = i j . j 2. Simetra: Si i j entonces j i . Es inmediato, a partir de la denicin. 3. Transitividad: Si i j y j k entonces i k . Tambin es aplicacin inmediata de la denicin. Denicin 3.2.2: Si una cadena de Markov tiene todos sus estados en la misma clase de equivalencia, se dice que es irreducible. En una cadena de Markov irreducible hay una probabilidad positiva de un estado a cualquier otro estado. Denicin 3.2.3: Una cadena de Markov es aperidica si el mximo comn divisor de m para P m (i, j) > 0, x es 1. El complementario es llamado cadena de Markov peridica, y en tales procesos existen estados que no comunican para ciertos nmeros de pasos.

46

3. ESTUDIO MATEMTICO DE LOS A.G.

Denicin 3.2.4: Una cadena que es a la vez aperidica e irreducible se llama regular. Denicin 3.2.5: Un estado se llama transitorio si hay una probabilidad positiva de que el proceso no vuelva al estado i.
(n) Denicin 3.2.6: f ii = probabilidad de que empezando en el estado i, el proce-

so vuelva a i por primera vez en n pasos. Denicin 3.2.7:


f ii

=
n=1

(n) f ii

(3.9)

Denicin 3.2.8: Un estado se llama recurrente cuando el regreso a l es el suceso seguro. Denicin 3.2.9: La esperanza matemtica del nmero de pasos que se necesitan para volver al mismo estado se llama tiempo de recurrencia.

i =
n=1

(n) n f ii

(3.10)

Denicin 3.2.10: Un estado es absorbente cuando Pii = 1. Est claro que si un estado es absorbente, entonces es recurrente.

3.3.

Algoritmos Genticos y Cadenas de Markov

Los algoritmos genticos ms sencillos y extendidos consisten en una poblacin de n cadenas de bits de longitud l, a la que aplicamos los operadores de seleccin, mutacin y cruce. Sea N el nmero de posibles poblaciones. El nmero de posibles cadenas es r = 2l . Vamos a considerar el algoritmo gentico como cadena de Markov, para lo cual cada estado va a estar formado por (x1 , x2 , ..., xr ), siendo xi el nmero de

3.3. ALGORITMOS GENTICOS Y CADENAS DE MARKOV

47

soluciones de tipo i en la poblacin en el tiempo t. Se debe cumplir que x1 + ... + xr = N , siendo N el nmero de elementos de la poblacin. El espacio muestral ser S[l] = X = (x1 , x2 , ..., xr ) : x1 + ... + xr = N y xi N, i = 1, ..., l (3.11) N +r 1 , siendo Proposicin 3.3.1: El cardinal de S[l] es (S[l]) = r 1 l. r =2

Tab. 3.1: El nmero de estados N como funcin de l y P.


Longitud de la cadena (l) P 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 9 2 4 10 20 35 56 84 120 165 220 286 3 8 36 120 330 792 1716 3432 6435 11440 19448 4 16 136 816 3876 15504 54264 170544 490314 1307504 3268760 5 32 528 5984 52360 376992 2324784 12620256 61523748 273438880 1121099408

9 10 10 11

Desafortunadamente, el tamao N N de la matriz Q para las aplicaciones tpicas es inmanejable ya que el nmero de estados N crece rpidamente con la poblacin P y la longitud de la cadena l. Las poblaciones posibles vienen descritas por la matriz Z , que es una matriz N r . La i-sima la i = z i,0 , . . . , z i,r 1 de Z es el vector de incidencia de la poblacin i-sima. En otras palabras, z i,y es el nmero de veces que aparece la

48

3. ESTUDIO MATEMTICO DE LOS A.G.

cadena y en la poblacin i-sima, donde y es la representacin entera de la cadena binaria. Por ejemplo, supongamos l = 2 y P = 2. Entonces r = 4, N = 10, y la matriz Z sera la que se muestra en la tabla 3.2

Tab. 3.2: La matriz Z para l = 2 y P = 2.


Cadena binaria Estado P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 00 01 0 0 0 0 0 0 1 1 1 2 0 0 0 1 1 2 0 0 1 0 10 0 1 2 0 1 0 0 1 0 0 11 2 1 0 1 0 0 1 0 0 0

Nix y Vose denieron dos operadores matemticos, F y M, donde F viene determinado por la funcin de salud, y M depende del coeciente de mutacin , el coeciente de recombinacin y de la forma de mutacin y recombinacin usada (en su artculo suponen que el operador de mutacin es el estndar (bitipping) y que la recombinacin se hace por un slo punto y que produce un nico descendiente). Con F y M denidos, es posible calcular la probabilidad de transicin pi j desde el estado i al estado j como
r 1

Q(i, j) = pi j = P!
y=0

z jy F i |F i | y

z jy!

(3.12)

Esto es, dados F y M, pi j especica qu tan probable es que un Algoritmo Gentico en estado i pase a estado j en la siguiente generacin. Se puede ver en esta

3.4. CONVERGENCIA Y COMPORTAMIENTO ASINTTICO

49

ecuacin que se ha supuesto que la seleccin se hace de manera proporcional a la salud. Si el coeciente de mutacin no es cero, todos los estados tienen probabilidad no cero de ser alcanzados.

3.4.

Convergencia y Comportamiento Asinttico

Se puede conservar el mejor elemento de una generacin e introducirlo en la siguiente de forma automtica (elitismo) o bien hacer que los operadores de mutacin y cruce sean elitistas. El operador de mutacin se dice que es elitista cuando se escoge para la nueva generacin el individuo con mejor salud entre el original y el mutado. El operador cruce es elitista cuando se escoge para la nueva generacin el individuo de mejor salud, entre los dos padres y los dos hijos del cruce. El operador seleccin utiliza como funcin de probabilidad la razn entre la salud del individuo y la salud global y se suele denominar salud proporcional, P(bi ) = f (bi ) n i=1 bi

donde f es una funcin positiva y por tanto, P(bi ) > 0, i = 1, ...N . Si consideramos solamente el operador seleccin, se puede comprobar que: Teorema 3.4.1: Sea b* el punto de la poblacin con mayor salud, b = arg mK f (bi )/bi Pt }. ax{ Entonces p(k) (0, ..., 0, N , 0, ..., 0).
k

(3.13)

Siendo p(k) =vector de distribucin de probabilidad y N ocupa la posicin i. Utilizando los tres operadores, seleccin, mutacin y cruce, en la forma usual tenemos que: Teorema 3.4.2: Todos los estados de S[k] son recurrentes.

50

3. ESTUDIO MATEMTICO DE LOS A.G.

Para comprobarlo basta darse cuenta de que mediante el operador mutacin se puede pasar de un estado a otro cualesquiera, es decir, p(X i , X j ) > 0. Esto es tanto como decir que la cadena es irreducible. Teorema 3.4.3: Consideremos una cadena de Markov X t en el espacio de estados S, con probabilidad de transicin P(i, j). Si la cadena de Markov es regular entonces existe una nica distribucin de probabilidad ( j), j S tal que
m

K lm Pr ob(X m = j|X 0 = i) = ( j) > 0, j S

(3.14)

o en trminos de la matriz de probabilidad a m pasos P m lim m P m (i, j) = ( j) > 0, j S (3.15)

Esta distribucin lmite se llama distribucin estacionaria de la cadena de Markov, y ( j) puede ser vista como la probabilidad de estar a largo plazo en el estado j. Proposicin 3.4.1: Como todos los estados son accesibles, el algoritmo no converge, aunque la distribucin de probabilidad se estabiliza en el tiempo. Podemos plantearnos qu debemos hacer para asegurar que el algoritmo converge al punto ptimo. Esto es tanto como decir que debe haber dos clases: una absorbente formada por todos los elementos de la poblacin iguales al ptimo y la otra clase formada por todas las dems conguraciones. Para conseguir esto basta asegurar que el mejor elemento de una generacin siempre pasa a la generacin siguiente, es decir es necesario introducir elitismo. Supongamos que nuestro operador de mutacin es elitista, es decir, que se muta al individuo y se escoge al de mayor salud entre el antiguo y el nuevo. Supongamos tambin que el operador de cruce es elitista , es decir, que cruzamos los dos elementos elegidos y escogemos para la nueva poblacin el individuo mejor de los cuatro (los dos padres y los dos hijos). Proposicin 3.4.2: Si los operadores de mutacin y cruce son elitistas, entonces la cadena de Markov est formada por una clase absorbente formada por X = (0, 0, ..., 0, N , 0, ..,0) donde N ocupa la posicin de la solucin ptima y otra clase que es transitoria formada por los dems estados.

3.4. CONVERGENCIA Y COMPORTAMIENTO ASINTTICO

51

Corolario 3.4.1: En este caso podemos asegurar que el algoritmo converge a la solucin ptima. Es decir, que si utilizamos un algoritmo gentico con mutacin y cruce elitistas, tenemos asegurado que el algoritmo converge al punto ptimo del espacio, ya que hay una clase absorbente correspondiente al punto ptimo y otra clase transitoria formada por todos los dems puntos.

52

3. ESTUDIO MATEMTICO DE LOS A.G.

4. MTODO DE OPTIMIZACIN GENTICA RESTRINGIDA (RGO)


4.1. Introduccin

Los algoritmos para la optimizacin de funciones estn limitados generalmente a funciones regulares y unimodales. Sin embargo, muchas funciones son multimodales, discontinuas y no diferenciables. Para optimizar este tipo de funciones se han empleado mtodos de muestreo estocstico. Mientras que las tcnicas tradicionales de bsqueda utilizan caractersticas del problema para determinar el siguiente punto muestral (por ejemplo, gradientes, Hessianos, linealidad, y continuidad), las tcnicas de bsqueda estocstica no hacen tales suposiciones. En cambio el siguiente punto (o puntos) se determina basndose en reglas de muestreo y decisin estocsticas, en vez de reglas de decisin determinsticas. Los algoritmos genticos han sido usados para resolver problemas difciles con funciones objetivo que no poseen buenas propiedades, tales como continuidad, diferenciabilidad, condicin de Lipschitz, etc) [Davis [23], Goldberg [37], Holland [47], Michalewicz[86]]. Estos algoritmos mantienen y manipulan una familia, o poblacin, de soluciones e implementan una supervivencia de los mejor adaptados como estrategia de bsqueda de mejores soluciones. Esto provee un paralelismo implcito y explcito que permite la explotacin de varias regiones prometedoras al mismo tiempo. El paralelismo implcito es debido a la teora de esquemas desarrollada por Holland, mientras que el paralelismo explcito es debido a la manipulacin de una poblacin de puntos (la evaluacin de la salud de estos puntos es fcil de realizar en paralelo). Un problema que ha sido poco estudiado en la literatura de optimizacin es el de la optimizacin dinmica, es decir de funciones que varen con el tiempo. Este es un problema especialmente interesante para la Teora de Control, puesto que, en mayor o menor medida, los sistemas con los que trabajamos varan con el tiempo, adems de presentar los problemas anteriores.

54

4. MTODO DE OPTIMIZACIN GENTICA RESTRINGIDA (RGO)

4.2.

Caractersticas de los Algoritmos Genticos

Para realizar esta optimizacin de funciones objetivo que no poseen buenas propiedades y que adems varan con el tiempo hemos considerado que el mejor punto de partida eran los algoritmos genticos. Sobre estos algoritmos se pueden realizar una serie de modicaciones para la optimizacin de las funciones que nos interesan. Las caractersticas principales de los algoritmos genticos son: Los algoritmos genticos no trabajan directamente con los objetos, sino con la codicacin de esos objetos, que pueden ser un nmero, un conjunto de parmetros, etc. A esta codicacin le llamamos cromosoma. La optimizacin se puede realizar con parmetros continuos o discretos. Los algoritmos genticos realizan la bsqueda mediante toda una generacin objetos, no buscan un nico elemento. Los algoritmos genticos utilizan una funcin objetivo que nos da la informacin de lo adaptados que estn los individuos, y no las derivadas u otra informacin auxiliar. Las reglas de transicin son probabilsticas, no determinsticas. Optimizan parmetros con supercies de coste extremadamente complejas. Pueden saltar fuera de un mnimo o mximo local. Trabajan con datos generados numricamente, datos experimentales o funciones analticas.

4.3.

Optimizacin Gentica Restringida (RGO)

En la literatura, el uso de los algoritmos genticos como mtodo de optimizacin se hace off-line y el tiempo utilizado es bastante grande. Hemos utilizado nuevos mecanismos para usarlos como lo hace la Naturaleza: on-line y de una manera local o semi-local. Hemos demostrado que los algoritmos genticos se pueden usar como un mtodo aceptablemente rpido de optimizacin de funciones que varen con el tiempo. Usualmente los algoritmos genticos se usan como un mtodo de bsqueda global y en paralelo. Se evalan simultneamente muchos puntos, aumentando la probabilidad de encontrar el ptimo global.

4.3. OPTIMIZACIN GENTICA RESTRINGIDA (RGO)

55

En optimizacin de funciones que varan con el tiempo, esta caracterstica es interesante en las primeras generaciones, para encontrar la cuenca de atraccin correcta, pero no es interesante despus y adems consume mucho tiempo de cmputo. Por esta razn, es deseable un mtodo que funcione como mtodo de optimizacin global en las primeras etapas, para encontrar la cuenca de atraccin correcta y que posteriormente se comporte como un mtodo de optimizacin local o semilocal. Sera deseable tambin que tuviera propiedades parecidas a las de los mtodos basados en el gradiente, pero sin los inconvenientes de que sea necesaria la existencia de derivadas y su sensibilidad al ruido. Los algoritmos para la optimizacin de funciones estn generalmente limitados a funciones regulares convexas. Sin embargo muchas funciones son multi-modales, discontinuas, y no diferenciables. Mientras que los mtodos tradicionales de bsqueda utilizan caractersticas del problema para determinar el siguiente punto (gradientes, hessianos, linealidad, y continuidad) la bsqueda gentica no hace estas suposiciones. Cuando queremos optimizar funciones que varan con el tiempo las cosas se complican an ms porque necesitamos un mtodo que sea lo sucientemente rpido para seguir las variaciones de los puntos ptimos de la funcin.

4.3.1.

RGO

En el mtodo de bsqueda restringida se realiza la bsqueda en un entorno del punto correspondiente al ltimo modelo identicado y se toma el punto mejor adaptado como centro del entorno de bsqueda de la nueva generacin. A continuacin se vuelve a tomar el individuo con mejor salud como centro del nuevo entorno de bsqueda y as sucesivamente. Cada cromosoma corresponde al vector diferencia con respecto al centro del entorno, para hacer un algoritmo de bsqueda que trabaje incrementalmente. El centro tambin se introduce en la siguiente generacin (es la cadena formada por ceros). El punto correspondiente al mejor de cada generacin y que se va a guardar como centro del entorno de la generacin siguiente se guarda aparte de la generacin y representando coordenadas absolutas.. Para evaluar la funcin de salud, consideramos el centro del entorno ms la decodicacin de cada uno de los cromosomas. Es decir, el mtodo trabaja de un modo incremental. Este comportamiento pretende simular el mtodo del gradiente, pero sin utilizar derivadas y puede ser utilizado cuando las seales tienen mucho ruido.Vamos teniendo nuevas generaciones orientadas en la direccin de mayor decrecimiento de la funcin de coste, y con una distancia al centro prxima

56

4. MTODO DE OPTIMIZACIN GENTICA RESTRINGIDA (RGO)

I 1

C
I2 I
3

Trayectoria de los parametros

Fig. 4.1: Mecanismo de bsqueda de la Optimizacin Gentica Restringida.

a la correspondiente a la velocidad de cambio del sistema. Podemos hacer una bsqueda en un entorno grande al principio y despus reducir su radio. De hecho se realiza una bsqueda global al principio y local al nal. De esta forma se reduce la probabilidad de encontrar un mnimo local. El radio se ha tomado proporcional a la incertidumbre de la estimacin con extremos superior e inferior. La manera de calcular la incertidumbre depende de la aplicacin que se hace de la optimizacin, por ejemplo, en el caso de la estimacin de estados, usamos la distancia de Mahalanobis 6.43 d = (x(k|k 1) x(k 1|k 1)) P 1 (k|k)(x(k|k 1) x(k 1|k 1)) (4.1)

que mide la incertidumbre de la estimacin x(k). En el caso de la identicacin de sistemas el radio se ha tomado proporcional al criterio MDL (Minimum Description Length) con extremos superior e inferior. Tambin se pueden utilizar otros criterios como el AIC (Akaikes Information theoretic Criterion) o el FPE (Final Prediction-Error criterion)(ver Ljung[74]). En nuestro algoritmo hemos implementado los siguientes operadores: reproduccin, cruce, mutacin, elitismo, inmigracin, ranking y bsqueda restringida. Hemos utilizado el mecanismo de ranking para regular el nmero de descendientes que un individuo puede tener, porque si un individuo es muy bueno, puede tener demasiados descendientes y hacer que la diversidad gentica descienda mucho.

4.4. ALGORITMO

57

En caso de que el sistema vaya variando rpidamente en el tiempo, podemos incluir los mecanismos de reescalado, dominancia triallica e inmigracin. Este mecanismo se ha implementado utilizando como funcin de salud Fn (i) = bu f f 1 2 k=1 (ynk y n k) es la funcin de prdida (loss cte+Vn (i) , donde Vn (i) = function) y te"es una constante sucientemente grande (108 ). Es importante destacar que el mtodo RGO realiza la bsqueda con ms nfasis en una direccin preferente, la direccin de mxima pendiente y a una distancia preferente Este hecho permite reducir la bsqueda de 50 100 dimensiones a 1 2. Por sta razn ste mtodo es comparable al mtodo del gradiente en precisin y velocidad, con la ventaja de que es aplicable cuando las expresiones no don diferenciables y las seales contienen ruido.

4.4.

Algoritmo

1. Se obtiene un primer conjunto de datos. 2. Se crea la poblacin inicial para deducir el tipo y las caractersticas del sistema. 3. Se evala la salud de los individuos. 4. Se hallan las caractersticas del sistema, por ejemplo, en el caso de identicacin, nos interesan el tiempo de retardo y el orden, o tambin nos puede interesar la eleccin de modelo. 5. Se recogen datos u(k), y(k). 6. Se obtiene una primera estimacin del modelo utilizando mnimos cuadrados extendidos o alguna otra tcnica. 7. Hacemos k = 1 8. Se crea la poblacin inicial, tomando los individuos como diferencia respecto al modelo anterior. 9. Se evala la salud de los individuos. 10. Comienzo del bucle. 11. Se aplican los mecanismos de seleccin, cruce y mutacin. 12. Se clona el mejor individuo de la generacin anterior.

58

4. MTODO DE OPTIMIZACIN GENTICA RESTRINGIDA (RGO)

Los distintos puntos representan los posibles cambios respecto del estimador, que es el centro de la bola.

Las bolas representan las regiones de bsqueda de las distintas iteraciones

Regin de bsqueda con radio proporcional a la incertidumbre

Evolucin del Sistema

Fig. 4.2: Mecanismo de seguimiento de la Optimizacin Gentica Restringida.

13. Aplicamos el mecanismo de inmigracin. 14. Se evala la salud de los individuos de la nueva generacin. 15. Seleccionamos el individuo que optimiza el criterio deseado K k = arg mn VN ().

(4.2)

16. Sumamos el mejor individuo al modelo previo. 17. Calculamos la incertidumbre para utilizarla en el clculo del nuevo radio de la regin de bsqueda. 18. Se recogen datos u(k), y(k). 19. Hacemos k = k + 1 y repetimos los pasos 10-19.

4.5. CARACTERSTICAS DE LA RGO

59

4.5.

Caractersticas de la RGO
Se pueden utilizar como mtodo de optimizacin en una bola de radio que vaya variando segn la incertidumbre de las estimaciones, con lo que evitamos buscar en una regin excesivamente amplia como hacen los mtodos de bsqueda global y evitamos la posibilidad de caer en un ptimo local como hacen los mtodos de optimizacin local. ste mtodo est especialmente pensado para utilizarlo en la optimizacin de funciones variantes en el tiempo. Lo que permite usarlo en la identicacin de sistemas, ya sea en la forma de la funcin de transferencia o en variables de estado y para la estimacin de estados por medio de un ltro de Kalman Generalizado.

60

4. MTODO DE OPTIMIZACIN GENTICA RESTRINGIDA (RGO)

Llenar el buffer con los datos u(k) e y(k) Crear la poblacin inicial Evaluar la salud de cada individuo Hallar las caractersticas del sistema: por ejemplo, tiempo de retardo, orden, etc. mediante algoritmos genticos. Encontrar las caractersticas del sistema: orden, retardo, etc.

Recoger datos:u(k),y(k) Calcular un primer modelo utilizando un mtodo previo: por ejemplo, mnimos cuadrados extendidos

Encontrar un primer modelo de partida

Recoger datos:u(k),y(k) Crear la poblacin inicial, tomando como individuos la diferencia al modelo previo Evaluar la salud inicial de los cromosomas

Aplicar los mecanismos de seleccin, cruce y mutacin Clonar el mejor de la generacin anterior Aplicar el mecanismo de inmigracin Evaluar la salud de los individuos de la nueva generacin Seleccionar el mejor cromosoma Sumar el mejor individuo al modelo previo Calcular la nueva incertidumbre como radio de la regin de bsqueda Recoger datos:u(k),y(k) Mejorar el modelo y hacer seguimiento del sistema

Fig. 4.3: Diagrama de ujo de la Optimizacin Gentica Restringida RGO

5. IDENTIFICACIN DE SISTEMAS NO LINEALES


5.1. Introduccin

La identicacin de sistemas no lineales mediante modelos lineales o no lineales es un trabajo difcil y complicado. La mayora de las veces debemos partir de los conocimientos humanos sobre la dinmica del sistema. La identicacin posterior de los parmetros la realizamos a mano, utilizando las propiedades heursticas de cada familia de modelos. Los mtodos ms usuales en la identicacin de sistemas estn basados en mnimos cuadrados o en el mtodo de mxima verosimilitud que son mtodos locales guiados por el gradiente y necesitan una funcin de prdidas (loss function) diferenciable y un espacio de bsqueda suave. A menudo fallan en la bsqueda de un ptimo global cuando el funcional no es diferenciable o es no lineal en sus parmetros. Esto tiene el inconveniente de que si las seales tienen ruido coloreado, como suele ser habitual en la prctica, los mtodos basados en mnimos cuadrados tienen el fracaso asegurado. Si adems estamos implementado el mtodo en lnea el ruido estar correlacionado con los regresores y el mtodo explotar, fenmeno conocido como blow-up. Para evitar esto en algunos casos sencillos, se puede usar un factor de olvido muy prximo a la unidad, pero en la mayora de los casos de sistemas no lineales variantes en el tiempo esta tcnica falla. A menudo fallan en la bsqueda de ptimos globales cuando ste espacio de bsqueda es no diferenciable, o no lineal en sus parmetros. Los mtodos de optimizacin basados en algoritmos genticos pueden mejorar los resultados porque no utilizan las propiedades de diferenciabilidad o de ser lineal en los parmetros. En 1992, Kristinsson y Dumont [69] hicieron un primer estudio de la identicacin de sistemas y del control off-line con algoritmos genticos de sistemas dinmicos continuos y discretos. Comprobaron que los algoritmos genticos son efectivos en ambos dominios y que es posible identicar directamente parmetros

62

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

fsicos, o bien, polos y ceros. Hicieron simulaciones con sistemas de fase mnima y no mnima y de un sistema con dinmica no modelada. En 1993, Flockton y White [27] utilizan los algoritmos genticos para hacer otra identicacin off-line de polos y ceros con algunas pequeas mejoras. Posteriormente, en 1995, Tan, Li y Murray-Smith [104] usan los algoritmos genticos con "simulated anneling"para hacer una identicacin off-line y la linealizacin de sistemas no lineales, invariantes del tiempo con un modelo ARMAX. Utiliza esta tcnica de bsqueda para identicar los parmetros de un sistema descrito por un modelo ARMAX en variables de estado, en presencia de ruido blanco y para aproximar un sistema no lineal multivariable por un modelo en el espacio de estados, lineal e invariante en el tiempo. En este mismo ao, Iba, deGaris y Sato [53] usan una tcnica numrica offline, que integra una bsqueda adaptativa de una estructura de rbol basada en programacin gentica y un mecanismo de ajuste local de parmetros empleando bsqueda estadstica. En la programacin gentica tradicional, la recombinacin causa frecuentes rupturas de los bloques de construccin y la mutacin puede causar abruptos cambios en la semntica. Para superar estas dicultades ellos implementan la programacin gentica tradicional con una bsqueda local "hillclimbing", usando un procedimiento de ajuste de parmetros. Todos estos mtodos trabajan off-line y precisan que el sistema sea invariante del tiempo. El ltimo adems utiliza un mtodo no paramtrico. Este captulo describe un mtodo de identicacin on-line de sistemas no lineales, variantes en el tiempo que tiene altas prestaciones. Hemos utilizado modelos OE, ARMAX y NARMAX como semillas para el mtodo RGO y se puede extender a otros modelos similares, como Box-Jenkins, el Lineal General, Modelos de Polos y Ceros o la descripcin en el Espacio de Estados, utilizando para ello optimizacin gentica restringida. Las principales diferencias del RGO con los anteriores mtodos es que ste trabaja en lnea, identica modelos lineales y no lineales, variantes en el tiempo y usa modelos paramtricos convencionales.

5.2.

Implementacin del Algoritmo

El mtodo realiza la bsqueda en un entorno del punto correspondiente al ltimo modelo identicado y toma el punto mejor adaptado como centro del entorno de bsqueda de la nueva generacin. Este ltimo punto se guarda aparte de la generacin. La codicacin de cada cromosoma corresponde al incremento con respecto al centro del entorno.

5.3. IDENTIFICACIN MULTIMODELO Y MULTIPARMETRO DE SISTEMAS NO LINEALES MEDIANTE MODELOS PARAMTRICOS LINEALES. 63

Para evaluar la funcin de salud, consideramos el centro del entorno ms la decodicacin de cada uno de los cromosomas. Es decir, el mtodo trabaja de un modo incremental. Este comportamiento simula el mtodo del gradiente sin utilizar derivadas y puede ser utilizado cuando las seales tienen mucho ruido. Vamos teniendo nuevas generaciones orientadas en la direccin de mayor decrecimiento de la funcin de coste, y con una distancia al centro prxima a la correspondiente a la velocidad de cambio del sistema. Podemos hacer una bsqueda en un entorno grande al principio y despus reducir su radio. De hecho se realiza una bsqueda global al principio y local al nal. Este mtodo reduce la probabilidad de encontrar un mnimo local. El radio se ha tomado proporcional al criterio MDL (Minimum Description Length) con extremos superior e inferior. Tambin se pueden utilizar otros criterios como el AIC (Akaikes information theoretic criterion) o el FPE (Final prediction-error criterion)(ver [74]). En nuestro algoritmo hemos implementado los siguientes operadores: reproduccin, cruce, mutacin, elitismo, inmigracin, ranking y bsqueda restringida. Hemos utilizado el mecanismo de ranking para regular el nmero de descendientes que un individuo puede tener, porque si un individuo es muy bueno, puede tener demasiados descendientes y hacer que la diversidad gentica descienda mucho. Este mecanismo se ha implementado utilizando como funcin de salud Fn (i) = bu f f 1 2 k=1 (ynk y n k) es la funcin de prdida (loss cte+Vn (i) , donde Vn (i) = function) y te"es una constante grande (108 ).

5.3.

Identicacin multimodelo y multiparmetro de sistemas no lineales mediante modelos paramtricos lineales. Identicacin con modelos lineales

5.3.1.

Un modelo de entrada-salida es un modo de describir un sistema dinmico basndose exclusivamente en la relacin entre las entradas y salidas del sistema. Algunos de los modelos lineales mas conocidos son: ARX (Auto-Regressive with eXogenous inputs), cuya expresin es A(q 1 )y(t) = B(q 1 )u(t nk) + ek (5.1)

, que puede ser visto como una manera de determinar el siguiente valor de la salida dadas las observaciones anteriores y las entradas. Aqu A(q 1 ) y B(q 1 )

64

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

son polinomios en el operador desplazamiento hacia atrs q 1 e y(t), u(t), y e(t) son las salidas, entradas y ruido, respectivamente. El ruido e(t) es una sucesin aleatoria normalmente distribuida de media cero y varianza 2 . OE (Output Error) cuya expresin es y(t) = B(q 1 ) u(t nk) + e(t) F(q 1 ) (5.2)

con la fuente de error e(t) que es la diferencia (error) entre la salida real y la salida libre de ruido (terica). ARMAX (Auto-Regressive Moving Average with eXogenous inputs), cuya expresin es A(q 1 )y(t) = B(q 1 )u(t nk) + C(q 1 )e(t) (5.3) . En ste modelo la expresin A(q 1 )y(t) = e(t) representa la auto-regresin, y(t) = C(q 1 )e(t) representa la media mvil de ruido blanco, mientras que B(q 1 )u(t) representa le entrada externa. Otros modelos pueden ser usados, como por ejemplo la representacin en el espacio de estados o el modelo de ceros y polos.

5.3.2.

Identicacin RGO para modelos lineales

y ARMAX, A(q 1 )yk = q d B(q 1 )u k + C(q 1 )e(t)k , por medio de regresin seudo-lineal. Este modelo todava no se ajusta lo suciente porque se ha supuesto en el clculo que el sistema es lineal, cosa que en general no es cierta. Para mejorar esta estimacin realizamos una bsqueda de modelos ARMAX, A(q 1 )yk = q d B(q 1 )u k + C(q 1 )ek , cuyos coecientes sean prximos al calculado anteriormente y que tengan una funcin de prdida lo ms pequea posible.

La entrada excitadora u(t) se ha escogido como una secuencia binaria pseudoaleatoria (PRBNS), con ruido coloreado. Como primer paso, para hacer esta identicacin paramtrica, realizamos una primera identicacin de mltiples modelos de tipo ARX, A(q 1 )yk = z d B(q 1 )u k + e(t), mediante el mtodo de mnimos cuadrados y por medio de los algoritmos genticos decidimos qu grados de los polinomios numerador y denominador y qu retardo son ms convenientes para nuestros propsitos. Es decir, queremos un modelo que se ajuste lo ms posible al sistema, pero que no tenga unos grados innecesariamente grandes, para ello se pueden utilizar los criterios MDL, AIC o FPE. En particular nosotros hemos utilizado el criterio MDL. B(q 1 En un segundo paso, calculamos un modelo, OE y(t) = F(q 1) u(t nk)+e(t) )

5.3. IDENTIFICACIN MULTIMODELO Y MULTIPARMETRO DE SISTEMAS NO LINEALES MEDIANTE MODELOS PARAMTRICOS LINEALES. 65

Esta bsqueda la realizamos por medio de un algoritmo gentico. En paralelo, B(q 1 vamos haciendo una bsqueda de modelos OE , y(t) = F(q 1) u(t nk) + e(t) , ) utilizando la misma tcnica. bu f f 2 Para hacer la funcin de prdida Vn (i) = k=1 (ynk y n k) lo ms 1 pequea posible, se ha utilizado como funcin de salud Fn (i) = cte+Vn (i) , donde te"es una constante sucientemente grande (108 ) para mantener la diversidad de la poblacin. La probabilidad de reproduccin se ha calculado como Fn (t) = F(t)/ F. En cada generacin, sustituimos el modelo anterior por el mejor de la nueva generacin como centro del entorno donde se realiza la bsqueda, de esta manera ,en caso de un sistema LTI, el mejor modelo debe ir tendiendo al valor que minimiza el funcional y la poblacin ira tendiendo a cero. A continuacin realizamos una nueva lectura de la entrada y la salida del sistema. De esta manera conseguimos un conjunto de aproximaciones sucesivas a mejores modelos en caso de el sistema sea invariante en el tiempo y si el sistema es variable, pero de variacin lo sucientemente lenta, entonces el modelo va siguiendo al sistema en sus variaciones. Podemos adems aprovechar las caractersticas convenientes de la convergencia global si al principio tomamos una bola lo sucientemente grande, de manera que reduzcamos la probabilidad de quedarnos en un mnimo local. Una vez que sepamos que seguimos al mnimo adecuado, podemos reducir el tamao de la bola y al mismo tiempo de la poblacin, para conseguir una mayor velocidad de ejecucin del algoritmo. Para que el algoritmo no tenga una convergencia prematura y se homogeneice demasiado la poblacin, podemos aumentar el parmetro de probabilidad de mutacin. Aunque este algoritmo es costoso en cuanto a operaciones, es lo sucientemente rpido como para ser empleado en lnea, ya que el clculo de un modelo con 35 coecientes tarda una dcima de segundo en un PC (120 MHz). A esto hay que aadir que las aplicaciones a que tpicamente se desea aplicar este identicador, es decir a los sistemas de control adaptativo, poseen dos bucles, uno rpido, que es el de control, y otro lento que es el identicador. Por tanto se puede aplicar a sistemas con una constante de tiempo de orden de las centsimas de segundo. Debemos darnos cuenta de que los algoritmos genticos hacen una bsqueda preferentemente en una direccin, la de mximo decrecimiento, mientras que el mtodo Montecarlo la hace con igual densidad en todas las direcciones, con lo que si estamos buscando en un espacio de 50 a 100 dimensiones, es evidentemente superior.

66

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

Llenar el buffer con los datos u(k) e y(k) Crear la poblacin inicial Encontrar los rdenes y el retardo que ajustan mejor con el sistema Encontrar las caractersticas del sistema: rdenes, retardo, etc.

Tomar los nuevos datos u(k) e y(k) Calcular modelos OE, ARMAX y NARMAX por medio de mnimos cuadrados extendidos Tomar los nuevos datos u(k) e y(k) Crear la poblacin inicial, tomando como individuos la diferencia con el modelo previo Evaluar la salud inicial de los cromosomas Aplicar los mecanismos de seleccin, cruce, mutacin, etc. Clonar el mejor individuo de la generacin anterior y aplicar la inmigracin Evaluar la salud de los individuos de la nueva generacin Seleccionar el mejor cromosoma Sumar el mejor individuo al modelo previo Calcular la nueva incertidumbre para usarla como nuevoradio de la bola de bsqueda Tomar los nuevos datos u(k) e y(k) Encontrar un primer modelo de partida

Mejorar el modelo y hacer el seguimiento del sistema

Fig. 5.1: Diagrama de ujo de la RGO.

5.4. IDENTIFICACIN MULTIMODELO Y MULTIPARMETRO

67

5.4. Identicacin multimodelo y multiparmetro de sistemas no lineales mediante modelos paramtricos no lineales.
Usualmente, modelamos el sistema basndonos en el conocimiento fsico del sistema y despus intentamos calcular los parmetros desconocidos a mano. ste mtodo tiene dos problemas: necesitamos conocimiento previo del sistema, y si las seales tienen ruido coloreado, los mtodos basados en mnimos cuadrados no funcionan satisfactoriamente.

5.4.1.

Modelos NARMAX

Entre los modelos no lineales, uno de los mas interesantes, es el modelo NARMAX (Non-linear Auto-Regressive Moving Average with eXogenous inputs), que puede ser descrito como
y(t) = F[y(t1), . . . , y(tn y ), u(td), . . . , u(tdn u +1), (t1), . . . , (tn )]+(t) (5.4)

donde t representa el tiempo discreto, y(t), u(t) y (t) son la salida, la entrada, y el error de prediccin, respectivamente, n y , n u y n son los rdenes correspondientes, F[.]es una funcin no lineal y dd es el mnimo retardo de la entrada [Leontaritis 85]. El modelo polinomial NARMAX tiene como expresin y(k) = a0 +
ny nu i=1 ai y(k i) + i=1 bi u(k i) + ny nu + i=1 ai y 2 (k i) + i=1 bi u 2 (k nu j=1 ci j y(k i)u(k j) n i) + i=1 ai (k i) (5.5) ny i=1

nos permite una descripcin buena y sencilla de una amplia clase de sistemas no lineales. Por ejemplo, si el modelo exacto NARMAX es y(k) = y(k 1)eu(k1) podemos desarrollar en serie la exponencial i! y emplear un modelo polinomial aproximado NARMAX ex p(x) =
i (x) i=0

(5.6)

(5.7)

1 1 y(k) = y(k1)y(k1)u(k1)+ y(k1)u 2 (k1) y(k1)u 3 (k1) (5.8) 2 6 Podemos comprobar que ste modelo tiene obvias ventajas sobre las series funcionales tales como las series de Volterra.

68

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

Cruce: Padre 1 0 0 Punto de Cruce 0 0 Hijo 1 0 0 0 0 1 1

1 Padre2

1 Hijo2

Antes del Cruce

Despus del Cruce

Fig. 5.2: Mecanismo de cruce


Mutacin: 1 0 1 1 1 0 Antes de la mutacin

Despus de la mutacin

Fig. 5.3: Mecanismo de mutacin

5.4.2.

Identicacin RGO con modelos no lineales

La entrada excitadora u(t) se ha escogido como una secuencia binaria pseudoaleatoria (PRBNS), con ruido coloreado. Como primer paso, para hacer esta identicacin paramtrica, realizamos una primera identicacin de mltiples modelos de tipo ARX, A(q 1 )yk = z d B(q 1 )u k + e(t), mediante el mtodo de mnimos cuadrados y por medio de los algoritmos genticos decidimos qu grados de los polinomios numerador y denominador y qu retardo son ms convenientes para nuestros propsitos. Es decir, queremos un modelo que se ajuste lo mas posible al sistema, pero que no tenga unos grados innecesariamente grandes, para ello se pueden utilizar los criterios MDL, AIC o FPE. En particular nosotros hemos utilizado el criterio MDL (Minimum Description Length)(ver Ljung[74] para ms detalles). En un segundo paso, calculamos un modelo ARMAX, A(q 1 )yk = q d B(q 1 )u k + C(q 1 )e(t)k , por medio de regresin seudo-lineal. Este modelo todava no se ajusta lo suciente porque el sistema es no lineal y adems la seal de salida contiene ruido coloreado y estos mtodos solamente son buenos con sistemas lineales con ruido blanco.

5.5. RESTRICCIONES

69

Para mejorar esta estimacin realizamos una bsqueda de modelos NARMAX, y(k) = a0 +
ny nu i=1 ai y(k i) + i=1 bi u(k i) + ny nu + i=1 ai y 2 (k i) + i=1 bi u 2 (k nu j=1 ci j y(k i)u(k j) n i) + i=1 ai (k i) (5.9) ny i=1

cuyos coecientes sean prximos al calculado anteriormente y que tengan una funcin de prdida lo ms pequea posible. En cada generacin, el ltimo modelo es sustituido por el mejor de la nueva generacin como centro del entorno donde se realiza la bsqueda De esta manera nuestro modelo va siguiendo al modelo real. En ste entorno los individuos de las nuevas generaciones estarn orientados principalmente en la direccin de mxima pendiente de la funcin de prdida (usando el criterio MDL, o bien AIC o FPE) y a la distancia que corresponde a la velocidad de cambio del sistema real. bu f f er (i) (ynk ynk )2 lo ms Para hacer la funcin de prdida Vn (i) = k=1 1 pequea posible, se ha utilizado como funcin de salud Fn (i) = cte+Vn (i) , donde te"es una constante sucientemente grande (108 ) para mantener la diversidad de la poblacin. La probabilidad de reproduccin se ha calculado como Fn (t) = F(t)/ F. El nmero de coecientes del modelo NARMAX y(k) = a0 +
ny ny nu nu i=1 ai y(k i) + i=1 bi u(k i) + i=1 j=1 ci j y(k i)u(k j) ny nu n + i=1 ai y 2 (k i) + i=1 bi u 2 (k i) + i=1 ai (k i) (5.10)

crece exponencialmente con el orden de desarrollo. Por este motivo, se ha utilizado una expansin de orden dos, con sistemas de orden menor que ocho y con cinco coecientes para modelar el ruido.

5.5.

Restricciones

Un problema del que adolecen la mayora de los mtodos de identicacin es no permiten introducir fcilmente el conocimiento previo que tenemos del sistema. En la mayora de los casos slo se puede elegir el tipo de modelo (ARX, OE, ARMAX, BJ, etc.) procurando adems que sea lineal porque de lo contrario no se pueden aplicar los mtodos habituales. Sin embargo, en el mtodo de algoritmos genticos lo que hacemos es optimizar numricamente una funcin V =
n k=0 (y(t

k) y (t k))2

(5.11)

70

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

y no nos cuesta ningn trabajo aadir restricciones duras de desigualdad, como a1 > 0, asignando salud cero a los individuos que estn en la regin factible. Las restricciones blandas se pueden tratar, aadiendo un trmino de penalizacin al funcional V. Por ejemplo, si deseamos introducir la restriccin a1 > 0 como una 2 restriccin blanda, podemos aadir a la funcin de prdida el trmino a1 , cuando a1 > 0.

5.6.

Resultados

Para poder contrastar los resultados con otros mtodos, vamos a utilizar como ndices de funcionamiento los siguientes: Error RMS: R M S err or = Error relativo RMS:
n 2 i=1 (yi yi )

1 N

N i=1 (yi

yi )2

(5.12)

Relative R M S err or =

N
n 2 i=1 (yi )

100 %

(5.13)

Estudiaremos los resultados obtenidos al aplicar nuestro mtodo con modelos OE, ARMAX y NARMAX a varios sistemas no lineales: Planta 1: y(k) 0,6y(k 1) + 0,4y(k 2) = (u(k) 0,3u(k 1) + 0,05u(k 2))sin(0,01k) +e(k) 0,6e(k 1) + 0,4e(k 2) (5.14) con condiciones iniciales nulas. Esta planta corresponde a un sistema lineal y(k) = 1 0,3q 1 + 0,05q 2 u(k) + e(k) 1 0,6q 1 + 0,4q 2 (5.15)

con una pequea oscilacin sinusoidal en la ganancia. Planta 2: Esta planta consiste en un primer bloque lineal: y(k) 0,6y(k 1) + 0,4y(k 2) = u(k) 0,3u(k 1) + 0,05u(k 2) +e(k) 0,6e(k 1) + 0,4e(k 2) (5.16)

5.6. RESULTADOS

71

[T,U] From Workspace z2.3z+.5 z2.6z+.4 Dead Zone Dis. Transfer Fcn + z2.7z+.2 + z2.6z+.4 Sum1 Dis. Transfer Fcn1 Scope2

+ + Sum

Signal Gen.1

Signal Gen.

Mux Mux

sgamex5 Sfunction1Scope1

Fig. 5.4: Montaje de la Planta 2.

puesto en serie con una zona muerta de 0.1, con condiciones iniciales nulas. Planta 3: y(k) = A1 + 0,02 sin(0,1k)y(k 1) + A2 y(k 2) + A3 y(k 3) +B1 u(k 1) + B2 u(k 2) + B3 u(k 3)

(5.17)

con A1 = 2,627771, A2 = 2,333261, A3 = 0,697676, B1 = 0,017203, B2 = 0,030862 y B3 = 0,014086. Planta 4: y(k) = (0,8 0,5ey(k1) y(k 1) (0,3 + 0,9e y +0,1 sin( y(k 1)) + u(k)
2 (k1)

)y(k 2)

(5.18)

con condiciones iniciales nulas. Nota: Las plantas 3 (sin la no-linealidad) y 4 han sido elegidas por haber sido utilizadas en el proyecto Psycho de identicacin y control con redes neuronales. El montaje es el mismo para todas las plantas, tenemos una entrada al sistema principal consistente en una seal prbns de amplitud 1. A la salida de ste le sumamos un ruido coloreado que es la salida que obtenemos al ltrar un ruido blanco de pico 0.1 con el ltro 1 + 0,7q 1 + 0,2q 2 1 0,6q 1 + 0,4q 2 (5.19)

La entrada prbns al sistema principal y la salida del sistema total las llevamos al bloque de identicacin, que nos va dando los coecientes del sistema para los modelos OE, ARMAX y NARMAX, as como los errores RMS (absoluto y relativo) y los ndices AIC, FPE y MDL. Los resultados obtenidos se pueden resumir en la siguiente tabla:

72

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

Fig. 5.5: Fenmeno de blow-up al intentar identicar la planta 1 con el bloque ARMAX de Simulink. Este efecto se debe a que se correlan los errores (t) y (t) con la entrada y hace imposible la identicacin de este sistema mediante este mtodo.

Fig. 5.6: Resultados de la identicacin de la planta 1 con el mtodo RGO. Arriba: salida del modelo vs. salida real. Abajo: error cometido.

5.6. RESULTADOS

73

Fig. 5.7: Resultados de la identicacin de la planta 2 con el mtodo RGO. Arriba: salida del modelo vs. salida real. Abajo: error cometido.

Fig. 5.8: Resultados de la identicacin de la planta 3 con el mtodo RGO. Arriba: salida del modelo vs. salida real. Abajo: error cometido.

74

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

Tab. 5.1: Comparacin de los mtodos de identicacin de sistemas. Error RMS Planta1 Planta 2 Planta 3 Planta 4 ARMAX Simulink 0.050 1.330 209.200 10.780 OE RGO 0.050 0.030 0.009 0.050 ARMAX RGO 0.018 0.010 0.0008 0.050 NARMAX RGO 0.017 0.003 0.0003 0.040

Fig. 5.9: Resultados de la identicacin de la planta 4 con el mtodo RGO. Arriba: salida del modelo vs. salida real. Abajo: error cometido.

5.7. COMPARACIN CON LAS REDES NEURONALES

75

5.7.

Comparacin con las Redes Neuronales

Para comparar los resultados de la identicacin del mtodo RGO-Narmax con las Redes Neuronales hemos utilizado una Red Feedforward de tipo Perceptrn Multicapa que usa como mecanismo de aprendizaje Backpropagation (que usa la regla Delta generalizada como algoritmo de entrenamiento) y con la sigmoide como funcin de activacin. La red consta de una capa de entrada (formada por 3 neuronas: entrada, salida-1 y salida-2), 16 neuronas en la capa oculta y capa de salida (con 1 neurona, que representa la salida estimada del sistema). En las redes Feedforward la activacin de la salida b se calcula de acuerdo a la ecuacin
N

b = F(
i=1

i ai + )

(5.20)

donde ai son los niveles de activacin de las entradas, i el peso de conexin de la entrada i-sima al elemento de salida, es un valor umbral y F es la funcin de 1 activacin, en ste caso la sigmoide F(x) = 1+ex . El mecanismo de aprendizaje Backpropagation consiste en propagar hacia atrs, partiendo de la salida de las seales de error para calcular los ajustes que se deben aplicar a los pesos de todas las conexiones de la red. Este mecanismo es utilizado para ajustar los pesos y sesgos de las redes neuronales para minimizar la suma cuadrtica de los errores de la red. Esto se realiza cambiando continuamente los valores de los pesos de la red y los sesgos en la direccin de mximo decrecimiento con respecto al error (regla Delta).

Fig. 5.10: Estructura de la Red Multicapa utilizada en la comparacin.


La regla Delta es el algoritmo de entrenamiento del perceptrn para entradas

76

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

y salidas continuas y se basa en que el ajuste del peso i sea proporcional a la derivada, respecto del peso, del error cuadrtico medio E medido en el patrn actual p, Ep . (5.21) p i = i Desarrollando esta expresin, se obtiene,
p i

= p xi

(5.22)

donde p = d p o p es la diferencia entre la salida deseada d p y la salida actual o p para el patrn p. La regla de actualizacin es i = i,old +
p i .

(5.23)

Las redes Backpropagation entrenadas tienden a dar respuestas razonables cuando se le presentan entradas que no han visto nunca. Tpicamente, una nueva entrada debe llevar al sistema a una salida similar a la correcta para vectores de entrada parecidos a los utilizados en el entrenamiento. El montaje es el mismo para todas las plantas, tenemos una entrada al sistema principal consistente en una seal prbns de amplitud 1 mas una onda cuadrada de amplitud 0.4 y frecuencia 0.1. A la salida de ste le sumamos un ruido coloreado que es la salida que obtenemos al ltrar un ruido blanco de pico 0.1 con el ltro z 2 + 0,7z + 0,2 z 2 0,6z + 0,4 . Los principales problemas observados en las redes son: la fuerte dependencia de las seales utilizadas para el entrenamiento y que los sistemas deben ser invariantes en el tiempo o, a lo sumo, con variaciones pequeas. Para poder utilizarlas en control adaptativo es necesario que la red sea capaz de aprender rpidamente en lnea. Otro problema de las Redes Neuronales es que no dan un modelo explcito del sistema. Los resultados obtenidos se pueden resumir en la siguiente tabla: (5.24)

5.7. COMPARACIN CON LAS REDES NEURONALES

77

Tab. 5.2: Comparacin de los mtodos de identicacin: RGO y Redes Neuronales. Error RMS Planta1 Planta 2 Planta 3 Planta 4 NARMAX RGO 0.0293 0.02284 0.02201 0.1678 Red Neuronal 0.0335 0.04419 0.07069 0.407

0.3 0.2 0.1 0 0.1 0.2 0 50 100 150 200 250

RMS error=0.0293 0.2 0.1 0 0.1 0.2 0 0.2 0.1 0 0.1 0.2 0

50

100

150

200

250

50

100

150

200

250

RMS error=0.0335 0.1

0.1

0.2 0

50

100

150

200

250

Fig. 5.11: Resultados de la identicacin de la planta 1. Subgura 1: salida del modelo vs. salida real para RGO. Subgura 2: error cometido. Subgura 3: salida del modelo vs. salida real para la Red Neuronal. Subgura 4: error cometido.

78

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

0.1 0 0.1 0.2 0.3 0

50

100

150

200

250

RMS error=0.02284 0.2 0.1 0 0.1 0.2 0 0.2 0.1 0 0.1 0.2 0.3 0 50 100 150 200 250

50

100

150

200

250

RMS error=0.04419 0.1

0.1

0.2 0

50

100

150

200

250

Fig. 5.12: Resultados de la identicacin de la planta 2. Subgura 1: salida del modelo vs. salida real para RGO. Subgura 2: error cometido. Subgura 3: salida del modelo vs. salida real para la Red Neuronal. Subgura 4: error cometido.
0.2 0.1 0 0.1 0.2

50

100

150

200

250

RMS error=0.02201

0.2

0.4 0.2 0.1 0 0.1 0.2

50

100

150

200

250

50

100

150

200

250

RMS error=0.07069 0.2 0.1 0 0.1 0.2 0.3 0 50 100 150 200 250

Fig. 5.13: Resultados de la identicacin de la planta 3. Subgura 1: salida del modelo vs. salida real para RGO. Subgura 2: error cometido. Subgura 3: salida del modelo vs. salida real para la Red Neuronal. Subgura 4: error cometido.

5.8. CONCLUSIONES

79

1 0.5 0 0.5 1 1.5 0 50 100 150 200 250

RMS error=0.1678 1

0.5

0.5 0 1 0.5 0 0.5 1 1.5 0

50

100

150

200

250

50

100

150

200

250

RMS error=0.407 0 0.2 0.4 0.6 0.8 0

50

100

150

200

250

Fig. 5.14: Resultados de la identicacin de la planta 4. Subgura 1: salida del modelo vs. salida real para RGO. Subgura 2: error cometido. Subgura 3: salida del modelo vs. salida real para la Red Neuronal. Subgura 4: error cometido.

5.8.

Conclusiones

En este captulo se ha desarrollado un nuevo algoritmo para la identicacin de sistemas dinmicos basado en RGO. Se han utilizado modelos OE, ARMAX y NARMAX, pero el mtodo se puede utilizar igualmente con cualquier otro mtodo paramtrico. En las simulaciones realizadas, los mtodos basados en RGO mejoran considerablemente los resultados obtenidos por los mtodos basados en mnimos cuadrados e incluso los de Redes Neuronales Backpropagation. Los resultados obtenidos prueban que el mtodo RGO puede ser utilizado para mejorar los resultados obtenidos con otros mtodos de identicacin de sistemas. En especial cuando el sistema no es lineal en los parmetros y cuando las seales de entrada y salida contienen ruido coloreado.

80

5. IDENTIFICACIN DE SISTEMAS NO LINEALES

6. ESTIMACIN DE ESTADOS
6.1. Introduccin

El ltro de Kalman da una solucin efectiva al problema de ltrado linealGaussiano. Sin embargo, cuando hay no linealidades, tanto sea en la especicacin del modelo como en el proceso de observacin, se requieren otros mtodos. Cuando el estado de un sistema tiene que ser estimado a partir de informacin sensorial con ruido, se necesita emplear algn tipo de estimador de estados para fusionar los datos de los diferentes sensores para producir una estimacin precisa del verdadero estado del sistema. El mtodo mas frecuentemente utilizado para la fusin de la informacin dada por los sensores en aplicaciones de robtica mvil es el Filtro de Kalman [66] y sus diferentes variaciones. Este ltro se utiliza para combinar todos los datos de medidas (por ejemplo, para fundir los diferentes datos de los distintos tipos de sensores) para obtener una estimacin ptima en sentido estadstico. Si la dinmica del sistema y el modelo de observacin son lineales y tanto el error del sistema como el error de medida (de los sensores) son Gaussianos, entonces el estimador de mnimos cuadrados puede ser calculado usando el ltro de Kalman. Es decir el Filtro de Kalman da una estimacin ptima desde el punto de vista estadstico. El clculo del Filtro de Kalman se hace recursivamente, es decir, en cada iteracin, slo la nueva medida y la ltima estimacin son usadas en el clculo actual, por tanto no hay necesidad de guardar las estimaciones y medidas previas. Esta caracterstica hace que no necesite ni una gran potencia de clculo ni un gran almacenamiento. Las medidas de un grupo de sensores pueden ser fundidas utilizando el ltro de Kalman para estimar el estado actual y para hacer una prediccin del estado futuro del sistema. En el caso no lineal el problema de ltrado en el espacio de estados viene dado por x(k) = g(k, x(k 1), (k)) (6.1)

82

6. ESTIMACIN DE ESTADOS

z(k) = h(k, x(k), (k))

(6.2)

donde (k) y (k) son los ruidos, que se suponen vectores aleatorios, independientemente distribuidos: (k) (k) 0 0 , Q(k) 0 0 R(k) . (6.3)

La estimacin ptima implica la descripcin de la densidad de probabilidad condicional x M M S E (k|k) = E(x(k)|Z k ) = x(k) p(x(k)|Z k )d x . (6.4)

Desafortunadamente, esta descripcin necesita un nmero innito de parmetros. Por esta razn, un nmero de aproximaciones subptimas han sido propuestas. Estos mtodos utilizan aproximaciones analticas de las distribuciones de probabilidad, la ecuacin de transicin de estados o la ecuacin de medida. Existen otros mtodos, tales como el mtodo de Montecarlo, que necesitan miles de puntos para aproximar la densidad de probabilidad condicional. En aplicaciones con muchas dimensiones, stos ltimos mtodos no son prcticos. Por esta razn son necesarios mtodos con un nmero razonable de operaciones, tales como los estudiados en este trabajo. Para el problema de ltrado no-lineal, la aproximacin ms sencilla e intuitiva es utilizar el desarrollo en serie de Taylor y utilizar las funciones de medida y de transicin no-lineales en el algoritmo del ltro lineal recursivo de Kalman. Los ltros no-lineales tradicionales incluyen el Filtro Extendido de Kalman (EKF), el Filtro No-lineal de Segundo orden (SNF) y el Filtro Iterado de una etapa (Singlestage Iteration Filter (SIF)), que estn descritos en Wishner, Tabaczynski y Athans [113]. Para reducir el sesgo de las estimaciones del ltro y obtener el valor esperado de las distribuciones de probabilidad ms correctamente, fue desarrollado el Filtro de Simulacin Montecarlo por Tanizaki y Mariano [105, 106]

6.2.

El Problema de Filtrado.

El problema consiste en hallar una estimacin del estado x(k) del sistema de inters, con una dinmica discreta no lineal dada por x(k) = g(k, x(k 1), (k)) . (6.5)

donde g la funcin de estado del modelo, x(k) es el estado del sistema en el tiempo k y (k) es el ruido del proceso.

6.2. EL PROBLEMA DE FILTRADO.

83

La nica informacin disponible del sistema es la observacin con ruido dada por la ecuacin no lineal de medida z(k) = h(k, x(k), (k)) . (6.6)

donde z(k) es el vector de observacin, h es el modelo de observacin que transforma el espacio de estados en el espacio de observacin y (k) es el ruido de medida. El estimador MMSE coincide con la media condicional. Sea x(i| j) = j ] con Z j = {z(1), z(2), ..., z( j)}T . La covarianza estimada es P (i| j) = E[x(i)|Z xx E[{x(i) x(i| j)}{x(i) x(i| j)}T |Z j ] . Estas ecuaciones son difciles de evaluar en la prctica. Por esta razn se emplean estimadores recursivos. En el caso lineal con ruido aditivo gaussiano el MMSE es el ltro de Kalman. Las ecuaciones lineales son , en este caso: x(k|k) = x(k|k 1) + W (k)(k), Px x (k|k) = Px x (k|k 1) W (k)P (k|k 1)W T (k) . (6.7) (6.8)

El vector (k) se llama innovacin, y es la diferencia entre la observacin y la prediccin: (k) = z(k) z (k|k 1) . (6.9) La covarianza de esta magnitud es P (k|k 1) = Pzz (k|k 1) + R(k), y W (k) es la ganancia de Kalman y su valor es
1 W (k) = Px z (k|k 1)Pzz (k|k 1) .

(6.10)

(6.11)

6.2.1.

La estimacin lineal en sistemas dinmicos - El Filtro de Kalman

El problema de estimacin dinmica Consideremos un sistema dinmico lineal en tiempo discreto descrito por una ecuacin vectorial en diferencias con ruido blanco Gaussiano aditivo que modela perturbaciones no predecibles. La ecuacin de estado es x(k + 1) = F(k)x(k) + G(k)u(k) + v(k), k = 0, 1, . . . (6.12)

84

6. ESTIMACIN DE ESTADOS

donde x(k) es el vector de estado de dimensin n x , u(k) es el vector de entrada de dimensin n u (que es conocido), y v(k), k = 0, 1, . . . , es la secuencia de ruido blanco Gaussiano de media cero con covarianza E[v(k)v(k) ] = Q(k) La ecuacin de medida es z(k) = H (k)x(k) + w(k) k = 1, 2, . . . (6.14) (6.13)

con w(k) secuencia de ruido de medida blanco Gaussiano de media cero con covarianza (6.15) E[w(k)w(k) ] = R(k) Las matrices F, G, H, Q, y R se suponen conocidas y que pueden cambiar con el tiempo. En otras palabras, el sistema puede cambiar con el tiempo y los ruidos son no estacionarios. El estado inicial x(0) es en general desconocido y se modela como una variable aleatoria Gaussiana con media y covarianza conocidas. Las dos secuencias de ruido y el estado inicial se suponen mutuamente independientes y adems los ruidos son independientes. Las anteriores condiciones se llaman lineales-Gaussianas. El algoritmo de estimacin El algoritmo de estimacin comienza con una estimacin inicial x(0|0) de x(0) y la covarianza inicial asociada P(0|0) , que se supone disponible. Un ciclo del algoritmo de estimacin dinmica (ltro de Kalman) consiste en estimar a partir (6.16) x(k|k) = E[x(k)|Z k ] que es la media condicional del estado en el tiempo k, dadas las observaciones hasta el tiempo k inclusive , y de la matriz de covarianza asociada P(k|k) = E[[x(k) x(k|k)][x(k) x(k|k)] |Z k ] (6.17)

las correspondientes variables del siguiente paso, x(k + 1|k + 1) y P(k + 1|k + 1). Esto se puede hacer puesto que las variables Gaussianas quedan caracterizadas por sus dos primeros momentos.

6.2. EL PROBLEMA DE FILTRADO.

85

Estado Real
Estado en t k x(k) Transicin a t k+1 x(k+1)= F(k)x(k) +G(k)u(k)

Entrada conocida
Control en t k u(k)

Estimacin del estado


Estimacin del estado en t k ^ x(k|k) Prediccin del estado ^ x(k+1|k)= F(k)x(k|k) +G(k)u(k) Prediccin de la medida ^ z(k+1|k)= H(k+1)x(k+1|k)

Clculo de la covarianza
Covarianza del estado en tk P(k|k) Covarianza de la prediccin del estado P(k+1|k)= F(k)P(k|k)F'(k)+Q(k) Innovacin de la covarianza S(k+1)= H(k+1)P(k+1)H'(k+1) +R(k+1)

Medida en t k+1 z(k+1)= H(k+1)x(k+1) +w(k+1)

Innovacin n(k+1)= z(k+1)-z(k+1|k)

Ganancia del Filtro W(k+1)= P(k+1|k)H'(k+1)S (k+1)

Actualizacin de la estimacin del estado ^ x(k+1|k+1)= x(k+1|k)+W(k+1)n(k+1)

Actualizacin de la covarianza del estado P(k+1|k+1)= P(k+1|k) -W(k+1)S(k+1)W'(k+1)

Fig. 6.1: Diagrama de ujo del ltro de Kalman.

Derivacin del Algoritmo de Estimacin Dinmica La prediccin del estado x(k + 1|k) = E[x(k + 1)|Z k ] se sigue de aplicar a la ecuacin de estado x(k + 1) = F(k)x(k) + G(k)u(k) + v(k) el operador de esperanza condicionada por Z k , E[x(k + 1)|Z k ] = E[F(k)x(k) + G(k)u(k) + v(k)|Z k ] Como el ruido del proceso v(k) es blanco y de media cero, entonces x(k + 1|k) = F(k)x(k|k) + G(k)u(k) (6.19) (6.18)

Restando de la ecuacin de estado obtenemos el error de prediccin de estado, x(k + 1|k) = x(k + 1) x(k + 1|k) = F(k)x(k|k) + v(k) (6.20)

86

6. ESTIMACIN DE ESTADOS

La covarianza de la prediccin de estado P(k + 1|k) = cov[x(k + 1)|Z k ] = cov[x(k + 1|k)|Z k ] se obtiene de 6.20 , S(k + 1) = H (k + 1)P(k + 1|k)H (k + 1) + R(k + 1) La covarianza entre el estado y la medida es , usando 6.20 E[x(k + 1|k) (k + 1|k) |Z k ] = E[x(k + 1|k)[H (k + 1)x(k + 1|k) + w(k + 1)] |Z k ] z = P(k + 1|k)H (k + 1) (6.23) 1 = W (k+1) = cov[x(k+1), z(k+1)|Z k ]S(k+1)1 La ganancia del ltro, Px z Pzz es (6.24) W (k + 1) = P(k + 1|k)H (k + 1) S(k + 1)1 Por tanto, la estimacin actualizada del estado puede ser escrita como x(k + 1|k + 1) = x(k + 1|k) + W (k + 1)(k + 1) donde (k + 1) = z(k + 1) z (k + 1|k) = z (k + 1|k) es la innovacin. Finalmente, la covarianza actualizada es P(k + 1|k + 1) = P(k + 1|k) P(k + 1|k)H (k + 1) S(k + 1)1 H (k + 1)P(k + 1|k) = [I W (k + 1)H (k + 1)]P(k + 1|k) (6.27) o, en forma simtrica P(k + 1|k + 1) = P(k + 1|k) W (k + 1)S(k + 1)W (k + 1) (6.28) (6.26) (6.25) (6.22) (6.21)

6.3. 6.3.1.

Filtros No-lineales Tradicionales Filtro Extendido de Kalman (EKF) y Filtro No-lineal de Segundo Orden (SNF)

El ltro Extendido de Kalman es similar a un ltro de Kalman linealizado, con la excepcin de que la linealizacin es realizada en la trayectoria estimada en vez de hacerlo en una trayectoria nominal previamente calculada. Por esta razn, las funciones g(k, x(k 1), (k)) y h(k, x(k), (k)) son desarrolladas en serie

6.3. FILTROS NO-LINEALES TRADICIONALES

87

de Taylor alrededor de x(k|k) con trminos hasta primer o segundo orden para obtener el EKF o SNF respectivamente. El desarrollo con trminos de segundo orden de la ecuacin de transicin es: x(k) = g(k, x(k 1), (k)) g(k, x(k|k 1), 0) +gx (k, x(k 1), (k))(x(k 1) x(k 1|k 1)) + g (k, x(k 1), (k))(k)
n

+1 2
j=1 n

e j (x(k 1) x(k 1|k 1)) gxj x (k, x(k 1), (k))(x(k 1) x(k 1|k 1))
j e j (k)g (k, x(k 1), (k))(k) j=1 n j e j (x(k 1) x(k 1|k 1)) gx (k, x(k 1), (k))(k) .

+1 2 +
j=1

(6.29) y el desarrollo con trminos hasta segundo orden de la ecuacin de medida es: z(k) = h(k, x(k), (k) h(k, x(k|k 1), 0) +h x (k, x(k 1), (k))(x(k 1) x(k 1|k 1)) + h (k, x(k 1), (k))(k)
n

+1 2
j=1 n

j e j (x(k 1) x(k 1|k 1)) h x x (k, x(k 1), (k))(x(k 1) x(k 1|k 1)) j e j (k)h (k, x(k 1), (k))(k) j=1 n j e j (x(k 1) x(k 1|k 1)) h x (k, x(k 1), (k))(k) .

+1 2 +
j=1

(6.30) donde e j es el j th vector de la base Cartesiana. Las tcnicas basadas en el Filtro de Kalman Extendido han demostrado ser robustas y mantener el seguimiento de la posicin robot de forma precisa. Sin embargo el Filtro de Kalman Extendido no puede representar ambigedades (como las simetras) y no es capaz de relocalizar al robot en caso de fallo en la localizacin. Muchas de estas dicultades estriban en asumir la restriccin Gaussiana del Filtro de Kalman.

6.3.2.

Filtro extendido Iterado de Kalman (IEKF)

La prediccin de la medida, hasta primer orden, es z (k|k 1) = h(k, x(k|k 1). Hay errores en la prediccin al usar x(k|k 1) para estimar x(k). Otros erro

88

6. ESTIMACIN DE ESTADOS

res adicionales son debidos a la no linealidad en la medida. Es posible disminuir estos errores si el estado actualizado no es calculado como una aproximacin a la esperanza condicional sino como un estimador del tipo maximum a posteriori. La funcin de densidad de probabilidad condicional, PDF, de x(k) dado Z k , si todas las variables aleatorias son Gaussianas, es p(x(k)|Z k ) = p(x(k)|z(k), Z k1 ) = 1 p(z(k)|x(k)) p(x(k|Z k1 )) c = 1 N (z(k); h(k, x(k)), R(k)) N (x(k); x(k|k 1), P(k|k 1)) . c (6.31) Maximizar esta funcin es equivalente a minimizar la siguiente V (x(k)) = 1 (z(k) h(k, x(k))) R(k)1 (z(k) h(k, x(k))) 2 + 1 (x(k) x(k|k 1)) (P(k|k 1)1 (x(k) x(k|k 1)) . 2 (6.32) El Filtro de Kalman Extendido Iterado (IEKF) usa un algoritmo NewtonRaphson para estimar x(k|k). Desarrollando V en serie de Taylor hasta segundo orden alrededor de la i-sima estimacin de x(k)da como resultado: 1 V = V i + Vxi (x x i ) + (x x i ) Vxi x (x x i ) . 2 Poniendo el gradiente a cero: x i+1 = x i (Vxi x )1 Vxi . Esto da lugar a la ecuacin IEKF: x i (k|k) = x i1 (k|k) + P i1 (k|k)H i1 (k) R(k)1 {z(k) h(k, x i1 (k|k))} i1 (k|k)P(k|k 1)1 ( x i (k|k) x(k|k 1)), P (6.35) i1 (k) = h (k, x i (k|k)) . with H x (6.34) (6.33)

6.3.3.

Filtro Iterado de una Etapa (Single-stage Iterated Filter (SIF))

Esta tcnica trata de maximizar la densidad de probabilidad a posteriori. En el mtodo EKF, la trayectoria nominal es linealizada alrededor de la trayectoria nominal determinada por x(k 1|k 1) y el estado nominal x(k|k 1). Si la

6.3. FILTROS NO-LINEALES TRADICIONALES

89

trayectoria y el estado nominales no estn cerca de la trayectoria verdadera, los desarrollos truncados del EKF presentarn pobres aproximaciones. La ecuacin z(k) = h(k, x(k), (k)) puede ser reescrita como q(k, z(k), x(k)) = (k) . Con esta expresin y x(k|k 1) = x(k) donde (k) (k) = 0 0 , R(k) 0 0 Px z (k|k 1) ,

es posible minimizar la siguiente suma de cuadrados de los residuos con pesos: q(k, z(k), x(k)) R 1 (k)q(k, z(k), x(k)) +(x(k|k 1) x(k)) Px z (k|k 1)(x(k|k 1) x(k)) usando el mtodo de optimizacin de Newton-Raphson.
i x i (k|k 1) = g i (x(k|k) + gx (k, x(k|k 1), (k)))(x(k 1|k 1) x(k|k 1), i i i i Px x (k|k 1) = gx (k, x(k|k), (k))Px x (k|k 1)gx (k, x(k|k 1), (k)) + Q(k), z i (k|k 1) = h i (k, x(k|k 1), (k)), i (k) = H u i (k, x(k|k), x)P i (k, k 1)(H u i (k, x(k|k), x)) + R, Pzz xx z i (k) = z(k) z i (k|k 1), i (k) = P i (k, k 1)h i (k, x(k|k), x) P i (k), W xx x zz i (k, k) = P i (k, k 1) W i (k)P i (k)W i (k) , Px x xx zz x i (k|k) = x i (k, k 1) + W i (k) (k) . z

6.3.4.

Filtro con Simulacin Montecarlo (MSF)

Tanizaki y Mariano [106] propusieron un algoritmo en simulaciones estocsticas Montecarlo, donde las variables aleatorias normales estn generadas por los trminos de error (k) y (k) y las variables de estado x(k) y x(k 1) para evaluar los valores esperados mas exactamente. Esta aproximacin est basada en las ecuaciones: x(k) = g(k, x(k|k 1), 0) +gx (k, x(k 1), (k))(x(k 1) x(k 1|k 1)), y z(k) = h(k, x(k|k 1), 0) +h x (k, x(k 1), (k))(x(k 1) x(k 1|k 1)) .

(6.36)

(6.37)

que son lineales en las variables de estado x(k) y x(k-1) . Por tanto, este algoritmo es una combinacin del Filtro Extendido de Kalman y la simulacin estocstica

90

6. ESTIMACIN DE ESTADOS

Montecarlo. Este algoritmo es una combinacin del EKF y de las simulaciones estocsticas Montecarlo. Las aproximaciones del Filtro de Kalman se aproximan por caminos aleatorios:
n 1 x(k|k 1) = n i=1 xi (k|k 1), n 1 Px x (k|k 1) = n i=1 (xi (k|k 1) x(k|k 1))(xi (k|k 1) x(k|k 1)) , n 1 z (k|k 1) = n i=1 z i (k|k 1), n 1 Pzz (k|k 1) = n i=1 ( i (k|k 1) z (k|k 1))( i (k|k 1) z (k|k 1)) , z z n 1 z Px z (k|k 1) = n i=1 ( i (k|k 1) z (k|k 1))(xi (k|k 1) x(k|k 1)) , W (k) = Px z (k|k 1) Pzz (k|k 1), Px x (k|k) = Px x (k|k 1) W (k)Pzz (k|k 1)W (k) ,

and x(k|k) = x(k|k 1) + W (k)( i (k|k 1) z (k|k 1)), z (6.38)

where x i (k|k 1) = g(k, x i (k 1, k 1), i (k)), and z i (k, k 1) = h(k, x i (k, k 1), i (k)) .

6.4.

El nuevo Filtro, RGO

Los algoritmos genticos son un proceso probabilstico de bsqueda basado en la seleccin natural y en las leyes genticas. La poblacin J = (J1 , J2 , ..., Jn ) J N es modicada de acuerdo con los procesos evolutivos naturales: despus de la inicializacin, son ejecutados la seleccin : J N J N , cruce : J N J N , y mutacin : J N J N recursivamente en un bucle. Cada ejecucin del bucle es llamada generacin y J representa la poblacin en la generacin . El operador de seleccin tiene como n mejorar la calidad media de la poblacin dando a los individuos de mayor calidad una alta probabilidad de ser copiados en la nueva generacin. La seleccin, por lo tanto, enfoca la bsqueda hacia regiones prometedoras del espacio de bsqueda. La calidad de un individuo es medida por la funcin de salud f : J R, donde J representa el espacio de todos los posibles individuos. Los algoritmos genticos se utilizan usualmente como mtodo de optimizacin global de funciones invariantes en el tiempo, y usualmente se ejecutan off line. Sin embargo, la seleccin natural de los seres vivos es un proceso local o semi local en el que las especies se adaptan por s mismas al entorno, que a su vez es dependiente del tiempo (es on line).

6.4. EL NUEVO FILTRO, RGO

91

Iniciar la poblacin

Calcular la funcin de salud

Aplicar los operadores: seleccin, cruce, mutacin, elitismo e inmigracin para construir la nueva poblacin

Calcular la funcin de salud

Escoger el mejor valor para mandarlo al algoritmo de filtrado

Calcular la distancia de Mahalanobis para tomarla como nuevo radio de bsqueda

Fig. 6.2: Diagrama de ujo de la Optimizacin Gentica Restringida aplicada a la estimacin de estados.

Es posible adaptar el mtodo de algoritmos genticos si se restringe la bsqueda a un entorno de la estimacin previa usando como funcin de salud: f : B(x(k|k 1), ) R con = P(k|k 1) , 1 cte + V (x(k|k 1)) donde cte es una constante grande y f (J ) = V (x(k)) =
1 1 2 (z(k) h(k, x(k))) R(k) (z(k) h(k, x(k))) 1 + 2 (x(k) x(k|k 1)) (P(k|k 1)1 (x(k) x(k|k

(6.39)

1)) . (6.40) Por lo tanto el algoritmo actualiza las estimaciones de los estados y la matriz de covarianza y el bucle es repetido de nuevo, como se ilustra en la gura 6.2. La

92

6. ESTIMACIN DE ESTADOS

funcin de densidad de probabilidad de x(k) dado Z k viene dada como p(x(k)|Z k ) = p(x(k)|z(k), Z k1 ) = 1 p(z(k)|x(k)) p(x(k|Z k1 )) c = 1 N (z(k); h(k, x(k)), R(k))N (x(k); x(k|k 1), P(k|k 1)) . c (6.41) Maximizar la funcin anterior es equivalente a calcular una estimacin maximum a posteriori (MAP). Esto es tambin equivalente a minimizar V (x(k)) , i.e. maximizar la funcin de salud f (J ). La funcin de salud estndar (i.e. dividida por la suma de las saludes) es una aproximacin de la funcin de densidad condicional (PDF). p(x(k)|Z k ) = p(z(k)|x(k)) p(x(k)|Z k1 ) . p(z(k)|x(k)) p(x(k)|Z k1 ) (6.42)

De todo lo anterior queda claro que es posible calcular precisamente las no linealidades de las funciones f y g, sin embargo la introduccin de la hiptesis de ruido gaussiano no se puede evitar. Para determinar el radio de la zona de bsqueda, usamos la distancia de Mahalanobis d = (x(k|k 1) x(k 1|k 1)) P 1 (k|k)(x(k|k 1) x(k 1|k 1)) (6.43)

que mide la incertidumbre de la estimacin x(k). Todos estos procesos pueden ser aplicados al Filtro Extendido de Kalman (para obtener el Filtro de Optimizacin Gentica Restringida, RGOF) o al Filtro Nolineal de Segundo Orden, SNF (para obtener el Filtro de Optimizacin Gentica Restringida de Segundo Orden, SRGOF).

6.5.

Comparacin de Filtros No-lineales.

La comparacin de ltros no-lineales la realizamos por medio de simulaciones Monte-Carlo. Un conjunto de datos x(k) y z(k) son simulados articialmente y la estimacin x(k) es comparada con x(k),y el BIAS y el RMSE entre el valor esti mado x(k) y el simulado x(k) se calcula para cada tiempo k. Este procedimiento se realiza 6000 veces (30 ejecuciones de 200 puntos cada una). Para comparar los distintos mtodos de estimacin, considerar cinco ejemplos conocidos en orden ascendiente de no linealidad y con tres niveles diferentes de ruido. En todos los casos (k) y (k) se suponen normalmente distribuidos como (k) (k) N 0 0 , C 0 0 C , (6.44)

6.5. COMPARACIN DE FILTROS NO-LINEALES.

93

Fig. 6.3: Ejecuciones tpicas para el modelo 5 con EKF y SRGOF para nivel de ruido 1.0.
donde C es una constante y el valor inicial x(0) est distribuido como una variable aleatoria normal. El primer modelo es lineal: x(k) = x(k 1) + (k) z(k) = x(k) + (k) . El segundo es el modelo Logstico:
ex p(x(k1) x(k) = ex p(x(k1))+ex p((k)) ex p(x(k)) z(k) = ex p(x(k))+ex p((k)) .

(6.45)

(6.46)

El tercero es el modelo ARCH: x(k) = (1 b + b(x(k 1))2 )1/2 + (k) z(k) = x(k) + (k) . (6.47)

El cuarto es el modelo de Crecimiento No-estacionario de Kitagawa (1987) y Carlin et al. (1992). x(k) = 0,5x(k 1) + z(k) =
x 2 (k) 2 25x(k1) 1+x 2 (k1)

+ 8cos(1,2(t 1)) + (k)

0 + (k) .

(6.48)

El ltimo corresponde al seguimiento de un mvil con un sensor que mide solamente el ngulo, dado por Bar-Shalom y Fortmann [11] en 1988. x(k) = 1 1 x(k 1) + (k) 0 1 (6.49) 20 z(k) = atan + (k) .
(x(1,k)x p (k))

94

6. ESTIMACIN DE ESTADOS

Tab. 6.1: Comparacin de BIAS para el nivel de ruido 0.1. Model 1 Model 2 Model 3 Model 4 Model 5 EKF -0.2062 0.0058 -0.1275 0.7118 -0.2342 IEKF -0.7654 0.0250 -1.2593 0.4796 -0.2488 SNF -0.2063 0.0109 -0.1210 0.4796 -0.4361 SIF 0.1955 8.5E-05 -0.1812 0.5861 -0.3238 MSF -4.9743 0.0057 -0.1397 0.4487 -0.2453 RGOF -0.1889 0.0076 -0.1142 0.2688 0.2411 SRGOF 0.6469 0.0078 -0.1198 0.3893 0.0938

Tab. 6.2: Comparacin de RMSE para el nivel de ruido 0.1. Model 1 Model 2 Model 3 Model 4 Model 5 EKF 0.9616 0.0876 0.9162 10.9863 1.1963 IEKF 2.0934 0.0822 2.1868 10.8942 1.0293 SNF 0.9638 0.0536 0.8812 10.8942 0.9003 SIF 1.9693 0.0690 1.0947 13.1817 0.8980 MSF 36.5653 0.0786 0.8718 11.3058 0.8828 RGOF 0.9515 0.0532 0.8695 10.3893 1.1523 SRGOF 1.3145 0.0543 0.8554 10.1435 0.8511

Tab. 6.3: Comparacin de BIAS para el nivel de ruido 0.5. Model 1 Model 2 Model 3 Model 4 Model 5 EKF -1.9802 0.2251 -0.1691 0.2727 0.1648 IEKF -6.7135 0.2233 -0.7962 0.1858 -0.1300 SNF -0.7908 0.2275 -0.1250 0.1858 -0.0797 SIF 0.4687 0.2269 -0.1911 0.8650 0.1989 MSF -59.0465 0.2236 -0.0628 0.5375 -0.0202 RGOF -0.8040 0.2209 -0.1453 0.4761 0.3438 SRGOF -1.1171 0.2055 -0.1603 -1.2549 -1.0691

6.6.

Discusin

En este captulo se describe un nuevo mtodo de ltrado no lineal. Este mtodo utiliza la Optimizacin Gentica Restringida para reducir el error de estimacin

6.6. DISCUSIN

95

Tab. 6.4: Comparacin de RMSE para el nivel de ruido 0.5. Model 1 Model 2 Model 3 Model 4 Model 5 EKF 4.996 1.5537 0.8632 14.7955 5.5196 IEKF 10.068 1.5561 1.7991 14.7742 5.0794 SNF 4.354 1.5546 0.8463 14.7742 4.6296 SIF 8.767 1.5494 1.0864 17.9635 4.4094 MSF 154.528 1.5540 0.8523 14.8041 5.1212 RGOF 3.847 1.5525 0.8573 10.3697 5.9636 SRGOF 4.2704 1.5063 0.8611 6.0052 4.8815

Tab. 6.5: Comparacin de BIAS para el nivel de ruido 1.0. Model 1 Model 2 Model 3 Model 4 Model 5 EKF -1.0107 0.0811 -0.1275 0.28454 0.2183 IEKF -4.0117 0.1628 -1.2593 0.19430 0.2765 SNF -1.0325 0.0859 -0.1210 0.19430 0.0084 SIF 0.9615 0.0369 -0.1812 0.52118 -1.6102 MSF -17.5458 0.0810 -0.1397 0.43729 0.6963 RGOF -2.3808 0.0524 -0.1146 0.01695 0.3160 SRGOF -2.1398 0.0529 -0.1198 0.11951 1.7845

Tab. 6.6: Comparacin de RMSE para el nivel de ruido 1.0. Model 1 Model 2 Model 3 Model 4 Model 5 EKF 4.8071 0.2457 0.9162 14.5453 11.0601 IEKF 9.7702 0.2791 2.1868 14.5721 9.7927 SNF 4.8194 0.2374 0.8812 14.5721 8.2852 SIF 9.8352 0.3276 1.0947 15.6697 8.2340 MSF 173.3967 0.2417 0.8718 14.6868 8.1326 RGOF 5.5300 0.2286 0.8696 10.1305 10.2766 SRGOF 5.9861 0.2287 0.8554 9.9886 9.1265

de las estimaciones previas EKF o SNF. Las tablas 1-3 sumarizan los resultados de cinco modelos con tres niveles de ruido: = = 0,1, 0,5 y 1.0. Cada nmero mostrado en las tablas representa la media de treinta ejecuciones de doscientos puntos cada una.

96

6. ESTIMACIN DE ESTADOS

Queda claro de los siguientes resultados que la precisin (basada en el criterio RMSE) de las estimaciones del SRGOF son ciertamente superiores a las de los otros algoritmos, especialmente en las situaciones con ms ruido y ms no linealidades. Juzgando a partir del criterio de los BIAS no hay grandes diferencias entre los diferentes mtodos, aunque algunos algoritmos (MSF, SIF y IEKF) son menos robustos en ciertas situaciones. Finalmente, la caracterstica ms importante del mtodo propuesto SRGOF es su robustez en las situaciones de alto ruido y fuertes no linealidades, que son las caractersticas deseadas de tales ltros.

7. IDENTIFICACIN EN EL ESPACIO DE ESTADOS


7.1. Modelos de Sistemas Lineales en el Espacio de Estados

Un sistema lineal general discreto e invariante en el tiempo puede ser descrito como (7.1) y(t) = G 0 (q)u(t) + H0 (q)e0 (t), donde y(t) es el vector de salida de dimensin p, u(t) es el vector de entrada de dimensin m y que se suponen conocidos. Las perturbaciones desconocidas que actan en la salida se suponen generadas por el segundo trmino, donde e0 (t) es el vector de ruido de dimensin p. Se supone que e0 (t) es una secuencia de variables estocsticas independientes que cumplen E[e0 (t)] = 0, y E[e0 (t)e0 (t)T ] =
0

(7.2)

donde E es el operador esperanza matemtica. Como el sistema es de orden nito, puede ser descrito tambin en el espacio de estados, introduciendo el vector auxiliar de estados x(t) de dimensin n, siendo n la dimensin del sistema. La relacin de entrada-salida puede ser descrita por x(t + 1) = Ax(t) + Bu(t) + K e0 (t) y(t) = C x(t) + e0 (t). (7.3)

donde A Rnn , B Rnm , K Rn p y C R pn . La manera de representar el ruido en 7.3 se dice que est en forma de innovaciones. El modelo en espacio de estados 7.3 es igual al sistema 7.1 si las matrices A, B, C y K cumplen G 0 (q) = C(q I A)1 B, y H0 (q) = C(q I A)1 K + I. (7.4)

98

7. IDENTIFICACIN EN EL ESPACIO DE ESTADOS

Las matrices A, B, C y K no son nicas. Es posible un cambio de base para los estados (7.5) x(t) = T 1 x(t) donde T Rnn es una matriz no singular, y el sistema en las nuevas variables de estado son x(t + 1) = A x(t) + Bu(t) + K e0 (t) (7.6) y(t) = C x(t) + e0 (t). Donde A = T 1 AT , B = T 1 B, K = T 1 K y C = C T . Es fcil ver que C(q I A)1 B = C(q I A)1 B C(q I A)1 K + I = C(q I A)1 K + I (7.7)

7.2.

Parametrizacin e Identicabilidad

Para la identicacin de sistemas es deseable frecuentemente utilizar modelos paramtricos, es decir, modelos que pueden ser descritos por un cierto nmero de parmetros con valores reales, que pueden ser considerados como un vector de parmetros IR d . Un modelo en particular viene descrito por un valor del vector d-dimensional . La correspondencia del espacio de parmetros IR d al espacio de modelos lineales se le llama estructura de modelos M. Consideramos, por tanto, las estructuras de modelos en el espacio de estados y en la forma de innovaciones: M: x(t + 1) = A()x(t) + B()u(t) + K ()e(t) y(t) = C()x(t) + e(t). (7.8)

donde las matrices A,B,C y K estn construidas a partir del vector de acuerdo con la estructura de modelos M. Una estructura de modelos M es globalmente identicable si M() = M( ) = . Es decir, dos vectores de parmetros distintos y no pueden dar el mismo modelo. Las estructuras de modelos identicables han sido muy utilizadas para la identicacin de sistemas debido a la correspondencia biunvoca entre los modelos y los valores del vector de parmetros. Sin embargo, para algunos sistemas es difcil encontrar una parametrizacin bien condicionada. Las estructuras de modelo identicables MI fueron introducidas en [109] y pueden ser denidas como:

7.3. MODELOS EN EL ESPACIO DE ESTADOS TOTALMENTE PARAMETRIZADOS

99

Denicin 7.2.1: Sea A() una matriz rellena de ceros y con unos en la lnea superior a la diagonal. Sean las las numeradas r1 , r2 , . . . , r p , donde r p = n, rellenas con parmetros. Sean B() y K () rellenas con parmetros y C() con ceros y con unos en la la i, columna ri1 + 1. (Se considera r0 = 0 y que p es la dimensin de y(t)). Ejemplo Una parametrizacin identicable en variables de estado de un sistema con cuatro estados, una entrada y una salida con ndices 1,4 est dada por 1 2 3 4 9 13 14 0 0 1 0 10 15 16 x(t +1) = 0 0 0 1 x(t)+ 11 u(t)+ 17 18 e(t) (7.9) 12 19 20 5 6 7 8 y (t) = 1 0 0 0 0 1 0 0 x(t) + e(t). (7.10)

Ljung [74] demuestra el siguiente teorema, 4A.2. Teorema 7.2.1: La estructura de modelos en el espacio de estados MI anteriormente denida es globalmente identicable en si y slo si {A( ), [B( )K ( )]} es controlable.

7.3.

Modelos en el Espacio de Estados Totalmente Parametrizados

Si consideramos el modelo 7.3 con todas las matrices A, B, C y K rellenas con parmetros, estamos sobre-parametrizando el sistema y perdiendo identicabilidad. Ms exactamente, para la estructura de modelos identicable se necesitan 2np + nm parmetros y el nmero de parmetros para la estructura de modelos totalmente parametrizada es d = n 2 + 2np + nm. n2 (7.11)

Es decir, para la estructura de modelos totalmente parametrizada se necesitan parmetros ms que para la estructura de modelos identicable. No obstante, esta estructura de modelos en el espacio de estados tiene las ventajas de que no tenemos que buscar cul de todas las diferentes formas de los multi-ndices se ajusta mejor a nuestro sistema puesto que la estructura totalmente parametrizada contiene a todas las dems. Adems la calidad del modelo puede

100

7. IDENTIFICACIN EN EL ESPACIO DE ESTADOS

aumentar al elegir una estructura ms exible. Esto nos permite adems hacer transformaciones para obtener una descripcin que est bien condicionada numricamente. Basndonos en las realizaciones balanceadas, introducidas por Moore [87], Kabamba [64] describe una parametrizacin cannica identicable para sistemas en tiempo continuo con valores singulares de Hankel distintos. Este resultado fue generalizado por Ober a sistemas arbitrarios en [91] incluyendo una extensin a sistemas en tiempo discreto utilizando la transformacin bilineal. con sta parametrizacin los parmetros pueden ser variados de forma continua sin que el sistema resulte no mnima. Otra ventaja, en comparacin con la forma observable, es que las parametrizaciones balanceadas tienen mejores propiedades numricas. Sin embargo, los ndices estructurales deben ser conocidos tambin para este tipo de parametrizacin. Chou [19] usa la parametrizacin equilibrada para la identicacin de sistemas.

7.4.

Realizaciones Equilibradas (Balanced Realizations)

En las realizaciones no equilibradas, pequeos cambios en un parmetro pueden dar grandes cambios en el comportamiento del sistema. Esto debe ser evitado en cualquier mtodo de identicacin. Un ejemplo de realizacin no equilibrada es el siguiente. Consideremos el 1 sistema G(q) = (q0,99)4 que en forma de estructura identicable tiene una matriz A igual a: 0 1 0 0 0 0 1 0 A() = (7.12) 0 0 0 1 0,9606 3,8812 5,8806 3,9600 Los valores propios, que son todos ellos iguales a 0.99, son extremadamente sensible a perturbaciones en los parmetros. Un cambio aditivo de 2x108 en cualquiera de los parmetros puede perturbar a uno de los autovalores y convertirlo en mayor que uno.Por esta razn es necesario introducir el concepto de realizacin equilibrada. La matriz

W0 =
k=0

(A T )k C T C Ak

es conocida como el Gramiano de observabilidad para el sistema en el espacio de estados. Los autovalores de esta matriz describen cmo la variable de estado

7.5. IDENTIFICACIN RGO EN EL ESPACIO DE ESTADOS

101

inicial x(0) inuencia la seal de salida y(t) cuando u(t) 0. Esta matriz tambin satisface la siguiente ecuacin de Lyapunov W0 = A T W0 A + C T C. La matriz dual Wc =
k=0

Ak B B T (A T )k

es llamada el Gramiano de controlabilidad. Esta matriz describe cmo la entrada u inuencia al vector de estado x. Wc tambin satisface Wc = AWc A T + B B T . Las matrices Gramianas son simtricas por construccin. Denicin. Una realizacin en el espacio de estados es equilibrada si Wo = Wc = con 1 . . . n > 0. = diag (1 . . . , n )

7.5.

Identicacin RGO en el Espacio de Estados

La entrada excitadora u(t) se ha escogido como una secuencia binaria pseudoaleatoria (PRBNS), con ruido coloreado. Como primer paso, para hacer esta identicacin paramtrica, realizamos una primera identicacin de mltiples modelos de tipo ARX, A(q 1 )yk = z d B(q 1 )u k + e(t), mediante el mtodo de mnimos cuadrados, y despus se transforma en una realizacin en el espacio de estados. La estimacin es transformada en una realizacin balanceada para tener un modelo mejor condicionado numricamente. A continuacin realizamos la bsqueda de modelos que se vayan adaptando mejor al sistema por medio de un algoritmo gentico. bu f f er (i) (ynk ynk )2 lo ms Para hacer la funcin de prdida Vn (i) = k=1 1 pequea posible, se ha utilizado como funcin de salud Fn (i) = cte+Vn (i) , donde te"es una constante sucientemente grande (108 ) para mantener la diversidad de la poblacin. La probabilidad de reproduccin se ha calculado como Fn (t) = F(t)/ F. La bsqueda es llevada a cabo usando matrices completamente parametrizadas y a cada generacin la estimacin es transformada en una realizacin balanceada para conseguir un modelo bien condicionado numricamente.

102

7. IDENTIFICACIN EN EL ESPACIO DE ESTADOS

En cada generacin, sustituimos el anterior modelo por el mejor de la nueva generacin como centro del entorno donde se realiza la bsqueda, de esta manera ,en caso de un sistema LTI, el mejor modelo debe ir tendiendo al valor que minimiza el funcional y la poblacin ira tendiendo a cero. A continuacin realizamos una nueva lectura de la entrada y la salida del sistema.

Fig. 7.1: Twin Rotor MIMO System (TRMS).


De esta manera conseguimos un conjunto de aproximaciones sucesivas a mejores modelos en caso de el sistema sea invariante en el tiempo y si el sistema es variable, pero de variacin lo sucientemente lenta, entonces el modelo va siguiendo al sistema en sus variaciones. Podemos adems aprovechar las caractersticas convenientes de la convergencia global si al principio tomamos una bola lo sucientemente grande, de manera que reduzcamos la probabilidad de quedarnos en un mnimo local. Una vez que sepamos que seguimos al mnimo adecuado, podemos reducir el tamao de la bola y al mismo tiempo de la poblacin, para conseguir una mayor velocidad de ejecucin del algoritmo. Para que el algoritmo no tenga una convergencia prematura y se homogeneice demasiado la poblacin, podemos aumentar el parmetro de probabilidad de mutacin. Aunque este algoritmo es costoso en cuanto a operaciones, es lo sucientemente rpido como para ser empleado en lnea. A esto hay que aadir que las aplicaciones a los que tpicamente se desea aplicar este identicador, es decir a los sistemas de control adaptativo, poseen dos bucles, uno rpido, que es el de

7.5. IDENTIFICACIN RGO EN EL ESPACIO DE ESTADOS

103

control, y otro lento que es el identicador. Por tanto se puede aplicar a sistemas con una constante de tiempo de orden de las centsimas de segundo.

Fig. 7.2: Resultados de identicacin de la Planta con el mtodo ARX. Arriba: Salida del Modelo vs. Salida del Sistema. Abajo: Error

Fig. 7.3: Resultados de identicacin de la Planta con el mtodo GaussNewton.Arriba: Salida del Modelo vs. Salida del Sistema. Abajo: Error

7.5.1.

El Algoritmo

1. Se obtiene una primera estimacin utilizando mnimos cuadrados de un modelo ARX y se pasa al espacio de estados. 2. Convertimos el sistema en una realizacin balanceada.

104

7. IDENTIFICACIN EN EL ESPACIO DE ESTADOS

Fig. 7.4: Resultados de identicacin de la Planta con el mtodo RGO. Arriba: Salida del Modelo vs. Salida del Sistema. Abajo: Error
3. Hacemos k = 1 4. Resolvemos el problema de minimizacin K k = arg mn VN ()

(7.13)

empleando RGO (Restricted Genetic Optimization) con matrices completamente parametrizadas. 5. Convertimos la estimacin obtenida en una realizacin balanceada. 6. Hacemos k = k + 1 y repetimos los pasos 4-6 hasta que k2 k1 VN (b ) VN (b ) < donde es una constante dada a priori. (7.14)

7.6.

Resultados

Para poder contrastar los resultados con otros mtodos, vamos a utilizar como ndices de funcionamiento los siguientes: Error RMS: RMS error = 1 N
N i=1 (yi

yi )2

(7.15)

7.7. DISCUSIN

105

Error relativo RMS:


n 2 i=1 (yi yi )

Relative RMS error =

N
n 2 i=1 (yi )

100 %

(7.16)

Para comparar los varios mtodos de identicacin, consideramos la aplicacin a sistemas reales: al Twin Rotor Mimo System (TRMS) que es un sistema dinmico de laboratorio diseado especialmente para experimentos de control. En ciertos aspectos su comportamiento es parecido al de un helicptero. Desde el punto de vista de control ejemplica un sistema no-lineal de orden alto con diferente dinmica en cada posible posicin. Los resultados obtenidos de los Errores Cuadrticos Relativos Medios (RMSE) se pueden resumir en la siguiente tabla: Error RMS relativo ARX331 0.1964 ARX441 0.1723 N4SID6 0.1695 Gauss-Newton331 0.06425 RGO331 0.03378

Tab. 7.1: Errores Cuadrticos Relativos

7.7.

Discusin

En este captulo se han comprobado las posibilidades que tiene la estructura de modelo totalmente parametrizada y su identicacin por medio de los mtodos ARX, Gauss-Newton y RGO. La principal idea es que esta estructura de modelo cubre todos los sistemas de un orden dado. El mtodo de identicacin que se presenta utiliza la realizacin equilibrada (balanced realization) para conseguir un modelo bien condicionado numricamente. En la tabla de resultados se puede observar que el mtodo RGO se comporta mejor que los otros algoritmos en un sistema como el TRMS con no linealidades y ruido.

106

7. IDENTIFICACIN EN EL ESPACIO DE ESTADOS

8. APLICACIONES AL CONTROL PREDICTIVO


8.1. Introduccin al Control Predictivo Basado en Modelo

Bajo este nombre se agrupan una serie de estrategias de control que tienen en comn como caracterstica principal, el hacer uso explcito de un modelo del proceso, para obtener la seal de control mediante la minimizacin de una cierta funcin de coste. En este sentido forman parte de una familia ms amplia, en la que se hace uso de un modelo del proceso para disear el controlador: LQ, IMC, asignacin de polos y ceros, etc. Adems de garantizar la operacin estable de la planta, los controladores avanzados de hoy en da han de satisfacer una serie de criterios adicionales u objetivos secundarios de control: econmicos, de seguridad, limitaciones fsicas de los equipos, calidad del producto nal, regulaciones ambientales, preferencias humanas, etc. Muchos de estos modelos admiten una representacin matemtica muy natural, bajo la forma de funciones objetivo dinmicas y ligaduras dinmicas de tipo desigualdad. El control predictivo basado en modelo tiene las siguientes caractersticas: Uso explcito de un modelo para predecir las salidas futuras. Clculo de cierta secuencia que minimice cierta funcin objetivo. El horizonte se va desplazando hacia el futuro, lo que implica la aplicacin de la primera seal de control calculada en cada paso. Ventajas del control predictivo basado en modelos sobre otros mtodos: Se puede aplicar con pocos conocimientos de control, porque los conceptos son intuitivos y el sintonizado es relativamente sencillo.

108

8. APLICACIONES AL CONTROL PREDICTIVO

pasado

futuro

referencia r(t+p) w(t+k/t) y(t+k/t)

Salidas predichas y

u(t) Variables manipuladas

t+1 t+2

t+p

horizonte

Fig. 8.1: La metodologa del control predictivo basado en modelos.

Se puede utilizar para controlar una gran cantidad de procesos, tanto sencillos como complejos; incluyendo sistemas con tiempo de retardo grandes y sistemas de fase no mnima. Se puede aplicar al caso multivariable. El controlador resultante es una sencilla ley de control lineal. Su extensin para tratar el caso con restricciones es conceptualmente sencilla y puede ser incluida durante el diseo. Es muy til cuando las referencias futuras son conocidas. Es una metodologa abierta.

8.1.1.

Estrategias de Control Predictivo Basado en Modelo

1. En cada instante de tiempo t, se predicen las salidas futuras del proceso, y(t+k|t) para una cierta ventana de tiempo k=1,2,...,N, utilizando el modelo del proceso. N recibe el nombre de horizonte de prediccin. Estas salidas se predicen con la informacin que est disponible en el instante t, y con los valores futuros de un escenario de control que se postula en el instante t.

8.1. INTRODUCCIN AL CONTROL PREDICTIVO BASADO EN MODELO 109

2. Se dene una trayectoria de referencia, r(t+k|t), que describe cmo se desea guiarla salida del proceso desde su valor actual, y(t) hacia sus puntos de consigna futuros, w(t+k|t). 3. De todo este conjunto se deduce la secuencia de control u(t+k|t) que hace mnima la funcin objetivo. 4. La seal de control u(t|t) se manda al proceso. El resto de las seales se rechazan ya que y(t+1) es conocido y se vuelve al punto 1.
Entradas y salidas pasadas MODELO Trayectoria de referencia Salida predicha

Entradas futuras

OPTIMIZACIN

Errores futuros

Funcin de coste

Restricciones

Fig. 8.2: Estructura bsica del control predictivo.

8.1.2.

La funcin objetivo
Hp

El criterio ms sencillo para el control predictivo es : J=


i=1

[ y (t + 1) (t + i)]2

(8.1)

Con este modelo se obtiene el control predictivo de mnima varianza. La expresin que se utiliza con ms frecuencia es :
N2 Nu

J (N1 , N2 , N3 ) = E{
j=N1

( j)[y(t + j|t) (t + j)] +


2 j=1

( j)[ u(t + j 1)]2 } (8.2)

110

8. APLICACIONES AL CONTROL PREDICTIVO

r(t+k) w1 (t+k) y(t) w2 (t+k)

Fig. 8.3: Distintas trayectorias de referencia.


N1 y N2 : Horizonte de coste (mnimo y mximo). Nu : Horizonte de control.

8.1.3.

Trayectoria de referencia

Si conocemos la evolucin futura de la referencia, podemos actuar antes de que los cambios se produzcan.

8.2.

Control Predictivo GPC.

Partimos de un modelo ARIMAX (tambin llamado CARIMA): A(z 1 )y(t) = B(z 1 )z d u(t 1) + C(z 1 ) (k) (8.3)

en donde la perturbacin no medible viene representada por una secuencia de ruido blanco de media cero (t) coloreada por el polinomio C(z 1 ) e integrada por el operador incremento . Para optimizar la funcin de coste:
N2 Nu

J (N1 , N2 , N3 ) = E{
j=N1

( j)[y(t + j|t) (t + j)] +


2 j=1

( j)[ u(t + j 1)]2 } (8.4)

8.3. EJEMPLO.

111

consideramos la ecuacin diofntica: 1 = E j (z 1 ) A(z 1 ) + z j F j (z 1 ); Si multiplicamos [8.3] por 1 = E j (z 1 ) A(z 1 ) + z j F j (z 1 ) (8.5) 1 )z j y consideramos [8.5] E j (z

A(z 1 )E j (z 1 )y(t + j) = E j (z 1 )B(z 1 ) u(t + j d 1) + E j (z 1 )e(t + j) (8.6) (1 z j F j (z 1 )y(t + j) = E j (z 1 )B(z 1 ) u(t + j d 1) + E j (z 1 )e(t + j) (8.7) y(t + j) = F j (z 1 )y(t) + E j (z 1 )B(z 1 ) u(t + j d 1) + E j (z 1 )e(t + j) (8.8) Como el grado de E j es j-1, los trminos de ruido estn todos en el futuro. La mejor prediccin es: y (t + j|t) = G j (z 1 ) u(t + j d 1) + F j (z 1 )y(t) con G j (z 1 ) = E j (z 1 )B(z 1 ) (8.10) (8.9)

8.3.

Ejemplo.

Considrese el siguiente sistema, descrito mediante un modelo ARIMAX: y(t) = 1,7y(t 1) 0,7y(t 2) + 0,9 u(t 1) 0,6 u(t 2) + (t) (8.11) con (t) una seal de ruido blanco de media cero. En la notacin empleada habitualmente, los polinomios de la funcin de transferencia de este sistema son: A(q 1 ) = 1 1,7q 1 + 0,7q 2 B(q 1 ) = 0,9q 1 0,6q 2 (8.12)

y se ha tomado C(q 1 ) = 1. Los parmetros del controlador GPC son N1 = 1, Nu = N2 = 3 y = 0,1. Las ecuaciones del predictor se pueden obtener resolviendo la ecuacin dio-

112

8. APLICACIONES AL CONTROL PREDICTIVO

fantina asociada, pero para resolverla a mano, es ms fcil iterar. As, y(t + 1|t) = 1,7y(t) 0,7y(t 1) + 0,9 u(t|t) 0,6 u(t 1) y(t + 2|t) = 1,7y(t + 1|t) 0,7y(t) + 0,9 u(t + 1|t) 0,6 u(t|t) = 2,19y(t) 1,19y(t 1) + 0,9 u(t + 1|t) + 0,93 u(t|t) 1,02 u(t 1) y(t + 2|t) = 1,7y(t + 2|t) 0,7y(t + 1|t) + 0,9 u(t + 2|t) 0,6 u(t 1|t) = 2,533y(t) 1,533y(t 1) + 0,9 u(t + 2|t) + 0,93 u(t + 1|t) +0,951 u(t|y) 1,314 u(t 1) (8.13) en donde se ha tomado (t + j|t) = 0, Agrupando coecientes, resulta y(t + 1|t) 0,9 0 0 u(t|t) y(t + 2|t) = 0,93 0,9 0 u(t + 1|t) y(t 0,951 0,93 0,9 u(t + 2|t) + 3|t) 1,7 0,7 0,6 y(t) + 2,19 1,19 + 1,02 u(t 1) y(t 1) 2,533 1,533 1,314 (8.14) Por tanto, la matriz del controlador es 0,8947 0,0929 0,0095 (G T G + I3 )1 G T = 0,8316 0,8091 0,0929 u(t 1) (8.15) 0,0766 0,8316 0,8947 y la ley de control que se obtiene es u(t) = 0,644 u(t 1) 1,7483y(t) + 0,7513y(t 1) +0,8947r (t + 1) + 0,0929r (t + 2) + 0,0095r (t + 2) (8.16)

Este es un controlador lineal e invariante en el tiempo, ya que el modelo es invariante. Se puede comprobar la capacidad del controlador de mirar hacia adelante, ya que son tenidos en cuenta tres valores futuros de la referencia, tantos como la longitud de la ventana de prediccin.

8.4.

Control Predictivo RGO.

La mayora de los procesos industriales se pueden aproximar por procesos de orden uno con un cierto retardo. Esto es debido a que si una constante de tiempo es mucho mayor que las restantes, las ms pequeas trabajan juntas para producir un retardo. k (8.17) esd G(s) = 1 + s

8.4. CONTROL PREDICTIVO RGO.

113

Si discretizamos esta funcin de transferencia obtenemos: G(z


1

bz 1 d )= z 1 az 1

(8.18)

Considerando un modelo CARIMA (Controlled Auto-Regressive and Integrated Moving-Average) obtenemos (1 az 1 )y(t) = bz d u(t 1) + (t) (8.19)

donde hemos tomado el polinomio correspondiente al ruido, de grado uno, y donde u(t) e y(t) son las seales de entrada y de salida del sistema, (t) es un ruido blanco y es un integrador ( = 1 z 1 ). Esta ecuacin se puede transformar en y(t + 1) = (1 + a)y(t) ay(t 1) + b u(t d) + (t + 1) y obtener la prediccin y (t + 1) = (1 + a)y(t) ay(t 1) + b[u(t d) u(t d 1)] (8.21) (8.20)

A continuacin, lo que deseamos hacer es aplicar una secuencia de control que minimice la funcin objetivo:
N2 N2 d

J (N1 , N2 ) = E{
j=N1

( j)[ y (t + j|t) r (t + j)] +


2 j=1

( j)[ u(t + N 1)]2 } u(t), (8.22) u(t + (8.23)

donde N1 > d y N2 = d + N . Minimizando J(N) respecto a 1), . . . , u(t + N 1) , obtenemos Mu= P y+Rw con u = [ u(t), u(t + 1), . . . , u(t + N 1)]T

(8.24) (8.25) (8.26)

y = [ y (t + d|t), y (t + d + 1|t)]T w = [r (t + d + 1), r (t + d + 2), . . . , r (t + d + N )]T

114

8. APLICACIONES AL CONTROL PREDICTIVO

M y R son matrices de N x N y P de dimensin N x2. Llamando q a la primera la de la matriz M1, u(t) viene dada por u(t) = q P y + q R w Por consiguiente el incremento de la seal de control u(t) resulta: (8.28) (8.27)

u(t) = l y1 y (t + d|t) + l y2 y (t + d 1|t) + lr 1 r (t)

donde l y1 , l y2 y lr 1 son coecientes. Por tanto nuestra estrategia es aplicar sucesivamente las ecuaciones: y (t + i) = (1 + a) y (t + i 1|t) a y (t + i 2) + b[u(t + i d + 1) u(t + i d)] (8.29) u(t) = u(t 1) + (l y1 y (t + d|t) + l y2 y (t + d 1|t) + lr 1 r (t))/G (8.30) Es decir: y (t + i) = (1 + a) y (t + i 1|t) a y (t + i 2) + b[u(t + i d + 1) u(t + i d)] (8.31) u(t) = u(t 1) + (l y1 y (t + d|t) + l y2 y (t + d 1|t) + lr 1 r (t))/G (8.32) Esto signica que se puede expresar la ley de control en funcin de los dos valores estimados de la salida y (t + d|t), y (t + d 1|t) y de la referencia r (t) con tres parmetros desconocidos l y1 , l y2 , lr 1 . Si se pueden identicar estos parmetros, tendremos una ley de control. Por supuesto, nos interesa encontrar estos coecientes de modo que minimicen el funcional 8.22.

8.4.1.

Ventajas de utilizar RGO en un GPC.


N2 N2 d

Los algoritmos genticos optimizan el funcional J (N1 , N2 ) = E{


j=N1

( j)[ y (t + j|t) r (t + j)] +


2 j=1

( j)[ u(t + N 1)]2 }

(8.33) de un modo directo, obtenindose los coecientes ly y lr de la expresin


N N d

u(i) =
k=d

lyk y(i k) +
k=1

lrk r (i k)

(8.34)

Lo cual signica que podemos calcular el valor de la entrada del sistema con muy poco coste computacional.

8.4. CONTROL PREDICTIVO RGO.

115

Fig. 8.4: Resultados de la identicacin de los parmetros l y1 , l y2 y lr1 del control predictivo RGO.

Fig. 8.5: Esquema para la identicacin de los parmetros de la ley de control predictivo.

Existen, por tanto, dos bucles: uno lento que nos va actualizando los coecientes de la seal de entrada u, y un bucle r pido que calcula la seal de entrada. De esta manera se evita el tener que resolver el sistema Mu=qRy+qRw todas las veces, con lo que se gana en velocidad.

116

8. APLICACIONES AL CONTROL PREDICTIVO

Fig. 8.6: Resultados de la identicacin de los parmetros del sistema.

Fig. 8.7: Resultados de la identicacin de los parmetros del sistema y el retardo.

8.5. 8.5.1.

Control Predictivo PID-RGO Introduccin

La sintonizacin de controles PID digitales para las plantas industriales puede ser difcil algunas veces y consumir bastante tiempo. La situacin es mucho peor si el comportamiento de la planta vara con el tiempo. Las tcnicas de algoritmos genticos off-line para sistemas que no varan con el tiempo fueron propuestas por Porter y Jones [95] como una alternativa posible a la sintonizacin de los PID digitales. De hecho, se comprob que los algoritmos genticos nos permiten una aproximacin ms sencilla a la sintonizacin de tales controladores que la solucin basada en algoritmos de optimizacin no genticos

8.5. CONTROL PREDICTIVO PID-RGO

117

como los propuestos por Polak y Mayne [94] y por Gesing y Davidson [35]. Nuestra tcnica permite la sintonizacin on-line de controladores PID, dotndoles de caractersticas del control predictivo muy interesantes como son un menor esfuerzo de control (la seal de control es ms suave) y un mejor seguimiento de la seal de referencia. Recordemos que el esquema general para el control predictivo es:

Fig. 8.8: Esquema general del control adaptativo.


El bloque de Identicacin y ajuste de parmetros lo dividiremos en dos partes: un primer bloque para identicar el sistema y un segundo bloque para ajustar los parmetros del PID. As obtendremos un control adaptativo basado en la optimizacin de un funcional y en la identicacin del proceso.

Fig. 8.9:

8.5.2.

Identicacin mediante Modelos Paramtricos Lineales


A(q 1 )y(t) = B(q 1 )u(t + e(t)

Partimos de un modelo de sistema dinmico del tipo: (8.35)

118

8. APLICACIONES AL CONTROL PREDICTIVO

donde los polinomios A y B estn denidos por: B(q 1 ) = b0 + b1 q 1 + b2 q 2 + + bnb q nb A(q 1 ) = a0 + a1 q 1 + a2 q 2 + + ana q na (8.36) (8.37)

Para hacer la identicacin de los parmetros es conveniente escribir la ecuacin como: y(t) = (t)(t) (8.38) siendo el vector de parmetros desconocidos, denido por: T = [a1 , a2 , . . . , ana , b0 , b1 , b2 , . . . , bnb ] (8.39)

siendo (t) el vector de regresin que consiste en mediciones entrada/salida dado por: T (t) = [y(t 1), y(t 2), . . . , y(t na), u(t 1), u(t 2), . . . , u(t nb)] (8.40) La identicacin de un sistema dinmico se puede hacer off-line, o bien online. En el primer caso uno de los mtodos mas clsicos es el mtodo de mnimos cuadrados, cuya solucin viene dada por (t) = [
T

]1 [

Y]

(8.41)

siendo la matriz es la matriz de observaciones , cuyas las estn formadas por el vector denido anteriormente e Y es el vector de salidas, ambas con N las, correspondientes a las N ltimas ecuaciones y(t) = (t), . . . , y(t n + 1) = (t n + 1) escritas en forma vectorial. Sin embargo es mas til en trminos de control , realizar la identicacin on-line de modo recursivo. Si en la ecuacin anterior denominamos P(t) = [ T ]1 entonces P(t)1 =
t T s=1 (s) (s) = t1 T T s=1 (s) (s) + (t) (t) TY

= P(t 1)1 + (t) T (t)

(8.42)

Anlogamente, para

podemos escribir: (8.43) de forma recur(8.44)

T (t)Y (t) = T (t 1)Y (t 1) + T (t)Y (t) con lo que podemos expresar la ecuacin (t) = [ siva como:
T

]1 [

TY]

(t) = (t 1) + P(t)(t)(y(t) T (t) (t 1))

8.5. CONTROL PREDICTIVO PID-RGO

119

donde llamamos e(t) = (y(t) T (t) (t 1)). Para obtener P(t) a partir de P(t-1) usamos el teorema de inversin de matrices y se obtiene (t) T (t)P(t 1) P(t) = P(t 1) (t) 1 + T (t)P(t 1)(t) (8.45)

Con todo ello podemos estimar los parmetros de forma recursiva como: (t) = (t 1) + P(t)e(t) (8.46)

8.5.3.

Control Predictivo PID-RGO

El control predictivo basado en modelo utiliza el modelo del sistema obtenido de la identicacin para incorporar el comportamiento futuro en el procedimiento de diseo del controlador. Se parte del modelo CARIMA del sistema, A(q 1 )y(t) = B(q 1 )u(t 1) + C(q 1 ) (t) 1 q 1 (8.47)

y se halla la secuencia de control que minimiza una funcin de coste de la forma:


N2 Nu

J (N1 , N2 , Nu ) = E{
j=N1

( y (t + j|t)r (t + j)) +
2 j=1

( u(t + j 1))} (8.48)

donde E. es la esperanza matemtica, y (t + j|t) es una secuencia de j predicciones de la salida del sistema posteriores al instante t; N1 y N2 son los horizontes de prediccin, Nu es el horizonte de control y ( j) es una secuencia de ponderacin. En nuestro caso optimizamos este funcional por medio de algoritmos genticos y as conseguimos una secuencia de control futura u(t), u(t+1),...de modo que la salida y(t+j) se aproxime a la referencia r(t+j). Deseamos hallar los coecientes del controlador PID que optimizan el funcional anterior, para lo cual necesitamos una expresin que nos d los valores de u(t + j 1) en funcin de los valores de y (t + j|t) r (t + j) y de los parmetros del PID. La ecuacin del PID ser u(t) = K p + por tanto u(t) = [K p (1 z 1 ) + K I + K D (1 z 1 )2 ](r (t 1) y(t 1)) (8.50) KI + K D (1 z 1 ) (r (t 1) y(t 1)) 1 z 1 (8.49)

120

8. APLICACIONES AL CONTROL PREDICTIVO

u(t) = (K P + K I + K D )(r (t 1) y(t 1)) +(K P 2K D )(r (t 2) y(t 2)) + (K D )(r (t 3) y(t 3)) (8.51) u(t) = C1 (y(t 1) r (t 1)) + C2 (y(t 2) r (t 2)) (8.52) +C3 (y(t 3) r (t 3)) De esta manera, el funcional queda en funcin de los valores y (t + j|t)r (t + j) y de los coecientes C1 , C2 , C3 . Por tanto, podemos hallar los coecientes C1 , C2 , C3 que optimizan el funcional y despus hallar los coecientes del PID correspondiente: K P = C2 2C3 K I = C1 + C2 + C3 (8.53) K D = C3

8.5.4.

Simulacin del control adaptativo PID-RGO.

Deseamos comprobar el funcionamiento del controlador RGO-predictivo para varios valores de en el funcional 8.48, el peso del esfuerzo de control. Para valores pequeos de tendremos que el esfuerzo de control es grande y por tanto el control ser ms rpido. A partir de las bibliotecas de bloques realizamos el esquema siguiente:

Fig. 8.10: Diagrama Simulink para Control 1

8.6. ANLISIS DE RESULTADOS

121

En las guras 8.11, 8.12 y 8.13 se puede comprobar el comportamiento del sistema para varios valores de : 0.12, 0.16 y 0.2. El factor de peso de control afecta a la seal de control. Cuanto mayor sea su valor, menor esfuerzo de control. Si se le da un valor pequeo la respuesta del sistema ser ms rpida puesto que el sistema tiende a minimizar el error entre la salida y la referencia, olvidando el esfuerzo de control.Los valores de los parmetros de control l y1 , l y2 y lr1 y por tanto los polos en bucle cerrado dependen de los valores de .

0.6

0.4

0.2

-0.2

-0.4

-0.6 0

100

200

300

400 500 600 Time (second)

700

800

900

Fig. 8.11: Resultados del Control Predictivo con RGO para = 0,12

0.6

0.4

0.2

-0.2

-0.4

-0.6

100

200

300

400 500 600 Time (second)

700

800

900

1000

Fig. 8.12: Resultados del Control Predictivo con RGO para = 0,16

8.6.

Anlisis de resultados

A la vista de los anlisis y simulaciones realizados en las secciones anteriores, se desprenden los siguientes resultados:

122

8. APLICACIONES AL CONTROL PREDICTIVO

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8 100 200 300 400 500 600 Time (second) 700 800 900 1000

Fig. 8.13: Resultados del Control Predictivo con RGO para = 0,20
La optimizacin gentica restringida (RGO) proporciona un marco unicador, muy exible y natural, sobre el que desarrollar nuevos controladores predictivos.La naturaleza de esto es controladores puede ser muy variada, en particular, haciendo ciertas aproximaciones, se tiene controladores de tipo PID adaptativos. A diferencia de otras tcnicas de optimizacin, la optimizacin gentica restringida hace una gestin sencilla e intuitiva de las ligaduras. Este mtodo se puede aplicar a cualquier sistema causal, incluyendo a los sistemas no lineales variantes en el tiempo, siempre que las no linealidades no sean demasiado grandes. Como problema, se puede apuntar la complejidad computacional del mtodo, lo que impide variar la ley de control muy rpidamente (del orden de 0.1 s).

9. APLICACIONES I: TRMS
9.1. Introduccin

En este captulo se considera la aplicacin a un sistema real: el Sistema MIMO de Rotores Gemelos (Twin Rotor MIMO System - TRMS), que es un laboratorio diseado expresamente para realizar experimentos de control. En ciertos aspectos su comportamiento recuerda al de un helicptero. Desde el punto de vista de control ejemplica un sistema de orden alto con acoplamientos cruzados muy signicativos.

Fig. 9.1: Twin Rotor MIMO System (TRMS).


El TRMS consiste en un eje pivotado en su base de forma que puede rotar libremente en el plano horizontal y vertical. En las terminaciones de la barra hay dos rotores (el principal y el de cola) dotados con motores de corriente continua. Una barra con contrapeso est jada al eje en el punto en que pivota. El estado del eje se puede describir por cuatro variables de estado: los ngulos horizontal y vertical medidos por sensores de posicin y dos correspondientes a las velocidades angulares. Dos variables de estado adicionales son las velocidades

124

9. APLICACIONES I: TRMS

angulares de los rotores, medidas por tacogeneradores acoplados a los motores de continua.

Fig. 9.2: Twin Rotor MIMO System (TRMS).

En un helicptero normal la fuerza aerodinmica es controlada cambiando el ngulo de ataque. El TRMS est construido de forma que el ngulo de ataque es jo. La fuerza aerodinmica se controla variando la velocidad de los rotores. Por tanto, las entradas de control son las tensiones suministradas a los motores de continua. Un cambio en el valor de la tensin hace que cambie la velocidad de rotacin lo que hace cambiar la correspondiente posicin de la barra. Sin embargo, se observan acoplamientos cruzados signicativos entre las acciones de los rotores; cada rotor inuencia las dos posiciones angulares. El diseo de controladores de ste sistema deben estar basados en desacoplos. Para el sistema desacoplado, se pueden aplicar entradas de control independientes para cada coordenada del sistema. Se puede utilizar un ordenador PC para el control en tiempo real del TRMS. Para ello se necesita una tarjeta controladora (PCL-812 en nuestro caso).

9.2. MODELADO Y PARMETROS

125

9.2.

Modelado y parmetros

Los mtodos modernos de diseo y adaptacin de controladores en tiempo real requieren modelos matemticos de alta calidad del sistema. Para sistemas de orden alto, no lineales y con acoplamientos los mtodos clsicos de modelado (basados en ecuaciones de Lagrange) son, a menudo, muy complicados. Por eso hemos decidido utilizar una aproximacin ms sencilla, basada en la representacin en diagramas de bloques del sistema, y que es muy til para su utilizacin en el entorno SIMULINK.
Uh

h
Gh h Fh ghv J hv

Fh lh

( v)

Mh

1/s

Kh

h(t)
1/Jh 1/s

Motor DC con rotor de cola

fh

Jvh g vh
Motor DC con rotor principal

fv

v
1/s

Uv Gv

Fv Fv

lv Mv

v(t)

1/s Kv

1/J v f

Fig. 9.3: Diagrama de bloques del modelo TRMS.


El diagrama de bloques se muestra en la gura. Las tensiones de control Uh y Uv son las entradas de los motores de continua que mueven los rotores. El modelo de motor de continua con propulsor se compone de un sistema con dinmica lineal seguido de una no linealidad esttica. La parte lineal tiene forma de funcin 1 1 de transferencia de primer orden G h = Th s+1 y G v = Tv s+1 . Las funciones no lineales h(Uh ) y v(Uv ) son las caractersticas estticas de los motores de continua con propulsores. La tensin de entrada est limitada al rango de 10v. Las relaciones no lineales entre la velocidad de los rotores y la fuerza aerodinmica re2 sultante puede ser aproximada por las relaciones cuadrticas: Fh = sign(h )kh h 2 y Fv = sign(v )kv v (kh y kv constantes positivas).

126

9. APLICACIONES I: TRMS

Es importante tener en cuenta que la forma geomtrica de los propulsores no es simtrica, y por lo tanto el comportamiento en una direccin de diferente del correspondiente a la otra direccin.

Tab. 9.1: Notacin usada en la gura 9.2


Smbolo h
h

Uh Gh h h Fh lh Jh Mh Kh fh v
v

Uv Gv V v Fv lv Jv Mv Kv fv f

Signicado Unidades posicin horizontal del eje del TRMS (azimut position) [rad] velocidad angular del eje del TRMS (azimut velocity) [rad/s] entrada de control (tensin) del motor horizontal [V ] funcin de transferencia lineal del motor y rotor de cola parte no-lineal del motor y rotor de cola: h(Uh ) = h [rad/s] velocidad de rotacin del rotor de cola [rad/s] funcin no-lineal (cuadrtica) de fuerza aerodinmica del rotor de cola: Fh = Fh (h ) [N ] brazo efectivo de la fuerza aerodinmica del rotor de cola: lh = lh (v ) [m] funcin no-lineal del momento de inercia respecto al eje vertical: Jh = Jh (v ) [kgm 2 ] par de giro horizontal [N m] momento angular horizontal [N ms] momento de la fuerza de friccin del eje vertical [N m] posicin vertical del eje del TRMS (pitch position) [rad] velocidad angular del eje del TRMS (pitch velocity) [rad/s] entrada de control (tensin) del motor vertical [V ] funcin de transferencia lineal del motor y rotor principal parte no-lineal del motor y rotor principal: h(Uv ) = v [rad/s] velocidad de rotacin del rotor principal [rad/s] funcin no-lineal (cuadrtica) de fuerza aerodinmica del rotor principal: Fv = Fv (v ) [N ] brazo efectivo de la fuerza aerodinmica del rotor principal [m] momento de inercia respecto al eje horizontal [kgm 2 ] par de giro vertical [N m] momento angular vertical [N ms] momento de la fuerza de friccin del eje horizontal [N m] par de fuerzas vertical del contrapeso: f = f (v ) [N m]
contina en la pgina siguiente

9.3. IDENTIFICACIN DEL TRMS

127

viene de la pgina anterior

Smb. Jhv Jvh gvh ghv t 1/s

Signicado Unidades momento angular vertical del rotor de cola [N ms] momento angular horizontal del rotor principal [N ms] funcin no-lineal (cuadrtica) del par de giro de reaccin: gvh = gvh (v ) [N m] funcin no-lineal (cuadrtica) del par de giro de reaccin: ghv = ghv (h ) [N m] tiempo [s] funcin de transferencia del integrador

La rotacin del propulsor produce un momento angular que, de acuerdo con la ley de conservacin del momento angular, puede ser compensada por las partes restantes del TRMS. Esto hace que exista una interaccin entre las dos funciones de transferencia, representadas por el momento de inercia de los motores con propulsores Jhv y J vh. Esta interaccin inuencia directamente a las velocidades de los ejes en ambos planos. Los pares de fuerza que actan son las fuerzas Fh y Fv multiplicadas por la longitud del brazo lh (v ) y lv . Controlar el sistema consiste en estabilizar el eje del TRMS en una posicin arbitraria deseada (pitch y azimut), dentro de unos lmites prcticos, o bien, hacer que siga una trayectoria deseada.

9.3.

Identicacin del TRMS

Antes de estudiar los diversos controladores para el TRMS, vamos a realizar un primer estudio del sistema para saber cules son los problemas que nos podemos encontrar. Para ello estudiamos la respuesta ante una onda cuadrada del rotor principal. Se puede apreciar en la gura que por debajo de la posicin de reposo (la de equilibrio cuando el motor est parado) se comporta prcticamente como un oscilador puro, mientras que por encima de la posicin de reposo se comporta como un oscilador amortiguado. El rotor secundario por su parte no tiene una fuerza que se contraponga a la fuerza de control, como ocurre con la gravedad en el otro rotor y adems apenas tiene rozamiento. Esto motiva que sea necesario cambiar el sentido de giro de las aspas continuamente para estar en un punto jo. Antes de intentar hacer una identicacin adaptativa, vamos a ver cmo funciona una identicacin off-line.

128

9. APLICACIONES I: TRMS

Fig. 9.4: Respuesta del rotor principal del TRMS a una onda cuadrada.

9.4.

Control PID del TRMS

Para poder realizar un estudio comparativo de los diversos controladores, vamos a ver los resultados que se obtienen al controlar el TRMS con un PID adaptativo RGO.

9.4.1.

Estabilizacin y seguimiento 1-DOF vertical

La tarea de control de estabilizacin en un grado de libertad (1 DOF) consiste en mover el TRMS a una posicin arbitraria en el plano seleccionado y estabilizarlo en esa posicin. El seguimiento consiste en que los movimientos del TRMS sigan la seal de referencia lo mas elmente posible. Para comenzar restringimos nuestro objetivo de control a la estabilizacin y seguimiento del sistema en el plano vertical solamente. El correspondiente diagrama de bloques del control PID del sistema se muestra en la gura 9.6.
vd

PID vv

SISTEMA 1-DOF

Fig. 9.5: Control del sistema 1-DOF (estabilizacin y seguimiento en vertical). Arriba: salida vs. seal de referencia. Abajo: error cometido.

9.4. CONTROL PID DEL TRMS

129

El diagrama de bloques siguientes muestra el sistema de una forma ms detallada. Ntese que slo se considera la parte vertical del sistema de control.
Uh

wh
Gh h Fh

Fh l h (a
v)

Mh

1/s

Kh

(t) ah

1/Jh

1/s

Motor DC con rotor de cola

ghv

fh

W h

J hv

Jvh

gvh
Motor DC con rotor principal

fv

Wv
(t) av

Uv Gv

v wv

Fv Fv

1/s Mv Kv

1/Jv f

1/s

Fig. 9.6: Diagrama de bloques del sistema 1-DOF (plano vertical).


0.6

0.4

0.2

0.2

0.4

0.6 60 80 100 120 140 Time (second) 160 180 200

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 60 80 100 120 140 Time (second) 160 180 200

Fig. 9.7: Control del sistema 1-DOF (estabilizacin y seguimiento en vertical). Arriba: salida del sistema vs. seal de referencia. Abajo: error cometido.

9.4.2.

Estabilizacin y seguimiento 1-DOF horizontal

La tarea de control de estabilizacin en un grado de libertad (1 DOF) consiste en mover el TRMS a una posicin arbitraria en el plano seleccionado y estabili-

130

9. APLICACIONES I: TRMS

zarlo en esa posicin. Para ello bloqueamos un eje del sistema de forma que no se pueda mover en el plano vertical. El seguimiento consiste en que los movimientos del TRMS sigan la seal de referencia lo mas elmente posible. Para comenzar restringimos nuestro objetivo de control a la estabilizacin y seguimiento del sistema en el plano horizontal solamente. El correspondiente diagrama de bloques del control PID del sistema se muestra en la gura 9.8.
hd

PIDhh

SISTEMA 1-DOF

Fig. 9.8: Control del sistema 1-DOF (estabilizacin y seguimiento horizontal).


El diagrama de bloques siguientes muestra el sistema de una forma ms detallada. Ntese que slo se considera la parte horizontal del sistema de control.

Uh

wh
Gh h Fh

Fh l h (a
v)

Mh

1/s

Kh

(t) ah

1/Jh

1/s

Motor DC con rotor de cola

ghv

fh

W h

J hv

Jvh

gvh
Motor DC con rotor principal

fv

Wv
(t) av

Uv Gv

v wv

Fv Fv

1/s Mv Kv

1/Jv f

1/s

Fig. 9.9: Diagrama de bloques del sistema 1-DOF (plano horizontal).

9.4.3.

Estabilizacin y seguimiento 2-DOF.

La tarea en este caso es la misma que en las secciones previas pero el TRMS no est bloqueado mecnicamente, y por tanto est libre para moverse en ambos planos. Controlador PID simple El controlador PID simple controla los movimientos horizontal y vertical separadamente. En este sistema de control la inuencia

9.4. CONTROL PID DEL TRMS

131

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 60 80 100 120 140 Time (second) 160 180 200

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1

60

80

100

120 140 Time (second)

160

180

200

Fig. 9.10: Control del sistema 1-DOF (estabilizacin y seguimiento en horizontal). Arriba: salida del sistema vs. seal de referencia. Abajo: error cometido.
de un rotor sobre el otro no est compensada por la estructura del controlador. El sistema no est desacoplado.

h v

h v

Uh PID simple Uv

SISTEMA 2-DOF

h v

v h

PID hh PID vv

Uv Uh

Fig. 9.11: Control del sistema 2-DOF.

9.4.4.

Controlador PID con acoplamiento cruzado

El controlador PID con acoplamiento cruzado controla el sistema en los planos horizontal y vertical. En este sistema de control la inuencia de un rotor sobre el movimiento en el otro plano puede ser compensada por la estructura de acoplamiento cruzado del controlador.

132

9. APLICACIONES I: TRMS

0.6

0.4

0.2

0.2

0.4

0.6 60 80 100 120 140 Time (second) 160 180 200

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8

60

80

100

120 140 Time (second)

160

180

200

Fig. 9.12: Experimento con el controlador de estabilizacin y seguimiento 2-DOF PID. Arriba: salida del sistema vs. seal de referencia en eje vertical. Abajo : error cometido
2 1.5 1 0.5 0 0.5 1 1.5 2 2.5 3 60 1.5 1 0.5 0 0.5 1 1.5 2 2.5 3 80 100 120 140 Time (second) 160 180 200

60

80

100

120 140 Time (second)

160

180

200

Fig. 9.13: Experimento con el controlador de estabilizacin y seguimiento 2-DOF PID. Arriba: salida del sistema vs. seal de referencia en eje horizontal. Abajo : error cometido

9.5.

Control Predictivo mediante PID y RGO

El control predictivo basado en modelo utiliza el modelo del sistema obtenido de la identicacin para incorporar el comportamiento futuro en el procedimiento

9.5. CONTROL PREDICTIVO MEDIANTE PID Y RGO

133

h h Generador externo de la seal horizontal


Generador externo de la seal vertical Uh

PID hh PID hv PIDvh

Uh

CONTROL PID
v

SISTEMA 2-DOF

h v
v

Uv

PID vv

Uv

Fig. 9.14: Diagrama de bloques del sistema de control 2-DOF PID de acoplamiento cruzado.
0.6 0.4

0.2

0.2

0.4

0.6 60 80 100 120 140 Time (second) 160 180 200

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 60 80 100 120 140 Time (second) 160 180 200

Fig. 9.15: Experimento con el controlador de estabilizacin y seguimiento 2-DOF PID con acoplamiento cruzado. Arriba: salida del sistema vs. seal de referencia en eje vertical. Abajo : error cometido
de diseo del controlador. Se parte del modelo CARIMA del sistema, A(q 1 )y(t) = B(q 1 )u(t 1) + C(q 1 ) (t) 1 q 1 (9.1)

y se halla la secuencia de control que minimiza una funcin de coste de la forma:


N2 Nu

J (N1 , N2 , Nu ) = E{
j=N1

( y (t + j|t) r (t + j)) +
2 j=1

( u(t + j 1))} (9.2)

donde E. es la esperanza matemtica, y (t + j|t) es una secuencia de j predicciones de la salida del sistema posteriores al instante t; N1 y N2 son los horizontes de prediccin, Nu es el horizonte de control y ( j) es una secuencia de ponderacin.

134

9. APLICACIONES I: TRMS

60 1.5 1 0.5 0 0.5 1 1.5 2 2.5 3 60

80

100

120 140 Time (second)

160

180

200

80

100

120 140 Time (second)

160

180

200

Fig. 9.16: Experimento con el controlador de estabilizacin y seguimiento 2-DOF PID con acoplamiento cruzado. Arriba: salida del sistema vs. seal de referencia en eje horizontal. Abajo : error cometido.
En nuestro caso optimizamos este funcional por medio de algoritmos genticos y as conseguimos una secuencia de control futura u(t), u(t+1),...de modo que la salida y(t+j) se aproxime a la referencia r(t+j). Deseamos hallar los coecientes del controlador PID que optimizan el funcional anterior, para lo cual necesitamos una expresin que nos d los valores de u(t + j 1) en funcin de los valores de y (t + j|t) r (t + j) y de los parmetros del PID. La ecuacin del PID ser u(t) = K p + por tanto u(t) = [K p (1 z 1 ) + K I + K D (1 z 1 )2 ](r (t 1) y(t 1)) (9.4) KI + K D (1 z 1 ) (r (t 1) y(t 1)) 1 z 1 (9.3)

u(t) = (K P + K I + K D )(r (t 1) y(t 1)) +(K P 2K D )(r (t 2) y(t 2)) + (K D )(r (t 3) y(t 3)) (9.5) u(t) = C1 (y(t 1)r (t 1))+C2 (y(t 2)r (t 2))+C3 (y(t 3)r (t 3)) (9.6) De esta manera, el funcional queda en funcin de los valores (t + j|t) r (t + j) y de los coecientes C1 , C2 , C3 . Por tanto, podemos hallar los coecientes

9.6. CONTROL PREDICTIVO DEL TRMS

135

C1 , C2 , C3 que optimizan el funcional y despus hallar los coecientes del PID correspondiente: K P = C2 + 2C3 K I = C1 + C2 3C3 (9.7) K D = C3
Parmetros del proceso

Clculo de los parmetros del Controlador

Estimacin de los parmetros del sistema

Parm. Contr. r u Proceso y

Controlador

Fig. 9.17: Sistema adaptativo con identicacin de modelo (MIAS)

9.6.

Control predictivo del TRMS

Basndose en los estudios realizados en los captulos anteriores se ha desarrollado un controlador predictivo que utiliza las tcnicas RGO en dos niveles: para identicar un modelo del sistema y para encontrar los parmetros del controlador. Obviamente, un control adaptativo y predictivo necesita una gran cantidad de trabajo computacional. En cada instante de muestreo los parmetros del proceso deben ser identicados, el modelo predictivo debe ser calculado y la funcin de coste debe ser evaluada. Estas operaciones consumen tiempo y pueden hacer que la seal de control no se consiga variar con la rapidez necesaria. Para la realizacin del controlador se optimiza el funcional
N2 N2 d

J (N1 , N2 ) = E{
j=N1

( j)[ y (t + j|t) r (t + j)] +


2 j=1

( j)[ u(t + N 1)]2 }

(9.8) de un modo directo, utilizando la Optimizacin Gentica Restringida, obtenindose los coecientes ly y lr de la expresin

136

9. APLICACIONES I: TRMS

h v

PID-RGO RGO PREDICTIVO

Uh Uv

SISTEMA 2-DOF

h v

Fig. 9.18: Control del sistema con RGO-PID y RGO Predictivo.

N d

u(i) =
k=d

lyk y(i k) +
k=1

lrk r (i k).

(9.9)

Lo cual signica que podemos calcular el valor de la entrada del sistema con poco coste computacional.
0.4 0.3 0.2 0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0 0.8

20

40

60

80 100 120 Time (second)

140

160

180

200

0.6

0.4

0.2

0.2

0.4

0.6

0.8 0

20

40

60

80 100 120 Time (second)

140

160

180

200

Fig. 9.19: Experimento con el controlador de estabilizacin y seguimiento: control predictivo-RGO en el plano vertical (con un grado de libertad). Arriba: salida del sistema vs. seal de referencia en eje vertical. Abajo: error cometido.
Existen, por tanto, dos bucles: uno lento que nos va actualizando los coecientes de la seal de entrada u, y un bucle rpido que calcula la seal de entrada. De

9.6. CONTROL PREDICTIVO DEL TRMS

137

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 0 20 40 60 80 100 120 Time (second) 140 160 180 200

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 0

20

40

60

80 100 120 Time (second)

140

160

180

200

Fig. 9.20: Experimento con el controlador de estabilizacin y seguimiento: PIDRGO (arriba) en el plano vertical (con un grado de libertad). Arriba: salida del sistema vs. seal de referencia en eje horizontal. Abajo : error cometido.
0.4

0.2

0.2

0.4

0.6 0 0.8

20

40

60

80 100 120 Time (second)

140

160

180

200

0.6

0.4

0.2

0.2

0.4

0.6

0.8 0

20

40

60

80 100 120 Time (second)

140

160

180

200

Fig. 9.21: Experimento con el controlador de estabilizacin: Predictivo-RGO con dos grados de libertad. Arriba: salida del sistema vs. seal de referencia en eje vertical. Abajo: error cometido.

138

9. APLICACIONES I: TRMS

0.6

0.4

0.2

0.2

0.4

0.6

0.8 0 20 40 60 80 100 120 Time (second) 140 160 180 200

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 0 20 40 60 80 100 120 Time (second) 140 160 180 200

Fig. 9.22: Experimento con el controlador de estabilizacin: PID-RGO con dos grados de libertad. Arriba: salida del sistema vs. seal de referencia en eje horizontal. Abajo: error cometido.
1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 0 20 40 60 Time (second) 80 100 120

Fig. 9.23: Experimento con el controlador de estabilizacin (seales de control: control predictivo y PID).
esta manera se evita el tener que resolver el sistema Mu = q Ry + q Rw todas las veces, con lo que se gana en velocidad. Esto nos permite hacer uso de modelos y de ligaduras altamente no lineales, y de funciones objetivo no cuadrticas, por lo que resultan ms potentes y exibles

9.7. CONTROL EN EL ESPACIO DE ESTADOS DEL TRMS

139

que los convencionales. Para poder hacer frente a unas condiciones cambiantes, la etapa de optimizacin ha de ser resuelta en tiempo real.

9.7.

Control en el Espacio de Estados del TRMS

Hemos desarrollado un controlador PID que utiliza las tcnicas RGO en dos niveles: para identicar un modelo del sistema y para encontrar los parmetros del controlador. Como primer paso, realizamos una identicacin paramtrica, para lo cual partimos de una primera identicacin de mltiples modelos de tipo ARX, A(q 1 )yk = z d B(q 1 )u k + e(t), mediante el mtodo de mnimos cuadrados, y despus se transforma en una realizacin en el espacio de estados.

h
Generador externo h de la seal horizontal Generador externo de la seal vertical Uh

dh /dt

CONTROL
Uv

SISTEMA 2-DOF

h
OBSERVADOR

v
dv /dt

Fig. 9.24: Control del sistema 2-DOF.


A continuacin realizamos la bsqueda de modelos que se vayan adaptando mejor al sistema por medio de un algoritmo gentico. bu f f er (i) Para hacer la funcin de prdida Vn (i) = k=1 (ynk ynk )2 lo ms 1 pequea posible, se ha utilizado como funcin de salud Fn (i) = cte+Vn (i) , donde "cte" es una constante sucientemente grande (108 ) para mantener la diversidad de la poblacin. La probabilidad de reproduccin se ha calculado como Fn (t) = F(t)/ F. En cada generacin, sustituimos el anterior modelo por el mejor de la nueva generacin como centro del entorno donde se realiza la bsqueda, de esta manera ,en caso de un sistema LTI, el mejor modelo debe ir tendiendo al valor que minimiza el funcional y la poblacin ira tendiendo a cero. A continuacin realizamos una nueva lectura de la entrada y la salida del sistema.

140

9. APLICACIONES I: TRMS

De esta manera conseguimos un conjunto de aproximaciones sucesivas a mejores modelos en caso de el sistema sea invariante en el tiempo y si el sistema es variable, pero de variacin lo sucientemente lenta, entonces el modelo va siguiendo al sistema en sus variaciones.
2.5

1.5

0.5

0 0 20 40 60 80 100 120 Time (second) 140 160 180 200

0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 1.2 0

20

40

60

80 100 Time (second)

120

140

160

180

Fig. 9.25: Experimento con el controlador de estabilizacin y seguimiento: PIDRGO en variables de estado. Arriba: salida del sistema vs. referencia en eje vertical. Abajo: salida del sistema vs. referencia en eje horizontal.
Podemos adems aprovechar las caractersticas convenientes de la convergencia global si al principio tomamos una bola lo sucientemente grande, de manera que reduzcamos la probabilidad de quedarnos en un mnimo local. Una vez que sepamos que seguimos al mnimo adecuado, podemos reducir el tamao de la bola y al mismo tiempo de la poblacin, para conseguir una mayor velocidad de ejecucin del algoritmo. Para que el algoritmo no tenga una convergencia prematura y se homogeneice demasiado la poblacin, podemos aumentar el parmetro de probabilidad de mutacin.

9.8.

Comparacin de los distintos mtodos

Como se puede ver en la tabla, al introducir el control predictivo y el PID-RGO adaptativo se han mejorado los resultados, como era de prever. El control predictivo no se pudo introducir en el eje horizontal porque el tiempo de cmputo era mayor que la constante de tiempo del sistema y no funcionaba

9.8. COMPARACIN DE LOS DISTINTOS MTODOS

141

Fig. 9.26: Experimento con el controlador de estabilizacin: diagrama de bloques.


bien el controlador. En resumen el mtodo RGO se ha podido aplicar al control del TRMS con buenos resultados. El mtodo ha demostrado ser able y con buen comportamiento con el nico inconveniente de que el tiempo de cmputo es grande y esto impide aplicarlo a sistemas muy rpidos.

142

9. APLICACIONES I: TRMS

Tab. 9.2: Resultados de la comparacin entre los distintos mtodos de control del TRMS.
Error RMS Plano vertical PID Vert. (1 DOF) 0.3980 PID Horiz. (1 DOF) PID (2 DOF) 0.4260 PID con acoplamiento cruzado (2 DOF) 0.4284 Predictivo-RGO Vertical 0.1982 PID-RGO Horizontal Predictivo-RGO y PID-RGO(2 DOF) 0.2038 SS-PID-RGO (2 DOF) 0.2111

Plano Horizontal 0.5520 1.0326 1.0206 0.2145 0.2181 0.2212

10. APLICACIONES II: ROBOT MVIL


La localizacin de los robots mviles se basa en la odometra. El problema que presenta este mtodo es que se van acumulando los errores y por lo tanto la precisin es cada vez menor. Para resolver esta situacin se utilizan normalmente dos mtodos: fundir la informacin sensorial con el mapa del entorno y el otro mtodo basado en la deteccin de marcas naturales o articiales. El mtodo que nosotros hemos utilizado es l de deteccin de marcas articiales para la localizacin del robot, empleando para ello como sensores una cmara con zoom motorizado sobre una plataforma pan and tilt y un anillo perifrico de 24 sensores de ultrasonidos. Para fusionar toda la informacin y as poder corregir la posicin y orientacin del vehculo utilizamos un ltro de Kalman extendido. El ltro de Kalman extendido que se ha utilizado emplea la tcnica de Restricted Genetic Optimization (RGO) para mejorar el funcionamiento del ltro de Kalman.

10.1.

El Filtro de Kalman Extendido Iterado

Cuando el estado de un sistema tiene que ser estimado a partir de informacin sensorial con ruido, se necesita emplear algn tipo de estimador de estados para fusionar los datos de los diferentes sensores para producir una estimacin precisa del verdadero estado del sistema. Si la dinmica del sistema y el modelo de observacin son lineales, entonces el estimador de mnimos cuadrados puede ser calculado usando el ltro de Kalman. Cuando esto no es posible es necesario utilizar un ltro extendido, como por ejemplo el Filtro Iterado de Kalman [ver cap. 6 para ms detalles].

10.2.

Localizacin del Robot Mvil utilizando un Filtro RGO No-lineal

Los algoritmos genticos son un proceso probabilstico de bsqueda basado en la seleccin natural y en las leyes genticas. La poblacin J = (J1 , J2 , ..., Jn )

144

10. APLICACIONES II: ROBOT MVIL

J N es modicada de acuerdo con los procesos evolutivos naturales: despus de la inicializacin, son ejecutados la seleccin : J N J N , cruce : J N J N , y mutacin : J N J N recursivamente en un bucle. Cada ejecucin del bucle es llamada generacin y J representa la poblacin en la generacin . El operador de seleccin tiene como n mejorar la calidad media de la poblacin dando a los individuos de mayor calidad una alta probabilidad de ser copiados en la nueva generacin. La seleccin, por lo tanto, enfoca la bsqueda hacia regiones prometedoras del espacio de bsqueda. La calidad de un individuo es medida por la funcin de salud f : J R, donde J representa el espacio de todos los posibles individuos. Los algoritmos genticos se utilizan usualmente como mtodo de optimizacin global de funciones invariantes en el tiempo, y usualmente se ejecutan off line. Sin embargo, la seleccin natural de los seres vivos es un proceso local o semi local en el que las especies se adaptan por s mismas al entorno, que a su vez es dependiente del tiempo (es on line). Es posible adaptar el mtodo de algoritmos genticos si se restringe la bs-

10.2. LOCALIZACIN DEL ROBOT MVIL UTILIZANDO UN FILTRO RGO NO-LINEAL 145

queda a un entorno de la estimacin previa usando como funcin de salud: f : B((k|k 1), ) R, with = P(k|k 1) , f (J ) = and 1)) . (10.2) Por lo tanto el algoritmo actualiza las estimaciones de los estados y la matriz de covarianza y el bucle es repetido de nuevo, como se ilustra en la gura 1. La funcin de densidad de probabilidad de x(k) dado Z k viene dada como
1 k1 )) = c p(z(k)|x(k)) p(x(k|Z 1 c N (z(k); h(k, x(k)), R(k))N (x(k); x(k|k

108

1 + V (x(k|k 1))

(10.1)

V (x(k)) =

1 1 2 (z(k) h(k, x(k))) R(k) (z(k) h(k, x(k))) + 1 (x(k) x(k|k 1)) (P(k|k 1)1 (x(k) x(k|k 2

p(x(k)|Z k ) = p(x(k)|z(k), Z k1 ) =

(10.3) 1), P(k|k 1)) .

Maximizar la funcin anterior es equivalente a calcular una estimacin maximum a posteriori (MAP). Esto es tambin equivalente a minimizar V (x(k)) , i.e. maximizar la funcin de salud f (J ). La funcin de salud estndar (i.e. dividida por la suma de las saludes) es una aproximacin de la funcin de densidad condicional (PDF). p(x(k)|Z k ) = p(z(k)|x(k)) p(x(k)|Z k1 ) . p(z(k)|x(k)) p(x(k)|Z k1 ) (10.4)

De todo lo anterior queda claro que es posible calcular precisamente las no linealidades de las funciones f y g, sin embargo la introduccin de la hiptesis de ruido gaussiano no se puede evitar. Para determinar el radio de la zona de bsqueda, usamos la distancia de Mahalanobis d = (x(k|k 1) x(k 1|k 1)) P 1 (k|k)(x(k|k 1) x(k 1|k 1)) que mide la incertidumbre de la estimacin x(k). (10.5)

10.2.1.

Consideraciones de diseo

La arquitectura del vehculo est basada en una arquitectura hbrida (AFREB) con un amplio rango de metodologas reactivas de control. La arquitectura AFREB

146

10. APLICACIONES II: ROBOT MVIL

consiste en los siguientes mdulos: supervisor de fusin, primitivas de comportamiento y ejecutor. La funcin del mdulo supervisor de fusin es el clculo del peso asignado a cada primitiva de comportamiento. La funcin del mdulo ejecutor es el calculo de las ordenes dadas al robot basadas en los pesos de las primitivas de comportamiento. Las entradas estndar del ejecutor son la velocidad v y la curvatura . La primitiva de comportamiento puede ser caracterizada por una secuencia temporal de valores apropiados para v y que causan que el robot exhiba una primitiva de comportamiento pre-especicada.

10.2.2.

La estructura gentica

Para resolver el problema de localizacin del robot mvil por medio de RGO, necesitamos un esquema de codicacin para codicar los parmetros del problema en cadenas genticas. Aqu, la posicin del robot se codica como una cadena por sus Coordenadas Cartesianas como: {(x1 , y1 , 1 ), (x2 , y2 , 2 ), . . . , (xn , yn , n )} (10.6)

con todos los valores guardados en forma decimal. Un conjunto de posiciones vlidas aleatorias es creado como generacin inicial alrededor de la solucin dada por el ltro extendido de Kalman. Para resolver el problema, denimos un cromosoma con una longitud de 11 bits y poblaciones con un tamao de 250 individuos. Despus de que una nueva generacin ha sido creada, calculamos la funcin de salud de cada individuo (posicin).Denir funciones de salud apropiadas es vital para conseguir buenos rendimientos en la optimizacin

10.2.3.

La funcin de salud

Para optimizar la estructura utilizando RGO, uno debe ser capaz de asignar una medida de la calidad de cada estructura en el espacio de bsqueda. La funcin de salud es responsable de esta tarea. La funcin de salud utilizada puede ser denida de la siguiente manera: Marcas de Referencia: glk = 1
ke (l pan ke ob ob pan )2 + (ltilt tilt )2

(10.7)

donde glk es el coste de la posicin correspondiente a la l-sima cadena de la ke ke k-sima generacin, l pan , ltilt son los ngulos estimados entre el robot

10.2. LOCALIZACIN DEL ROBOT MVIL UTILIZANDO UN FILTRO RGO NO-LINEAL 147

y la marca de referencia de la l-sima posicin en la poblacin en la k-sima generacin, respectivamente.


ke l pan = arcsin(

ya p y (xa px )2 + (ya p y )2 pz z a (xa px )2 + (ya p y )2

(10.8)

ke ltilt = arctan(

(10.9)

donde ( px , p y , pz ) es la posicin de la marca de referencia y (xa , ya , z a ) es la posicin de la plataforma pan-tilt. La deteccin normalizada en escala de grises se utiliza para la deteccin de marcas. La operacin de correlacin puede ser vista como una forma de convolucin donde el encaje con el modelo patrn es anlogo con el kernel de la convolucin:

i=N j=N

r (x, y) = I (x, y) M(x, y) =


i=0 j=0

M (i, j)I (x + i, y + j) (10.10)

es decir, cada resultado de N pixels del modelo M(x, y) es multiplicado por los N pixels de la imagen base I (x, y), y todos estos productos son sumados. Finalmente el resultado es convertido en porcentaje, donde 100 % signica que encaja perfectamente: scor e = max(r, 0)2 100 % (10.11)

Para separar los resultados de la correlacin normalizada se considera un umbral de aceptacin. Si la correspondencia entre la imagen y el modelo es menor que este nivel no se considera. Los ngulos pan y tilt de la cmara respecto de la marca de referencia son: d px (C x u c ) ob (10.12) pan = arctan f
ob tilt = arctan

d py (vc C y ) f

(10.13)

donde f es la distancia focal, (u c , vc ) es el centro de la marca de referencia, (C x , C y ) es el centro de la imagen y (d px , d py ) es el tamao de celda.

148

10. APLICACIONES II: ROBOT MVIL

Segmentos del entorno: glk = 1


n ke i=0 (Dls ob Ds )2

(10.14)

donde glk es el coste de la posicin correspondiente a la l-sima cadena de ke la k-sima generacin. Dls es la distancia estimada entre el sonar y el segmento de la l-sima generacin, respectivamente.
ke Dls (i) = n 1 Xr Xs i (cos sn + sin sn tan sn ) (Ysn Yr ) tan sn sin(su + r sn ) (10.15)

s donde (X r , Yr , r ) es la posicin y orientacin del vehculo, (X r , Yrs , sn ) es la a posicin y orientacin del segmento observado y su el ngulo del sensor.

10.3.

Resultados experimentales

Con la nalidad de comprobar la abilidad y robustez del sistema de relocalizacin se ha realizado un estudio comparativo, con el vehculo detenido, con la nalidad de evaluar la mejora que supone la introduccin del mtodo anteriormente descrito en el proceso de localizacin del vehculo. Los resultados obtenidos se muestran en la siguiente tabla: Nm. generaciones 2a gen. 3a gen. 4a gen. 40 12 8 60 31 29

Con RGO Sin RGO

Tab. 10.1: Localizacin en posicin con y sin RGO (1). Error en mm.
En las tablas 10.1 y 10.2 se muestra la evolucin del error de posicin y orientacin del vehculo, al introducir en el sistema errores respectivos de 20 cm y 10 deg. En las tablas 10.3 y 10.4 se han introducido simultneamente errores de posicin y ngulo. En las tablas anteriores, se pone de maniesto la mejora que produce la implantacin del mtodo descrito en el proceso de localizacin. El principal inconveniente radica en el elevado tiempo de ciclo que requiere para su ejecucin, del orden de 15 veces el necesario para el mtodo de la proyeccin.

10.3. RESULTADOS EXPERIMENTALES

149

2a gen. Con RGO Sin RGO

Nm. generaciones 3a gen. 4a gen. -2.6 1.8 0.2 -3.9 2.6 -2

Tab. 10.2: Localizacin angular con y sin RGO (1). Error en grados.

2a gen. Con RGO Sin RGO

Nm. generaciones 3a gen. 4a gen. 49 11 8 61 31 18

Tab. 10.3: Localizacin en posicin con y sin RGO (2). Error en mm.

2a gen. Con RGO Sin RGO

Nm. generaciones 3a gen. 4a gen. 3.7 -0.5 1 4.1 -5.2 2.1

Tab. 10.4: Localizacin angular con y sin RGO (2). Error en grados.

150

10. APLICACIONES II: ROBOT MVIL

11. CONCLUSIONES Y TRABAJO FUTURO.


11.1. 11.1.1. Conclusiones Resumen y conclusiones

En esta tesis se ha desarrollado un nuevo mtodo Optimizacin Gentica Restringida (RGO) y las ventajas de su utilizacin en la identicacin de sistemas no lineales, en la estimacin de estados (Filtro de Kalman extendido), en el diseo de controladores adaptativos y aplicaciones a la relocalizacin de Robots mviles.

11.2.

Aportaciones principales

Se ha desarrollado el mtodo de optimizacin RGO (Restricted Genetic Optimization) para funciones que varen con el tiempo. Este mtodo ha probado ser muy til para minimizar o maximizar funciones no-lineales y no-diferenciables. Este mtodo est especialmente indicado para su uso en la identicacin para el control de sistemas dinmicos. El mtodo RGO ha sido utilizado en la identicacin en la forma de entradasalida [cap. 5], y en la forma de variables de estado [cap. 7] con excelentes resultados. Las ventajas principales han sido su utilizacin en lnea y su aplicabilidad a sistemas no-lineales. Tambin ha sido aplicado este mtodo a la estimacin de estados [cap 6], creando dos nuevos ltros de Kalman extendidos, que se pueden aplicar a la estimacin de estados en lnea, de sistemas no lineales y los resultados han sido muy buenos. Este mtodo ha sido aplicado muy ecientemente a la localizacin de robots mviles [cap 10]. Seguidamente, se ha aplicado a la realizacin de controladores adaptativos no lineales basados en el mtodo RGO: PID-RGO[cap. 8, 9], controlador predictivo RGO [cap. 8, 9] y controlador en variables de estado RGO [cap. 9].

152

11. CONCLUSIONES Y TRABAJO FUTURO.

Estos controladores han demostrado su vala al ser aplicados al control del TRMS (Twin Rotor MIMO System)[cap 9], que es un laboratorio diseado expresamente para realizar experimentos de control y en ciertos aspectos su comportamiento recuerda el de un helicptero. Desde el punto de vista de control ejemplica un sistema de orden alto con acoplamientos cruzados muy signicativos. En el campo de la robtica, el mtodo RGO se ha aplicado al sistema de localizacin para la navegacin de robots mviles en entornos interiores semiestructurados. El algoritmo propuesto est basado en un ltro de Kalman extendido iterativo, que utiliza la correspondencia entre las marcas observadas y las de un mapa dado a priori para corregir la posicin y orientacin del vehculo.

11.3.

Trabajo Futuro

El mtodo RGO ha demostrado ser muy efectivo en resolver problemas de identicacin y control. En el futuro, ser muy interesante aplicarlo al reconocimiento de la estructura del modelo y la identicacin de qu regresores son los ms signicativos en la construccin de dicho modelo. Tambin estamos pensando aplicarlo a diversas partes de la robtica como la localizacin de robots y la planicacin de trayectorias. Una tercera lnea de avance es la aplicacin de otros algoritmos evolutivos, tales como las Estrategias Genticas (Evolutionary Strategies) y la Programacin Gentica (Genetic Programming) para manejar estos problemas y comparar los resultados. Los Algoritmos Genticos Paralelos (Parallel Genetic Algorithms) tambin pueden ser de gran ayuda a la hora de mejorar las prestaciones de los algoritmos diseados y con ms aplicaciones en el mundo real.

BIBLIOGRAFA
[1] H. Akaike. A new look at the statistical model identication. IEEE Transactions on Automatic Control, AC-19:716723, 1974. [2] H. Akaike. Markovian representation of sthocastic processes by canonical variables. SIAM Journal of Control and Optimization, 13:162173, 1975. [3] T. Alvarez, F. Tadeo, and C. De Prada. Constrained predictive control of multivariable robotic systems. In Proceedings of the 1998 IEEE International Conference on Control Applications, pages 588592. IEEE, New York, NY, USA, 1998. [4] J. Aracil and F. Gordillo. Dinmica de Sistemas. Alianza Universidad, Madrid, 1997. [5] J. M. Armingol. Localizacin Geomtrica de Robots Mviles Autnomos. PhD thesis, Univ. Carlos III, Madrid, Spain, 1997. [6] J. M. Armingol, L. E. Moreno, S. Garrido, A. de la Escalera, and M. A. Salichs. Mobile robot localization using a non-linear evolutionary lter. In 3rd IFAC Symp. on Intelligent Autonomous Vehicles (IAV98). IFAC, 1998. [7] K. Astrm and T. Hgglund. PID Controllers: Theory, Design and Tunning. Instrument Society of America, Research Triangle Park, N. C., 1995. [8] K. J. Astrm. Maximum likelihood and prediction error methods. Automatica, 16:551574, 1980. [9] K. J. Astrm and B. Wittenmark. Computer Controlled Systems. PrenticeHall, Englewood Cliffs, New Jersey, 1984. [10] K. J. Astrm and B. Wittenmark. Adaptive Control. Addison-Wesley, Reading, Massachusetts, 1995. [11] Y. Bar-Shalom and T.E. Fortmann. Tracking and Data Association. The Academic Press, London, 1988.

154

Bibliografa

[12] Y. Bar-Shalom and Xiao-Rong. Estimation and Tracking. Artech House, 1993. [13] C. Bordns. Control Predictivo Generalizado de Procesos Industriales: Formulaciones Aproximadas. PhD thesis, ETSII, Univ. de Sevilla, Spain, 1994. [14] G. E. P. Box and D. R. Jenkins. Time Series Analysis, Forecasting and Control. Holden-Day, San Francisco, 1980. [15] E. F. Camacho and C. Bordns. Model Predictive Control in the Process Industry. Springer-Verlag, Berlin, 1995. [16] R. J. Carroll and D. Ruppert. Transformation and Weighting in Regression. Chapman and Hall, New York, 1988. [17] D. E. Catlin. Estimation, Control, and the Discrete Kalman Filter. Springer-Verlag, Berlin, 1989. [18] A. Chippereld and P. Fleming. Genetic algorithms in control systems engineering. Control and Computers, 23(3):8894, 1995. [19] C. T. Chou. Geometry of Linear Systems and Identication. PhD thesis, Trinity College, Cambridge, England, 1994. [20] D. W. Clarke, C. Mohtadi, and P. S. Tuffs. Generalized predictive control: Part i. the basic algorithm. Automatica, 23(2):137148, 1987. [21] D. W. Clarke, C. Mohtadi, and P. S. Tuffs. Generalized predictive control: Part ii. extensions and interpretations. Automatica, 23(2):149160, 1987. [22] A. Corana, M. Marchesi, C. Martini, and S. Ridella. Minimizing multimodal functions of continuous variables with the simulated anneling algorithm. ACM Trans. on Mathematical Software, 13(3), 1987. [23] L. Davis. Handbook of Genetic Algorithms. Van Nostrand Reinhold, 1991. [24] A. Prez de Madrid. Aplicacin de Las Tcnicas de Programacin Dinmica al Control Predictivo Basado En Modelos. PhD thesis, Facultad de Ciencias, UNED, Madrid, Spain, 1995. [25] C. Canudas de Witt. Adaptive Control for Partially Known Systems. Elsevier, Amsterdam, 1988.

Bibliografa

155

[26] J. E. Dennis and R. B. Schnabel. Numerical Methods for Unconstrained Optimization and Nonlinear Equations. Prentice-Hall, Englewood Cliffs, New Jersey, 1983. [27] S. J. Flockton and M. J. White. Pole-zero system identication using genetic algorithms. In Proceedings 5th International Conference on Genetic Algorithms, pages 531535. University of Illinois at Urbana Champaign, USA, 17-21 July 1993. [28] U. Forsell and L. Ljung. Closed-Loop Identication Revisited. Technical report, Linkping University, Linkping, Sweden, 1997. [29] U. Forssell. Closed-loop Identication. PhD thesis, Linkping University, Linkping, Sweden, 1999. [30] U. Forssell and L. Ljung. Issues in closed-loop identication. Technical report, Linkping University, Linkping, Sweden, 1998. [31] S. Garrido, L. E. Moreno, and C. Balaguer. State estimation for nonlinear systems using restricted genetic optimization. In 11th International Conference on Industrial and Engineering Applications of Articial Intelligence and Expert Systems. IEA-AIE, 1998. [32] S. Garrido, L. E. Moreno, and M. A. Salichs. Nonlinear on-line identication of dynamic systems with restricted genetic optimization. In 6th European Congress on Intelligent Techniques and Soft Computing, Aachen, Germany, 1998. EUFIT. [33] S. Garrido, L. E. Moreno, and M. A. Salichs. Identication of state space models with rgo. In 7th European Congress on Intelligent Techniques and Soft Computing, Aachen, Germany, 1999. EUFIT. [34] P. J. Gawthrop. Parametric identication of transient signals. IMA Journal of Mathematical Control and Information, 1:117128, 1984. [35] W. Gesing and E.J. Davison. An exact penalty function algorithm for solving general constrained parameter optimization problem. Automatica, 15:175188, 1979. [36] M. Gevers. Towards a joint design of identication and control. In H. L. Trentelman and J. C. Willems, editors, Essays on Control: Perspectives in the Theory and its applications, pages 111151. Birkhuser, 1993.

156

Bibliografa

[37] D. Goldberg. Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley, Reading, MA, 1993. [38] G. H. Golub and C. F. Van Loan. Matrix Computations. The John Hopkins University Press, Baltimore, Maryland, 1989. [39] G. C. Goodwin and K. S. Sin. Adaptive Filtering, Prediction and Control. Prentice-Hall, Englewood Cliffs, N. J., 1984. [40] G. J. Gray and D. J. Murray-Smith. Nonlinear model structure identication using genetic programming. Control Eng. Practice, 6(11):13411353, 1999. [41] U. Grenander. Abstract Inference. Wiley, New York, 1981. [42] I. Gujon and P. Albrecht. A time delay neural network character recognizer for touch terminal. Technical report, ATT Bell Laboratories, 1990. [43] I. Gustafsson, L. Ljung, and T. Sderstrom. Identication of processes in closed loop identiability and accuracy aspects. Automatica, 13:5975, 1977. [44] E. J. Hannan and M. Deistler. The Statistical Theory of Linear Systems. Wiley and Sons, New York, 1988. [45] R. L. Haupt and S. E. Haupt. Practical Genetic Algorithms. WileyInterscience, New York, 1998. [46] J. Hertz, A. Krogh, and R. Palmer. Introduction to the Theory of Neural Computation. Addison-Wesley, 350 Bridge Parkway, Redwood City, CA 94065, 1991. [47] J. H. Holland. Adaptation in Natural and Articial Systems. The University of Michigan Press, Ann Arbor, 1975. [48] J. J. Hopeld and D. W. Tank. Neural computation of decisions in optimizations problems. Biol. Cybern, 1986. [49] T. C. Hsia. System Identication: Least Squares method. Lexington Books, 1977. [50] K. Hunt, D. Sbarbaro, R. Zbikowski, and P. Gathrop. Neural networks for control systems - a survey. Automatica, 28(6):10831112, 1992.

Bibliografa

157

[51] H. Hytyniemi. Regularization of parameter estimation. In 13th IFAC World Congress, San Francisco, California, 1996. [52] H. Hytyniemi. On structural identiability of dynamic models. Technical report, Helsinki University of Technology, Helsinki, Finland, 1998. [53] H. Iba, H. deGaris, and T. Sato. A numerical approach to genetic programming for system identication. Evolutionary Computation, 28(6):1083 1112, 1995. [54] R. Isermann. Practical aspects of process identication. 16:575587, 1980. Automatica,

[55] R. Isermann. Digital Control Systems. Volume I. Fundamentals, Deterministic Control. Springer-Verlag, Berlin, 1989. [56] R. Isermann. Digital Control Systems. Volume II. Sthocastic Control, Multivariable Control, Adaptive Control, Applications. Springer-Verlag, Berlin, 1989. [57] R. Isermann, K.H. Lachmann, and D. Matko. Adaptive Control Systems. Prentice-Hall International, Hemel Hempstead, UK, 1992. [58] A. Jimenez. Introduccion al Control Optimo. Universidad Politecnica de Madrid, Madrid, 1995. [59] A. Jimenez and R. Aracil. Sistemas discretos de control. Universidad Politecnica de Madrid, Madrid, 1993. [60] R. Johansson. System Modeling and Identication. Prentice-Hall, Englewood Cliffs, New Jersey, 1992. [61] C. R. Johnson. Admissibility in blind adaptive channel equalization. IEEE Control Systems Magazine, 1991. [62] A. Juditsky, H. Hjalmarsson, A. Benveniste, B. Delyon, L. Ljung, J. Sjoberg, and Q. Zhang. Nonlinear black-box models in system identication: Mathematical foundations. Automatica, 12(31):17251750, 1995. [63] S. J. Julier, J. K. Uhlmann, and H. F. Durrant-Whyte. A new approach for ltering nonlinear systems. a new approach for the nonlinear transformation of means and covariances in linear lters. IEEE Trans. on Automatic Control, 1996.

158

Bibliografa

[64] P. T. Kabamba. Balanced forms: Canonicity and parametrization. IEEE Trans. on Automatic Control, 30(11):11061109, 1985. [65] T. Kailath. Linear Systems. Prentice-Hall, Englewood Cliffs, New Jersey, 1980. [66] R. E. Kalman. Identiability and modelling in econometrics. In P. R. Krisnaiah, editor, Developments in Statistics, volume 4. Academic Press, London, 1983. [67] R. E. Kalman and R. S. Bucy. New results in linear ltering and prediction theory. J. Basic Eng. ASME, Series D:95108, 1961. [68] G. Kitagawa. Non-gaussian state-space modeling of nonstationary time series. Journal of the American Statistical Association, 82:10321063, 1987. [69] K. Kristinson and G. Dumont. System identication and control using genetic algorithms. IEEE Transactions on Systems, Man, and Cybernetics, 22(5):10331046, 1992. [70] S. Kung. Digital Neural Networks. Prentice-Hall, Englewoods Cliffs, New Jersey, 1993. [71] C. Ledoux. Identication of siso nonlinear wiener systems. Technical report, Linkping University, Linkping, Sweden, 1996. [72] W. S. Lee, B. D. O. Anderson, I. M. Y. Mareels, and R. L. Kosut. On some key issues in the windsurfer approach to adaptive robust control. Automatica, 31(11):16191636, 1995. [73] L. Ljung. System Identication Toolbox - Users Guide. The Mathworks, 1986. [74] L. Ljung. System Identication: Theory for the User. Prentice-Hall, Englewood Cliffs, N. J., 1987. [75] L. Ljung. Identication for control - what is there to learn? Technical report, Linkping University, Linkping, Sweden, 1998. [76] L. Ljung and S. Gunnarsson. Adaptation and tracking in system identication - a survey. Automatica, 26:721, 1990.

Bibliografa

159

[77] L. Ljung and T. McKelvey. A least squares interpretation of sub-space methods for system identication. Technical report, Linkping University, Linkping, Sweden, 1996. [78] L. Ljung, Sjberg, and T. McKelvey. On the use of regularization in system identication. Technical report, Linkping University, Linkping, Sweden, 1992. [79] L. Ljung and T. Sderstrom. Theory and Practice of Recursive Identication. MIT Press, Cambridge, Massachusetts, 1983. [80] W. Luo and S. A. Billings. Adaptive model selection and estimation for nonlinear systems using a sliding data window. Signal Processing, 46:179 202, 1995. [81] J. M. Maciejowski. Balanced realizations in system identication. In 7th IFAC Symposium on Identication and parameter Estimation, York, UK, 1985. [82] J. M. Maciejowski. Multivariable Feedback Design. Addison-Wesley, Wokingham, England, 1989. [83] P. S. Maybeck. Stochastic models, Estimation, and Control. Academic Press, London, 1982. [84] P. McCullagh and J. A. Nelder. Generalized Linear Models. Chapman and Hall, New York, 1989. [85] T. McKelvey. Identication of State-Space Models from Time and Frequency Data. PhD thesis, Linkping University, Linkping, Sweden, 1995. [86] Z. Michalewicz. Genetic Algorithms + Data Structures = Evolution Programs. AI Series. Springer Verlag, New-York, 1994. [87] B. C. Moore. Principal component analisys in linear systems: Controllability, observability, and model reduction. IEEE Trans. on Automatic Control, 26(1):1732, 1981. [88] K.arendra and K. Parthasarathy. Identication and control of dynamical systems using neural networks. IEEE Trans. Neural Networks, 1:427, 1990.

160

Bibliografa

[89] K.arendra and K. Parthasarathy. Gradient methods for the optimization of dynamical systems containing neural networks. IEEE Trans on Neural Networks, 2(2):252262, 1991. [90] J. P. Norton. An Introduction to Identication. Academic Press, London, 1986. [91] R. J. Ober. Balanced realizations: Canonical form, parametrization, model reduction. Int. J. Control, 46(2):643670, 1987. [92] M. Ouladsine, F. Bicking, and G. Bloch. Identication of constrained dynamic systems by genetic type algorithm. In IFAC Articial Intelligence in Real-Time Control, Blend, Slovenia, 1995. [93] P. Poddar and K. P. Unnikrishnan. Memory neuron networks: a prolegomenon. Technical Report GMR-7493, G. M. Research Laboratories, Warren, Michigan, 1991. [94] E. Polak and D. Q. Mayne. An algorithm for optimization problems with functional inequality constraints. IEEE Trans. on Automatic Control, 21:184193, 1976. [95] B. Porter and A. H. Jones. Genetic tunning of digital pid controllers. Electronic Letters, 28:843844, 1992. [96] C. De Prada and A. Valentin. Set point optimization in multivariable constrained predictive control. In Proceedings of the 13th World Congress, International Federation of Automatic Control. Vol.D. Control Design II, Optimization., pages 351356. Pergamon, Oxford, UK, 1997. [97] X. Qi and F. Palmieri. Theoretical analysis of evolutionary algorithms with an innite population size in continuous space. part i: Basic properties of selection and mutation. IEEE Trans. on Neural Networks, 5(1):102119, 1994. [98] X. Qi and F. Palmieri. Theoretical analysis of evolutionary algorithms with an innite population size in continuous space. part ii: Analysis of the diversication role of crossover. IEEE Trans. on Neural Networks, 5(1):120 129, 1994. [99] D. E. Rumelhart, G. E. Hinton, and R. J. Williams. Parallel Distributed Processing, volume 1, chapter Learning internal representations by error backpropagation, pages 318362. MIT Press, 1986.

Bibliografa

161

[100] J. Sjberg, H. Hjalmarsson, and L. Ljung. Neural networks in system identication. Technical report, Linkping University, Linkping, Sweden, 1996. [101] J. Sjberg, Q. Zhang, and L. Ljung. Nonlinear black-box modeling in system identication: a unied overview. Automatica, 31:16911724, 1995. [102] T. Sderstrom and P. Stoica. System Identication. Prentice-Hall International, Hemel Hempstead, Hertfordshire, 1989. [103] E. Sontag. Essays on Control: Perspectives in the Theory and its Applications, volume 14 of Progress in Systems and Control Theory, chapter Neural Networks for control, pages 339380. Birkhaser, 1990. [104] K. C. Tan, Y. Li, D. J. Murray-Smith, and K. C. Sharman. System identication and linearization using genetic algorithms with simulated annealing. In Proc. 1st IEE/IEEE International Conference on Genetic Algorithms in Engineering Systems: Innovations and Applications, Shefeld, UK., 1995. [105] H. Tanizaki. Nonlinear Filters. Springer, Berlin, 1996. [106] H. Tanizaki and R. S. Mariano. Nonlinear lters based on taylor series expansions. Communications in Statistics, Theory and Methods, 25(6), 1996. [107] R. Valverde. Control de Sistemas mediante Redes Neuronales. Aprendizaje por Refuerzo. PhD thesis, Univ. Carlos III, Madrid, Spain, 1999. [108] P. M. J. van den Hof and R. J. P. Schrama. Identication and control closed-loop issues. Automatica, 31(12):17511770, 1995. [109] A. J. M. van Overbeek and L. Ljung. On-line structure selection for multivariable state space models. Automatica, 18(5):529543, 1992. [110] P.E. Wellstead and M.B. Zarrop. Selftunning Systems: Control and Signal Processing. John Wiley and Sons, Chichester, U.K., 1991. [111] P. J. Werbos. Back propagation through time: What it does, how do it. Proceedings IEEE, 1990. [112] D. White and D. Sofge, editors. Handbook of Intelligent Control, Neural, Fuzzy, and Adaptive Approaches. Multiscience Press, Inc., Van Nostrand Reinhold, 115 Fifth Avenue, New York, NY 10003, 1992.

162

Bibliografa

[113] R. P. Wishner, J. A. Tabaczynski, and M. Athans. A comparison of three non-linear lters. Automatica, 5:487496, 1989. [114] Z. Yang, T. Hachino, and T. Tsuji. On-line identication of continuous time delay systems combining least squares techniques with genetic algorithms. Int. J. Control, 66(1):2342, 1996. [115] D. Yuret. From genetic algorithms to efcient optimization. Technical report, MIT, Cambridge, Massachusetts, 1996. [116] L. A. Zadeh. From circuit theory to system theory. In Proc. IRE 50, pages 856865, 1962.

Bibliografa

163

[1] [2] [3] [4] [5] [6] [8] [7] [9] [10] [11] [12] [13] [14] [15] [25] [17] [18] [19] [20] [21] [22] [23] [96] [26] [27] [28] [31] [32] [33] [34] [35] [37] [38] [39] [40] [44] [45] [46] [47] [49] [50] [51] [52] [53] [54] [55] [56] [57] [59] [58] [60] [62] [63] [64] [65] [67] [66] [68] [69] [70] [71] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [85] [86] [87] [88] [90] [91] [92] [24] [94] [95] [97] [98] [100] [101] [102] [103] [105] [104] [106] [107] [108] [109] [110] [112] [113] [114] [115]

Vous aimerez peut-être aussi