Anda di halaman 1dari 308

Departamento de Ingeniera Electrnica, de Sistemas Informticos y Automtica Escuela Politcnica Superior

Sntesis de Sistemas de Control Borroso Estables por Diseo

Tesis Doctoral de Antonio Javier Barragn Pia Dirigida por Jos Manuel Andjar Mrquez

UNIVERSIDAD DE HUELVA
MAYO 2009

Esta obra est bajo una licencia Reconocimiento-Compartir bajo la misma licencia 3.0 Espaa de Creative Commons. Para ver una copia de esta licencia envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA, o visite http://creativecommons.org/licenses/by-sa/3.0/es. El CD adjunto incluye el cdigo fuente necesario para la creacin de las grcas y simulaciones de cada uno de los captulos de esta Tesis. En caso de no disponer de este cdigo puede solicitarlo a su autor en la direccin http://uhu.es/antonio.barragan. Gran parte del cdigo generado ha sido escrito en C/C++. Este cdigo ha sido compilado en GNU/Linux mediante GCC (http://gcc.gnu.org), y en MS-Windows1 mediante MinGW (http://www.mingw.org). Junto con el cdigo fuente se proporciona la funcin necesaria para compilar todas las aplicaciones de MATLAB 2 (MEX les) incluidas en el cdigo. Previamente deber estar congurado el entorno de compilacin de MATLAB , para ello ejecute mex -setup. Todo el cdigo generado en este trabajo ha sido licenciado bajo la licencia GNU/GPL v3 o superior. Puede consultar esta liencia en http://www.gnu.org/licenses/gpl.html o en el archivo LICENSE.txt incluido en el CD que se adjunta a esta Tesis. Los cheros eps y tex correspondientes a la mayora de las grcas se esta Tesis se han obtenido mediante laprint, de Arno Linnemann (http://www.mathworks.es/matlabcentral/fileexchange/4638), el resto de guras se han generado a partir PSTricks (http://www.tug.org/PSTricks) y MetaPost (http://www.tug.org/metapost.html). Para la realizacin de las portadas y la edicin de imgenes se ha utilizado The Gimp (http://www.gimp.org) e InkScape (http://www.inkscape.org). A Esta Tesis ha sido escrita en L TEX 2 con la ayuda de Kile (http://kile.sourceforge.net). Los archivos fuente estn en formato UTF-8 con saltos de lnea en codicacin UNIX. ISBN: 978-84-92944-72-9 Depsito Legal: H 34-2010
1 2

El nombre y marca Microsoft es propiedad de dicha empresa (http://www.microsoft.com). Actualmente la licencia de MATLAB es propiedad de MathWorks Inc (http://www.mathworks.com/).

A mi esposa Yolanda por el tiempo que hemos perdido de estar juntos, a mis padres, sin cuyo esfuerzo me habra sido imposible llegar hasta aqu, y a mis hermanos por su cario y apoyo constante.

Agradecimientos
El autor quiere manifestar su ms profundo agradecimiento al Dr. Jos Manuel Andjar Mrquez por su dedicacin constante a la direccin de esta Tesis, y sin cuyo esfuerzo habra sido imposible su culminacin. En el mismo sentido, se desea reconocer la inestimable ayuda prestada por el Dr. Manuel Emilio Gegndez rias, quien nunca ha escatimado dedicar su tiempo para asistir a este doctorando. El autor tambin desea agradecer a todos sus compaeros y amigos el apoyo y el nimo costante que ha recibido.

Indice general
1 Planteamiento general de la Tesis

1 2 5 8 13 13 15 18 19 43 44 46 50 56 57 57 58 61 62 73 74 75 77 84 85 91

1.1 Resumen de la Tesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Innovaciones que aporta la Tesis . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Rendimiento cientco de la Tesis . . . . . . . . . . . . . . . . . . . . . . . .
2 Introduccin a la lgica borrosa y sus aplicaciones

2.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Breve historia de la lgica borrosa . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Fundamentos de los sistemas borrosos . . 2.3.1 Conjuntos borrosos y funciones de 2.3.2 Variables lingsticas . . . . . . . 2.3.3 Regla borrosa . . . . . . . . . . . 2.3.4 Sistema de inferencia borroso . . 2.3.5 Tipos de sistemas borrosos . . . . . . . . . . . pertenencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4 Conclusiones y comentarios bibliogrcos . . . . . . . . . . . . . . . . . . . .


3 Modelado borroso de sistemas dinmicos

3.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Modelo de estado de un sistema dinmico . . . . . . . . . . . . . . . 3.2 Modelo de estado de un sistema de control borroso . . . . . . . . . . . . . . 3.2.1 Sistema borroso de tipo TSK . . . . . . . . . . . . . . . . . . . . . . 3.2.2 Sistema borroso de tipo Mamdani . . . . . . . . . . . . . . . . . . . . 3.3 Identicacin de modelos borrosos . . 3.3.1 Identicacin de la estructura 3.3.2 Estimacin de parmetros . . 3.3.3 Validacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4 Diseo del software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Conclusiones y comentarios bibliogrcos . . . . . . . . . . . . . . . . . . . . i

ii
4

NDICE GENERAL

Anlisis de sistemas dinmicos mediante modelos borrosos

4.1 4.2 4.3 4.4

Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . Linealizacin de un modelo borroso de estado . . . . . . . . Matriz jacobiana de un sistema de control borroso . . . . . . Estados de equilibrio de un sistema de control borroso . . . . 4.4.1 Mtodos numricos para la minimizacin de funciones 4.5 Diseo del software . . . . . . . . . . . . . . . . . . . . . . . 4.6 Conclusiones y comentarios bibliogrcos . . . . . . . . . . . 5.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . 5.2 Teora de estabilidad de Lyapunov . . . . . . . . . . . 5.2.1 Mtodo directo de Lyapunov . . . . . . . . . . 5.2.2 Mtodo de Krasovskii . . . . . . . . . . . . . . 5.3 Control heurstico de sistemas dinmicos . . . . . . . 5.4 Sntesis de controladores borrosos estables por diseo 5.4.1 Identicacin de la planta . . . . . . . . . . . 5.4.2 Estudio dinmico de la planta . . . . . . . . . 5.4.3 Diseo del controlador borroso . . . . . . . . . 5.4.4 Algoritmo de diseo . . . . . . . . . . . . . . 5.5 Conclusiones y comentarios bibliogrcos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

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

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

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

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

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

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

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

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

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

93 94 94 104 115 116 118 120 123 123 125 127 128 129 131 132 132 133 138 143 145 145 146 158 158 179 193 222

Diseo de controladores borrosos

Aplicaciones

6.1 Control heurstico . . . . . . . . . . . . . . . . . . . . . 6.1.1 Control borroso basado en heurstica de una gra 6.2 Sntesis de controladores borrosos estables por diseo . 6.2.1 Ejemplo ilustrativo . . . . . . . . . . . . . . . . 6.2.2 Pndulo . . . . . . . . . . . . . . . . . . . . . . 6.2.3 Balancn . . . . . . . . . . . . . . . . . . . . . . 6.3 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . .
7 Conclusiones y desarrollos futuros

. . . . . . . . . . . porta contenedores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

223 7.1 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 7.2 Desarrollos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 229 233 239

A B C D

Leyenda de ndices y variables Derivadas de las principales funciones de pertenencia Descomposicin de Cholesky Denicin del software

241 D.1 Clase Membership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 D.2 Clase Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

NDICE GENERAL

1 246 247 248 250 257 261 263 269

D.3 D.4 D.5 D.6

Clase System . Clase Jacobian Utilidades . . . Otros archivos .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

ndice de guras ndice de tablas ndice alfabtico Bibliografa

Cap tulo

Planteamiento general de la Tesis

l objetivo fundamental de esta Tesis es establecer una metodologa de diseo de controladores borrosos lo ms general posible, de forma que se garantice la estabilidad del sistema de control en lazo cerrado. De igual forma, se desea contribuir a la formalizacin de los sistemas borrosos con herramientas que permitan el anlisis de estos sistemas segn la teora de control no lineal aceptada por la comunidad cientca.

Este texto est concebido como parte de un trabajo perteneciente al Grupo de Investigacin de Control y Robtica (TEP192) en el que se ha desarrollado, por lo que lejos de pretender ser un trabajo aislado, persigue mantener la sinergia dentro de dicho grupo de investigacin. En este equipo, y bajo la direccin del Dr. Jos Manuel Andjar Mrquez, se estn realizando varias tesis doctorales de forma simultnea cuyas lneas generales de trabajo son, entre otras, la lgica borrosa, el control no lineal y la aplicacin prctica de estas herramientas a sistemas reales. En esta Tesis se estudian fundamentalmente los sistemas borrosos de tipo Takagi-SugenoKang (TSK), ya que, como se ver a lo largo del texto, stos permiten la representacin de cualquier sistema no lineal mediante un nmero reducido de reglas. Aunque tambin se estudian otros sistemas borrosos, tan slo se hace con carcter introductorio, ya que todo el trabajo de la Tesis se basa en los sistemas borrosos de tipo TSK. El grupo de investigacin en el que se ha desarrollado esta Tesis tiene una amplia experiencia en el estudio de los sistemas borrosos, y cuenta con bastantes publicaciones en revistas internacionales de primer nivel y en congresos tanto nacionales como internacionales. Este primer captulo est estructurado en tres secciones. En la primera seccin se presentar un resumen de la Tesis, donde se recorren uno a uno los captulos que la conforman para dar una idea general de su contenido. En la segunda seccin se vuelven a repasar cada uno de los captulos del texto, pero enfatizando en esta ocasin las aportaciones novedosas que cada uno de ellos aporta al estado del arte. Finalmente, en la ltima seccin se muestra el rendimiento cientco de la Tesis, el cual supone una validacin del trabajo realizado por parte de la comunidad cientca tanto nacional como internacional, as como una muestra clara del grado de innovacin de la misma. 1

PLANTEAMIENTO GENERAL DE LA TESIS

1.1

1.1.

Resumen de la Tesis

Esta memoria est organizada en siete captulos y cuatro apndices, cuyo contenido se describe brevemente a continuacin: En el Captulo 1, Planteamiento general de la Tesis, como su propio nombre indica, se realiza una descripcin de la estructura de la Tesis y se comentan brevemente cada uno de los captulos que la componen. En este captulo tambin se recogen las innovaciones principales de la Tesis y se efecta un anlisis del rendimiento cientco que este trabajo ha producido hasta la fecha. El Captulo 2, Introduccin a la lgica borrosa y sus aplicaciones, realiza una breve introduccin a la lgica borrosa y sus aplicaciones a travs un recorrido histrico, marcando los hitos principales y realizando especial hincapi en las aplicaciones de control. Posteriormente se estudian los fundamentos de los sistemas borrosos. Este estudio se realiza con la intencin de que el texto sea autocontenido y no se requiera acudir a otros textos para comprender los mecanismos que se utilizarn en los captulos siguientes, no obstante, se proporcionan abundantes referencias que permiten ampliar dichos contenidos. Esta seccin comienza, como no puede ser de otra forma, con la denicin de conjunto borroso y las funciones de pertenencia como mecanismo de denicin de los mismos, as como algunas propiedades de stos. Posteriormente se presentan las operaciones bsicas con conjuntos borrosos: unin, interseccin, negacin, . . . , y se dene el concepto de variable lingstica. A partir de los conocimientos anteriores ya es posible dar el paso a la construccin de reglas borrosas y al estudio de los distintos tipos de sistemas borrosos existentes junto con sus mtodos de inferencia. De esta forma se da por concluido el estudio de los fundamentos de la lgica borrosa. El Captulo 3, Modelado borroso de sistemas dinmicos, afronta la necesidad de obtener un modelo de la planta para poder as estudiar el sistema de manera formal, siempre desde el punto de vista de la lgica borrosa. Con objeto de poder aplicar las tcnicas aceptadas por la comunidad cientca para el estudio de sistemas no lineales, el modelado borroso se estudia desde la perspectiva de los modelos de estado. As se dene el modelo borroso de estado como una sucesin de reglas que describen la variacin del vector de estado en funcin del propio vector de estado y del vector de control. Aunque en este captulo se presentan tanto los sistemas borrosos de tipo Mamdani como los de tipo TSK, el estudio se centra en los sistemas de tipo TSK, ya que en ellos estn basados el resto de captulos de esta Tesis. Una vez denido el modelo borroso de estado de la planta, se obtiene su modelo matemtico equivalente y se propone una extensin del vector de estado para simplicar la representacin de la ecuacin obtenida. A lo largo del texto no slo se utiliza el modelo borroso de la planta, si no que ser necesario la utilizacin de un controlador borroso y del sistema formado por la planta y el controlador, es decir, del sistema borroso en lazo cerrado o realimentado. Por lo tanto, se procede al estudio tanto del modelo borroso del controlador como del modelo del sistema en lazo cerrado, obtenindose en ambos casos el modelo matemtico equivalente del sistema objeto de estudio. En ambos modelos matemticos se utiliza la extensin del vector de estado propuesta para simplicar la representacin de las ecuaciones obtenidas. Para completar este apartado del captulo 3 se proponen unos algoritmos que permiten el clculo de los modelos matemticos en cuestin.

1.1

RESUMEN DE LA TESIS

Llegados a este punto del captulo, se ha visto cmo se puede representar tanto una planta como un controlador desde el punto de vista de la lgica borrosa, y se han obtenido los modelos matemticos equivalentes a dichas representaciones; sin embargo, an no se ha visto cmo obtener el modelo borroso de un sistema. En la seccin 3.3 se estudia precisamente esto, la identicacin de un sistema a partir de datos de entrada/salida mediante la aplicacin de modelos borrosos. Esta seccin est dividida en tres subsecciones donde se estudian cada una de las fases del proceso de modelado, a saber: identicacin de la estructura, identicacin de los parmetros y validacin del modelo. En la fase de identicacin de la estructura se estudian las tcnicas de clustering , particionamiento uniforme y particionamiento experto; en la fase de identicacin de los parmetros se presenta la metodologa neuroborrosa y se propone una nueva metodologa hbrida bioinspirada y neuroborrosa; nalmente, se estudian distintas tcnicas de validacin. Antes de concluir el captulo 3 se presenta, mediante clases UML, el software diseado para almacenar modelos borrosos generales de tipo TSK, as como una serie de funciones adicionales que facilitan el tratamiento de dichos sistemas. El Captulo 4, Anlisis de sistemas dinmicos mediante modelos borrosos, est dedicado a la extraccin de informacin de un sistema real a partir de un modelo borroso de ste. Tras una breve introduccin, se resuelve en primer lugar la linealizacin de un modelo borroso de estado completamente general, sin limitacin en el nmero de reglas de ste, ni en el tamao de los vectores de estado y control, ni en el tipo de funcin de pertenencia utilizada para cada uno de los conjuntos borrosos del modelo, ya que incluso se permite la mezcla de distintas funciones de pertenencia en un mismo modelo. Hay que tener en cuenta que esta linealizacin se hace de forma completa, es decir, sin eliminar ni simplicar ningn elemento del sistema borroso. La linealizacin de un modelo borroso puede ser utilizada para extraer informacin importante del sistema real al que representa, como por ejemplo la estabilidad local de algn estado de equilibrio. Lo mismo sucede con el sistema en lazo cerrado. Poseer el modelo linealizado de un sistema de control borroso en lazo cerrado permite estudiar dicho sistema y obtener cierta informacin de su comportamiento. As pues, el siguiente paso a resolver en este captulo es la obtencin de la matriz jacobiana de un sistema de control borroso completamente general (entindase general en los mismos trminos anteriores). Realimentando los modelos matemticos equivalentes de la planta y del controlador obtenidos en el captulo anterior, y procediendo a calcular su derivada con respecto a cada una de las variables de estado, se obtiene la matriz jacobiana buscada. La obtencin de los estados de equilibrio de un sistema proporciona una valiosa informacin sobre el comportamiento de ste, especialmente si se trata de un sistema no lineal. En la seccin 4.4 se aborda la obtencin de los estados de equilibrio de un sistema borroso mediante una metodologa basada en mtodos numricos clsicos, tanto para el modelo borroso de la planta como para el del sistema de control borroso en lazo cerrado. En base a las ecuaciones utilizadas por los mtodos numricos de minimizacin, se propone la utilizacin de la matriz jacobiana calculada en este mismo captulo tanto para acelerar la convergencia de los algoritmos numricos como para mejorar su precisin. Por ltimo, el captulo 4 concluye con la propuesta de unos algoritmos para la realizacin del clculo del sistema borroso linealizado y de la matriz jacobiana del sistema borroso en lazo cerrado.

PLANTEAMIENTO GENERAL DE LA TESIS

1.1

El Captulo 5, Diseo de controladores borrosos, est enfocado, como su propio nombre indica, al diseo de controladores borrosos. En primer lugar se realiza una breve revisin histrica, centrada en el mbito del control, del proceso de formalizacin de la lgica borrosa realizado por la comunidad cientca. La teora de estabilidad de Lyapunov es sin duda alguna la herramienta ms utilizada para el estudio y diseo de sistemas de control no lineales, y posiblemente tambin una de las ms exibles. Por todo ello, el principio de este captulo se dedica a su estudio como herramienta necesaria en los desarrollos posteriores. Tambin se estudia el mtodo de Krasovskii como un forma concreta de aplicacin de la teora de Lyapunov al estudio y diseo de sistema de control no lineales. El diseo de controladores borrosos puede realizarse fundamentalmente desde dos enfoques: 1) heurstico, a partir del conocimiento de un operario experto, y 2) formal, mediante un estudio de estabilidad del sistema de control. En este captulo se estudian ambos enfoques. El enfoque heurstico permite disear una solucin mediante reglas empricas basadas en el conocimiento de un experto, mientras que el enfoque basado en la teora de control no lineal permite garantizar formalmente la estabilidad del sistema de control resultante. Uno de los objetivos fundamentales de esta Tesis es establecer una metodologa lo ms general posible que permita la sntesis de controladores borrosos estables por diseo, es decir, que la estabilidad quede garantizada durante el propio proceso de diseo del controlador. En este captulo se propone una metodologa de diseo general basada en tres pasos: identicacin de la planta y representacin de la misma en forma de modelo borroso de estado, estudio de sta a partir del modelo borroso obtenido, y diseo de un controlador borroso que garantice la estabilidad asinttica del sistema en lazo cerrado. Llegados a este punto ya se han estudiado los dos primeros pasos de esta metodologa. Para posibilitar la realizacin del tercer punto se propone un nuevo teorema de estabilidad basado en la teora de Lyapunov, e inspirado en el teorema de Krasovskii, a partir del cual se pueden disear controladores borrosos estables por diseo. Finalmente, el captulo concluye con una propuesta de algoritmo de diseo para la sntesis de controladores borrosos estables en base al nuevo teorema propuesto. En el Captulo 6, Aplicaciones, se aborda el anlisis y diseo de sistemas de control borroso a partir de las tcnicas presentadas en los captulos anteriores. En primer lugar se disea un controlador borroso para un sistema complejo, una gra porta contenedores, a partir del conocimiento de un experto. A continuacin se muestra la metodologa de diseo propuesta en el captulo 5 mediante tres ejemplos, para lo cual es necesario realizar: 1) identicacin de la planta mediante un modelo borroso de estado segn lo visto en el captulo 3; 2) anlisis de la planta mediante la extraccin de sus estados de equilibrio y estudio de la estabilidad local de los mismos a partir de su modelo borroso, segn lo visto en el captulo 4; y 3) diseo de un controlador borroso que estabilice la planta, a partir del algoritmo de diseo propuesto en el captulo 5. En todos los casos, una vez diseado el controlador se realiza una simulacin para comprobar el correcto funcionamiento del mismo, junto con un anlisis de la estabilidad local del estado de equilibrio del sistema de lazo cerrado resultante. Para ello se emplean nuevamente los algoritmos propuestos en el captulo 4. El Captulo 7, Conclusiones y desarrollos futuros, incide en las conclusiones que se derivan de la Tesis. A continuacin, se esbozan los temas que, sustentados en desarrollos y propuestas de la Tesis, dejan el camino abierto para ser resueltos en trabajos futuros.

1.2

INNOVACIONES QUE APORTA LA TESIS

El Apndice A, Leyenda de ndices y variables, recoge una tabla con todas las variables utilizadas en la Tesis, incluyendo una breve explicacin del signicado de cada una de ellas y del contexto en el que se utilizan. En el Apndice B, Derivadas de las principales funciones de pertenencia, se calculan las derivadas de todas las funciones de pertenencia presentadas en el captulo 1. Estas derivadas sern necesarias en tiempo de ejecucin para calcular las aproximaciones lineales de los modelos borrosos de lazo abierto y de lazo cerrado. En el Apndice C, Descomposicin de Cholesky, se explica la descomposicin de Cholesky, la cual permite la transformar una matriz simtrica denida positiva en el producto de una matriz triangular y su traspuesta, donde se cumple que todos los elementos de la diagonal de dicha matriz triangular son positivos. La descomposicin de Cholesky tambin puede ser utilizada en sentido inverso, es decir, partiendo de una matriz triangular con valores positivos en los elementos de su de la diagonal, se obtiene una matriz simtrica denida positiva. Esta descomposicin es parte del algoritmo de diseo de controladores propuesto en el captulo 5. En el Apndice D, Denicin del software, se incluyen las cabeceras (archivos .h) del software diseado en los captulos anteriores. Estos cheros, junto con los diagramas UML realizados, resultan imprescindibles para poder utilizar el software diseado en el desarrollo de nuevas funciones basadas en modelos borrosos.

1.2. Innovaciones que aporta la Tesis


En esta seccin se ordenan por captulos los aspectos innovadores que pretende incorporar este trabajo al campo de los sistemas de control borroso. El Captulo 2, Introduccin a la lgica borrosa y sus aplicaciones, est concebido como una revisin histrica del uso de la lgica borrosa en sistemas de control. A lo largo de este captulo se ve como las reticencias iniciales de parte de la comunidad cientca sobre la lgica borrosa acabaron por desaparecer. Esto se ha debido fundamentalmente al proceso de formalizacin sufrido y a los excelentes resultados prcticos que sta ha obtenido tanto en el ambiente acadmico e investigador como en el industrial. En este captulo tambin se realiza una introduccin a la lgica borrosa con objeto de conseguir que el texto sea autocontenido y se dispongan en l de todos los fundamentos sobre lgica borrosa que puedan ser necesarios en los captulos posteriores. El Captulo 3, Modelado borroso de sistemas dinmicos, est centrado en el proceso de modelado de sistemas dinmicos mediante modelos borrosos. En este captulo se presenta un modelo borroso en forma de ecuaciones de estado de un sistema de control multivariable no lineal completamente general. Para ello no se aplica ningn tipo de restricciones ni al tamao del vector de estado, ni al del vector de control, ni al tipo de funcin de pertenencia utilizada en la denicin de los conjuntos borrosos. Para aumentar la generalidad de la propuesta, se considera que el controlador es completamente independiente del proceso de identicacin del modelo borroso de la planta, es decir, que la particin del universo de discurso de las variables de estado de la planta y del controlador borroso no tienen porqu coincidir. De la misma forma, los modelos borrosos de la planta y del controlador no tienen porqu tener el mismo nmero de reglas.

PLANTEAMIENTO GENERAL DE LA TESIS

1.2

Con objeto de poder simplicar1 la representacin de las ecuaciones anteriores, se propone la extensin del vector de estado en una componente. Con el nuevo vector de estado extendido la representacin de las ecuaciones se muestra ms compacta, lo que facilita los clculos futuros y propicia una programacin ms rpida y sencilla de las mismas. Respecto a la identicacin del modelo borroso de la planta, en este captulo se estudia la metodologa neuroborrosa, y se propone una nueva tcnica, denominada hbrida, basada en la hibridacin de la citada metodologa neuroborrosa y la heurstica bioinspirada. Esta nueva tcnica est an en una fase de desarrollo muy primaria, aunque ha demostrado ser bastante prometedora. Finalmente, se concluye con la propuesta de estructura software que permite almacenar todos los datos de un sistema de control borroso completamente general como el que se estudia a lo largo del captulo, as como de las herramientas necesarias para su tratamiento. En el Captulo 4, Anlisis de sistemas dinmicos mediante modelos borrosos, se calcula el desarrollo en serie de Taylor hasta orden uno del modelo matemtico equivalente obtenido en el captulo anterior, de esta forma se obtiene la linealizacin de un modelo borroso de estado completamente general. Esta linealizacin se realiza sin limitacin en el nmero de reglas de modelo borroso. Tampoco se limita el tamao de los vectores de estado y control, ni el tipo de funcin de pertenencia utilizada para cada uno de los conjuntos borrosos del modelo; ya que incluso es posible mezclar distintas funciones de pertenencia en una misma regla. Es importante aclarar que el modelo linealizado se calcula derivando el modelo borroso de estado completo, sin hacer ningn tipo de simplicacin sobre el mismo. El siguiente aspecto desarrollado en este captulo es la linealizacin de un sistema de control borroso completamente general, es decir, la obtencin de la matriz jacobiana del sistema resultante al realimentar el modelo borroso de la planta con el del controlador. Tanto la linealizacin del modelo borroso de la planta como la del sistema de control borroso pueden utilizarse, como se ve en el captulo 6, para analizar los sistemas no lineales originales, por ejemplo, para estudiar la estabilidad local de sus estados de equilibrio. Otro aspecto importante a la hora de analizar un sistema no lineal son sus estados de equilibrio. En el captulo 4 se propone un algoritmo numrico basado en algoritmos clsicos de minimizacin para la obtencin de los estados de equilibrio tanto de un modelo borroso como de un sistema de control borroso. En ambos casos se propone utilizar los modelos linealizados calculados con anterioridad para as mejorar la velocidad de convergencia y la precisin de los algoritmos de minimizacin. Finalmente, el captulo concluye con la propuesta de unos algoritmos que permiten realizar las linealizaciones anteriores. Estos algoritmos han sido implementados en C/C++ junto con los diagramas de clases propuestos en este captulo y en el captulo anterior. El trabajo de programacin realizado supera las 4000 lneas de cdigo y permite ser utilizado tanto en C++ como en MATLAB , para ello se han programado unas funciones adicionales, descritas en la gura 3.20, que hacen de interfaz entre el software desarrollado y MATLAB . En el Captulo 5, Diseo de controladores borrosos, se estudia el diseo de controladores borrosos desde dos enfoques: diseo a partir de reglas lingsticas obtenidas del conocimiento de un experto, y diseo basado en la teora de control no lineal. En este captulo se propone una metodologa completamente general para la sntesis de sistemas de control borroso esta1

Ntese en la expresin (3.20) que en ningn caso se est haciendo una simplicacin de las ecuaciones, si no que se modica la representacin de la misma con objeto de que stas se muestren ms compactas.

1.2

INNOVACIONES QUE APORTA LA TESIS

bles por diseo, esto es, donde la estabilidad del sistema en lazo cerrado quede garantizada durante el propio diseo del controlador. Esta metodologa consta de 3 pasos: 1) obtencin de un modelo borroso de la planta a partir de datos de entrada/salida de la misma; 2) estudio de la dinmica de la planta a travs de su modelo borroso mediante el clculo de sus estados de equilibrio y el estudio de la estabilidad local de stos; y 3) diseo de un controlador borroso mediante la aplicacin del teorema de estabilidad propuesto. Los dos primeros puntos se resuelven en captulos anteriores, mientras que para resolver el tercero de ellos se enuncia un nuevo teorema basado en la teora de Lyapunov, que inspirado en el teorema de Krasovskii, permite garantizar la estabilidad asinttica del sistema de control. Con objeto de llevar a la prctica esta metodologa de diseo, se presenta un algoritmo que genera un controlador borroso inicial a partir del modelo borroso de la planta y, posteriormente, ajusta los parmetros adaptables de los consecuentes hasta conseguir la estabilidad asinttica del sistema en lazo cerrado. Como mecanismo de ajuste del controlador borroso se escoge una metodologa de bsqueda mixta globallocal. Este ajuste consta de una fase de bsqueda global mediante algoritmos genticos, seguida de una fase de bsqueda local mediante algoritmos numricos. Con esta combinacin se consigue complementar la capacidad de bsqueda de los algoritmos genticos con la velocidad y precisin de los algoritmos numricos. El Captulo 6, Aplicaciones, aborda el anlisis y diseo de sistemas de control borroso en base a las tcnicas presentadas en los captulos anteriores. As, en este captulo se realiza el control de un sistema multivariable y altamente no lineal como es una gra porta contenedores, a partir del conocimiento extrado de un experto. Posteriormente se resuelven tres casos de diseo mediante la metodologa propuesta en el captulo 5. Estos casos son: un ejemplo ilustrativo mltiple entrada mltiple salida (MIMO), cuyo objetivo es facilitar la comprensin de la metodologa de diseo propuesta; un pndulo, como sistema no lineal con mltiples estados de equilibrio, que permite validar la fase de anlisis y diseo de la metodologa propuesta; y, nalmente, un sistema balancn, que representa un ejemplo de uso comn en la literatura especializada en control no lineal. En todos los casos, una vez diseado el controlador borroso se comprueba su correcto funcionamiento mediante simulacin. Para ello se simula el sistema realimentado compuesto por el modelo real de la planta y el controlador borroso diseado. De esta forma se garantiza que el controlador no slo estabiliza el modelo borroso de la planta, si no tambin la planta real. Mediante la ejecucin de una nueva etapa de anlisis de los estados de equilibrio, esta vez para los sistemas realimentados, se comprueba que stos posean tan slo un equilibrio dentro del universo de discurso de las variables de estado y que ste sea asintticamente estable. Mediante las aplicaciones resueltas en este captulo se comprueba de forma prctica la metodologa de diseo propuesta, as como los mecanismos de anlisis de sistemas borrosos desarrollados. Concretamente, analizando los estados de equilibrio obtenidos para cada una de las plantas propuestas mediante su modelo borroso, y comparndolos con los estados de equilibrio reales, se puede comprobar que el resultado es adecuado. Adems, si se comparan tambin los autovalores de los sistemas borrosos linealizados y los de los sistemas reales, tambin linealizados, se puede comprobar que sus valores son bastante cercanos. Esto es, es posible obtener los estados de equilibrio de un sistema real, y estudiar la estabilidad local

PLANTEAMIENTO GENERAL DE LA TESIS

1.3

de stos, a partir de un modelo borroso obtenido tan slo mediante un conjunto de datos de entrada/salida, y sin informacin previa de la planta. En conclusin, esta Tesis aporta una metodologa completa de modelado, anlisis y sntesis de sistemas de control borroso, novedosa en muchos aspectos, y cuyo desarrollo se estudia paso a paso a lo largo de toda la memoria. Adems, en cada captulo se proporciona tanto la estructura del software como los algoritmos necesarios para su implementacin prctica. Un aspecto importante de la metodologa desarrollada es que, lejos de ser una metodologa cerrada y conclusa, permite su ampliacin mediante la elaboracin de nuevos mtodos de anlisis y/o diseo extrados de la teora de control no lineal. Por ejemplo, cabra la posibilidad aadir una metodologa para analizar la dinmica de sistemas parametrizados y con mltiples equilibrios mediante un modelo borroso del mismo. De esta forma sera posible estudiar la aparicin de bifurcaciones y ciclos lmite en plantas cuya dinmica sea a priori desconocida.

1.3.

Rendimiento cientco de la Tesis

Esta seccin est dedicada a enmarcar el entorno cientco en el que se ha desarrollado la Tesis y a destacar los resultados de la investigacin realizada; para ello se detallarn las publicaciones con ndice de impacto as como otras de inters. Tambin, por supuesto, dentro del entorno cientco de la Tesis, se har hincapi en los hitos relevantes en su andadura. En denitiva, el objetivo principal de esta seccin es mostrar que la memoria que se presenta constituye la recopilacin ordenada e hilvanada de una produccin cientca realizada durante 5 aos. Beca Predoctoral Campus de Excelencia 2005 Beca obtenida en convocatoria competitiva evaluada por la ANEP/ANECA en funcin del currculum del candidato y el Proyecto de Tesis presentado. Produccin cientca por captulos Captulo 3 Modelado borroso de sistemas dinmicos La Tesis comenz su andadura propiamente dicha, con un gran esfuerzo en el estudio del proceso de modelado de sistemas dinmicos mediante modelos borrosos. Como primer resultado importante, se desarroll una metodologa completa que permite afrontar el modelado borroso, en forma de ecuaciones de estado, de un sistema de control multivariable no lineal. Este paso era y fue muy importante a lo largo de todo el proceso de desarrollo de la Tesis, ya que permiti representar el modelo borroso en el mismo lenguaje utilizado por la comunidad cientca que trabajaba en los sistemas de control no lineal, desde un punto de vista, podramos decir, clsico (no borroso). A partir de aqu se abra la puerta para poder emplear una formalizacin, ya aceptada por la comunidad cientca fuera del mbito de la lgica borrosa, al modelado y control dentro de ella. La formalizacin matemtica del sistema de control borroso se abord de forma totalmente general, sin restricciones ni en el vector de estado de la planta ni en el de control. Respecto de las tcnicas de identicacin de los parmetros del modelo de la planta, se emple la ya clsica neuroborrosa basada en

1.3

RENDIMIENTO CIENTFICO DE LA TESIS

gradiente descendente junto a otra ms novedosa, basada en la hibridacin de la tcnica anterior con la heurstica inspirada en las colonias de hormigas. Esta hibridacin de tcnicas para la identicacin paramtrica de un modelo borroso fue una novedad, ya que no existan publicaciones al respecto. Todo este trabajo qued recogido en la publicacin: Andjar, J. M., Barragn, A. J., Crdoba, J. M., Fernndez, I. Diseo de sistemas de control borroso: Modelado de la planta. Revista Iberoamericana de Automtica e Informtica Industrial (RIAI), 3(1):7581, 2006. ndices de calidad: Primera revista de Ingeniera de Control en espaol incluida en el Science Citation Index Expanded (SciSearch) y Journal Citation Reports / Science Edition. Est indexada tambin en el ISI y en SCOPUS. Est pendiente de ndice de impacto en 2008. Captulo 4 Anlisis de sistemas dinmicos mediante modelos borrosos Una vez resuelto el modelado borroso de estado, se abord, como paso siguiente, el desarrollo en serie de Taylor hasta orden uno del modelo borroso, lo cual permiti obtener la linealizacin de un modelo borroso de estado completamente general. Esta linealizacin se generaliz hasta el punto de no limitar el nmero de reglas del modelo borroso, ni el tamao de los vectores de estado y control, ni el tipo de funcin de pertenencia utilizada para cada uno de los conjuntos borrosos del modelo, ya que incluso es posible mezclar distintas funciones de pertenencia en una misma regla. Cumplido este paso, se realiment el modelo del controlador en el de la planta, y se procedi a calcular su derivada con respecto a cada una de las variables de estado, lo cual permiti obtener la matriz jacobiana de un sistema de control borroso en lazo cerrado. El desarrollo terico se compendi en un algoritmo que luego fue programado en MATLAB junto a una serie de aplicaciones para facilitar su uso. El software diseado proporciona funciones complementarias para facilitar tanto la lectura como la escritura de sistemas borrosos, as como una interfaz que permite el uso de todas las funciones desarrolladas desde el entorno de MATLAB , lo cual ha posibilitado completar y extender las posibilidades de su Fuzzy Logic Toolbox. Tanto es as, que el software est alojado en la propia pgina de Mathworks: http://www.mathworks.com/matlabcentral/fileexchange, bajo el nombre Fuzzy Logic Toolbox AddOn. Todo el trabajo descrito fue publicado en: Andjar, J. M., Barragn, A. J. A methodology to design stable nonlinear fuzzy control systems. Fuzzy Sets and Systems, 154(2):157181, 2005. ndices de calidad: Revista incluida en el primer tercio del JCR en la categora computer science, theory & methods. Artculo ms descargado en 2005. Esta revista est considerada la nmero 2 del mundo en el campo de la lgica borrosa. Su ltimo ndice de impacto disponible (2007) es 1,373. Una extensin ms didctica y autocontenida del trabajo anterior fue publicada en forma de captulo de libro: Andjar, J. M., Barragn, A. J., Gegndez, M. E., Maestre, M. Una metodologa para el diseo de sistemas de control borroso estables (Nuevas tendencias en control inteligente). CEA-IFAC, ISBN: 84-689-8640-2, 3137, 2006.

10

PLANTEAMIENTO GENERAL DE LA TESIS

1.3

Captulo 5 Diseo de controladores borrosos Captulo 6 Aplicaciones Estos dos captulos han de ir necesariamente juntos respecto a su produccin cientca, ya que los desarrollos del captulo 5 se aplican en el 6, lo cual implica que ambos captulos participan en las mismas publicaciones. Una vez terminado todo el trabajo referente a modelado, representacin y obtencin de la matriz jacobiana del sistema en lazo cerrado, se estaba en condiciones, ya que se haban creado las herramientas necesarias, de abordar el paso nal: establecer una metodologa general que permitiera la sntesis de controladores borrosos estables por diseo, es decir, que la estabilidad quedara garantizada durante el propio proceso de diseo del controlador. Sin duda la formalizacin del concepto de estabilidad deba pasar por la aplicacin, de alguna manera, del teorema de estabilidad asinttica de Lyapunov, pero descartando de entrada la bsqueda heurstica de funciones de Lyapunov, ya que es una misin, la mayora de las veces, imposible. Por ello se avanz en la lnea del teorema de Krasovskii generalizado, el cual obtiene la funcin de Lyapunov como una consecuencia de su cumplimiento. A pesar de que la formalizacin terica del procedimiento qued resuelta, no ocurri lo mismo con la prctica, ya que aparecieron serios problemas de aplicabilidad. A partir de aqu, se enunci y demostr un nuevo teorema que, basado en la teora de Lyapunov e inspirado en el teorema de Krasovskii, permite garantizar la estabilidad asinttica del sistema de control borroso en lazo cerrado. Con objeto de llevar a la prctica la aplicacin del teorema se desarroll un algoritmo que genera un controlador borroso inicial a partir del modelo borroso de la planta y, posteriormente, ajusta los parmetros adaptables de los consecuentes hasta conseguir la estabilidad asinttica del sistema en lazo cerrado. Este trabajo, culminacin de la Tesis, va a salir publicado en breves fechas: Andjar, J. M., Barragn, A. J., Gegndez, M. E. A general and formal methodology for designing stable nonlinear fuzzy control systems. IEEE Transactions on Fuzzy Systems, 2009, DOI: 10.1109/TFUZZ.2009.2021984. Artculo aceptado y en prensa. ndices de calidad: Revista incluida en el primer tercio del JCR en la categoras computer science, articial intelligence y engineering, electrical & electronic. Esta revista est considerada la nmero 1 del mundo en el campo de la lgica borrosa. Su ltimo ndice de impacto disponible (2007) es 2,137. Por ltimo, se quiso completar la Tesis con un enfoque de diseo de sistemas de control borroso al modo clsico, esto es, desde el punto de vista de la heurstica mediante la incorporacin del conocimiento de un experto. Este enfoque tiene la gran ventaja de no necesitar de modelo de la planta, aunque por el contrario no permite un anlisis riguroso y menos an formal de la estabilidad del sistema de control resultante. Esta es la metodologa de diseo de controladores que probablemente ms xitos prcticos le ha dado a la lgica borrosa, aunque tambin ha sido la ms criticada por su falta de rigurosidad y sistematizacin, aunque funciona. Fruto de este trabajo ha sido la publicacin: Andjar, J. M., Barragn, A. J., Gegndez, M. E., Maestre, M. Control borroso multivariable basado en heurstica. un caso prctico: Gra porta contenedortes. Revista Iberoamericana de Automtica e Informtica Industrial (RIAI), 4(2):8189, 2007.

1.3

RENDIMIENTO CIENTFICO DE LA TESIS

11

ndices de calidad: Primera revista de Ingeniera de Control en espaol incluida en el Science Citation Index Expanded (SciSearch) y Journal Citation Reports / Science Edition. Est indexada tambin en el ISI y en SCOPUS. Est pendiente de ndice de impacto en 2008.

Cap tulo

a la logica Introduccion borrosa y sus aplicaciones

n este captulo se inicia el estudio de los sistemas borrosos y sus conceptos fundamentales. El captulo est estructurado en tres secciones. La primera de ellas realiza una revisin de la breve pero exitosa historia de la lgica borrosa. Partiendo de la relativamente reciente creacin de la teora de conjuntos borrosos a manos de Lofti A. Zadeh, se recorren los hitos ms destacados que han culminado en el desarrollo y la aceptacin de la que goza hoy en da esta teora. A continuacin se presentan algunas aplicaciones, tanto a nivel industrial como pertenecientes al mercado de consumo, en las que la lgica borrosa ha tenido un gran xito. Esta seccin naliza con una revisin de la investigacin sobre lgica borrosa que se realiza en Espaa, un pas puntero en este aspecto, presentando las lneas de investigacin de algunos de los grupos de investigacin espaoles ms importantes. En la segunda seccin se describen los fundamentos de la lgica borrosa. Comenzando por la propia denicin de conjunto borroso, se desarrollan las deniciones y operaciones principales que dan forma a esta teora, as como los distintos tipos de sistemas borrosos existentes. La tercera y ltima seccin recoge las principales conclusiones de este captulo, as como una revisin de las referencias bibliogrcas incluidas en el mismo.

2.1. Introduccin
En 1965, el profesor de teora de sistemas de la Universidad de California (Berkeley), Lot A. Zadeh public su famoso artculo Fuzzy Sets [1]. En este trabajo present a la comunidad cientca internacional la idea de conjunto borroso1, y por extensin, de lo que se conocera como lgica borrosa. Desde entonces, el trmino lgica borrosa, o fuzzy logic, ha sido empleado desde dos puntos de vista diferentes: por un lado, la forma estricta del trmino hace referencia a un sistema lgico que generaliza la lgica digital clsica para admitir el razonamiento impreciso o bajo incertidumbre; por el otro, en un sentido ms amplio y muy comnmente utilizado, la lgica borrosa engloba todas las teoras y tecnologas que emplean
1

El trmino fuzzy se suele traducir indistintamente como borroso o difuso, aunque en ingeniera suele predominar la utilizacin del primero de ellos. No obstante, como se ver a lo largo del texto, la utilizacin de un trmino u otro es ms una cuestin de escuelas que de clasicacin por aplicaciones.

13

14

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.2

conjuntos borrosos. En cualquier caso, la lgica borrosa ha conseguido en menos de medio siglo revolucionar la tecnologa e impulsar la inteligencia articial mediante la conjuncin de los fundamentos matemticos, la lgica y el razonamiento. La lgica borrosa es una lgica multivaluada que permite valores intermedios para poder denir evaluaciones convencionales. De esta forma, no se determina si un elemento pertenece o no a un conjunto, sino la calidad de la pertenencia evaluada en un rango completo desde la no pertenencia hasta la pertenencia con la mxima calidad posible. Esta caracterstica permite el anlisis del razonamiento aproximado, mucho menos estricto que la lgica bivaluada tradicional. Tomando como base la imprecisin del razonamiento humano, pero bajo un planteamiento matemtico, la lgica borrosa es capaz de generar la respuesta a una situacin basndose en el conocimiento adquirido sobre sta, que podr ser inexacto e incompleto. Por ejemplo, mediante la lgica clsica se puede denir un conjunto de personas altas, pero esto obliga a establecer una frontera clara que separe este subconjunto del resto de elementos, como una altura de 1,80 m. Este razonamiento clsico dejara a las personas de 1, 79 m de estatura fuera del conjunto de personas altas. Es evidente que este razonamiento tan estricto de la lgica clsica choca frontalmente con el razonamiento humano, mucho ms vago e impreciso. La lgica borrosa permite establecer lmites suaves (o borrosos) para los conjuntos, haciendo que no todo tenga que ser blanco o negro, sino que es posible la existencia de niveles de grises. Siguiendo con el ejemplo pero desde el punto de vista borroso, se podra decir que una persona que mida 1,90 m est claro que es alta, o la calidad de su pertenencia al conjunto de personas altas es 1. Una que mida 1,50 m est claro que no lo es, es decir, tiene un grado de pertenencia 0 a dicho conjunto. Con las alturas intermedias se podra decir que la calidad de su pertenencia al conjunto variara entre 0 y 1, siendo mayor el grado de pertenencia cuanto ms alta sea la persona a clasicar, por ejemplo 0,25 para las personas de 1,60 m y 0,75 para las de 1,80 m. As, una persona de 1,79 m no estara excluida del conjunto de personas altas, aunque la calidad de su pertenencia a dicho conjunto sera menor que la de otra persona de mayor estatura. Desde sus inicios la lgica borrosa ha tenido que enfrentarse con constantes ataques por parte de sus detractores, y su nacimiento no fue todo lo prometedor que hoy cabra esperar viendo el xito que ha alcanzado. Pese al rechazo que gran parte de la comunidad cientca expresaba inicialmente a esta teora, en muchos casos tan solo por su nombre o por hacer nfasis en el concepto de imprecisin, se fueron creando grupos de investigacin sobre esta temtica tanto en Europa como en Estados Unidos. La posterior incorporacin de los pases asiticos al desarrollo borroso fue fundamental para dar el ltimo impulso a la teora de Zadeh. La capacidad de las empresas japonesas para aplicar la lgica borrosa a sus productos, unida a la estrecha colaboracin de estas empresas con las Universidades japonesas, fomentaron la transferencia de los conocimientos sobre lgica borrosa al campo de la ingeniera y el control. Como el propio Zadeh dijo en una entrevista concedida a La Vanguardia en el ao 2004 [2], . . . en Japn antes de discutir tericamente mi lgica se pusieron a hacerla funcionar en la prctica, y se impuso. As, desde los aos 80 Japn es el lder indiscutible del mercado de las aplicaciones borrosas y foco de innumerables avances de esta teora.

2.2

BREVE HISTORIA DE LA LGICA BORROSA

15

2.2. Breve historia de la lgica borrosa


Como ya se ha mencionado anteriormente, Lot A. Zadeh es considerado el padre de la lgica borrosa, aceptndose como fecha de su nacimiento 1965, el ao de la publicacin de su artculo Fuzzy Sets [1] en la revista Information and Control. Este artculo fue el resultado de una idea, mencionada por el profesor Zadeh en 1962 [3], sobre la necesitad de crear un nuevo tipo de matemticas, unas matemticas que permitieran expresar el conocimiento humano en trminos distintos a las distribuciones de probabilidad. Desde los inicios de la lgica borrosa no slo se han producido una gran cantidad de trabajos tericos y aplicados, sino que han visto la luz multitud de productos comerciales basados en dicha teora, originando lo que ha dado en llamarse tecnologa fuzzy. Raramente sucede en la historia de la ciencia y la tcnica que el padre de una teora matemtica pueda presenciar la eclosin de la misma y, sobre todo, su transferencia tecnolgica a la ingeniera. Pero el profesor Zadeh no se slo fue el padre de la lgica borrosa, sino que ha sido tambin uno de sus grandes impulsores. Desde que en 1965 publicara Fuzzy Sets y se centrara en su nueva teora, Lofti Zadeh ha creando multitud de artculos que la han ampliado y formalizado [412]. Hoy da Lofti Zadeh sigue participando activamente en el desarrollo de la lgica borrosa [13], y no es extrao que prologue libros sobre este tema [14, 15]. Durante la primera dcada de vida de la lgica borrosa los nacientes grupos de investigacin fueron incorporando al campo borroso las estructuras matemticas tpicas: relaciones, funciones, grafos, grupos, autmatas, gramticas, lenguajes, algoritmos y programas. As, R. E. Bellman y Zadeh trabajaron en sistemas de toma de decisin en entornos borrosos [16]. G. Lako estudi el problema desde un punto de vista lingstico [17]. J. A. Goguen investig sobre metodologas para la caracterizacin de estructuras matemticas borrosas [18], R. E. Smith y M. Sugeno trabajaron en medidas borrosas [19, 20], J. C. Dunn y J. C. Bezdeck en clustering borroso [21, 22], C. V. Negoita en la recuperacin de informacin borrosa [23, 24] y H. J. Zimmermann estudi la optimizacin borrosa [25]. Desde Espaa tambin hubo algunas aportaciones, como el estudio sobre la borrosicacin algebraica y los sistemas topolgicos realizados por los investigadores I. Sols y J. Meseguer [26, 27]. En 1974, S. Assilian y E. H. Mamdani, del Queen Mary College de Londres, establecieron el primer hito en cuanto a aplicacin industrial del control borroso. Mediante un sistema basado en reglas lingsticas consiguieron controlar un generador de vapor que no haban sido capaces de mantener bajo control mediante tcnicas convencionales [28]. Esta realizacin prctica fue uno de los frutos de la Tesis Doctoral de S. Assilian [29]. Posteriormente, en 1976, las compaas Blue Circle Cement y SIRA desarrollaron en Dinamarca un controlador para un horno de cemento, el cual incorporaba el conocimiento de operadores experimentados para su funcionamiento [30]. De esta forma, la lgica borrosa comenz poco a poco a adentrarse en los mbitos industriales. En 1977, Mamdani y King publican The application of fuzzy control systems to industrial processes [31], en el que describen cmo emplear la lgica borrosa como mtodo de control para sistemas industriales complejos. A partir de los aos 80 son las empresas japonesas las que comienzan a destacar en la utilizacin de la lgica borrosa. As, Fuji Electric desarroll una planta de tratamiento de aguas que empleaba un sistema de control borroso, lo que les permiti adquirir los conocimientos necesarios para as desarrollar el primer controlador borroso de propsito general FRUITAX (Fuzzy RUle Information processing Tool of Advanced control ), lanzado al mercado en 1985,

16

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.2

y que estaba constituido bsicamente por un procesador de 16 bits junto con un sistema de inferencia borrosa basado en FORTRAN. Al ao siguiente se produjo otro de los hitos ms importantes en la historia de la lgica borrosa, naci el primer chip VLSI para la realizacin de inferencias borrosas desarrollado por M. Togai y H. Watanabe [32]. Los chips VLSI incrementaron en gran medida las posibilidades de eleccin de sistemas basados en reglas para aplicaciones de tiempo real. En 1987, Seiji Yasunobu y sus colaboradores de la empresa Hitachi pusieron a punto el sistema de control del metro de la ciudad de Senday [33]. El enorme xito que tuvieron estos proyectos provoc un Japn un autntico boom de las aplicaciones basadas en la lgica borrosa, favoreciendo que en 1988 el gobierno japons pusiese en marcha un estudio minucioso sobre el establecimiento de proyectos de lgica borrosa entre las Universidades y la industria. Fruto de este estudio se implantaron dos programas de investigacin a nivel nacional sobre lgica borrosa, uno de ellos liderado por el MITI (Ministry of International Trade and Industry ), y el otro por la STA (Science and Technology Agency ). A travs del programa dependiente del MITI se cre el consorcio denominado LIFE (Laboratory for International Fuzzy Engineering research ), el cual agrupaba a ms de 50 compaas y posea un presupuesto de 5.000 millones de yenes (unos 50 millones de dlares) para seis aos [34]. El xito de la lgica borrosa no slo se ha demostrado a niveles industriales [35, 36], sino tambin a nivel del mercado de consumo. En 1987, Matsushita Electric Industrial Co. (conocida fuera de Japn como Panasonic) fue la primera empresa en emplear la lgica borrosa a un producto de consumo, concretamente en un sistema de ducha que controlaba la temperatura del agua. Esta misma compaa lanz en 1990 una lavadora automtica basada en lgica borrosa. A partir de entonces, una gran cantidad de compaas japonesas se apresuraron a lanzar productos que utilizaban de una u otra forma la lgica borrosa: hornos, cocinas, refrigeradores, etc. Actualmente son muchos los aparatos de consumo que incluyen algn tipo de controlador borroso. Por ejemplo, tanto las cmaras fotogrcas como las de vdeo suelen emplear un controlador borroso para realizar el enfoque automtico o el ajuste del tiempo de exposicin [3739]. En las cocinas de las casas tambin est presente la lgica borrosa, ya que muchos electrodomsticos la emplean en sus sistemas de control para ahorrar energa o agua [4042], mejorando considerablemente su eciencia. La industria del automvil es otro de los sectores donde se ha aplicado la lgica borrosa con mucho xito [4345]. Se han aplicado controladores borrosos en sistemas de suspensin activa [4648], en sistemas de frenado [4954] y en el control electrnico de motores [55]. Con la acuciante necesidad de eliminar la dependencia del petrleo, casi todos los fabricantes tienen abiertas lneas de investigacin sobre vehculos hbridos. En este campo tan tremendamente complejo tambin est triunfando la lgica borrosa como un excelente mtodo de control, y son muy numerosos los avances que se estn consiguiendo gracias al control borroso [5661]. En Espaa la investigacin sobre la lgica borrosa la impuls el Profesor Enric Trillas, catedrtico de ciencias de la computacin e inteligencia articial en la Universidad Politcnica de Madrid, quien ha sido galardonado con los tres premios ms prestigiosos que se conceden en el mbito de la lgica borrosa: el Pioneer Award de la European Society For Fuzzy Logic and Technologies (EUSFLAT), el Fellow de la International Fuzzy System Association (IFSA) y Fuzzy Systems Pioneer Award otorgado por la IEEE Computational Intelligence Society. Como autor y coautor de ms de doscientos artculos [6270] y varios libros [7174],

2.2

BREVE HISTORIA DE LA LGICA BORROSA

17

el profesor Trillas ha contribuido notablemente a convertir a Espaa en uno de los ncleos de referencia en Europa en la actividad basada en la lgica borrosa. En Espaa existen muchos grupos de investigacin que trabajan con lgica borrosa. En algunos casos la lgica borrosa es el centro y parte fundamental de su investigacin, teniendo como objetivo seguir ampliando y mejorando dicha teora; mientras que en otros casos, la lgica borrosa es empleada como herramienta para la resolucin de problemas complejos. Por citar slo algunos ejemplos, el grupo de investigacin Soft computing y sistemas de informacin inteligentes (http://sci2s.ugr.es) de la Universidad de Granada posee mltiples lneas de investigacin sobre lgica borrosa y sus aplicaciones [7586]. Entre estas lneas de investigacin destacan sus trabajos sobre sistemas genticoborrosos, toma de decisiones mediante lingstica y soft computing. El grupo de investigacin ARAI, Razonamiento Aproximado e Inteligencia Articial (http://arai.ugr.es), tambin perteneciente a la Universidad de Granada, desarrolla, entre otros, sistemas de aprendizaje, de conocimiento, de soporte a la toma de decisiones y de reconocimiento de patrones basados en lgica borrosa [8792]. El grupo de investigacin de Inteligencia computacional (http://ic.ugr.es) es otro grupo de investigacin, con sede en la Universidad de Granada, que tiene como principal objetivo la investigacin para el desarrollo de sistemas computacionales que estn en la vanguardia de la inteligencia articial. Para ello, sus investigadores emplean y desarrollan, entre otras, tcnicas basadas en lgica borrosa [66, 9399]. Los grupos de investigacin Ingeniera Automtica y Robtica [100102] y Robtica, Visin y Control (http://grvc.us.es) [103111] de la Universidad de Sevilla, investigan sobre lgica borrosa y, fundamentalmente, sobre sus aplicaciones al campo de la robtica mvil. En Madrid, el grupo Ingeniera de Sistemas, Control, Automtica y Robtica (ISCAR) de la Universidad Complutense desarrolla numerosos trabajos y proyectos de investigacin relacionados con temas de control, optimizacin, robtica y simulacin [112119], y el grupo de investigacin de Control Inteligente (http://www.disam.upm.es/control) de la Universidad Politcnica, centra su investigacin en robtica mvil y control de procesos [120125], para lo que hacen uso de la lgica borrosa como herramienta. En la Universidad de Mlaga, el grupo de Ingeniera de Sistemas y Automtica (http://www.isa.uma.es), tambin emplea la lgica borrosa en aplicaciones de control [100, 109, 126128] y robtica [111, 129, 130]. El grupo de investigacin de Inteligencia Articial e Ingeniera del Conocimiento (AIKE) (http://perseo.inf.um.es/~aike) de la Universidad de Murcia, desarrolla actividades relacionadas con la aplicacin de tcnicas de ingeniera y gestin del conocimiento a dominios diversos como la medicina, la agricultura, la evaluacin de recursos medioambientales o el diagnstico y mantenimiento de equipos de plantas industriales, empleando la lgica borrosa como herramienta en muchas de sus investigaciones [131139]. La Universidad de Valencia da cobijo a varios grupos de investigacin, como el Grupo de Control Predictivo y Optimizacin Heurstica (CPOH) (http://ctl-predictivo.upv.es), cuya investigacin se centra en temas relacionados con el control predictivo basado en modelos y la optimizacin aplicada al control de procesos [140142], y el grupo de Control de Sistemas Complejos (GCSC) (http://www.isa.upv.es/investigacion/sistemas-complejos), que centra sus estudios en el modelado y control de sistemas dinmicos que presentan incertidumbre, no linealidades y distintos modos de comportamiento [143146]. El Instituto de Automtica e Informtica Industrial (http://www.ai2.upv.es) posee varias lneas de investigacin sobre control de procesos [147150] en las que aportan caractersticas inteligentes y predictivas a la consecu-

18

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

cin de soluciones tecnolgicas empleando, entre otras herramientas, la lgica borrosa. La divisin de Automatizacin y Control de Procesos de la fundacin CARTIF de Valladolid (http://www.cartif.es), utiliza la lgica borrosa como herramienta para la consecucin de sus objetivos de investigacin aplicada, desarrollo tecnolgico e innovacin de procesos, productos y sistemas [151155]. En la Universidad Politcnica de Catalua, el grupo de Robtica Inteligente y Sistemas (http://grins.upc.es/) trabaja en el estudio, evaluacin y desarrollo de sistemas robticos [156158], y el Instituto de Investigacin en Inteligencia Articial (http://www.iiia.csic.es), perteneciente al Consejo Superior de Investigaciones Cientcas (http://www.csic.es), investiga sobre los fundamentos matemticos de la lgica borrosa, el razonamiento aproximado y la elaboracin de modelos conceptuales ecientes [159167]. Por ltimo, entre las lneas de investigacin del grupo Control y Robtica de la Universidad de Huelva, se encuentran la modelizacin y simulacin de procesos industriales, el aprendizaje automtico y el control inteligente, empleando como una de las herramientas bsicas de trabajo la lgica borrosa [168174]. Pese a los xitos del control borroso y pese a estar presente en muchos de los productos tecnolgicos que nos rodean, resulta curioso como en Espaa, a pesar de ser un pas de referencia en el campo de la investigacin, existe un gran desconocimiento sobre la lgica borrosa fuera de este mbito. Quizs sea debido a la connotacin negativa que ha tenido el trmino borroso por desconocido, o a la inercia mantenida desde los conictos iniciales de la teora tanto en Europa como en Estados Unidos. El caso es que hasta hace relativamente poco tiempo las empresas no han empezado a publicitar la utilizacin de la lgica borrosa en sus productos, aunque, eso s, utilizando la expresin inglesa fuzzy logic.

2.3.

Fundamentos de los sistemas borrosos

Se habla de sistema borroso cuando al menos uno de sus componentes emplea lgica borrosa. Los sistemas que se tratarn en este trabajo sern en todo caso sistemas de control, por lo que la lgica borrosa podr estar presente en la planta, en el controlador o en ambos elementos. La planta es el sistema fsico que se desea estudiar, controlar o monitorizar, de forma que la lgica borrosa no estar implcitamente presente en ella; sin embargo, la lgica borrosa puede utilizarse para obtener un modelo de la planta (modelo borroso), el cual, como se ver posteriormente, permitir conocer el comportamiento de la misma tanto de forma matemtica como lingstica. El controlador es el elemento que, mediante la aplicacin de distintas seales de control, intenta provocar que la planta tenga el comportamiento deseado por el diseador, segn distintos criterios de desempeo, calidad y/o robustez. El algoritmo de control implementado por ste puede estar realizado mediante lgica borrosa, denominndose en tal caso controlador borroso. En muchas ocasiones se utilizan controladores borrosos cuando el modelo de la planta es desconocido, o demasiado complejo como para ser obtenido, por lo que se suele hablar de sistema de control borroso siempre que se emplea un controlador basado en lgica borrosa en el sistema. A continuacin se estudiarn las deniciones y operaciones principales de la lgica borrosa, as como las fases y conceptos asociados a la generacin de conocimiento basado en un conjunto de reglas. El objetivo fundamental que persigue esta seccin y en general este captulo, es describir los conceptos que permitan comprender y disear sistemas que, en alguna fase

2.3

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

19

Figura 2.1: Conjunto ordinario.

Figura 2.2: Conjunto borroso.

de su implementacin, usen trminos relativos a la interpretacin del conocimiento basado en la teora de la lgica borrosa.

2.3.1. Conjuntos borrosos y funciones de pertenencia


Los conjuntos borrosos son una extensin de los conjuntos ordinarios que permiten tratar la imprecisin de forma matemtica. Un conjunto ordinario contiene la totalidad de los entes que poseen una propiedad comn. Es decir, dada una propiedad de denicin de un conjunto, todos los elementos que cumplan dicha propiedad pertenecern al conjunto, y el resto no. Cuando la propiedad es clara, la pertenencia o no de los elementos a un conjunto queda perfectamente denida, sin embargo, si la denicin de un conjunto se realiza de forma ambigua o imprecisa, ser imposible saber con certeza si ciertos elementos pertenecen o no al conjunto. Por ejemplo, dado un conjunto de nmeros, su pertenencia al conjunto de nmeros mayores de 100 est perfectamente denida, pero la pertenencia de stos al conjunto de nmeros mucho mayores de 100 ya no estara tan clara, al ser su denicin imprecisa. La diferencia entre un conjunto borroso y uno ordinario es que los lmites de los borrosos no estn denidos de forma estricta, sino mediante una funcin denominada funcin de pertenencia. En la lgica clsica, un elemento pertenecer o no a un determinado conjunto (grado de pertenencia 1 0 respectivamente), mientras que en la lgica borrosa, un elemento puede pertenecer a un conjunto con un grado de pertenencia entre 0 y 1. Al igual que en la lgica clsica, los valores 1 y 0 representan respectivamente la pertenencia absoluta o no del elemento al conjunto, pero en el caso borroso se puede pertenecer a un conjunto con un grado intermedio. En las guras 2.1 y 2.2 se muestra grcamente las diferencias entre un conjunto ordinario o ntido y un conjunto borroso. Si se considera el negro como pertenencia (valor 1) y el blanco como no pertenencia (valor 0), se puede observar que un conjunto ordinario tiene sus lmites perfectamente denidos, mientras que un conjunto borroso tiene una regin, los distintos niveles de gris, donde la calidad de la pertenencia puede tomar valores intermedios a 0 y 1. Un concepto fundamental en la teora de conjuntos borroso es el grado de pertenencia. El grado de pertenencia representa la calidad, expresada con un nmero entre 0 y 1, con la que

20

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

un elemento pertenece a un determinado conjunto; es decir, la compatibilidad del elemento con el concepto representado por el conjunto. La funcin que permite obtener el grado de pertenencia de un elemento a un conjunto borroso se denomina funcin de pertenencia, y se suele denotar mediante el smbolo griego . La funcin de pertenencia del conjunto borroso A se denota como A , y el grado de pertenencia del elemento x al conjunto borroso A, como A (x). El dominio de denicin de la funcin de pertenencia del conjunto A se conoce como universo de discurso de dicho conjunto [175], y recoge todos los posibles valores de la variable x que pueden ser evaluados mediante la funcin de pertenencia A (x). De esta forma, un subconjunto borroso A de un conjunto X , puede denirse mediante una aplicacin A que relaciona cada elemento x X con su grado de pertenencia al conjunto A, A (x) [0, 1]. El grado de certeza de la armacin x pertenece a A depende de la denicin de la aplicacin A (x), de forma que mientras ms se aproxime el grado de pertenencia a uno, mayor veracidad tendr dicha armacin. La nocin humana de pertenencia no juega un papel tan fundamental en el caso de los conjuntos borrosos como en el de los conjuntos ordinarios, salvo el sentido trivial de que A (x) sea positivo. Si se desea preservar este concepto de pertenencia clsico, se pueden denir dos niveles y , siendo 0 < < 1, 0 < < 1 y > . De esta forma se puede redenir el concepto clsico de pertenencia por las sentencias: x pertenece a A si A (x) x no pertenece a A si A (x) x tiene un estatus indeterminado con respecto a A si < A (x) < . Esta forma de operar lleva al concepto de lgica tri-valuada de Kleene [176], con tres valores de verdad: T (A (x) ), F (A (x) ) y U ( < A (x) < ). No debe confundirse el concepto de probabilidad de pertenencia a un conjunto ordinario con el grado de pertenencia a un conjunto borroso. Aunque la funcin de pertenencia de un conjunto borroso puede tener cierto parecido con una funcin de probabilidad cuando X es un conjunto numerable (o una funcin de densidad de probabilidad si X es continuo), hay diferencias sustanciales entre ambos conceptos. As, no tiene porqu cumplirse que la suma de los grados de pertenencia a distintos conjuntos borrosos sea la unidad, ni tampoco que el grado de pertenencia indique la ocurrencia de un determinado suceso en repetidas experiencias. Por ejemplo, si se indica que el grado de pertenencia del contenido de una botella al conjunto veneno mortal es 0,01, se est indicando que el lquido no es prcticamente venenoso, aunque posea algunas trazas de veneno, por lo que podra no haber riesgo para su ingestin. Sin embargo, si se arma que la probabilidad de que el lquido sea veneno mortal es de 0,01, el lquido podra ser completamente veneno mortal, aunque con una probabilidad baja, y por lo tanto letal.

Deniciones bsicas Denicin 2.1 (Conjunto borroso). Sea X un conjunto no vaco, un conjunto borroso A est caracterizado por: A (x) : X [0, 1], (2.1)

2.3
1 0 ,8 0 ,6 0 ,4 0 ,2 0 5 4 3 2 1 0 x 1 0 ,8 0 ,6 0 ,4 0 ,2 0 5 4 3 2 1 0 x 1 2 3 1 2 3

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

21

1 0 ,8 B (x) 4 5 0 ,6 0 ,4 0 ,2 0 5 4 3 2 1 0 x 1 0 ,8 D (x) 0 ,6 0 ,4 0 ,2 4 5 0 5 4 3 2 1 0 x 1 2 3 4 5 1 2 3 4 5

C (x)

A (x)

Figura 2.3: Ejemplos de funciones de pertenencia.

donde A (x) representa el grado de pertenencia del elemento x sobre el conjunto borroso A para cada x X . A est completamente determinado por el conjunto de pares: A = {(x, A (x)), x X } . (2.2)

Como se observa en la expresin (2.2), un conjunto borroso queda caracterizado mediante su funcin de pertenencia. sta puede expresarse de forma discreta, enumerando el grado de pertenencia para cada elemento del conjunto, o mediante una denicin matemtica. En la mayora de los casos se emplean funciones de pertenencia denidas matemticamente, ya que estas funciones permiten realizar estudios posteriores con mayor facilidad y son vlidas para cualquier elemento dentro de su universo de discurso. Las funciones de pertenencia discretas en principio son slo vlidas para un conjunto de elementos, los empleados para denir la funcin; sin embargo, si se emplea algn algoritmo de identicacin con los pares de datos (x, A (x)), o se dene una funcin a trozos, se podr obtener una expresin matemtica que la represente. En la gura 2.3 se pueden observar distintos ejemplos de funciones de pertenencia, todas ellas con un universo de discurso X [5, 5]. La primera, A (x), es la funcin de pertenencia de un conjunto ntido, ya que slo genera grados de pertenencia 0 1, mientras que el resto son funciones de pertenencia borrosas: B (x) es una funcin de pertenencia no convexa denida a trozos, C (x) una gaussiana y D (x) una funcin de pertenencia S. Denicin 2.2 (Conjunto borroso normalizado). Sea A un conjunto borroso denido en X , se dice que A es un conjunto borroso normalizado si y slo si 0 A (x) 1. Dado que un grado de pertenencia mayor de uno no tiene mucho sentido lgico, normalmente siempre se emplean conjuntos borrosos normalizados, aunque no se mencione explcitamente. Denicin 2.3 (Conjunto borroso nulo o vaco). Sea A un conjunto borroso denido en X , se dice que A es un conjunto borroso nulo o vaco, A = , si y slo si A (x) = 0, x X . Es

22

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

A (x1 + (1 )x2 ) B (x2 ) A (x2 ) A (x1 ) B (x1 + (1 )x2 ) B (x1 )

x1

Conjunto borroso convexo.

x2 x1 + (1 )x2

x1

x1 + (1 )x2 x2

Conjunto borroso no convexo.

Figura 2.4: Convexidad en conjuntos borrosos.

decir, A es un conjunto borroso nulo si no existe ningn elemento cuyo grado de pertenencia al conjunto sea distinto de cero. Denicin 2.4 (Conjunto borroso normal). Sea A un conjunto borroso denido en X , se dice que A es un conjunto borroso normal, o que A es normal, si y slo si existe al menos un x X tal que A (x) = 1. En caso contrario, se dice que A es un conjunto borroso nonormal. Denicin 2.5 (Conjunto borroso convexo). Sea A un conjunto borroso denido en X , se dice que A es un conjunto borroso convexo si y slo si para dos puntos cualesquiera x1 y x2 , y cualquier [0, 1], se verica la ecuacin2 (2.3). Ntese que esta denicin no implica que A (x) deba ser una funcin convexa. A (x1 + (1 )x2 ) min (A (x1 ), A (x2 )) (2.3)

Esta denicin indica que, dados dos puntos del universo de discurso, la funcin de pertenencia de un conjunto borroso convexo evaluada entre esos puntos tomar valores mayores o iguales que la funcin de pertenencia evaluada en cada uno de dichos puntos. Este concepto se ilustra grcamente en la gura 2.4. Denicin 2.6 (Soporte de un conjunto borroso). Sea A un conjunto borroso denido en X , el soporte de A, denotado por sop(A) o por sup(A), es el subconjunto de X cuyos elementos tienen un grado de pertenencia distinto de cero en A. sop(A) = {x X |A (x) > 0} (2.4)

Cuando se utilizan funciones de pertenencia asintticas, como la funcin gaussiana que se ver posteriormente, esta denicin no resulta prctica, ya que el soporte terico de dichas funciones es innito. Para limitar el soporte de funciones asintticas a un conjunto nito de elementos, se suele modicar la denicin anterior por la dada en la ecuacin (2.5). sop(A) = {x X |A (x) > , > 0} (2.5)

Si se elije de valor positivo cercano a cero, se eliminan del soporte de la funcin aquellos elementos cuya calidad de pertenencia al conjunto es muy baja, consiguiendo a la vez un soporte nito y representativo del conjunto.
2

Esta denicin de convexidad fue sugerida a Zadeh por su colega E. Berlekamp.

2.3

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

23

Denicin 2.7 (Ncleo de un conjunto borroso). Sea A un conjunto borroso denido en X , el ncleo de A, denotado por nuc(A) o por core(A), es el subconjunto de X cuyos elementos tienen grado de pertenencia uno en A. nuc(A) = {x X |A (x) = 1} (2.6)

Si A es un conjunto borroso convexo, su ncleo tambin es convexo [1]. Denicin 2.8 (Frontera de un conjunto borroso). Sea A un conjunto borroso denido en X , la frontera de A es el subconjunto de X cuyos elementos tienen grados de pertenencia en A comprendidos entre cero y uno. Denicin 2.9 (Peso o altura de un conjunto borroso). Sea A un conjunto borroso denido en X , el peso o altura de A es el mximo valor de la funcin de pertenencia A . Si A es un conjunto borroso normal (y normalizado), su peso ser 1. Denicin 2.10 (Nmero borroso). Un nmero borroso A es un conjunto borroso denido en R, normal y convexo, cuya funcin de pertenencia es continua y su soporte limitado. Si el soporte no es limitado, pero se cumple la condicin de lmite dada por la ecuacin (2.7), tambin se puede decir que A es un nmero borroso o, ms exactamente, cuasiborroso.
|x|

l m A(x) = 0

(2.7)

Desde el punto de vista prctico los conceptos de nmero borroso y nmero cuasiborroso son idnticos, ya que ambos representan un valor real desde el punto de vista de la lgica borrosa. Los nmeros borrosos son conjuntos borrosos con un claro signicado cuantitativo, en la medida en que clasican un concepto alrededor de un nmero o intervalo de nmeros. Estos nmeros tienen una gran importancia en el control borroso, ya que permiten representar valores numricos mediante las imprecisin propia de la lgica borrosa. Tipos bsicos de funciones de pertenencia A continuacin se denirn las funciones de pertenencia ms comnmente utilizadas, indicando en cada caso sus caractersticas y propiedades. Denicin 2.11 (Funcin de pertenencia triangular). Una funcin de pertenencia triangular, T ric [c, , ](x), se dene segn la expresin (2.8), siendo c su centro, 0 su ancho izquierdo, y 0 su ancho derecho. 1 (c x) si (c ) x < c 1 ( x c) (2.8) T ric [c, , ](x) = si c x (c + ) 0 en otro caso

Otra forma ms comn de denir la funcin de pertenencia triangular, es mediante la identicacin de los tres puntos del tringulo, T ri[a, b, c](x), con a b c. En este caso la

24

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0,9 0,8 0,7 T riang (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 10 8 6 4 2 0 x 2 4 6 8 10

Figura 2.5: Funcin de pertenencia triangular.

Las funciones de pertenencia triangulares son continuas y denen un conjunto borroso normal, convexo y con soporte nito, por lo que pueden emplearse para representar nmeros borrosos. Si la funcin de pertenencia se dene mediante (2.8), el soporte vendr dado por (c , c + ) y el ncleo coincidir con c; mientras que si se se dene mediante (2.9), el soporte ser (a, c) y el ncleo coincidir con b. En la gura 2.5 se representa la funcin de pertenencia T ric [4, 10, 3](x), que tambin puede declararse como T ri[6, 4, 7](x), y cuyo universo de discurso es X [10, 10]. El soporte de esta funcin coincide con el intervalo (6, 7), y su ncleo con el valor 4. Denicin 2.12 (Funcin de pertenencia trapezoidal). Una funcin de pertenencia trapezoidal, T rapab [a, b, , ](x), se dene segn la expresin (2.10), siendo [a, b], con a b, su intervalo de conanza o ncleo, 0 su ancho izquierdo, y 0 su ancho derecho. 1 (a x) si (a ) x < a 1 si a x b (2.10) T rapab [a, b, , ](x) = 1 (x b) si b < x (b + ) 0 en otro caso

funcin de pertenencia vendr dada por la expresin (2.9). xa si a < x b ba cx T ri [a, b, c](x) = si b < x < c c b 0 en otro caso

(2.9)

2.3
1 0 ,9 0 ,8 0 ,7 T rap (x) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

25

0 x

10

Figura 2.6: Funcin de pertenencia trapezoidal.

La funcin de pertenencia trapezoidal es continua y dene un conjunto borroso normal, convexo y con soporte nito, por lo que se puede emplear para representar un nmero borroso. Si la funcin de pertenencia se dene mediante (2.10), el soporte vendr dado por (a , b + ) y el ncleo coincidir con el intervalo [a, b]; mientras que si se dene mediante (2.11), su soporte ser (a, d) y su ncleo [b, c]. En la gura 2.6 se representa un ejemplo de funcin de pertenencia trapezoidal con universo de discurso X [10, 10]. En este caso, dicha funcin puede denirse como T rapab [5, 1, 3, 7](x), o como T rap[8, 5, 1, 8](x). El soporte de dicha funcin coincide con el intervalo (8, 8), y su ncleo con [5, 1]. Denicin 2.13 (Funcin de pertenencia gaussiana). Una funcin de pertenencia gaussiana, Gauss[c, ](x), se dene segn la expresin (2.12), siendo c su centro y > 0 el ancho de la funcin de pertenencia. Gauss [c, ](x) = e(
x c 2

Al igual que en el caso anterior, la funcin de pertenencia trapezoidal tambin puede denirse mediante los 4 puntos caractersticos del trapecio, T rap[a, b, c, d](x), siendo a b c d. En este caso la funcin de pertenencia trapezoidal vendr dada por la expresin (2.11). xa si a < x < b ba 1 si b x c (2.11) T rap [a, b, c, d](x) = dx si c < x < d d c 0 en otro caso

(2.12)

La funcin de pertenencia gaussiana es continua, simtrica respecto a c, y dene un conjunto borroso normal y convexo. El ncleo de la funcin de pertenencia coincide con c y su

26

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0,9 0,8 0,7 Gauss (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 10 8 6 4 2 0 x 2 4 6 8 10

Figura 2.7: Funcin de pertenencia gaussiana.

soporte es innito. Como la funcin de pertenencia tiende asintticamente a cero por sus dos extremos, es decir, cumple la condicin de lmite l m Gauss (x) = 0, se puede emplear para
|x|

representar un nmero cuasiborroso. El soporte de la funcin gaussiana es innito, ya que dicha funcin tiende a cero de forma asinttica por ambos extremos; sin embargo, a veces es necesario disponer de un valor nito para el soporte. Se puede suponer que el soporte es nito si se desprecian valores de pertenencia menores de cierta cantidad. Un criterio prctico razonable es suponer el soporte de la funcin gaussiana como todos aquellos valores de x para los que A (x) sea mayor del 10 % del mximo grado de pertenencia posible para A (x) (1 si A es un conjunto normalizado y normal). Otra posibilidad es suponer el soporte como una funcin del ancho de la campana ( ), o aproximar su valor mediante la comparacin de la funcin gaussiana con otras funciones de pertenencia de soporte nito, como la funcin de pertenencia triangular. En la gura 2.7 se muestra un ejemplo de funcin de pertenencia gaussiana, cuyo centro es c = 3 y su ancho = 1,5. Un posible valor nito para el soporte podra ser (c 2, c + 2 ), lo que en este ejemplo concreto sera (0, 6). Denicin 2.14 (Funcin de pertenencia gaussiana doble). Una funcin de pertenencia gaussiana doble, Gauss2[c1 , c2 , 1 , 2 ](x), se dene de forma asimtrica mediante el producto de dos funciones gaussianas segn el conjunto de ecuaciones (2.13). La parte izquierda de la funcin se dene con el conjunto de parmetros [c1 , 1 ], con 1 > 0, y la parte derecha de la misma con los parmetros [c2 , 2 ], con 2 > 0. Si c1 c2 , el ncleo coincidir con el intervalo [c1 , c2 ] y el conjunto borroso A ser normal, mientras que si c1 > c2 , el ncleo ser nulo y el conjunto borroso A no ser normal. Gauss2 [c1 , c2 , 1 , 2 ](x) = 1 (x)2 (x), siendo Gauss [c1 , 1 ](x) Si x < c1 1 (x) = 1 Si x c1 (2.13a)

(2.13b)

2.3
1 0 ,9 0 ,8 0 ,7 Gauss2 (x) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

27

Gauss2A (x)

Gauss2B (x)

Gauss2C (x)

0 x

10

Figura 2.8: Funciones de pertenencia gaussiana doble.

El soporte de la funcin de pertenencia gaussiana doble es innito, pero el mismo razonamiento dado para la funcin de pertenencia gaussiana se puede utilizar para obtener un valor nito del soporte de esta funcin. La funcin gaussiana doble es continua y convexa. Aunque su soporte es innito, al igual que la funcin gaussiana, cumple con la condicin de lmite, por lo que siempre que sea normal, es decir, siempre que c1 c2 , podr utilizarse para representar un nmero cuasi borroso. En la gura 2.8 se muestran varios ejemplos de funciones de pertenencia gaussiana dobles. Si c1 < c2 , la forma de esta funcin de pertenencia ser similar a Gauss2A (x). Si c1 = c2 se obtendr una forma gaussiana pero con brazos asimtricos cuyo ncleo coincide con los centros, como Gauss2B (x). Si por el contrario c1 > c2 , la funcin ser nonormal y su ncleo ser nulo, como Gauss2C (x). Denicin 2.15 (Funcin de pertenencia campana). Una funcin de pertenencia campana, Campana[, , c](x), se dene segn la expresin (2.14), siendo c el centro de la funcin de pertenencia, y > 0 y = 0 dos parmetros de ajuste. El parmetro tiene relacin con el ancho de la funcin por su parte baja, o pies, mientras que el parmetro , normalmente positivo, tiene relacin con el ancho de la funcin de pertenencia por la zona alta, u hombros. Si < 0, la funcin de pertenencia toma la forma de una campana invertida y puede ser interesante para predicados3 de tipo negacin (Si x no es . . . ). Campana [, , c](x) =
3

Gauss [c2 , 2 ](x) Si x > c2 2 (x) = 1 Si x c2

(2.13c)

1 1+
xc 2

(2.14)

La interpretacin lingstica de las variables borrosas, as como los predicados que se pueden realizar con stas, se vern con detenimiento en las secciones 2.3.2 y 2.3.3.

28

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0,9 0,8 0,7 Camp (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 10 8 6 4

>0

<0

0 x

10

Figura 2.9: Funciones de pertenencia campana.

La funcin de pertenencia campana es continua, simtrica con respecto a c, y dene un conjunto borroso normal y convexo. Aunque su soporte es innito, cumple la condicin de lmite siempre que > 0, por lo que en dicho caso podr utilizarse para representar nmeros cuasiborrosos. Para obtener un valor nito del soporte puede aplicarse un razonamiento similar al utilizado con la funcin de pertenencia gaussiana. En la gura 2.9 se pueden ver dos funciones de pertenencia campana, una con = 3 y la otra con = 3. En ambos casos se ha tomado = 4 y c = 2. Denicin 2.16 (Funcin de pertenencia S). La funcin de pertenencia S, S [a, b](x), siendo a b, permite establecer una transicin suave desde un valor de pertenencia nulo a un valor de pertenencia uno. Se dene segn la expresin (2.15). 0 2 si x a xa ba
2

si a < x
2

a+b 2

S [a, b](x) =

La funcin de pertenencia S es continua y dene un conjunto borroso normal y convexo. Su soporte viene dado por el intervalo (a, ), por lo que es innito. Al no cumplir la condicin de lmite no puede emplearse para representar nmeros borrosos, sin embargo, esta funcin de pertenencia es muy utilizada para representar las etiquetas lingsticas4 del tipo mayor de. El la gura 2.10 se muestra un ejemplo de funcin S, con a = 2 y b = 6.
4

12 1

bx ba

(2.15) si
a+b 2

<x<b

si x b,

Las etiquetas lingsticas se vern con detenimiento en la seccin 2.3.2.

2.3
1 0 ,9 0 ,8 0 ,7 S (x) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

29

0 x

10

Figura 2.10: Funcin de pertenencia S.

La funcin de pertenencia Z es continua y dene un conjunto borroso normal y convexo. Su soporte es (, b), por lo que es innito. Al no cumplir la condicin de lmite esta funcin no puede emplearse para representar nmeros borrosos, sin embargo, esta funcin de pertenencia es muy utilizada para representar las etiquetas lingsticas5 del tipo menor de. El la gura 2.11 se muestra un ejemplo de funcin Z, con a = 2 y b = 6. Denicin 2.18 (Funcin de pertenencia ). La funcin de pertenencia (P i), que se puede denotar por P i[a, b, c, d](x) o por [a, b, c, d](x), siendo a b c d, es una funcin de pertenencia asimtrica compuesta por el producto de la funcin S [a, b](x) y la funcin Z [c, d](x). Esta funcin permite establecer una transicin suave desde un grado de pertenencia cero a un grado de pertenencia uno mediante la forma S, y una transicin descendiente a pertenencia nula mediante la funcin Z. Otra forma muy comn de denir la funcin es utilizando nicamente dos parmetros, resultando en este caso una funcin simtrica. La funcin de pertenencia es continua, dene un conjunto borroso normal y convexo. Su soporte es nito, siendo sup(A) = (a, d), por lo que la funcin puede emplearse para representar nmeros borrosos. El ncleo de esta funcin viene dado por [b, c].
5

Denicin 2.17 (Funcin de pertenencia Z). La funcin de pertenencia Z, Z [a, b](x), siendo a b, permite establecer una transicin suave desde un valor de pertenencia uno a un valor de pertenencia nulo. Se dene segn la expresin (2.16). 1 si x a 2 xa b si a < x < a+ 12 ab 2 (2.16) Z [a, b](x) = 2 bx a + b 2 si x<b 2 ab 0 si x b,

Las etiquetas lingsticas se vern con detenimiento en la seccin 2.3.2.

30

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0,9 0,8 0,7 Z (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 10 8 6 4 2 0 x 2 4 6 8 10

Figura 2.11: Funcin de pertenencia Z.


1 0,9 0,8 0,7 P i (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 10 8 6 4 2 0 x 2 4 6 8 10

Figura 2.12: Funcin de pertenencia .

El la gura 2.12 se muestra un ejemplo de funcin , con a = 6, b = 3, c = 0 y d = 8. Denicin 2.19 (Funcin de pertenencia sigmoidal). Una funcin de pertenencia sigmoidal, Sigm[, c](x), se dene segn la expresin (2.17), siendo c el punto para el que Sigm (c) = 0,5 y un parmetro relacionado con la velocidad de transicin de la funcin de pertenencia. Sigm [, c](x) = 1 1 + e(cx) (2.17)

Las funciones de pertenencia sigmoidales son continuas y denen un conjunto borroso normal y convexo. Su soporte es innito y no cumplen la condicin de lmite, por lo que no pueden emplearse para representar nmeros borrosos. En la gura 2.13 se representan dos ejemplos de funciones de pertenencia sigmoidales, dadas por los parmetros Sigm[2, 4](x) y Sigm[2, 1](x). Como puede observarse, un valor

2.3
1 0 ,9 0 ,8 0 ,7 Sigmoidal (x) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

31

<0

>0

0 x

10

Figura 2.13: Funciones de pertenencia sigmoidales.


1 0 ,9 0 ,8 0 ,7 DSigm (x) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6 4 2 0 x 2 4 6 8 10

Figura 2.14: Funciones de pertenencia diferencia de sigmoidales.

positivo de hace que la funcin tenga una forma parecida a la funcin S, mientras que un valor negativo provoca que la funcin sea similar a una funcin de pertenencia Z. Existen otras funciones de pertenencia basadas en operaciones con funciones sigmoidales. Las ms destacadas son la funcin diferencia de sigmoidales, obtenida mediante la ecuacin (2.18), y la funcin producto de sigmoidales, que se puede calcular a partir de la ecuacin (2.19). En ambos casos, ajustando adecuadamente los parmetros c y de cada una de las sigmoidales, se pueden obtener funciones tanto normales como no normales, convexas y no convexas, y con soporte nito o funciones de tipo negacin de soporte innito. En las guras 2.14 y 2.15 se pueden ver algunos ejemplos de estas funciones de pertenencia compuestas. (2.18)

DSigm [1 , c1 , 2 , c2 ](x) = Sigm [1 , c1 ](x) Sigm [2 , c2 ](x)

32

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0,9 0,8 0,7 P Sigm(x) 0,6 0,5 0,4 0,3 0,2 0,1 0 10 8 6 4 2 0 x 2 4 6 8 10

Figura 2.15: Funciones de pertenencia producto de sigmoidales.


1 0,9 0,8 0,7 Singleton (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 1 0,8 0,6 0,4 0,2 0 x 0,2 0,4 0,6 0,8 1

Figura 2.16: Funcin de pertenencia Singleton.

P Sigm [1 , c1 , 2 , c2 ](x) = Sigm [1 , c1 ](x) Sigm [2 , c2 ](x)

(2.19)

Denicin 2.20 (Funcin de pertenencia singleton o punto borroso). Una funcin de pertenencia singleton, o punto borroso, denida sobre x0 es aquella funcin de pertenencia cuyo soporte y ncleo es sup(A) = nuc(A) = x0 . Tambin se puede utilizar la notacin A = x0 . La funcin de pertenencia singleton es denominada tambin conjunto borroso escalar. En la gura 2.16 se muestra a modo de ejemplo la funcin de pertenencia singleton A = 0,2. Operaciones sobre conjuntos borrosos Muchas de las operaciones presentes en la lgica clsica de conjuntos se pueden generalizar a la lgica borrosa, como por ejemplo las tres operaciones bsicas: la unin, la interseccin

2.3

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

33

y el complemento; sin embargo, hay operaciones y propiedades de la lgica clsica que no se cumplen al trasladarlas al mbito borroso, como la ley del medio excluido y el principio de no contradiccin. A continuacin se estudiarn algunas de las operaciones bsicas que pueden realizarse sobre conjuntos borrosos, as como algunas de sus propiedades. Denicin 2.21 (Igualdad). Se dice que dos conjuntos borrosos A y B , con funciones de pertenencia dadas por A (x) y B (x), respectivamente, son iguales si y slo si A (x) = B (x) para todo x X . A = B A (x) = B (x), x X (2.20) Denicin 2.22 (Inclusin). Dados dos conjuntos borrosos A y B , con funciones de pertenencia dadas por A (x) y B (x), respectivamente, se dice que A est contenido en B , o de forma equivalente, que A es un subconjunto de B o que A es menor que B , si y slo si A (x) B (x) para todo x X . AB A (x) B (x), x X (2.21) AB Denicin 2.23 (Interseccin). La operacin interseccin de dos conjuntos borrosos A y B , cuyas funciones de pertenencia son A (x) y B (x), respectivamente, se dene como un conjunto borroso C = A B cuya funcin de pertenencia se relaciona con las de A y B mediante la ecuacin (2.22). En la gura 2.17 se muestra un ejemplo de la operacin interseccin entre dos conjuntos borrosos. C (x) = AB (x) = min {A (x), B (x)} , x X La ecuacin (2.22) tambin se puede escribir de forma abreviada como: C = A B . (2.23)

(2.22)

Se puede demostrar [1] que si los conjuntos borrosos A y B son convexos, el conjunto interseccin C tambin lo es. En caso de que la operacin de interseccin entre A y B resultase un conjunto vaco, es decir, si A B = , se dice que los conjuntos borrosos A y B son disjuntos. La operacin de interseccin denida a travs de la funcin mnimo se suele denominar interseccin clsica, ya que fue la denida originalmente por el profesor Zadeh. Posteriormente han aparecido otros operadores de interseccin lgica que se pueden englobar en las denominadas T normas. Estos operadores se vern con mayor detenimiento en la denicin 2.26. Denicin 2.24 (Unin). De forma anloga a la operacin interseccin, la unin de dos conjuntos borrosos A y B , cuyas funciones de pertenencia son A (x) y B (x), respectivamente, puede denirse como un conjunto borroso C = A B cuya funcin de pertenencia se relaciona con las de A y B mediante la expresin (2.24). La funcin mximo se emplea para denir el operador de unin clsico, sin embargo, la operacin de unin lgica puede generalizarse a travs de las S normas, tal como se ver en la denicin 2.27. Una muestra de la operacin de unin clsica puede verse en la gura 2.18.

34

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0,9 0,8 0,7 (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 0 0,1 0,2 0,3 0,4 0,5 x 0,6 0,7 0,8 0,9 1 (A B )(x) B (x) A(x)

Figura 2.17: Interseccin entre conjuntos borroso.

1 0,9 0,8 0,7 (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 0 0,1 0,2

(A B )(x)

B (x)

A(x)

0,3

0,4

0,5 x

0,6

0,7

0,8

0,9

Figura 2.18: Unin de conjuntos borrosos.

2.3
A(x)

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

35

1 0,9 0,8 0,7 (x) 0,6 0,5 0,4 0,3 0,2 0,1 0 0 0,1

A(x)

0,2

0,3

0,4

0,5 x

0,6

0,7

0,8

0,9

Figura 2.19: Operacin negacin o complemento a uno.

C (x) = AB (x) = max {A (x), B (x)} , x X La ecuacin (2.24) tambin se puede escribir de forma abreviada como: C = A B .

(2.24)

(2.25)

Denicin 2.25 (Negacin o complemento a uno). El complemento a uno o negacin de un conjunto borroso A, cuya funcin de pertenencia es A (x), se representa6 por A, y se dene segn la expresin (2.26). En la gura 2.19 se muestra un ejemplo de la operacin complemento sobre un conjunto borroso denido a travs de una funcin de pertenencia triangular. A (x) = 1 A (x) (2.26) La operacin de complemento a uno es el operador clsico de negacin y el ms frecuentemente utilizado; no obstante, en la denicin 2.28 se presentan otros operadores existentes en la literatura. Una vez que se han presentado las operaciones lgicas principales, es importante destacar que tanto los conjuntos borrosos como las operaciones de unin, interseccin y complemento presentadas anteriormente cumplen las propiedades bsicas de sus equivalentes clsicos: Idempotencia: AA = A AA = A Identidad: A = A y, si A X, A X = A A =
6

(2.27)

y, si A X, A X = X

(2.28)

La operacin complemento tambin se puede encontrar representada de las formas A, AC o A .

36

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

Transitividad: Si A B C , entonces A C Involucin: A=A Propiedad conmutativa: AB = BA AB = BA Propiedad asociativa: A (B C ) = (A B ) C A (B C ) = (A B ) C Con las operaciones y propiedades bsicas estudiadas hasta ahora es posible extender a los conjuntos borrosos muchas de las identidades vlidas para los conjuntos clsicos. Por ejemplo, se puede comprobar que en la teora de conjuntos borrosos se cumplen las leyes de De Morgan [1] dadas por la ecuacin (2.33), si se consideran los operadores clsicos de unin, interseccin y negacin propuestos inicialmente por Lofti A. Zadeh (operador mximo, mnimo, y complemento a uno respectivamente). Igualmente, bajo las mismas suposiciones, tambin se cumplen las leyes distributivas dadas por la ecuacin (2.34), es decir, se puede armar que los conjuntos borrosos forman un retculo distributivo con 0 y 1 [177]. (A B ) = A B (A B ) = A B C (A B ) = (C A) (C B ) C (A B ) = (C A) (C B ) Tal como se coment al principio de este epgrafe, no todas las propiedades de los conjuntos clsicos se tienen porqu cumplir en los conjuntos borrosos. Por ejemplo, sea A un subconjunto borroso del conjunto universal7 X , A X , la ley del medio excluido de conjuntos clsicos asegura que A A = X , pero si A es un conjunto borroso no normal, max {A (x), 1 A (x)} no ser 1 para todo x X , por lo que A A = X . Lo mismo sucede con el principio de no contradiccin. En la lgica clsica se cumple que A A = , sin embargo en la lgica borrosa min {A (x), 1 A (x)} no tiene porqu ser cero para todo x X , por lo que no tiene porqu satisfacerse el principio de no contradiccin. Si en vez de emplearse el mximo y el mnimo como operadores de unin e interseccin, respectivamente, se escogen apropiadamente otras funciones, estas dos propiedades pueden cumplirse en los conjuntos borrosos, sin embargo, lo que se ha querido constatar es que no tienen porqu ser ciertas. Las funciones lgicas presentadas anteriormente fueron propuestas por el profesor Zadeh en el desarrollo inicial de la teora de conjuntos borrosos [1], sin embargo, tal como se ha comentado anteriormente, estas funciones pueden ser sustituidas por otras siempre y cuando
7

(2.29) (2.30)

(2.31)

(2.32)

(2.33)

(2.34)

Un conjunto universal es aquel que contiene todos los elementos, es decir, todos los elementos tienen un grado de pertenencia a dicho conjunto igual a 1.

2.3 Nombre Mnimo (estndar) Producto Producto drstico Producto acotado (Lukasiewicz) Hamacher Yager Dubois-Prade Frank Producto de Einstein

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

37

T (x, y ) min {x, y } xy min {x, y } si max {x, y } = 1 0 en otro caso max {0, (1 + )(x + y 1) xy } , 1 xy , 0 + (1 )(x + y xy ) 1 min 1, (1 x) + (1 y ) , 0 xy , (0, 1) max {x, y, } (x 1)(y 1) , > 0, = 1 log 1 + 1 xy 1 + (1 x) + (1 y )
Tabla 2.1: Tnormas principales.

cumplan determinadas condiciones. A estas funciones que generalizan las operaciones de interseccin y unin, derivadas de los conceptos presentados por Menger [178] y Schwizer y Sklar [179], se las conoce como normas y conormas triangulares respectivamente [180182]. Adems de la funcin mnimo, existen otros operadores que implementan dicha funcin, conocidos como normas triangulares o Tnormas. Denicin 2.26 (Normas triangulares o Tnormas). Una norma triangular, o T norma, es una aplicacin T : [0, 1] [0, 1] [0, 1] que cumple las propiedades conmutativa, asociativa, de monotonicidad e identidad unitaria (o condicin de frontera). Las T normas representan un modelo genrico para la interseccin lgica (operador lgico Y o AND ). Las propiedades conmutativa y asociativa ya han sido introducidas en el texto, ver ecuaciones (2.31) y (2.32). Dados dos pares de valores x y , w z , la propiedad de monotonicidad exige que se cumpla que T (x, w ) T (y, z ). Por ltimo, la condicin de frontera que debe cumplir una funcin para que pueda considerarse como norma triangular (T norma) es que sea de identidad unitaria, es decir, que T (x, 1) = x, para todo x [0, 1]. En la tabla 2.1 se muestran algunas de las principales T normas, y en la gura 2.20 se presentan a modo de ejemplo el resultado de aplicar las T normas producto y de Lukasiewicz a dos conjuntos borrosos. Ntese que para que una funcin pueda considerarse T norma debe cumplir la propiedad asociativa. Esta exigencia permite extender las T normas a ms de dos argumentos. Adems, puesto que tambin deben cumplir la propiedad conmutativa, el orden de aplicacin de las T normas no afecta al resultado nal. Como sucede con la interseccin, la unin borrosa tambin puede denirse mediante otras funciones distintas al mximo. Estas funciones son conocidas como Tconormas o Snormas.

38

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0,9 0,8 0,7 0,6 (x) 0,5 0,4 0,3 0,2 0,1 0 0 0,1

A (x) B (x) Lukasiewick, = 0 Lukasiewick, = 4 Producto

0,2

0,3

0,4

0,5 x

0,6

0,7

0,8

0,9

Figura 2.20: Tnormas producto y producto acotado.

Denicin 2.27 (Tconorma o Snorma). Una conorma triangular, tambin llamada T conorma o S norma, es una aplicacin S : [0, 1]2 [0, 1] que cumple las propiedades conmutativa, asociativa, de monotonicidad e identidad cero (o condicin de frontera). Las S normas representan un modelo genrico para la unin lgica (operador lgico O u OR ). En la tabla 2.2 se muestran algunas de las principales S normas, y en la gura 2.21 se muestra el resultado de aplicar las S normas sumaproducto y de Lukasiewicz a dos conjuntos borrosos. Al igual que sucede con las T normas, las S normas o T conormas pueden extenderse a ms de dos argumentos empleando su asociatividad, sin importar su orden de aplicacin (conmutatividad). La condicin de frontera que debe cumplir una funcin para que pueda considerarse como conorma triangular (S norma) es que sea de identidad cero, es decir, que S (x, 0) = x, x [0, 1]. Para cada T norma existe una S norma dual o conjugada y viceversa. As para una T norma, T (x, y ), su S norma conjugada sera: S (x, y ) = 1 T ((1 x), (1 y )). Aunque las T normas y S normas no pueden ordenarse, s que puede identicarse claramente la mayor y menor de ellas. As, la mayor de las T normas es la funcin mnimo y la menor el producto drstico. En el caso de las S normas, la mayor es la suma drstica, y la menor la funcin mximo. El resto de T normas y S normas estn comprendidas entre stas. Con respecto a las propiedades que cumplen las T normas y S normas, en general se puede decir que estas operaciones no satisfacen las propiedades de contradiccin ni exclusin del medio, a excepcin de la familia de Lukasiewicz con = 0. Las propiedades de idempotencia y la propiedad distributiva slo se cumple en el caso de los operadores estndar, es decir, si se emplean el mximo y el mnimo como operadores de unin e interseccin, respectivamente. Como sucede con las operaciones de unin e interseccin, el operador de negacin tambin se puede denir de forma distinta a su denicin original.

2.3

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

39

Nombre Mximo (estndar) Sumaproducto Suma drstica Suma acotada (Lukasiewicz) Hamacher Yager Dubois-Prade Frank

S (x, y ) max {x, y } x + y xy max {x, y } si min {x, y } = 0 1 en otro caso min {1, (x + y + xy )} , 0 x + y (2 )xy , 0 1 (1 )xy min 1, x + y , 0 (1 x)(1 y ) , [0, 1] 1 max {(1 x), (1 y ), } ((1x) 1)((1y) 1) , > 0, = 1 log 1 + 1

Tabla 2.2: Snormas principales.

1 0,9 0,8 0,7 0,6 (x) 0,5 0,4 0,3 0,2 0,1 0 0 0,1

A (x) B (x) Lukasiewick, = 0 Lukasiewick, = 4 Sumaproducto

0,2

0,3

0,4

0,5 x

0,6

0,7

0,8

0,9

Figura 2.21: Snormas sumaproducto y suma acotada.

40

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

Nombre Estndar Umbral Sugeno Yager

N ( x) 1x 1 si x 0 si x > 1x 1 + x (1 x ) 0<<1 > 1 >0

Tabla 2.3: Operadores de Negacin.

1 0,9 0,8 0,7 0,6 (x) 0,5 0,4 0,3 0,2 0,1 0 0 0,1 0,2 0,3 0,4 0,5 x 0,6 0,7 0,8 0,9 1 A (x) Yager, = 0,7 Sugeno, = 0,5

Figura 2.22: Operadores de negacin de Yager y Sugeno.

Denicin 2.28 (Operador de negacin). Una funcin de negacin es una aplicacin N : [0, 1] [0, 1] continua, montona no creciente, involutiva, es decir, N (N (x)) = x, para todo x X , y que cumple las condiciones de frontera N (0) = 1 y N (1) = 0. En la tabla 2.3 se presentan algunos operadores de negacin y en la gura 2.22 se pueden ver algunos ejemplos. Ntese que si = 0 el operador de Sugeno coincide con la operacin de negacin estndar e igual sucede si = 1 con el operador de Yager. Junto con las operaciones clsicas se pueden realizar otro tipo de operaciones sobre los conjuntos borroso. A continuacin se denen algunas de esas otras operaciones. Denicin 2.29 (corte). Sea A un conjunto borroso, cuya funcin de pertenencia es A (x), el corte de A es un conjunto borroso que se denota por [A] y se dene segn la ecuacin (2.35). En la gura 2.23 se muestra un ejemplo de conjunto borroso denido a partir de la operacin corte . [A] = {x X |A (x) > } , > 0 (2.35)

2.3

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

41

1 0,9 0,8 0,7 0,6 (x) 0,5 0,4 0,3 0,2 0,1 0 0 0,1 0,2

A (x) [A] (x)

0,3

0,4

0,5 x

0,6

0,7

0,8

0,9

Figura 2.23: corte de un conjunto borroso para = 0,5.

Denicin 2.30 (Concentracin y dilatacin). Sea A un conjunto borroso denido a travs de la funcin de pertenencia A (x), entonces Ak , con k R+ , denota la operacin de concentracin si k > 1 o de dilatacin si k [0, 1). Normalmente se utiliza k = 2 para la operacin de concentracin y k = 0,5 para la dilatacin. La funcin de pertenencia del conjunto borroso concentrado o dilatado se obtiene mediante la ecuacin (2.36). Ak = A (x)k (2.36)

Denicin 2.31 (Producto algebraico). El producto algebraico de dos conjuntos borrosos A y B , cuyas funciones de pertenencia son A (x) y B (x), respectivamente, se denota por AB y se dene mediante la ecuacin (2.37). El conjunto borroso AB cumple AB A B . (AB) (x) = A (x)B (x) (2.37)

Denicin 2.32 (Suma algebraica). La suma algebraica de dos conjuntos borrosos A y B , cuyas funciones de pertenencia son A (x) y B (x), respectivamente, se denota por A + B y se dene mediante la ecuacin (2.38). Si A y B son conjuntos borrosos normalizados, el conjunto borroso obtenido mediante la suma algebraica de A y B slo ser normalizado si A (x) + B (x) 1 para todo x X , es decir, a diferencia del producto algebraico, la suma algebraica de dos conjuntos borrosos slo tendr sentido si A+B 1 para todo x X . (A+B) (x) = A (x) + B (x) (2.38)

Denicin 2.33 (Suma). La suma de dos conjuntos borrosos A y B , cuyas funciones de pertenencia son A (x) y B (x), respectivamente, se denota A B y se dene mediante la ecuacin (2.39). Si A y B son conjuntos borrosos normalizados, el conjunto borroso A B ser normalizado en todo caso, por lo que la operacin suma s tiene sentido en todo el

42

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0 ,9 0 ,8 0 ,7 0 ,6 (x) 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 0 0,1 0,2 0,3 0,4 A (x)

C (x) B (x)

(A,B;C ) (x)

0,5 x

0,6

0,7

0,8

0,9

Figura 2.24: Combinacin convexa de dos conjuntos borrosos.

universo de discurso de los conjuntos A y B . (A B ) = A + B AB (AB) (x) = A (x) + B (x) A (x)B (x), x X Ntese que el producto algebraico es una T norma, por lo que es equivalente a la operacin de interseccin borrosa, sin embargo la suma algebraica no es una T conorma, por lo que no sera la operacin dual al producto algebraico. En lgica borrosa, la operacin dual del producto algebraico es la suma, ya que sta si es equivalente a la operacin unin (es una S norma). Denicin 2.34 (Combinacin convexa). La combinacin convexa de dos conjuntos borrosos A y B , con funciones de pertenencia A (x) y B (x), respectivamente, a travs de un tercer conjunto borroso C , con funcin de pertenencia C (x), se denota por (A, B ; C ), y se dene mediante la ecuacin (2.40). Un ejemplo de combinacin convexa entre dos conjuntos borrosos puede verse en la gura 2.24. (A, B ; C ) = CA + CB (A,B;C ) (x) = C (x)A (x) + (1 C (x))B (x), x X La combinacin convexa de A y B mediante un conjunto borroso C es un conjunto borroso intermedio entre la unin y la interseccin de los conjuntos A y B ; es decir, cumple: A B (A, B ; C ) A B, C (2.41)

(2.39)

(2.40)

2.3
Nio Joven

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

43

1 0,9 0,8 0,7 (edad) 0,6 0,5 0,4 0,3 0,2 0,1 0 0

Adulto

Anciano

10

20

30

40

50

60 edad

70

80

90

100

110

120

Figura 2.25: Variable lingstica edad.

2.3.2. Variables lingsticas


Una variable lingstica es una variable cuyos valores son palabras o sentencias en un idioma natural o articial [183]. El concepto de variable lingstica fue introducido por Zadeh [5] y desarrollado posteriormente por l mismo en varios trabajos [1012, 184]. Las variables lingsticas permiten el acercamiento de la lgica borrosa al lenguaje natural, facilitando la utilizacin lgica del lenguaje ordinario y eludiendo as las deciencias del lenguaje preciso en el rea del control. Esta idea subyace en los primeros trabajos de Zadeh, y se formaliz nalmente en el enunciado de su conocido Principio de Incompatibilidad [6]: A medida que la complejidad de un sistema aumenta, disminuye nuestra capacidad para hacer armaciones precisas, incluso signicativas, sobre su comportamiento, hasta que se alcanza un umbral ms all del cual precisin y relevancia son caractersticas casi mutuamente excluyentes. Tal como se puede ver en la gura 2.25, cada trmino lingstico se representa de forma cuantitativa mediante una funcin de pertenencia o distribucin de posibilidad. En este caso, la variable lingstica edad se ha representado mediante las etiquetas lingsticas nio, joven, adulto y anciano. Los trminos nio y anciano se han creado utilizando funciones de pertenencia trapezoidales, la etiqueta joven mediante una funcin gaussiana, y adulto empleando una gaussiana doble. Adems de los trminos lingsticos primarios, se pueden denir etiquetas derivadas mediante la utilizacin de modicadores lingsticos. Siguiendo con el ejemplo anterior, se podra utilizar algn operador de negacin de la tabla 2.3 para crear la etiqueta no adulto. Tambin se puede utilizar la operacin de concentracin para crear las etiquetas ms adulto, muy adulto o bastante adulto, o el operador de dilatacin para denir los trminos lingsticos menos adulto, ms o menos adulto o algo adulto. Ntese en los ejemplos de la gura 2.26 que los modicadores lingsticos basados en concentraciones o dilataciones8 del conjunto
8

Estos operadores se introdujeron en la denicin 2.30.

44

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0,9 0,8 0,7 (edad) 0,6 0,5 0,4 0,3 0,2 0,1 0 0 10 20 30 40

Adulto Adulto Algo Adulto (k = 0,5) Ms Adulto (k = 2) No Adulto

50 edad

60

70

80

90

100

Figura 2.26: Concentracin y dilatacin de una variable lingstica.

borroso, no implican un desplazamiento de ste, sino una modicacin de su forma. Esto quiere decir que el signicado de la variable lingstica ms adulto del ejemplo no se reere a una persona de mayor edad, sino a una persona de la que se quiere asegurar su buena pertenencia a dicho conjunto. Para un mismo universo de discurso, cuanto mayor sea el nmero de trminos lingsticos empleados para representar una variable, mayor precisin se podr obtener del sistema borroso. Evidentemente, al tener un nmero mayor de etiquetas lingsticas cada una de ellas representar un subespacio menor, por lo que se podr caracterizar el sistema ms namente; sin embargo, tambin tendr mayor complejidad. Segn Miller [185], el nmero de valores capaces de discriminar un ser humano vara entre cinco y nueve. Otro detalle a tener en cuenta si se desea hacer un tratamiento lingstico del sistema borroso, es que normalmente se debe escoger un nmero impar de etiquetas. De esta forma existir una etiqueta central, adulto en la gura 2.26, que har las veces de neutral, y el resto se distribuir a sus lados. Cuando la dimensionalidad del espacio entradasalida es grande, el nmero de reglas necesario para producir un recubrimiento sucientemente no de todo el universo de discurso se incrementa exponencialmente. Esto es lo que se denomina problema de la dimensionalidad de los sistemas borrosos. Una forma de reducir este problema consiste en emplear procedimientos automticos para la seleccin de reglas, de forma que se tenga ms precisin en las zonas que lo requieran sin aumentar excesivamente el nmero de stas [186]. En cualquier caso, tanto para la eleccin del nmero como para la distribucin de las etiquetas lingsticas se requiere de un anlisis detallado del problema.

2.3.3. Regla borrosa


Un regla borrosa es una sentencia condicional que tiene la estructura SiEntonces (If Then ), siendo el conjunto de reglas de un sistema borroso lo que se conoce como base de reglas o base de conocimiento del sistema. En su forma ms simple, una regla borrosa viene

2.3 Nombre Mamdani (mnimo) Larsen (producto) Reichencach Lukasiewicz Willmott KleeneDienes

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

45

Implicacin(x, y ) min {A (x), B (y )} A (x) B (y ) 1 A (x) + A (x) B (y ) min {1, 1 A (x) + B (y )} max {1 A (x), min {A (x), B (y )}} max {1 A (x), B (y )}

Tabla 2.4: Operadores de implicacin.

dada por la expresin (2.42), aunque esta expresin puede hacerse ms compleja mediante la aplicacin de operadores de negacin, unin, interseccin, modicadores lingsticos, etc. Por ejemplo, una construccin ms compleja de una regla borrosa podra ser la mostrada en la ecuacin (2.43). Si x es A entonces y es B Si la temperatura es alta y el volumen es pequeo entonces la presin es alta (2.42) (2.43)

La premisa de la regla, es decir, la condicin, se conoce como antecedente , mientras que la consecuencia se conoce como consecuente . En el ejemplo anterior, Si la temperatura es alta y el volumen es pequeo se corresponde con el antecedente de la regla, en este caso formado por la unin mediante el operador y de dos premisas. Las variables lingsticas de entrada son temperatura y volumen, etiquetadas lingsticamente en esta regla como alta y pequeo, respectivamente. La presin es alta es el consecuente de la regla, donde presin se corresponde con la variable lingstica de salida y alta con la etiqueta lingstica que se le asignar si se cumple el antecedente. El consecuente de una regla puede ser un conjunto borroso, un punto borroso, o una funcin dependiente de las entradas. El operador que relaciona la premisa con la consecuencia se conoce como operador de implicacin , y se representa lingsticamente con el adverbio entonces (then ). Existen muchas maneras de denir el concepto de implicacin [187189]. Basndose en cada una de ellas se pueden generar distintas funciones en base a T normas y S normas. En la tabla 2.4 se presentan varios operadores de implicacin, siendo los ms importantes y utilizados los operadores de Mamdani y Larsen. Al contrario de lo que sucede en la lgica clsica, la lgica borrosa no requiere que las reglas se cumplan de forma exacta, sino que pueden cumplirse en cierto grado. Esta propiedad de la lgica borrosa es lo que caracteriza al razonamiento aproximado. Esto implica que se puede inferir una conclusin aunque el hecho no verique la regla plenamente. Evidentemente, si el grado de cumplimiento del antecedente no es completo, el grado de accin del consecuente tampoco lo ser. De esta forma, el consecuente nal se parecer ms a la conclusin formal de la regla cuanto mayor sea el grado de cumplimiento de sta.

46

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

Sistema Borroso Base de Conocimiento


Base de Datos Base de Reglas

Entradas

Borrosicador

Motor de Inferencia

Desborrosicador

Salidas

Figura 2.27: Sistema de inferencia borroso.

2.3.4. Sistema de inferencia borroso


Los sistemas de inferencia borrosos son algoritmos basados en la lgica borrosa y el razonamiento aproximado. En funcin de la aplicacin a la que se destine el sistema de inferencia ste puede denominarse de distintas formas: modelo borroso , sistema experto borroso, controlador borroso , memoria asociativa borrosa, etc. Los sistemas de inferencia borrosos se componen bsicamente de dos elementos, el motor de inferencia y la base de conocimiento , sin embargo, segn la aplicacin para que vaya a emplearse el sistema de inferencia, puede ser necesario aadir elementos adicionales, como el borrosicador y el desborrosicador que permiten conectar al sistema de inferencia borroso con el mundo real [190]. A continuacin se estudiarn cada uno de los elementos de un sistema de inferencia borrosa, cuya conguracin puede verse en la gura 2.27. Borrosicador En muchos casos, especialmente en sistemas de control, las entradas que deben aplicarse a un sistema borroso son valores numricos concretos, no borrosos, procedentes generalmente de sensores, por lo que es necesario establecer un interfaz con el motor de inferencia borrosa que elabore conjuntos borrosos a partir de entradas no borrosas. Este interfaz se conoce como borrosicador (fuzzier ). Evidentemente, no es necesario emplear un borrosicador si la entrada al sistema es ya un conjunto borroso. El sistema de borrosicacin ms simple consiste en sustituir el valor numrico por un conjunto borroso de tipo singleton, o punto borroso. Esta borrosicacin simplica de forma notable los clculos necesarios para la aplicacin posterior de la norma de composicin. Por ejemplo, un valor de entrada no borroso x = 11 puede ser representado por el conjunto borroso A = 11, cuya funcin de pertenencia se correspondera con la ecuacin (2.44). 1 si x = 11 A (x) = (2.44) 0 en otro caso

Otro posible borrosicador sera un algoritmo que asignara a cada entrada una representacin borrosa mediante trminos lingsticos denidos en su correspondiente universo de discurso. Evidentemente, este esquema es ms complejo y aporta poco al sistema, por lo que no es frecuente su utilizacin. Por ltimo, existe la posibilidad de emplear la capacidad de la lgica borrosa para manejar la incertidumbre como mtodo de borrosicacin. En este

2.3

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

47

caso, se sustituye la variable numrica de entrada por un conjunto borroso que represente mediante una distribucin de posibilidad (funcin de pertenencia) los posibles valores que sta podra tomar realmente. Este borrosicador resulta especialmente til si hay que tratar con un continuo de medidas dentro de un rango, o si se desea incorporar la incertidumbre propia de toda medida al sistema de control, por ejemplo para considerar el ruido o los errores del sistema de instrumentacin; sin embargo, supone una mayor complejidad del sistema de inferencia que debe ser considerada. Inferencia borrosa El motor de inferencia borrosa es el mecanismo que permite obtener la salida de un sistema borroso en funcin de sus reglas y las entradas que le sean aplicadas. Esta salida puede ser tanto un conjunto borroso como un valor numrico, segn se requiera por la aplicacin. Para realizar la inferencia se deben seguir los pasos siguientes: 1. En primer lugar es necesario calcular el grado de cumplimiento de cada antecedente en funcin de la entrada del sistema. Si se utiliza un borrosicador tipo singleton, este valor se obtendr directamente de la interseccin de la entrada con la funcin de pertenencia del antecedente; mientras que si la entrada est representada por una funcin de pertenencia no singleton , ser necesario aplicar un operador de interseccin, una T norma, sobre dichos conjuntos. 2. Una vez calculados todos los antecedentes de cada regla, se componen segn la denicin lingstica de la misma, es decir, aplicando los operadores de interseccin para condiciones Y, y los de unin para condiciones O. Esta medida proporciona un valor que representa la calidad con la que las reglas son satisfechas por la condicin de entrada del sistema borroso, esto es, su grado de activacin. 3. Mediante el operador de implicacin, Entonces, se obtiene el consecuente resultante de cada regla. En aplicaciones relacionadas con el control de procesos, los operadores de implicacin ms utilizados son las T normas mnimo y producto. Al emplear el operador mnimo, la funcin de pertenencia del consecuente es recortada a la altura denida por el grado de veracidad de la regla; mientras que si se emplea el operador producto, la salida es escalada segn dicho grado de veracidad. 4. Por ltimo, la regla composicional u operador de agregacin, combina los resultados de todas las reglas, esto es, el resultado de la base de reglas, en un nico conjunto borroso. El mximo y la suma acotada suelen ser las S normas ms utilizadas para obtener el conjunto borroso de salida. 5. Si la aplicacin requiere que la salida del sistema borroso sea numrica, se necesitar aplicar un desborrosicador a la misma. El motor de inferencia puede verse matemticamente como un esquema de interpolacin no lineal, ya que permite la fusin de la informacin de mltiples reglas en una conclusin nica. Esta conclusin se obtiene a partir de la combinacin de los consecuentes de las reglas del sistema, ponderadas segn una funcin del grado de cumplimiento de cada una de ellas.

48

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

1 0 ,8

Antecedente 1

Entrada 1

1 0 ,8 (x) 0 ,6

Consecuente 1

Regla 1
(x) 0 ,6 0 ,4 0 ,2 0 0 0,2 0,4 x 1 0 ,8 Entrada 2 Antecedente 2 1 0,6 0,8 0 ,4 Grado de activacin 0 ,2 1 0 0 0,2 0,4 x Consecuente 2 0,6 0,8

Regla 2
(x) 0 ,6 0 ,4 0 ,2 0 0 0,2 0,4 x 0,6 0,8

(x)

0 ,8 Grado de activacin 0 ,6 0 ,4 0 ,2 1 0 0 0,2 0,4 x 0,6 0,8

Figura 2.28: Ejemplo de inferencia.

Desde el punto de vista lgico, la inferencia borrosa puede verse como una generalizacin del esquema clsico de razonamiento modus ponens 9. En la gura 2.28 se muestra un ejemplo de inferencia tanto para una entrada borrosa pura (Entrada 1), como para un punto borroso (Entrada 2). El grado de activacin de la primera regla se obtiene mediante el mximo valor de la interseccin clsica entre el conjunto borroso de entrada y el del antecedente. Este valor es propagado hacia el consecuente de la regla, obtenindose el conjunto borroso de salida de sta mediante el operador de implicacin producto. Para la segunda regla, el grado de activacin se obtiene evaluando la funcin de pertenencia del Antecedente 2 en el punto dado por la Entrada 2. Este grado de activacin es propagado hacia su consecuente, obtenindose mediante el operador de implicacin mnimo el conjunto borroso de salida de la segunda regla. El conjunto borroso nal resultado de las dos reglas, obtenido con el operador de conjuncin mximo, puede observarse en la gura 2.29. Base de conocimiento La base de conocimiento (knowledge base ) almacena las relaciones existentes entre las entradas y salidas del sistema. Basndose en este conocimiento, el proceso de inferencia obtendr las salidas asociadas a las entradas del mismo. Este elemento puede subdividirse en dos partes: la base de datos y la base de reglas. La base de datos (data base ) contiene la denicin de las variables lingsticas empleadas en las reglas, es decir, las funciones de
9

El modus ponens es la regla de inferencia bsica en el clculo proposicional. Dado un postulado lgico de la forma Si A entonces B , si se demuestra cierta la premisa antecedente, es decir, si la sentencia A es cierta, se armar inmediatamente la premisa consecuente, es decir, B tambin lo ser.

2.3
1 0,9 0,8 0,7 D (y ) 0,6 0,5 0,4 0,3 0,2 0,1 0 0 0,1 0,2 0,3 = 0,4 Conjunto borroso de salida

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

49

Centroide (0,622) Menor de los mximos (0,640) Centroide indexado = 0,4 (0,716) Centro de los mximos (0,745) Mayor de los mximos (0,850)

0,4

0,5 y

0,6

0,7

0,8

0,9

Figura 2.29: Ejemplo de desborrosicacin.

pertenencia que denen cada una de las etiquetas lingsticas. La base de reglas (rule base ) contiene la coleccin de reglas lingsticas del sistema. sta puede representarse como una lista de reglas, que es la forma ms habitual, o mediante una tabla o matriz de decisin, que proporciona un formato ms compacto si existen pocas variables. Existen varios mtodos para la obtencin de las reglas de un sistema borroso, entre los que cabe destacar: Basados en el conocimiento de un experto, o heursticos. Generalmente se obtiene su conocimiento mediante unos cuestionarios cuidadosamente organizados que permitan la generacin de reglas del tipo SiEntonces. Basados en las acciones de control de un operador, en funcin de los datos de entrada salida observados durante un perodo sucientemente amplio de operacin. Basados en aprendizaje mediante algoritmos automticos. Desborrosicador Cuando la salida del sistema de inferencia es un conjunto borroso pero la aplicacin requiere que sea un valor numrico concreto, es necesario emplear un desborrosicador (defuzzier ). Este elemento convierte dicho conjunto en un valor numrico del universo de discurso de salida que ser representativo de la conclusin obtenida. Existen muchos mtodos de desborrosicacin [190, 191] y an sigue siendo frecuente la aparicin de nuevos mtodos en la literatura [192196]. A continuacin se presentarn los desborrosicadores ms comunes, cuya representacin grca, respecto del conjunto borroso nal de salida a desborrosicar, puede verse en la gura 2.29. 1. Mtodo del centro de gravedad o del centroide. La salida numrica de este desborrosicador se obtiene calculando el centro de gravedad del conjunto borroso de salida. Siendo

50

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

Modelos borrosos basados en reglas

Modelos no aditivos

Modelos aditivos

Puros

Mamdani

SAM

Tsukamoto

TSK

Figura 2.30: Tipos de modelos borrosos

D (y ) el conjunto borroso de salida, su valor desborrosicado mediante este mtodo yo , se obtiene a partir de la ecuacin (2.45). En la ecuacin (2.46) se muestra la versin para valores discretos. Aunque es ms costoso computacionalmente que otros mtodos de desborrosicacin, este mtodo es sin duda el ms empleado, ya que proporciona variaciones suaves y continuas de los valores de salida. yo = yD (y ) dy D (y ) dy yD (y ) D (y ) (2.45)

yo =

(2.46)

2. Mtodo de la mxima pertenencia. Siendo D (y ) el conjunto borroso de salida, el valor numrico yo obtenido mediante el desborrosicador del mximo se corresponde con el valor de y para el que D (y ) alcanza su mximo valor. Puesto que pueden existir mltiples valores para los que D (y ) tenga un mismo valor mximo, se hace necesario escoger algn mtodo para elegir el valor de yo . Estos mtodos son (ver gura 2.29): el menor de los mximos, el centro de los mximos y el mayor de los mximos. El desborrosicador de la mxima pertenencia se caracteriza por ser de muy fcil implementacin, sin embargo, genera cambios bruscos en la salida que en muchas aplicaciones no son admisibles. 3. Mtodo del centroide indexado. Este mtodo calcula el centro de gravedad de la parte correspondiente al conjunto borroso inferido cuyo grado de pertenencia sea mayor de un determinado valor .

2.3.5. Tipos de sistemas borrosos


En funcin de la forma de las reglas y del tipo de entradas y salidas, se distinguen cuatro tipos de sistemas borrosos [14, 197], relacionados esquemticamente como se muestra en la gura 2.30: los sistemas puros, los sistema de tipo Mamdani, los de Sugeno o TSK y los modelos aditivos de Kosko o SAM, junto con algunas variantes como los modelos de Tsukamoto.

2.3 Sistema borroso puro

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

51

Los sistemas borrosos puros son sistemas cuyas entradas y salidas son conjuntos borrosos. Al no necesitar realizar ninguna transformacin sobre las entradas o salidas, estn compuestos tan slo por la base de conocimiento y el motor de inferencia. Modelo Mamdani En 1974 E. H. Mamdani estableci las bases para la aplicacin de la lgica borrosa al control de sistemas [198]. Posteriormente, junto con S. Assilian, consiguieron controlar una mquina de vapor mediante un conjunto de reglas lingsticas obtenidas de la experiencia de los operadores de la mquina [28]. De esta forma demostraron la potencia prctica de la teora borrosa de Zadeh con la creacin del primer sistema borroso aplicado a un problema de control. Desde entonces, el esquema de control borroso que utilizaron [199] se conoce como modelo de control de MamdaniAssilian, o ms frecuentemente, como modelo de Mamdani. El esquema de control borroso de Mamdani consta, segn se muestra en la gura 2.27, de un motor de inferencia, una base de conocimiento y unos interfaces tanto de borrosicacin como de desborrosicacin para procesar las entradas y salidas del sistema. Los sistemas borrosos de tipo Mamdani presentan una serie de ventajas que propician su utilizacin en el mbito del control: Los modelos de tipo Mamdani se comportan como aproximadores universales [200]. Pueden utilizarse en aplicaciones reales, ya que tratan con facilidad entradas y salidas reales. Proporcionan un marco natural para la inclusin del conocimiento de expertos en forma de reglas lingsticas. Existe gran libertad a la hora de escoger el mtodo de inferencia borrosa, as como los interfaces de borrosicacin y desborrosicacin. Por el contrario, tambin poseen una serie de limitaciones [197]: Falta de exibilidad debido a la rigidez con que se particionan los espacios de entrada y salida. No existe una distincin clara entre el conocimiento experto y la denicin de las variables lingsticas incluidas en las reglas borrosas. Cuando las variables de entrada al sistema dependen unas de otras, es muy complicado obtener una particin borrosa adecuada de los espacios de entrada. El tamao de la base de conocimiento depende directamente del nmero de variables y trminos lingsticos que existan en el sistema. La interpretabilidad del sistema est ligada a la utilizacin de un nmero no excesivo de reglas, lo cual generalmente va en contra de la precisin del sistema borroso implementado.

52

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

La base de reglas de un sistema Mamdani se congura mediante un conjunto de reglas de la forma:


r r r Regla r : Si x1 es Ar 1 y x2 es A2 y . . . y xn es An entonces y es B ,

(2.47)

r r donde x1 , x2 , . . . , xn son las entradas del sistema, Ar 1 , A2 , . . . , An son los conjuntos borrosos del antecedente de la regla r , r = 1..R, denidos en los universos de discurso de sus entradas asociadas, y es la salida del sistema, y B r el conjunto borroso consecuente de la regla r , denido en el universo de discurso de la salida y . En este tipo de sistemas, tanto las entradas xi , i = 1..n, como la salida y son valores numricos. El grado de activacin de la regla, r , se obtiene mediante la aplicacin del operador de r r interseccin, que normalmente ser alguna de las T normas presentadas: r = 1 2 r r . . . n , donde cada i representa el grado de emparejamiento entre la entrada xi y el conjunto borroso antecedente Ar i . El conjunto borroso de salida de la regla que genera el motor de inferencia, B r , viene dado por el operador de implicacin: B r = r Br , siendo Br la funcin de pertenencia que dene al conjunto borroso consecuente B r . La salida borrosa del motor de inferencia, B , se calcula agregando mediante una regla composicional, normalmente una S norma, los efectos de todas las reglas del sistema: B = R r =1 (B r ). Finalmente, el desborrosicador calcula la salida numrica del sistema, y . Ntese que en los sistemas de tipo Mamdani tanto los antecedentes como los consecuentes estn formados por conjuntos borrosos, mientras que las entradas y salidas son valores numricos. Se ha demostrado que los sistemas borrosos de tipo Mamdani son aproximadores universales [200204]. Uniendo la interpretabilidad de sus reglas a la capacidad aproximadora universal de estos modelos, se tiene que los modelos borrosos de Mamdani son una herramienta tremendamente poderosa para el anlisis y control de sistemas complejos. No obstante, una buena aproximacin con un modelo borroso de tipo Mamdani puede requerir de un nmero elevado de reglas, por lo que la interpretabilidad del sistema queda mermada conforme aumenta su complejidad.

Modelo aditivo estndar, SAM El modelo aditivo estndar, SAM por sus siglas en ingls (Standard Additive Model ), es un caso particular de los modelos borrosos aditivos. Fue propuesto por Bart Kosko [205,206] y su esquema de bloques puede verse en la gura 2.31. La principal ventaja de los modelos aditivos es su eciencia, ya que las reglas pueden precomponerse en un formato menos costoso computacionalmente. El esquema de inferencia de un sistema SAM es similar al de los modelos TSK que se vern posteriormente, ya que ambos generan su salida en base a la suma ponderada de las consecuencias de cada una de las reglas de la base de conocimiento. Sin embargo, la estructuras de las reglas de un sistema SAM es idntica a las de los modelos de Mamdani, por lo que podran considerarse como una variacin de stos. No obstante, existen cuatro diferencias fundamentales entre los esquemas de inferencia de los sistemas SAM y Mamdani [14]: 1. En los modelos SAM la entrada (x) se considera siempre como un punto borroso. 2. Para la inferencia se utiliza el operador producto, frente al operador mnimo que suele emplearse en los modelos de Mamdani.

2.3

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

53

1 Si A1 entonces Dr1
Dr 1

2 Si A2 entonces Dr2 x . . .
Drm Dr 2

. . . m

Centroide

Si Am entonces Drm

Figura 2.31: Diagrama de bloques de un modelo aditivo estndar (SAM).

3. Frente al operador mximo que emplean los modelos de Mamdani, en los modelos SAM la combinacin nal (D ) de las conclusiones parciales de cada regla borrosa (D r ), se realiza mediante una suma ponderada segn los pesos . Esta forma de operar sita a los modelos SAM ms cerca estructuralmente de los modelos TSK que de los Mamdani. 4. La salida (y ) de un modelo aditivo estndar se calcula mediante la adicin de las salidas parciales ponderadas, mientras que en los de Mamdani se debe especicar un desborrosicador.

Modelo de Tsukamoto Este modelo, propuesto por Tsukamoto en 1979 [207], se caracteriza por representar el consecuente de cada regla borrosa mediante un conjunto borroso con una funcin de pertenencia montona. La salida inferida por cada regla es un valor numrico inducido por el grado de activacin de la regla. La salida global se toma como la media ponderada de todas las salidas parciales. Este tipo de modelos permiten eliminar el consumo de tiempo correspondiente a la desborrosicacin, sin embargo, no son modelos muy utilizados por no ser tan transparentes como los de Mamdani o Sugeno. El mecanismo de inferencia no sigue estrictamente la regla composicional de inferencia y la salida es siempre numrica, incluso cuando las entradas son borrosas. Modelo TakagiSugenoKang (TSK) Los investigadores japoneses Takagi y Sugeno [208], con la posterior incorporacin de Kang [209], propusieron un tipo de sistema borroso que en lugar de emplear reglas completamente lingsticas, utiliza como consecuente una funcin de las variables de estrada del sistema. Este tipo de sistemas se conoce como modelos TakagiSugenoKang (TSK), modelos Takagi Sugeno (TS) o de forma ms simplicada, modelos Sugeno. Una regla tpica de un sistema

54

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.3

TSK tiene la forma:


r r r r Regla r : Si x1 es Ar 1 y x2 es A2 y . . . y xn es An entonces y = g (x),

(2.48)

donde xi , i = 1..n, son las entradas del sistema e y r es la salida inferida por la regla r . Los elementos Ar i son los conjuntos borrosos del antecedente de la regla r , denidos en los universos de discurso de sus entradas asociadas. La consecuencia inferida a partir de la regla se calcula con la funcin g r (x), dependiente de las entradas del sistema. La funcin consecuente, g r (x), puede escogerse libremente, aunque los consecuentes ms utilizados en este tipo de sistemas son los polinomios de grado 0 y de grado 1. La utilizacin de polinomios de rdenes mayores o de funciones no polinmicas aaden complejidad al sistema y dicultan su interpretabilidad, por lo que no es muy comn su utilizacin. Si la funcin consecuente es un polinomio de orden 0, se denomina consecuente afn , y las reglas tienen la forma dada por la ecuacin (2.49); mientras que si se emplea un consecuente lineal , r r o de orden 1, las reglas tienen la forma dada en (2.50). Los elementos br 0 , b1 , . . . , bn son r parmetros reales, siendo bi los trminos que multiplican a la variable i-sima del sistema, y br 0 el trmino afn de la regla r . El consecuente TSK crea un hiperplano ndimensional, donde los elementos br i caracterizan el hiperplano, y el trmino afn se comporta como un oset o desplazamiento de la salida, y r . Por ejemplo, en un sistema de orden 1, n = 1, el r r r consecuente TSK tiene la forma y r = br 0 + b1 x1 , donde b1 x1 crea una recta de pendiente b1 , r r y el trmino afn b0 es el valor de la salida y en x1 = 0.
r r r r Si x1 es Ar 1 y x2 es A2 y . . . y xn es An entonces y = b0

(2.49)

r r r r r r Si x1 es Ar 1 y x2 es A2 y . . . y xn es An entonces y = b0 + b1 x1 + . . . + bn xn

(2.50)

La salida de un sistema TSK se calcula mediante la suma ponderada o el promedio ponderado del efecto individual de todas sus reglas. La suma ponderada es la suma de los valores obtenidos por la funcin consecuente, ponderadas por el grado de activacin de cada una de las reglas. El promedio ponderado consiste en dividir la suma ponderada por el sumatorio de las fuerzas de activacin de las reglas. Estos mtodos de agregacin permiten, de forma matemticamente sencilla, que las reglas que se cumplen en mayor grado afecten ms a la salida del sistema que las que se cumplen con una menor calidad. Si la base de reglas est formada por R reglas y r es el grado de cumplimiento de la regla r , la salida aplicando la suma ponderada o el promedio ponderado, se obtiene mediante la aplicacin de las ecuaciones (2.51) (2.52), respectivamente.
R

y=
r =1 R

ryr

(2.51)

ryr (2.52) r

y=

r =1 R r =1

2.4
Sistema Borroso

FUNDAMENTOS DE LOS SISTEMAS BORROSOS

55

Base de Conocimiento
Base de Datos Base de Reglas

Entradas

Motor de Inferencia

Mecanismo de agregacin

Salidas

Figura 2.32: Sistema borroso de TakagiSugenoKang (TSK).

El grado de cumplimiento de cada regla, r , se obtendr mediante la aplicacin de un operador de conjuncin que se modela mediante una T norma; normalmente la funcin r r mnimo o producto: r = T {Ar 1 (x1 ), A2 (x2 ), . . . , An (xn )}. La estructura de un sistema borroso TSK, mostrada en la gura 2.32, es ligeramente distinta de la estructura tpica vista en los apartados anteriores. Dispone como todo sistema borroso de un motor de inferencia y una base de conocimiento, pero como las entradas al sistema son siempre numricas, y su efecto sobre las salidas se calcula directamente mediante la aplicacin de las ecuaciones anteriores, no es necesaria la utilizacin de un borrosicador. La salida de cada una de las reglas es un valor numrico, de forma que tampoco se requiere de desborrosicador para generar la salida del sistema. No obstante, es imprescindible algn mecanismo para agregar todas las conclusiones parciales de las reglas en una nica salida. Para ello se utilizan la suma ponderada o el promedio ponderado. Aunque es muy comn nombrar a esta operacin como desborrosicador, sobre todo al promedio ponderado que se le suele denominar desborrosicador centro promedio, esto no es estrictamente correcto, ya que su entrada no es un conjunto borroso. Los sistemas borrosos TSK son una poderosa herramienta para el modelado de sistemas complejos y altamente no lineales, ya que son aproximadores universales tanto de la funcin [210213] como de su derivada [214217]. Adems, si se utiliza como consecuente un polinomio de orden 1 completo, es decir, con el trmino afn distinto de cero, un sistema TSK tambin puede aproximar de forma universal la 2 derivada de una funcin [218]. La utilizacin en los sistemas TSK de un consecuente polinmico permite aproximar funciones con gran precisin y con un nmero mucho menor de reglas que los sistemas de tipo Mamdani. No obstante, este aumento de precisin se consigue a costa de empeorar la interpretabilidad de las reglas. Como los consecuentes funcionales empleados en los sistemas borrosos de tipo TSK son difciles de denir por un experto, para la obtencin de este tipo de modelos borrosos se suele recurrir a sistemas automticos de aprendizaje, como los algoritmos basados en redes neuronales o los algoritmos bioinspirados (algoritmos basados en colonias de hormigas, algoritmos genticos, etc.).

56

INTRODUCCIN A LA LGICA BORROSA Y SUS APLICACIONES

2.4

2.4.

Conclusiones y comentarios bibliogrcos

A lo largo de este captulo se ha visto como la lgica borrosa se ha ganado el reconocimiento del que goza en la actualidad en base a los excelentes resultados que ha obtenido, tanto en el ambiente acadmico e investigador como en el industrial. Con los investigadores japoneses al frente casi desde sus inicios, y la posterior incorporacin de investigadores de todo el Mundo, la lgica borrosa se ha convertido en una tecnologa de vanguardia, til y ecaz en multitud de aplicaciones de muy diversos mbitos. El desarrollo inicial de la lgica borrosa, liderado fundamentalmente por su creador, Lofti A. Zadeh, puede consultarse en las referencias [1] a [16], mientras que el proceso de formalizacin y adaptacin de esta teora al mbito industrial y de consumo puede documentarse en las referencias [17] a [36], y [37] a [61], respectivamente. En las referencias [62] a [174] se pueden consultar algunos de los trabajos realizados por investigadores espaoles sobre lgica borrosa. En este captulo tambin se ha visto como, tomando como base la imprecisin del razonamiento humano pero bajo un planteamiento matemtico, la lgica borrosa es capaz de generar la respuesta a una situacin basndose en el conocimiento adquirido de sta, aunque ste sea inexacto o incompleto. Los fundamentos que permiten esta inferencia se recogen en los trabajos [175] a [197]. Como se ha visto, la lgica borrosa se basa en el concepto de conjunto borroso. En este captulo se han estudiado dichos conjuntos, tanto la forma de denirlos a partir de su funcin de pertenencia, como algunas de las operaciones que se pueden realizar con ellos. Posteriormente se ha estudiado el concepto de variable lingstica, introducido por Zadeh en [5], el cual permite transformar el lenguaje natural en conocimiento cuantitativo utilizable desde el punto de vista matemtico, pero sin las restricciones que impone el formalismo preciso de la lgica clsica. Por ltimo, se han presentado los principales tipos de sistemas borrosos existentes, as como los mtodos de inferencia de cada uno de ellos. La descripcin del modelo borroso de tipo Mamdani puede consultarse en las referencias [198] a [204], en las referencias [205] y [206] las de los modelos de tipo SAM y en [207] las de los modelos de tipo Tsukamoto. Se ha prestado especial atencin a los sistemas TakagiSugenoKang (TSK), aproximadores universales de cualquier funcin y su derivada, tal como se demuestra en las referencias [208] a [218], ya que estos sern la herramienta bsica del resto de captulos de este texto. De entre las referencias incluidas en este captulo, cabe destacar por su especial relevancia el primer trabajo del profesor Zadeh, [1], que dio inicio a la lgica borrosa, as como [5], donde el propio Zadeh introdujo el concepto de variable lingstica. Tambin es necesario destacar el trabajo [28] de Assilian y Mamdani por constituir un punto de inexin en la utilizacin de la lgica borrosa a nivel industrial, y los trabajos de [208] y [209] de Takagi, Sugeno y Kang porque en base a ellos se crearon los modelos borrosos de tipo TSK.

Cap tulo

Modelado borroso de sistemas din amicos


btener un modelo del sistema que se pretende estudiar suele ser uno de los primeros pasos que ha de afrontar el ingeniero de control. Este captulo est estructurado en cinco secciones que pretenden cubrir los conocimientos necesarios para la obtencin de un modelo borroso para un sistema dinmico. En la primera seccin se realiza una introduccin al concepto de modelo de estado y se presentan algunas deniciones importantes. La segunda seccin se centra en el modelado borroso de estado de un sistema de control completamente general. Para ello se estudia el modelo borroso de estado de la planta, el del controlador y el del sistema de control borroso en lazo cerrado, todo ello sin aplicar ningn tipo de restriccin ni al tamao del vector de estado ni al del vector de control. En cada uno de los casos se presenta un algoritmo que permite realizar el clculo de dichos sistemas. La tercera seccin est dedicada a las tres fases de la identicacin de un modelo borroso, a saber: la identicacin de la estructura, la estimacin de sus parmetros, y la validacin del modelo obtenido. Dentro de la fase de estimacin, de entre las muchas metodologas existentes, el texto se centra en dos tcnicas hbridas que han demostrado su potencia y versatilidad: la metodologa neuroborrosa y la metodologa bioinspirada hbrida (algoritmos bioinspirados + gradiente descendente). En la cuarta seccin se presenta el software desarrollado para facilitar el almacenamiento de todos los datos de un modelo borroso, y en la quinta y ltima seccin se recogen las principales conclusiones del captulo, as como una revisin de las referencias bibliogrcas incluidas en el mismo.

3.1. Introduccin
Un modelo es una representacin conceptual o fsica de un proceso o sistema, con el n de analizar su naturaleza, desarrollar o comprobar hiptesis o supuestos y permitir una mejor comprensin del fenmeno real al cual el modelo representa. Es casi imposible obtener un modelo perfecto 100 % veraz de un sistema, pero tampoco tiene porqu ser necesario. La complejidad de los sistemas reales se simplica en los modelos que los representan como forma de facilitar su obtencin o la comprensin de su funcionamiento. El esfuerzo para la obtencin de un modelo debe ser coherente con el uso que se le pretenda dar y la aplicacin a la que se vaya a dedicar, es decir, el modelo nal debe ser aquel que suponga el mnimo esfuerzo posible de modelado y que cumpla los requerimientos de error de la aplicacin. 57

58

MODELADO BORROSO DE SISTEMAS DINMICOS

3.1

Los modelos se pueden clasicar como [219]: mentales, verbales, fsicos y matemticos: Los modelos mentales son intuitivos y permiten predecir el comportamiento de sistemas cotidianos en base a la experiencia acumulada. Su carcter es difcil de formalizar por su propia naturaleza. Los modelos verbales son cualitativos, y representan mediante palabras las relaciones entre las entradas y salidas de un sistema. Los modelos borrosos lingsticos pueden considerarse modelos de tipo verbal, aunque realmente contienen un trasfondo matemtico que los puede situar indistintamente en esta categora o en la de modelos matemticos. Los modelos fsicos son representaciones a escala de sistemas reales que se desarrollan para investigar el comportamiento de stos en entornos controlados, como un laboratorio, o para reducir los riesgos o costes que implicara realizar dichas pruebas sobre el sistema real. El modelado fsico de todos los fenmenos involucrados en el sistema suele ser muy complejo, y el coste de este tipo de modelos es, en general, elevado. Los modelos matemticos son aquellos donde las relaciones entre las distintas variables del sistema se expresan mediante relaciones matemticas. Estos modelos pueden llegar a ser tremendamente precisos, pero como contraprestacin, son poco interpretables por la complejidad matemtica que pueden alcanzar. En ingeniera, y particularmente en el campo de la ingeniera de control, los modelos empleados son prcticamente siempre de tipo matemtico, no slo por la exactitud que presentan, sino por la posibilidad de emplear las matemticas como herramienta de anlisis sobre el sistema a travs de su modelo. Los modelos borrosos, tal como se ha comentado anteriormente, son modelos matemticos que pueden representarse verbalmente mediante la utilizacin de reglas lingsticas. Esta propiedad conere a los modelos borrosos una ventaja sobre otro tipo de modelos, ya que conjuga la precisin matemtica con la interpretabilidad. Aunque precisin e interpretabilidad son criterios mutuamente excluyentes, mediante la utilizacin de la lgica borrosa se pueden obtener modelos que conjuguen de forma equilibrada simplicidad, interpretabilidad y exactitud. Los modelos de tipo Mamdani son excelentes en los casos en los que se desea priorizar la interpretabilidad sobre la exactitud del modelo, mientras que si es la precisin la caracterstica ms deseada, los modelos borrosos de tipo TSK seran la eleccin adecuada. En este captulo se estudiarn ambos casos, aunque se prestar especial atencin a los modelos de tipo TSK, ya que en los captulos posteriores el estudio se centrar fundamentalmente en este tipo de sistemas borrosos.

3.1.1. Modelo de estado de un sistema dinmico


El primer paso para abordar el anlisis riguroso de un sistema dinmico consiste en deducir su modelo. El modelo de estado de un sistema representa, mediante una serie de ecuaciones, las relaciones entre las variables internas del sistema, o estados, y las entradas y salidas del mismo. El hecho de emplear variables internas propicia que el modelo de estado de un sistema tambin sea denominado descripcin interna del mismo.

3.1

INTRODUCCIN

59

Independientemente del nmero de variables de estado del sistema y de la complejidad de su dinmica, los modelos de estado tienen la gran ventaja de ser perfectamente vlidos tanto para sistemas lineales como para sistemas no lineales, con una o mltiples entradas y salidas, y tanto si se estudian en tiempo continuo como en instantes muestreados [220224]. Denicin 3.1 (Estado). El estado de un sistema dinmico es la menor coleccin de variables, denominadas variables de estado , cuyo valor en un determinado instante resume el pasado dinmico del sistema, y es suciente, junto con las entradas aplicadas al mismo, para predecir su evolucin futura. Denicin 3.2 (Variable de estado). Una variable de estado es cada una de las componentes xi (t), i = 1..n, que conforman el vector de estado x(t). Como se ve en la ecuacin (3.1), este vector se representa en forma de columna, siendo cada variable de estado un elemento de dicho vector y n el orden del sistema, o lo que es lo mismo, el tamao del vector de estado. x1 (t)

Las variables de estado de un sistema pueden ser magnitudes fsicas dependientes de su dinmica, como posicin, velocidad, tensin, fuerza, . . . , o por el contrario, pueden ser magnitudes matemticas abstractas sin sentido fsico asociadas a las ecuaciones del sistema. La seleccin de las variables de estado no es nica, por lo que el modelo de estado de un sistema tampoco lo es. Desde el punto de vista matemtico, el vector de estado forma un espacio vectorial de orden n. Cualquier conjunto de n vectores linealmente independientes puede representar el mismo espacio, por lo que mediante un cambio de base pueden obtenerse innitos modelos de estado de un mismo sistema. Esta diversidad no es un problema, sino que representa una gran ventaja de las representaciones internas, ya que proporcionan una gran exibilidad a los modelos de estado, por ejemplo, para facilitar demostraciones matemticas sobre los mismos. Denicin 3.3 (Modelo de estado). El modelo de estado de un sistema dinmico representa la variacin de las variables de estado del sistema frente al estado actual y las seales de control aplicadas al mismo. Para el caso genrico de un sistema dinmico no lineal multivariable, su modelo de estado viene dado por las ecuaciones (3.2) (3.3), segn que el sistema sea de tiempo continuo o discreto, respectivamente. Estas ecuaciones tambin se conocen como ecuaciones de estado . x 1 (t) = f1 (x1 (t), x2 (t), . . . , xn (t), u1 (t), u2 (t), . . . , um (t)) x 2 (t) = f2 (x1 (t), x2 (t), . . . , xn (t), u1 (t), u2 (t), . . . , um (t)) . . . x n (t) = fn (x1 (t), x2 (t), . . . , xn (t), u1 (t), u2 (t), . . . , um (t)) (3.2)

x2 (t) x(t) = . . . xn (t)

(3.1)

60

MODELADO BORROSO DE SISTEMAS DINMICOS

3.1

x1 (k + 1) = f 1 (x1 (k ), x2 (k ), . . . , xn (k ), u1(k ), u2 (k ), . . . , um (k )) x2 (k + 1) = f 2 (x1 (k ), x2 (k ), . . . , xn (k ), u1(k ), u2 (k ), . . . , um (k )) . . . xn (k + 1) = f n (x1 (k ), x2 (k ), . . . , xn (k ), u1 (k ), u2(k ), . . . , um (k )) Las funciones f1 , f2 , . . . , fn y f 1 , f 2 , . . . , f n de estas expresiones son funciones genricas, por lo que pueden ser no lineales, dependientes de las variables de estado xi , i = 1..n, y las entradas del sistema, uj , j = 1..m. La ecuacin (3.2) puede representarse de forma compacta: (t) = f (x(t), u(t)) , x (3.4) (3.3)

(t) la variacin siendo x(t) el vector de estado, u(t) el vector de entrada o control, y x temporal del vector de estado representada por su primera derivada con respecto al tiempo. De igual forma, la ecuacin de estado de un sistema discreto, (3.3), puede representarse de la forma compacta siguiente: x(k + 1) = f (x(k ), u(k )) , (3.5)

donde x(k ) es el vector de estado y u(k ) el vector de entrada o control, ambos en tiempo discreto. x(k + 1) es el valor que tomar el vector de estado en el siguiente instante de muestreo. Si adems de las variables de estado interesa modelar las salidas del sistema, entonces stas se representan mediante una funcin de las entradas y las propias variables de estado. El vector de salidas del sistema se representa mediante las ecuaciones (3.6) y (3.7), siendo y(t) e y(k ) las salidas para un sistema de tiempo continuo o discreto, respectivamente. y(t) = h ((x(t), u(t)) y(k ) = h ((x(k ), u(k )) (3.6) (3.7)

Ntese que las ecuaciones de salida no contienen dinmica alguna, slo una transformacin entre el espacio de las variables de estado y el de las salidas del sistema, ya que toda la dinmica queda reejada en la ecuacin de estado. Por esta razn, la ecuacin de salida se obviar en los clculos y desarrollos posteriores. Denicin 3.4 (Estado de equilibrio). Los estados de equilibrio de un sistema dinmico, tambin denominados puntos singulares, son aquellos estados del sistema en los que la variacin del vector de estado es nula, es decir, los estados en los que el sistema permanece inalterable mientras no sea perturbado. Un estado de equilibrio xeq de un sistema dinmico debe satisfacer las expresiones (3.8) (3.9), segn sea un sistemas de tiempo continuo o de tiempo discreto, respectivamente. ueq es el vector de control constante para el estado de equilibrio xeq . (t) = 0 = f (xeq , ueq ) x (3.8)

3.2

MODELO DE ESTADO DE UN SISTEMA DE CONTROL BORROSO

61

Entradas Controlador

Seales de control Acondicionadores de seal

Actuadores

Planta Salidas
Sensores

Variables medidas

Figura 3.1: Sistema de control.

x(k + 1) = x(k ) = f (xeq , ueq )

(3.9)

Si el sistema objeto de estudio fuese un sistema de control realimentado, las seales de control se podran obtener a partir de las variables de estado, de forma que las expresiones anteriores se reduciran a (t) = 0 = f (xeq ) x (3.10) y x(k + 1) = x(k ) = f (xeq ), respectivamente. Nota. Con objeto de facilitar la compresin y sencillez de la notacin, en lo sucesivo la dependencia explcita del tiempo de las variables de estado y control se emplear slo en los casos en los que se desee destacar, omitindose en el resto de expresiones. (3.11)

3.2. Modelo de estado de un sistema de control borroso


Un sistema de control (ver gura 3.1) est formado por la planta, o sistema que se desea controlar, el controlador y los elementos auxiliares que permiten la correcta interconexin de dicho conjunto, como los sensores, actuadores, acondicionadores de seal, etc. El funcionamiento dinmico de estos elementos puede modelarse mediante sistemas borrosos. El modelo borroso de la planta deber reejar mediante reglas la dinmica del sistema real, manteniendo un compromiso entre la precisin del modelo y su complejidad en funcin de los requisitos de la aplicacin. El controlador borroso deber inferir, en funcin del estado del sistema, las acciones correctoras que deben aplicarse sobre la planta para que sta se comporte segn unos requisitos pre-establecidos. Si se obtienen los modelos matemticos equivalentes tanto de la planta como del controlador borroso, ser posible calcular un equivalente matemtico del sistema de control en lazo cerrado. La obtencin del modelo matemtico de lazo cerrado permite el estudio de la estabilidad y desempeo del sistema en funcin de distintos criterios de calidad. Una vez que se ha introducido de forma breve el modelado un sistema dinmico mediante su ecuacin de estado, se proceder a representar dichas ecuaciones a travs de modelos borrosos. La forma de obtener la estructura del modelo y el valor de los parmetros se ver posteriormente, concretamente en la seccin 3.3.

62

MODELADO BORROSO DE SISTEMAS DINMICOS

3.2

Tal como se vio en el captulo 2, un modelo borroso representa las relaciones entre sus entradas y sus salidas con reglas de tipo SiEntonces (IfThen ), por lo tanto, la forma de representar la dinmica de un sistema empleando la lgica borrosa pasa por establecer reglas que representen las ecuaciones de estado y salida del mismo. Es importante recordar que tanto los modelos borrosos de tipo Mamdani como los de tipo TSK son aproximadores universales, en el caso de los TSK incluso de la segunda derivada, por lo que los modelos borrosos pueden representar de forma able dinmicas complejas. A continuacin se estudiar la representacin de sistemas de control mediante modelos borrosos de tipo Mamdani y TSK, tanto para sistemas de tiempo continuo como de tiempo discreto. Se prestar especial atencin a los sistemas borrosos TSK de tiempo continuo, por ser stos sistemas parte fundamental del resto de captulos del presente texto.

3.2.1. Sistema borroso de tipo TSK


Modelo borroso de la planta Un sistema dinmico de tiempo continuo completamente general puede ser representado por la ecuacin (3.2), o de forma ms compacta por la ecuacin (3.4). Estas ecuaciones representan un modelo sin limitaciones en el tamao del vector de estados ni en el vector de control, e igualmente sin restricciones en el tipo de funciones que regula la dinmica del sistema, por lo que stas pueden ser no lineales. Sea n el orden del sistema y m el nmero de entradas de ste, un modelo borroso equivalente mltiple entrada y mltiple salida MIMO (Multiple Input Multiple Output ) de un proceso de tiempo continuo, puede ser representado mediante el siguiente conjunto de reglas [208, 225227] (base de reglas denominada Rp para enfatizar que se trata del proceso o planta): Rp(l,i) : Si y Entonces
l l x1 es Al 1i y x2 es A2i y . . . y xn es Ani l l l u1 es B1 i y u2 es B2i y . . . y um es Bmi l l x l i = Fi (x, u, i ),

(3.12)

donde l = 1..Mi es el ndice de la regla y Mi el nmero de reglas que modelan la i-sima ecuacin diferencial del proceso, x i . Ntese que empleando esta representacin, la dinmica de cada una de las variables de estado se puede modelar mediante un nmero distinto de reglas, lo que facilita la reduccin del nmero de reglas totales necesarias para modelar correctamente un sistema complejo. Este hecho tambin facilita el proceso de modelado, ya que se puede abordar de forma independiente para cada x i sin tener en cuenta el nmero de reglas que deben emplearse. Los elementos Al ki son los conjuntos borrosos de los antecedentes denidos en el universo l de discurso de sus respectivas variables de estado, xk , k = 1..n, y los elementos Bji son los conjuntos borrosos denidos en el universo de discurso de la j -sima entrada del sistema, uj , j = 1..m. La funcin Fil (x, u, l i ) representa el consecuente de la l -sima regla para la ecuacin de estado i-sima, donde l i es el vector de parmetros adaptables del consecuente. Empleando un consecuente lineal con trmino afn, ste tendr la forma dada en (3.13), y l i ser l l l l l al , a , . . . , a , b , b , . . . , b . 0i 1i ni 1i 2i mi

3.2

MODELO DE ESTADO DE UN SISTEMA DE CONTROL BORROSO

63

l l l l l l Fil (x, u, l i ) = a0i + a1i x1 + . . . + ani xn + b1i u1 + b2i u2 + . . . + bmi um

(3.13)

Si se utiliza el promedio ponderado como mtodo de agregacin, la salida del modelo borroso generada por el conjunto de todas las reglas Rp(l,i) , que modelan la dinmica de la coordenada xi del vector de estado, puede calcularse a travs de la expresin (3.14) [228,229], l donde wi (x, u) representa el grado de activacin de las reglas de la planta.
Mi l wi (x, u) Fil (x, u, l i) Mi l=1

x i =

l=1

(3.14)
l wi (x, u)

Si las funciones de pertenencia del universo de discurso de las variables de estado estn l denidas por l ki (xk , ki ), las funciones de pertenencia del universo de discurso de las entradas l de control por ji (uj , l ji ), y se emplea el operador de inferencia producto, el grado de l cumplimiento de las reglas de la planta, wi (x, u), se calcula mediante la ecuacin (3.15). Los l l vectores i y i representan los conjuntos de parmetros adaptables de los antecedentes de las reglas de la planta en los universos de discurso de las variables de estado y las seales de control, respectivamente. Ntese que estas funciones de pertenencia denen los conjuntos l borrosos Al ki y Bji del antecedente de las reglas denidas en (3.12).
n l wi (x, u) m l l ki (xk , ki ) k =1 j =1 l l ji (uj , ji )

(3.15)

En la ecuacin (3.15) se puede observar que tanto las funciones de pertenencia relativas a las variables de estado, como las relativas a las variables de control, poseen tres ndices. Estos ndices permiten que dichas funciones de pertenencia puedan ser distintas para cada una de las variables de estado, ndice k , o de las entradas, ndice j , de cada una de las reglas, ndice l, que denen cada ecuacin de estado, ndice i. Por lo tanto, la distribucin de las funciones de pertenencia de esta metodologa [168, 170] permite la mxima exibilidad, no limitando en modo alguno la utilizacin de un tipo u otro de funcin de pertenencia, ni obligando a que stas deban ser iguales o deban cumplir ningn tipo de requerimiento en cuanto a su distribucin en sus respectivos universos de discurso. Puesto que el consecuente de las reglas est dado por la ecuacin (3.13), la expresin (3.14) puede escribirse como:
Mi l wi (x, u)al 0i Mi l wi (x, u)al 1i Mi l wi (x, u)al ni

x i =

l=1 Mi

+
l wi (x, u)

l=1 Mi

+ ... +
l wi (x, u)

l=1 Mi

+
l wi (x, u)

l=1

l=1 Mi

l=1 Mi

l wi (x, u)bl 1i

l=1 Mi

(3.16) ,
l wi (x, u)

+ ... +
l wi (x, u)

l=1 Mi

l wi (x, u)bl mi

l=1

l=1

o de forma ms simplicada:

64

MODELADO BORROSO DE SISTEMAS DINMICOS

3.2

x i = a0i (x, u) + a1i (x, u)x1 + . . . + ani (x, u)xn + + b1i (x, u)u1 + . . . + bmi (x, u)um , donde los trminos aki (x, u) y bji (x, u) son coecientes variables [230] denidos por:
Mi l wi (x,u)al ki
i

(3.17)

Mi

aki (x,u) = l=1 M

, bji (x,u) = l=1 M

l wi (x,u)bl ji
i

k = 0, 1, . . . , n , i = j= 1, . . . , n 1, . . . , m (3.18)

l=1

l wi (x,u)

l=1

l wi (x,u)

Puesto que no hay riesgos de confundir los coecientes variables anteriores con los parmetros de los consecuentes de las reglas, ya que los coecientes variables no dependen del ndice l, en las expresiones posteriores se omitir, con objeto de simplicar la notacin, la dependencia de estos coecientes de los vectores de estado (x) y control (u). La ecuacin (3.17) puede agruparse pues en la forma:
n m

x i = a0i +
k =1

aki xk +
j =1

bji uj .

(3.19)

Si el vector de estado se extiende en una coordenada [168] mediante x 0 = 1, el vector de adopta la forma: estado extendido, x = ( x x0 , x 1 , . . . , x n )T = (1, x1 , . . . , xn )T. (3.20)

Finalmente, aplicando (3.20) sobre la ecuacin (3.19), se obtiene la expresin nal, ms compacta, que representa la ecuacin de estado de una planta completamente general de tiempo continuo, modelada mediante lgica borrosa:
n m

x i =
k =0

aki x k +
j =1

bji uj .

(3.21)

La ecuacin (3.21) representa el equivalente matemtico de un modelo borroso de estado en tiempo continuo completamente general, sin limitaciones en el tamao del vector de estado, ni en el del vector de control, ni en el nmero de reglas. Cada una de las ecuaciones de estado se caracteriza por un nmero independiente de reglas, y cada una de sus funciones de pertenencia pueden denirse de forma completamente independiente, incluso permitindose la mezcla de distintos tipos de funciones de pertenencia en una misma regla. En la gura 3.2 se muestra un algoritmo que, haciendo uso de la ecuacin (3.21), calcula la salida del modelo borroso dado por el conjunto de reglas (3.12), en un estado x y bajo una seal de control u. La ecuacin (3.21) tambin puede escribirse matricialmente: (t) = A0 (x) + A(x)x(t) + B(x)u(t), x (3.22)

siendo A0 (x) la matriz de coecientes variables relacionada con los trminos anes, y A(x) y B(x) matrices de coecientes variables relacionadas con el resto de parmetros de los consecuentes:

3.2
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:

MODELO DE ESTADO DE UN SISTEMA DE CONTROL BORROSO

65

segn (3.20) Clcular el vector de estado extendido x Para cada ecuacin de estado (i = 1..n) hacer Inicializar la salida i-sima (x i = 0) Suma wi = 0 Para cada regla (l = 1..Mi ) hacer l l Calcular wi segn (3.15) y hacer Suma wi = Suma wi + wi Fin Para Para cada variable de estado extendida (k = 0, 1, ..., n) hacer Calcular el numerador de aki segn (3.18) x i = x i + aki x k Fin Para Para cada variable de control (j = 1..m) hacer Calcular el numerador de bji segn (3.18) x i = x i + bji uj Fin Para x i = x i /Suma wi {Aqu se aade el denominador de aki y bji } Fin Para Retornar x
Figura 3.2: Algoritmo para el clculo del modelo borroso de la planta.

a (x) 01 a02 (x) A0 (x) = . (3.23a) . . a0n (x)

a (x) a11 (x) 01 a02 (x) a12 (x) A(x) = . . . . . . a0n (x) a1n (x)

. . . an1 (x)

. . . an2 (x) . .. . . . . . . ann (x)

(3.23b)

b (x) b21 (x) 11 b12 (x) b22 (x) B(x) = . . . . . . b1n (x) b2n (x)

. . . bm1 (x)

. . . bm2 (x) . . .. . . . . . . bmn (x)

(3.24)

Si se utiliza la extensin del vector de estado dada en (3.20), y considerando su derivada, (t) = (0, x x 1, . . . , x n )T , la ecuacin (3.21) puede expresarse de forma matricial compacta: (x) (x)u(t), (t) = A x x(t) + B (x) y B (x) matrices de coecientes variables: siendo A (3.25)

66

MODELADO BORROSO DE SISTEMAS DINMICOS

3.2

Para un sistema muestreado, el conjunto de reglas que representa la planta vendr dado por la ecuacin (3.28). Rp(l,i) : Si y Entonces
l l x1 (d) es Al 1i y x2 (d) es A2i y . . . y xn (d) es Ani l l l u1 (d) es B1 i y u2 (d) es B2i y . . . y um (d) es Bmi

0 0 a01 (x) a11 (x) 0 0 A(x) = = a02 (x) a12 (x) A0 (x) A(x) . . . . . . a0n (x) a1n (x) 0 0 ... b11 (x) b21 (x) . . . 0 (x) = = B b12 (x) b22 (x) . . . B(x) . . .. . . . . . b1n (x) b2n (x) . . .

... ... ... .. . ... 0

bm1 (x) bm2 (x) . . . . bmn (x)

an1 (x) an2 (x) . . . ann (x)

(3.26)

(3.27)

(3.28)

xl i (d + 1) =

l F i (x(d), u(d), l i ),

donde d representa el instante de muestreo normalizado1 , es decir t = dTs siendo Ts el periodo de muestreo del sistema. Siguiendo el procedimiento empleado anteriormente para una planta modelada en tiempo continuo, la deduccin del equivalente matemtico de una planta modelada en tiempo discreto mediante el conjunto de reglas (3.28) es inmediata, siendo su expresin nal la mostrada en la ecuacin (3.29). Ntese que las expresiones auxiliares necesarias para evaluar la ecuacin (3.29) son idnticas para el caso continuo y discreto, salvo evidentemente la dependencia temporal de las variables de estado y control.
n m

xi (d + 1) =
k =0

aki x k (d ) +
j =1

bji uj (d)

(3.29)

Al igual que en el caso continuo, esta expresin puede representarse de forma matricial, ver ecuacin (3.30), o de la forma matricial compacta dada por la ecuacin (3.31) si se emplea la extensin del vector de estado. x(d + 1) = A0 (x) + A(x)x(d) + B(x)u(d) (x) (x)u(d) (d + 1) = A x x(d) + B
1

(3.30) (3.31)

Se ha optado por denominar d al instante de tiempo normalizado, en vez de k como suele ser habitual, para evitar posibles confusiones de ste con el ndice k que se utiliza para recorrer el vector de estado.

3.2

MODELO DE ESTADO DE UN SISTEMA DE CONTROL BORROSO

67

Modelo borroso del controlador Un controlador multivariable de tiempo continuo completamente general, y que por lo tanto puede ser no lineal, sin limitaciones ni en el tamao del vector de control ni en el vector de estado, puede denirse mediante el sistema de ecuaciones (3.32), o de forma compacta por (3.33). u1 (t) = g1 (x1 (t), x2 (t), . . . , xn (t)) u2 (t) = g2 (x1 (t), x2 (t), . . . , xn (t)) . . . um (t) = gm (x1 (t), x2 (t), . . . , xn (t)) u(t) = g (x(t)) , (3.33) (3.32)

siendo n el orden del sistema y m el nmero de entradas de control. Un modelo borroso equivalente del controlador dado por las ecuaciones anteriores, puede ser representado mediante el siguiente conjunto de reglas [231, 232] (base de reglas denominada Rc para enfatizar el hecho de que se trata del controlador): Rc(r,j ) : Si Entonces
r r r x1 es C1 j y x2 es C2j y . . . y xn es Cnj r r ur j = Gj (x, j ),

(3.34)

donde r = 1..Nj es el ndice de las reglas del controlador y Nj el nmero de reglas que r modelan la j -sima seal de control. Ckj , con k = 1..n, representa los n conjuntos borrosos del antecedente de la regla r de la seal de control ur j en el universo de discurso de las variables de estado. r (x, r La funcin Gj j ) es el consecuente de la regla r para la j -sima seal de control, siendo r j el vector de parmetros adaptables del consecuente. Si se utiliza un consecuente TSK con r r r trmino afn, ste tendr la forma dada en (3.35), y r j ser (c0j , c1j , . . . , cnj ).
r r r r Gj (x, r j ) = c0j + c1j x1 + . . . + cnj xn

(3.35)

Utilizando el promedio ponderado como mtodo de agregacin, la salida del modelo borroso generada por el conjunto de todas las reglas Rc(r,j ) puede calcularse empleando las r expresiones (3.36) y (3.37) [228, 229], donde j (x) representa el grado de activacin de las r r reglas del controlador y kj (xk , kj ) son las funciones de pertenencia de los antecedentes de las reglas, cuyos parmetros ajustables se denen por r j.
Nj r r j (x) Gj (x, r j) Nj r =1 n r j r j (x)

uj =

r =1

(3.36)

=
k =1

r r kj (xk , kj )

(3.37)

68

MODELADO BORROSO DE SISTEMAS DINMICOS

3.2

Procediendo con el clculo de forma similar a como se realiz en (3.16) y (3.17), se pueden obtener las expresiones (3.38) y (3.39), donde en este caso los coecientes variables2 ckj (x) se calculan mediante la ecuacin (3.40).
Nj Nj r j (x)cr 0j Nj r j (x)cr 1j r j (x)cr nj

uj =

r =1 Nj

+
r j (x)

r =1 Nj

+ ...+
r j (x)

r =1 Nj

(3.38)
r j (x)

r =1

r =1

r =1

uj = c0j (x) + c1j (x)x1 + . . . + cnj (x)xn


Nj

(3.39)

ckj (x) =

r =1 Nj

r j (x)cr kj

(3.40)
r j (x)

r =1

La ecuacin (3.39) puede agruparse, dando lugar a (3.41), que representa el equivalente matemtico del controlador borroso.
n

uj = c0j +
k =1

ckj xk

(3.41)

En este caso, el vector de estados tambin puede extenderse en una coordenada [168,233], = ( x x0 , x 1 , . . . , x n )T = (1, x1 , . . . , xn )T , con lo que el controlador borroso puede representarse de forma ms compacta por la ecuacin (3.42).
n

uj =
k =0

ckj x k

(3.42)

La expresin (3.42) representa el modelo matemtico equivalente de un controlador borroso multivariable completamente general, sin limitaciones en el tamao del vector de estado, ni en el del vector de control, ni en el nmero de reglas. Cada salida del controlador se caracteriza por un nmero independiente de reglas, y cada una de sus funciones de pertenencia pueden denirse de forma completamente independiente, incluso pudiendo ser de distinto tipo en una misma regla. En la gura 3.3 se muestra un algoritmo que calcula la salida u del controlador borroso dado por el conjunto de reglas (3.34) en un estado x. La ecuacin (3.42) puede ser escrita de forma matricial como: u(t) = C0 (x) + C(x)x(t), (3.43)

donde C0 (x) es una matriz de coecientes variables relacionada con los trminos anes, y C(x) una matriz de coecientes variables relacionadas con el resto de parmetros de los consecuentes:
2

En las expresiones posteriores se omitir la dependencia de los coecientes variables del controlador del vector de estado con objeto de simplicar la notacin.

3.2
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:

MODELO DE ESTADO DE UN SISTEMA DE CONTROL BORROSO

69

segn (3.20) Clcular el vector de estado extendido x Para cada seal de control (j = 1..m) hacer Inicializar la salida j -sima (uj = 0) Suma j = 0 Para cada regla (r = 1..Nj ) hacer r r Calcular j segn (3.37) y hacer Suma j = Suma j + j Fin Para Para cada variable de estado extendida (k = 0, 1, ..., n) hacer Calcular el numerador de ckj segn (3.40) uj = uj + ckj x k Fin Para uj = uj /Suma j {Aqu se aade el denominador de ckj } Fin Para Retornar u
Figura 3.3: Algoritmo para el clculo del controlador borroso.

c02 (x) C0 (x) = . (3.44a) . . c0m (x)

c01 (x)

c12 (x) . . . cn2 (x) . C(x) = . . .. . . . . . c1m (x) . . . cnm (x)

c11 (x) . . . cn1 (x)

(3.44b)

Si se utiliza la extensin del vector de estado dada en (3.20), la ecuacin (3.42) puede expresarse de forma matricial compacta: (x) u(t) = C x(t), (x) una matriz de coecientes variables dada por: siendo C c (x) c11 (x) 01 c02 (x) c12 (x) = . . . . . . c0m (x) c1m (x) . . . cn1 (x) . . . cn2 (x) . .. . . . . . . cnm (x) (3.45)

(x) = C

C0 (x) C(x)

(3.46)

Para el caso de un sistema muestreado, un controlador multivariable de tiempo discreto completamente general, y que por lo tanto puede ser no lineal, sin limitaciones ni en el tamao del vector de control ni en el del vector de estado, puede denirse mediante el sistema de ecuaciones (3.47), o de forma compacta por (3.48).

70

MODELADO BORROSO DE SISTEMAS DINMICOS

3.2

u1 (d) = g 1 (x1 (d), x2 (d), . . . , xn (d)) u2 (d) = g 2 (x1 (d), x2 (d), . . . , xn (d)) . . . um (d) = g m (x1 (d), x2 (d), . . . , xn (d)) u(d) = g (x(d)) (3.48) (3.47)

Un modelo borroso equivalente del controlador dado por las ecuaciones anteriores, puede ser representado mediante el conjunto de reglas: Rc(r,j ) : Si Entonces
r r r x1 (d) es C1 j y x2 (d) es C2j y . . . y xn (d) es Cnj r ur j (d) = G j (x(d), j ) r

(3.49)

Operando a partir del conjunto de reglas anterior de forma idntica a como se ha realizado para el caso continuo, se obtiene la expresin (3.50), que representa el modelo matemtico equivalente del controlador borroso de tiempo discreto denido en (3.49).
n

u j (d ) =
k =0

ckj x k (d )

(3.50)

Al igual que en el caso de la planta, la ecuacin anterior puede expresarse de forma matricial, segn la ecuacin (3.51), o de forma matricial compacta, tal como reeja la ecuacin (3.52). u(d) = C0 (x) + C(x)x(d) (x) u(d) = C x (d ) (3.51) (3.52)

Modelo borroso de lazo cerrado Dado un sistema de control en lazo cerrado como el representado en la gura 3.4, si tanto la planta como el controlador se modelan mediante sistemas borrosos de tipo TSK, se puede obtener un modelo matemtico equivalente de dicho sistema. Para el caso de tiempo continuo, (3.21) es el modelo matemtico equivalente de la planta, y (3.42) el del controlador. Sustituyendo uj de la segunda ecuacin en la primera, se obtiene:
n m n

x i =
k =0

aki x k +
j =1

bji
k =0

ckj x k .

(3.53)

Operando con los sumatorios:


n n m

x i =
k =0

aki x k +
k =0 j =1

(bji ckj x k ) ,

(3.54)

3.2

MODELO DE ESTADO DE UN SISTEMA DE CONTROL BORROSO

71

Controlador

Seales de control

Planta

Salidas

Variables de estado

Figura 3.4: Sistema de control en lazo cerrado.

que nalmente puede simplicarse en:


n m

x i =
k =0

aki +
j =1

bji ckj

x k .

(3.55)

La ecuacin (3.55) representa el modelo matemtico equivalente de un sistema de control en lazo cerrado multivariable y no lineal, basado en la teora de la lgica borrosa. Es importante recalcar que el modelo equivalente desarrollado no presenta restricciones ni en el tamao del vector de estados, ni en el del vector de control. Adems, el diseo de la estructura del controlador borroso se considera completamente independiente del proceso de modelado de la planta, de forma que la particin del universo de discurso de los estados de la planta y del controlador no tienen porqu coincidir. Igualmente, la dinmica de la planta y la del controlador no tienen porqu tener la misma complejidad, por lo que el nmero de reglas de cada uno de estos sistemas borrosos se considera independiente. En la gura 3.5 se muestra un algoritmo que calcula la salida de un sistema de control borroso en un estado x, mediante la utilizacin de la ecuacin (3.55). La ecuacin (3.55) tambin puede escribirse matricialmente: (t) = A0 (x) + B(x)C0 (x) + (A(x) + B(x)C(x)) x(t), x (3.56)

siendo A0 (x) y C0 (x) matrices de coecientes variables relacionadas con los trminos anes, y A(x), B(x) y C(x), matrices de coecientes variables relacionadas con el resto de parmetros de los consecuentes. Estas matrices han sido denidas previamente en las ecuaciones (3.23), (3.24) y (3.44). Si se utiliza la extensin del vector de estado dada en (3.20), y considerando su derivada, (t) = (0, x x 1, . . . , x n )T , la ecuacin (3.55) puede expresarse de forma matricial compacta: (x) + B (x)C (x) x (t) = A (t), x (3.57)

(x), B (x) y C (x) matrices de coecientes variables denidas por las ecuaciones siendo A (3.26), (3.27) y (3.46), respectivamente. Para el caso de tiempo discreto, la ecuacin (3.29) representa el modelo matemtico equivalente de la planta, y (3.50) el del controlador. Operando como en el caso continuo se obtiene la expresin (3.58), que representa el modelo matemtico equivalente de lazo cerrado de dicho sistema.

72

MODELADO BORROSO DE SISTEMAS DINMICOS

3.2

1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38:

Si las dimensiones de la planta y el controlador no son coherentes entonces Retornar error Fin Si segn (3.20) Clcular el vector de estado extendido x Para cada seal de control (j = 1..m) hacer Suma j = 0 Para cada regla (r = 1..Nj ) hacer r r Calcular j segn (3.37) y hacer Suma j = Suma j + j Fin Para Para cada variable de estado extendida (k = 0, 1, ..., n) hacer Calcular el numerador de ckj segn (3.40) Fin Para ckj = ckj /Suma j Fin Para Para cada ecuacin de estado (i = 1..n) hacer Suma wi = 0 Para cada regla (l = 1..Mi ) hacer l l Calcular wi segn (3.15) y hacer Suma wi = Suma wi + wi Fin Para Fin Para Para cada ecuacin de estado (i = 1..n) hacer Inicializar la salida i-sima (x i = 0) Para cada variable de control (j = 1..m) hacer Calcular el numerador de bji segn (3.18) x i = x i + bji uj Fin Para Para cada variable de estado extendida (k = 0, 1, ..., n) hacer Calcular el numerador de aki segn (3.18) x i = x i + aki x k x aux = 0 Para cada variable de control (j = 1..m) hacer x aux = x aux + bji ckj {Slo se utilizan el numerador de bji } Fin Para x i = x i + (aki + x aux ) x k {Slo se utiliza el numerador de aki } Fin Para x i = x i /Suma wi {Aqu se aade el denominador de aki y bji } Fin Para Retornar x
Figura 3.5: Algoritmo para el clculo del sistema de control borroso en lazo cerrado.

3.2

MODELO DE ESTADO DE UN SISTEMA DE CONTROL BORROSO

73

xi (d + 1) =
k =0

aki +
j =1

bji ckj

x k (d )

(3.58)

Evidentemente, esta expresin tambin puede expresarse de forma matricial: x(d + 1) = A0 (x) + B(x)C0 (x) + (A(x) + B(x)C(x)) x(d), y de forma matricial compacta utilizando la extensin del vector de estado: (x) + B (x)C (x) x (d + 1) = A (d ). x (3.60) (3.59)

3.2.2. Sistema borroso de tipo Mamdani


Los modelos borrosos de Mamdani destacan frente a los TSK por su mayor interpretabilidad, de ah que estos modelos se empleen frecuentemente para extraer reglas descriptivas del funcionamiento de sistemas [?, 234, 235], o como predictores lingsticamente comprensibles [236, 237]. Desde el punto de vista del control, los modelos de Mamdani permiten la creacin de controladores basados en el conocimiento de un experto, tambin denominados controladores heursticos3 . Estos controladores propiciaron el primer gran auge de la lgica borrosa gracias a su capacidad de controlar sistemas complejos en base a predicados lingsticos obtenidos de un experto, y sin requerir el modelado matemtico de la planta [198,238]. Un sistema de tiempo continuo de orden n y m entradas, puede representarse mediante un modelo de Mamdani de la forma: Rp(l,i) : Si y Entonces
l l x1 es Al 1i y x2 es A2i y . . . y xn es Ani l l l u1 es B1 i y u2 es B2i y . . . y um es Bmi l x l i = Fi ,

(3.61)

donde l = 1..Mi es el ndice de la regla y Mi el nmero de reglas que modelan la i-sima ecuacin diferencial del proceso, x i . Los elementos Al ki son los conjuntos borrosos de los antecedentes denidos en el universo de discurso de sus respectivas variables de estado, xk , l k = 1..n, y los elementos Bji son los conjuntos borrosos denidos en el universo de discurso de la j -sima entrada del sistema, uj , j = 1..m. Fil es el conjunto borroso del consecuente de la regla l para la ecuacin de estado i-sima, denido en el universo de discurso de x i. Un controlador borroso genrico de tipo Mamdani de tiempo continuo, vendr dado por el conjunto de reglas: Rc(r,j ) : Si Entonces
r r r x1 es C1 j y x2 es C2j y . . . y xn es Cnj r ur j = Gj ,

(3.62)

donde r = 1..Nj es el ndice de las reglas del controlador y Nj el nmero de reglas que r modelan la j -sima seal de control. Ckj , con k = 1..n, representa los n conjuntos borrosos del antecedente de la regla r de la seal de control j en el universo de discurso de las variables
3

Este tipo de controladores se estudiarn con ms detenimiento en el captulo 5.

74

MODELADO BORROSO DE SISTEMAS DINMICOS

3.3

de estado, y Gr j el conjunto borroso del consecuente de dicha regla, denido en el universo de discurso de ur j. Para el caso de sistemas de tiempo discreto, los modelos borrosos de la planta y del controlador pueden representarse por el conjunto de reglas de las ecuaciones (3.63) y (3.64), respectivamente. Rp(l,i) : Si y Entonces Rc(r,j ) : Si Entonces
l l x1 (d) es Al 1i y x2 (d) es A2i y . . . y xn (d) es Ani l l l u1 (d) es B1 i y u2 (d) es B2i y . . . y um (d) es Bmi

(3.63)

xl i (d + 1) = F i
r r r x1 (d) es C1 j y x2 (d) es C2j y . . . y xn (d) es Cnj

ur j ( d ) = Gj

(3.64)

Al igual que sucede con los modelos TSK estudiados anteriormente, para los modelos de Mamdani tambin es posible obtener un modelo matemtico equivalente. Sin embargo, en este caso no hay un sistema de inferencia claramente predominante sobre el resto en la literatura, como s que sucede con el operador de inferencia producto y la agregacin por promedio ponderado en los sistemas TSK. Por lo tanto, es necesario obtener el modelo matemtico equivalente en funcin de la combinacin de los operadores que se desee emplear. El estudio matemtico de los modelos de Mamdani no es un objetivo de este texto, por lo que se obviar dicho clculo.

3.3.

Identicacin de modelos borrosos

Muchos procesos reales contienen complejas relaciones no lineales difciles de modelar por tcnicas clsicas. Puesto que los sistemas borrosos pueden comportarse como aproximadores universales [239], stos se han convertido en una herramienta muy potente para el modelado de sistemas complejos. En concreto, los modelos de Takagi y Sugeno [208] son capaces de describir sistemas altamente no lineales utilizando un nmero de reglas reducido. El problema de la obtencin del modelo borroso de una planta consiste, fundamentalmente, en el ajuste de los parmetros caractersticos del mismo, de modo que represente, de la forma ms el posible, la dinmica de sta. Como se muestra en la gura 3.6, el proceso de modelado de un sistema consta de 3 fases [14]: identicacin de la estructura del sistema, estimacin de los parmetros y validacin del modelo obtenido. La fase de identicacin consiste en localizar las entradas importantes del sistema de entre todas las candidatas, establecer las particiones del universo de discurso de cada una de stas y determinar las reglas que relacionarn las entradas y salidas del modelo. Durante la fase de estimacin se ajustan los parmetros del modelo borroso para minimizar el error de modelado. En funcin del algoritmo empleado, pueden ajustarse los parmetros de los consecuentes de las reglas, o los parmetros de los consecuentes ms los de los antecedentes (funciones de pertenencia). Por ltimo, la fase de validacin se utiliza para comprobar el correcto funcionamiento del modelo obtenido. Si el modelo resultante no cumple las expectativas deseadas deber volverse a la fase inicial para as obtener un nuevo modelo.

3.3

IDENTIFICACIN DE MODELOS BORROSOS

75

Identicacin de la estructura

Estimacin de los parmetros

Validacin del modelo

Modelo aceptable? No

Fin

Figura 3.6: Proceso de identicacin.

En la bibliografa se han propuesto diferentes metodologas para el ajuste de los parmetros de un modelo borroso, aunque las ms ampliamente utilizadas han sido las basadas en gradiente descendente [240, 241] y, ms recientemente, en algoritmos evolutivos [242, 243]. Independientemente de la metodologa empleada, la velocidad de convergencia y la calidad de la estimacin nal, dependen fuertemente del valor inicial de los parmetros del modelo, para lo cual se han propuesto en la literatura varias tcnicas, como la prueba y error [244], clustering [245] o la simple asignacin aleatoria [14].

3.3.1. Identicacin de la estructura


La seleccin del conjunto adecuado de variables de entrada es el primer paso antes de identicar la estructura del modelo borroso de un sistema dinmico, y uno de los mayores problemas a la hora de construir dicho modelo, ya que son muchos los factores que pueden inuir en la salida de un sistema [246249]. Slo deben escogerse como entradas del modelo aquellas variables cuya relevancia sea signicativa con respecto al resto. La inclusin de variables de poca importancia complicar el proceso de modelado sin aportar un benecio claro al resultado nal. La seleccin de las variables de entrada de un modelo puede resolverse en base al conocimiento que se tenga sobre el sistema a modelar, aunque en la mayora de los casos dicha informacin suele ser insuciente. Existen mtodos estadsticos de seleccin que, junto con el conocimiento que se posea sobre el sistema, pueden utilizarse para facilitar dicha labor [250]. Una vez escogidas las variables de entrada que se emplearn en el modelo del sistema, el siguiente paso es identicar la estructura del mismo. Para ello se deben establecer las divisiones del universo de discurso de las variables de entrada, y escoger las funciones de pertenencia que se utilizarn para la realizacin de dichas divisiones. Este particionado dar lugar a las reglas que denirn el modelo borroso. Existen cuatro mtodos de particionar el universo de discurso: 1. Particionado experto . El particionado experto consiste en dividir el universo de discurso en base al conocimiento que se posea sobre el sistema a modelar. Si el sistema no es muy complejo y el conocimiento sobre ste es sucientemente preciso, es posible dividir el universo de discurso de las variables de entrada sin necesidad de emplear ningn algoritmo especco. 2. Particionado uniforme. El particionado uniforme divide el universo de discurso de las variables de entrada en partes iguales mediante funciones de pertenencia idnticas y simtricas. Normalmente las funciones de pertenencia se distribuyen de forma que no exista solape con ms de una funcin a la vez, lo que facilita la interpretabilidad del

76

MODELADO BORROSO DE SISTEMAS DINMICOS

3.3

1 0 ,9 0 ,8 0 ,7 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 0 0,2 0,4 x 0,6 0,8 1

Figura 3.7: Ejemplo de particionamiento uniforme.

modelo. En la gura 3.7 se muestra un ejemplo de particionado uniforme de un universo de discurso normalizado mediante 5 funciones de pertenencia gaussianas. 3. Particionado por clustering. Los algoritmos de clustering facilitan el agrupamiento de los datos de entrada en torno a valores de salidas que cumplan cierto patrn de comportamiento. Si el grado de pertenencia de los puntos a los clusters se asigna de forma borrosa y el patrn de agrupamiento se asigna en funcin del tipo de consecuente deseado, los algoritmos de clustering permiten la creacin de modelos borrosos donde cada uno de los clusters obtenidos se corresponde con una regla del modelo [209, 251, 252]. Los algoritmos de clustering ms empleados por sus buenos resultados en el modelado borroso [253] son el algoritmo cmeans [254, 255], y el algoritmo de Gustafson Kessel [256]. En la gura 3.8 se muestra un ejemplo de particionado por clustering en un universo de discurso normalizado mediante funciones de pertenencia gaussianas. Como puede observarse, las funciones de pertenencia no estn igualmente espaciadas, y existe solape entre todas ellas, lo que diculta la interpretabilidad del modelo borroso; sin embargo, al ajustarse los antecedentes de forma ms precisa a los datos de entrada, el modelo resultante ser normalmente ms preciso que con los mtodos de particionamiento anteriores. En la literatura existen algoritmos de clustering que permiten incorporar el conocimiento experto como mtodo para mejorar la interpretabilidad y el resultado obtenido por el proceso de agrupamiento [257, 258]. 4. Particionado en lnea. Las tcnicas de particionado en lnea son especialmente tiles cuando se desea modicar un modelo en tiempo real, o cuando existen restricciones temporales o de costo computacional. Los mtodos de clustering vistos en el punto anterior obtienen buenos resultados, pero requieren de un tiempo de procesado y un costo computacional alto, por lo que no son vlidos para aplicaciones de tiempo real. Los algoritmos de particionado en lnea suelen emplear algoritmos de pasada simple,

3.3

IDENTIFICACIN DE MODELOS BORROSOS

77

1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 0 0,2 0,4 x 0,6 0,8 1

Figura 3.8: Ejemplo de particionamiento por clustering.

es decir, algoritmos donde cada dato aadido es analizado para actualizar el modelo y luego es descartado. De esta forma se evita el procesado recurrente de todos los datos y, por lo tanto, se reduce el nmero de operaciones necesarias para la actualizacin del modelo y se agiliza el proceso de agrupamiento, permitiendo su utilizacin en lnea. Como ejemplos de estos algoritmos destacan el algoritmo de agrupamiento evolutivo [259], el mtodo de agrupamiento aglomerativo [260] y el mtodo de agrupamiento evolutivoaglomerativo [261]. Cualquiera de los algoritmos anteriores puede ser utilizado para generar la estructura de un modelo borroso, as como un modelo borroso inicial que despus puede ser mejorado en la fase de estimacin; sin embargo, es importante notar que en muchas ocasiones se pueden generar un nmero excesivo de reglas. Aunque tericamente un mayor nmero de reglas mejora la capacidad de aproximacin del modelo borroso [262], en la prctica, un ajuste no sobre los datos empleados para el modelado no asegura siempre un buen ajuste sobre los datos futuros, especialmente si las muestras estn afectadas por ruido o si el nmero de parmetros adaptables del modelo es elevado con respecto al nmero de datos. Un modelo borroso con un excesivo nmero de reglas posee mayor riesgo de entrar en sobre-entrenamiento (overtting ), es decir, el modelo se vuelve muy especco a la informacin presentada en la muestra de entrenamiento, aprendiendo incluso el ruido presente en los datos, pero es incapaz de obtener una salida aceptable para nuevos datos. Para extraer las reglas importantes de un modelo borroso y descartar aquellas menos signicativas, se pueden emplear algoritmos de simplicacin o reduccin de modelos [14, 263266].

3.3.2. Estimacin de parmetros


El objetivo de la fase de estimacin o ajuste de parmetros es encontrar los valores ptimos de los parmetros ajustables del modelo borroso, para que ste se aproxime de la forma ms

78

MODELADO BORROSO DE SISTEMAS DINMICOS

3.3

exacta posible al sistema real que se pretende modelar. Tambin es posible incorporar otros objetivos a la fase de estimacin, como la interpretabilidad [234] del modelo resultante, aunque el error de estimacin es sin duda el parmetro de ajuste de mayor importancia. En un modelo borroso se distinguen claramente dos tipos de parmetros ajustables: los parmetros de los antecedentes y los de los consecuentes. Los parmetros de los antecedentes son los valores que determinan las funciones de pertenencia del modelo. Estos valores se ajustan durante la fase de identicacin de la estructura, normalmente mediante clustering , aunque pueden renarse en la fase de estimacin. Los parmetros de los consecuentes de las reglas borrosas se ajustan durante la fase de estimacin, de forma que se reduzca el error de estimacin del modelo. Existen multitud de algoritmos de estimacin de parmetros para modelos borrosos [225, 240, 241, 245, 255, 267, 268]. No obstante, por su potencia y posibilidades, el texto se centra en tcnicas hbridas. A saber: lgica borrosa + redes neuronales (metodologa neuroborrosa [269, 270]) y algoritmos bioinspirados + gradiente descendente (metodologa bioinspirada hbrida [169, 233, 271]). Metodologa neuroborrosa Las redes neuronales articiales y la lgica borrosa son dos tecnologas complementarias, ya que la conjuncin de la capacidad de aprendizaje de las redes neuronales con la habilidad de procesamiento de predicados vagos de la lgica borrosa, proporciona un marco formal cercano a la forma de razonamiento del ser humano. La hibridacin redes neuronales articiales + lgica borrosa proporciona un sistema inteligente hbrido denominado sistema neuroborroso (NeuroFuzzy System, NFS ). La cualidad principal de los sistemas neuroborrosos es que son aproximadores universales, como las redes neuronales, pero con la habilidad adicional de ofrecer reglas SiEntonces interpretables que permiten dar signicado fsico a los modelos. Como se puede observar en la gura 3.9, un sistema borroso, cuyo modelo matemtico equivalente viene dado por la expresin (3.14), puede representarse como una red neuronal de ujo directo de 3 capas hacia adelante [6, 272], esto es, un perceptrn de 3 capas [228]. La primera capa representa la capa de entrada, y en ella se sitan todas las entradas del sistema, x1 , . . . , xn . Los datos de cada entrada, la k -sima por ejemplo, son ponderados entre la capa de entrada y la capa intermedia, o capa oculta, a travs de las funciones de pertenencia correspondientes a cada regla l, l ki . La capa oculta se conecta con la capa de salida mediante el consecuente correspondiente a cada regla l = 1..Mi , y nalmente la capa de salida calcula la salida i-sima del modelo neuroborroso. Ntese como cada nodo de capa est conectado a cada nodo de la capa siguiente, tal como sucede en un perceptrn de tres capas. Naturalmente, el comportamiento de los nodos y las sinapsis en un sistema neuroborroso no son iguales que en el perceptrn, sin embargo, pueden emplearse los mismos algoritmos de adaptacin. Para mostrar con ms detalle la representacin neuronal de un sistema borroso, en la gura 3.10 se muestra la red neuronal equivalente al modelo borroso de una planta visto en la seccin 3.2.1, cuyo modelo matemtico viene dado por la ecuacin (3.21). La conexin red neuronallgica borrosa permite aprovechar la habilidad de las redes neuronales articiales para construir modelos borrosos. As, entre otros, es de aplicacin el conocido algoritmo de back propagation (BP), uno de los ms importantes algoritmos de aprendizaje de las redes neuronales, a la identicacin de modelos borrosos con la estructura

3.3

IDENTIFICACIN DE MODELOS BORROSOS

79

yi

Capa de Salida
1 yi

l yi l

2 yi

Mi yi

Regla 1

Regla 2

Regla Mi

Capa Oculta

1 i 1 ni 1 3i 1 1i 1 2i 2 2i
i M 1i i M 2i

2 i 2 1i 2 ni

...

i M i

2 3i

i M 3i i M ni

Capa de Entrada

x1

x2

x3

...

xn

Figura 3.9: Red neuronal equivalente a un modelo borroso.

de las guras 3.9 3.10. El algoritmo BP es un algoritmo de aprendizaje supervisado que consiste en minimizar el error de estimacin (comnmente cuadrtico) por medio de gradiente descendiente, por lo que la parte esencial del algoritmo es el clculo de las derivadas parciales de dicho error con respecto a los parmetros del modelo. En una red neuronal [14], el algoritmo BP [267] realiza dos pasadas a travs de las diferentes capas de la red, una hacia delante y otra hacia atrs. En la primera pasada (hacia adelante), se aplica un vector de entrada a los nodos de entrada de la red, propagndose su efecto capa a capa a travs de la misma. Durante esta fase los pesos sinpticos permanecen jos. Despus de la ltima capa se obtiene, como consecuencia del vector de entrada introducido, un vector respuesta. Durante la segunda pasada (hacia atrs), todos los pesos sinpticos se ajustan en funcin de una regla de correccin del error (una generalizacin de la regla delta del algoritmo de aprendizaje de Widrow y Ho [273]). La seal de error resultante, entendiendo por seal de error la diferencia entre la respuesta de salida de la red y la deseada, se propaga entonces hacia atrs, en sentido contrario a las conexiones sinpticas. Este mtodo de ajuste de pesos se repite hasta que ya no se producen cambios en los mismos, lo cual se conoce

80

MODELADO BORROSO DE SISTEMAS DINMICOS

3.3

yi

Mi

Capa de Salida

l yi

l=1 Mi l=1

k=1 n

l ki

j =1

l ji

k=1

l ki

j =1

l ji

1 yi

2 yi

Mi yi

Regla 1

Regla 2
m 2 2 ji ki j =1 k=1 n m i i M M ji ki j =1 k=1 n

Regla Mi

Capa Oculta

m 1 1 ji ki j =1 k=1

2 ni 1 ni 2 2i 1 1i
2 1 2i 1i

1 1i 1 2i 1 1i 1 2i
i M ni

1 mi 1 mi

i M 1i

i M 2i

1 1i

1 2i u1 u2

1 mi um

Capa de Entrada

x1

x2

xn

Figura 3.10: Red neuronal equivalente al modelo borroso de la planta.

3.3

IDENTIFICACIN DE MODELOS BORROSOS

81

como convergencia del algoritmo de aprendizaje. En este punto, el proceso de aprendizaje ha nalizado y la respuesta real de la red es lo ms parecida posible a la deseada. En el caso de un modelo borroso, la aplicacin del algoritmo anterior funciona en la pasada hacia delante de forma anloga a la red neuronal, tal como se muestra en el algoritmo de la gura 3.11, slo que en vez de permanecer jos los pesos sinpticos, se mantienen sin cambio los parmetros del antecedente y el consecuente de las reglas. En la pasada hacia atrs, la seal de error resultante se propaga para ajustar los parmetros del modelo segn la regla de correccin del error. Si se dene J (k ) como la funcin de coste, error cuadrtico medio, en la k -sima iteracin del algoritmo, su expresin vendr dada por: 1 (y (k ) y (k ))2 , (3.65) 2 donde y (k ) es la salida real de la k -sima iteracin e y (k ) la salida estimada. A partir de la funcin de ajuste que implementa el mtodo de gradiente descendente (3.66) [274] se pueden obtener las expresiones de adaptacin paramtrica tanto de los antecedentes como de los consecuentes de las reglas [169]: J (k ) = (k + 1) = (k ) J (k ) , (k ) =(k) (3.66)

donde (k ) es el parmetro a adaptar y es un factor de escala del trmino derivativo, denominado factor de aprendizaje del algoritmo, y que afecta al tiempo de convergencia del mismo. Por ejemplo, para una funcin de pertenencia gaussiana, el ajuste del centro, c(k ), y ancho, (k ), de la funcin dentro de la regla l, vendr dado por las expresiones (3.67) y (3.68), respectivamente; mientras que el ajuste de los parmetros de un consecuente lineal vendr dado por la ecuacin (3.69), siendo e(k ) = y (k ) y (k ) el error de modelado de la k -sima iteracin.
n l cl i (k + 1) = ci (k ) 2 e(k )

i=1 n M l=1

l l l i xi (k ), ci (k ), i (k )

i=1

l i

l xi (k ), cl i (k ), i (k )

xi (k ) cl i (k ) l (i (k ))2

(3.67)

il (k

+ 1) =

il (k )

2 e(k )

i=1 M n l=1

l l l i xi (k ), ci (k ), i (k )

i=1

l i

l xi (k ), cl i (k ), i (k )

xi (k ) cl i (k ) l (i (k ))3

(3.68)

n l i (k

+ 1) =

l i (k )

2 e(k )

i=1 n M l=1

l l l i xi (k ), ci (k ), i (k )

(3.69) l i
l xi (k ), cl i (k ), i (k )

i=1

Para mejorar la eciencia del proceso de identicacin, el factor de aprendizaje puede hacerse adaptativo [275], siendo:

82
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:

MODELADO BORROSO DE SISTEMAS DINMICOS

3.3

Mientras k < poca nal hacer Para cada punto de entrenamiento hacer Calcular y (k ) Pasada hacia adelante Calcular e(k ) = y (k ) y (k ) Actualizar antecedentes y consecuentes Pasada hacia atrs Fin Para Si e(k ) < error deseado entonces Finalizar el algoritmo Fin Si Calcular (k + 1) segn la ecuacin (3.70) Retornar parmetros ajustables del modelo borroso Fin Mientras
Figura 3.11: Algoritmo de adaptacin neuroborrosa.

(k + 1) =

(k ) si J (k ) J (k 1)

donde r , y son valores ajustables denidos como margen de tolerancia y momentos, respectivamente. En [270] se pueden consultar las funciones de ajuste para el mtodo del gradiente descendente de los tipos de funciones de pertenencia ms comunes, as como varios casos prcticos de modelado mediante esta tcnica. Metodologa bioinspirada hbrida Recientemente, los algoritmos bioinspirados se han mostrado como uno de los ms prometedores campos de investigacin en el desarrollo de metaheursticas. Dentro de estas metaheursticas se encuentran, entre otros, los algoritmos de optimizacin basados en colonias de hormigas (OCH). La metaheurstica OCH [276, 277] se basa en simular la forma en que las hormigas llevan la comida hasta el hormiguero recorriendo un camino de longitud mnima. En el proceso de bsqueda de comida, las hormigas van depositando una sustancia denominada feromona, y en base a esta sustancia, dirigen su bsqueda. Cuando una hormiga llega a una interseccin, decide el camino a seguir de un modo probabilstico en funcin de la feromona depositada en cada ramicacin. Este movimiento continuado provoca que los caminos ms cortos sean ms frecuentados, por lo que reciben mayor cantidad de feromona, mientras que los ms largos sern progresivamente abandonados y la feromona asociada acabar por evaporarse. De este modo, se acaba formando un camino de longitud mnima entre el hormiguero y la comida. Dependiendo del problema, esta longitud vendr denida por una funcin de coste a minimizar. Para poder aplicar este tipo de algoritmos, es necesario que el problema se pueda representar como un camino en un grafo. Este grafo se representar como G = (C, L), donde C es un conjunto de nodos y L es un conjunto de arcos que conectan los nodos de C .

(k ) si J (k ) r J (k 1) (k ) en otro caso,

(3.70)

3.3
1 10 11 . . . 1M1 Capa 1 2 20 21 . . .

IDENTIFICACIN DE MODELOS BORROSOS


... ... ... .. N N 0 N 1 . . . N MN Capa N

83

Nodo inicial

Nodo nal

2M2 Capa 2

...

Figura 3.12: Grafo para el ajuste de modelos TSK mediante OCH.

Para poder aplicar los algoritmos OCH al modelado borroso TSK se ha diseado un grafo G donde el conjunto de nodos C se ha organizado por capas, ver gura 3.12. Cada capa ci es asociada con un parmetro del modelo borroso, i , siendo i = 1..N un ndice que recorre todos los parmetros del modelo. Cada capa se compone por un conjunto de nodos ij , con j = 1..Mi , donde Mi es el nmero de valores posibles del parmetro i. Cada nodo de una capa se conecta con todos los nodos de la capa siguiente mediante arcos, de esta forma, el ajuste de los parmetros del modelo TSK puede ser interpretado como el recorrido de las hormigas por el grafo G guiadas por la feromona. Cada nodo recorrido por una hormiga indica la eleccin de un valor para cada uno de los parmetros del modelo borroso, por lo que cada camino completo es un modelo candidato. Las hormigas se sitan en el nodo inicial, y van recorriendo el grafo escogiendo entre los distintos caminos de forma probabilstica segn se describe en el algoritmo de la gura 3.13. La probabilidad de que una hormiga elija el j simo nodo destino partiendo del isimo nodo, viene determinada por la cantidad de feromona depositada en el arco que une dichos nodos segn la ecuacin: ij (k ) pij (k ) = M , (3.71)
j

in (k )
n=1

donde ij (k ), con i = 1..N y j = 1..Mi , es la cantidad de feromona del arco i j en la k -sima iteracin. El denominador de (3.71) es un factor normalizador que hace que la suma de las probabilidades de todos los arcos disponibles sea la unidad. Una vez que se han obtenido las soluciones aportadas por las hormigas que han recorrido el grafo, se procede a evaluarlas. Para ello se aplica la funcin de coste (3.65) empleada en el algoritmo de gradiente descendente. A continuacin de deben dotar de feromona los arcos del grafo en funcin de la calidad de las soluciones obtenidas. Puesto que interesa asignar mayor cantidad de feromona a los arcos que han aportado mejores soluciones, el incremento de feromona depende de la inversa de la funcin de coste y de un factor de evaporacin de la feromona existente por las iteraciones previas del algoritmo, 0 < < 1, segn se muestra en la expresin (3.72). ij (k + 1) = (1 )ij (k ) + 1/J (k ) (3.72)

84
1: 2: 3: 4: 5: 6: 7: 8: 9:

MODELADO BORROSO DE SISTEMAS DINMICOS

3.3

Para cada hormiga hacer Inicializacin de la hormiga Situacin de la hormiga en el nodo inicial Mientras nodo actual = nodo nal hacer Calcular las probabilidades de transicin mediante la ecuacin (3.71) Ejecutar la transicin Fin Mientras Fin Para Retornar nodos recorridos del grafo
Figura 3.13: Algoritmo de activacin de las hormigas.

1: 2: 3: 4: 5: 6: 7:

Mientras No se cumpla la condicin de parada hacer Generacin y activacin de las hormigas Calcular J (k ) para cada hormiga, ecuacin (3.65) Actualizar la feromona de los arcos, ecuacin (3.72) Fin Mientras Aplicar gradiente descendente a la mejor hormiga Retornar parmetros ajustables del modelo borroso
Figura 3.14: OCHneuroborroso.

Ntese que en el grafo no pueden ser representados todos los valores posibles de los parmetros ajustables, ya que el grafo tendra dimensin innita. Por lo tanto, es necesario discretizar el espacio de bsqueda asignando a cada parmetro un vector de valores posibles. Esta discretizacin puede realizarse de forma homognea estableciendo un valor mnimo, un valor mximo, y la precisin deseada para cada uno de los parmetros del modelo. Puesto que el rango de valores y la precisin de cada uno de los parmetros puede ser distinto al del resto, el nmero de nodos totales de cada capa Mi es independiente del resto de capas del grafo. El procedimiento de modelizacin hbrido [169, 271], ver gura 3.14, se basa, en primer lugar, en la aplicacin del algoritmo OCH de forma que se generen soluciones iniciales prometedoras. La ventaja que ofrece la utilizacin de colonias de hormigas, es que es posible mantener varias soluciones candidatas activas en diferentes puntos del espacio de bsqueda. Esta simultaneidad permite explorar varios caminos hacia el mnimo global de la funcin de coste. Una vez concluido el algoritmo OCH, se aplica una bsqueda local basada en gradiente descendente para explotar las mejores soluciones obtenidas, generando as los valores nales de los parmetros ajustables del modelo borroso. La bsqueda local mediante gradiente descendente permite la optimizacin de los parmetros de forma continua, por lo que se corrigen los problemas a la hora de obtener una solucin ptima generados por la discretizacin del espacio de bsqueda del algoritmo OCH.

3.3.3. Validacin
Una vez que se ha determinado la estructura del modelo borroso, y se han estimado los parmetros, es necesario estudiar el comportamiento del modelo para conocer la calidad del mismo. Este proceso se conoce como validacin [278].

3.4

DISEO DEL SOFTWARE

85

Uno de los procedimientos ms utilizados para validar un modelo es el denominado validacin cruzada [279]. El mtodo de validacin cruzada consiste en dividir los datos de entradasalida en dos subconjuntos. Esta divisin suele hacerse en una razn que puede variar entre el 70/30 % y el 80/20 %. El mayor de los subconjunto de datos se utiliza para generar el modelo borroso mediante los procedimientos descritos anteriormente, mientras que los datos restantes se emplean para calcular un ndice de calidad del modelo. Aunque existen distintos mtodos de obtener un ndice de calidad para la fase de validacin [280], como el criterio de Sugeno [209, 281], el anlisis de residuos [282], o la interpretabilidad del modelo [263,265,283]; el ms comnmente empleado es el error cuadrtico medio (MSE). El error cuadrtico medio se dene mediante la ecuacin (3.73), donde y (k ) e y (k ) son respectivamente la salida real y estimada del sistema, y N es el nmero total de muestras utilizadas para calcular el error. MSE = 1 N
N

(y (k ) y (k ))2
k =1

(3.73)

Puesto que los datos empleados para la validacin no han sido utilizados durante la fase de estimacin, si se produjese un sobreentrenamiento del modelo sera posible detectarlo, ya que el error promedio del modelo en la fase de validacin sera anormalmente alto con respecto al error obtenido durante la fase de estimacin. Si se han obtenido varios modelos de un mismo sistema y se desea escoger uno de ellos, la validacin puede ser una buena herramienta de seleccin. En este caso es aconsejable dividir el conjunto de datos de entradasalida en tres subconjuntos, por ejemplo mediante una razn comprendida entre el 70/15/15 % y el 80/10/10 %. Los dos primeros subconjuntos de datos se emplean para la identicacin y validacin de los modelos. A continuacin se debe escoger el modelo que presente un menor error promedio en la fase de validacin, aunque pueden emplearse otros criterios como la interpretabilidad o sencillez de los modelos obtenidos. Por ltimo, el tercer subconjunto de datos se emplea para estimar el error promedio del modelo elegido. En este caso no se deben emplear los datos de la fase de validacin para el clculo de dicho error, ya que si el modelo se ha escogido en base a estos datos, la estimacin del error estar sesgada; es decir, la estimacin del error con la muestra de validacin es optimista.

3.4. Diseo del software


Con objeto de facilitar la programacin de los distintos algoritmos de este texto, se ha desarrollado un software capaz de almacenar todos los datos de un modelo borroso TSK completamente general. Este software se ha diseado siguiendo una metodologa de orientacin a objetos y se ha programado en C++, por lo que la estructuracin y jerarquizacin obtenidas permite que ste pueda ser ampliado y/o modicado de forma sencilla. De esta forma, se facilita un esquema de programacin sencillo de emplear en el desarrollo de algoritmos complejos, se obtiene una buena velocidad de ejecucin, y se garantiza la compatibilidad con cualquier sistema operativo. Tambin se han programado una serie de interfaces entre las distintas clases y utilidades y MATLAB , permitiendo la compilacin de todo el software desarrollado sobre dicho entorno mediante archivos MEX [284, 285]. De esta forma, el software desarrollado se convierte en un

86

MODELADO BORROSO DE SISTEMAS DINMICOS

3.4

Sistema
1..*

usa

Utilidades MATLAB

Utilidades

usa

Regla
1..*

Pertenencia

<<enumeration>>

Tipo_FP

Nomf

Bellmf

Gaussmf

Gauss2mf

Pimf

PSigmoidalmf

Smf

Sigmoidalmf

Sigmoidal2mf

Trapezoidalmf

Triangularmf

Zmf

Figura 3.15: Diagrama UML de la estructura de clases.

complemento idneo de la Fuzzy Logic Toolbox de MATLAB [286] para el anlisis y la sntesis de sistemas de control borroso. Todos los cheros de cabecera que denen estas clases y sus funciones auxiliares pueden consultarse en el apndice D. El esquema de relacin entre clases, presentado en formato UML (Unied Modeling Language ) [287], se muestra en la gura 3.15. Como se puede observar, se ha denido una clase Sistema, que representa un modelo borroso completo. Esta clase est formada por Reglas, que a su vez contienen funciones de Pertenencia. La clase Pertenencia, ver gura 3.16, contiene los mtodos y atributos comunes a todas las funciones de pertenencia, como el tipo (tipo_fp), el nmero de parmetros (n) y sus valores (param). Las funciones de evaluacin de la funcin de pertenencia (eval) y su derivada (evalder), se han declarado como funciones virtuales, de forma que cada tipo de funcin redena estos mtodos segn sus caractersticas, pero manteniendo un interfaz comn. Lo mismo sucede con el mtodo test, que proporciona una herramienta para comprobar, en tiempo de ejecucin, que la funcin de pertenencia se ha denido correctamente. De la clase Pertenencia se derivan todos los tipos de funciones de pertenencia soportados por el software. Actualmente se permite la utilizacin de las funciones de pertenencia ms comunes: triangular, trapezoidal, gaussiana simple y doble, campana, S, Z, , sigmoidal, y las funciones de pertenencia diferencia y producto de sigmoidales; aunque la ampliacin a

3.4

DISEO DEL SOFTWARE

87

Pertenencia param: double* n: int tipo_fp: Tipo_FP virtual eval(x: double): double virtual evalder(x: double): double virtual test(): int n_param(): int tipo(): Tipo_FP tipo(tipo: Tipo_FP): int edit(indice: int, valor: double): int leer(indice: int): double operator=(P: const Pertenencia&): Pertenencia& Pertenencia(P: const Pertenencia&) Pertenencia() ~Pertenencia()

Figura 3.16: Clase Pertenencia.


Regla in: int TSK: double* pertenencia: Pertenencia** limpiar() entradas(): int test(): int escribir_TSK(valor: double, entrada: int): int leer_TSK(entrada: int): double leer_funcion(P: Pertenencia&, entrada: int): int leer_funcion(entrada: int): Pertenencia* escribir_funcion(P: const Membership&, entrada: int): int cambiar_funcion(tipo: Tipo_FP, entrada: int): int inicializar(in: int) operator=(R: const Regla&): Regla& Regla() Regla(R: const Regla&) Regla(in: int) ~Regla()

Figura 3.17: Clase Regla.

otras funciones de pertenencia se puede realizar de forma sencilla, mediante la derivacin de la clase Pertenencia y la actualizacin de la enumeracin Tipo_FP. La clase Nomf es una funcin de pertenencia que no requiere parmetros y que se utiliza para facilitar la inicializacin de las reglas. La clase Regla, cuya estructura se muestra en la gura 3.17, proporciona el objeto de almacenamiento de las reglas del modelo borroso. En cada objeto de tipo Regla se almacena un vector con los antecedentes (pertenencia) y el consecuente de tipo TSK de la regla (TSK). Adems, esta clase proporciona los mtodos necesarios para facilitar la programacin y modicacin de reglas borrosas dentro del software. En la gura 3.18 se muestra la clase Sistema. El cometido de esta clase es permitir el almacenamiento en un solo objeto de todo un modelo borroso, por lo tanto, la clase Sistema contiene todos los atributos necesarios para almacenar las caractersticas del modelo borroso: nmero de entradas (in) y salidas (out), nmero de reglas que se emplean para inferir cada

88

MODELADO BORROSO DE SISTEMAS DINMICOS

3.4

una de las salidas (N), la denicin de dichas reglas (R), y los lmites del universo de discurso de las variables de entrada y salida del modelo borroso. Al igual que el resto de clases, la clase Sistema tambin provee los mtodos necesarios para facilitar el tratamiento de modelos borrosos, como la lectura y escritura de datos del modelo, su inicializacin o la copia de un modelo borroso completo.
Sistema in: int out: int N: int* R: Regla** min_in: double* min_out: double* max_in: double* max_out: double* reglas(salida: int): int entradas(): int salidas(): int in_min(entrada: int): double in_max(entrada: int): double out_min(salida: int): double out_max(salida: int): double in_min(limites: double*) in_max(limites: double*) out_min(limites: double*) out_max(limites: double*) test(): int escribir_Regla(R: const Regla&, r: int, salida: int): int leer_Regla(R: Regla&, r: int, salida: int): int leer_Regla(r: int, salida: int): Regla* inicializar(in: int, out: int, N: int*) operator=(S: const Sistema&): Sistema& Sistema() Sistema(S: const Sisema&) Sistema(in: int, out: int, N: int*) ~Sistema()

Figura 3.18: Clase Sistema.

Junto con las distintas clases presentadas, tambin se ha desarrollado un paquete de utilidades genrico, y otro especco para MATLAB . El paquete genrico se muestra en la gura 3.19, y contiene una serie de funciones destinadas a facilitar la programacin de algoritmos que empleen sistemas borrosos: obtenerAntecedentes y obtenerConsecuentes permiten la obtencin de los parmetros adaptables de un modelo borroso. La funcin activacion calcula el grado de activacin de las reglas de un modelo en un punto dado. La funcin subSistema obtiene desde un nuevo modelo borroso de entrada, otro modelo compuesto por algunas de las reglas del modelo inicial. La funcin imprimirSistema devuelve una representacin lingstica de las reglas de un modelo borroso.

3.4
Utilidades TXT2Sistema (fichero: char*, S: Sistema&): int Sistema2TXT (S: Sistema&, fichero: char*): int Evaluar (x: double*, Salida: double*, S: Sistema&): int

DISEO DEL SOFTWARE

89

Evaluar (x: double*, Salida: double*, S: Sistema&, C: Sistema&): int linealizar (S: Sistema&, x: double*, u: double*, A: double**, B: double**, F: double*): int imprimirSistema (fichero: char*, S: Sistema&, entradas: char**, salidas: char**, decimales: int):int numeroDatosAntecedentes (S: Sistema&): int numeroDatosAntecedentes (S: Sistema&, out: int, rule: int): int numeroDatosConsecuentes (S: Sistema&): int numeroDatosConsecuentes (S: Sistema&, out: int, rule: int): int obtenerAntecedentes (S: Sistema&, parametros: double*, num_datos: int): int obtenerAntecedentes (S: Sistema&, parametros: double*, num_datos: int, out: int, rule: int): int obtenerConsecuentes (S: Sistema&, parametros: double*, num_datos: int): int obtenerConsecuentes (S: Sistema&, parametros: double*, num_datos: int, out: int, rule: int): int almacenarAntecedentes (S: Sistema&, parametros: double*, num_datos: int): int almacenarAntecedentes (S: Sistema&, parametros: double*, num_datos: int, out: int, rule: int): int almacenarConsecuentes (S: Sistema&, parametros: double*, num_datos: int): int almacenarConsecuentes (S: Sistema&, parametros: double*, num_datos: int, out: int, rule: int): int activacion (S: Sistema&, salida: int, regla: int, Punto: double*, W: double*): int activacion (S: Sistema&, salida: int, regla: int, Punto: double*, W: double*, dW: double*): int subSistema (S: Sistema&, ParteS: Sistema&, nreglas: int, salidas: int*, reglas: int*): int

Figura 3.19: Paquete Utilidades.

TXT2Sistema y Sistema2TXT facilitan la lectura y almacenamiento de modelos borrosos en cheros de tipo texto siguiendo una estructura muy similar a las reglas lingsticas, lo que permite su creacin y edicin fcilmente. La funcin Evaluar realiza el clculo de los modelos borrosos de la planta, del controlador y del sistema de lazo cerrado que se muestran en las guras 3.2, 3.3 y 3.5, respectivamente. La funcin linealizar se ver en el captulo 4. El paquete de utilidades de MATLAB mostrado en la gura 3.20, incluye la funcin FIS2Sistema para leer un objeto de tipo Sistema, desde una variable FIS (Fuzzy Inference System ) de MATLAB , y la versin opuesta de esta funcin (Sistema2FIS). Adems se incluye la funcin readModel, que lee un objeto Sistema desde un chero de texto, un chero FIS, o una variable FIS indistintamente. Con idea de facilitar lo ms posible la utilizacin de los algoritmos diseados, se han programado las funciones MEX que se listan a continuacin4 . Su ejecucin se realiza desde el
4

Se han programado otras funciones que se presentarn en el captulo siguiente.

90

MODELADO BORROSO DE SISTEMAS DINMICOS

3.5

Utilidades MATLAB FIS2Sistema (FIS: mxArray*, S: Sistema&): int Sistema2FIS (S: Sistema&, FIS: mxArray*): int readModel (modelo: mxArray*, S: Sistema&):int

Figura 3.20: Paquete Utilidades MATLAB.

mismo entorno de MATLAB de forma completamente transparente al usuario, pero con la velocidad de procesamiento de un programa compilado en C++. activation: Calcula el grado de activacin de las reglas de un sistema borroso. antec2mat: Obtiene un vector con todos los parmetros de los antecedentes del modelo. conseq2mat: Obtiene un vector con todos los parmetros de los consecuentes del modelo. fis2txt: Escribe un chero TXT con el modelo borroso dado desde una variable FIS. fuz2mat: Obtiene un vector con todos los parmetros del modelo (antecedentes y consecuentes). fuzcomb: Une varios modelos borrosos en uno slo siempre que tengan el mismo nmero de entradas. fuzeval: Calcula la salida de un modelo borroso mediante los algoritmo de las guras 3.2, 3.3 o 3.5 segn el caso. fuzprint: Crea un chero de texto con la representacin lingstica de un modelo borroso. mat2antec: Escribe los antecedentes de un modelo borroso con los datos de un vector dado. mat2conseq: Escribe los consecuentes de un modelo borroso con los datos de un vector dado. mat2fuz: Escribe todos los parmetros de un modelo borroso (antecedentes y consecuentes) con los datos de un vector dado. subsistema: Crea un modelo borroso a partir de una serie de reglas de otro modelo. txt2fis: Lee un modelo borroso desde un chero de texto.

3.5

CONCLUSIONES Y COMENTARIOS BIBLIOGRFICOS

91

3.5. Conclusiones y comentarios bibliogrcos


Este captulo se ha centrado en el modelado borroso de los sistemas dinmicos de control. A lo largo del mismo se ha presentado una metodologa que permite afrontar, en base a datos de entrada/salida, el modelado borroso en forma de ecuaciones de estado de un sistema de control multivariable no lineal. La formalizacin matemtica del sistema de control borroso se ha abordado de forma totalmente general, es decir, sin aplicar ningn tipo de restricciones ni al tamao del vector de estado, ni al del vector de control, ni al tipo de funcin de pertenencia utilizada en la denicin de los conjuntos borrosos. Se ha considerado que el controlador es completamente independiente del proceso de identicacin del modelo borroso de la planta, de forma que la particin del universo de discurso de las variables de estado de la planta y del controlador borroso no tienen porqu coincidir; por la misma razn, los modelos borrosos de la planta y del controlador no tienen porqu tener el mismo nmero de reglas. Teniendo en cuenta estas consideraciones se ha obtenido un modelo matemtico equivalente tanto del modelo borroso de la planta como del controlador. Tambin se ha obtenido un modelo matemtico equivalente para el sistema de control borroso de lazo cerrado, lo que constituye el paso previo para la sntesis de sistemas de control con estabilidad garantizada. La introduccin al modelado mediante variables de estado se puede consultar en las referencias [219] a [224]. En las referencias [225] a [233] se profundiza en los sistemas borrosos de tipo TSK y de [234] a [238] en los sistemas borrosos de tipo Mamdani. Respecto al proceso de identicacin de la planta, las referencias [209], [239] y de [244] a [261] renen una amplia informacin sobre la identicacin de la estructura del modelo borroso. De entre las tcnicas de adaptacin paramtrica existentes, en este captulo se han estudiado la ya clsica metodologa neuroborrosa basada en gradiente descendente y se ha propuesto una tcnica ms novedosa, denominada hbrida, basada en la hibridacin de la tcnica anterior con la heurstica bioinspirada. La metodologa neuroborrosa puede consultarse en las referencias [169], [267] y de [269] a [275], y la metodologa hbrida en [169], [242], [243], [271], [276] y [277]. Las referencias [278] a [283] muestran como realizar el proceso de validacin de un modelo y cmo escoger el mejor de entre varios en el caso de tener distintas alternativas. Finalmente, el nal del captulo se ha dedicado al diseo del software necesario para almacenar todos los datos de los modelos borrosos estudiados anteriormente, as como de proveer las herramientas que faciliten posteriormente la programacin de los distintos algoritmos que puedan hacer uso de stos. Las referencias [284] a [286] son pertenecientes al entorno de calculo y programacin MATLAB , mientras que [287] en un libro especializado en el lenguaje de modelado de software UML utilizado para la descripcin del software. De entre las referencias incluidas en este captulo cabe destacar [270], donde se presenta la metodologa de modelado neuroborrosa mediante el caso real de una factora de celulosa, as como [169] y [271], donde se propone la metodologa bioinspirada hbrida.

Cap tulo

An alisis de sistemas din amicos mediante modelos borrosos

nalizar dinmicamente un sistema permite conocer su funcionamiento y la respuesta que el mismo presentar a distintos estmulos de entrada. Si nos referimos a un sistema de control, el anlisis de su estabilidad resulta fundamental, ya que sin estabilidad ni siquiera puede hablarse de sistema de control. Tal como se ha visto en el captulo anterior, a partir de una planta, aunque esta sea completamente desconocida, es posible obtener un modelo borroso si se posee un conjunto suciente de datos de entrada/salida. Una vez se posee un modelo borroso, mediante el anlisis de ste se puede extraer informacin de la planta y as facilitar su conocimiento. En este captulo se presentan algunas herramientas de anlisis que van a permitir extraer informacin de la planta a partir de su modelo borroso. El captulo est estructurado en cinco secciones. En la primera seccin, partiendo del modelo matemtico equivalente obtenido en el captulo anterior, se obtiene la linealizacin de un modelo borroso de estado completamente general, y que por lo tanto puede ser no lineal y multivariable. En la segunda seccin se obtiene la matriz jacobiana de un sistema de control borroso, nuevamente considerando que tanto el modelo borroso de la planta como el del controlador son completamente generales y que, por lo tanto, pueden ser no lineales y multivariables. La tercera seccin del captulo est dedicada a la extraccin de los estados de equilibrio de un sistema de control borroso. En esta seccin se presenta un algoritmo numrico que permite obtener los estados de equilibrio tanto de un modelo borroso de estado como de un sistema de control borroso en lazo cerrado. Tambin se propone la inclusin de la matriz jacobiana calculada con anterioridad en dichos algoritmos para as mejorar su velocidad de convergencia y precisin. La cuarta seccin presenta formalmente el algoritmo de linealizacin de un modelo borroso y el algoritmo para el clculo de la matriz jacobiana de un sistema de control borroso. Finalmente, la quinta seccin recoge las principales conclusiones del captulo, as como una revisin de las referencias bibliogrcas incluidas en el mismo. 93

94

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.2

4.1.

Introduccin

La herencia tradicional de la ingeniera de control ha sido lineal, de hecho, cuando es posible asumir, como ocurre en muchas aplicaciones, que los problemas son sucientemente locales, es permisible obtener su solucin usando mtodos lineales. Sin embargo, cuando los problemas son de naturaleza global, el uso de mtodos no lineales se convierte en una necesidad. La razn fundamental que exige el uso de modelos no lineales es que la dinmica de los modelos lineales no es lo sucientemente rica como para describir una serie de fenmenos que se dan de forma asidua en la vida real [221]. El comportamiento dinmico de los sistemas lineales, independientemente de su orden, est gobernado esencialmente por los autovalores de su matriz de estado. Sin embargo, los sistemas no lineales tienen mucho ms margen de maniobra. Los sistemas de orden 2 pueden originar oscilaciones autoexcitadas, conocidas como ciclos lmite , pero cuando la dimensin del sistema no lineal se aumenta de 2 a 3, puede aparecer un nuevo fenmeno dinmico realmente excitante: las trayectorias presentan un comportamiento aperidico y son crticamente sensibles a las condiciones iniciales, aparece el caos [288]. Otros fenmenos dinmicos exclusivos de los sistemas no lineales son los mltiples estados de equilibrio y las bifurcaciones [223]. El punto de partida idneo en el anlisis de un sistema no lineal es su representacin mediante un modelo matemtico, generalmente un modelo de estado. Cuando el sistema es conocido y su dinmica no es excesivamente compleja, es posible obtener un modelo de estado del sistema; sin embargo, en multitud de ocasiones el sistema objeto de estudio puede ser demasiado complejo, ya sea por su dinmica o por su dimensin, o simplemente porque se desconocen las ecuaciones que gobiernan su funcionamiento. En estos casos, la lgica borrosa se presenta como una poderosa herramienta de modelado, ya que, tal como se vio en el capitulo 3, permite la obtencin de un modelo borroso del sistema a partir de una coleccin de datos de estrada/salida de ste. Pese a que la lgica borrosa es conocida por su capacidad para tratar la imprecisin, no hay que confundir este hecho con la exactitud y rigurosidad de la misma. Como se ha demostrado en el captulo anterior, un modelo borroso es un modelo matemtico que, adems, se comporta como un aproximador universal. Por lo tanto, un modelo de estado representado mediante un modelo borroso, es susceptible de ser estudiado utilizando las herramientas matemticas existentes para los sistemas no lineales. El conocimiento de los estados de equilibrio que posee un sistema, as como la estabilidad de dichos estados, son datos que pueden resultar muy interesantes a la hora de analizar o disear un sistema de control. Si se parte de un sistema completamente desconocido, esta informacin puede aclarar en muchos aspectos el funcionamiento del mismo, as como facilitar el diseo de un sistema de control adecuado. En este captulo se presentan las herramientas matemticas desarrolladas para extraer dicha informacin de un modelo borroso [231, 289, 290], as como el software creado para tal n [168].

4.2.

Linealizacin de un modelo borroso de estado

La linealizacin es una de las tcnicas ms empleadas en el diseo de sistemas de control no lineales. Aunque es una tcnica no muy recomendable en muchos casos, ya que se desprecian

4.2

LINEALIZACIN DE UN MODELO BORROSO DE ESTADO

95

los efectos de las no linealidades de los sistemas controlados, s que puede ser vlida para controlar sistemas no muy complejos, o cuya dinmica sea conocida, en regiones donde su comportamiento sea aproximadamente lineal. Adems de como mtodo de control, la linealizacin puede emplearse para obtener informacin de un sistema no lineal. Es sabido que, con algunas salvedades, el comportamiento de un sistema no lineal en torno a un estado de equilibrio es muy similar al del sistema linealizado en torno a dicho estado [222224]; por lo tanto, la obtencin del sistema lineal equivalente de un modelo borroso no lineal, puede ser una herramienta muy til para obtener informacin del sistema modelado. Sea el modelo de estado genrico de un sistema no lineal dado por: (t) = f (x(t), u(t)) , x (4.1)

el desarrollo en serie de Taylor hasta orden 1 de dicho sistema en torno a un punto (x0 , u0 ), determina que ste se puede aproximar por la expresin (4.2), siendo x = x x0 y u = u u0 , y donde las matrices del sistema lineal se calculan mediante las expresiones (4.3), (4.4) y (4.5). (t) A0 + A x x(t) + B u(t) A0 = f (x0 , u0 ) f1 (x(t), u(t)) x1 f2 (x(t), u(t)) x1 A= f (x(t), u(t)) n x1 f1 (x(t), u(t)) u1 f2 (x(t), u(t)) u1 B= f (x(t), u(t)) n u1 f1 (x(t), u(t)) f1 (x(t), u(t)) ... x2 xn f2 (x(t), u(t)) f2 (x(t), u(t)) ... x2 xn .. . fn (x(t), u(t)) fn (x(t), u(t)) ... x2 xn f1 (x(t), u(t)) f1 (x(t), u(t)) ... u2 um f2 (x(t), u(t)) f2 (x(t), u(t)) ... u2 um .. . fn (x(t), u(t)) fn (x(t), u(t)) ... u2 um (4.2) (4.3)

(4.4)

(x0 ,u0 )

(4.5)

(x0 ,u0 )

Si el punto (x0 , u0 ) es un estado de equilibrio del sistema, todos los elementos de la matriz A0 sern nulos, ya que por denicin un estado de equilibrio hace nula la ecuacin de estado. Si el sistema (4.1) se representa mediante un modelo borroso, tal como se vio en el captulo 3, su equivalente matemtico viene dado por la expresin (3.21), reescrita a continuacin por claridad:

96

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.2

x i = fi (x, u) =
k =0

aki x k +
j =1

bji uj ,

(3.21)

donde i representa la i-sima ecuacin de estado del proceso; xk , con k = 0..n, es la k -sima componente del vector de estado extendido, y uj , con j = 1..m, es la j -sima seal de control. Los trminos aki y bji son coecientes variables denidos por:
Mi Mi

aki (x,u) =

l=1 Mi

l wi (x,u)al ki

, bji (x,u) =
l wi (x,u)

l=1 Mi

l wi (x,u)bl ji

k = 0, 1, . . . , n , i = j= 1, . . . , n 1, . . . , m, (3.18)

l=1

l=1

l wi (x,u)

l donde wi (x,u) es el grado de activacin de las reglas del modelo borroso de la planta. n l wi (x, u) m l l ki (xk , ki ) k =1 j =1 l l ji (uj , ji )

(3.15)

Si se linealiza la expresin (3.21) en torno al punto (x0 , u0 ), se puede representar el modelo matemtico equivalente de un sistema borroso linealizado como:
n

x i fi (x0 , u0 ) +
q =1

fi xq

x q +
(x0 ,u0 ) v=1

fi uv

u v , (x0 ,u0 )

(4.6)

que desarrollando se puede expresar como: x i fi (x0 , u0 ) + q =1


n m

donde x q y u v son las componentes de los vectores x 0 y u 0 , respectivamente. Operando con la expresin anterior: n n m x i fi (x0 , u0 ) + x q + aki x k + bji uj x q q =1 j =1 k =0 (x0 ,u0 ) (4.7) m n m + u v , aki x k + bji uj uv k=0 v=1 j =1
(x0 ,u0 ) n m

aki x k
k =0

j =1

xq

+ v=1

bji uj x q + xq bji uj u v . uv

(x0 ,u0 )

(4.8)

aki x k
k =0

j =1

uv

(x0 ,u0 )

4.2

LINEALIZACIN DE UN MODELO BORROSO DE ESTADO

97

A continuacin se resolvern independientemente cada una de las derivadas parciales anteriores. En primer lugar,
n

k =0

aki x k xq =

k =0

(aki x k ) = xq

k =0

aki x k + xq

aki
k =0

x k . xq

(4.9)

Puesto que

x k = 1 si k = q y 0 en caso contrario: xq
n

aki
k =0

x k = aqi . xq

(4.10)

Teniendo en cuenta el valor de aki dado por la primera ecuacin de (3.18):


Mi l l wi aki aki l=1 = M = xq xq i l wi l=1 Mi Mi l=1

Mi

l=1

l l wi aki

l wi Mi l=1 2 l wi l=1

l wi

Mi l=1

xq

xq

l l wi aki

(4.11)

l El grado de activacin de las reglas de la planta, wi , es un valor dependiente del vector de estado y del vector de control, mientras que los elementos al ki son los coecientes constantes del consecuente de las reglas de la planta. De esta forma, se puede resolver: Mi

l=1

l l wi aki

Mi

xq y
Mi

=
l=1

l wi al , xq ki

(4.12)

l=1

l wi

Mi

xq con lo que se puede expresar:


Mi l wi al xq ki Mi l=1

=
l=1

l wi , xq

(4.13)

aki = xq

l=1

l wi

Mi

Mi Mi

l=1 p=1

l l wi wi p p al ap ki wi ki wi xq xq l=1 p=1 Mi l=1 2 l wi

l=1 2 Mi l wi l=1 Mi Mi

l wi xq

Mi l=1

l l wi aki

= (4.14) ,

que simplicando, se obtiene:

98

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.2

Mi Mi

aki = xq

l=1 p=1

l wi p l wi (aki ap ki ) xq Mi l=1 2 l wi

(4.15)

Como los dos sumatorios de la expresin anterior tienen los mismos lmites, se puede simplicar su notacin por:
Mi l wi p l wi (aki ap ki ) xq Mi l=1 2 l wi

aki = xq

l,p=1

(4.16)

Ntese que en la expresin anterior falta por calcular la derivada del grado de activacin de las reglas del modelo borroso de la planta con respecto a cada una de las variables de estado. Este punto se resolver una vez se hayan calculado todas las derivadas de la ecuacin (4.8). La segunda de las derivadas a calcular es:
m

Por lo tanto, la primera derivada de (4.8) se obtiene como: M l i n wi p l wi (aki ap aki x k n ki ) x q l,p=1 k =0 = aqi + 2 Mi xq k =0 l wi
l=1

k x

(4.17)

j =1

bji uj xq =

j =1

(bji uj ) = xq

j =1

bji uj + xq

bji
j =1

uj . xq

(4.18)

En un sistema en lazo abierto las seales de control no son dependientes de las variables de estado, por lo que uj /xq = 0. De esta forma:
m

j =1

bji uj xq =

j =1

bji uj . xq

(4.19)

Teniendo en cuenta el valor de bji dado por la segunda ecuacin de (3.18):


Mi l l wi bji bji l=1 = = xq xq Mi l wi l=1 Mi Mi l=1

Mi

l=1

l l wi bji

l wi Mi l=1 2 l wi l=1

l wi

Mi l=1

xq

xq

l l wi bji

(4.20)

4.2

LINEALIZACIN DE UN MODELO BORROSO DE ESTADO

99

Operando de forma similar a como se hizo con la derivada anterior, se puede obtener fcilmente que:
Mi l wi p l wi (bji bp ji ) xq Mi l=1 2 l wi

bji = xq

l,p=1

(4.21)

Por lo tanto, la segunda derivada de (4.8) se puede calcular como:


m

j =1

bji uj xq =

La tercera derivada a calcular es:


n

l,p=1 j =1

Mi

l wi p l p w (b bji ) xq i ji uj . 2 Mi l wi
l=1

(4.22)

k =0

aki x k uv =

k =0

(aki x k ) = uv

k =0

aki x k x k + aki . uv uv k =0

(4.23)

Puesto que no existe dependencia entre las seales de control y las variables de estado, x k /uv = 0, es decir,
n

k =0

aki x k uv =

k =0

aki x k . uv

(4.24)

Sustituyendo aki por su valor:


Mi l l wi aki aki l=1 = = uv uv Mi l wi l=1 Mi Mi l=1

Mi

l=1

l l wi aki

l wi Mi l=1 2 l wi l=1

l wi

Mi l=1

uv

uv

l l wi aki

(4.25)

Puesto que el grado de activacin de las reglas de la planta es dependiente del vector de control, y los parmetros al ki son constantes, se tiene que:
Mi

l=1

l l wi aki

Mi

uv y

=
l=1

l wi al , uv ki

(4.26)

100

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.2

Mi

l=1

l wi

Mi

uv de forma que
Mi l wi al uv ki Mi l=1

=
l=1

l wi , uv

(4.27)

aki = uv

l=1

l wi Mi l=1

Mi

l=1 2 l wi

l wi uv

Mi l=1

l l wi aki

= (4.28) .

Mi Mi

l=1 p=1

l l Mi Mi wi wi p p al w ap ki i ki wi uv uv l=1 p=1 Mi l=1 2 l wi

que simplicando, se obtiene:


Mi l wi w p (al ap ki ) uv i ki Mi l=1 2 l wi

aki = uv

l,p=1

(4.29)

En la expresin anterior falta por calcular la derivada del grado de activacin de las reglas de la planta con respecto a las seales de control. Este punto se resolver una vez se hayan calculado todas las derivadas de la ecuacin (4.8). Por ltimo, la cuarta derivada de la ecuacin (4.8) se obtiene mediante la expresin:
m

Por lo tanto, la tercera de las derivadas de la ecuacin (4.8) se obtiene como: M l i n wi p l p wi (aki aki ) aki x k n l,p=1 uv k =0 k . = x 2 Mi uv k =0 l wi
l=1

(4.30)

j =1

bji uj uv =

j =1

(bji uj ) = uv

j =1

bji uj + uv

bji
j =1

uj . uv

(4.31)

Puesto que

uj = 1 si j = v y 0 en caso contrario: uv
m

bji
j =1

uj = bvi . uv

(4.32)

Teniendo en cuenta el valor de bji dado por la segunda ecuacin de (3.18):

4.2

LINEALIZACIN DE UN MODELO BORROSO DE ESTADO

101

Mi l l wi bji bji l=1 = = Mi uv uv l wi l=1

Mi

l=1

l l wi bji

Mi Mi l=1

l wi Mi l=1 2 l wi l=1

l wi

Mi l=1

uv

uv

l l wi bji

(4.33)

Operando como con las derivadas anteriores:


Mi l wi w p (bl bp ji ) uv i ji Mi l=1 2 l wi

bji = uv

l,p=1

(4.34)

por lo que la ltima de las derivadas de la ecuacin (4.8) se puede expresar como:
m

j =1

bji uj uv = bvi +

Sustituyendo las expresiones (4.17), (4.22), (4.30) y (4.35) en (4.8), el modelo matemtico equivalente de un sistema borroso linealizado en torno a un punto (x0 , u0 ) viene dado por: x i fi (x0 , u0 ) + aqi + n + q =1 +

l,p=1 j =1

Mi

l wi p l p w (b bji ) uv i ji uj . 2 Mi l wi
l=1

(4.35)

l,p=1 k =0
n

Mi

l,p=1 j =1
m

Mi

m + v=1 b + vi

l,p=1 k =0
n

Mi

l,p=1 j =1
m

Mi

l wi p l p w (a aki ) uv i ki k x 2 Mi l wi l=1 l wi p l p w (b bji ) uv i ji uj 2 Mi l wi


l=1

l wi p l p w (a aki ) xq i ki k x 2 Mi l wi l=1 l wi p l p w (b bji ) xq i ji uj 2 Mi l wi


l=1

q + x

(x0 ,u0 )

(4.36)

v . u

(x0 ,u0 )

102

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.2

Para facilitar la representacin de esta ecuacin de una forma ms compacta puede escribirse como: x i fi (x0 , u0 ) +
n n

+
q =1 m

aqi +
k =0 n

ki + A k xq x

m j =1 m j =1

ji uj x q

x q +
(x0 ,u0 )

(4.37)

+
v=1

bvi +
k =0

ki + A k uv x

ji uj uv

u v ,
(x0 ,u0 )

donde
Mi
ki A xq =

l,p=1

l wi w p (al ap ki ) xq i ki Mi l=1 2 l wi

(4.38)

Mi
ji B xq =

l,p=1

l wi p l wi (bji bp ji ) xq Mi l=1 2 l wi

(4.39)

Mi
ki A uv =

l,p=1

l wi w p (al ap ki ) uv i ki Mi l=1 2 l wi

(4.40)

y
Mi
ji B uv =

l,p=1

l wi p l wi (bji bp ji ) uv Mi l=1 2 l wi

(4.41)

Derivada del grado de activacin de las reglas de la planta El grado de activacin de las reglas de la planta es dependiente del vector de estado y del vector de control, segn la expresin (3.15); de forma que:
n l wi (x, u) = xq

k =1

l l ki (xk , ki )

m j =1 m

xq
n

l l ji (uj , ji )+

(4.42)

l l ki (xk , ki ) j =1

l l ji (uj , ji )

+
k =1

xq

4.3

LINEALIZACIN DE UN MODELO BORROSO DE ESTADO

103

n l wi (x, u) = uv

k =1

l l ki (xk , ki )

m j =1 m

uv
n

l l ji (uj , ji )+

(4.43)

l l ki (xk , ki ) j =1

l l ji (uj , ji )

+
k =1

uv

En un sistema en lazo abierto las seales de control son independientes del vector de estado, por lo tanto:
m

j =1

l l ji (uj , ji )

xq y
n

=0

(4.44)

k =1

l l ki (xk , ki )

uv De esta forma,
n l wi (x, u) = xq

= 0.

(4.45)

k =1

l l ki (xk , ki )

m l l ji (uj , ji ) j =1

xq

(4.46)

y
m l wi (x, u) n

l l ki (xk , ki ) j =1

l l ji (uj , ji )

uv Puesto que

=
k =1

uv

(4.47)

xk = 1 si k = q y 0 en caso contrario: xq
n m l l l wi (x, u) qi (xq , qi ) l l l ki (xk , ki ) l = ji (uj , ji ). xq xq j =1 k =1,k =q

(4.48)

De la misma forma, puesto que

uj = 1 si j = v y 0 en caso contrario: uv
n m

l l wi (x, u) l vi (uv , vi ) l l l l = ki (xk , ki ) ji (uj , ji ). uv uv k =1 j =1,j =v

(4.49)

Nota. Las derivadas de las funciones de pertenencia se pueden obtener directamente de la denicin de la propia funcin. En el apndice B se presentan las derivadas de las principales funciones de pertenencia.

104

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.3

4.3.

Matriz jacobiana de un sistema de control borroso

Al igual que sucede con el modelo de la planta, es interesante disponer del modelo linealizado de un sistema de control en lazo cerrado. Esta informacin puede ser til para el diseo de controladores mediante tcnicas de linealizacin, aunque como se coment anteriormente no suele ser una tcnica muy recomendable. En un sistema en lazo cerrado, las seales de control pueden ser calculadas por el controlador a partir de las variables de estado del sistema. De esta forma, el vector de control es dependiente del vector de estado, y la representacin lineal del sistema viene determinada por su matriz jacobiana. El modelo de estado de un sistema de control no lineal, multivariable y autnomo completamente general, puede representarse mediante el siguiente sistema de ecuaciones: x 1 (t) = 1 (x1 (t), x2 (t), . . . , xn (t)) x 2 (t) = 2 (x1 (t), x2 (t), . . . , xn (t)) . . . x n (t) = n (x1 (t), x2 (t), . . . , xn (t)).
0 0 El desarrollo en serie de Taylor del sistema (4.50) en torno al estado x0 = (x0 1 , x2 , . . . , xn ) , es: T

(4.50)

(x1 x0 0 2 (x) ( x x d(x x0 ) 1 1) x1 x0 = dt ... n (x) (x1 x0 1) x1 x0

x0 1)

1 (x) x1

+ . . . + (xn

x0 n)

1 (x) xn 2 (x) xn n (x) xn

x0

+ . . . + (xn x0 n) +...+ ... + . . . + (xn x0 n)

x0

x0

+ R1 (x ) 0 + R2 (x ) . 0 + Rn (x )

(4.51)

Dado un estado de equilibrio xeq del sistema (4.50), si los trminos no lineales Ri (xe ), i = 1..n, de (4.51) satisfacen la condicin (4.52), siendo Ki una constante lo sucientemente pequea, entonces la matriz jacobiana (4.53) del sistema (4.50) determina las propiedades de estabilidad del estado de equilibrio xeq .
2 e 2 |Ri (xeq )| Ki (x1 xe 1 ) + . . . + (xn xn )

(4.52)

Como se puede observar, para el calculo de la matriz jacobiana, (4.53), es necesario obtener las derivadas parciales de cada una de las i-simas ecuaciones de estado con respecto a cada variable de estado.

4.3

MATRIZ JACOBIANA DE UN SISTEMA DE CONTROL BORROSO

105

1 (xe ) x1 (xe ) 2 J(xeq ) = x1 . . . n (xe ) x1

1 (xe ) x2 2 (xe ) x2 . . . n (xe ) x2

1 (xe ) ... xn 2 (xe ) ... xn . .. . . . e n (x ) ... xn

(4.53)

La estabilidad de un estado de equilibrio viene determinada por la estabilidad del sistema linealizado en dicho estado [224], es decir, por el valor de los autovalores de la matriz jacobiana calculada en el estado de equilibrio objeto de estudio. Sin embargo, mucho ms interesante que conocer la estabilidad de un sistema, puede ser disear un controlador que la garantice. Para este n, en la teora de sistemas no lineales existen muchos mtodos que se basan en la matriz jacobiana del sistema, como el segundo mtodo de Lyapunov [220], el mtodo de Krasovskii [224], o los mtodos basados en ndices de estabilidad y robustez de sistemas [100,291]. Por lo tanto, la obtencin de la matriz jacobiana de un sistema de control borroso genrico abre las puertas a la aplicacin de estas tcnicas, ampliamente conocidas y aceptadas por la comunidad cientca, a los sistemas borrosos [233, 292, 293]. Si el sistema de control en lazo cerrado (4.50) representa un sistema de control borroso, donde tanto la planta como el controlador son modelos borrosos de tipo TSK con motor de inferencia producto y agregacin por promedio ponderado, la ecuacin (4.50) puede sustituirse por el modelo matemtico equivalente de dicho sistema, obtenido en la seccin 3.2.1. A continuacin se reescribe dicha expresin por comodidad:
n m

x i =
k =0

aki +
j =1

bji ckj

x k .

(3.55)

Segn (4.53), la obtencin de la matriz jacobiana del sistema borroso requerir calcular las derivadas parciales para las i = 1..n ecuaciones de estado de (3.55), con respecto a cada una de las q = 1..n variables de estado del sistema: i (x) = xq xq
n m

Jiq (x) =

aki +
k =0 j =1

bji ckj

x k .

(4.54)

Separando los sumatorios en la ecuacin anterior:


n n m

Jiq (x) =
k =0

aki x k xq +

k =0 j =1

bji ckj x k xq , (4.55)

se puede obtener la derivada de cada uno de los sumandos por separado.

106

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.3

Derivada del primer sumando La derivada del primer sumando de (4.55) se obtiene de la forma:
n

k =0

aki x k xq =

k =0

(aki x k ) = xq

k =0

x k aki aki x k + . xq xq k =0

(4.56)

Puesto que

x k = 1 si k = q y 0 en caso contrario: xq
n

aki
k =0

x k = aqi . xq

(4.57)

Respecto del primer sumando de (4.56), teniendo en cuenta el valor de aki dado por la primera ecuacin de (3.18):
Mi l l wi aki aki l=1 = = xq xq Mi l wi l=1

Mi

l=1

l l wi aki

Mi Mi l=1

l wi Mi l=1 l wi , 2 l wi l=1

l wi

Mi l=1

xq

xq

l l wi aki

(4.58)

El grado de activacin de las reglas de la planta, es un valor dependiente del vector de estado, mientras que los elementos al son los coecientes constantes del consecuente de las ki reglas de la planta. De esta forma, se tiene que:
Mi

l=1

l l wi aki

Mi

xq y
Mi

=
l=1

l wi al , xq ki

(4.59)

l=1

l wi

Mi

xq

=
l=1

l wi . xq

(4.60)

Reemplazando las expresiones anteriores en la ecuacin (4.58),


Mi l wi al xq ki Mi l=1 l wi Mi l wi xq Mi l=1 l l wi aki

aki = xq

l=1

Mi Mi

l=1 p=1

l l wi wi p p al w ap ki i ki wi xq xq l=1 p=1 Mi l=1 2 l wi

l=1 2 Mi l wi l=1 Mi Mi

= (4.61) ,

4.3

MATRIZ JACOBIANA DE UN SISTEMA DE CONTROL BORROSO

107

y simplicando, se obtiene:
Mi Mi l wi w p (al ap ki ) xq i ki Mi l=1 2 l wi

aki = xq

l=1 p=1

(4.62)

Como los dos sumatorios de la expresin anterior tienen los mismos lmites, se puede simplicar su notacin por la siguiente:
Mi l wi w p (al ap ki ) xq i ki Mi l=1 2 l wi

aki = xq

l,p=1

(4.63)

Ntese que para evaluar la expresin (4.64) es necesario calcular previamente la derivada del grado de activacin de las reglas de la planta con respecto a cada una de las variables de l estado, wi /xq . Este punto se resuelve posteriormente (ver pgina 110). Derivada del segundo sumando La derivada del segundo sumando de la ecuacin (4.55) puede reescribirse como:
n m m

Una vez realizados los clculos intermedios pertinentes es posible reescribir la ecuacin (4.56), obtenindose la expresin denitiva de la derivada del primer sumando de la jacobiana del sistema de control borroso: M l i n wi p l p wi (aki aki ) aki x k n l,p=1 xq k =0 = x (4.64) k + aqi . 2 Mi xq k =0 l wi
l=1

k =0 j =1

bji ckj x k xq =

j =1

bji ckj x k xq , (4.65)

k =0

que a su vez puede descomponerse en:


m n m

j =1

bji ckj x k xq =

j =1

bji ckj xq x k +

k =0

k =0

k =0

x k xq

bji ckj ,
j =1

(4.66)

pero

x k = 1 si k = q y 0 en caso contrario, por tanto: xq


n

k =0

x k xq

bji ckj
j =1

=
j =1

bji cqj .

(4.67)

108

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.3

La derivada del primer sumando de (4.66) puede ser desarrollada como:


m n

j =1

bji ckj xq x k =

k =0

k =0 j =1

ckj bji ckj + bji x k , xq xq

(4.68)

donde el trmino bji es un coeciente variable que se calcula a partir de la segunda ecuacin de (3.18) y ckj es el coeciente variable correspondiente al controlador borroso que se calcula mediante (3.40). Dada la gran similitud de las expresiones para el clculo de los coecientes variables aki y bji , es fcil deducir que:
Mi l wi w p (bl bp ji ) xq i ji Mi l=1 2 l wi

bji = xq

l,p=1

(4.69)

Por otro lado, operando de forma similar se puede obtener la derivada de ckj respecto de las variables de estado:

Nj

Nj r r j ckj Nj r =1 r j Nj r =1 r j 2

r r j ckj ckj r=1 = = xq xq Nj r j r =1

Nj

r =1

r =1

r j

Nj r =1 r r j ckj

xq

xq

(4.70)

r El grado de activacin de las reglas del controlador, j , es un valor dependiente del vector r de estado, mientras que los elementos ckj son los coecientes constantes del consecuente de las reglas de ste. Por lo tanto: Nj

r =1

r r j ckj

Nj

xq y
Nj

=
r =1

r j cr , xq kj

(4.71)

r =1

r j

Nj

xq

=
r =1

r j . xq

(4.72)

Reemplazando las expresiones anteriores en la ecuacin (4.70),

4.3

MATRIZ JACOBIANA DE UN SISTEMA DE CONTROL BORROSO

109

Nj

ckj xq

r =1

r j cr xq kj

Nj r =1 r j Nj r =1

Nj r =1 2

r j xq

Nj r =1 r r j ckj

= (4.73) ,

r j

Nj Nj

r =1 s=1

r r Mi Mi j j s s cr cs kj j xq kj j x q r =1 s=1 Nj r =1 r j 2

que simplicando y agrupando los sumatorios, puede escribirse como:


Nj r j s r j (ckj cs kj ) xq Nj r =1 r j 2

ckj = xq

r,s=1

(4.74)

Sustituyendo (4.69) y (4.74) en (4.68):


Mi l wi w p (bl bp ji ) xq i ji

m n

j =1

bji ckj xq x k =

k =0

k =0

Una vez realizados todos los clculos intermedios, puede sustituirse (4.67) y (4.75) en la expresin (4.66), con lo que el segundo sumando de la jacobiana del sistema de control borroso puede expresarse por:
n m

l,p=1 ckj + 2 Mi l wi m l=1 r Nj j s r j =1 j (ckj cs kj ) r,s=1 xq + bji 2 Nj r j


r =1

x k .

(4.75)

k =0 j =1

bji ckj x k xq =

bji cqj +
j =1 p l wi (bji bp ji ) 2 l wi Nj r j

Mi

n m l,p=1 + k =0 j =1

l wi

xq

Mi l=1

ckj +

r,s=1

xq

s r j (ckj cs kj ) 2 r j

Nj r =1

k . bji x

(4.76)

110

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.3

Ntese que para evaluar la expresin (4.76) es necesario calcular previamente tanto la derivada del grado de activacin de las reglas de la planta, como la derivada del grado de activacin de las reglas del controlador, con respecto a cada una de las variables de estado. l r Estas derivadas, wi /xq y j /xq respectivamente, se resuelven a continuacin. Derivada del grado de activacin de las reglas de la planta El grado de activacin de las reglas de la planta es dependiente del vector de estado y del vector de control, segn la expresin (3.15), que se repite a continuacin por comodidad. Si se tiene un sistema de control en lazo cerrado, las seales de control son generadas a partir del valor del vector de estado, en el que el vector u es dependiente del vector x.
n l wi (x, u) m l l ki (xk , ki ) k =1 j =1 l l ji (uj , ji )

(3.15)

l Se puede representar el grado de activacin de las reglas de la planta, wi (x, u), como el l producto de una componente dependiente del vector de estado, wi (x), y otra componente l dependiente del vector de control, wi (u): n l wi (x, u) m l l ki (xk , ki ) k =1 l wi (x) j =1 l wi (u) l l ji (uj , ji ),

(4.77)

con lo que su derivada respecto de las variables de estado se pueden calcular como:
l wi w l (x) w l (u) l l l l wi (x)wi (u) = wi (u) i = + wi (x) i . xq xq xq xq

(4.78)

Puesto que
l wi (x) = xq xq n l l ki (xk , ki ) , k =1

(4.79)

se obtiene,
l l n n wi (x) l l (x1 , l 2i (x2 , 2i ) 1i ) l l l l = 1i ki (xk , ki )+ ki (xk , ki ) + xq xq xq k =1,k =1 k =1,k =2 n l (xn , l ni ) l l + ... + ni ki (xk , ki ), xq k =1,k =n

(4.80)

que se puede representar de forma ms compacta por:


l wi (x) = xq n n l l pi (xp , pi ) l l ki (xk , ki ) . xq k =1,k =p

(4.81)

p=1

Teniendo en cuenta que

4.3

MATRIZ JACOBIANA DE UN SISTEMA DE CONTROL BORROSO

111

f (xi ) = 0, i = q, xq la expresin (4.81) puede reducirse a:


n l l l wi (x) qi (xq , qi ) l l = ki (xk , ki ). xq xq k =1,k =q

(4.82)

(4.83)

Por otro lado, la parte dependiente del vector de control es:


l wi (u) = xq xq m l l ji (uj , ji ) , j =1

(4.84)

de cuyo desarrollo resulta:


l l l m m wi (u) l l 2i (u2 , 2i ) 1i (u1 , 1i ) l l l ji (uj , ji )+ l = ji (uj , ji ) + xq xq xq j =1,j =1 j =1,j =2 m l (um , l mi ) l l + ... + mi ji (uj , ji ), xq j =1,j =m

(4.85)

o de forma ms compacta:
l wi (u) = xq m l l vi (uv , vi ) l l ji (uj , ji ) . xq j =1,j =v m

(4.86)

v=1

En un sistema de control borroso en lazo cerrado, las seales de control son generadas por un controlador borroso y, por lo tanto, se pueden calcular a partir del modelo matemtico equivalente de un controlador TSK dado por la ecuacin (3.42).
n

uj =
k =0

ckj x k ,

(3.42) uv , ya que aplixq

Ntese que para calcular cando la regla de la cadena:

l l vi (uv , vi )

xq

en (4.86) ser necesario obtener

l l l l vi (uv , vi ) uv vi (uv , vi ) = , xq uv xq

(4.87)

l l vi (uv , vi ) se puede calcular directamente de la denicin de la propia funcin de uv pertenencia1 . Para resolver uv /xq se parte de la ecuacin (3.42), de forma que

donde

uv = xq
1

k =0

ckv x k xq =

k =0

ckv x k + xq

ckv
k =0

x k , xq

(4.88)

En el apndice B se presentan las derivadas de las principales funciones de pertenencia.

112

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.3

es decir, uv = xq
n

k =0

ckv x k + cqv . xq

(4.89)

Sustituyendo (4.74) en (4.89), se obtiene: N


v

uv = cqv + xq

Finalmente, sustituyendo las ecuaciones (4.83) y (4.86) en (4.78), se obtiene la expresin que permite calcular la derivada del grado de activacin de las reglas de la planta en un sistema de control borroso:
l wi (x, u) = xq m j =1 n l l ji (uj , ji ) l n l qi (xq , qi ) l l ki (xk , ki )+ xq k =1,k =q

r,s=1 k =0

r v s r s (c ckv ) xq v kv k . x 2 Nv r v
r =1

(4.90)

(4.91) +
k =1 l l ki (xk , ki ) m v=1 l l vi (uv , vi ) m

xq

j =1,j =v

l l ji (uj , ji ) ,

donde

l l vi (uv , vi ) se calcula aplicando (4.90) sobre (4.87). xq

Derivada del grado de activacin de las reglas del controlador El grado de activacin de las reglas del controlador viene dado por:
n r j

=
k =1

r r kj (xk , kj ),

(3.37)

de modo que:
r j = xq xq n r r kj (xk , kj ) . k =1

(4.92)

Operando:
r r r n n r r j 2j (x2 , 2j ) 1j (x1 , 1j ) r r r kj (xk , kj ) + r = kj (xk , kj ) + xq xq xq k =1,k =1 k =1,k =2 r n r nj (xn , nj ) r + r kj (xk , kj ). xq k =1,k =n

(4.93)

...

Finalmente, si se tiene en cuenta que

4.3

MATRIZ JACOBIANA DE UN SISTEMA DE CONTROL BORROSO

113

f (xi ) = 0, i = q, xq la expresin (4.93) puede simplicarse a:


n r r j r qj (xq , qj ) r r = kj (xk , kj ), xq xq k =1,k =q

(4.82)

(4.94)

que representa la expresin nal para el clculo de la derivada del grado de activacin de las reglas del controlador con respecto a la q -sima variable de estado. Las derivadas de las funciones de pertenencia se pueden obtener directamente de la denicin de la propia funcin (en el apndice B se presentan las derivadas de las principales funciones de pertenencia).

Expresin nal de la matriz jacobiana de un sistema de control borroso Cada uno de los elementos de la matriz jacobiana del sistema, Jiq (x), para i, q = 1..n, viene determinado por la derivada de la expresin (3.55) con respecto a cada una de las variables de estado xq . Los dos sumandos que conforman el clculo de los elementos de la matriz jacobiana, segn la ecuacin (4.55), han sido calculados, y sus resultados se muestran en las expresiones (4.64) y (4.76), respectivamente. Sustituyendo dichos resultados en la ecuacin (4.55) se obtiene:

Jiq (x) =

l,p=1 + k =0 j =1
n m

n l,p=1 i (x) = aqi + xq k =0 Mi l wi p l wi (bji bp ji ) 2 l wi

Mi

l wi p l wi (aki ap ki ) xq Mi l=1 2 l wi

m bji cqj + x k + j =1 k . bji x

Nj

r j

(4.95)

xq

Mi l=1

ckj +

r,s=1

xq

s r j (ckj cs kj ) 2 r j

Nj r =1

Reagrupando los sumatorios y reordenando la expresin, los elementos de la matriz jacobiana del sistema de control borroso en lazo cerrado dado en (4.53) se pueden calcular mediante la ecuacin (4.96).

114

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.4

Jiq = aqi +
j =1

bji cqj +
i

l,p=1 + 2 Mi l w i l=1 n + k x r l Nj M i w k =0 j p p i s r wi (bl j (ckj cs ji bji ) kj ) m x x q q l,p =1 r,s =1 b + c + ji kj 2 2 Mi j =1 Nj l r wi j


l=1 r =1

l wi w p (al ap ki ) xq i ki

(4.96)

Para facilitar la representacin de esta ecuacin de una forma ms compacta puede escribirse como:
m n m
ki A + q kj ji ckj B q + bji q

Jiq = aqi +
j =1

bji cqj +
k =0

x k ,

(4.97)

j =1

siendo
Mi
ki A = q

l,p=1

l wi w p (al ap ki ) xq i ki Mi l=1 2 l wi

(4.98)

Mi
ji B = q

l,p=1

l wi p l wi (bji bp ji ) xq Mi l=1 2 l wi

(4.99)

y
Nj r j s r j (ckj cs kj ) xq Nj r =1 r j 2

q kj =

r,s=1

(4.100)

Con la intencin de no complicar las ecuaciones anteriores no se han sustituido las expresiones de las derivadas de los grados de activacin de las reglas de la planta ni del controlador, dadas por las ecuaciones (4.91) y (4.94), respectivamente.

4.4

ESTADOS DE EQUILIBRIO DE UN SISTEMA DE CONTROL BORROSO

115

4.4. Estados de equilibrio de un sistema de control borroso


La bsqueda de los estados de equilibrio de un sistema de control es uno de los primeros problemas que se deben resolver para proceder con el estudio de su dinmica. Como anlisis previo al diseo del sistema de control, la obtencin de los estados de equilibrio proporciona una valiosa informacin sobre el comportamiento de ste, especialmente si se trata de un sistema no lineal, ya que estos puntos son candidatos ideales para el estudio de estos sistemas mediante tcnicas de linealizacin. Una vez diseado el controlador, la obtencin de los estados de equilibrio del sistema realimentado puede ser til para comprobar que el diseo se ha realizado adecuadamente, as como para poder aplicar anlisis de estabilidad a dichos estados. Un sistema dinmico de tiempo continuo puede ser representado de forma general por la expresin (4.101). Tal como se vio en la denicin 3.4, los estados de equilibrio de dicho (t) = 0, siendo sistema son todos aquellos puntos, x = xeq , que satisfacen la expresin x u = ueq un vector de control constante. (t) = f (x, u) x (4.101)

El modelo matemtico equivalente de un modelo borroso de estado viene dado por la ecuacin (3.21), por lo que la obtencin de sus estados de equilibrio requiere resolver el sistema de ecuaciones (4.102), obtenido de igualar a cero dicha expresin.
n m

ak1 x k +
k =0 n j =1 m

bj 1 uj = 0 bj 2 uj = 0
j =1

ak2 x k +
k =0 n m

. . . bjn uj = 0

(4.102)

akn x k +
k =0 j =1

Si se realimenta el sistema con un controlador borroso, el modelo matemtico equivalente del sistema de lazo cerrado est dado por la ecuacin (3.55), por lo que para obtener sus estados de equilibrio se deber resolver el sistema de ecuaciones (4.103).
n m

ak1 +
k =0 n j =1 m

bj 1 ckj bj 2 ckj
j =1

x k = 0 x k = 0 . . .

ak2 +
k =0

(4.103)

akn +
k =0 j =1

bjn ckj

x k = 0

Dada la inherente capacidad de los sistemas borrosos para representar dinmicas no lineales, se hace necesaria la utilizacin de mtodos capaces de resolver el sistema de ecuaciones no lineales que se plantea: (4.102) (4.103), segn se pretenda resolver los estados de equilibrio de la planta o del sistema en lazo cerrado. A diferencia de los sistemas lineales, que

116

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.4

pueden tener uno o innitos estados de equilibrio, un sistema no lineal puede tener cualquier nmero de stos. Este hecho, junto con la propia complejidad de las ecuaciones que denen los sistemas no lineales, provoca que el clculo de los estados de equilibrio de los sistemas borrosos puede convertirse en un problema de envergadura. Para el clculo de los estados de equilibrio se van a utilizar mtodos numricos clsicos derivados del mtodo de Newton [294, 295], como son el mtodo LineSearch [296] y el de Regin de Conanza [297, 298].

4.4.1. Mtodos numricos para la minimizacin de funciones


Los mtodos de Newton proporcionan una importante clase de algoritmos de optimizacin local. En su forma bsica, la siguiente iteracin se obtiene en base al vector gradiente, G(x1 . . . xn ), y la matriz hessiana, H(x1 , . . . , xn ). La siguiente iteracin, k + 1, se obtiene desde la minimizacin de rxk (dk ), siendo rxk (dk ) = r (xk ) + G(xk )T dk + dT k H(xk )dk /2 (4.104)

un modelo cuadrtico de la funcin objetivo en torno al valor de x en la k -sima iteracin, de forma que xk+1 = xk + dk . Cuando la matriz hessiana es denida positiva, el modelo cuadrtico tiene una nica solucin que puede obtenerse mediante la resolucin del sistema simtrico lineal H(xk )dk = G(xk ). (4.105)

La convergencia del mtodo de Newton est garantizada siempre que el punto inicial est lo sucientemente cerca de algn mnimo local, x , en el cual la matriz hessiana sea denida positiva. Adems, la razn de convergencia es cuadrtica, esto es xk+1 x xk x
2

(4.106)

para una constante positiva. Si el punto de partida no est lo sucientemente cerca de un mnimo local, entonces la convergencia puede conseguirse mediante los mtodos LineSearch y de Regin de Conanza. El mtodo LineSearch modica la direccin de bsqueda, mientras que el mtodo de Regin de Conanza utiliza el modelo cuadrtico inicial de la funcin original, pero restringiendo la bsqueda de la siguiente iteracin a un entorno del punto actual donde el modelo cuadrtico es lo sucientemente able. En lo que sigue, se utilizarn dos mtodos de mnimos cuadrados para aproximar el estado de equilibrio: el mtodo de GaussNewton y el mtodo de LevenbergMarquardt [299301], donde la funcin a minimizar, r (x), se obtiene segn la expresin cuadrtica siguiente: 1 r (x) = f (x) 2
2 2

1 = 2

(fi (x))2
i=1

(4.107)

siendo fi (x), con i = 1..n, cada una de las ecuaciones de estado representadas por (3.21) o (3.55), segn el problema a resolver. Si se denota J(x) a la matriz jacobiana de f (x), G(x) al gradiente de r (x), H(x) a la matriz hessiana de r (x), y Hi (x) a la matriz hessiana de fi (x), se tiene que

4.4

ESTADOS DE EQUILIBRIO DE UN SISTEMA DE CONTROL BORROSO

117

G(x) = J(x)T f (x) y H(x) = J(x)T J(x) + Q(x), donde


n

(4.108)

(4.109)

Q(x) =
i=1

fi (x)Hi (x)

(4.110)

tiende a cero cuando f (x) tiende a cero si xk se aproxima a la solucin. En el mtodo de Gauss-Newton, la direccin de bsqueda de la nueva iteracin, dk , es la solucin del problema de mnimos cuadrados siguiente: min J(xk )dk + f (xk ) 2 .
xR

(4.111)

Esta direccin puede utilizarse a su vez en una estrategia de minimizacin para garantizar que la funcin r (x) decrece en cada iteracin. El mtodo de GaussNewton puede no ser efectivo si al acercarse a la solucin f (xk ) no es un valor pequeo y el trmino de segundo orden Q(x) es signicativo. El mtodo de Levenberg-Marquardt salva este problema utilizando una direccin de bsqueda que se obtiene como solucin de la expresin siguiente: J(xk )T J(xk ) + k I dk = J(xk )T f (xk ). (4.112)

En esta expresin, k controla la direccin y magnitud de dk , de forma que si k = 0, dk es la misma que en el mtodo de Gauss-Newton. Conforme k tiende a innito, dk tiende a la direccin de mximo descenso. Los mtodos numricos presentados, como casi la totalidad de los algoritmos numricos de minimizacin de funciones, emplean la matriz jacobiana de la funcin a minimizar para mejorar la convergencia del algoritmo y la precisin de su resultados [295,302,303], de forma que si sta no est disponible se aproxima por diferencias nitas de la forma: f1 (x1 + , x2 , . . . , xn ) f1 (x) f2 (x1 + , x2 , . . . , xn ) f2 (x) J(x) . . . fn (x1 + , x2 , . . . , xn ) fn (x) f1 (x1 , x2 , . . . , xn + ) f1 (x) f2 (x1 , x2 , . . . , xn + ) f2 (x) . . . fn (x1 , x2 , . . . , xn + ) fn (x)

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

(4.113)

donde > 0 es una constante pequea. Adems, la matriz jacobiana es utilizada a su vez para el clculo aproximado de la matriz hessiana, por lo que los errores en las aproximaciones iniciales de la primera se incrementan ineludiblemente en los clculos de la segunda. Existen dos metodologas para aproximar la matriz hessiana. En la primera de ellas se utiliza la diferencia de dos evaluaciones del vector gradiente en puntos cercanos para obtener por

118
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.5

Inicio 1 iteracin, k = 1 Calcular r (x1 ) mediante (4.107) Mientras r (xk ) < toletancia y k < klimite hacer Si est disponible la matriz jacobiana entonces Calcular J(x) en otro caso Calcular la aproximacin de J(x) mediante (4.113) Fin Si Obtener la direccin de descenso: Si GaussNewton entonces calcular dk mediante (4.111) en otro caso Si LevenbergMarquardt entonces calcular dk mediante (4.112) Fin Si xk+1 = xk + dk Calcular r (xk+1 ) mediante (4.107) k =k+1 Fin Mientras Retornar x
Figura 4.1: Algoritmo numrico de minimizacin.

diferencias los valores aproximados de dicha matriz. La segunda metodologa, conocida como mtodos Quasi-Newton [304], consiste en ir calculando la matriz hessiana de la iteracin actual en funcin del valor del gradiente y de la matriz hessiana de la iteracin anterior. Los mtodos descritos anteriormente para la obtencin del valor de x que minimice la funcin r (x) (4.107), se pueden resumir en el algoritmo de la gura 4.1. En la seccin 4.2 se ha resuelto la matriz jacobiana del modelo borroso de una planta genrica, y en la seccin 4.3 la del modelo borroso de un sistema en lazo cerrado. Puesto que es aconsejable emplear el clculo explcito de la matriz jacobiana siempre que sea posible, dichos clculos se han incorporado a los algoritmos numricos para la obtencin de los estados de equilibrio de sistemas borrosos, mejorando tanto la velocidad de convergencia como la precisin de los estados de equilibrio obtenidos [290].

4.5.

Diseo del software

En la gura 4.2 se muestra el algoritmo que realiza el clculo del modelo borroso linealizado mediante las expresiones obtenidas en la seccin 4.2. Este algoritmo se ha programado haciendo uso del sistema de clases descrito en 3.4, y se incluye en el paquete de utilidades descrito en esa misma seccin, ver 3.19. Para facilitar su utilizacin desde MATLAB , se ha creado la funcin fuzlinear, la cual obtiene los datos directamente del entorno de MATLAB , realiza los clculo empleando el software desarrollado, y retorna los resultados obtenidos. Antes de proceder con el diseo del algoritmo de clculo de la matriz jacobiana, se ha diseado una nueva clase que permitir el almacenamiento y facilitar el acceso a los elementos

4.5

DISEO DEL SOFTWARE

119

1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41:

segn (3.20) Clcular el vector de estado extendido x Para cada ecuacin de estado (i = 1..n) hacer Suma wi = 0 Para cada regla (l = 1..Mi ) hacer l l Calcular wi segn (3.15) y hacer Suma wi = Suma wi + wi Para cada variable de estado (q = 1..n) hacer l Calcular wi (x, u)/xq mediante la ecuacin (4.48) Fin Para Para cada seal de control (v = 1..m) hacer l Calcular wi (x, u)/uv mediante la ecuacin (4.49) Fin Para Fin Para Fin Para Para cada ecuacin de estado (i = 1..n) hacer Para cada seal de control (v = 1..m) hacer Calcular bvi mediante la ecuacin (3.18) {Sustituir el ndice j de la ecuacin por v} Bvi = bvi {Se inicializa el elemento vi de la matriz B} Para cada variable de estado extendida (k = 0, 1, ..., n) hacer ki Calcular A k utilizando la ecuacin (4.40) uv x Aki Bvi = Bvi + uv x k Fin Para Para cada seal de control (j = 1..m) hacer Bji uj utilizando la ecuacin (4.41) Calcular uv Bji uj Bvi = Bvi + uv Fin Para Fin Para Para cada variable de estado (q = 1..n) hacer Calcular aqi mediante la ecuacin (3.18) {Sustituir el ndice k de la ecuacin por q} Aqi = aqi {Se inicializa el elemento qi de la matriz A} Para cada variable de estado extendida (k = 0, 1, ..., n) hacer ki Calcular A k utilizando la ecuacin (4.38) xq x Aki k Aqi = Aqi + xq x Fin Para Para cada seal de control (j = 1..m) hacer Bji uj utilizando la ecuacin (4.39) Calcular xq Bji uj Aqi = Aqi + xq Fin Para Fin Para Fin Para Obtener A0 mediante el algoritmo de la gura 3.2 Retornar A0 , A y B
Figura 4.2: Algoritmo de linealizacin de un modelo borroso.

120

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.6

Jacobiana n: int J: double** estados(): int leer_J(row: int, column: int): double escribir_J(value: double, row: int, column: int): int resolver(S: Sistema, C: Sistema, x: double*) Jacobian(n: int) Jacobiana(S: Sistema, C: Sistema, x: double*) ~Jacobiana()

Figura 4.3: Clase Jacobiana.

Jacobiana
1 requiere 2

Sistema

Figura 4.4: Relacin entre las clases Jacobiana y Sistema.

de dicha matriz. Esta clase se muestra en la gura 4.3 y se relaciona con las clases anteriores tal como se muestra en la gura 4.4. El algoritmo que facilita el clculo de la matriz jacobiana de un sistema de control borroso mediante la resolucin de la ecuacin (4.97), se muestra en la gura 4.5. Desde MATLAB , la funcin fuzjac es un MEX-le que hace las veces de interfaz entre MATLAB y la clase Jacobiana, de forma que realiza el clculo de la matriz jacobiana tomando directamente como planta y controlador del sistema dos modelos FIS.

4.6.

Conclusiones y comentarios bibliogrcos

La utilizacin de modelos no lineales para representar la dinmica de los sistemas dinmicos permite realizar enfoques ms realistas y diseos ms ptimos que mediante la utilizacin de sistemas lineales. En las referencias [220] a [224] se estudian modelos dinmicos no lineales as como distintas tcnicas de anlisis y diseo existentes para este tipo de sistemas. La linealizacin de un modelo borroso de estado es una herramienta que puede resultar muy til para la obtencin de informacin de un sistema real a partir de su modelo borroso, como por ejemplo para conocer la estabilidad local de un estado de equilibrio. En este captulo se ha calculado el modelo linealizado de un modelo de estado borroso completamente general, donde no se ha impuesto ningn tipo de limitacin sobre el orden de vector de estado ni sobre el orden el vector de control, donde cada una de las variables de salida del modelo borroso puede ser inferida por cualquier nmero de reglas, y donde los conjuntos borrosos de los antecedentes puede ser descritos por cualquier funcin de pertenencia, incluso mezclando distintos tipos de funciones de pertenencia en una misma regla.

4.6

CONCLUSIONES Y COMENTARIOS BIBLIOGRFICOS

121

1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41:

r , j Ejecutar en linea el algoritmo de la gura 3.3 {Proporciona x , Suma j , ckj y uj } Para cada ecuacin de estado (i = 1..n) hacer Suma wi = 0 Para cada regla (l = 1..Mi ) hacer l l segn (3.15) y hacer Suma wi = Suma wi + wi Calcular wi Fin Para Fin Para Para cada variable de control (j = 1..m) hacer Para cada variable de estado (q = 1..n) hacer r Calcular j /xq mediante la ecuacin (4.94) uj /xq = cqj Para cada variable de estado extendida (k = 0, 1, ..., n) hacer C Calcular q kj mediante la ecuacin (4.100) C uj /xq = uj /xq + q kj x k segn (4.90) Fin Para Fin Para Fin Para Para cada ecuacin de estado (i = 1..n) hacer Para cada variable de control (j = 1..m) hacer Calcular bji mediante (3.18) Fin Para Para cada variable de estado (q = 1..n) hacer m Calcular m j =1 bji cqj e inicializar Jiq = j =1 bji cqj , segn (4.97) Para cada regla (l = 1..Mi ) hacer Calcular el numerador de aqi segn (3.18) l Calcular wi (x, u)/xq mediante (4.91). Debe usarse la ecuacin (4.90) Fin Para Calcular aqi = aqi /Suma wi y actualizar Jiq = Jiq + aqi , segn (4.97) Para cada variable de estado extendida (k = 0, 1, ..., n) hacer Jaux = 0 ki mediante (4.98) Calcular A q Para cada variable de control (j = 1..m) hacer C B Calcular q ji y q kj mediante (4.99) y (4.100), respectivamente C B Jaux = Jaux + ckj q ji + bji q kj , segn (4.97) Fin Para ki Jaux = Jaux + A q Fin Para Jiq = Jiq + Jaux x k Fin Para Fin Para Retornar J

Figura 4.5: Algoritmo para el clculo de la matriz Jacobiana de un modelo borroso.

122

ANLISIS DE SISTEMAS DINMICOS MEDIANTE MODELOS BORROSOS

4.6

Al igual que sucede con el modelo borroso de la planta, disponer de la linealizacin del sistema de control borroso en lazo cerrado, es decir, de su matriz jacobiana, puede resultar de inters para el anlisis de dicho sistema. No obstante, la mayor utilidad del clculo de la matriz jacobiana de un sistema de control en lazo cerrado radica en poder aplicarla al diseo de dicho sistema de control, por ejemplo mediante la aplicacin del teorema de Krasovskii. En este captulo se ha calculado la matriz jacobiana de un sistema de control borroso siguiendo la misma losofa de generalidad empleada anteriormente para calcular el modelo linealizado de un modelo borroso, considerndose adems que la planta y el controlador son a todos los efectos dos sistemas borrosos completamente independientes y que, por lo tanto, ni el nmero de reglas ni la particin del universo de discurso de las variables de estado para la planta y el controlador tienen porqu coincidir. En las referencias [100], [233], y de [289] a [293] se muestra la utilidad de aplicar tcnicas de anlisis y diseo de sistemas no lineales, como la linealizacin, la teora de estabilidad de Lyapunov, el mtodo de Krasovskii, etc., a los sistemas de control borroso. Los estados de equilibrio de un sistema proporcionan mucha informacin sobre el comportamiento del mismo, y su bsqueda y estudio suele ser uno de los primeros problemas que se deben resolver para estudiar su dinmica. En este captulo se ha presentado un algoritmo numrico que permite obtener los estados de equilibrio de un sistema borroso, independientemente de si se desea estudiar slo la planta o el sistema de lazo cerrado. Se ha propuesto hacer uso de las linealizaciones realizadas con anterioridad para acelerar la velocidad de convergencia de estos algoritmos y la precisin de los resultados obtenidos. En las referencias [290] y de [294] a [304] se pueden consultar los mtodos numricos empleados en esta seccin. Finalmente, en la ltima seccin del captulo se han presentado los algoritmos que permiten calcular a partir de un sistema de control borroso, tanto el sistema linealizado de la planta, como la matriz jacobiana del sistema de lazo cerrado. De entre las referencias incluidas en este captulo merece la pena destacar [220] y [224] como lecturas bsicas para el estudio de los sistemas no lineales y las metodologas de estudio y aplicacin de dichos sistemas. Tambin es importante destacar [168], donde se propone el clculo de la matriz jacobiana de un sistema de control borroso y una estructura software para su realizacin; as como [290], donde se realiza el estudio de los estados de equilibrio de varios modelos borrosos y se demuestra el benecio de incluir el clculo explcito de la matriz jacobiana en dicho estudio.

Cap tulo

de controladores borrosos Diseno

l diseo de controladores borrosos puede realizarse fundamentalmente desde dos enfoques: a partir del conocimiento de un operario experto, y mediante un estudio formal de estabilidad del sistema de control. En este captulo se estudiarn ambos enfoques, para ello el captulo se estructura en cuatro secciones. En la primera de ellas se estudia la teora de estabilidad de Lyapunov, ya que esta teora es la base del anlisis de estabilidad y el diseo en sistemas no lineales. La segunda seccin est dedicada al control heurstico basado en el conocimiento de un experto. Este tipo de control tiene la ventaja de no requerir un modelo de la planta, ya que el diseo se realiza a partir del conocimiento que el operario posee sobre su manejo. En la tercera seccin se propone una metodologa de diseo completamente formal y general para la sntesis de sistemas de control borroso estables por diseo. Finalmente, la ltima seccin recoge las principales conclusiones de este captulo y una revisin de las referencias bibliogrcas incluidas en el mismo.

5.1. Introduccin
El problema del control de una planta est ntimamente ligado al concepto de estabilidad. Hasta tal punto estn ligados dichos conceptos, que no tiene sentido hablar de sistema de control si ste no es estable. Cuando se desea disear un sistema de control para una planta no lineal es deseable, y a veces imprescindible, no realizar aproximaciones lineales de la misma, ya que la prdida de informacin que esto supone puede provocar que el sistema resultante no sea estable o lo sea muy localmente. Los sistemas no lineales presentan una gran riqueza en cuanto a sus respuestas dinmicas. Esta riqueza diculta enormemente la consecucin de una teora que permita el diseo de sistemas de control de forma sistemtica, tal como sucede con los sistemas lineales. No obstante, siempre y cuando el modelo matemtico de la planta sea conocido, existen multitud de tcnicas de control que pueden ser aplicadas para la sntesis de controladores no lineales, como la linealizacin por realimentacin, la planicacin de ganancias, el control adaptativo o el control deslizante, entre otras. Dada la capacidad inherente de los sistemas borrosos para modelar dinmicas no lineales, estas tcnicas pueden emplearse para la sntesis de controladores borrosos. 123

124

DISEO DE CONTROLADORES BORROSOS

5.1

La carencia de herramientas formales para el anlisis dinmico de los sistemas de control borroso, junto con la utilizacin frecuente de soluciones empricas o construidas ad-hoc, provocaron que, durante muchos aos, gran parte de la comunidad cientca del mbito de la automtica, no terminara de aceptar a la lgica borrosa como una tcnica formal de diseo de sistemas de control [305]. Como muestra se transcriben las palabras de Rudolph E. Kalman, uno de los padres de la ingeniera de control moderna, a Lofti A. Zadeh en 1972: . . . I would like to comment briey on Prof. Zadehs presentation. His proposals could be severely, ferociously, even brutally criticized from a technical point of view. This would be out of place here. But a blunt question remains: Is Zadeh presenting important ideas or is he indulging in wishful thinking? The most serious objection of fuzzication of system analysis is that lack of methods of system analysis is not the principal scientic problem in the systems eld. That problem is one of developing basic concepts and deep insight into the nature of systems, perhaps trying to nd something akin to the laws of Newton. In my opinion, Zadehs suggestions have no chance to contribute to the solution of this basic problem. . . La crtica de Kalman a Zadeh es realmente dura, catalogndolo casi de visionario. Ntese adems cmo hace especial nfasis en la falta de una sistematizacin en el anlisis. De forma similar, el brillante y admirado colega de Zadeh, Prof. William Kaham, arm en 1975 lo siguiente: . . . Fuzzy theory is wrong, wrong, and pernicious. I can not think of any problem that could not be solved better by ordinary logic. What Zadeh is saying is the same sort of things: Technology got us into this mess and now it cant get us out. Well, technology did not get us into this mess. Greed and weakness and ambivalence got us into this mess. What we need is more logical thinking, not less. The danger of fuzzy theory is that it will encourage the sort of imprecise thinking that has brought us so much trouble. . . Esta crtica es an ms dura que la anterior, y se cataloga a Zadeh poco menos que de causante de la ruptura en el orden del pensamiento cientco. An en los aos 90 podan encontrarse crticas, aunque ya ciertamente escasas, como la que Jon Konieki declar en AI Expert en 1991: . . . Fuzzy logic is based on fuzzy thinking. It fails to distinguish between the issues specically addressed by the traditional methods of logic, denition, and statistical decisionmaking. . . En la actualidad la lgica borrosa ha vencido todos estos prejuicios gracias a los excelentes resultados prcticos que ha cosechado, pero tambin gracias al esfuerzo de formalizacin realizado por la comunidad cientca. En este sentido han trabajado muchos investigadores, fundamentalmente a partir de la dcada de los 90, proporcionando a la lgica borrosa una base formal centrada en la teora de control no lineal [121, 306]. De esta forma pudieron empezar a aplicarse a los sistemas de control borroso, los mtodos clsicos de anlisis de la

5.2

TEORA DE ESTABILIDAD DE LYAPUNOV

125

teora de control no lineal: el criterio de hiperestabilidad de Popov [307310], el criterio del crculo [175,311], el mtodo directo de Lyapunov [227,312316], las tcnicas de anlisis en el espacio de fase [175, 317], el mtodo de la funcin descriptiva [318], los mtodos basados en ndices de estabilidad y robustez de sistemas [100,318], el criterio de conicidad [318,319], los mtodos basados en la teora de estabilidad de entrada/salida [311, 318, 320] y los mtodos heursticos [321, 322]. Ms recientemente se han empleado soluciones basadas en LMIs (Linear Matrix Inequalities ) como metodologa para garantizar la estabilidad asinttica del sistema de control borroso en lazo cerrado [323330]. En estos mtodos, la evolucin de cada una de las variables de estado requiere del mismo nmero de reglas, ya que las reglas se suelen expresar de forma matricial; los antecedentes estn intencionadamente bien distribuidos, normalmente cumpliendo los requisitos de la Standard Fuzzy Partition (SFP) [331]; y se suele considerar nulo o despreciable el trmino afn de los consecuentes. Mediante todas estas limitaciones, los autores que trabajan con LMIs minimizan el esfuerzo de diseo y la complejidad del sistema no lineal, reducindolo a un conjunto de sistemas lineales ms fcilmente abordables. En general estos mtodos obtienen buenos resultados prcticos, y permiten un diseo relativamente sencillo del controlador borroso, sin embargo, su mbito de aplicacin queda restringido por la necesidad de conocer previamente el modelo matemtico de la planta, ya que de lo contrario sera complicado poder cumplir todas las restricciones impuestas. La mayora de los trabajos publicados sobre anlisis de estabilidad de sistemas de control borroso, parten del conocimiento previo del modelo matemtico de la planta [121]. Cuando el modelo matemtico de una planta no lineal es conocido, existen muchas tcnicas de control que permiten garantizar la estabilidad del mismo, con resultados probados y avalados por la comunidad cientca. Por lo tanto, en principio no parece muy justicable la utilizacin de un controlador borroso en estos casos, aunque se puede respaldar su eleccin bajo la robustez que suelen presentar los controladores borrosos, o por la necesidad de obtener un controlador interpretable lingsticamente. Sin embargo, si el modelo de la planta es desconocido, o es demasiado complejo como para obtenerlo, o est sometido a incertidumbres, la lgica borrosa se presenta como una herramienta poderosa, posiblemente una de las mejores, para afrontar el diseo del controlador no lineal.

5.2. Teora de estabilidad de Lyapunov


La teora de estabilidad de Lyapunov permite tanto el anlisis de los sistemas de control no lineales, como la sntesis de controladores estables. Teorema 5.1 (Estabilidad en el sentido de Lyapunov). Se dice que un estado de equilibrio xeq es estable en el sentido de Lyapunov, si dado un nmero real > 0, existe otro nmero real > 0, de forma que para todo estado inicial x(t0 ) para el que se cumpla x(t0 ) xeq < , tambin se cumple x(t) xeq < , t > t0 , (5.2) (5.1)

126

DISEO DE CONTROLADORES BORROSOS S () a Estable en el sentido de Lyapunov b Asintticamente estable c Inestable S ( ) d d Convergente e inestable

5.2

xe
+

Figura 5.1: Estabilidad.

donde x(t) xeq es la norma eucldea1 , que se dene por x(t) xeq = (x1 (t) x1eq )2 + (x2 (t) x2eq )2 + . . . + (xn (t) xneq )2 . (5.3)

Como se puede ver de forma grca en la gura 5.1, el teorema anterior implica que se considera estable en el sentido de Lyapunov a todo estado de equilibrio cuyas trayectorias que se originen en sus cercanas, dentro de la regin S ( ), no abandonan un entorno de dicho estado, regin S (), cuando el tiempo aumenta de forma indenida. La estabilidad tal como se dene en el sentido de Lyapunov no suele ser una condicin suciente para los sistemas de control, por lo que se utiliza el concepto de estabilidad asinttica. Teorema 5.2 (Estabilidad asinttica). Un estado de equilibrio xeq se dice que es asintticamente estable, si es estable en el sentido de Lyapunov y toda trayectoria que comience dentro de la regin S ( ), converge hacia xeq sin abandonar S () en ningn momento. De forma ms precisa, se dice que xeq es asintticamente estable, si dados dos nmeros reales > > 0 tan pequeos como se desee, existe un nmero real > 0 y un instante de tiempo tf , de forma que se cumple (5.1), (5.2) y adems x(t) xeq < , t > tf . (5.4)

Teorema 5.3 (Estabilidad asinttica global). Un estado de equilibrio se dice que es asintticamente estable de forma global, si es estable y toda solucin converge hacia xe al incrementar el tiempo indenidamente, es decir, si la regin S ( ) es todo el espacio de estado. Obviamente, para que haya estabilidad asinttica global es condicin necesaria que haya un solo estado de equilibrio en todo el espacio de estado. La estabilidad asinttica global es una cualidad deseable en todo sistema de control, sin embargo, no siempre puede conseguirse o demostrarse dicha cualidad. En estos casos, el problema se transforma en la determinacin de la mayor regin de estabilidad asinttica, lo cual suele ser un problema complejo. Desde el punto de vista prctico, basta con determinar una regin de estabilidad asinttica sucientemente grande como para que las perturbaciones sufridas por el sistema no la excedan.
1

La norma eucldea suele ser la ms utilizada, aunque puede emplearse cualquier otra variante, como la norma uno o la norma innito.

5.2

TEORA DE ESTABILIDAD DE LYAPUNOV

127

Teorema 5.4 (Inestabilidad). Se dice que un estado de equilibrio xeq es inestable, si dado un nmero real > 0 y cualquier otro nmero real > 0, existe un estado x(t0 ) en la vecindad de xeq , es decir, que satisface (5.1), para el que las trayectorias que parten de x(t0 ) cumplen x(t) xeq > , (5.5) en algn instante t > t0 , es decir, superan el lmite dado por . Ntese que las trayectorias no tienen porqu fugar a innito, sino que basta con que se alejen de xeq ms all de la regin S (), por ejemplo para acabar en otro estado de equilibrio o en un ciclo lmite.

5.2.1. Mtodo directo de Lyapunov


De la teora clsica de la mecnica se sabe que un sistema es estable si su energa total, una funcin denida positiva, es decreciente de forma continua hasta alcanzar un estado de equilibrio. En un sistema no lineal no tiene porqu existir una manera simple de denir una funcin de energa, por ello, el mtodo directo de Lyapunov introduce una funcin de energa cticia, denominada funcin de Lyapunov . Sea una regin S cerrada del espacio de estado, sin huecos, con un estado de equilibrio xe no en el mismo borde; una funcin escalar V (x(t)) es una funcin de Lyapunov del sistema en S , si: 1. Es denida positiva en toda la regin, excepto en xe , donde es nula: V (x(t)) = 0 para V (x(t)) > 0 para 2. Su derivada es decreciente en toda la regin: dV (x(t)) 0, x S dt 3. Es continuamente diferenciable en x(t): V (x(t)) , xi xi (5.8) (5.7) x(t) = xeq x(t) = xeq (5.6)

En la gura 5.2 se muestra una posible funcin de Lyapunov para un sistema de 2 orden, donde el estado de equilibrio se sita en el origen de coordenadas. El mtodo directo de Lyapunov establece que, si se halla una funcin de Lyapunov alrededor de un estado de equilibrio, el sistema es estable en el sentido de Lyapunov en las cercanas de dicho estado. Ntese como el mtodo directo establece una condicin suciente, pero no necesaria, por lo que no encontrar una funcin de Lyapunov no implica que el sistema no sea estable. Si adems se exige que V (x) sea estrictamente decreciente, esto es, que dV (x(t)) = 0 para dt dV (x(t)) < 0 para dt x(t) = xeq x(t) = xeq , (5.9)

128

DISEO DE CONTROLADORES BORROSOS

5.2

Figura 5.2: Funcin de Lyapunov.

entonces, el sistema es asintticamente estable. El mtodo directo de Lyapunov tambin se puede aplicar para estudiar la estabilidad o estabilidad asinttica global, es decir, cuando la regin S es todo el espacio de estado. En este caso es necesario exigir a la funcin de Lyapunov que cumpla:
x(t)

l m

V (x(t)) = ,

(5.10)

ya que de esta forma se asegura que las curvas o supercies de nivel correspondientes a un mismo valor de V (x) sean cerradas. Si estas curvas o supercies de nivel no fuesen cerradas, podran producirse trayectorias que se escapasen del estado de equilibrio mientras disminuye el valor de la funcin de Lyapunov. La teora de Lyapunov es la ms exible a la hora de abordar el diseo de un sistema de control no lineal [332], sin embargo, esta exibilidad tambin supone un problema prctico; ya que no suele ser fcil establecer una funcin de Lyapunov candidata que propicie un diseo estable en una regin sucientemente amplia. Adems, como se ha visto anteriormente, el no cumplimiento del teorema de Lyapunov para una funcin candidata no implica que no pueda cumplirse para otra funcin distinta, de forma que la eleccin de una u otra funcin de Lyapunov forma parte del propio proceso de diseo.

5.2.2. Mtodo de Krasovskii


Es fcil intuir la enorme problemtica que supone el encontrar funciones de Lyapunov para sistemas no lineales generales. El mtodo de Krasovskii sugiere una forma simple de funcin de Lyapunov candidata (5.13) para sistemas no lineales autnomos de la forma (5.11). La idea bsica del mtodo es simplemente comprobar si esta eleccin satisface los requisitos de una funcin de Lyapunov. Teorema 5.5 (de Krasovskii). Sea un sistema autnomo no lineal (t) = f (x(t)), x (5.11)

5.3

CONTROL HEURSTICO DE SISTEMAS DINMICOS

129

con un estado de equilibrio aislado situado, sin prdida de generalidad2 , en el origen del espacio de estado, y sea J(x(t)) la matriz jacobiana del sistema; si la matriz F(x(t)) = J(x(t))T + J(x(t)) (5.12)

es denida negativa en una regin alrededor del origen, se cumple que el estado de equilibrio en el origen es asintticamente estable, y que V (x(t)) = f (x(t))T f (x(t)) (5.13)

es una funcin de Lyapunov para el sistema. Adems, si es todo el espacio de estado y se cumple (5.10), se puede armar que el estado de equilibrio es asintticamente estable de forma global. El teorema de Krasovskii proporciona condiciones sucientes de estabilidad asinttica para sistemas no lineales, y condiciones necesarias y sucientes para sistemas lineales, y proporciona una funcin de Lyapunov vlida para el sistema. Esto signica que un estado de equilibrio de un sistema no lineal puede ser estable an sin satisfacer las condiciones de este teorema, sin embargo, si se disea un controlador de forma que cumpla el teorema de Krasovskii, la estabilidad asinttica en un entorno del estado de equilibrio estar garantizada. Mientras que el uso del teorema de Krasovskii es muy directo, su aplicabilidad prctica est limitada, ya que muchos sistemas no cumplen con la denicin de negatividad de F(x(t)). Para salvar en parte este inconveniente, este teorema puede enunciarse de la forma ms general siguiente: Teorema 5.6 (de Krasovskii generalizado). Es condicin suciente para la estabilidad asinttica del sistema (5.11) en una regin alrededor del origen, que la matriz F(x(t)) = J(x(t))T P + PJ(x(t)) + Q (5.14)

sea semidenida negativa; siendo P y Q dos matrices simtricas denidas positivas. En este caso, la funcin de Lyapunov resultante es: V (x(t)) = f (x(t))T Pf (x(t)). (5.15)

5.3. Control heurstico de sistemas dinmicos


La heurstica es la manera de buscar la solucin de un problema mediante mtodos no rigurosos, como por tanteo, mediante reglas empricas, etc. Por ejemplo, el control manual que realiza un operario experimentado sobre un sistema es un tipo de control heurstico, donde el operario decide las acciones de control en funcin del estado del sistema y de su experiencia y conocimientos sobre el mismo. Tal como se vio en el captulo 2, la lgica borrosa permite inferir conclusiones a partir de una serie de condiciones expresadas de forma lingstica mediante reglas SiEntonces. Esta capacidad de la lgica borrosa puede ser empleada para incorporar el conocimiento de un experto a un sistema de control automtico, obtenindose un controlador borroso basado
2

En el caso de que el estado de equilibrio no se situase en el origen de coordenadas, siempre ser posible establecer un cambio de base del sistema de coordenadas que lo site en dicha posicin.

130

DISEO DE CONTROLADORES BORROSOS

5.3

en heurstica cuyo comportamiento, una vez realizados los ajustes pertinentes, puede ser bastante similar al del operario real. Adems, no es necesario disponer de un modelo de la planta a controlar, ya que en muchos casos basta con el conocimiento del operario y el modelo mental que ste posee sobre la planta para desarrollar un controlador. Precisamente estos aspectos de la lgica borrosa fueron los que resultaron ms atrayentes en sus inicios, y los que provocaron el gran auge que tuvo esta tecnologa durante los aos 70. Por ejemplo, Mandani y Assilian [28] describieron en 1975 un experimento sobre la sntesis lingstica de un controlador para una mquina de vapor, en la que la lgica borrosa es usada para convertir las reglas de control heurstico obtenidas de operadores humanos en una estrategia de control automtico. Ms recientemente, an se siguen proponiendo mecanismos se control para sistemas complejos basados en heurstica, como por ejemplo, un sistema de navegacin para robots mviles [262], un sistema de balanceado de cargas para servidores distribuidos [333], o el control de una gra porta contenedores [171]. El no disponer de modelo de la planta y, por tanto, de modelo del sistema en lazo cerrado, ciertamente puede traer problemas asociados, como por ejemplo la imposibilidad de poder realizar un anlisis formal de propiedades del sistema tales como estabilidad y robustez. Sin embargo, las mltiples herramientas existentes hoy en da para simular sistemas complejos, permiten que va simulaciones, y de una forma un tanto emprica si se quiere, puedan ser analizadas las propiedades anteriores en las regiones de operacin de inters. Al contrario de lo que suele suceder en el traslado de una tcnica al campo prctico, en el caso del control borroso los xitos tcnicos y comerciales han ido por delante del desarrollo de la teora. Esto puede ser atribuido a dos factores [334]: 1. Los mecanismos de la lgica borrosa proporcionan una herramienta til y exitosa para implementar reglas lingsticas. En concreto, dadas las reglas lingsticas, la realizacin del controlador borroso exige unos tiempos y costes de desarrollo modestos. 2. El hecho de que el controlador est realizado mediante reglas lingsticas permite entender fcilmente su comportamiento. En concreto, si el comportamiento del sistema en lazo cerrado no es satisfactorio, suele ser posible determinar la regla responsable y en qu direccin ha de ser modicada. El enfoque de diseo de controladores borrosos heursticos se ha basado en dos fuentes de informacin: conocimiento de la dinmica de la planta y conocimiento de su manejo por un operario experto. El buen conocimiento de la planta permite identicar las variables que intervienen en el problema y su comportamiento, as como contribuir a derivar las reglas del controlador. Por ejemplo: Si la variable a controlar tiene el valor deseado y su derivada es cero, entonces mantener la seal de control actual. Respecto del enfoque de extraer conocimiento del operario experto, se trata de implementar ese conocimiento en las reglas del controlador borroso. Claramente, este es el mecanismo usado en el diseo clsico de sistemas expertos. En la gura 5.3 se muestra el esquema de control borroso presentado en el captulo 2, donde se puede apreciar que el proceso de control borroso consta de tres pasos: borrosicacin, inferencia borrosa y desborrosicacin. En primer lugar, la etapa de borrosicacin traslada las variables medidas al dominio lingstico mediante las funciones de pertenencia. A continuacin, la etapa de inferencia borrosa

5.4

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

131

Sistema Borroso Base de Conocimiento


Base de Datos Base de Reglas

Entradas

Borrosicador

Motor de Inferencia

Desborrosicador

Salidas

Figura 5.3: Sistema de inferencia borroso.

evala, mediante el conjunto de reglas del controlador, el comportamiento del sistema y las acciones de control a realizar. El resultado son, de nuevo, variables lingsticas. Puesto que al nal del proceso de inferencia se ha de actuar sobre la planta, la etapa de desborrosicacin traslada los resultados lingsticos de la fase de inferencia a los valores reales que nalmente se aplican a la planta. El diseo de controladores borrosos basado en heurstica, que tambin podra denominarse tradicional, tiene la desventaja de carecer, por regla general, de una metodologa formal de diseo y anlisis. Sin embargo, es posible establecer una metodologa de diseo, ms bien emprica, que podra resumirse en los siguientes pasos: a partir del conocimiento de la planta se denen los conjuntos borrosos, y por tanto las variables lingsticas que originan las entradas del controlador borroso, las seales de control y la/s salida/s. Una vez creadas las variables lingsticas de entrada, salida y control, y denidos sus universos de discurso, se deducen las pautas que permiten denir la estrategia de control, empleando para el estudio la forma de operar de un experto sobre la planta. Estas pautas de operacin deben representarse en forma de reglas SiEntonces para poder ser almacenadas en la base de reglas del controlador borroso. Una vez diseado un controlador inicial, ser necesario probar su comportamiento sobre el sistema para renar cada uno de sus componentes. Para ello se pueden utilizar dos estrategias distintas: una estrategia prctica, que implica la implementacin del controlador sobre el sistema y su prueba real; y una estrategia basada en la simulacin, para lo cual ser necesario obtener un modelo de la planta. Obviamente, teniendo en cuenta las sucesivas fases de renamiento que requerira un problema de control complejo, unido a los problemas que puede conllevar la implementacin de un controlador inadecuado sobre un sistema real, parece procedente realizar siempre que sea posible un primer ajuste mediante simulacin y, posteriormente, realizar un ajuste no en campo.

5.4. Sntesis de controladores borrosos estables por diseo


Uno de los objetivos fundamentales de este texto es establecer una metodologa lo ms general posible que permita la sntesis de controladores borrosos estables por diseo, es decir, que la estabilidad quede garantizada durante el propio proceso de diseo del controlador. Con objeto de hacer la metodologa lo ms general posible, se supondr como hiptesis de partida que la dinmica de la planta es totalmente desconocida, o lo sucientemente compleja

132

DISEO DE CONTROLADORES BORROSOS

5.4

como para no poderse obtener un modelo matemtico de la misma. Evidentemente, en un caso prctico sera posible incorporar los datos que se conozcan del sistema para facilitar tanto el modelado de la planta como el diseo del controlador borroso. Para disear un controlador para una planta desconocida se propone una metodologa de diseo consistente en los pasos siguientes [170, 233, 292]: 1. Identicacin de la planta y representacin en forma de modelo borroso de estado. 2. Estudio de la planta y obtencin de informacin dinmica de la misma a partir de su modelo borroso. 3. Diseo de un controlador borroso que garantice la estabilidad asinttica en lazo cerrado.

5.4.1. Identicacin de la planta


El primer paso antes de controlar un sistema es conocer su dinmica. Puesto que se parte de la premisa de que la nica informacin disponible sobre la planta es un histrico de datos de entrada/salida, se debe obtener un modelo de la misma en base a dichos datos. Los sistemas no lineales presentan dinmicas complejas que pueden ser difciles de modelar con tcnicas matemticas usuales, sin embargo, tal como se vio en el captulo 2, los modelos borrosos de tipo TakagiSugeno (TS o TSK) pueden emplearse para representar dinmicas complejas, ya que son aproximadores universales tanto de la funcin [210213] como de su derivada [214217]. Si se considera una planta multivariable completamente general, sin limitaciones en el tamao del vector de estado ni en el del vector de control, sta puede representarse por un conjunto de reglas borrosas como las mostradas en la expresin (3.12). Esta representacin facilita un modelo en forma de variables de estado del sistema, donde cada regla es completamente independiente del resto, y donde no se limita ni el tipo ni la distribucin de sus funciones de pertenencia. La identicacin de la estructura del modelo borroso se puede realizar mediante las tcnicas que se han presentado en la seccin 3.3.1, y la estimacin de sus parmetros adaptables mediante los algoritmos mostrados en 3.3.2. Una vez que el modelo borroso ha sido validado adecuadamente, ver seccin 3.3.3, se dispone de un modelo que puede representarse de forma lingstica y que reeja la dinmica del sistema con la precisin requerida. El modelo borroso obtenido puede emplearse tanto para estudiar la dinmica del sistema, como para disear un controlador que garantice su estabilidad asinttica. La implementacin y tratamiento de modelos borroso puede realizarse mediante el software desarrollado en las secciones 3.4 y 4.5, junto con MATLAB y la Fuzzy Logic Toolbox [286].

5.4.2. Estudio dinmico de la planta


El conocimiento de los estados de equilibrio que posee un sistema, as como la estabilidad de dichos estados, son datos que pueden resultar muy interesantes a la hora de analizar o disear un sistema de control. Si se parte de un sistema completamente desconocido, esta informacin puede aclarar en muchos aspectos el funcionamiento del mismo, as como facilitar el diseo de un sistema de control adecuado.

5.4

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

133

En el captulo 4 se presentaron las herramientas matemticas que se han desarrollado para extraer informacin de un modelo borroso, as como el software creado para tal n: linealizacin de un modelo borroso de estado, en la seccin 4.2; matriz jacobiana de un sistema de control borroso, en la seccin 4.3; y una metodologa para la obtencin de los estados de equilibrio del sistema, en la seccin 4.4. Empleando estas herramientas es posible, por ejemplo, identicar de forma aproximada los estados de equilibrio de un sistema a partir de su modelo borroso, y analizar su estabilidad local mediante la linealizacin del sistema en dichos puntos.

5.4.3. Diseo del controlador borroso


Como se vio en 3.2.1, un controlador multivariable completamente general, sin limitaciones ni en el tamao del vector de control ni en el vector de estado, puede denirse mediante el conjunto de reglas (3.34). El proceso de modelado de la planta y el de diseo del controlador se consideran completamente independientes, de forma que cada uno de los modelos borrosos podr tener un nmero distinto de reglas, distintas funciones de pertenencia, etc. Adems, al igual que sucede con la planta, cada regla se considera completamente independiente del resto, y no se limita ni el tipo ni la distribucin de sus funciones de pertenencia. Como se ha mencionado en este captulo, la teora de Lyapunov puede ser utilizada para analizar la estabilidad de los sistemas borrosos. De hecho, en la literatura se ha abordado tanto problemas de estabilizacin como de seguimiento con controladores de tipo TSK utilizando funciones de Lyapunov [229, 232, 270, 335, 336]; sin embargo, quizs el problema principal que aparece es encontrar la funcin de Lyapunov necesaria. El teorema de Krasovskii generalizado proporciona una funcin de Lyapunov para el sistema, e impone unas condiciones sucientes de estabilidad asinttica ms exibles que en su versin simplicada. Este teorema puede ser aplicado como herramienta de sntesis de controladores borrosos estables por diseo, es decir, que la estabilidad quede garantizada durante el propio proceso de diseo del controlador [168,233,292,293]. Aunque la idea puede parecer muy intuitiva, su puesta en prctica resulta compleja por varias razones: 1) se han de obtener las matrices P y Q necesarias para su comprobacin; 2) se debe establecer un algoritmo de ajuste de los parmetros adaptables del controlador borroso, de forma que se satisfaga la condicin sobre F(x(t)) que asegure la estabilidad asinttica del sistema; y 3) hay que tener en cuenta que, puesto que el teorema de Krasovskii debe satisfacerse en un entorno del estado de equilibrio, no basta con evaluarlo slo en dicho punto, sino que debe asegurarse su cumplimiento en una regin sucientemente amplia alrededor de dicho estado. Adems, la segunda razn dada ms arriba, requiere la obtencin de la matriz jacobiana del sistema de control borroso en lazo cerrado. No obstante lo anterior, estas dicultades estn resueltas de forma completamente general, incluso permitiendo la mezcla de distintos tipos de funciones de pertenencia en un mismo modelo [168, 231, 289]. El procedimiento se ha desarrollado completamente en el apartado 4.3. En problemas relativamente complejos, el espacio de soluciones que permiten el cumplimiento del teorema de Krasovskii en una regin sucientemente amplia alrededor del estado de equilibrio, es demasiado restrictivo. Por lo tanto, la utilizacin del teorema de Krasovskii, incluso en su versin generalizada, como metodologa general de diseo de controladores borrosos slo es viable en casos relativamente simples [168, 233, 292].

134

DISEO DE CONTROLADORES BORROSOS

5.4

Con objeto de utilizar la teora de Lyapunov para la resolucin de problemas de mayor complejidad que los que pueden abordarse mediante el teorema de Krasovskii, se propone el teorema siguiente: Teorema 5.7. Considrese el sistema autnomo general denido por3 : x = f (x), (5.16)

donde el estado de equilibrio de inters se sita, sin prdida de generalidad4 , en el origen de coordenadas, y sean s N regiones q , con q =1..s, denidas en el espacio de estado mediante s funciones continuamente diferenciables q (x) : Rn R1 , tal que q (x) C 1 . Sea J(x) la matriz jacobiana del sistema (5.16). Una condicin suciente para que el origen sea asintticamente estable es que existan s matrices simtricas denidas positivas, P1 , ..., Ps , tal que x = 0, la matriz
s

F(x) =
q =1

q (x) J(x)T Pq + Pq J(x) +


s q =1

dq (x) f (x)Pq dx

(5.17)

sea denida negativa en un entorno BV (0) caso, la funcin


s

q del origen de coordenadas. En este f (x) (5.18)

V (x) = f (x)

T q =1

q (x)Pq

es una funcin de Lyapunov del sistema (5.16). Adems, si la regin BV (0) es el espacio de estado completo y l m V (x) = , (5.19)
x

entonces el sistema es asintticamente estable de forma global. Demostracin. En primer lugar se debe garantizar que x = 0, V (x) > 0, ver (5.6), pero esto queda demostrado por el hecho de que q (x) 0 para todo x BV (0), siendo en cada punto del espacio de estado al menos una q (x) = 0, y que Pq son matrices denidas positivas para todo q = 1..s. Por otro lado, se puede armar tambin que la continuidad de las derivadas parciales de V (x), ecuacin (5.7), queda garantizada por la propia continuidad de las derivadas de q (x), ya que q (x) C 1 . (x) es denida negativa, ecuacin (5.7), se reescribe V (x) como Para demostrar que V
s

V (x) =
q =1

q (x)f (x)T Pq f (x) ,

(5.20)

y derivando se obtiene que: (x) = dV (x) = V dt


3

q (x)
q =1

dq (x) d f (x)T Pq f (x) + f (x)T Pq f (x) dt dt

(5.21)

La dependencia de las variables de estado con respecto al tiempo se han omitido en todo el desarrollo del teorema para simplicar la notacin y mejorar su claridad. 4 En el caso de que el estado de equilibrio no se situase en el origen de coordenadas, siempre ser posible establecer un cambio de base del sistema de coordenadas que lo site en dicha posicin.

5.4 Puesto que,

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

135

d f (x)T Pq f (x) df (x)T d Pq df (x) = Pq f (x) + f (x)T f (x) + f (x)T Pq , dt dt dt dt y df (x) df (x) = J(x)f (x), = x dt dx entonces d f (x)T Pq f (x) dPq = (J(x)f (x))T Pq f (x) + f (x)T f (x) + f (x)T Pq J(x)f (x). dt dt

(5.22)

(5.23)

(5.24)

Teniendo en cuenta que la matrices Pq son independientes del tiempo y del vector de estado, esto es: d Pq = 0, (5.25) dt y que la traspuesta de un producto de matrices es igual al producto de las traspuestas en orden permutado, es decir: (AB)T = BT AT , (5.26) la ecuacin (5.24) puede reescribirse como: d f (x)T Pq f (x) dt
 dPq = f (x)T J(x)T Pq f (x) + f (x)T f (x) + f (x)T Pq J(x)f (x) dt T T = f (x) J(x) Pq + Pq J(x) f (x).
0

(5.27)

Por otro lado, dq (x) dq (x) dq (x) = = f (x). x dt dx dx Sustituyendo las expresiones (5.27) y (5.28) en (5.21):
s

(5.28)

(x) = V
q =1

q (x)f (x)T J(x)T Pq + Pq J(x) f (x) +

dq (x) f (x) dx

f (x)T Pq f (x)

(5.29)

Como las funciones q (x) son funciones escalares, pueden permutar su posicin con f (x)T :
s

(x) = V
q =1

f (x)T q (x) J(x)T Pq + Pq J(x) f (x) +

dq (x) f (x) dx

f (x)T Pq f (x)

(5.30)

Lo mismo sucede con el producto dq (x) = dx

dq (x) f (x), ya que dx (5.31)


(1n)

q (x) q (x) q (x) , ,... x1 x2 xn

136 y

DISEO DE CONTROLADORES BORROSOS

5.4

(x) puede escribirse como de forma que V


s

f (x) =

x 1 x 2 . . . x n

(5.32)

(n1)

(x) = V
q =1

f (x)T q (x) J(x)T Pq + Pq J(x) f (x) + f (x)T

dq (x) f (x)Pq f (x) . dx

(5.33)

Finalmente, sacando f (x)T como factor comn a la izquierda, y f (x) a la derecha y extrayendo dichas funciones del sumatorio, ya que no dependen del ndice q , se obtiene la (x): expresin nal de V
s

(x) = f (x)T V
q =1

q (x) J(x)T Pq + Pq J(x) +

dq (x) f (x)Pq f (x). dx

(5.34)

Dada F(x) segn se dene en la ecuacin (5.17), la ecuacin anterior puede ser escrita como: (x) = f (x)T F(x)f (x). V (5.35) (x) tambin lo es, y Por lo tanto, queda demostrado que si F(x) es denida negativa, V V (x) es una funcin de Lyapunov del sistema (5.16). Nota. Obviamente, si la dinmica de la planta slo se conoce a travs de su modelo borroso obtenido mediante datos de entrada/salida, en ningn caso ser posible garantizar la estabilidad asinttica global del sistema, ya que se desconoce el comportamiento de ste fuera del universo de discurso de sus variables. As pues, la estabilidad asinttica slo podr garantizarse para aquellas trayectorias que cumplan el teorema 5.7 y permanezcan ntegramente dentro del universo de discurso. Esto es: Sea X el universo de discurso de las variables de estado y X su borde, y sean C1 , C2 R+ , (x) = 0} y C2 = m de forma que C1 = m n{V (x) | V n{V (x) | x X }. La estimacin ms conservadora sobre la regin de atraccin que contiene el estado de equilibrio situado en el origen, es aquella regin contenida en el universo de discurso de las variables de estado, X , en la que V (x) se comporta como una funcin de Lyapunov y que satisface la ecuacin (5.36). {x X | V (x) < min{C1 , C2}} (5.36)

Ntese que el signo menor estricto de la ecuacin (5.36) implica que la regin de atraccin no incluye su propio borde. Esto debe ser necesariamente as, ya que una trayectoria que se iniciase en el borde podra no converger hacia xe , por ejemplo, salindose del universo de discurso X .

5.4

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

137

x2 V (C1 ) > V (C2 ) X = BX (0) C2 xe C1 BV (0) x1 BX (0) (x) = 0 V

x2 V (C1 ) < V (C2 ) C2 X = BV (0) xe C1 x1 (x) = 0 V

Figura 5.4: Regin de atraccin, caso 1.

Figura 5.5: Regin de atraccin, caso 2.

Si el teorema 5.7 se cumple en todo el universo de discurso de las variables de estado, C1 quedar fuera de X , por lo que la regin de atraccin vendr determinada necesariamente por la curva de nivel V (C2 ). En las guras 5.4 y 5.5 se muestran grcamente las dos situaciones posibles. En el primer caso mostrado en la gura 5.4, la regin de cumplimiento del teorema 5.7, BV (0), no est estrictamente contenida en el universo de discurso X , es decir, V (C1 ) > V (C2 ), por lo que la regin de atraccin est determinada por todos los puntos del interior de la curva de nivel V (C2 ). Ntese que las trayectorias originadas en el exterior de dicha curva pueden salirse del universo de discurso de x y, por lo tanto, tener un comportamiento impredecible. En el segundo caso, mostrado en la gura 5.5, el teorema 5.7 se cumple en una regin BX (0) estrictamente contenida en el universo de discurso X , es decir, V (C1 ) < V (C2 ), por lo que la regin de atraccin est formada por todos los puntos que cumplen el teorema, o lo que es lo mismo, por todos los puntos del interior de la curva de nivel V (C1 ). Ntese que en el exterior y en el borde de dicha curva hay puntos donde V (x) no es una funcin de Lyapunov (x) 0. vlida, ya que V El teorema 5.7 demuestra que si la matriz F(x) dada por la expresin (5.17) es denida negativa en un entorno del origen de coordenadas, ste es asintticamente estable. Por lo tanto, el diseo del controlador borroso consiste en determinar un conjunto de parmetros adaptables del mismo, tanto antecedentes como consecuentes, y un conjunto de regiones q , de forma que F(x) sea denida negativa en un entorno sucientemente amplio alrededor del origen. La solucin de la condicin anterior no es un problema trivial, ya que en un modelo borroso intervienen gran cantidad de parmetros: el tipo de cada funcin de pertenencia y los parmetros que la denen, el tipo de consecuente y el valor de sus parmetros, el nmero de reglas, etc. Adems, no se ha establecido ninguna limitacin en las dimensiones del sistema, con lo que el vector de parmetros ajustables podra tener un tamao considerable. A todo esto es necesario aadir que durante el propio proceso de diseo hay que establecer las matrices Pq , as como las regiones q a partir de sus funciones de pertenencia q (x), pero a priori no se sabe cuntas regiones se deben denir ni se dispone de informacin para su determinacin.

138

DISEO DE CONTROLADORES BORROSOS

5.4

Para obtener la matriz F(x) denida en el teorema 5.7 es necesario calcular previamente el modelo borroso de estado en lazo cerrado, f (x), la matriz jacobiana del sistema, J(x), y la derivada de la funcin de denicin de las regiones con respecto a las variables de estado dq (x)/dx. El modelo borroso en lazo cerrado se puede calcular mediante la aplicacin del algoritmo 3.5, y la matriz jacobiana a travs del algoritmo 4.5, mientras que el clculo de dq (x)/dx depender de la denicin que se utilice para q (x). La pertenencia de cada punto del espacio de estado a cada una de las regiones q puede hacerse de forma borrosa, esto es, cada punto puede pertenecer a una o varias regiones con una grado de pertenencia comprendido entre 0 y 1, con lo cual, la particin del espacio de estado ser ms exible que si se hace de forma clsica (no borrosa). Para ello se dene la funcin de pertenencia a la regin q , como
n

q (x) =
i=1

iq (xi , iq ),

(5.37)

donde iq (xi , iq ) [0, 1] es una funcin de pertenencia de parmetros adaptables iq , con i = 1..n y q = 1..s, siendo n el orden del sistema y s el nmero de regiones denidas. La funcin q (x) es derivable respecto a x si iq (xi ) lo es i, q , y cumple q (x) : Rn R1 tal como exige el teorema. Observando la similitud de la expresin (5.37) con el grado de activacin de las reglas del controlador borroso, (3.37), es fcil deducir la expresin (5.38) a partir de (4.94). De esta forma ya se tienen todos los elementos necesarios para evaluar (5.17). iq (xi ) q (x) kq (xk ) = xi xi k=1,k=i
n

(5.38)

Al aplicar la teora de Lyapunov a travs del teorema 5.7 se garantiza la generalidad de la metodologa, ya que no se realizan linealizaciones ni simplicaciones de ningn tipo sobre el sistema, y la condicin que se impone es lo sucientemente exible como para que pueda ser satisfecha por sistemas complejos [170]. Una vez concluido el proceso de diseo del controlador, las mismas herramientas utilizadas para el estudio dinmico de la planta pueden emplearse para comprobar el funcionamiento del sistema de control borroso de lazo cerrado.

5.4.4. Algoritmo de diseo


En este apartado se presenta un algoritmo para el diseo del controlador borroso, de forma que, haciendo uso de la metodologa presentada anteriormente, se garantice la estabilidad del sistema de control en lazo cerrado. Con objeto de facilitar el diseo del controlador borroso, se divide el proceso de sntesis en tres fases generales: una fase de inicializacin , una fase de diseo y una fase nal de ajuste del estado de equilibrio [170]. En la fase de inicializacin se denen las regiones q mediante sus correspondientes funciones de pertenencia q (x), y se inicializan tanto las matrices Pq como el controlador borroso: nmero de reglas, antecedentes y consecuentes. Durante la fase de diseo se ajustan los parmetros del controlador, as como las matrices Pq hasta que se cumple el teorema 5.7, lo que garantiza la estabilidad asinttica del sistema de control

5.4

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

139

borroso en lazo cerrado. Por ltimo, en la fase nal se ajusta adecuadamente el estado de equilibrio del sistema en lazo cerrado. Fase de inicializacin Para el caso ms general, el modelo matemtico de la planta ser desconocido, y toda la informacin disponible sobre la dinmica del sistema residir en el modelo borroso que se realice de la planta. Por lo tanto, parece razonable inicializar el controlador borroso utilizando dicho conocimiento. Para ello, las reglas correspondientes a cada una de las m salidas del controlador se formulan empleando toda la base de conocimientos de la planta, es decir, cada una de las m salidas del controlador se calcularn mediante la inferencia de todas las reglas de la planta para cada una de las isimas ecuaciones de estado. De esta forma, la j -sima salida del controlador ser inferida por Nj = M1 + M2 + . . . + Mi reglas. En principio, este procedimiento puede parecer inadecuado porque provoca que el controlador tenga un gran nmero de reglas, m (M1 + M2 + . . . + Mi ), sin embargo, este hecho no representa un problema muy serio, ya que existen bastantes algoritmos en la literatura que pueden ser utilizados en el caso de que sea necesario reducir el nmero de reglas del controlador [263, 265, 266, 337, 338]. Una vez que se han denido los antecedentes del controlador borroso, stos permanecern constantes a los largo de todo el proceso de diseo, de esta forma nicamente se ajustarn los consecuentes de las reglas. Otro punto que debe resolverse durante la fase de inicializacin es la denicin de las regiones q involucradas en el teorema 5.7. El grado de pertenencia a una regla borrosa representa una regin del espacio de estado, la regin de cumplimiento de dicha regla, por lo que las reglas que se han denido para el controlador borroso pueden utilizarse para establecer las regiones q del teorema. De esta forma, el espacio de estado queda dividido en tantas regiones como reglas posea el controlador, es decir: s = M1 + M2 + . . . + Mi . (5.39)

Igualmente, para denir las funciones de pertenencia q (x) se puede emplear el grado de r activacin de las reglas del controlador borroso, j (x), cuyo clculo se realiza a partir de la ecuacin (3.37), repetida a continuacin por claridad:
n r j

=
k =1

r r kj (xk , kj )

(3.37)

Ntese que con la inicializacin propuesta anteriormente para el controlador borroso, sus r r r antecedentes cumplen 1 (x) = 2 (x) = . . . = m (x). Esto es, para cualquier valor de j , por ejemplo j = 1, q (x) puede obtenerse como
q q (x) = j (x),

(5.40) (5.41)

o lo que es equivalente, iq = q ij , para cualquier valor de j entre 1 y m.

140

DISEO DE CONTROLADORES BORROSOS

5.4

El ltimo paso que es necesario realizar durante la primera fase del algoritmo de diseo es la inicializacin de las matrices Pq . Puesto que se requiere que estas matrices sean denidas positivas, un posible valor para su inicializacin es la matriz identidad, esto es: Pq = I, q = 1..s. (5.42)

La fase de inicializacin del algoritmo de diseo se puede sintetizar en el algoritmo mostrado en la gura 5.6.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:

Inicializacin del controlador : Para j = 1..m hacer r=1 Para i = 1..n hacer Para l = 1..Mi hacer Para k = 1..n hacer r r Ckj = Al ki {Inicializacin de los antecedentes j (x)} ckj = 0 {Inicializacin de los consecuentes} Fin Para c0j = 0 {Inicializacin de los trminos anes de los consecuentes} r =r+1 Fin Para Fin Para Fin Para Inicializacin de las matrices Pq y denicin de las regiones q : Para q = 1..s hacer Pq = I j=1 Para i = 1..n hacer q iq = q ij {Denicin de las regiones q , resultando q (x) = 1 (x)} Fin Para Fin Para
Figura 5.6: Algoritmo de inicializacin.

Fase de diseo Durante la fase de diseo deben obtenerse unos valores para los parmetros de los consecuentes del controlador borroso y para las matrices Pq que impliquen el cumplimiento del teorema 5.7. En todo momento es imprescindible garantizar que las matrices Pq sean denidas positivas. Para ello puede emplearse la descomposicin de Cholesky, descrita ms detalladamente en el apndice C, la cual establece que P q = TT q Tq , (5.43)

es una matriz simtrica denida positiva, si Tq es una matriz triangular superior donde todos los elementos de su diagonal son positivos, es decir, si Tq tiene la forma dada en la ecuacin (5.44).

5.4

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

141

La utilizacin de la descomposicin de Cholesky permite garantizar que Pq es denida positiva de forma sencilla. Adems, si se utiliza la matriz Tq de la descomposicin de Cholesky como matriz ajustable durante el desarrollo del algoritmo, el nmero de parmetros ajustables se reduce desde los n2 parmetros que conforman todos los elementos de Pq , a los n(n + 1)/2 parmetros que es necesario establecer para construir la matriz Tq , siendo n el orden del sistema. El teorema 5.7 debe satisfacerse de forma continua en una regin BV (0) alrededor del estado de equilibrio, es decir, en los innitos puntos contenidos en la regin BV (0). Sin embargo, desde el punto de vista prctico es necesario discretizar dicho espacio y evaluar el cumplimiento del teorema en un nmero nito de puntos. Si el hecho de que F(x) sea denida negativa se evala de forma discreta, el cumplimiento de la condicin F(x) < 0 no es suciente para garantizar que V (x) sea una funcin de Lyapunov vlida para el sistema, y por lo tanto, que el origen sea asintticamente estable. No obstante, se demuestra [339] que si se cumple F(x) < 0 en un conjunto nito sucientemente denso de puntos y f (x), q (x) y dq (x)/dx son funciones acotadas y localmente funciones de Lipschitz5 , entonces V (x) es una funcin de Lyapunov vlida para todo x BV (0). Para el diseo del controlador borroso se ha utilizado un algoritmo iterativo que impone el cumplimiento del teorema 5.7 en una regin lo ms amplia posible alrededor del estado de equilibrio. Si como algoritmo de diseo se utiliza un algoritmo de minimizacin, se requiere disponer de una funcin a minimizar que represente el cumplimiento de dicho teorema. En la gura 5.7 se muestra un algoritmo para el clculo de la funcin objetivo, que hace uso del mximo autovalor de la matriz F(x), siempre que ste sea positivo, para medir el cumplimiento del teorema 5.7. El mnimo valor de la funcin objetivo propuesta, Objetivo = 0, se produce cuando el mayor de los autovalores de F(x) es menor que , siendo un nmero positivo pequeo. Por lo tanto, cuando la funcin objetivo es nula, F(x) es denida negativa y el teorema queda satisfecho en todos los puntos evaluados, resultando un sistema asintticamente estable. Dada la complejidad del problema y el gran nmero de parmetros que deben ser ajustados, adems de la alta no linealidad que puede llegar a presentar la funcin a minimizar, un algoritmo numrico difcilmente convergera hacia una solucin vlida. Por lo tanto, la utilizacin de un algoritmo de minimizacin global y alta capacidad de exploracin, como por ejemplo un algoritmo gentico, puede resultar muy interesante. No obstante, los algoritmos globales de minimizacin genticos suelen presentar una velocidad de convergencia bastante lenta, incluso cuando parten de un punto cercano a una solucin, en contraposicin con los algoritmos numricos, cuya velocidad de convergencia puede ser muy alta si parten de
5

Tq =

q tq 11 t12

tq 1n

0 . . . 0

tq 22 . . . 0

.. .

tq 2n

tq nn

q , t > 0, i = 1..n. ii . . .

(5.44)

Una funcin f : M N se dice que es de Lipschitz en una regin R, si existe una constante L > 0, llamada constante de Lipschitz, tal que para cualesquiera que sean x e y en R, se cumple que f (x) f (y ) L( x y ).

142
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:

DISEO DE CONTROLADORES BORROSOS

5.4

Objetivo = 0 Para todo los Puntos hacer Calcular f (x), mediante el algoritmo 3.5 Calcular J(x), mediante el algoritmo 4.5 Calcular q (x), ecuacin (5.40) Calcular dq (x)/dx, ecuacin (5.38) Calcular F(x), ecuacin (5.17) Si mximo_autovalor(F(x)) > entonces Objetivo = Objetivo + mximo_autovalor(F(x)) + { > 0 es valor pequeo que garantiza que F(x) sea estrictamente denida negativa.} Fin Si Fin Para
Figura 5.7: Funcin objetivo.

1: 2: 3: 4: 5: 6:

Mientras (Objetivo > 0) hacer Algoritmo global para la minimizacin de la funcin objetivo de la gura 5.7 Si (Objetivo > 0) entonces Algoritmo local para la minimizacin de la funcin objetivo de la gura 5.7 Fin Si Fin Mientras
Figura 5.8: Algoritmo hbrido de minimizacin.

una posicin inicial adecuada. Teniendo en cuenta sto, se ha empleado el algoritmo hbrido globallocal de minimizacin mostrado en la gura 5.8. Los algoritmos de minimizacin global y local empleados en el algoritmo hbrido de la gura 5.8 no necesitan de un diseo especco, por lo que pueden utilizarse cualquiera de los mltiples algoritmos existentes en la literatura de eciencia ya contrastada. Ms concretamente, en la implementacin desarrollada en este trabajo se ha empleado un algoritmo gentico bsico [340] para la minimizacin global, y el algoritmo numrico de minimizacin de NelderMead [341], capaz de obtener buenos resultados incluso en problemas altamente no lineales, para la minimizacin local. Fase nal Al no aplicarse de forma continua la condicin de estabilidad establecida en el teorema 5.7, el estado de equilibrio obtenido puede estar desplazado del origen. Para corregir esta situacin, una vez concluida la fase de ajuste se ejecuta una nueva iteracin del algoritmo hbrido de minimizacin globallocal, pero para minimizar la funcin Feq dada por la expresin (5.45). El valor de Objetivo viene determinado por el algoritmo 5.7, mientras que representa una constante positiva cuyo valor ha de ser bastante alto para garantizar que la estabilidad del sistema conseguida en la fase de ajuste no se vea afectada por este ajuste del estado de equilibrio. Feq = f (0)
1

+ Objetivo

(5.45)

5.5

CONCLUSIONES Y COMENTARIOS BIBLIOGRFICOS

143

Un valor apropiado para el factor es aquel que penaliza sucientemente cualquier valor distinto de cero de Objetivo en la expresin (5.45). Por lo tanto, el ajuste del controlador en esta ltima fase se hace slo y exclusivamente minimizando la distancia6 del estado de equilibrio del sistema con respecto al origen de coordenadas del mismo, es decir, minimizando f (0) 1 . El valor adecuado de puede variar en funcin del sistema que se disee y del nmero de puntos utilizados, aunque un valor de = 106 suele ser suciente en la mayora de los casos.

5.5. Conclusiones y comentarios bibliogrcos


Aunque en los inicios de la lgica borrosa se critic bastante su escasa formalizacin, como puede comprobarse en [305], a lo largo de este captulo se ha visto que desde entonces se ha avanzado mucho en este aspecto. En las referencias [100], [121], [175], [227], de [306] a [331], [335] y [336] pueden estudiarse mltiples tcnicas de anlisis y sntesis de controladores borrosos, basadas en su mayor parte en la teora de control no lineal. La capacidad innata de la lgica borrosa para transferir el conocimiento de un experto a un controlador borroso que opere de forma autnoma fue una de las caractersticas ms atrayentes en sus inicios. En la segunda seccin del captulo se ha visto cmo disear un controlador borroso mediante sntesis lingstica en base al conocimiento de un experto. En las referencias [28], [171], [262] y [333] se puede estudiar ms a fondo esta tcnica y consultar algunos ejemplos prcticos. En este captulo se ha propuesto una metodologa formal y completamente general que permite la sntesis de sistemas de controladores borrosos estables por diseo, es decir, donde la estabilidad del sistema en lazo cerrado queda garantizada por el propio proceso de diseo del controlador borroso. Esta metodologa se basa en 3 pasos: 1) identicacin de la planta a partir de datos de entrada/salida; 2) extraccin de informacin de la dinmica de la planta mediante la obtencin de sus estados de equilibrio, el estudio de la estabilidad local de stos mediante la linealizacin del modelo borroso de la planta; y 3), diseo de un controlador borroso que garantice la estabilidad de lazo cerrado del sistema. Los dos primeros puntos de esta metodologa han sido fruto del estudio realizado en los captulos anteriores, mientras que el diseo del controlador se basa en el teorema de estabilidad 5.7, propuesto y demostrado en este mismo captulo y en el artculo [170]. La metodologa propuesta en este captulo puede consultarse en las referencias [168], [170], [233] y [292]. Finalmente se propone un algoritmo de diseo para, a partir del teorema propuesto, disear un controlador que asegure la estabilidad del sistema de control borroso en lazo cerrado. El algoritmo propuesto tambin permite el diseo en base al teorema de Krasovskii, ya que es una generalizacin de ste. Puede ampliarse informacin sobre la metodologa de diseo basada en el teorema de Krasovskii en las referencias [168], [233], [292] y [293]. En las referencias [210] a [217] se demuestra que los modelos borrosos de tipo TSK son aproximadores universales de cualquier funcin y de su derivada, lo que permite que la metodologa propuesta pueda considerarse de aplicacin a cualquier planta.
6

Como medida de distancia se propone emplear la norma 1, 1 , ya que su clculo es ms eciente que el de otras normas. En cualquier caso, si se desea, es posible utilizar cualquier otra medida de distancia, como la norma eucldea, 2 , o la norma innito, .

144

DISEO DE CONTROLADORES BORROSOS

5.5

Como base tanto para el algoritmo de diseo del controlador, como para la mejora del algoritmo de extraccin de los estados de equilibrio de la planta, se utiliza la matriz jacobiana del sistema de control borroso. El clculo de la matriz jacobiana se estudi en el captulo 4 y puede consultarse tambin en las referencias [168], [231] y [289]. En las referencias [263] a [266], [337] y [338] pueden ser consultados distintos algoritmos de simplicacin de modelos borrosos, lo cual puede ser til si se desea reducir el nmero de reglas tanto de la planta como del controlador borroso. Por ltimo, como algoritmo de optimizacin global y local se ha propuesto la utilizacin de un algoritmo gentico y un algoritmo numrico, respectivamente. En las referencias [340] puede estudiarse un algoritmo gentico de optimizacin, y en [341] el algoritmo de minimizacin de NelderMead.

Cap tulo

Aplicaciones

ste captulo aborda el anlisis y diseo de sistemas de control borroso a partir de las tcnicas presentadas en los captulos anteriores. El captulo se divide en tres secciones. La primera de ellas se dedica al control heurstico. En esta seccin se disea un controlador borroso para una gra porta contenedores a partir del conocimiento de un experto, y se comprueba mediante simulacin el correcto funcionamiento del mismo. La segunda seccin est dedicada a la sntesis de controladores borrosos estables por diseo. En esa seccin se realizan tres ejemplos que siguen la metodologa de diseo presentada en el captulo 5, esto es, partiendo de un conjunto de datos de entrada/salida se obtiene un modelo borroso de la planta, la cual se considera desconocida en todo momento. A partir del modelo borroso obtenido se calculan los estados de equilibrio de la planta, y se estudia la estabilidad local de los mismos. Posteriormente se disea un controlador que garantice la estabilidad del sistema en lazo cerrado. Para comprobar el correcto funcionamiento del controlador borroso diseado, se realiza una simulacin del sistema y se obtienen los estados de equilibrio del sistema de control borroso en lazo cerrado, comprobando de nuevo su estabilidad local. Los tres ejemplos realizados en esta seccin son: un ejemplo ilustrativo de mltiple entrada y mltiple salida (MIMO), que pretende facilitar la compresin de la metodologa de diseo propuesta; un pndulo, que representa un sistema no lineal con mltiples estados de equilibrio, cuyo objetivo es demostrar la validez de la fase de anlisis y diseo; y un balancn, que representa un sistema no lineal de uso comn en la literatura relacionada con sistemas no lineales. Finalmente, en la tercera y ltima seccin se recogen las principales conclusiones de este captulo.

6.1. Control heurstico


En esta seccin se aborda el diseo de un controlador borroso basado en heurstica para una gra porta contenedores [171]. Para ello se emplea la metodologa presentada en la seccin 5.3, donde las reglas heursticas son inferidas a partir del conocimiento de la dinmica de la planta y de su manejo por un operario experto. 145

146

APLICACIONES

6.1

Figura 6.1: Gra porta contenedores.

6.1.1. Control borroso basado en heurstica de una gra porta contenedores


Las gras porta contenedores, como la que se muestra en la gura 6.1, son usadas en muchos puertos para cargar y descargar contenedores hacia y desde barcos de transporte especiales. Los contenedores quedan jados mediante cables exibles montados en la cabeza de la gra, lo que provoca que cuando ste se levanta y la cabeza de la gra comienza a moverse, el contenedor empiece a balancearse. Este balanceo, si bien puede no ser un problema durante el transporte del contenedor, s lo es para poder dejar caer el contenedor en el barco. Los gruistas expertos compensan el balanceo con avances y retrocesos a partir del control continuo de velocidad del motor de la cabeza de la gra, hasta posicionar el contenedor en el sitio exacto. La solucin para la automatizacin de este problema de control no es trivial, ya que el comportamiento de la planta es sensiblemente no lineal y las perturbaciones tales como rachas de viento son imprevisibles. A pesar de esto, un operador experimentado es capaz de controlar la gra basndose en su experiencia, sin necesidad de utilizar complejas ecuaciones diferenciales. Por lo tanto, este problema parece apropiado para ser abordado desde el punto de vista de la lgica borrosa mediante la incorporacin del conocimiento de un experto, el gruista [171]. Para la realizacin del controlador borroso se ha optado por un modelo de tipo Mamdani, ver las secciones 2.3.5 y 3.2.2, y un enfoque de diseo basado en heurstica, ver seccin 5.3, inferida a partir de dos fuentes de informacin: conocimiento de la dinmica de la planta y conocimiento de su manejo por un operario experto. Respecto del conocimiento de la planta, sta puede verse de forma esquemtica en la gura 6.2. Las variables que intervienen en el problema son las siguientes: J1 , momento de inercia del motor del carro; b1 , radio equivalente del tambor del motor del carro; J2 , momento de inercia del motor de la gra; b2 , radio equivalente del tambor del motor de la gra; m, masa del carro; M , masa de la carga del contenedor; y g , aceleracin de la gravedad (9,81ms2 ). Las variables de salida del sistema son: d(t), posicin del carro; l(t), longitud del cable; y (t), ngulo de balanceo de la carga. Junto a ellas, y respecto del problema del control,

6.1

CONTROL HEURSTICO

147

b2 T2 (t) J2 b1 T1 (t) J1 m d(t) (t) M l(t)

Figura 6.2: Representacin esquemtica de una gra porta contenedores.

(t), l(t) y (t). Las entradas pueden ser consideradas sus velocidades respectivas, esto es, d son: T1 (t), el par generado por el motor del carro; y T2 (t), el par generado por el motor de la gra. Diseo del controlador borroso A partir del conocimiento de la planta se han denido los siguientes conjuntos borrosos tanto para la posicin, d, como para la longitud, l: origen, media, cerca, objetivo y correccin, donde el valor correccin indica que la gra se ha pasado del objetivo. Ha de tenerse en cuenta que aunque los conjuntos borrosos que denen d y l tienen los mismos trminos lingsticos, varan un poco sus valores, ver guras 6.3 y 6.4. Para la variable ngulo, , se han denido los siguientes conjuntos borrosos: positivo_grande, positivo_pequeo, cero, negativo_pequeo y negativo_grande, ver gura 6.5. y l respectivamente, Finalmente, para las velocidades de las variables posicin y longitud, d se han tomado los conjuntos: neg_media, neg_pequea, cero, pos_pequea, pos_media y pos_grande, ver gura 6.6. Para las variables de control, se han elegido tambin funciones de pertenencia gaussianas para los siguientes conjuntos borrosos: neg_alta, neg_media, cero, pos_media y pos_alta, ver guras 6.7 y 6.8 para T1 y T2 , respectivamente. Ntese que los conjuntos borrosos que denen los mismos trminos lingsticos de T1 y T2 tienen valores distintos, aunque se hayan utilizado los mismos trminos lingsticos para ambas variables. Del conocimiento de la planta y de la observacin de la operacin del experto (gruista), se pueden deducir una serie de pautas que permiten denir una estrategia de control, por ejemplo, entre otras: Arrancar a media potencia.

148

APLICACIONES

6.1

1 0 ,9 0 ,8 0 ,7 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0

origen

media

cerca

objetivo

correccin

10

15

20

25 d(t) (m)

30

35

40

45

50

Figura 6.3: Funciones de pertenencia para la variable posicin, d.

1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0

origen

media

cerca

objetivo

correccin

10

15 l (m)

20

25

30

35

Figura 6.4: Funciones de pertenencia para la variable longitud del cable, l.

6.1

CONTROL HEURSTICO

149

negativo_grandenegativo_pequeo 1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 0,08 0,06 0,04 0,02

cero

positivo_pequeo positivo_grande

0 (rad)

0,02

0,04

0,06

0,08

Figura 6.5: Funciones de pertenencia para la variable ngulo, .

neg_media neg_pequea 1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 0,6 0,4 0,2

cero

pos_pequea

pos_media

pos_grande

0,2 d, l (m/s)

0,4

0,6

0,8

y l. Figura 6.6: Funciones de pertenencia para las variables d

150

APLICACIONES

6.1

negativa_alta 1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 2 1,5

negativa_media

cero

positiva_media

positiva_alta

0,5

0,5

1,5

T1 (102 Nm)

Figura 6.7: Funciones de pertenencia para T1 .

negativa_alta negativa_media 1 0 ,9 0 ,8 0 ,7 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 6 4 2

cero

positiva_media

positiva_alta

0 T2 (103 Nm)

Figura 6.8: Funciones de pertenencia para T2 .

6.1

CONTROL HEURSTICO

151

Durante el recorrido y hasta prximo a la posicin nal, la cabeza de la gra puede ir por delante del contenedor. Aceleraciones bruscas enlentecen el proceso porque para equilibrar el contenedor hay que realizar varios cambios del sentido de la marcha continuos. Cuando la cabeza de la gra est cerca del objetivo hay que enlentecer la marcha de modo que al nal el contenedor llegue casi sin oscilaciones. Cuando la cabeza de la gra est en el objetivo y el cable no tiene balanceo, se para el motor del carro y se activa el de la polea de descenso. A partir de, entre otras, estas consideraciones, y tras diferentes pasos de renamiento, se dene la siguiente base de reglas que generan las dos seales de control, T1 y T2 , que gobiernan, respectivamente, el motor de traccin del carro de la gra sobre la horizontal, y el motor de enrolle/desenrolle del cable: Para T1 :
R1: R2: R3: R4: R5: R6: R7: R8: R9: R10: R11: R12: R13: R14: R15: R16: R17: R18: R19: R20: R21: no es pos_pequea ENTONCES T1 es pos_media. SI l es origen y d es origen y d es pos_grande ENTONCES T1 es neg_media. SI l es origen y d es media y d es pos_pequea ENTONCES T1 es cero. SI l es origen y d es media y d es pos_pequea ENTONCES T1 es pos_media. SI l es origen y d es media y d es pos_pequea ENTONCES T1 es neg_media. SI l es origen y d es cerca y d es pos_pequea ENTONCES T1 es cero. SI l es origen y d es cerca y d es cero ENTONCES T1 es pos_media. SI l es origen y d es cerca y d es neg_pequea ENTONCES T1 es pos_media. SI l es origen y d es cerca y d es neg_media ENTONCES T1 es pos_alta. SI l es origen y d es cerca y d es pos_pequea ENTONCES T1 es pos_alta. SI d es objetivo y d es pos_pequea ENTONCES T1 es neg_media. SI d es objetivo y d es cero ENTONCES T1 es cero. SI d es objetivo y d es neg_pequea ENTONCES T1 es pos_media. SI d es objetivo y d es neg_media ENTONCES T1 es pos_alta. SI d es objetivo y d es pos_pequea ENTONCES T1 es neg_alta. SI d es correccin y d es pos_pequea ENTONCES T1 es neg_alta. SI d es correccin y d es cero ENTONCES T1 es neg_media. SI d es correccin y d es neg_pequea ENTONCES T1 es cero. SI d es correccin y d es neg_media ENTONCES T1 es pos_media. SI d es correccin y d SI es negativo_grande ENTONCES T1 es neg_alta. SI es positivo_grande ENTONCES T1 es pos_alta.

152

APLICACIONES

6.1

Para T2 :
R1: R2: R3: R4: R5: R6: R7: R8: R9: R10: R11: R12: R13: R14: R15: R16: R17: R18: R19: R20: R21: R22: R23: R24: R25: SI l es pos_grande ENTONCES T2 es neg_media. SI d es origen y l es origen ENTONCES T2 es cero. SI d es origen y l es media ENTONCES T2 es neg_media. SI d es origen y l es cerca ENTONCES T2 es neg_media. SI d es origen y l es objetivo ENTONCES T2 es neg_media. SI d es origen y l es correccin ENTONCES T2 es neg_media. SI d es origen y l es neg_media ENTONCES T2 es pos_media. SI d es objetivo y l es origen y x5 es cero ENTONCES T2 es pos_media. SI d es objetivo y l es media y l es pos_media ENTONCES T2 es cero. SI d es objetivo y l es media y l es pos_pequea ENTONCES T2 es pos_media. SI d es objetivo y l es cerca y l es pos_media ENTONCES T2 es neg_media. SI d es objetivo y l es cerca y l es pos_pequea ENTONCES T2 es cero. SI d es objetivo y l es cerca y l es cero ENTONCES T2 es pos_media. SI d es objetivo y l es cerca y l es neg_pequea ENTONCES T2 es pos_media. SI d es objetivo y l es cerca y l es neg_media ENTONCES T2 es pos_media. SI d es objetivo y l es objetivo y l es pos_media ENTONCES T2 es neg_media. SI d es objetivo y l es objetivo y l es pos_pequea ENTONCES T2 es neg_media. SI d es objetivo y l es objetivo y l es cero ENTONCES T2 es cero. SI d es objetivo y l es objetivo y l es neg_pequea ENTONCES T2 es pos_media. SI d es objetivo y l es objetivo y l es neg_media ENTONCES T2 es pos_media. SI d es objetivo y l es correccin y l es pos_media ENTONCES T2 es neg_media. SI d es objetivo y l es correccin y l es pos_pequea ENTONCES T2 es neg_media. SI d es objetivo y l es correccin y l es cero ENTONCES T2 es neg_media. SI d es objetivo y l es correccin y l es neg_pequea ENTONCES T2 es cero. SI d es objetivo y l es correccin y l es neg_media ENTONCES T2 es pos_media.

Puesto que al nal del proceso de inferencia se ha de actuar tanto sobre el motor de la gra como sobre el del carro, cada componente de la seal de control debe ser desborrosicada para adquirir un valor concreto. Aplicando el mtodo de inferencia producto y el desborrosicador centropromedio, o centroide, cada una de las seales de control viene determinada por:

6.1

CONTROL HEURSTICO

153

l) = Tj (d, l, , d,

i=1 N

wi Tjk (6.1) wi

i=1

donde wi es el grado de cumplimiento de la regla i-sima, N el nmero de reglas, j = 1, 2 el nmero de la componente de la seal de control y k = 1..5 indica el k simo conjunto borroso en cada universo de discurso de cada Tj . Es decir, Tjk es el par para el que se produce el valor mximo del conjunto borroso de salida en la regla correspondiente. Simulacin Una vez diseado el controlador borroso, su prueba y el anlisis formal del comportamiento del sistema en lazo cerrado se puede realizar mediante simulacin, para lo cual es necesario un modelo matemtico de la planta. El modelo matemtico de una gra porta contenedores est dado por [342]: = u1 1 u2 + 1 g d l = 2 u1 + u2 (6.2)

= 1 (u1 1 u2 + (1 + 1 )g + 2l ), l donde las variables son las mostradas en la gura 6.2 y los parmetros 1 , 2 y las seales de control u1 y u2 estn denidos como: Mb2 1 , 1 = J1 + mb2 1 b1 T1 u1 = , J1 + mb2 1 Mb2 2 2 = , J2 + Mb2 2 b2 (T2 + Mb2 g ) u2 = . J2 + Mb2 2

(6.3)

Para un sistema prctico, los valores de los parmetros pueden estar dados por: J1 = 3, 75 Kg m2 , b1 = 1, 44 102 m, J2 = 78, 5 Kg m2 , y b2 = 1, 22 102 m. , x3 = l, x , el modelo Si se denomina x1 = d, x2 = x 1 = d 3 = l = x4 , x5 = , x6 = x 5 = (6.2) puede ser escrito como el modelo de estado (6.4). x 1 (t) = x2 (t) x 2 (t) = u1 (t) 1 u2 (t)x5 (t) + 1 gx5 (t) x 3 (t) = x4 (t) (6.4) x 4 (t) = 2 u1 (t)x5 (t) + u2 (t) x 5 (t) = x6 (t) x 6 (t) = 1 (u1 (t) 1 u2(t)x5 (t) + (1 + 1 )gx5 (t) + 2x4 (t)x6 (t)) x3 (t)

154

APLICACIONES

6.1

El vector de estado tiene por componentes: x1 , x2 , x3 , x4 , x5 y x6 que representan, respectivamente, el desplazamiento horizontal, la velocidad de desplazamiento horizontal, el desplazamiento vertical, la velocidad de desplazamiento vertical, el ngulo de balanceo y su velocidad angular. Equilibrios del sistema Igualando a 0 la ecuacin (6.4), se tiene que los estados de equilibrio del sistema son todos aquellos puntos de la forma (deq , 0, leq , 0, 0, 0). Esto es, si el brazo de la gra est a una distancia deq y el cable est enrrollado a una longitud leq y no se aplica energa alguna ni hay perturbaciones externas (viento por ejemplo), el sistema permanecer en esa posicin indenidamente. La matriz jacobiana del sistema evaluada en los puntos de equilibrio es: 0 1 0 0 0 0 0 0 0 0 ( g u ) 0 1 2 0 0 0 1 0 0 J(deq , 0, leq , 0, 0, 0) = (6.5) 0 0 0 0 2 u1 0 0 0 0 0 0 1 1 1 0 0 l2 u1 0 leq [1 u2 + (1 + 1 )g ] 0
eq

donde, tal como muestra (6.3), se considera que u no depende de las coordenadas del vector de estado. Esta matriz tiene un autovalor cero doble, lo que da una idea de la complejidad del sistema. Comportamiento del sistema en lazo cerrado

Introduciendo la expresin del controlador borroso diseado (6.1) en el sistema (6.4), se obtiene la expresin del sistema en lazo cerrado. Esta expresin permite realizar diferentes simulaciones para evaluar el comportamiento del controlador. En las guras 6.9 a 6.14 se muestran los resultados de la simulacin para las condiciones de funcionamiento siguientes: distancia a recorrer por el carro 37 m y longitud del cable hasta depositar el contenedor en el barco 30 m. Ntese que sin haber tenido en cuenta, por no ser en la elaboracin de las bases de algo trivial ni intuitiva para el experto, la inuencia de reglas de T1 y T2 , los resultados de las simulaciones muestran un comportamiento satisfactorio del sistema de control desarrollado, el cual, a partir de diferentes condiciones iniciales, es capaz de realizar el trabajo del grusta en un tiempo razonable. Ntese cmo a partir de diferentes condiciones iniciales el contenedor se deposita en el barco en aproximadamente 2 minutos1
1

Un paso siguiente no considerado en este trabajo sera tener en cuenta la inuencia de perturbaciones externas, fundamentalmente el viento, lo cual obligara a modicar las bases de reglas de T1 y T2 . Evidentemente, para este caso el modelo que se ha utilizado para realizar las simulaciones (6.2) ya no sera vlido.

6.1

CONTROL HEURSTICO

155

40 35 30 25 20 15 10 5 0 5 0 20 40 60 80 100 120 140 160 180 200

Tiempo (s)

Figura 6.9: Evolucin de la variable de estado x1 (t).

0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 0,1 0,2 0,3 0 20 40 60 80 100 120 140 160 180 200

Tiempo (s)

Figura 6.10: Evolucin de la variable de estado x2 (t).

156

APLICACIONES

6.1

35 30 25 20 15 10 5 0

20

40

60

80

100

120

140

160

180

200

Tiempo (s)

Figura 6.11: Evolucin de la variable de estado x3 (t).

0 ,8 0 ,6 0 ,4 0 ,2

0 0,2 0,4 0,6

20

40

60

80

100

120

140

160

180

200

Tiempo (s)

Figura 6.12: Evolucin de la variable de estado x4 (t).

6.1

CONTROL HEURSTICO

157

0,015 0,01 0,005 0 0,005 0,01 0,015 0,02 0,025 0,03 20 40 60 80 120 140 160 180 200

100

Tiempo (s)

Figura 6.13: Evolucin de la variable de estado x5 (t).

0,04 0,03 0,02 0,01 0 0,01 0,02 0,03 0,04

20

40

60

80

100

120

140

160

180

200

Tiempo (s)

Figura 6.14: Evolucin de la variable de estado x6 (t).

158

APLICACIONES

6.2

Como se ha visto, a partir del conocimiento de la planta y de su manejo por un operador experto, se puede disear la base de reglas de un controlador borroso que gobierne dicha planta de forma adecuada, y sin necesidad de realizar un modelo de la misma. En este caso, un sistema no lineal muy complejo e inestable que requiere para su manejo ptimo de grustas expertos, como es la gra porta-contenedores, puede controlarse a partir de 5 variables medidas (distancia del carro horizontal, velocidad del carro, cantidad de cable colgante, velocidad de enrolle o de desenrolle del cable y ngulo del cable colgante sobre la horizontal), mediante dos seales de control dadas por la ecuacin (6.1), que actan sobre el motor de traccin del carro de la gra y sobre el motor de enrolle/desenrolle del cable.

6.2.

Sntesis de controladores borrosos estables por diseo

En esta seccin se desarrollan varios ejemplos de diseo de controladores borrosos segn la metodologa presentada en el apartado 5.4. Para todos los diseos mostrados se ha manteniendo la hiptesis de partida planteada en dicha seccin, es decir, que la dinmica de la planta es completamente desconocida y el nico conocimiento que se posee es un histrico de datos de entrada/salida. En todos los casos planteados el modelo matemtico (exacto) de la planta realmente s es conocido, aunque tan slo ser utilizado para la obtencin de una base de datos de entrada/salida. Esto es, en una planta real el proceso consistira en aplicar seales a su entrada y medir los valores de las variables de inters como respuesta a estas entradas. Mediante estos datos se procede a la identicacin de un modelo borroso a partir del cual se realiza todo el proceso de diseo. Siguiendo con el esquema de este texto, en las siguientes aplicaciones se estudian paso a paso cada una de las etapas del proceso de diseo presentado en el apartado 5.4. Se comienza por el modelado de la planta a partir de datos de entrada/salida (captulo 3), a continuacin se estudian los estados de equilibrio de la planta a partir de su modelo borroso (captulo 4) y se disea un controlador borroso que garantice la estabilidad del sistema de control en lazo cerrado (captulo 5). Finalmente, se puede realizar un nuevo anlisis de los estados de equilibrio del sistema, ahora sobre el sistema de control borroso en lazo cerrado (captulo 4). De esta forma es posible comprobar la existencia de un nico estado de equilibrio tras la aplicacin del controlador borroso, as como su estabilidad. Nota. En los siguientes ejercicios todas las simulaciones se han realido realimentando la seal de control generada por el controlador borroso con la planta real, es decir, con el modelo matemtico exacto de sta. De esta forma se garantiza el correcto funcionamiento del controlador borroso con el sistema real, en vez de con el modelo borroso que se ha utilizado para su diseo.

6.2.1. Ejemplo ilustrativo


Sea el siguiente sistema no lineal representado mediante su modelo de estado: x 1 (t) = x1 (t) + 2x2 (t) + u1 (t) x 2 (t) = x1 (t) 2x3 2 (t) + u2 (t), (6.6)

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

159

donde se dene el vector de estado como: x(t) = y el vector de control como: u(t) = u1 (t) u2 (t) ; (6.8) x1 (t) x2 (t) , (6.7)

y sea el universo de discurso de las variables de estado y control: X {x | x [10, 10]} y U {u | u [50, 50]} , (6.10) (6.9)

respectivamente. El sistema (6.6) es un sistema MIMO (MultipleInputMultipleOutput ) no lineal relativamente sencillo, cuyo objetivo es mostrar la metodologa presentada en la seccin 5.4. La sencillez del sistema permite que sea modelado mediante pocas reglas, y de esta forma se facilita la comprensin de cada uno de los pasos propuestos en la metodologa de diseo desarrollada. Puesto que se supone que la dinmica de la planta es desconocida, el primer paso es obtener un modelo borroso del sistema a partir de datos de entrada/salida del mismo. Antes de iniciar la fase de identicacin se han obtenido 1250 pares de datos de entrada/salida para cada una de las salidas del sistema (6.6), de forma que 1000 datos (el 80 %) se emplean en el proceso de modelado y 250 (el 20 % restante) en el de validacin. Ntese que el modelo (6.6) se ha utilizado slo y exclusivamente para generar el conjunto de datos de entrada/salida a partir del cual se inicia la metodologa de diseo, de modo que a todos los efectos, el modelo de la planta se considera completamente desconocido. Identicacin de la planta Como se vio en la seccin 3.3, el proceso de modelado borroso se desarrolla en tres fases: identicacin de la estructura, identicacin de los parmetros del modelo borroso y validacin del modelo obtenido. Utilizando el algoritmo de clustering propuesto por S. Chiu [245], se han obtenido 2 reglas para la inferencia de x 1 (t), donde las funciones de pertenencia de los antecedentes se muestran en la guras 6.15 a 6.18. Empleando el mismo algoritmo de clustering para x 2 (t) se han obtenido otras 2 reglas, donde las funciones de pertenencia de los antecedentes se muestran en la guras 6.19 a 6.22. Al ajustar los parmetros del modelo borroso mediante el algoritmo neuroborroso propuesto en [270], se obtiene el siguiente conjunto de reglas:

160

APLICACIONES

6.2

1 0 ,9 0 ,8 0 ,7 (x1 (t)) para x 1 (t) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6 4 2 0 x1 (t) 2 4 6 8 10

Figura 6.15: Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 1 (t).

1 0 ,9 0 ,8 0 ,7 (x2 (t)) para x 1 (t) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6 4 2 0 x2 (t) 2 4 6 8 10

Figura 6.16: Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 1 (t).

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

161

1 0,9 0,8 0,7 (u1 (t)) para x 1 (t) 0,6 0,5 0,4 0,3 0,2 0,1 0 50 40 30 20 10 0 u1 (t) 10 20 30 40 50

Figura 6.17: Funciones de pertenencia para la entrada u1 (t) en la inferencia de x 1 (t).

1 0,9 0,8 (u2 (t)) para x 1 (t) 0,7 0,6 0,5 0,4 0,3 0,2 0,1 50 40 30 20 10

0 u2 (t)

10

20

30

40

50

Figura 6.18: Funciones de pertenencia para la entrada u2 (t) en la inferencia de x 1 (t).

162

APLICACIONES

6.2

1 0 ,9 0 ,8 0 ,7 (x1 (t)) para x 2 (t) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6 4 2 0 x1 (t) 2 4 6 8 10

Figura 6.19: Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 2 (t).

1 0 ,9 0 ,8 0 ,7 (x2 (t)) para x 2 (t) 0 ,6 0 ,5 0 ,4 0 ,3 0 ,2 0 ,1 0 10 8 6 4 2 0 x2 (t) 2 4 6 8 10

Figura 6.20: Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 2 (t).

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

163

1 0,9 0,8 (u1 (t)) para x 2 (t) 0,7 0,6 0,5 0,4

50

40

30

20

10

0 u1 (t)

10

20

30

40

50

Figura 6.21: Funciones de pertenencia para la entrada u1 (t) en la inferencia de x 2 (t).

1 0,9 0,8 (u2 (t)) para x 2 (t) 0,7 0,6 0,5 0,4

50

40

30

20

10

0 u2 (t)

10

20

30

40

50

Figura 6.22: Funciones de pertenencia para la entrada u2 (t) en la inferencia de x 2 (t).

164

APLICACIONES

6.2

80 60 40 20 x 1 0 -20 -40 -60 -80 0 50 100 150 200

Real Modelo

250

Nmero de puntos

Figura 6.23: Validacin del modelo borroso para x 1.

SI x1 es Gaussmf(1,464;9,987) y x2 es Gaussmf(-1,211;9,964) y u1 es Gaussmf(-6,976;49,67) y u2 es Gaussmf(-7,39;49,98) ENTONCES x 1 = -1,551108 +1x1 +2x2 +1u1 +2,1961011 u2 SI x1 es Gaussmf(-2,982;9,986) y x2 es Gaussmf(7,149;9,96) y u1 es Gaussmf(30,65;49,67) y u2 es Gaussmf(17,5;49,98) ENTONCES x 1 = 3,164108 +1x1 +2x2 +1u1 -2,1481010 u2 SI x1 es Gaussmf(-3,811;13,62) y x2 es Gaussmf(0,06026;8,578) y u1 es Gaussmf(11,03;60,97) y u2 es Gaussmf(10,77;61,63) ENTONCES x 2 = -6498+1,993x1 +419,8x2 -0,1538u1 +0,9489u2 SI x1 es Gaussmf(-3,812;13,61) y x2 es Gaussmf(4,095;11,44) y u1 es Gaussmf(11,04;60,97) y u2 es Gaussmf(10,78;61,63) ENTONCES x 2 = 7385+0,549x1 -926x2 +0,1001u1 +1,027u2

Donde Gaussmf representa una funcin de pertenencia gaussiana, ver ecuacin (2.12), cuyos parmetros son el centro y el ancho, respectivamente. El error cuadrtico medio obtenido al nalizar el proceso de modelado ha sido de 3,211 1017 para x 1 , y de 8,624 para x 2. Antes de dar por bueno el modelo borroso obtenido, ste debe ser validado con los datos no utilizados durante el ajuste de sus parmetros. Empleando pues los 250 datos reservados para la validacin se ha obtenido un error cuadrtico medio de 7,319 1017 para x 1 (t), y de 9,909 para x 2 (t). Estos resultados, como puede comprobarse grcamente en las guras 6.23 a 6.26, permiten comprobar el buen comportamiento del modelo borroso obtenido y pasar a la siguiente fase de diseo.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

165

2500 2000 1500 1000 500 x 2 0 -500 -1000 -1500 -2000 0 50 100 150 200 250 Real Modelo

Nmero de puntos

Figura 6.24: Validacin del modelo borroso para x 2.

12 Error MSE 10

Error x 1 1016

50

100

150

200

250

Nmero de puntos

Figura 6.25: Error de modelado durante la validacin de x 1.

166

APLICACIONES

6.2

200 180 160 140 120 Error x 2 100 80 60 40 20 0 0 50 100 150 200 250 Error MSE

Nmero de puntos

Figura 6.26: Error de modelado durante la validacin de x 2.

Estudio de la planta a partir de su modelo borroso Una vez se ha obtenido un modelo borroso de la planta, ste puede ser utilizado para estudiar sus propiedades y comportamiento dinmico. Como se vio en la seccin 4.4, el modelo borroso de un sistema puede ser empleado para obtener sus estados de equilibrio. Evidentemente, la precisin del modelo borroso afectar de forma determinante a la precisin de los estados de equilibrio obtenidos, pero ms all de los datos cuantitativos que se vern afectados por errores inherentes al proceso de modelado, cualitativamente se puede descubrir de forma aproximada la existencia de estados de equilibrio en un sistema inicialmente desconocido, y posteriormente estudiar su estabilidad local, ver la seccin 4.2. Se ha aplicando cinco veces el algoritmo de la gura 4.1 al modelo borroso de la planta, partiendo en cada una de las ejecuciones de un punto de inicio x0 aleatorio perteneciente al universo de discurso de x. Los resultados obtenidos en cada una de esas ejecuciones, tanto para el mtodo de Gauss-Newton como para el mtodo de Levenberg-Marquardt, aplicando el clculo explcito de la matriz jacobiana y sin aplicarlo, se muestran en las tablas 6.3 a 6.7. En todos los casos se ha supuesto u(t) = ueq = 0. Como se puede comprobar, en todas las ejecuciones se ha obtenido prcticamente el mismo estado de equilibrio situado en el punto (1,26062, 0,63031)T (las diferencias entre el resultado de las distintas ejecuciones se sitan a partir del noveno decimal). Como es lgico, este punto no se corresponde exactamente con el equilibrio real que presenta el sistema al considerar ueq = 0, el cual est situado en xeq = (0, 0)T ; ya que los errores propios del modelo se reejan en cualquier clculo que se realice sobre ste. Sin embargo, se ha obtenido un nico estado de equilibrio como en el sistema original, y, teniendo en cuenta que x 1 puede sobrepasar un valor de 60 y x 2 los 2000, y que el error de validacin de x 2 se sita en torno a un valor de 9, ste puede considerarse bastante cercano al estado de equilibrio real. Observando las tablas 6.3 a 6.7 se puede comprobar que el algoritmo de LevenbergMarquardt es ms rpido que el de Gauss-Newton, a pesar de requerir el mismo nmero

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

167

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 1,26062 0,63031 22 69 4,42124e-16 0,665378

G-N + jacobiana 1,26062 0,63031 22 46 1,8866e-16 0,143811

Levenberg-Marquardt 1,26062 0,63031 22 69 4,42124e-16 0,086432

L-M + jacobiana 1,26062 0,63031

22 46

1,8866e-16 0,068031

Tabla 6.3: Resultados de la bsqueda de estados de equilibrio. Ejecucin 1.


Gauss-Newton 1,26062 0,63031 7 24 1,42917e-13 0,617109 G-N + jacobiana 1,26062 0,63031 8 18 2,65363e-24 0,121069 Levenberg-Marquardt 1,26062 0,63031 7 24 1,42917e-13 0,039524 L-M + jacobiana 1,26062 0,63031 8 18 2,65363e-24 0,045003

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Tabla 6.4: Resultados de la bsqueda de estados de equilibrio. Ejecucin 2.


Gauss-Newton 1,26062 0,63031 10 33 9,12017e-15 0,619826 G-N + jacobiana 1,26062 0,63031 10 22 5,37422e-15 0,122609 Levenberg-Marquardt 1,26062 0,63031 10 33 9,12017e-15 0,053173 L-M + jacobiana 1,26062 0,63031

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

10 22

5,37422e-15 0,050231

Tabla 6.5: Resultados de la bsqueda de estados de equilibrio. Ejecucin 3.

168

APLICACIONES

6.2

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 1,26062 0,63031 6 21 7,31016e-15 0,635315

G-N + jacobiana 1,26062 0,63031 6 14 1,33097e-14 0,114088

Levenberg-Marquardt 1,26062 0,63031 6 21 7,31016e-15 0,03717

L-M + jacobiana 1,26062 0,63031 6 14 1,33097e-14 0,041436

Tabla 6.6: Resultados de la bsqueda de estados de equilibrio. Ejecucin 4.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 1,26062 0,63031 12 39 1,39385e-21 0,639078

G-N + jacobiana 1,26062 0,63031

12 26

Levenberg-Marquardt 1,26062 0,63031 12 39 1,39385e-21 0,060114

L-M + jacobiana 1,26062 0,63031

12 26

7,65821e-23 0,130633

7,65821e-23 0,055742

Tabla 6.7: Resultados de la bsqueda de estados de equilibrio. Ejecucin 5.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

169

de iteraciones para converger. Un resultado ms interesante se observa al comparar los datos referentes a la aplicacin del clculo explcito de la matriz jacobiana a cada uno de los algoritmos. Al aplicarlo al mtodo de Gauss-Newton, ste presenta mayor rapidez en la convergencia, obteniendo tambin, excepto en un caso, una mayor precisin del resultado. Con respecto al algoritmo de Levenberg-Marquardt, la aplicacin del clculo explcito de la matriz jacobiana implica normalmente una mejora de la precisin, y, en bastantes casos, una mejora de la velocidad de convergencia. Al linealizar el modelo borroso mediante la aplicacin del algoritmo 4.2 en torno al estado T T de equilibrio obtenido previamente, xT eq = (1,26062, 0,63031) , con ueq = (0, 0) , se obtiene el sistema lineal: 1 2 1 0 x u (t) x (t) + (t), 0,98464 2,41350 0,01313 0,99485 (6.11)

siendo x = x xeq , y u = u ueq , y cuyos autovalores son 1 = 2,91 y 2 = 1,5. Por lo tanto, se puede armar que el sistema es inestable en lazo abierto, y su estado de equilibrio se comporta como un punto de silla. T La linealizacin del sistema real (6.6) en torno su estado de equilibrio, xT eq = (0, 0) , T con ueq = (0, 0) , viene determinada por (6.12), siendo sus autovalores 1 = 1 y 2 = 2. Comparando2 estos resultados con los obtenidos mediante el modelo borroso, se puede comprobar que el anlisis previo realizado nicamente mediante la utilizacin del modelo borroso era correcto, ya que efectivamente el sistema es inestable en lazo abierto y su estado de equilibrio se comporta como un punto de silla. 1 2 1 0 x u (t) x (t) + (t) 1 0 0 1 Diseo de un controlador borroso estable Como se vio en la seccin 5.2.2, el teorema de Krasovskii, tanto en su versin simple como generalizada, impone unas condiciones sucientes de estabilidad asinttica que pueden ser empleadas como herramienta de sntesis de controladores borrosos; adems, proporciona una funcin de Lyapunov para el sistema diseado (ver ecuaciones (5.13) y (5.15)). Mediante la utilizacin del algoritmo presentado en la seccin 5.4.4 puede realizarse el diseo de un controlador borroso en base al teorema de Krasovskii. Para que las expresiones (5.17) y (5.12) sean completamente equivalentes, basta suponer una nica regin q igual al espacio de estado completo, es decir, s = 1 y q = 1, donde la funcin q (x) = 1 x X y la matriz P1 es igual a la matriz identidad. Aplicando dicho algoritmo sobre el modelo borroso de la planta en custin, se obtiene el siguiente controlador borroso:
2

(6.12)

Ntese que (6.11) es consecuencia de un modelo borroso de estado obtenido en base a datos de entrada/salida, de la obtencin de los estados de equilibrio del mismo y, por ltimo, de la linealizacin del modelo borroso de estado en torno al nico estado de equilibrio obtenido.

170

APLICACIONES

6.2

SI x1 es Gaussmf(1,464;9,987) y x2 es Gaussmf(-1,211;9,964) Entonces u1 = 0,1053-3,045x1 -2,627x2 SI x1 es Gaussmf(-2,982;9,986) y x2 es Gaussmf(7,149;9,96) Entonces u1 = 0,06726-0,9329x1 -1,521x2 SI x1 es Gaussmf(-3,811;13,62) y x2 es Gaussmf(0,06026;8,578) Entonces u1 = -1,941-1,462x1 -1,693x2 SI x1 es Gaussmf(-3,812;13,61) y x2 es Gaussmf(4,095;11,44) Entonces u1 = 2,037-2,479x1 -2,575x2 SI x1 es Gaussmf(1,464;9,987) y x2 es Gaussmf(-1,211;9,964) Entonces u2 = 2,595-0,7221x1 -0,6478x2 SI x1 es Gaussmf(-2,982;9,986) y x2 es Gaussmf(7,149;9,96) Entonces u2 = -2,121-1,189x1 -0,5057x2 SI x1 es Gaussmf(-3,811;13,62) y x2 es Gaussmf(0,06026;8,578) Entonces u2 = 3,31-0,3085x1 -1,957x2 SI x1 es Gaussmf(-3,812;13,61) y x2 es Gaussmf(4,095;11,44) Entonces u2 = 0,9739-2,09x1 -2,571x2

Analizando el controlador borroso generado se puede comprobar el funcionamiento del algoritmo de inicilizacin de la gura 5.6. Como puede observarse en la pgina 164, el modelo borroso de la planta est formado por 4 reglas, de forma que la fase de inicializacin crea 4 reglas para cada una de las seales de control; es decir, 4 reglas para u1 y otras 4 para u2 . Como se puede observar, los antecedentes de las reglas del controlador para cada una de sus salidas son idnticos entre s, y a su vez idnticos a los antecedentes del modelo borroso de la planta a controlar. Los parmetros adaptables de los consecuentes se inician todos a cero. Una vez creado el controlador inicial, el algoritmo de ajuste (gura 5.8) modica los parmetros adaptables de los consecuentes del controlador borroso para que quede satisfecha la condicin de estabilidad; es decir, que la matriz F(x) = J(x)T + J(x) sea denida negativa en un entorno del origen. El resultado pasa a la fase nal del algoritmo de diseo para ajustar el estado de equilibrio, y as se obtiene el controlador borroso de arriba. En las guras 6.27 y 6.28 se puede comprobar la evolucin del sistema de control diseado partiendo de distintas condiciones iniciales. En dichas guras efectivamente puede observarse la estabilidad del sistema. Un vez diseado el controlador borroso es posible estudiar los estados de equilibrio resultantes de la realimentacin de la planta con ste. Para ello se ha aplicando cinco veces el algoritmo numrico de minimizacin de la gura 4.1, partiendo en cada una de las ejecuciones de un punto de inicio x0 aleatorio perteneciente al universo de discurso de las variables de estado. Como puede observarse las tablas 6.8 a 6.12 que recogen los resultados obtenidos, prcticamente slo existen un nico estado de equilibrio que se corresponde con el origen de coordenadas. Ntese cmo la inclusin del clculo explcito de la matriz jacobiana mejora en muchos casos tanto la velocidad de convergencia como la precisin del resultado. Calculando la matriz jacobiana del sistema de control borroso en lazo cerrado en el origen, se obtiene: 1,09579 0,13038 , J ( 0) = (6.13) 0,10028 0,87830

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

171

10 5 0 -5 -10 0 1 2 3 Tiempo (s) 10 5 0 -5 -10 0 1 2 3 Tiempo (s) 4 5 6 x2 4 5 6 x1


Tiempo (s)

Figura 6.27: Simulacin para distintas condiciones iniciales.

0 1 2 3 4 5 6 10 5 0 -5 x2 -10 -10 x1 -5 5 0 10

Figura 6.28: Retrato de fase temporal.

172

APLICACIONES

6.2

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 9,156e 11 7,837e 10 5 18 4,85501e-19 0,624002

G-N + jacobiana 7,704e 12 7,199e 11 5 12 3,97491e-21 0,103941

Levenberg-Marquardt 9,156e 11 7,837e 10 5 18 4,85501e-19 0,032167

L-M + jacobiana 7,704e 12 7,199e 11 5 12 3,97491e-21 0,037212

Tabla 6.8: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 1.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 9,845e 12 8,232e 11 12 39 5,33778e-21 0,685474

G-N + jacobiana 2,753e 13 2,814e 12

12 26

Levenberg-Marquardt 9,845e 12 8,232e 11 12 39 5,33778e-21 0,066475

L-M + jacobiana 2,753e 13 2,814e 12

12 26

6,57783e-24 0,121571

6,57783e-24 0,067101

Tabla 6.9: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 2.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

173

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 8,813e 12 7,366e 11 12 39 4,44495e-21 0,704302

G-N + jacobiana 1,640e 13 1,798e 12

12 26

Levenberg-Marquardt 8,813e 12 7,366e 11 12 39 4,44495e-21 0,061997

L-M + jacobiana 1,640e 13 1,798e 12

12 26

1,24341e-24 0,124267

1,24341e-24 0,068536

Tabla 6.10: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 3.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,749e 11 3,337e 10 6 21 8,75808e-20 0,646222

G-N + jacobiana 1,123e 11 1,143e 10 6 14 1,01724e-20 0,102585

Levenberg-Marquardt 3,749e 11 3,337e 10 6 21 8,75808e-20 0,040036

L-M + jacobiana 1,123e 11 1,143e 10 6 14 1,01724e-20 0,044547

Tabla 6.11: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 4.

174

APLICACIONES

6.2
G-N + jacobiana 6,170e 09 6,265e 08 Levenberg-Marquardt 8,080e 09 7,872e 08 12 39 4,89517e-15 0,061284 L-M + jacobiana 6,170e 09 6,265e 08

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 8,080e 09 7,872e 08 12 39 4,89517e-15 0,704675

12 26

12 26

3,0981e-15 0,119984

3,0981e-15 0,061249

Tabla 6.12: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 5.

cuyos autovalores son 1 = 0,98704 + 0,03535i y 2 = 0,98704 0,03535i. Por lo tanto, se demuestra que el estado de equilibrio es asintticamente estable. En este ejemplo se ha mostrado cmo funciona el algoritmo de diseo presentado en el captulo 5, y cmo puede emplearse junto con el teorema de Krasovskii para la sntesis de un controlador borroso que asegure la estabilidad del sistema de control en lazo cerrado. Sin embargo, no siempre es posible utilizar el teorema de Krasovskii para disear un controlador borroso adecuado. En sistemas complejos el teorema de Krasovskii puede resultar demasiado restrictivo como para asegurar su cumplimiento en una regin sucientemente amplia en torno al origen [170]. Por ello, en este tipo de sistemas resulta ms adecuada la utilizacin del teorema 5.7, cuya condicin es ms sencilla de ajustar debido a la divisin del espacio de estado en regiones. A continuacin se abordar el diseo de un controlador borroso para la misma planta anterior, pero aplicando el algoritmo del apartado 5.4.4 en base al teorema 5.7. En primer lugar es necesario inicializar el controlador borroso, aunque, al tratarse de la misma planta, la inicializacin del controlador es idntica al caso anterior. El siguiente paso es denir las regiones en las que se dividir el espacio de estado e inicializar las matrices Pq . Tal como se muestra en la ecuacin (5.39), se crearn tantas regiones como reglas totales tenga la planta, en este caso s = 4. Una vez conocido el nmero de regiones, s, se procede a inicializar las matrices Pq como matrices identidad, con q = 1..s. Aunque se ha establecido el nmero de regiones, an no se han denido como tales. Para ello se utiliza una divisin borrosa del espacio de estado a partir de las funciones de pertenencia q (x). Como se puede ver en el algoritmo de la gura 5.6, estas funciones de pertenencia se denen como las funciones de pertenencia de una de las salidas del controlador3 . Una vez realizado el proceso de inicializacin, se procede con las fases de diseo y de ajuste del estado de equilibrio, esta vez aplicando el teorema 5.7. De esta forma se obtiene el siguiente controlador borroso:
3

Hay que recordar que todas las salidas se inicializan con reglas idnticas y, por lo tanto, son idnticas funciones de pertenencia. Ver fase de inicializacin del apartado 5.4.4.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

175

SI x1 es Gaussmf(1,464;9,987) y x2 es Gaussmf(-1,211;9,964) ENTONCES u1 = 0,09714+0,5753x1 -0,2195x2 SI x1 es Gaussmf(-3,811;13,62) y x2 es Gaussmf(0,06026;8,578) ENTONCES u1 = -0,02684-2,864x1 +1,148x2 SI x1 es Gaussmf(-2,982;9,986) y x2 es Gaussmf(7,149;9,96) ENTONCES u1 = 0,1881+0,7072x1 +0,6508x2 SI x1 es Gaussmf(-3,812;13,61) y x2 es Gaussmf(4,095;11,44) ENTONCES u1 = -0,2111-34,79x1 +0,3739x2 SI x1 es Gaussmf(1,464;9,987) y x2 es Gaussmf(-1,211;9,964) ENTONCES u2 = -3,25+0,293x1 -0,01715x2 SI x1 es Gaussmf(-3,811;13,62) y x2 es Gaussmf(0,06026;8,578) ENTONCES u2 = 7,839+0,2617x1 -2,995x2 SI x1 es Gaussmf(-2,982;9,986) y x2 es Gaussmf(7,149;9,96) ENTONCES u2 = 0,2527+13,86x1 +0,08707x2 SI x1 es Gaussmf(-3,812;13,61) y x2 es Gaussmf(4,095;11,44) ENTONCES u2 = 1,16-18,54x1 +0,6936x2

Las matrices Pq , q = 1..4, obtenidas durante la fase de diseo son: 2,186 0,398 P1 = 0,398 0,126 2,176 1,885 P2 = 1,885 2,581 6,834 9,743 P3 = 9,743 30,865 39,31 16,585 . P4 = 16,585 11,082 En las guras 6.29 y 6.30 se muestran, respectivamente, las salidas obtenidas para distintas condiciones iniciales y el retrato de fase temporal del sistema. Ntese como todas las trayectorias convergen al origen del espacio de estado. Ha de tenerse en cuenta que las simulaciones presentadas en las guras 6.29 y 6.30 han sido realizadas utilizando aplicando el controlador borroso al sistema real dado por (6.6), con lo que se demuestra que el controlador borroso diseado estabiliza la planta real, y no slo el modelo borroso de la planta que fue utilizado como base para su diseo. Una vez diseado un controlador borroso pueden estudiarse los estados de equilibrio del sistema en lazo cerrado. Este estudio puede ser til, por ejemplo, para comprobar la existencia de un nico estado equilibrio en todo el universo de discurso de las variables de estado, y que ste sea el origen. En el apartado 4.4 se muestra el procedimiento para realizar el estudio de los estados de equilibrio del sistema en lazo cerrado. Tal como se vio en este mismo ejemplo con el estudio de los estados de equilibrio de la planta, la inclusin de la matriz jacobiana puede acelerar

176

APLICACIONES

6.2

10 5 0 -5 -10 0 0.5 1 1.5 Tiempo (s) 10 5 0 -5 -10 0 0.5 1 1.5 Tiempo (s) 2 2.5 3 x2 2 2.5 3 x1
Tiempo (s)

Figura 6.29: Simulacin para distintas condiciones iniciales.

0 0.5 1 1.5 2 2.5 3 10 5 0 -5 x2 -10 -10 x1 -5 5 0 10

Figura 6.30: Retrato de fase temporal.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

177

la velocidad de convergencia del algoritmo numrico empleado para el estudio, as como mejorar la precisin del resultado obtenido. Se ha aplicando cinco veces el algoritmo numrico de minimizacin de la gura 4.1, partiendo en cada una de las ejecuciones de un punto de inicio x0 aleatorio perteneciente al universo de discurso de las variables de estado. Los resultados obtenidos se muestran en las tablas 6.13 a 6.17. Como se puede observar en dichas tablas, el estado de equilibrio obtenido se corresponde prcticamente con el origen de coordenadas. Ntese tambin cmo la inclusin del clculo explcito de la matriz jacobiana suele mejorar tanto la velocidad de convergencia como la precisin del resultado obtenido en la mayora de los casos.
Gauss-Newton 3,343e 05 1,059e 04 13 42 3,31651e-19 1,43302 G-N + jacobiana 3,343e 05 1,059e 04 Levenberg-Marquardt 3,343e 05 1,059e 04 13 42 3,31651e-19 0,059753 L-M + jacobiana 3,343e 05 1,059e 04

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

13 28

13 28

9,05161e-19 0,191314

9,05161e-19 0,062342

Tabla 6.13: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 1.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,427e 05 1,087e 4 9 30 8,00997e-13 0,625972

G-N + jacobiana 3,443e 05 1,093e 4 9 20 1,13204e-12 0,117236

Levenberg-Marquardt 3,427e 05 1,087e 4 9 30 8,00997e-13 0,048302

L-M + jacobiana 3,443e 05 1,093e 4 9 20 1,13204e-12 0,042835

Tabla 6.14: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 2.

178

APLICACIONES

6.2

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,343e 05 1,059e 4 10 33 6,56634e-18 0,652951

G-N + jacobiana 3,343e 05 1,059e 4

10 22

Levenberg-Marquardt 3,343e 05 1,059e 4 10 33 6,56634e-18 0,051015

L-M + jacobiana 3,343e 05 1,059e 4

10 22

6,03109e-19 0,127586

6,03109e-19 0,055226

Tabla 6.15: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 3.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,343e 05 1,059e 4 13 42 8,13052e-18 0,652871

G-N + jacobiana 3,343e 05 1,059e 4

13 28

Levenberg-Marquardt 3,343e 05 1,059e 4 13 42 8,13052e-18 0,060831

L-M + jacobiana 3,343e 05 1,059e 4

13 28

1,16902e-17 0,138385

1,16902e-17 0,063552

Tabla 6.16: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 4.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

179

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,343e 05 1,059e 4 9 30 7,42411e-18 0,63158

G-N + jacobiana 3,343e 05 1,059e 4 9 20 4,23078e-19 0,130122

Levenberg-Marquardt 3,343e 05 1,059e 4 9 30 7,42411e-18 0,04691

L-M + jacobiana 3,343e 05 1,059e 4 9 20 4,23078e-19 0,051984

Tabla 6.17: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 5.

cuyos autovalores son 1 = 7,90377 y 2 = 0,33177. Por lo tanto, se demuestra que el estado de equilibrio es asintticamente estable. En este ejemplo se ha mostrado paso a paso la metodologa de diseo presentada en el captulo 5: modelado de la planta, estudio de sta a partir de su modelo borroso, y nalmente, diseo de un controlador borroso que estabilice el sistema de control en lazo cerrado. En la fase de diseo se ha mostrado la aplicacin tanto del teorema de Krasovskii, como del teorema 5.7 como metodologas de diseo. Como se ha comprobado mediante simulacin, en ambos casos el sistema resultante es asintticamente estable.

La matriz jacobiana obtenida para el sistema de control borroso en lazo cerrado calculada en el origen es: 8,23421 2,46510 , J ( 0) = (6.14) 1,05931 0,00137

6.2.2. Pndulo
La dinmica del pndulo de la gura 6.31 viene determinada por la ecuacin (6.15), donde M es la masa del pndulo, L la longitud de la varilla, g la aceleracin de la gravedad, b el coeciente de friccin viscosa, el ngulo que forma el pndulo con respecto a la vertical, y el par aplicado sobre ste; siendo M = 1 Kg, L = 0,5 m, g = 9,8 m/s2 y b = 0,5 N/m/s. (t) + b (t) MgL sen((t)) = (t) ML2 Si se considera el vector de estado: x1 (t) (t) = , x(t) = (t) x2 (t) (6.16) (6.15)

180

APLICACIONES

6.2

Figura 6.31: Pndulo.

y la seal de control u(t) = (t), el sistema (6.15) puede representarse por el modelo de estado: x 1 (t) = x2 (t) (6.17) g b 1 x 2 (t) = sen(x1 (t)) x ( t ) + u ( t ) . 2 L ML2 ML2 Puesto que la dinmica de la planta se considera desconocida, el primer paso ha de ser obtener un modelo vlido de la misma. Identicacin de la planta La eleccin de las variables de estado es necesariamente conocida, por lo que x 1 (t) puede modelarse sin necesidad de emplear ningn tipo de algoritmo de aprendizaje. Por ejemplo, utilizando funciones de pertenencia triangulares, esta relacin puede representarse por la siguiente regla borrosa:
SI x1 es Trimf(;0;) y x2 es Trimf(-;0;) y es Trimf(-;0;) ENTONCES x 1 = x2 ,

donde Trimf representa la funcin de pertenencia triangular dada por la ecuacin (2.9), cuyos parmetros se corresponden con los tres puntos caractersticos del tringulo. Ntese que la funcin de pertenencia Trimf(;0;) siempre toma valor 1, por lo que la regla anterior modela x 1 (t) de forma exacta. Tomando como universo de discurso de las variables de estado: X {x | x1 [, ] , x2 [10, 10]}, y como universo de discurso de la seal de control: U u | u 103 , 103 , se han obtenido 1250 conjuntos de datos de entrada/salida para la segunda salidas del sistema (6.17), x 2 (t), de forma que 1000 datos (el 80 %) se emplearn en el proceso de modelado y 250 (el 20 % restante) en el de validacin. Ntese de nuevo que el modelo real de la planta slo se ha utilizado para generar el conjunto de datos de entrada/salida, considerndose a partir de entonces desconocido. La identicacin de la estructura del modelo borroso, es decir, la identicacin del nmero de reglas y de los antecedentes y consecuentes iniciales de stas, se ha realizado mediante la aplicacin del algoritmo de clustering de S. Chiu [245], obtenindose 3 reglas para la inferencia de x 2 (t). Las funciones de pertenencia de los antecedentes de estas reglas se muestran en la guras 6.32 a 6.34.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

181

1 0.9 0.8 0.7 (x1 (t)) para x 2 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -3 -2 -1 0 x1 (t) 1 2 3

Figura 6.32: Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 2 (t).

1 0.9 0.8 0.7 (x2 (t)) para x 2 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -8 -6 -4 -2 0 x2 (t) 2 4 6 8

Figura 6.33: Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 2 (t).

182

APLICACIONES
1 0.9 0.8 0.7 (u(t)) para x 2 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -800 -600 -400 -200 0 u(t) 200 400 600 800

6.2

Figura 6.34: Funciones de pertenencia para la entrada u(t) en la inferencia de x 2 (t).

Una vez ajustados los parmetros del modelo borroso mediante el algoritmo neuroborroso propuesto en [270], el modelo borroso de estado del sistema (6.15) viene representado por el siguiente conjunto de reglas:
SI x1 es Trimf(;0;) y x2 es Trimf(-;0;) y es Trimf(-;0;) ENTONCES x 1 = x2 SI x1 es Gaussmf(1,013;1,509) y x2 es Gaussmf(1,123;10,06) y es Gaussmf(106,6;924,4) ENTONCES x 2 = 0,9452-2,6*x1 -1,5*x2 +4,015* SI x1 es Gaussmf(1,463;0,9176) y x2 es Gaussmf(-1,33;9,816) y es Gaussmf(-782,7;924,4) ENTONCES x 2 = 65,57-2,805*x1 -1,403*x2 +4,038* SI x1 es Gaussmf(-0,876;0,8156) y x2 es Gaussmf(8,382;12,32) y es Gaussmf(944,3;924,4) ENTONCES x 2 = -31,73-0,4918*x1 -1,379*x2 +4,013*

La funcin Gaussmf representa la funcin de pertenencia gaussiana dada por la ecuacin (2.12), cuyos parmetros son el centro y el ancho, respectivamente. El error cuadrtico medio obtenido al nalizar el proceso de modelado de x 2 (t) ha sido de 1,613. Al validar el modelo mediante los 250 datos restantes, se ha obtenido un error cuadrtico medio de 2,729, por lo que dicho modelo puede considerarse vlido dentro del universo de discurso en el que ha sido realizado. La representacin grca de los errores presentados durante la validacin del modelo de x 2 (t) pueden verse en las guras 6.35 y 6.36. Estudio de la planta a partir de su modelo borroso Una vez ha sido validado el modelo borroso de la planta, ste puede ser estudiado mediante el algoritmo presentado en la seccin 4.4. Para ello se ha aplicando seis veces el algoritmo de la gura 4.1 al modelo borroso de la planta, partiendo en cada una de las ejecuciones de un punto de inicio x0 aleatorio perteneciente al universo de discurso de las variables de estado.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

183

5000 4000 3000 2000 x 2 1000 0 -1000 -2000 -3000 -4000 0 50 100 150 200

Real Modelo

250

Nmero de puntos

Figura 6.35: Validacin del modelo borroso para x 2.

55 50 45 40 35 Error x 2 30 25 20 15 10 5 0 50 100 150 200

Error MSE

250

Nmero de puntos

Figura 6.36: Error de modelado durante la validacin de x 2.

184

APLICACIONES

6.2

Los resultados obtenidos, tanto para el mtodo de Gauss-Newton como para el mtodo de Levenberg-Marquardt, aplicando el clculo explcito de la matriz jacobiana y sin aplicarlo, se muestran en las tablas 6.18 a 6.23. En todos los casos se ha supuesto (t) = eq = 0.
Gauss-Newton 0,0656 0 5 18 4,15428e-26 1,30448 G-N con jacobiana 0,0656 0 5 12 5,69144e-26 0,140312 Levenberg-Marquardt 0,0656 0 5 18 4,15428e-26 0,039413 L-M con jacobiana 0,0656 0 5 12 5,69144e-26 0,039227

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Tabla 6.18: Resultados de la bsqueda de estados de equilibrio. Ejecucin 1.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,1394 0 6 21 8,66094e-30 0,670333

G-N con jacobiana 3,1394 0 6 14 1,06096e-28 0,110325

Levenberg-Marquardt 3,1394 0 6 21 8,66094e-30 0,044947

L-M con jacobiana 3,1394 0 6 14 1,06096e-28 0,045406

Tabla 6.19: Resultados de la bsqueda de estados de equilibrio. Ejecucin 2.

Analizando los resultados de las tablas 6.18 a 6.23 puede comprobarse que se han obtenido tres estados de equilibrio, correspondientes aproximadamente con los puntos [0, 0]T [, 0]T y [, 0]T . Estos puntos son efectivamente los estados de equilibrio que presenta la planta real, pero han sido obtenidos tan slo a partir de su modelo borroso, sin conocimiento previo de sta. Con respecto a la respuesta de los distintos algoritmos aplicados para el clculo de los estados de equilibrio, en este caso no se puede concluir que la utilizacin del clculo explcito de a matriz jacobiana haya supuesto una mejora en la precisin de los resultados, pero s en la velocidad de clculo al aplicar el mtodo de Gauss-Newton, no as en al aplicar Levenberg-Marquardt.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

185

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,0170 0 9 28 5,42175e-16 0,660155

G-N con jacobiana 3,0170 0

Levenberg-Marquardt 3,0170 0 9 28 5,42175e-16 0,060938

L-M con jacobiana 3,0170 0 9 20 5,41697e-16 0,063303

20 5,41697e-16 0,112981

Tabla 6.20: Resultados de la bsqueda de estados de equilibrio. Ejecucin 3.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,1394 0 4 15 1,10738e-16 0,65582

G-N con jacobiana 3,1394 0

Levenberg-Marquardt 3,1394 0 4 15 1,10738e-16 0,039713

L-M con jacobiana 3,1394 0 4 10 1,10306e-16 0,047287

10 1,10306e-16 0,103466

Tabla 6.21: Resultados de la bsqueda de estados de equilibrio. Ejecucin 4.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 0,0656 0 9 28

G-N con jacobiana 0,0656 0

Levenberg-Marquardt 0,0656 0 9 28

L-M con jacobiana 0,0656 0 9 20

20

8,9211e-32 0,65535

3,10851e-31 0,122932

8,9211e-32 0,059896

3,10851e-31 0,059501

Tabla 6.22: Resultados de la bsqueda de estados de equilibrio. Ejecucin 5.

186

APLICACIONES

6.2
G-N con jacobiana 3,1394 0 5 12 1,06096e-28 0,099564 Levenberg-Marquardt 3,13946 0 5 18 1,75384e-28 0,05429 L-M con jacobiana 3,13936 0 5 12 1,06096e-28 0,040814

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 3,1394 0 5 18 1,75384e-28 0,641308

Tabla 6.23: Resultados de la bsqueda de estados de equilibrio. Ejecucin 6.

Al linealizar el modelo borroso mediante la aplicacin del algoritmo 4.2 en torno al estado T de equilibrio xT eq = (0,0656, 0) , con eq = 0, se obtiene el sistema lineal: 0 1 0 x (t) x (t) + (t), (6.18) 17,931 1,953 4,003 siendo x = x xeq y = eq , y cuyos autovalores son 1 = 3,369 y 2 = 5,322. Por lo tanto, se puede armar que el sistema es inestable en lazo abierto, y el estado de equilibrio se comporta como un punto de silla. T La linealizacin del sistema real en torno al estado de equilibrio, xT eq = (0, 0) , con = 0, viene determinada por (6.19), siendo sus autovalores 1 = 3,534 y 2 = 5,534. Comparando estos resultados con los obtenidos mediante el modelo borroso, se puede comprobar la semejanza tanto del modelo lineal como de los autovalores obtenidos; adems, el anlisis previo realizado nicamente mediante la utilizacin del modelo borroso es perfectamente vlido, ya que efectivamente el sistema es inestable en lazo abierto. 0 1 0 x (t) x (t) + (t) (6.19) 19,558 2 4

Si se procede ahora a linealizar el modelo borroso en torno al estado de equilibrio xT eq = (3,1394, 0)T , con eq = 0, se obtiene el sistema lineal: 0 1 0 x (t) x (t) + (t), (6.20) 16,161 1,808 4,004 cuyos autovalores son 1,2 = 0,904 3,917i, lo que implica que el estado de equilibrio es asintticamente estable. En realidad no se puede conar en exceso en los autovalores obtenidos, ya que su proximidad a cero hace que cualquier error en el modelo pueda modicar el signo de la parte real y, por tanto, su estabilidad. Si se compara el sistema anterior, linealizado a partir del modelo borroso, con el sistema linealizado real representado en (6.21),

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

187

se puede comprobar que la diferencia existente en la determinacin del modelo linealizado es relativamente pequea; sin embargo, podra ser suciente para provocar un cambio de signo en la parte real de los autovalores. En este caso no es as, ya que los autovalores del sistema T real linealizado en el punto xT eq = (, 0) , con eq = 0, son 1,2 = 1 4,313i, muy similares a los obtenido a partir del modelo borroso y tambin implican la estabilidad del estado de equilibrio. 0 1 0 x (t) x (t) + (t) 19,6 2 4

(6.21)

Finalmente, si se procede a linealizar el modelo borroso en torno al estado de equilibrio T xT eq = (3,0170, 0) , con eq = 0, se obtiene el sistema lineal: 0 1 0 x (t) x (t) + (t), 21,847 2,073 4,001

(6.22)

cuyos autovalores son 1,2 = 1,036 4,558i. Al igual que sucede en el caso anterior, es arriesgado armar que el estado de equilibrio es asintticamente estable, ya que no se puede conar en los autovalores obtenidos debido a su proximidad a cero. Si se linealiza el modelo T real del sistema en el estado de equilibrio xT eq = (, 0) , con eq = 0, se obtiene el sistema lineal: 0 x (t) x (t) + (t), 19,448 2 4 0 1

(6.23)

cuyos autovalores son 1,2 = 1 4,295i. Nuevamente, tanto el modelo linealizado como los autovalores son similares a los obtenidos a partir del modelo borroso, lo que viene a rearmar que dicho modelo es bastante preciso.

Diseo de un controlador borroso estable Utilizando el algoritmo presentado en la seccin 5.4.4 se procede a disear un controlador borroso que garantice la estabilidad del sistema (6.17) en torno al estado de equilibrio inestable situado en el origen. Se crean tantas regiones como reglas totales tenga la planta, en este caso s = 4, y se inicializan las matrices Pq , con q = 1.,4, como la identidad. Tal como se establece en el algoritmo 5.6, las regiones q (x) se denen a partir de las funciones de pertenencia del controlador. Una vez concluidas las fases de diseo y de ajuste del estado de equilibrio, se obtiene el siguiente controlador borroso:

188

APLICACIONES

6.2

SI x1 es Trimf(;0;) y x2 es Trimf(;0;) ENTONCES = 5,353-7,417*x1 -1,85*x2 SI x1 es Gaussmf(1,013;1,509) y x2 es Gaussmf(1,123;10,06) ENTONCES = -8,169-0,4213*x1 -0,5807*x2 SI x1 es Gaussmf(1,463;0,9176) y x2 es Gaussmf(-1,33;9,816) ENTONCES = -20,31-3,055*x1 -2,173*x2 SI x1 es Gaussmf(-0,876;0,8156) y x2 es Gaussmf(8,382;12,32) ENTONCES = 4,055-0,9655*x1 +0,06538*x2

Las matrices Pq , q = 1..4, obtenidas durante la fase de diseo son: 0,467 0,009 P1 = 0,009 0,011 0,011 0 P2 = 0 0,0109 0,024 0 P3 = 0 0,012 0,01 0 P4 = 0,001 0,0352 Se puede comprobar que el algoritmo de inicializacin (ver gura 5.6) ha generado 4 reglas para el controlador borroso procedentes del modelo borroso de la planta mostrado en la pgina 182. Todos los parmetros adaptables de los consecuentes se inician a cero, y posteriormente se ajustan a travs del algoritmo de ajuste (ver gura 5.8) hasta que quede satisfecha la condicin de estabilidad del teorema 5.7. En las guras 6.37 y 6.38 se puede observar la evolucin del sistema diseado partiendo de distintas condiciones iniciales. En dichas guras puede comprobarse que efectivamente, todas las trayectorias que no abandonan el universo de discurso de las variables de estado tienden al estado de equilibrio situado en el origen. La estabilidad de aquellas trayectorias que abandonan el universo de discurso de las variables de estado, mostradas en trazo punteado, no puede garantizarse, ya que el modelo borroso de la planta no tiene porqu ser vlido fuera del rango de valores para el que fue obtenido. Por lo tanto, al no ser posible garantizar el cumplimiento del teorema 5.7 para dichas trayectorias, no puede asegurarse formalmente su estabilidad. Ha de tenerse en cuenta que las simulaciones presentadas en las guras 6.37 y 6.38 han sido realizadas utilizando aplicando el controlador borroso al sistema real dado por (6.17), con lo que se demuestra que el controlador borroso diseado estabiliza la planta real, y no slo el modelo borroso de la planta que fue utilizado como base para su diseo. En la gura 6.39 puede verse con ms claridad las trayectorias que abandonan el universo de discurso de las variables de estado, pese a iniciarse dentro de ste. La evolucin real del sistema es completamente imprevisible una vez est fuera del universo de discurso para el que es vlido el modelo, ya que la simulacin slo muestra el comportamiento extrapolado de dicho modelo fuera de su rango de validez.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

189

Lmites del universo de discurso de x 2 0 -2 0 0.2 0.4 0.6 0.8 1 Tiempo (s) 10 5 0 -5 -10 0 0.2 0.4 0.6 0.8 1 Tiempo (s) 1.2 1.4 1.6 1.8 2 x2 1.2 1.4 1.6 1.8 2 x1

Figura 6.37: Simulacin para distintas condiciones iniciales.

0 0.5 Tiempo (s) 1 1.5 2 10 5 0 -5 -10 x2 -2 x1 0 2

Figura 6.38: Retrato de fase temporal.

190

APLICACIONES

6.2
Universo de discurso de x

10 8 6 4 2 x2 0 -2 -4 -6 -8 -10 -3 -2 -1 0 x1 1

Figura 6.39: Retrato de fase.

Aunque la estabilidad del estado de equilibrio situado en el origen se observa intuitivamente en la gura 6.39, sta puede estudiarse a travs de los autovalores de la matriz jacobiana del modelo borroso de lazo cerrado4 . Aplicando el algoritmo de la gura 4.5 al sistema de control borroso en lazo cerrado en el origen, se obtiene la siguiente matriz: 0 1 J ( 0) = 25,04 6,850

(6.24)

cuyos autovalores son 3,425 3,648i. Estos autovalores se corresponden con un foco estable, como efectivamente puede comprobarse en la gura 6.39. Por ltimo, es posible estudiar los estados de equilibrio del sistema en lazo cerrado como mtodo de garantizar que slo exista uno dentro del universo de discurso de las variables de estado. Para ello se ha aplicando cinco veces el algoritmo numrico de minimizacin de la gura 4.1, partiendo en cada una de las ejecuciones de un punto de inicio x0 aleatorio perteneciente al universo de discurso de las variables de estado. En los resultados obtenidos, mostrados en las tablas 6.24 a 6.28, se puede comprobar que efectivamente slo existe un estado de equilibrio prcticamente situado sobre el origen de coordenadas. A partir de datos de entrada/salida se ha conseguido realizar el estudio de una planta inicialmente desconocida, obteniendo sus tres estados de equilibrio. Posteriormente se ha diseado un controlador que estabilice el sistema de control en lazo cerrado. Como se ha comprobado, el sistema resultante es asintticamente estable posee un nico estado de equilibrio en el universo de discurso de las variables de estado.
4

Ntese que esta demostracin tan slo es vlida para las cercanas del estado de equilibrio. La estabilidad queda garantizada por la aplicacin del teorema 5.7 durante la fase de diseo del controlador borroso.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

191

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 2,490e 11 0 6 21 3.8844e-28 0.889011

G-N con jacobiana 2,490e 11 0 6 14 1.63687e-28 0.134602

Levenberg-Marquardt 2,490e 11 0 6 21 3.8844e-28 0.041155

L-M con jacobiana 2,490e 11 0 6 14 1.63687e-28 0.050629

Tabla 6.24: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 1.
Gauss-Newton 2,461e 11 0 13 36 5.25857e-23 0.653583 G-N con jacobiana 2,462e 11 0 13 28 4.8746e-23 0.124124 Levenberg-Marquardt 2,461e 11 0 13 36 5.25857e-23 0.061951 L-M con jacobiana 2,462e 11 0

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

13

28 4.8746e-23 0.081563

Tabla 6.25: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 2.
Gauss-Newton 2,486e 11 0 15 40 1.02971e-24 0.758528 G-N con jacobiana 2,486e 11 0 15 32 9.54464e-25 0.143927 Levenberg-Marquardt 2,486e 11 0 15 40 1.02971e-24 0.07344 L-M con jacobiana 2,486e 11 0

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

15

32 9.54464e-25 0.079727

Tabla 6.26: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 3.

192

APLICACIONES

6.2

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 1,136e 09 0 6 21 8.44552e-16 0.592863

G-N con jacobiana 1,135e 09 0 6 14 8.44392e-16 0.097751

Levenberg-Marquardt 1,136e 09 0 6 21 8.44552e-16 0.035944

L-M con jacobiana 1,135e 09 0 6 14 8.44392e-16 0.042486

Tabla 6.27: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 4.

Estado de equilibrio N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 6,969e 10 0 10 31 3.26748e-16 0.715253

G-N con jacobiana 6,965e 10 0

10 22

Levenberg-Marquardt 6,969e 10 0 10 31 3.26748e-16 0.052973

L-M con jacobiana 6,965e 10 0 10 22 3.26426e-16 0.095405

3.26426e-16 0.123721

Tabla 6.28: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 5.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

193

Figura 6.40: Balancn.

6.2.3. Balancn
En la gura 6.40 se muestra un sistema de balancn. Si se supone que la masa de la bola y el rozamiento de sta con el balancn son despreciables, la dinmica del sistema viene representada por la ecuacin (6.25), siendo (t) el ngulo que forma el balancn con (t) su velocidad, d(t) la distancia existente entre la bola y el centro de giro la horizontal y (t) su velocidad, J = 1 Kgm2 el momento de inercia del balancn, b = 1 del balancn y d Kgm2 /s el coeciente de friccin viscosa, y g = 9,8 m/s2 la aceleracin de la gravedad. (t) d = g sin((t))

(t) = (t) b (t) J Si se considera el vector de estado d(t) x (t) 1 x2 (t) d(t) = , x(t) = x3 (t) (t) x4 (t) (t)

(6.25)

(6.26)

y la seal de control u(t) = (t), el sistema (6.25) puede representarse por el modelo de estado: x 1 (t) = x2 (t) x 2 (t) = g sen(x1 (t)) x 3 (t) = x4 (t) b u(t) x 4 (t) = x1 (t) + . J J (6.27)

Al igual que en los casos anteriores, la dinmica de la planta se considera desconocida, por lo que antes de poder realizar ningn tipo de anlisis y/o diseo ser necesario obtener un modelo de la misma.

194

APLICACIONES

6.2

Identicacin de la planta Tomando como universo de discurso de las variables de estado: X {x | x1 [10, 10] , x2 [10, 10] , x3 [80 , 80 ] , x4 [10, 10]}, y como universo de discurso de la seal de control: U u | u 103 , 103 , se han obtenido 1250 conjuntos de datos de entrada/salida para cada una de las salidas del sistema (6.27), de forma que 1000 datos (el 80 %) se emplearn en el proceso de modelado y 250 (el 20 % restante) en el de validacin. Aplicando el algoritmo de clustering de S. Chiu [245] se ha obtenido la estructura del modelo borroso para cada una de las cuatro variables de salida del modelo de estado de la planta, obtenindose 3 reglas para la inferencia de x 1 (t), 7 reglas para la de x 2 (t), 3 reglas para la de x 3 (t) y, nalmente, 2 reglas para la de x 4 (t), por lo que el modelo borroso de estado del sistema (6.27) consta en total de 15 reglas. Las funciones de pertenencia de los antecedentes de las 3 reglas que modelan x 1 (t) se muestran en las guras 6.41 a 6.45, las correspondientes a las 7 reglas de x 2 (t) en las guras 6.46 a 6.50, las de los antecedentes de las 3 reglas de x 3 (t) en la guras 6.51 a 6.55, y, nalmente, las funciones de pertenencia de los antecedentes de las 2 reglas que modelan x 4 (t) se muestran en las guras 6.56 a 6.60.
1 0.9 0.8 0.7 (x1 (t)) para x 1 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x1 (t) 2 4 6 8

Figura 6.41: Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 1 (t).

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

195

1 0.9 0.8 0.7 (x2 (t)) para x 1 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x2 (t) 2 4 6 8

Figura 6.42: Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 1 (t).

1 0.9 0.8 0.7 (x3 (t)) para x 1 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -1 -0.5 0 x3 (t) 0.5 1

Figura 6.43: Funciones de pertenencia para la entrada x3 (t) en la inferencia de x 1 (t).

196

APLICACIONES

6.2

1 0.9 0.8 0.7 (x4 (t)) para x 1 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x4 (t) 2 4 6 8

Figura 6.44: Funciones de pertenencia para la entrada x4 (t) en la inferencia de x 1 (t).

1 0.9 0.8 0.7 (u(t)) para x 1 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -1000 -800 -600 -400 -200 0 u(t) 200 400 600 800 1000

Figura 6.45: Funciones de pertenencia para la entrada u(t) en la inferencia de x 1 (t).

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

197

1 0.9 0.8 0.7 (x1 (t)) para x 2 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x1 (t) 2 4 6 8

Figura 6.46: Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 2 (t).

1 0.9 0.8 0.7 (x2 (t)) para x 2 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x2 (t) 2 4 6 8

Figura 6.47: Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 2 (t).

198

APLICACIONES

6.2

1 0.9 0.8 0.7 (x3 (t)) para x 2 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -1 -0.5 0 x3 (t) 0.5 1

Figura 6.48: Funciones de pertenencia para la entrada x3 (t) en la inferencia de x 2 (t).

1 0.9 0.8 0.7 (x4 (t)) para x 2 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x4 (t) 2 4 6 8

Figura 6.49: Funciones de pertenencia para la entrada x4 (t) en la inferencia de x 2 (t).

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

199

1 0.9 0.8 0.7 (u(t)) para x 2 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -1000 -800 -600 -400 -200 0 u(t) 200 400 600 800 1000

Figura 6.50: Funciones de pertenencia para la entrada u(t) en la inferencia de x 2 (t).

1 0.9 0.8 0.7 (x1 (t)) para x 3 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x1 (t) 2 4 6 8

Figura 6.51: Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 3 (t).

200

APLICACIONES

6.2

1 0.9 0.8 0.7 (x2 (t)) para x 3 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x2 (t) 2 4 6 8

Figura 6.52: Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 3 (t).

1 0.9 0.8 0.7 (x3 (t)) para x 3 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -1 -0.5 0 x3 (t) 0.5 1

Figura 6.53: Funciones de pertenencia para la entrada x3 (t) en la inferencia de x 3 (t).

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

201

1 0.9 0.8 0.7 (x4 (t)) para x 3 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x4 (t) 2 4 6 8

Figura 6.54: Funciones de pertenencia para la entrada x4 (t) en la inferencia de x 3 (t).

1 0.9 0.8 0.7 (u(t)) para x 3 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -1000 -800 -600 -400 -200 0 u(t) 200 400 600 800 1000

Figura 6.55: Funciones de pertenencia para la entrada u(t) en la inferencia de x 3 (t).

202

APLICACIONES

6.2

1 0.9 0.8 0.7 (x1 (t)) para x 4 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x1 (t) 2 4 6 8

Figura 6.56: Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 4 (t).

1 0.9 0.8 0.7 (x2 (t)) para x 4 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x2 (t) 2 4 6 8

Figura 6.57: Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 4 (t).

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

203

1 PSfrag 0.9 0.8 0.7 (x3 (t)) para x 4 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -1 -0.5 0 x3 (t) 0.5 1

Figura 6.58: Funciones de pertenencia para la entrada x3 (t) en la inferencia de x 4 (t).

1 0.9 0.8 0.7 (x4 (t)) para x 4 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -10 -8 -6 -4 -2 0 x4 (t) 2 4 6 8

Figura 6.59: Funciones de pertenencia para la entrada x4 (t) en la inferencia de x 4 (t).

204

APLICACIONES
1 0.9 0.8 0.7 (u(t)) para x 4 (t) 0.6 0.5 0.4 0.3 0.2 0.1 0 -1000 -800 -600 -400 -200 0 u(t) 200 400 600 800 1000

6.2

Figura 6.60: Funciones de pertenencia para la entrada u(t) en la inferencia de x 4 (t).

Al ajustar los parmetros del modelo borroso mediante el algoritmo neuroborroso propuesto en [270], se obtiene el siguiente conjunto de reglas, donde la funcin Gaussmf representa la funcin de pertenencia gaussiana dada por la ecuacin (2.12), cuyos parmetros son el centro y el ancho, respectivamente:
SI x1 es Gaussmf(0,4073;9,959) y x2 es Gaussmf(-1,028;9,991) y x3 es Gaussmf(0,1844;2,091) y x4 es Gaussmf(0,7741;9,963) y es Gaussmf(-289,5;998,5) ENTONCES x 1 = 5,55106 -5,427+1x2 -1,812106 x3 -2,737107 x4 SI x1 es Gaussmf(-0,3721;9,959) y x2 es Gaussmf(6,016;9,991) y x3 es Gaussmf(0,02722;2,091) y x4 es Gaussmf(-5,582;9,963) y es Gaussmf(39,83;998,5) ENTONCES x 1 = -1,165105 -7,638+1x2 +3,315106 x3 -1,145106 x4 +1,638108 SI x1 es Gaussmf(-4,845;9,959) y x2 es Gaussmf(-9,196;9,991) y x3 es Gaussmf(-0,1623;2,091) y x4 es Gaussmf(-0,3103;9,963) y es Gaussmf(878,6;998,5) ENTONCES x 1 = 1,25106 +1,934107 x1 +1x2 +7,341107 x3 +2,985107 x4 SI x1 es Gaussmf(1,043;8,858) y x2 es Gaussmf(0,255;9,007) y x3 es Gaussmf(-0,6822;1,649) y x4 es Gaussmf(1,709;8,882) y es Gaussmf(-84,04;848,8) ENTONCES x 2 = 26,35-0,01899x1 -0,05199x2 -10,05x3 -0,01124x4 -0,0009459 SI x1 es Gaussmf(1,022;8,867) y x2 es Gaussmf(0,1771;9,013) y x3 es Gaussmf(0,8741;3,138) y x4 es Gaussmf(1,7;8,888) y es Gaussmf(-95,53;848,7) ENTONCES x 2 = -23,77+0,001001x1 +0,001826x2 +6,809x3 +0,0001997x4 SI x1 es Gaussmf(-2,073;8,709) y x2 es Gaussmf(3,663;8,441) y x3 es Gaussmf(0,01327;0,3791) y x4 es Gaussmf(-5,881;8,901) y es Gaussmf(226,2;848,7) ENTONCES x 2 = -0,42-0,01322x1 +0,01463x2 -9,655x3 -0,03124x4 +0,0001677 SI x1 es Gaussmf(-7,172;8,54) y x2 es Gaussmf(-4,562;8,528) y x3 es Gaussmf(-2,232;0,3734) y x4 es Gaussmf(-5,029;8,509) y es Gaussmf(-699,9;848,7) ENTONCES x 2 = 14,87+0,0424x1 +0,01048x2 +2,694x3 +0,024x4 +7,933106

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

205

SI x1 es Gaussmf(-8,432;8,516) y x2 es Gaussmf(4,808;8,488) y x3 es Gaussmf(0,7307;0,2098) y x4 es Gaussmf(3,968;8,457) y es Gaussmf(-814,6;848,7) ENTONCES x 2 = -1,625-0,002903x1 +0,005995x2 -6,621x3 -0,006514x4 +8,155105 SI x1 es Gaussmf(9,087;8,49) y x2 es Gaussmf(7,677;8,504) y x3 es Gaussmf(-1,72;0,1867) y x4 es Gaussmf(-6,585;8,456) y es Gaussmf(330,5;848,7) ENTONCES x 2 = 9,978+0,03442x1 +0,006406x2 +0,4106x3 -0,01601x4 +1,73105 SI x1 es Gaussmf(3,933;8,345) y x2 es Gaussmf(-9,609;8,622) y x3 es Gaussmf(-2,479;0,7481) y x4 es Gaussmf(8,201;8,593) y es Gaussmf(-228,6;848,7) ENTONCES x 2 = 12,31-0,0139x1 +0,02918x2 +1,299x3 -0,03136x4 -0,0001634 SI x1 es Gaussmf(0,4097;9,958) y x2 es Gaussmf(-1,027;9,991) y x3 es Gaussmf(0,1811;2,098) y x4 es Gaussmf(0,7732;9,964) y es Gaussmf(-289,5;998,5) ENTONCES x 3 = -1,415106 -1,448107 x1 +1,347106 x3 +1x4 SI x1 es Gaussmf(1,238;9,958) y x2 es Gaussmf(3,299;9,99) y x3 es Gaussmf(-0,4462;2,075) y x4 es Gaussmf(-6,692;9,965) y es Gaussmf(334;998,5) ENTONCES x 3 = 4,591106 -4,168107 x2 -2,117106 x3 +1x4 -8,434109 SI x1 es Gaussmf(-4,104;9,961) y x2 es Gaussmf(2,195;9,992) y x3 es Gaussmf(0,3734;2,097) y x4 es Gaussmf(9,556;9,973) y es Gaussmf(677,5;998,5) ENTONCES x 3 = 1,174107 x2 -2,867107 x3 +1x4 +2,686109 SI x1 es Gaussmf(0,4073;9,959) y x2 es Gaussmf(-1,028;9,991) y x3 es Gaussmf(0,1844;2,091) y x4 es Gaussmf(0,7741;9,963) y es Gaussmf(-289,5;998,5) ENTONCES x 4 = -0,002216-1x1 -2,969105 x2 +0,0001712x3 -1,9105 x4 +1 SI x1 es Gaussmf(3,747;9,959) y x2 es Gaussmf(1,766;9,991) y x3 es Gaussmf(0,1036;2,091) y x4 es Gaussmf(-0,4926;9,963) y es Gaussmf(534,6;998,5) ENTONCES x 4 = 0,00336-1x1 -0,0001285x2 -0,0002992x3 +0,0001179x4 +1

Al nalizar el modelado de la planta, el error cuadrtico medio resultante para x 1 (t), x 2 (t), 12 12 6 x 3 (t) y x 4 (t) fue de 5,03354 10 , 0,000102, 6,739 10 y 3,225 10 , respectivamente. Al validar el modelo se ha obtenido un error cuadrtico medio de 6,985 1012 para x 1 (t), 12 7 0,001171 para x 2 (t), 2,123 10 para x 3 (t) y 1,041 10 para x 4 (t). Observando estos resultado y la representacin grca de los errores de validacin del modelo de las guras 6.61 y 6.68, puede concluirse que el modelo borroso es vlido dentro del universo de discurso en el que ha sido realizado.

Estudio de la planta a partir de su modelo borroso Inicialmente la planta (6.25) era completamente desconocida, sin embargo, tal como se vio en la seccin 4.4, una vez que se posee un modelo borroso validado es posible extraer informacin muy til de la planta, como sus estados de equilibrio y la estabilidad de stos. Para ello se ha aplicando cinco veces el algoritmo de la gura 4.1 al modelo borroso de la planta, partiendo en cada una de las ejecuciones de un punto de inicio x0 aleatorio perteneciente al universo de discurso de las variables de estado. Los resultados obtenidos, tanto para el mtodo de Gauss-Newton como para el mtodo de Levenberg-Marquardt, aplicando el clculo explcito de la matriz jacobiana y sin aplicarlo, se muestran en las tablas 6.29 a 6.33. En todos los casos se ha supuesto (t) = eq = 0.

206

APLICACIONES

6.2

PSfrag

Real Modelo 10

x 1 0 -5 -10 0 50 100 150 200 250 Nmero de puntos

Figura 6.61: Validacin del modelo borroso para x 1.

2.5

Error MSE

Error x 1 1010

1.5

0.5

50

100

150

200

250

Nmero de puntos

Figura 6.62: Error de modelado durante la validacin de x 1.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

207

PSfrag

Real Modelo 10

x 2 0 -5 -10 0 50 100 150 200 250 Nmero de puntos

Figura 6.63: Validacin del modelo borroso para x 2.

10 9 8 7 Error x 2 103 6 5 4 3 2 1 0 50 100 150 200

Error MSE

250

Nmero de puntos

Figura 6.64: Error de modelado durante la validacin de x 2.

208

APLICACIONES

6.2

PSfrag

Real Modelo 10

x 3 0 -5 -10 0 50 100 150 200 250 Nmero de puntos

Figura 6.65: Validacin del modelo borroso para x 3.

7 6 5 4 3 2 1

Error MSE

Error x 3 1011

50

100

150

200

250

Nmero de puntos

Figura 6.66: Error de modelado durante la validacin de x 3.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

209

Real Modelo 1000

500 x 4 0 -500 -1000 0 50 100 150 200 250 Nmero de puntos

Figura 6.67: Validacin del modelo borroso para x 4.

Error MSE 30 25 Error x 4 107 20 15 10 5

50

100

150

200

250

Nmero de puntos

Figura 6.68: Error de modelado durante la validacin de x 4.

210

APLICACIONES

6.2

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 8,334e 05 4,738e 07 0,0012 5,782e 07 4 25 2,25336e-15 0,59785

G-N con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 4 10 2,25677e-15 0,124506

Levenberg-Marquardt 8,334e 05 4,738e 07 0,0012 5,782e 07 4 25 2,25336e-15 0,044559

L-M con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 4 10 2,25677e-15 0,039814

Tabla 6.29: Resultados de la bsqueda de estados de equilibrio. Ejecucin 1.

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 8,334e 05 4,738e 07 0,0012 5,782e 07 5 30 9,04042e-30 0,57885

G-N con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 5 12 5,76613e-30 0,10104

Levenberg-Marquardt 8,334e 05 4,738e 07 0,0012 5,782e 07 5 30 9,04042e-30 0,051286

L-M con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 5 12 5,76613e-30 0,041344

Tabla 6.30: Resultados de la bsqueda de estados de equilibrio. Ejecucin 2.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

211

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 8,334e 05 4,738e 07 0,0012 5,782e 07 5 30 3,31461e-19 0,579256

G-N con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 5 12 3,27946e-19 0,110237

Levenberg-Marquardt 8,334e 05 4,738e 07 0,0012 5,782e 07 5 30 3,31461e-19 0,052842

L-M con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 5 12 3,27946e-19 0,062197

Tabla 6.31: Resultados de la bsqueda de estados de equilibrio. Ejecucin 3.

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 8,334e 05 4,738e 07 0,0012 5,782e 07 5 30 1,63751e-28 0,579351

G-N con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 5 12 1,36959e-31 0,111862

Levenberg-Marquardt 8,334e 05 4,738e 07 0,0012 5,782e 07 5 30 1,63751e-28 0,05261

L-M con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 5 12 1,36959e-31 0,04175

Tabla 6.32: Resultados de la bsqueda de estados de equilibrio. Ejecucin 4.

212

APLICACIONES

6.2
G-N con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 5 12 3,30791e-16 0,099627 Levenberg-Marquardt 8,334e 05 4,738e 07 0,0012 5,782e 07 5 30 3,30549e-16 0,053277 L-M con jacobiana 8,334e 05 4,738e 07 0,0012 5,782e 07 5 12 3,30791e-16 0,059275

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 8,334e 05 4,738e 07 0,0012 5,782e 07 5 30 3,30549e-16 0,598084

Tabla 6.33: Resultados de la bsqueda de estados de equilibrio. Ejecucin 5.

Al analizando los resultados de las tablas 6.29 a 6.33 se observa que se ha obtenido un nico estado de equilibrio correspondiente prcticamente con el origen de coordenadas. Efectivamente el origen es el nico estado de equilibrio que posee la planta dentro del universo de discurso, y ha sido obtenido correctamente por el algoritmo de la gura 4.1 partiendo del modelo borroso de la planta, y sin requerir conocimiento previo de sta salvo un conjunto de datos de entrada/salida. Atendiendo a las respuestas de los distintos algoritmos empleados, para el caso del mtodo de Gauss-Newton queda patente una mejora prcticamente generalizada con la incorporacin del clculo explcito de la matriz jacobiana; sin embargo, para el mtodo de LevenbergMarquardt la mejora no es tan generalizada ni tan destacable. Siguiendo con el estudio de la planta a partir de su modelo borroso, es posible calcular el modelo lineal de sta en torno al estado de equilibrio obtenido anteriormente. Al aplicar el 5 7 algoritmo 4.2 en el estado de equilibrio xT eq = (8,334 10 , 4,737 10 , 0,0012, 5,782 107 )T , con eq = 0, se obtiene el sistema lineal:

0 0 1 0 0 0,0001 0,004 0,0059 9,7417 0,0101 x (t) x (t), (t) + 0 0 0 0 1 1 1 0 0,0001 0

(6.28)

siendo x = x xeq y = eq , y cuyos autovalores son 1 = 1,7695, 2 = 1,7650 y 3,4 = 0,0007 1,7661i. Por lo tanto, se puede armar que, al haber un autovalor con parte real positiva, el estado de equilibrio del sistema es inestable en lazo abierto.

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

213

cuyos autovalores son 1 = 1,7693, 2 = 1,7639 y 3,4 = 0 1,7693i. Como se puede observar, tanto el sistema linealizado como los autovalores obtenidos tan slo a partir del estudio del modelo borroso de la planta, son bastante aproximados a los reales. Diseo de un controlador borroso estable

Si con objeto de contrastar los resultados anteriores, se calcula el sistema linealizado a partir de la ecuacin de estado (6.27) de la planta real, se obtiene que: 0 0 1 0 0 0 0 0 9,8 0 (t), x (t) x (6.29) (t) + 0 0 0 0 1 1 0 0 0 1

El siguiente paso es disear un controlador borroso utilizando el algoritmo presentado en la seccin 5.4.4, de forma que se garantice la estabilidad del sistema de control de lazo cerrado en torno al estado de equilibrio situado en el origen. Durante la fase de inicializacin se crean tantas regiones como reglas totales tenga la planta, en este caso s = 3 + 7 + 3 + 2 = 15, y se inicializan las matrices Pq , con q = 1.,15, como la matriz identidad. Las regiones q (x) se denen a partir de las funciones de pertenencia del controlador, segn se establece en el algoritmo 5.6. Una vez concluidas las fases de diseo y de ajuste del estado de equilibrio, se obtiene el siguiente controlador borroso:
SI x1 es Gaussmf(0,4073;9,959) y x2 es Gaussmf(-1,028;9,991) y x3 es Gaussmf(0,1844;2,091) y x4 es Gaussmf(0,7741;9,963) ENTONCES = -234,8+1,82x1 +4,862x2 -848,3x3 -128,4x4 SI x1 es Gaussmf(-0,3721;9,959) y x2 es Gaussmf(6,016;9,991) y x3 es Gaussmf(0,02722;2,091) y x4 es Gaussmf(-5,582;9,963) ENTONCES = -685,6+1,056x1 +55,02x2 -461,9x3 -78,43x4 SI x1 es Gaussmf(-4,845;9,959) y x2 es Gaussmf(-9,196;9,991) y x3 es Gaussmf(-0,1623;2,091) y x4 es Gaussmf(-0,3103;9,963) ENTONCES = -402,5+22,52x1 +77,02x2 -999,4x3 -563x4 SI x1 es Gaussmf(1,043;8,858) y x2 es Gaussmf(0,255;9,007) y x3 es Gaussmf(-0,6822;1,649) y x4 es Gaussmf(1,709;8,882) ENTONCES = -71,62+4,288x1 +4,271x2 -403,8x3 -84,73x4 SI x1 es Gaussmf(1,022;8,867) y x2 es Gaussmf(0,1771;9,013) y x3 es Gaussmf(0,8741;3,138) y x4 es Gaussmf(1,7;8,888) ENTONCES = 607,5+1,606x1 +0,5682x2 -290,8x3 -124,3x4 SI x1 es Gaussmf(-2,073;8,709) y x2 es Gaussmf(3,663;8,441) y x3 es Gaussmf(0,01327;0,3791) y x4 es Gaussmf(-5,881;8,901) ENTONCES = -5,442+0,918x1 +1,093x2 -969x3 -32,39x4 SI x1 es Gaussmf(-7,172;8,54) y x2 es Gaussmf(-4,562;8,528) y x3 es Gaussmf(-2,232;0,3734) y x4 es Gaussmf(-5,029;8,509) ENTONCES = -455,2+0,8671x1 -26,72x2 -90,27x3 -127,8x4

214

APLICACIONES

6.2

SI x1 es Gaussmf(-8,432;8,516) y x2 es Gaussmf(4,808;8,488) y x3 es Gaussmf(0,7307;0,2098) y x4 es Gaussmf(3,968;8,457) ENTONCES = 984,2+2,523x1 +5,306x2 -674,2x3 -245,4x4 SI x1 es Gaussmf(9,087;8,49) y x2 es Gaussmf(7,677;8,504) y x3 es Gaussmf(-1,72;0,1867) y x4 es Gaussmf(-6,585;8,456) ENTONCES = -379,2+0,3281x1 -3,544x2 -11,78x3 -2,804x4 SI x1 es Gaussmf(3,933;8,345) y x2 es Gaussmf(-9,609;8,622) y x3 es Gaussmf(-2,479;0,7481) y x4 es Gaussmf(8,201;8,593) ENTONCES = 686,3-1,819x1 +0,5094x2 -53,64x3 -3,184x4 SI x1 es Gaussmf(0,4097;9,958) y x2 es Gaussmf(-1,027;9,991) y x3 es Gaussmf(0,1811;2,098) y x4 es Gaussmf(0,7732;9,964) ENTONCES = -642+1,13x1 +42,87x2 -160,2x3 -79,8x4 SI x1 es Gaussmf(1,238;9,958) y x2 es Gaussmf(3,299;9,99) y x3 es Gaussmf(-0,4462;2,075) y x4 es Gaussmf(-6,692;9,965) ENTONCES = 295,1+1,224x1 +0,2051x2 -236,5x3 -19,86x4 SI x1 es Gaussmf(-4,104;9,961) y x2 es Gaussmf(2,195;9,992) y x3 es Gaussmf(0,3734;2,097) y x4 es Gaussmf(9,556;9,973) ENTONCES = 251,9+1,481x1 +6,343x2 -15,19x3 -53,51x4 SI x1 es Gaussmf(0,4073;9,959) y x2 es Gaussmf(-1,028;9,991) y x3 es Gaussmf(0,1844;2,091) y x4 es Gaussmf(0,7741;9,963) ENTONCES = -146,2+1,066x1 +18,05x2 -127,2x3 -77,6x4 SI x1 es Gaussmf(3,747;9,959) y x2 es Gaussmf(1,766;9,991) y x3 es Gaussmf(0,1036;2,091) y x4 es Gaussmf(-0,4926;9,963) ENTONCES = 924,2+1,156x1 +4,171x2 -998,5x3 -318,4x4

Las matrices Pq , q = 1..15, obtenidas durante la fase de diseo son: 1,03605 0,26700 33,59060 0,14408 0,26700 139,22268 83,97937 1,65894 P1 = 33,59060 83,97937 33600,18560 154,76559 0,14408 1,65894 154,76559 13,02369 1,05110 0,72560 0,96851 0,02303 0,72560 18,96391 50,66650 0,16380 P2 = 0,96851 50,66650 543,51591 5,70102 0,02303 0,16380 5,70102 1,61686 1,58212 0,47886 6,41573 0,14843 0,47886 6,70578 19,35691 0,36642 P3 = 6,41573 19,35691 295,25209 6,88047 0,14843 0,36642 6,88047 4,06310

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

215

1,08457 0,21714 9,73892 0,00011 0,21714 16,04206 6,05531 0,33527 P4 = 9,73892 6,05531 1227,02882 0,57986 0,00011 0,33527 0,57986 3,18787 1,05994 0,51358 2,65288 0,02379 0,51358 71,11985 211,75601 1,75572 P5 = 2,65288 211,75601 2072,49323 18,06140 0,02379 1,75572 18,06140 2,59142 1,24421 0,09989 14,74030 0,11935 0,09989 470,03554 116,22256 7,61379 P6 = 14,74030 116,22256 188101,52383 1217,19083 0,11935 7,61379 1217,19083 291,52925 1,00981 0,04209 1,22501 0,02482 0,04209 25,35674 0,13656 0,88133 P7 = 1,22501 0,13656 594,88711 10,44824 0,02482 0,88133 10,44824 4,18270 1,05658 0,26597 17,40225 0,01933 0,26597 47,38054 39,99620 0,53799 P8 = 17,40225 39,99620 6041,15180 8,55216 0,01933 0,53799 8,55216 12,77277 1,21353 0,80756 2,86685 0,25734 0,80756 133,76820 12,54050 4,25095 P9 = 2,86685 12,54050 49,03863 4,50226 0,25734 4,25095 4,50226 3,65691 1,29029 0,00385 4,55386 0,24077 0,00385 9,99605 0,10397 0,17388 P10 = 4,55386 0,10397 85,86731 4,36586 0,24077 0,17388 4,36586 1,55064

216

APLICACIONES

6.2 0,02890 0,19035 21,21616 1,76804 0,00034 3,46191 3,95020 1,76752 0,13766 0,31895 4,13503 2,79482

1,01317 0,19151 2,74596 0,19151 113,29462 50,73942 P11 = 2,74596 50,73942 2549,77750 0,02890 0,19035 21,21616 1,20771 0,07370 0,36812 0,07370 90,34005 66,78123 P12 = 0,36812 66,78123 377,34342 0,00034 3,46191 3,95020 1,45936 0,03273 12,56280 0,03273 3,36161 0,79467 P13 = 12,56280 0,79467 372,91436 0,13766 0,31895 4,13503 1,01904 4,23703 31,92389 1,96656 4,23703 982,68227 6701,97343 410,26987 P14 = 31,92389 6701,97343 82803,86893 3359,93929 1,96656 410,26987 3359,93929 3459,89161 1,08186 3,35248 9,64731 0,06333 3,35248 975,82452 785,56530 7,07640 P15 = 9,64731 785,56530 243397,41648 802,38340 0,06333 7,07640 802,38340 118,52195 En las guras 6.69, 6.70, 6.71 y 6.72 se puede observar la evolucin del sistema diseado partiendo de distintas condiciones iniciales. En dichas guras puede comprobarse que efectivamente, todas las trayectorias que no abandonan el universo de discurso de las variables de estado tienden al estado de equilibrio situado en el origen. La estabilidad de aquellas trayectorias que abandonan el universo de discurso de las variables de estado, mostradas en trazo punteado, no puede garantizarse, ya que el modelo borroso de la planta no tiene porqu ser vlido fuera del rango de valores para el que fue obtenido. Por lo tanto, al no ser posible garantizar el cumplimiento del teorema 5.7 para dichas trayectorias, no puede asegurarse formalmente su estabilidad. Ha de tenerse en cuenta que las simulaciones presentadas en las guras 6.69 a 6.72 han sido realizadas utilizando aplicando el controlador borroso al sistema real dado por (6.27), con lo que se demuestra que el controlador borroso diseado estabiliza la planta real, y no slo el modelo borroso de la planta que fue utilizado como base para su diseo. Una vez se aplica el controlador borroso diseado a la planta, el sistema resultante presenta un estado de equilibrio asintticamente estable en el origen, tal como puede verse en las

6.2

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

217

20 0 -20 0 2 4 6 8 10 Tiempo (s) 10 5 0 -5 -10 0 2 4 6 8 10 Tiempo (s) 12 14 16 18 20 x2 12 14 16 18 20 x1 x3

Figura 6.69: Simulacin para distintas condiciones iniciales x 1 y x 2.

1 0 -1 0 10 5 0 -5 -10 0 2 4 6 8 10 Tiempo (s) 12 14 16 18 20 x4 2 4 6 8 10 Tiempo (s) 12 14 16 18 20

Figura 6.70: Simulacin para distintas condiciones iniciales x 3 y x 4.

218

APLICACIONES

6.2

0 5 T iempo(s) 10 15 20 10 5 0 -5 -10 x2 -30 -20 -10 x1 0 10 20 30

Figura 6.71: Retrato de fase temporal x 1 y x 2.

0 5 T iempo(s) 10 15 20 10 5 0 -5 -10 x4 -1.5 -1 -0.5 x3 0 0.5 1 1.5

Figura 6.72: Retrato de fase temporal x 3 y x 4.

6.3

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

219

guras 6.69 a 6.72. Esto puede demostrarse5 a travs de los autovalores de la matriz jacobiana del sistema de lazo cerrado. Aplicando el algoritmo de la gura 4.5 al sistema de control borroso en lazo cerrado en el origen, se obtiene la siguiente matriz jacobiana: 0 1 0 0 0,0032 0,0074 9,7115 0,0183 J ( 0) = 0 0 0 1 11,4953 22,8319 477,8912 126,1496

(6.30)

cuyos autovalores son 1 = 122,26, 2 = 3,44 y 3,4 = 0,23 0,46i. Efectivamente, como puede observarse, la parte real de dichos autovalores es negativa, lo que implica que el estado de equilibrio es asintticamente estable. Finalmente, para completar el estudio sobre el sistema es posible estudiar los estados de equilibrio del sistema en lazo cerrado. ara ello se ha aplicando cinco veces el algoritmo numrico de minimizacin de la gura 4.1, partiendo en cada una de las ejecuciones de un punto de inicio x0 aleatorio perteneciente al universo de discurso de las variables de estado. En los resultados obtenidos, mostrados en las tablas 6.34 a 6.38, se puede comprobar que efectivamente slo existe un estado de equilibrio prcticamente situado sobre el origen de coordenadas.
Gauss-Newton 0,0064 4,7396e 07 0,0012 5,785e 07 25 110 2,76701e-28 0,737866 G-N con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07 25 52 9,64293e-28 0,243621 Levenberg-Marquardt 0,0064 4,7396e 07 0,0012 5,785e 07 25 110 2,76701e-28 0,199435 L-M con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

25 52

9,64293e-28 0,186437

Tabla 6.34: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 1.

Ntese que esta demostracin tan slo es vlida para las cercanas del estado de equilibrio. La estabilidad queda garantizada por la aplicacin del teorema 5.7 durante la fase de diseo del controlador borroso.

220

APLICACIONES

6.3

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 0,0064 4,7396e 07 0,0012 5,785e 07

551

G-N con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07

1465 2932

Levenberg-Marquardt 0,0064 4,7396e 07 0,0012 5,785e 07 551 2548 2,40302e-18 4,46588

L-M con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07

1465 2932

2548 2,40302e-18 4,71242

4,29154e-29 9,84239

4,29154e-29 9,71609

Tabla 6.35: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 2.

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 0,0064 4,7396e 07 0,0012 5,785e 07

121 590

G-N con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07

121 244

Levenberg-Marquardt 0,0064 4,7396e 07 0,0012 5,785e 07 121 590

L-M con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07

121 244

1,01851e-22 1,58014

2,03138e-22 0,864876

1,01851e-22 0,999378

2,03138e-22 0,806881

Tabla 6.36: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 3.

6.3

SNTESIS DE CONTROLADORES BORROSOS ESTABLES POR DISEO

221

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 0,0064 4,7396e 07 0,0012 5,785e 07 8 45 1,39525e-22 0,652616

G-N con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07 8 18 1,0284e-24 0,132435

Levenberg-Marquardt 0,0064 4,7396e 07 0,0012 5,785e 07 8 45 1,39525e-22 0,082876

L-M con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07 8 18 1,0284e-24 0,074827

Tabla 6.37: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 4.

Estado de equilibrio

N Iteraciones Evaluaciones de la funcin objetivo Distancia del punto obtenido al 0 Tiempo (s)

Gauss-Newton 0,0064 4,7396e 07 0,0012 5,785e 07 17 70

G-N con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07 17 36

Levenberg-Marquardt 0,0064 4,7396e 07 0,0012 5,785e 07 17 70

L-M con jacobiana 0,0064 4,7396e 07 0,0012 5,785e 07

17

36

2,25028e-23 0,680848

1,33639e-26 0,193084

2,25028e-23 0,13714

1,33639e-26 0,135608

Tabla 6.38: Resultados de la bsqueda de estados de equilibrio para el sistema en lazo cerrado. Ejecucin 5.

222

APLICACIONES

6.3

6.3.

Conclusiones

Es preciso no obviar que la lgica borrosa permite reejar de forma relativamente sencilla el conocimiento de un experto mediante reglas, lo que condujo a los primeros xitos de la lgica borrosa a nivel industrial. En este captulo se ha abordado el diseo de un controlador borroso basado en el conocimiento de un operario experto, demostrando mediante simulacin el correcto funcionamiento del mismo. La proliferacin actual de sistemas complejos donde un operario no puede realizar el control tan slo por su conocimiento sobre la planta, y donde se hace difcil el diseo mediante las tcnicas clsicas de control no lineal, propicia la necesidad de una metodologa de diseo general de sntesis de control no lineales. En este captulo se han abordado varios ejemplos de diseo mediante la metodologa presentada en el captulo 5, la cual hace uso de todas las tcnicas tratadas en los captulos anteriores, esto es: modelado de la planta a partir de datos de entrada/salida (captulo 3), estudio de los estados de equilibrio de sta a travs de su modelo borroso (captulo 4), y diseo de un controlador borroso que garantice la estabilidad del sistema de control en lazo cerrado (captulo 5). Un vez diseado el controlador borroso, se ha procedido a estudiar el sistema de control borroso en lazo cerrado para as comprobar su correcto funcionamiento. Hay que destacar que en todos los casos estudiados se han obtenido los estados de equilibrio de la planta tan slo a partir de su modelo borroso, es decir, considerando la planta completamente desconocida y tan slo aplicando las tcnicas propuestas en el captulo 4 a su modelo borroso. As, se ha conseguido conocer los estados de equilibrio de la planta con bastante exactitud, adems de la estabilidad local de los mismos. Tambin se ha conseguido, en todos los casos, el diseo de un controlador borroso que estabiliza el sistema de lazo cerrado en una regin bastante amplia alrededor del estado de equilibrio deseado. Este paso se ha realizado, como el anterior, partiendo de la suposicin de que la planta es desconocida, y sin aportar ningn conocimiento externo al proceso de diseo.

Cap tulo

Conclusiones y desarrollos futuros

ste ltimo captulo cierra la memoria de la Tesis extrayendo las principales conclusiones derivadas de los trabajos de investigacin presentados. En una segunda seccin del captulo se esgrimen las principales aportaciones y lneas de trabajo futuras que, sustentados en los desarrollos y propuestas presentados, se prevn puedan surgir a partir de la Tesis. En esta Tesis se ha presentado una metodologa de anlisis y diseo completamente general para sistemas borrosos multivariables no lineales, as como el software necesario para su implementacin prctica. La metodologa desarrollada est basada en tres pasos, los cuales han sido estudiados de forma sistemtica a lo largo de todos los captulos que conforman la Tesis: 1) identicacin de la planta a partir de datos de entrada/salida (Captulo 3); 2) obtencin de informacin de la dinmica de la planta mediante la obtencin de sus estados de equilibrio, y el estudio de la estabilidad local de stos mediante la linealizacin del modelo borroso de la planta (Captulo 4); y 3), diseo de un controlador borroso que garantice la estabilidad en lazo cerrado del sistema (Captulo 5). La novedad y generalidad de la metodologa desarrollada est sustentada en las razones siguientes: 1. Hace uso del hecho probado de que los modelos borrosos de tipo TSK son aproximadores universales, tanto de la funcin [210213] como de su derivada [214217]. 2. Puede ser aplicada a sistemas no lineales multivariables. 3. No es necesario conocer el modelo matemtico de la planta ni poseer conocimientos previos sobre su dinmica, ya que su modelo puede ser obtenido a partir de datos de entrada/salida y su dinmica estudiada a partir de dicho modelo. Evidentemente, si se posee informacin relativa a la planta podr utilizarse para facilitar tanto el proceso de modelado como el posterior diseo del controlador. 4. El proceso de modelado de la planta y el de diseo del controlador se consideran completamente independientes, de forma que cada uno de los modelos borrosos podr tener un nmero distinto de reglas, distintas funciones de pertenencia, etc. 5. La complejidad tanto del modelo borroso de la planta como del controlador no est limitada, de forma que la metodologa no est sujeta a especicidades ni simplicaciones. 223

224

CONCLUSIONES Y DESARROLLOS FUTUROS

7.1

6. En lo que respecta a los antecedentes tanto del modelo borroso de la planta como del controlador, cada regla se considera completamente independiente del resto, y no se limita el tipo ni la distribucin de sus funciones de pertenencia, lo cual resultar especialmente til si se realiza particionamiento por clustering. 7. Esta metodologa permite la utilizacin de distintos tipos de funciones de pertenencia, incluso mezcladas en un mismo modelo borroso. 8. Durante el proceso de diseo no se realizan linealizaciones ni simplicaciones de ningn tipo.

7.1.

Conclusiones

Atendiendo al estudio y la revisin del estado del arte realizados en el Captulo 2, se puede concluir que la lgica borrosa se ha ganado el reconocimiento del que goza en la actualidad en base a los excelentes resultados que ha cosechado, tanto en el mbito investigador como en el industrial. Gran parte de este reconocimiento se debe al hecho de que la lgica borrosa es capaz de generar la respuesta a una situacin basndose en el conocimiento adquirido de sta, aunque ste sea inexacto o incompleto, tomando como base la imprecisin del razonamiento humano, pero eso s, bajo un planteamiento matemtico. En este captulo tambin se han estudiado los distintos tipos de sistemas borrosos, concluyndose en base al estudio bibliogrco realizado, que los sistemas borrosos de tipo TakagiSugenoKang, o TSK de forma abreviada, son aproximadores universales de cualquier funcin y su derivada. En el Captulo 3 se ha presentado una metodologa que permite afrontar, en base a datos de entrada/salida, el modelado borroso en forma de ecuaciones de estado de un sistema de control multivariable no lineal. La formalizacin matemtica de dicha metodologa se aborda de forma totalmente general, es decir, sin aplicar ningn tipo de restricciones ni al tamao del vector de estado, ni al del vector de control, ni al tipo de funcin de pertenencia utilizada en la denicin de los conjuntos borrosos. Teniendo en cuenta estas consideraciones, se ha obtenido el modelo borroso de estado de una planta y de un controlador completamente generales, as como del sistema de control borroso en lazo cerrado formado por stos. Atendiendo al proceso de identicacin de la planta en base a datos de entrada/salida, en este captulo se han estudiado las distintas fases que componen dicho proceso, y se ha propuesto una nueva metodologa, denominada hbrida, basada en la conjuncin de la clsica metodologa neuroborrosa y la heurstica bioinspirada. Como se puede comprobar en [169], esta nueva tcnica, an en una fase inicial de desarrollo, resulta bastante prometedora, por lo que es previsible que sea objeto de un futuro trabajo de renamiento y mejora. El Captulo 4 propone una metodologa de anlisis de los sistemas borrosos basada en la teora de control no lineal, y cuya formalizacin matemtica se ha desarrollado a lo largo del propio captulo. Partiendo del modelo borroso de estado obtenido en el captulo anterior se calcula el modelo lineal de un modelo de estado borroso en un punto. Dado que en el modelo de partida no se han denido restricciones de ningn tipo, el clculo del modelo linealizado tambin puede considerarse completamente general. De igual forma, partiendo del modelo matemtico equivalente del sistema de control borroso en lazo cerrado, manteniendo la misma losofa de generalidad que en el caso anterior, y considerndose que la planta y el

7.1

CONCLUSIONES

225

controlador son a todos los efectos sistemas completamente independientes, se ha obtenido su modelo linealizado en un punto, o sea, su matriz jacobiana. Adicionalmente, en el captulo 4 tambin se ha presentado un algoritmo para la obtencin de los estados de equilibrio del sistema borroso, independientemente de si se considera nicamente la planta o el sistema en lazo cerrado. Con objeto de mejorar la convergencia y la precisin de los resultados de estos algoritmos, se propone incorporar a los mismos el clculo explcito de la matriz jacobiana obtenida previamente. El modelo linealizado de un sistema no lineal permite extraer generalmente mucha informacin sobre el comportamiento de ste, por lo que la consecucin del algoritmo para su clculo, propuesto en este captulo, puede ser de gran ayuda en el anlisis de sistemas dinmicos. Si adems se aade la posibilidad de obtener los estados de equilibrio del sistema no lineal, la informacin que puede extraerse del mismo, tan slo a partir de su modelo borroso, es mucho ms interesante. Por ejemplo, se pueden hallar los estados de equilibrio del sistema, y estudiar la estabilidad local de los mismos a travs del modelo linealizado, y todo ello sin haber requerido previamente el conocimiento explcito de las ecuaciones del sistema no lineal, si no a partir de un modelo borroso obtenido en base a datos de entrada/salida. El Captulo 5 cierra la metodologa general de anlisis y diseo de sistemas borrosos mediante la propuesta de un teorema de estabilidad para sistemas no lineales. Este teorema permite afrontar la sntesis de controladores borrosos estables por diseo, es decir, donde la estabilidad del sistema en lazo cerrado quede garantizada en el propio proceso de diseo, de forma ms exible que otros teoremas existentes, como el teorema de Krasovskii. En este mismo captulo tambin se ha desarrollado un algoritmo de diseo que permite aplicar el teorema propuesto a la sntesis de un controlador borroso para un caso general, es decir, donde inicialmente la planta fuese completamente desconocida y slo se tuviese acceso a su modelo borroso. El Captulo 6, ha estado dedicado a resolver una serie de aplicaciones prcticas sobre anlisis y el diseo de sistemas de control borroso mediante las tcnicas desarrolladas en los captulos previos. En primer lugar se ha diseado un controlador borroso basado en el conocimiento de un operario experto para una planta compleja como es una gra porta contenedores, de esta forma se pretende demostrar de forma prctica las posibilidades que la lgica borrosa brinda de realizar control con palabras, y que, como se vio en el captulo 2, propici la inclusin masiva de la lgica borrosa en los mbitos industriales. La siguiente seccin del captulo 6 estuvo dedicada a la metodologa de anlisis y diseo que constituye el cuerpo de esta Tesis. En esta seccin se estudiaron tres sistemas dinmicos no lineales. Sus dinmicas se suponen totalmente desconocidas para as presentar de la forma ms general posible la metodologa de diseo propuesta en el captulo 5: 1. Identicacin de la planta y representacin en forma de modelo borroso de estado. 2. Estudio de la planta y obtencin de informacin dinmica de la misma a partir de su modelo borroso. 3. Diseo de un controlador borroso que garantice la estabilidad asinttica en lazo cerrado. Los tres sistemas estudiados han sido: un ejemplo ilustrativo de mltiple entrada y mltiple salida (MIMO), que pretende facilitar la compresin de la metodologa de diseo propuesta;

226

CONCLUSIONES Y DESARROLLOS FUTUROS

7.2

un pndulo, que representa un sistema no lineal con mltiples estados de equilibrio, cuyo objetivo es demostrar la validez de la fase de anlisis y diseo; y un balancn, que representa un sistema no lineal se uso comn en la literatura relacionada con sistemas no lineales. Una vez obtenido un modelo borroso de cada uno de los sistemas, se ha procedido a estudiar sus estados de equilibrio y la estabilidad local de los mismo. Hay que destacar que en todos los casos se han obtenido unos estados de equilibrio muy similares a los reales, partiendo nicamente del modelo borroso de la planta, y que el estudio de estabilidad local realizado en todos los casos demostr la validez de la metodologa propuesta. Finalmente se ha procedido a disear un controlado borroso mediante el algoritmo de diseo propuesto en el captulo 5, cuya estabilidad se ha demostrado mediante simulacin y mediante un nuevo anlisis de los estados de equilibrio del sistema, ahora ya realimentado, y de su estabilidad local.

7.2.

Desarrollos futuros

Normalmente un trabajo de investigacin no suele ser algo cerrado, si no ms bien todo lo contrario, una puerta abierta al estudio de nuevas situaciones que se plantean durante el desarrollo de la propia investigacin. En una Tesis doctoral este hecho es, si cabe, an ms notorio; ya que la extensin del trabajo realizado tanto en el tiempo como en los contenidos abordados, va generando constantemente nuevas ideas que necesariamente deben ser aparcadas para su estudio posterior. En esta seccin se pretende presentar de forma resumida algunas de las posibles lneas futuras de investigacin que pueden manar de este trabajo: Con respecto al Captulo 3, dados los buenos resultados preliminares que ha mostrado la metodologa hbrida propuesta, se hace necesario una profundizacin en su estudio y un mayor desarrollo de los algoritmos de identicacin paramtrica. Uno de los mayores inconvenientes que presenta esta metodologa, es la necesidad de discretizar el espacio de soluciones para aplicar la heurstica de colonias de hormigas; sin embargo, trabajos publicados recientemente [343346] han resuelto este problema, permitiendo la aplicacin de esta heurstica a la optimizacin de problemas en espacios continuos. Por lo tanto, se plantea como una lnea de investigacin futura la modicacin de la metodologa hbrida propuesta para adaptarla a los nuevos algoritmos existentes de optimizacin mediante colonias de hormigas para espacios continuos. En el Captulo 4 se ha planteado la necesidad de continuar con la formalizacin de los sistemas borrosos mediante la aplicacin de los mtodos existentes en la teora de control no lineal al estudio de stos. Siguiendo con esta losofa, es posible extender el estudio realizado durante este captulo a sistemas no lineales complejos, con idea de disear algoritmos que permitan, por ejemplo, la deteccin de bifurcaciones o ciclos lmites. Actualmente se est iniciando un trabajo a este respecto. Para ello se est empleando como planta un circuito biestable con diodo tnel [220], cuyos estados de equilibrio se modican drsticamente con una pequea variacin en los parmetros del circuito, pudiendo pasar de poseer uno a tres estados de equilibrio. En el Captulo 5 se ha propuesto un algoritmo de diseo que permite la obtencin de un controlador borroso que estabilice el sistemas de control en lazo cerrado para una planta dada. Este algoritmo se basa en la bsqueda de los parmetros del controlador para el

7.2

DESARROLLOS FUTUROS

227

cumplimiento del teorema 5.7 mediante la aplicacin recursiva de una fase de bsqueda global y otra local. Para la bsqueda global se ha utilizado un algoritmo gentico [340], mientras que para la bsqueda local se ha utilizado el algoritmo numrico de NelderMead [341]. Este procedimiento resulta lento, y la convergencia del algoritmo no puede garantizarse. Por lo tanto, como trabajo futuro surge la posibilidad de optimizar el algoritmo de diseo presentado en esta Tesis. Esta optimizacin puede realizarse de forma simultnea por dos vertientes: Optimizacin de la programacin del propio algoritmo. Esta optimizacin podra incidir en un aumento considerable de la velocidad de cmputo y, por lo tanto, en una reduccin del tiempo de convergencia de ste. Esta optimizacin puede realizarse sustituyendo todo el proceso programado en MATLAB por un cdigo C/C++, mucho ms rpido que el primero. Adems, si la implementacin del algoritmo en C/C++ se aprovecha, en base a un estudio previo que sera necesario, para paralelizar ciertas fases del mismo, se puede aumentar an ms la velocidad de convergencia. Otra posibilidad es la preparacin del algoritmo diseado para su ejecucin en sistemas de cmputo basados en GPUs, cuya velocidad en el procesamiento de clculos paralelos est provocando que la comunidad cientca utilice cada vez ms esta alternativa a la computacin tradicional [347, 348]. Optimizacin de la metodologa de diseo empleada en el algoritmo. El algoritmo de diseo debe realizar la bsqueda de las soluciones al problema en un espacio de dimensin muy elevada, ya que debe obtener los valores de cada uno de los parmetros adaptables del consecuente de cada una de las reglas, lo que supone n + 1 parmetros por cada regla del controlador borroso, donde n el orden del sistema. Adems, el mismo algoritmo debe obtener los n(n + 1)/2 parmetros necesarios para denir cada una de las matrices Pq , donde q = 1..s y s es el nmero de regiones en las que se divide el universo de discurso de las variables de estado para la realizacin del diseo del controlador. Por lo tanto, la incorporacin al algoritmo de informacin que facilite la estabilizacin del sistema de control, podra redundar en una enorme reduccin del tiempo de cmputo y una mejora en la convergencia del mismo. Esta informacin podra provenir, por ejemplo, de un anlisis basado en linealizacin. Estos valores seguramente no permitiran el cumplimiento del teorema 5.7, pero s acotaran el problema al disponer de valores cercanos a los vlidos para estabilizar el sistema. La optimizacin de la metodologa tambin puede basarse en un estudio puramente terico de la funciones no lineales que representan el sistema de control borroso en lazo cerrado, ver seccin 3.2.1. Este estudio es sin lugar a dudas arduo, dada la propia complejidad y el carcter general de dichas ecuaciones, pero proporcionara un mecanismo de sntesis de controladores borrosos general y directo. Adems de las posibles lneas de investigacin que se han comentado hasta este instante, tambin resulta factible e interesante la iniciacin de una lnea ms inmediata, el desarrollo de la metodologa equivalente para sistemas discretos. Finalmente cabra comentar que, tal como se arma en [349], la investigacin en el rea de control no ha explotado an sucientemente la idea de la propagacin de la incertidumbre a

228

CONCLUSIONES Y DESARROLLOS FUTUROS

7.2

las funciones de pertenencia; lo que se corresponde con los denominado conjuntos borrosos tipo-2. Los sistemas borrosos tipo-2 pueden mejorar notablemente el modelado de los sistemas dinmicos no lineales, empleando para ello un nmero menor de reglas [350], por lo tanto, su utilizacin puede ser muy beneciosa para el objetivo de analizar y disear sistemas de control no lineales mediante lgica borrosa. La incorporacin de los sistemas borrosos tipo-2 a la metodologa presentada en este texto supone todo un reto, y por lo tanto una lnea de investigacin muy interesante. Para realizarlo sera necesario extender todas las tcnicas desarrolladas en esta Tesis a dicho tipo de conjuntos borrosos, y seguramente, disear nuevos algoritmos para el anlisis y diseo de este tipo de sistemas.

Apendice

Leyenda de ndices y variables


A continuacin se presenta a modo de ayuda una tabla donde se muestran ordenados alfabticamente los ndices y variables ms importantes empleados en los desarrollos de este texto. Trmino
p al 0i , a0i

Descripcin Trmino constante correspondiente al consecuente afn de la regla l o p del modelo borroso de la planta. Trmino constante correspondiente al consecuente TSK asociado a la variable de estado xk de la regla l o p del modelo borroso de la planta. Trmino variable del modelo borroso de la planta, dependientes de las variables de estado y control, asociado a la variable de estado xk y a la i-sima ecuacin del proceso. Estos trminos son los mismos que los denidos mediante el ndice k en vez de q , salvo que se utilizan cuando se hace referencia a la derivada con respecto a la variable de estado xq . Conjunto borroso denido en el universo de discurso de la variable de estado xk , en la regla l de la i-sima ecuacin de estado de la planta. Trmino constante correspondiente al consecuente TSK asociado a la seal de control uj de la regla l o p del modelo borroso de la planta. Trmino variable del modelo borroso de la planta, dependientes de las variables de estado y control, asociado a la seal de control uj y a la i-sima ecuacin del proceso. Conjunto borroso denido en el universo de discurso de la seal de control uj , en la regla l de la i-sima ecuacin de estado de la planta. Trmino constante correspondiente al consecuente afn de la regla r o s del modelo borroso del controlador. 229

p al ki , aki

aki (x, u)

aqi (x, u)

Al ki
p bl ji , bji

bji (x, u)

l Bji

s cr 0i , c0i

230

APNDICE A

Trmino
s cr kj , ckj

Descripcin Trmino constante correspondiente al consecuente TSK asociado a la variable de estado xk de la regla r o s del modelo borroso del controlador. Trmino variable del modelo borroso del controlador, dependientes de las variables de estado y asociado a la variable de estado xk y la j -sima seal de control. Estos trminos son los mismos que los denidos mediante el ndice k en vez de q , salvo que se utilizan cuando se hace referencia a la derivada con respecto a la variable de estado xq . Conjunto borroso denido en el universo de discurso de la variable de estado xk , en la regla r de la j -sima ecuacin del controlador. Indicador de la i-sima ecuacin representativa del proceso, i = 1..n. ndice que recorre las seales de control, j = 1..m. Matriz Jacobiana del sistema de control. Tiene dimensin n n y cada elemento se referencia como Jiq . ndice que recorre las variables de estado del sistema. Si se utiliza el vector de estados extendido, k = 0, 1..n, de lo contrario, k = 1..n. ndice que recorre las reglas del modelo borroso de la planta, l = 1..Mi . Nmero de seales de control (orden del vector de control). Nmero de reglas que representan la i-sima ecuacin de estado del modelo borroso de la planta. Nmero de variables de estado (orden del sistema). Nmero de reglas que representan la j -sima ecuacin del controlador. ndice que recorre las reglas del modelo borroso de la planta en bucles donde ya se emplea el ndice l, p = 1..Mi . Matriz simtrica denida positiva para la q -sima regin en la que se divide el universo de discurso de las variables de estado para el diseo del controlador. Coordenada del vector de estado con respecto a la que se deriva para calcular la matriz jacobiana del sistema, q = 1..n. En el contexto del diseo del controlador, el ndice q = 1..s recorre las regiones en las que se divide el universo de discurso de las variables de estado.

ckj (x)

cqj (x)

r Ckj

i j J(x) k l m Mi n Nj p Pq

ndice empleado para recorrer las reglas del modelo borroso del controlador., r = 1..Nj .

LEYENDA DE NDICES Y VARIABLES

231

Trmino Rc(r,j ) Rp(l,i)

Descripcin Regla r de la ecuacin de control j del modelo borroso del controlador. Regla l de la ecuacin de estado i del modelo borroso de la planta. ndice empleado para recorrer las reglas del modelo borroso del controlador en bucles donde ya se emplea el ndice r , s = 1..Nj . En el contexto del diseo del controlador, s representa el nmero de regiones en las que se divide el universo de discurso de las variables de estado para realizar dicho diseo. j -sima, o v -sima seal de control del sistema. Universo de discurso de las seales de control. ndice que recorre las seales de control en bucles donde ya se emplea el ndice j , v = 1..m. Grado de activacin de la regla l o p de la i-sima ecuacin de estado de la planta. Estado de equilibrio. k -sima, o q -sima, variable de estado. k -sima variable de estado cuando se emplea el vector de estado extendido. Universo de discurso de las variables de estado. Conjunto de parmetros adaptables del antecedente de la regla l de la i-sima ecuacin de estado del modelo borroso de la planta, asociada a la seal de control uj . Funcin de pertenencia de la regla l de la i-sima ecuacin de estado de la planta, asociada a la variable de estado xk . Funcin de pertenencia de la regla l de la j -sima ecuacin de estado de la planta, asociada a la seal de control uj . Funcin de pertenencia de la regla r de la j -sima ecuacin del controlador, asociada a la variable de estado xk . Funcin que delimita la regin q del universo de discurso de las variables de estado para el diseo del controlador. Conjunto de parmetros adaptables del antecedente de la regla r de la j -sima ecuacin del controlador, asociada a la variable de estado xk .

uj , uv U v
p l wi , wi

xeq xk , xq x k X l ji

l ki l ji r kj q (x) r kj

232

APNDICE A

Trmino iq

Descripcin Conjunto de parmetros adaptables de la i-sima funcin de pertenencia que declara la regin q en la metodologa de diseo del controlador de la seccin 5.4. q -sima regin en la que se divide el universo de discurso de las variables de estado para el diseo del controlador. Conjunto de parmetros adaptables del antecedente de la regla l de la i-sima ecuacin de estado del modelo borroso de la planta, asociada a la variable de estado xk . Grado de activacin de las reglas del controlador.
Tabla A.1: Leyenda de ndices y variables.

q l ki

r s j , j

Apendice

Derivadas de las principales funciones de pertenencia


Para calcular la derivada del grado de activacin de las reglas de la planta de un sistema de control borroso, as como la derivada del grado de activacin de las reglas del controlador, es necesario obtener la derivada de las funciones de pertenencia con respecto a su variable independiente; es decir, es necesario calcular d(x)/dx o d(u)/du. A continuacin se calculan las derivadas de las funciones de pertenencia ms comunes, denidas en el epgrafe Tipos bsicos de funciones de pertenencia de la seccin 2.3.1 (pgina 23). Aunque las ecuaciones que denen estas funciones de pertenencia ya han sido descritas en dicho epgrafe, se reescribirn para facilitar la lectura de este apndice. Nota. Puesto que todas las funciones de pertenencia son continuas y derivables, o derivables a trozos, y como el conjunto de puntos singulares de las funciones derivables a trozos tiene medida nula1 , a efectos prcticos se puede asumir que son continuas y derivables en todo su rango. En los puntos singulares se puede suponer que la derivada es indistintamente la de un punto innitesimalmente cercano por la derecha, x+ , o la de un punto innitesimalmente cercano por la izquierda, x , o como se ha optado en este texto, como la media de dichas derivadas. Derivada de la funcin de pertenencia triangular Sea la funcin de pertenencia triangular denida xa ba cx T ri [a, b, c](x) = cb 0 por: si a < x b si b < x < c en otro caso, (2.9)

su derivada respecto a x es:


1

Un subconjunto de Rn se dice de medida nula si para todo > 0 existe una familia nita o innita numerable de intervalos abiertos cuyo volumen total es menor que . Todos los conjuntos numerables son nulos, as como los subconjuntos de Rn de dimensin inferior a n, como por ejemplo una lnea o curva en R2 .

233

234

APNDICE B

dT ri [a, b, c](x) = dx 0

1 2(b a) 1 ba 1 1 1 + 2 ba cb 1 bc 1 2(c b)

si x = a si a < x < b si x = b (B.1) si b < x < c si x = c en otro caso.

Derivada de la funcin de pertenencia trapezoidal La funcin de pertenencia trapezoidal se dene mediante: xa b a si a < x < b 1 si b x c T rap [a, b, c, d](x) = dx si c < x < d d c 0 en otro caso, 1 ba 1 2(b a) 1 dT rap [a, b, c, d](x) = dc dx 1 2(d c) 0 Derivada de la funcin de pertenencia gaussiana Sea la funcin de pertenencia gaussiana denida por: Gauss [c, ](x) = e(
x c 2

(2.11)

por lo que su derivada respecto a x es:

si a < x < b si x = a o x = b si c < x < d si x = c o x = d en otro caso. (B.2)

),

(2.12)

DERIVADAS DE LAS PRINCIPALES FUNCIONES DE PERTENENCIA

235

su derivada respecto a x es: dGauss [c, ](x) = 2 dx xc 2 Gauss [c, ](x). (B.3)

Derivada de la funcin de pertenencia gaussiana doble La funcin de pertenencia gaussiana doble se dene mediante la expresin: Gauss2 [c1 , c2 , 1 , 2 ](x) = 1 (x)2 (x), siendo Gauss [c1 , 1 ](x) Si x < c1 1 (x) = 1 Si x c1 Gauss [c2 , 2 ](x) Si x > c2 2 (x) = 1 Si x c2 , (2.13b) (2.13a)

(2.13c)

por lo que su derivada respecto a x es:

dGauss2 [c1 , c2 , 1 , 2 ](x) = d x dGauss [c1 , 1 ](x) dx dGauss [c2 , 2 ](x) dx = d Gauss [c1 , 1 ](x) Gauss [c2 , 2 ](x)+ dx dGauss [c2 , 2 ](x) + Gauss [c1 , 1 ](x) dx Derivada de la funcin de pertenencia campana Sea la funcin de pertenencia campana denida por: Campana [, , c](x) = 1 1+

si x < c1 y x < c2 si x > c1 y x > c2 (B.5)

en otro caso.

xc 2

(2.14)

La expresin anterior puede reescribirse eliminando el valor absoluto como:

236

APNDICE B

Calculando la derivada de la expresin anterior respecto a x, se obtiene: (x c) 2 2 ( [ , , c ]( x )) Campana dCampana [, , c](x) 0 = dx ( x c) 2 (Campana [, , c](x))2
2 1

1 c ) 1 + (x Campana [, , c](x) = 1 1 1 + xc 2

si x < c (B.6)

si x = c si x > c

si x < c si x = c
2 1

(B.7)

si x > c,

que puede expresarse de forma simplicada por:

dCampana [, , c](x) 2 xc = (Campana [, , c](x))2 sign (x c), dx donde sign() es la funcin signo. Derivada de la funcin de pertenencia S Sea la funcin de pertenencia S denida por: 0 2 xa 2 ba S [a, b](x) = bx 12 ba 1

2 1

(B.8)

si x a si a < x
2 a+b 2

(2.15) si
a+b 2

<x<b

si x b,

su derivada respecto a x es:

0 si x a, x b dS [a, b](x) 4 (x a) si a < x a+b = 2 (b a)2 dx (b x) b 4 si a+ < x < b. 2 (b a)2

(B.9)

DERIVADAS DE LAS PRINCIPALES FUNCIONES DE PERTENENCIA

237

Derivada de la funcin de pertenencia Z Sea la funcin de pertenencia Z denida por: 1 xa 12 ab Z [a, b](x) = 2 bx 2 ab 0

si x a
2

si a < x < si
a+b 2

a+b 2

(2.16) x<b

si x b,

su derivada respecto a x es:

0 si x a, x b dZ [a, b](x) 4 (x a) si a < x < a+b = 2 (a b)2 dx (b x) b 4 si a+ x < b. 2 (a b)2 Derivada de la funcin de pertenencia

(B.10)

Como la funcin de pertenencia [a, b, c, d] se dene como el producto de las funciones de pertenencia S [a, b](x) y Z [c, d](x), su derivada puede calcularse como: dS [a, b](x) dZ [c, d](x) d [a, b, c, d](x) = Z [c, d](x) + S [a, b](x), (B.11) dx dx dx donde la derivada respecto de x de las funciones de pertenencia S y Z se pueden obtener a partir de las expresiones (B.9) y (B.10), respectivamente. Derivada de la funcin de pertenencia sigmoidal Sea la funcin de pertenencia sigmoidal denida por: 1 , 1 + e(cx) su derivada respecto a x se calcula mediante la expresin: Sigm[c, ](x) = (2.17)

dSigm [c, ](x) = e(cx) (Sigm [c, ](x))2. (B.12) dx A partir de la derivada de la funcin de pertenencia sigmoidal es inmediata la deduccin de las derivadas de las funciones de pertenencia dadas por el producto o la diferencia de funciones sigmoidales.

Apendice

de Cholesky Descomposicion
Sea S una matriz cuadrada y simtrica de dimensin n n, y sea x un vector columna arbitrario y no nulo de dimensin n 1, se dice que S es una matriz denida positiva, y se denota como S > 0, si cumple la condicin dada en la ecuacin (C.1). Si S > 0, sus autovalores, o valores propios, son todos positivos. xT Sx > 0 (C.1)

Si S es una matriz simtrica denida positiva, entonces siempre existe una matriz triangular superior (o inferior) T de la misma dimensin, tal que S = TT T. (C.2)

A la descomposicin de la matriz S en el producto TT T se le llama descomposicin de Cholesky [351]. Si los elementos de la matriz S se denotan por sij , con sij = sji para i, j = 1..n, y los de la matriz T como tij , con tij = 0 para i > j , es decir, considerando T como matriz triangular superior, se demuestra que los elementos de T se pueden calcular por las, de izquierda a derecha y de arriba a abajo, mediante las siguientes expresiones [351]:
i 1

tii =

sii
k =1

t2 ki

(C.3)

tij =

i 1 s tki tkj ij
k =1

Tal como se ha enunciado, la descomposicin de Cholesky permite obtener a partir de una matriz simtrica denida positiva, una matriz triangular cuyos elementos de la diagonal son positivos y que satisface la ecuacin (C.2). Sin embargo, aplicando el mismo principio de forma inversa, se puede obtener una matriz simtrica denida positiva a partir de una matriz triangular aplicando la ecuacin (C.2), siempre que los elementos de la diagonal de 239

tii 0

si i < j si i j

(C.4)

240

APNDICE C

la matriz triangular sean positivos. Es decir, siendo t t ... 11 12 0 t22 . . . T= . . .. . . . . . 0 0 ...

tal que tii > 0 para i = 1..n, se puede demostrar que la matriz S calculada mediante la ecuacin (C.2) es una matriz simtrica denida positiva.

T una matriz triangular t1n t2n , . . . tnn

(C.5)

Apendice

del software Denicion


En este apndice se incluyen los cheros de cabecera del software diseado. El software est implementado en C/C++. Para ms informacin sobre estas clases puede dirigirse a las secciones 3.4 y 4.5.

D.1. Clase Membership


Esta clase permite almacenar una funcin de pertenencia con todos sus parmetros, y contiene los mtodos necesarios para su tratamiento. El diagrama UML de esta clase se muestra en la gura 3.16.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f n d e f _MEMBERSHIP_H_ #d e f i n e _MEMBERSHIP_H_

241

242
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

APNDICE D

#i n c l u d e <i o s t r e a m > #i n c l u d e " ext_math . h " #i n c l u d e " messages . h " #i f d e f i n e d (MATLAB_MEX_FILE) #i n c l u d e " mex . h " #e n d i f #d e f i n e MAX_TIPO_NAME 32 // Tipos de F u n c i o n e s de Membership Implementadas / S i s e cambia l a enumeracion , deben m o d i f i c a r s e l o s a r r a y s TIPO_NOMBRES y TIPO_N_PARAM para que s e a n c o h e r e n t e s con e s t a . S i s e m o d i f i c a e l 1 e r o u l t i m o e l e m e n to de l a enumeracion , hay que cambiar e l c o d i g o de membership . cpp para que l a s c o m p a ra c i o n e s que s e hacen e s e s t e s e a n c o r r e c t a s con l a d e c l a r a c i o n . / enum TYPE_MF // Tipos p o s i b l e s de F u n c i o n e s de Membership { NOMF=0 , GAUSSMF, GAUSS2MF, TRAPEZOIDALMF, TRAP2MF, CAMPANAMF, PIMF, PSIGMOIDALMF, SMF, SIGMOIDALMF, SIGMOIDAL2MF, TRIANGULARMF, ZMF }; s t a t i c c o n s t c h a r TIPO_NOMBRES[ ] = { // Nombres de l a s F u n c i o n e s de Membership segun TYPE_MF, t o d o s en Mayuscula " NOMF " , " GAUSSMF " , " GAUSS2MF " , " TRAPMF " , " TRAP2MF " , " GBELLMF " , " PIMF " , " PSIGMF " , " SMF " , " SIGMF " , " DSIGMF " , " TRIMF " , " ZMF " }; s t a t i c c o n s t i n t TIPO_N_PARAM[ ] = { // Numero de Parametros de cada t i p o segun TYPE_MF 0 ,2 ,4 ,4 ,8 ,3 ,4 ,4 ,2 ,2 ,4 ,3 ,2 }; // D e c l a r a t i o n s # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Membership // C l a s e Padre { protected : d o u b l e param ; // V e c to r de p a ra m e tro s que d e f i n e n l a Funcion de Membership int n; // Numero de p a ra m e tro s de l a Funcion de Membership TYPE_MF type_mf ; public : v i r t u a l double eval ( double x) co nst ; // E v a l u a r l a Funcion de Membership v i r t u a l d o u b l e e v a l d e r ( d o u b l e x ) c o n s t ; // D e ri v a d a de l a F . de Membership v i r t u a l i n t t e s t ( v o i d ) c o n s t ; // M o d i f i c a l o s p a ra m e tro s para que s e a n c o r r e c t o s i n t n_param ( v o i d ) c o n s t ; // Lee e l numero de p a ra m e tro s que d e f i n e n l a F . Membership TYPE_MF t i p o ( v o i d ) c o n s t ; i n t t i p o (TYPE_MF type_mf ) ; i n t e d i t ( i n t i n d i c e , d o u b l e v a l o r ) ; // E d i t a r un parametro . 0 s i e r r o r double l e e r ( i n t i n d i c e ) co nst ; // L e e r un parametro Membership & o p e r a t o r =( c o n s t Membership &P) ; Membership ( c o n s t Membership &P) ; Membership ( ) ;

CLASE MEMBERSHIP

243

102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168

~Membership ( ) ; }; Membership crearFP (TYPE_MF t ) ; // C o n s t r u c t o r v i r t u a l // Nomf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Nomf : p u b l i c Membership // En MATLAB no e x i s t e { // Se emplea para i n i c i a l i z a r l a s r e g l a s de forma s e g u r a public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; Nomf ( v o i d ) ; }; // Gaussmf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Gaussmf : p u b l i c Membership // En MATLAB e s gaussmf { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; i n t t e s t ( v o i d ) c o n s t ; // S i l o s p a ra m e tro s de l a F . P . son v a l i d o s r e t o r n a 0 Gaussmf ( d o u b l e Centro = 0 . 5 , d o u b l e Ancho = 0 . 3 ) ; // Ancho_MATLAB=Ancho / s q r t ( 2 ) ; }; // Gauss2mf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Gauss2mf : p u b l i c Membership // En MATLAB e s gauss2mf { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; i n t t e s t ( v o i d ) c o n s t ; // M o d i f i c a l o s p a ra m e tro s para que s e a n c o r r e c t o s Gauss2mf ( d o u b l e Centro1 = 0 . 4 5 , d o u b l e Ancho1 = 0 . 2 5 , d o u b l e Centro2 = 0 . 5 5 , d o u b l e Ancho2 = 0 . 2 5 ) ; // Ancho_MATLAB=Ancho / s q r t ( 2 ) ; }; // T r a p e z o i d a l m f # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s T r a p e z o i d a l m f : p u b l i c Membership // En MATLAB e s trapmf { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; i n t t e s t ( v o i d ) c o n s t ; // M o d i f i c a l o s p a ra m e tro s para que s e a n c o r r e c t o s Trapezoidalmf ( double a =0.05 , double b =0.45 , double c =0.55 , double d=0.95) ; }; // Trap2mf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Trap2mf : p u b l i c Membership // En MATLAB no e x i s t e p e ro l a he c r e a d o { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; i n t t e s t ( v o i d ) c o n s t ; // M o d i f i c a l o s p a ra m e tro s para que s e a n c o r r e c t o s Trap2mf ( d o u b l e a1 = 0 . 0 , d o u b l e b1 = 0 . 2 , d o u b l e c1 = 0 . 3 , d o u b l e d1 = 0 . 4 , d o u b l e a2 = 0 . 6 , d o u b l e b2 = 0 . 8 , d o u b l e c2 = 0 . 9 , d o u b l e d2 =1) ; }; // Campanamf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Campanamf : p u b l i c Membership // En MATLAB e s g b e l l m f { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; i n t t e s t ( v o i d ) c o n s t ; // M o d i f i c a l o s p a ra m e tro s para que s e a n c o r r e c t o s Campanamf( d o u b l e a = 0 . 2 5 , d o u b l e b = 2 . 5 , d o u b l e c = 0 . 5 ) ; }; // Pimf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Pimf : p u b l i c Membership {

244
169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228

APNDICE D

public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; Pimf ( d o u b l e a = 0 . 0 5 , d o u b l e b = 0 . 4 5 , d o u b l e c = 0 . 5 5 , d o u b l e d = 0 . 9 5 ) ; }; // PSigmoidalmf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s PSigmoidalmf : p u b l i c Membership // En MATLAB e s p s i g m f { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; PSigmoidalmf ( d o u b l e a1 =11 , d o u b l e c1 = 0 . 2 5 , d o u b l e a2= 11, d o u b l e c2 = 0 . 7 5 ) ; }; // Smf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Smf : p u b l i c Membership // En MATLAB e s smf { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; Smf ( d o u b l e a = 0 . 0 5 , d o u b l e b = 0 . 4 5 ) ; }; // S i g m o i d a l m f # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s S i g m o i d a l m f : p u b l i c Membership // En MATLAB e s s i g m f { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; S i g m o i d a l m f ( d o u b l e a =14 , d o u b l e c = 0 . 2 5 ) ; }; // S i g m o i d a l 2 m f # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s S i g m o i d a l 2 m f : p u b l i c Membership // En MATLAB e s d s i g m f { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; S i g m o i d a l 2 m f ( d o u b l e a1 =11 , d o u b l e c1 = 0 . 2 5 , d o u b l e a2 =11 , d o u b l e c2 = 0 . 7 5 ) ; }; // T r i a n g u l a r m f # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s T r i a n g u l a r m f : p u b l i c Membership // En MATLAB e s t r i m f { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; i n t t e s t ( v o i d ) c o n s t ; // M o d i f i c a l o s p a ra m e tro s para que s e a n c o r r e c t o s Triangularmf ( double a =0.0 , double b =0.5 , double c =1.0) ; }; // Zmf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Zmf : p u b l i c Membership // En MATLAB e s zmf { public : double eval ( double x ) co nst ; double evalder ( double x ) co nst ; Zmf ( d o u b l e a = 0 . 5 5 , d o u b l e b = 0 . 9 5 ) ; }; #e n d i f

CLASE RULE

245

D.2. Clase Rule


Esta clase permite almacenar una regla borrosa con todos sus parmetros, y contiene los mtodos necesarios para su tratamiento. El diagrama UML de esta clase se muestra en la gura 3.17.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f n d e f _REGLA_H_ #d e f i n e _REGLA_H_ #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i f <s t d i o . h> <i o s t r e a m > " membership . h " " messages . h "

d e f i n e d (MATLAB_MEX_FILE) #i n c l u d e " mex . h " #e n d i f // D e c l a r a t i o n s # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Regla { i n t i n ; //Numero E n tra d a s de l a Regla d o u b l e TSK; // C o n s e c u e n te TSK de l a Regla Membership membership ; // F u n c i o n e s de Membership de l a Regla i n l i n e void limpiar ( void ) ; public : i n t entradas ( void ) c o n s t ; i n t t e s t ( v o i d ) c o n s t ; // S i l o s p a ra m e tro s de t o d a s l a s F . P . de l a Regla son v a l i d o s retorna 1 i n t escribir_TSK ( d o u b l e v a l o r , i n t e n t r a d a ) ; // Retorna 0 s i e r r o r d o u b l e leer_TSK ( i n t e n t r a d a ) c o n s t ; i n t l e e r _ f u n c i o n ( Membership &P , i n t e n t r a d a ) c o n s t ; Membership l e e r _ f u n c i o n ( i n t e n t r a d a ) ; i n t e s c r i b i r _ f u n c i o n ( c o n s t Membership &P , i n t e n t r a d a ) ; i n t c a m b i a r_ f u n c i o n (TYPE_MF t i p o , i n t e n t r a d a ) ; void i n i c i a l i z a r ( in t in ) ; Regla & o p e r a t o r =( c o n s t Regla &R) ;

246
61 62 63 64 65 66 67

APNDICE D

Regla ( ) ; Regla ( c o n s t Regla &R) ; Regla ( i n t i n ) ; ~Regla ( ) ; }; #e n d i f

D.3. Clase System


Esta clase permite almacenar un sistema borroso con todos sus parmetros, y contiene los mtodos necesarios para su tratamiento. El diagrama UML de esta clase se muestra en la gura 3.18.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f n d e f _SISTEMA_H_ #d e f i n e _SISTEMA_H_ #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e <s t d i o . h> <i o s t r e a m > " membership . h " " rule . h " " messages . h "

#d e f i n e MIN_DEFAULT_LIMIT 100.0 #d e f i n e MAX_DEFAULT_LIMIT 1 0 0 . 0 #i f d e f i n e d (MATLAB_MEX_FILE) #i n c l u d e " mex . h " #e n d i f // D e c l a r a t i o n s # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s S i s te m a { i n t in , out , N; // Entradas , S a l i d a s y R e g l a s ( por cada s a l i d a )

CLASE JACOBIAN

247

52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78

d o u b l e min_in , min_out , max_in , max_out ; Regla R; public : int reglas ( int salida ) const ; i n t entradas ( void ) c o n s t ; in t salid as ( void ) const ; d o u b l e in_min ( i n t e n t r a d a ) c o n s t ; d o u b l e in_max ( i n t e n t r a d a ) c o n s t ; d o u b l e out_min ( i n t s a l i d a ) c o n s t ; d o u b l e out_max ( i n t s a l i d a ) c o n s t ; v o i d in_min ( d o u b l e l i m i t s ) ; v o i d in_max ( d o u b l e l i m i t s ) ; v o i d out_min ( d o u b l e l i m i t s ) ; v o i d out_max ( d o u b l e l i m i t s ) ; i n t t e s t ( v o i d ) c o n s t ; // S i l o s p a ra m e tro s de t o d a s l a s F . P . d e l S i s te m a son v a l i d o s retorna 1 i n t e s c r i b i r _ R e g l a ( c o n s t Regla &R, i n t r , i n t s a l i d a ) ; i n t l e e r _ R e g l a ( Regla &R, i n t r , i n t s a l i d a ) c o n s t ; Regla l e e r _ R e g l a ( i n t r , i n t s a l i d a ) ; v o i d i n i c i a l i z a r ( i n t in , i n t out , i n t N) ; S i s te m a & o p e r a t o r =( c o n s t S i s te m a &S ) ; S i s te m a ( ) ; S i s te m a ( c o n s t S i s te m a &S ) ; S i s te m a ( i n t in , i n t out , i n t N) ; ~ S i s te m a ( ) ; }; #e n d i f

D.4. Clase Jacobian


Esta clase permite almacenar y calcular la matriz jacobiana de un sistema de control borroso. Contiene los mtodos necesarios para su clculo y para el tratamiento de la clase. El diagrama UML de esta clase se muestra en la gura 4.3.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. /

248
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65

APNDICE D

#i f n d e f _JACOBIANO_H_ #d e f i n e _JACOBIANO_H_ #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e <s t d i o . h> <i o s t r e a m > " membership . h " " rule . h " " system . h " " messages . h " " ext_math . h " " utilities . h "

// D e c l a r a t i o n s # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # c l a s s Jacobiano { i n t n ; // o rd e n d e l S i s te m a d o u b l e J ; // Matrix J a c o b i a n a public : i n t estados () const ; d o u b l e l e e r _ J ( i n t f i l a , i n t columna ) c o n s t ; i n t e s c r i b i r _ J ( d o u b l e v a l o r , i n t f i l a , i n t columna ) ; // R e s u e l v e l a M a tri z J en e l Punto x u t i l i z a n d o e l modelo b o r r o s o // S para e l S i s te m a y C para e l C o n t r o l a d o r . i n t r e s o l v e r ( S i s te m a S , S i s te m a C, c o n s t d o u b l e c o n s t x ) ; // R e s u e l v e l a M a tri z J en e l Punto x u t i l i z a n d o e l modelo b o r r o s o // S para e l S i s te m a y C para e l C o n t r o l a d o r mediante a p ro x i m a c i o n por d i f e r e n c i a . i n t aprox ( S i s te m a S , S i s te m a C, c o n s t d o u b l e c o n s t x , d o u b l e h = 0 . 0 0 1 ) ; // J a c o b i a n o ( ) ; Jacobiano ( i n t n ) ; J a c o b i a n o ( S i s te m a S , S i s te m a C, c o n s t d o u b l e c o n s t x ) ; ~Jacobiano ( ) ; }; #e n d i f

finita

D.5. Utilidades
Este archivo dene las cabeceras de una serie de funciones de utilidad para el tratamiento de sistemas borrosos. El diagrama UML de esta clase se muestra en la gura 3.19.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f

UTILIDADES

249

24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47

MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s .

See th e

You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f n d e f _UTILIDADES_H_ #d e f i n e _UTILIDADES_H_ #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e < s t d l i b . h> <i o s t r e a m > <s t r i n g > " membership . h " " rule . h " " system . h " " messages . h "

// D e c l a r a t i o n s # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # i n t TXT2Sistema ( c o n s t c h a r f i c h e r o , S i s te m a &S ) ; i n t Sistema2TXT ( S i s te m a &S , c o n s t c h a r f i c h e r o ) ; // E s c r i b e un a r c h i v o de Texto d e s d e un S i s te m i n t E v a l u a r ( c o n s t d o u b l e c o n s t x , d o u b l e S a l i d a , S i s te m a &S ) ; // Devuelve 1 s i s e p ro d u c e un Desbordamiento y 1 s i s e r e a l i z a e l c a l c u l o c o r r e c t a m e n t e i n t E v a l u a r ( c o n s t d o u b l e c o n s t x , d o u b l e dX , S i s te m a &S , S i s te m a &C) ; // Devuelve 0 s i l o s Modelos no son Compatibles , 1 s i s e p ro d u c e un Desbordamiento y 1 s i s e r e a l i z a e l c a l c u l o correctamente . i n t l i n e a l i z a r ( S i s te m a &S , c o n s t d o u b l e c o n s t x , c o n s t d o u b l e c o n s t u , d o u b l e A, d o u b l e B, d o u b l e F=NULL) ; // Devuelve 0 s i s e p ro d u c e un e r r o r u 1 s i e l c a l c u l o e s correcto i n t l i n e a r a p r o x ( S i s te m a &S , c o n s t d o u b l e c o n s t x , c o n s t d o u b l e c o n s t u , d o u b l e A, d o u b l e B, d o u b l e h = 0 . 0 0 1 , d o u b l e F=NULL) ; // Devuelve 0 s i s e p ro d u c e un e r r o r u 1 s i e l c a l c u l o es correcto i n t i m p r i m i r S i s t e m a ( c o n s t c h a r f i c h e r o , c o n s t S i s te m a &S , c h a r e n t r a d a s [ ] =NULL, c h a r s a l i d a s [ ] =NULL, i n t d e c i m a l e s =100) ; // E s c r i b e un S i s te m a en un a r c h i v o de t e x t o en l a forma : " S I x1 e s A111 y x2 e s . . . ENTONCES x1 e s . . . " i n t numeroDatosAnte c ed e nte s ( S i s te m a &S ) ; // O b ti e n e e l numero de d a t o s que p o s e e almacenado e l modelo b o r r o s o S como A n t e c e d e n t e s ( Los p a ra m e tro s de l a s t o d a s F u n c i o n e s de Membership ) i n t numeroDatosAnte c ed e nte s ( S i s te m a &S , i n t out , i n t r u l e ) ; // O b ti e n e e l numero de d a t o s que p o s e e almacenada l a Regla r u l e para l a s a l i d a out d e l modelo b o r r o s o S como A n t e c e d e n t e s ( Los p a ra m e tro s de l a s t o d a s F u n c i o n e s de Membership ) i n t numeroDatosConsec ue n te s ( S i s te m a &S ) ; // O b ti e n e e l numero de d a t o s que p o s e e almacenado e l modelo b o r r o s o S en l o s C o n s e c u e n te s i n t numeroDatosConsec ue n te s ( S i s te m a &S , i n t out , i n t r u l e ) ; // O b ti e n e e l numero de d a t o s que p o s e e almacenada l a Regla r u l e para l a s a l i d a out d e l modelo b o r r o s o S en l o s C o n s e c u e n te s i n t o b t e n e r A n t e c e d e n t e s ( S i s te m a &S , d o u b l e parametro s , i n t num_datos ) ; // O b ti e n e un v e c t o r con t o d o s l o s p a ra m e tro s de l o s A n t e c e d e n t e s d e l S i s t e m a . Retorna e l numero de datos o 0 s i error . i n t o b t e n e r A n t e c e d e n t e s ( S i s te m a &S , d o u b l e parametro s , i n t num_datos , i n t out , i n t r u l e ) ; // O b ti e n e un v e c t o r con t o d o s l o s p a ra m e tro s de l o s A n t e c e d e n t e s de l a Regla r u l e para l a s a l i d a out d e l S i s te m a . Retorna e l numero de d a t o s o 0 s i e r r o r . i n t o b t e n e r C o n s e c u e n t e s ( S i s te m a &S , d o u b l e parametro s , i n t num_datos ) ; // O b ti e n e un v e c t o r con t o d o s l o s p a ra m e tro s de l o s C o n s e c u e n te s d e l S i s t e m a . Retorna e l numero de datos o 0 s i error . i n t o b t e n e r C o n s e c u e n t e s ( S i s te m a &S , d o u b l e parametro s , i n t num_datos , i n t out , i n t r u l e ) ; // O b ti e n e un v e c t o r con t o d o s l o s p a ra m e tro s de l o s C o n s e c u e n te s de l a Regla r u l e para l a s a l i d a out d e l S i s te m a . Retorna e l numero de d a t o s o 0 s i e r r o r . i n t a l m a c e n a r A n t e c e d e n t e s ( S i s te m a &S , c o n s t d o u b l e c o n s t parametro s , i n t num_datos ) ; // Almacena l o s p a ra m e tro s dados de l o s A n t e c e d e n t e s en S ( S debe e s t a r d e f i n i d o completamente a n t e s de e j e c u t a r l a f u n c i o n ) . Retorna 1 s i s e r e a l i z o c o r r e c t a m e n t e y 0 s i hubo un e r r o r . i n t a l m a c e n a r A n t e c e d e n t e s ( S i s te m a &S , c o n s t d o u b l e c o n s t parametro s , i n t num_datos , i n t out , i n t r u l e ) ; // Almacena l o s p a ra m e tro s dados de l o s A n t e c e d e n t e s en l a Regla

48

49

50

51 52

53

54 55

56 57

58

59

60

61 62

63

250

APNDICE D

64

65

r u l e para l a s a l i d a out de S ( S debe e s t a r d e f i n i d o completamente a n t e s de e j e c u t a r l a f u n c i o n ) . Retorna 1 s i s e r e a l i z o c o r r e c t a m e n t e y 0 s i hubo un e r r o r . i n t a l m a c e n a rC o n s e c u e n t e s ( S i s te m a &S , c o n s t d o u b l e c o n s t parametros , i n t num_datos ) ; // Almacena l o s p a ra m e tro s dados de l o s C o n s e c u e n te s en S ( S debe e s t a r d e f i n i d o completamente a n t e s de e j e c u t a r l a f u n c i o n ) . Retorna 1 s i s e r e a l i z o c o r r e c t a m e n t e y 0 s i hubo un e r r o r . i n t a l m a c e n a rC o n s e c u e n t e s ( S i s te m a &S , c o n s t d o u b l e c o n s t parametros , i n t num_datos , i n t out , i n t r u l e ) ; // Almacena l o s p a ra m e tro s dados de l o s C o n s e c u e n te s en l a Regla r u l e para l a s a l i d a out de S ( S debe e s t a r d e f i n i d o completamente a n t e s de e j e c u t a r l a f u n c i o n ) . Retorna 1 s i s e r e a l i z o c o r r e c t a m e n t e y 0 s i hubo un e r r o r . i n t a c t i v a c i o n ( S i s te m a &S , i n t s a l i d a , i n t r e g l a , d o u b l e Punto , d o u b l e W) ; // O b ti e n e l o s Grados de A c t i v a c i o n de l a s F u n c i o n e s de P e r t e n e n c i a de l a Regla i n d i c a d a en un Punto . Retorna 0 s i s e e j e c u t o c o r r e c t a m e n t e i n t a c t i v a c i o n ( S i s te m a &S , i n t s a l i d a , i n t r e g l a , d o u b l e Punto , d o u b l e W, d o u b l e dW) ; // O b ti e n e l o s Grados de A c t i v a c i o n de l a s F u n c i o n e s de P e r t e n e n c i a de l a Regla i n d i c a d a en un Punto y l a s d e r i v a d a s de e s t a r e s p e c t o a X. Retorna 0 s i s e e j e c u t o correctamente i n t s u b S i s te m a ( S i s te m a &S , S i s te m a &ParteS , i n t n r e g l a s , i n t s a l i d a s , i n t r e g l a s ) ; // O b ti e n e un s u b s i s t e m a con l a s r e g l a s e s p e c i f i c a d a s . Retorna 0 s i s e e j e c u t o correctamente #e n d i f

66 67

68

69

70 71

D.6. Otros archivos


Esta cabecera permite la inclusin de todas las libreras necesarias para el tratamiento de los sistema borrosos en una sola llamada.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f n d e f _FUZZY_H_ #d e f i n e _FUZZY_H_ #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e " membershi p . h " " rule . h " " system . h " " ext_math . h "

OTROS ARCHIVOS

251

37 38 39

#i n c l u d e " utilities . h " #i n c l u d e " messages . h " #e n d i f

En el siguiente archivo se denen las funciones creadas para permitir lectura y escritura de modelos borrosos directamente desde MATLAB . Estas funciones son de gran ayuda para la utilizacin del resto de funciones en MATLAB de forma transparente al usuario. El diagrama UML de esta clase se muestra en la gura 3.20.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f d e f i n e d (MATLAB_MEX_FILE)

#i f n d e f _AUX_MATLAB_H_ #d e f i n e _AUX_MATLAB_H_ #i n c l u d e <s t d i o . h> #i n c l u d e <i o s t r e a m > #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e " mex . h " " ../ actual / system . h " " ../ actual / utilities . h " " ../ actual / messages . h "

// D e c l a r a t i o n s # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # i n t FIS2System ( c o n s t mxArray FIS , S i s te m a &S ) ; // Read th e Fuzzy Model o f FIS v a r i a b l e i n t System2FIS ( S i s te m a &S , mxArray FIS ) ; // Write th e Fuzzy Model i n FIS v a r i a b l e i n t readModel ( c o n s t mxArray modelo , S i s te m a &S ) ; // Read a Fuzzy Model (TXT, FIS f i l e o r FIS v a r i a b l e ) #e n d i f #e n d i f

En esta cabecera de denen las funciones bsicas de entrada/salida para las clases anteriores.
1 2

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

252
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58

APNDICE D

C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f n d e f _FUZZY_IO_H_ #d e f i n e _FUZZY_IO_H_ #i f n d e f s t r c m p i #d e f i n e s t r c m p i s t r c a s e c m p // R e a l i z a e l cambio para c o m p i l a r en Linux #e n d i f #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e #i n c l u d e < s t r i n g . h> < s t d l i b . h> <i o s t r e a m > " fuzzy . h " " jacobian . h "

// In Out D e c l a r a t i o n s # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #i f n d e f MATLAB_MEX_FILE s t d : : o s tre a m & o p e r a t o r <<(s t d : : o s tre a m &F , TYPE_MF &T) ; s t d : : i s t r e a m & o p e r a t o r >>(s t d : : i s t r e a m &F , TYPE_MF &T) ; s t d : : o s tre a m & o p e r a t o r <<(s t d : : o s tre a m &F , Membership &P) ; s t d : : i s t r e a m & o p e r a t o r >>(s t d : : i s t r e a m &F , Membership &P) ; s t d : : o s tre a m & o p e r a t o r <<(s t d : : o s tre a m &F , Regla &R) ; s t d : : i s t r e a m & o p e r a t o r >>(s t d : : i s t r e a m &F , Regla &R) ; s t d : : o s tre a m & o p e r a t o r <<(s t d : : o s tre a m &F , S i s te m a &S ) ; s t d : : i s t r e a m & o p e r a t o r >>(s t d : : i s t r e a m &F , S i s te m a &S ) ; s t d : : o s tre a m & o p e r a t o r <<(s t d : : o s tre a m &F , J a c o b i a n o &J ) ; s t d : : i s t r e a m & o p e r a t o r >>(s t d : : i s t r e a m &F , J a c o b i a n o &J ) ; #e n d i f #e n d i f

El siguiente archivo lista los mensajes que puede generar el software en tiempo de ejecucin. Se han separado del cdigo para permitir la fcil traduccin del mismo.
1 2 3 4 5 6 7 8 9

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA

OTROS ARCHIVOS

253

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70

E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f n d e f _MESSAGES_H_ #d e f i n e _MESSAGES_H_ // Para e v i t a r que MATLAB s e c i e r r e en Linux con mexErrMsgTxt s e r e d e f i n e #i f n d e f s t r c m p i #d e f i n e ERRORMSG(men ) { m e x P ri n tf ( " ??? Error using == > %s \ b \ b \ b \ n %s \ n \ n " ,__FILE__, men ) ; return ;} #e l s e #d e f i n e ERRORMSG(men ) {mexErrMsgTxt (men ) ; } #e n d i f // D e f i n i c i n de C o n s ta n te s empleadas en e l Programa #d e f i n e MAX_CHAR_LONG 256 // L o n g i tu d Maxima de l a s Cadenas de C a r a c t e r e s #d e f i n e MAX_FILE_NAME 256 // L o n g i tu d Maxima de l o s Nombres de A r c h i v o s #d e f i n e PRECISION 100 //Numero de d i g i t o s d e c i m a l e s a l e s c r i b i r en f i c h e r o o p a n t a l l a // E r r o r Messages ( E_ . . . ) # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # // Model c o n s t s t a t i c c h a r E_Model={" Error reading model . " } ; c o n s t s t a t i c c h a r E_NoSugeno={" Model type should be sugeno . " } ; c o n s t s t a t i c c h a r E_NoOutputs={" Error , the model has not any Output . " } ; c o n s t s t a t i c c h a r E_NoInputs={" Error , the model has not any Input . " } ; c o n s t s t a t i c c h a r E_NoRules={" Error , some Outputs of the model have not any Rule ." } ; c o n s t s t a t i c c h a r E_No1Conseq={" Only one consequent for rule is allowed . " } ; c o n s t s t a t i c c h a r E_SameIns={" All models must have the same inputs . " } ; c o n s t s t a t i c c h a r E_NoCoherent={" The Controlle r is not coherent with the Plant . " }; c o n s t s t a t i c c h a r E_InNoCoherent={" Inputs arguments are not coherent with model inputs . " } ; c o n s t s t a t i c c h a r E_BadModel={" Undefined or wrong fuzzy model .\ nCheck rules , membership functions and theirs parameters " } ; c o n s t s t a t i c c h a r E_NoCoherent_BadX={" The Controller is not coherent with the Plant , or the point is not coherent with the closed loop system . " } ; c o n s t s t a t i c c h a r E_ArgNoValid={" Empty and NaN matrices are not valid inputs arguments . " } ; c o n s t s t a t i c c h a r E_AccuracyNoNum={" The accuracy should be a number . " } ; c o n s t s t a t i c c h a r E_Acquire={" Error reading model or incorrect initial model . " } ; c o n s t s t a t i c c h a r E_Store={" Error storing data . Wrong vector size or any data not valid for membershi p function , i . e . a zero width in Gaussmf function . " } ; // FIS c o n s t s t a t i c c h a r E_NoFIS={" Fuzzy Model must be a FIS structure . " } ; c o n s t s t a t i c c h a r E_CreateFIS={" Error at create FIS . " } ; c o n s t s t a t i c c h a r E_NoProd={" Implicatio n method must be prod . " } ; c o n s t s t a t i c c h a r E_FISOut={" Error writing FIS . " } ; c o n s t s t a t i c c h a r E_RulesExceded={" Rule limit exceeded . " } ; c o n s t s t a t i c c h a r E_InputExceded ={" Input limit exceeded . " } ; c o n s t s t a t i c c h a r E_OutputExceded={" Output limit exceeded . " } ;

254
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137

APNDICE D

// Membership F u n c t i o n s co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char valid . " } ; co nst s t a t i c char // Consequent co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char // F i l e s co nst s t a t i c char co nst s t a t i c char // O th e rs co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char models . " } ; co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char

E_MFType={" Error reading membership function type : " } ; E_BadMF={" Membership function was not identifie d . " } ; E_MFTypeDef={" Error in membership function type . " } ; E_ParamMF={" Error reading membership function parameters . " } ; E_NoValidFP={" Any parameter of membership function is not E_MFDef={" Error in membership function definition . " } ; E_Conseq={" It is not posible read consequent type in rule : " } ; E_ParamConseq={" Error reading TSK s consequent parameter s . " } ; E_BadConseq={" Not valid cosequent . " } ; E_FileInput ={" Input file error . " } ; E_FileOutput={" Output file error . " } ; E_ArrayExceded ={" Array limit exceded . " } ; E_NoSumProm={" Error , d e f u z z M e t h o d should be wtaver . " } ; E_NumberParam={" Number of parameters incorrect . " } ; E_NumberArg={" Error in number of arguments . " } ; E_NumberArgIn={" Error in inputs arguments " } ; E_NumberArgOut={" Error in outputs arguments . " } ; E_Column={" The state vector must be a column vector . " } ; E_File={" Rules and Outputs should be a file vector . " } ; E_PointCoherent={" The point / s should be coherent with fuzzy E_InNames={" Error reading names of inputs . " } ; E_OutNames={" Error reading names of outputs . " } ; E_R_No_Scalar={" The number of rule must be a scalar . " } ; E_Out_No_Scalar={" The number of output must be a scalar . " } ; E_Epoch_No_Scalar={" The number of epoch must be a scalar . " } ; E_Alfa_No_Scalar ={" Alfa must be a scalar . " } ; E_Error_No_Scalar={" The error must be a scalar . " } ; E_ModelError={" Modeling error . " } ; E_H_GE_0={" h must be >= 0. " } ;

// M e n s a j e s de // FIS const const const const const const const const const const const // Otros const const const const const const

U s u a ri o ( U_ . . . ) # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # static static static static static static static static static static static static static static static static static char char char char char char char char char char char char char char char char char U_FISName={" Unnamed " } ; U_FISInput={" Input " } ; U_FISOutput={" Output " } ; U_RuleAbbreviation={" R " } ; U_InputAbbreviation ={" - In " } ; U_OutputAbreviation ={" - Out " } ; U_If={" IF " } ; U_Is={" is " } ; U_And={" and " } ; U_OR={" or " } ; U_Then={" THEN " } ; U_SeeManual={" See also Fuzzy Logic Toolbox Manual . " } ; U_SeeHelp={" see the help . " } ; U_CheckModel={" Check model s definition . " } ; U_MathException ={" Warning . Math exception generated . " } ; U_Overflow={" Happened an overflow . " } ; U_FewData={" There are few data for modeling the system . " } ; # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # O_Input={" Input : " } ; O_OfIn={" of in " } ; O_OfOut={" of out " } ; O_RuleWeigh={" The rule s weigh : " } ; O_RuleConnection={" The rule s connection : " } ; O_AntecedentSize={" The size of rule s anteceden t " } ; O_ConsequentSize ={" The size of rule s consequen t " } ;

// Otros M e n s a j e s ( O_ . . . ) // E n tra d a s co nst s t a t i c char co nst s t a t i c char // S a l i d a s co nst s t a t i c char // R e g l a s co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char co nst s t a t i c char

OTROS ARCHIVOS

255

138 139 140 141 142 143 144 145 146

const // Otros const const const const const #e n d i f

s t a t i c c h a r O_Rule={" Rule : " } ; static static static static static char char char char char O_DifferentOf ={" is different of " } ; O_IsNotCorrect={" is not correct . " } ; O_MF={" Membershi p Function : " } ; O_OfPlant={" of the Plant " } ; O_OfController={" of Controller " } ;

En el siguiente archivo se denen funciones matemticas necesarias para el software y que no estn denidas en C/C++ de forma estndar.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54

/ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # C o p y ri g h t 2004 2009: ANTONIO JAVIER BARRAGAN, a n t o n i o . b a r r a g a n @ d i e s i a . uhu . e s h ttp : / /www. uhu . e s / a n t o n i o . b a rra g a n JOSE MANUEL ANDUJAR, a n d u j a r @ d i e s i a . uhu . e s MANUEL EMILIO GEGUNDEZ, gegundez@dmat . uhu . e s DPTO. DE ING . ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA E . P . S . LA RABIDA, UNIVERSITY OF HUELVA (SPAIN) For more i n f o r m a t i o n , p l e a s e c o n t a c t with a u t h o r s . # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # / / This s o f t w a r e i s f r e e s o f t w a r e : you can r e d i s t r i b u t e i t and / o r modify i t under th e terms o f th e GNU G e n e ra l P u b l i c L i c e n s e a s p u b l i s h e d by th e F re e S o f t w a r e Foundation , e i t h e r v e r s i o n 3 o f th e L i c e n s e , o r ( a t your o p t i o n ) any l a t e r v e r s i o n . This s o f t w a r e i s d i s t r i b u t e d i n th e hope t h a t i t w i l l be u s e f u l , but WITHOUT ANY WARRANTY; w i th o u t even th e i m p l i e d warranty o f MERCHANTABILITY o r FITNESS FOR A PARTICULAR PURPOSE . See th e GNU G e n e ra l P u b l i c L i c e n s e f o r more d e t a i l s . You s h o u l d have r e c e i v e d a copy o f th e GNU G e n e ra l P u b l i c L i c e n s e a l o n g with t h i s program . I f not , s e e <h ttp : / /www. gnu . o rg / l i c e n s e s / >. / #i f n d e f _EXT_MATH_H_ #d e f i n e _EXT_MATH_H_ #i n c l u d e <math . h> #i n c l u d e " messages . h " #i f d e f MATLAB_MEX_FILE #i n c l u d e <i o s t r e a m > #i n c l u d e " mex . h " #e n d i f # d e f i n e M_EPS 1 e 16 i n l i n e i n t sign ( double x) { i f ( x>0) return 1; e l s e i f ( x<0) r e t u r n 1; else return 0; } #e n d i f

Indice de guras
2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 2.18 2.19 2.20 2.21 2.22 2.23 2.24 2.25 2.26 2.27 2.28 2.29 2.30 2.31 2.32 Conjunto ordinario. . . . . . . . . . . . . . . . . . . . . . . . Conjunto borroso. . . . . . . . . . . . . . . . . . . . . . . . . Ejemplos de funciones de pertenencia. . . . . . . . . . . . . . Convexidad en conjuntos borrosos. . . . . . . . . . . . . . . Funcin de pertenencia triangular. . . . . . . . . . . . . . . . Funcin de pertenencia trapezoidal. . . . . . . . . . . . . . . Funcin de pertenencia gaussiana. . . . . . . . . . . . . . . . Funciones de pertenencia gaussiana doble. . . . . . . . . . . Funciones de pertenencia campana. . . . . . . . . . . . . . . Funcin de pertenencia S. . . . . . . . . . . . . . . . . . . . Funcin de pertenencia Z. . . . . . . . . . . . . . . . . . . . Funcin de pertenencia . . . . . . . . . . . . . . . . . . . . Funciones de pertenencia sigmoidales. . . . . . . . . . . . . . Funciones de pertenencia diferencia de sigmoidales. . . . . . Funciones de pertenencia producto de sigmoidales. . . . . . . Funcin de pertenencia Singleton. . . . . . . . . . . . . . . . Interseccin entre conjuntos borroso. . . . . . . . . . . . . . Unin de conjuntos borrosos. . . . . . . . . . . . . . . . . . . Operacin negacin o complemento a uno. . . . . . . . . . . T normas producto y producto acotado. . . . . . . . . . . . S normas sumaproducto y suma acotada. . . . . . . . . . . Operadores de negacin de Yager y Sugeno. . . . . . . . . . corte de un conjunto borroso para = 0,5. . . . . . . . . Combinacin convexa de dos conjuntos borrosos. . . . . . . . Variable lingstica edad. . . . . . . . . . . . . . . . . . . . . Concentracin y dilatacin de una variable lingstica. . . . Sistema de inferencia borroso. . . . . . . . . . . . . . . . . . Ejemplo de inferencia. . . . . . . . . . . . . . . . . . . . . . Ejemplo de desborrosicacin. . . . . . . . . . . . . . . . . . Tipos de modelos borrosos . . . . . . . . . . . . . . . . . . . Diagrama de bloques de un modelo aditivo estndar (SAM). Sistema borroso de TakagiSugenoKang (TSK). . . . . . . . 257 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 19 21 22 24 25 26 27 28 29 30 30 31 31 32 32 34 34 35 38 39 40 41 42 43 44 46 48 49 50 53 55

258 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 3.20 4.1 4.2 4.3 4.4 4.5 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10

NDICE DE FIGURAS

Sistema de control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Algoritmo para el clculo del modelo borroso de la planta. . . . . . . . . Algoritmo para el clculo del controlador borroso. . . . . . . . . . . . . . Sistema de control en lazo cerrado. . . . . . . . . . . . . . . . . . . . . . Algoritmo para el clculo del sistema de control borroso en lazo cerrado. Proceso de identicacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . Ejemplo de particionamiento uniforme. . . . . . . . . . . . . . . . . . . . Ejemplo de particionamiento por clustering. . . . . . . . . . . . . . . . . Red neuronal equivalente a un modelo borroso. . . . . . . . . . . . . . . Red neuronal equivalente al modelo borroso de la planta. . . . . . . . . . Algoritmo de adaptacin neuroborrosa. . . . . . . . . . . . . . . . . . . . Grafo para el ajuste de modelos TSK mediante OCH. . . . . . . . . . . . Algoritmo de activacin de las hormigas. . . . . . . . . . . . . . . . . . . OCHneuroborroso. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diagrama UML de la estructura de clases. . . . . . . . . . . . . . . . . . Clase Pertenencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clase Regla. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clase Sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Paquete Utilidades. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Paquete Utilidades MATLAB. . . . . . . . . . . . . . . . . . . . . . . . . Algoritmo numrico de minimizacin. . . . . . . . . . . . . . . Algoritmo de linealizacin de un modelo borroso. . . . . . . . Clase Jacobiana. . . . . . . . . . . . . . . . . . . . . . . . . . Relacin entre las clases Jacobiana y Sistema. . . . . . . . . . Algoritmo para el clculo de la matriz Jacobiana de un modelo Estabilidad. . . . . . . . . . . . . . Funcin de Lyapunov. . . . . . . . Sistema de inferencia borroso. . . . Regin de atraccin, caso 1. . . . . Regin de atraccin, caso 2. . . . . Algoritmo de inicializacin. . . . . Funcin objetivo. . . . . . . . . . . Algoritmo hbrido de minimizacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . borroso. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

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

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

61 65 69 71 72 75 76 77 79 80 82 83 84 84 86 87 87 88 89 90 118 119 120 120 121 126 128 131 137 137 140 142 142 146 147 148 148 149 149 150 150 155 155

Gra porta contenedores. . . . . . . . . . . . . . . . . . . . . . Representacin esquemtica de una gra porta contenedores. . Funciones de pertenencia para la variable posicin, d. . . . . . Funciones de pertenencia para la variable longitud del cable, l. Funciones de pertenencia para la variable ngulo, . . . . . . . y l. . . . . . . . Funciones de pertenencia para las variables d Funciones de pertenencia para T1 . . . . . . . . . . . . . . . . . Funciones de pertenencia para T2 . . . . . . . . . . . . . . . . . Evolucin de la variable de estado x1 (t). . . . . . . . . . . . . Evolucin de la variable de estado x2 (t). . . . . . . . . . . . .

NDICE DE FIGURAS

259 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 156 157 157 160 160 161 161 162 162 163 163 164 165 165 166 171 171 176 176 180 181 181 182 183 183 189 189 190 193 194 195 195 196 196 197 197 198 198 199 199 200 200 201 201

6.11 6.12 6.13 6.14 6.15 6.16 6.17 6.18 6.19 6.20 6.21 6.22 6.23 6.24 6.25 6.26 6.27 6.28 6.29 6.30 6.31 6.32 6.33 6.34 6.35 6.36 6.37 6.38 6.39 6.40 6.41 6.42 6.43 6.44 6.45 6.46 6.47 6.48 6.49 6.50 6.51 6.52 6.53 6.54 6.55

Evolucin de la variable de estado x3 (t). . . . . . . . . . . . . . . . . . Evolucin de la variable de estado x4 (t). . . . . . . . . . . . . . . . . . Evolucin de la variable de estado x5 (t). . . . . . . . . . . . . . . . . . Evolucin de la variable de estado x6 (t). . . . . . . . . . . . . . . . . . Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada u1 (t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada u2 (t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada u1 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada u2 (t) en la inferencia de x 2 (t). Validacin del modelo borroso para x 1. . . . . . . . . . . . . . . . . . . Validacin del modelo borroso para x 2. . . . . . . . . . . . . . . . . . . Error de modelado durante la validacin de x 1. . . . . . . . . . . . . . . Error de modelado durante la validacin de x 2. . . . . . . . . . . . . . . Simulacin para distintas condiciones iniciales. . . . . . . . . . . . . . . Retrato de fase temporal. . . . . . . . . . . . . . . . . . . . . . . . . . Simulacin para distintas condiciones iniciales. . . . . . . . . . . . . . . Retrato de fase temporal. . . . . . . . . . . . . . . . . . . . . . . . . . Pndulo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada u(t) en la inferencia de x 2 (t). Validacin del modelo borroso para x 2. . . . . . . . . . . . . . . . . . . Error de modelado durante la validacin de x 2. . . . . . . . . . . . . . . Simulacin para distintas condiciones iniciales. . . . . . . . . . . . . . . Retrato de fase temporal. . . . . . . . . . . . . . . . . . . . . . . . . . Retrato de fase. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Balancn. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada x3 (t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada x4 (t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada u(t) en la inferencia de x 1 (t). Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada x3 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada x4 (t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada u(t) en la inferencia de x 2 (t). Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 3 (t). Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 3 (t). Funciones de pertenencia para la entrada x3 (t) en la inferencia de x 3 (t). Funciones de pertenencia para la entrada x4 (t) en la inferencia de x 3 (t). Funciones de pertenencia para la entrada u(t) en la inferencia de x 3 (t).

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

260 6.56 6.57 6.58 6.59 6.60 6.61 6.62 6.63 6.64 6.65 6.66 6.67 6.68 6.69 6.70 6.71 6.72

NDICE DE FIGURAS

Funciones de pertenencia para la entrada x1 (t) en la inferencia de x 4 (t). Funciones de pertenencia para la entrada x2 (t) en la inferencia de x 4 (t). Funciones de pertenencia para la entrada x3 (t) en la inferencia de x 4 (t). Funciones de pertenencia para la entrada x4 (t) en la inferencia de x 4 (t). Funciones de pertenencia para la entrada u(t) en la inferencia de x 4 (t). Validacin del modelo borroso para x 1. . . . . . . . . . . . . . . . . . . Error de modelado durante la validacin de x 1. . . . . . . . . . . . . . . Validacin del modelo borroso para x 2. . . . . . . . . . . . . . . . . . . Error de modelado durante la validacin de x 2. . . . . . . . . . . . . . . Validacin del modelo borroso para x 3. . . . . . . . . . . . . . . . . . . Error de modelado durante la validacin de x 3. . . . . . . . . . . . . . . Validacin del modelo borroso para x 4. . . . . . . . . . . . . . . . . . . Error de modelado durante la validacin de x 4. . . . . . . . . . . . . . . Simulacin para distintas condiciones iniciales x 1 y x 2. . . . . . . . . . Simulacin para distintas condiciones iniciales x 3 y x 4. . . . . . . . . . Retrato de fase temporal x 1 y x 2. . . . . . . . . . . . . . . . . . . . . . Retrato de fase temporal x 3 y x 4. . . . . . . . . . . . . . . . . . . . . .

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

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

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

202 202 203 203 204 206 206 207 207 208 208 209 209 217 217 218 218

Indice de tablas
2.1 2.2 2.3 2.4 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12 6.13 6.14 6.15 6.16 6.17 6.18 6.19 6.20 6.21 6.22 6.23 6.24 6.25 6.26 6.27 6.28 6.29 T normas principales. . . S normas principales. . . Operadores de Negacin. . Operadores de implicacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 39 40 45 167 167 167 168 168 172 172 173 173 174 177 177 178 178 179 184 184 185 185 185 186 191 191 191 192 192 210

Resultados de la bsqueda de estados de equilibrio. Ejecucin 1. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 2. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 3. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 4. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 5. . Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 1. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 2. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 3. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 4. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 5. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 1. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 2. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 3. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 4. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 5. Resultados de la bsqueda de estados de equilibrio. Ejecucin 1. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 2. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 3. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 4. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 5. . Resultados de la bsqueda de estados de equilibrio. Ejecucin 6. . Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 1. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 2. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 3. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 4. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin 5. Resultados de la bsqueda de estados de equilibrio. Ejecucin 1. . 261

262 6.30 6.31 6.32 6.33 6.34 6.35 6.36 6.37 6.38

NDICE DE TABLAS

Resultados de la bsqueda de estados de equilibrio. Ejecucin 2. Resultados de la bsqueda de estados de equilibrio. Ejecucin 3. Resultados de la bsqueda de estados de equilibrio. Ejecucin 4. Resultados de la bsqueda de estados de equilibrio. Ejecucin 5. Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin Bsqueda de los estados de equilibrio de lazo cerrado. Ejecucin

. . . . 1. 2. 3. 4. 5.

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

210 211 211 212 219 220 220 221 221

A.1 Leyenda de ndices y variables. . . . . . . . . . . . . . . . . . . . . . . . . . . 232

Indice alfab etico


Coeciente variable, 62, 63, 66, 67, 69, 94, 106, 227, 228 Combinacin convexa, 40 Complemento, vase Negacin borrosa Concentracin, 39, 41 Condicin de frontera, 35, 36, 38 Condicin de lmite, 21, 2426 Conjunto borroso, 2, 3, 11, 1721, 3040, 43 45, 5052, 60, 61, 65, 71, 72, 129, 145, 151, 227230 convexo, 2021, 31 disjunto, 31 frontera (de un), 21 normal, 2021 normalizado, 19, 39 nulo, 1920 Base de conocimiento, 42, 44, 4647, 49, 53 Conjunto borroso escalar, vase Funcin de pertenencia singleton Base de datos, 46, 156 Base de reglas, 46, 47, 50, 52, 129, 149, 156 Conjunto clsico, 17, 18, 34 Conjunto ordinario, vase Conjunto clsico Bifurcacin, 92 Conjunto universal, 34 Borrosicador, 4445, 49, 53, 128 Conorma triangular, vase S norma Calidad de pertenencia, vase grado de per- Consecuente, 43, 50, 51, 53, 60, 62, 65, 66, 69, 71, 72, 76, 79, 80, 95, 104, 106, 123, tenencia 135138, 168, 178, 186, 227230 Caos, 92 afn, 52, 60, 62, 65, 66, 69, 123, 227 Capa de entrada, 76 lineal, 52, 79, 85, 227, 228 Capa de salida, 76 TSK, vase Consecuente lineal Capa oculta, 76 Control borroso, 13, 14, 16, 21, 49, 128, 131 Cholesky, 138, 139, 237238 Control de procesos, 45 Ciclo lmite, 92 Clustering, 3, 13, 76, 157, 178, 192 Control heurstico, 71, 127129, 143156 Agregacin, 45, 61, 65, 103 corte, 38 Algoritmo, 2, 4, 62, 63, 66, 67, 69, 70, 7275, 77, 7983, 8688, 114119, 130, 136 140, 157, 164, 167, 168, 172, 180, 182, 184186, 202, 203, 210, 211 gentico, 139, 140 numrico, 3, 114116, 139, 140, 168, 175, 188, 217 Antecedente, 43, 45, 50, 52, 60, 61, 65, 71, 72, 76, 79, 80, 85, 135137, 157, 168, 178, 192, 222, 227230 Aproximador universal, 49, 50, 53, 60, 72, 76, 92, 130, 221 Autovalor, 92, 103, 152, 167, 184, 185, 188, 210, 211, 217, 237 263

264

NDICE ALFABTICO

168, 172, 173, 175, 177, 182, 184186, Controlador, 2, 16, 59, 65, 67, 69, 102, 103, 188, 203, 210, 211, 214, 217 106, 108, 112, 123, 127131, 137, 141, Etiqueta lingstica, 26, 27, 4143, 47 168, 172, 221, 227, 229, 230 Controlador borroso, 2, 16, 44, 59, 66, 69, 106, Extensin del vector de estado, 2, vase Vector de estado extendido 109, 121, 123, 128131, 136139, 143, 144, 151, 152, 156, 167, 168, 172, 173, Factor de aprendizaje, 79 177, 185, 186, 211, 214, 223, 231 Funcin de coste, 7982 Desborrosicador, 44, 4749, 53, 128, 129, 150 Funcin de Lipschitz, 139 Funcin de pertenencia, 2, 3, 1730, 39, 41, centroide, 4748 45, 47, 50, 51, 61, 62, 65, 66, 72, 73, centroide indexado, 48 76, 80, 84, 85, 109, 128, 130, 131, 135 mximo, 48 137, 145, 157, 172, 178, 180, 192, 221, Descripcin interna, vase Modelo de estado 222, 229231 Dilatacin, 39 campana, 2526, 233234 Diseo, 4, 118, 128, 129, 131, 145151, 156, derivada de, 231235 157, 177, 221 gaussiana, 2324, 74, 79, 145, 162, 180, algoritmo, 136, 138 202, 232233 controlador, 1, 3, 69, 92, 102, 113, 121, gaussiana doble, 2425, 233 123, 126, 129131, 135137, 152, 156, , 2728, 235 167, 173, 177, 188, 221223 S, 26, 234 fase de, 136, 138140, 162, 168, 172, 173, sigmoidal, 2830, 235 177, 185, 186, 211, 212 sigmoidal (diferencia), 29, 235 software, 83, 116 sigmoidal (producto), 29, 235 Distribucin de posibilidad, 41 singleton, 30, 4346, 50 Ecuacin de estado, 5760, 62, 102, 103 trapezoidal, 2223, 232 Ecuacin de salida, 58, 60 triangular, 2122, 178, 231232 Entrada de control, vase Seal de control Z, 27, 235 Entrada/Salida, 3, 89, 92, 123, 130, 134, 156, Fuzzy logic, vase lgica borrosa 157, 167, 178, 188, 192, 210, 221 Gradiente, 114116 Error cuadrtico, 79 Error cuadrtico medio, 83, 162, 164, 180, 203 Gradiente descendente, 73, 77, 7982 Espacio de estado, 124127, 132, 136, 137, Grado de activacin, 45, 51, 52, 61, 65, 9498, 100, 104106, 108, 110, 112, 136, 137, 167, 172, 173 151, 229231 Estabilidad, 1, 3, 4, 59, 92, 102, 103, 113, 121, 123, 126, 128131, 156, 168, 172, 184, Grado de pertenencia, 12, 1720, 24, 74, 136, 137 186, 188, 211, 214 asinttica, 7, 124, 126, 127, 130, 131, 136, Heurstica, 15, 47, 71, 80, 127129, 144 139, 167, 177, 184, 185, 188, 214, 217, 223 Idempotencia, 33, 36 asinttica global, 124, 126, 127 Identidad, 33 en el sentido de Lyapunov, 123125 cero, 36 Estado, 5658, 62, 66, 69 unitaria, 35 Estado de equilibrio, 3, 5859, 92, 93, 102, Identicacin, vase Modelado 103, 113116, 123127, 130132, 134, Igualdad borrosa, 31 136, 137, 139141, 152, 156, 164, 167, Inclusin borrosa, 31

NDICE ALFABTICO

265

fsico, 56 Inestabilidad, 125, 167, 184, 210 Inferencia borrosa, 2, 14, 4446, 61, 128, 150, matemtico, 56, 92, 121, 123, 130, 137, 157, 178, 192 151, 156, 221, 222 Inicializacin, 85, 86, 136138, 168, 172, 186, mental, 56 211 verbal, 56 Interseccin borrosa, 2, 31, 3335, 40, 45, 50, Modelo borroso, 3, 4, 16, 44, 56, 5962, 65, vase tambin T -norma 68, 72, 76, 82, 8488, 92, 93, 130, 131, Involucin, 34 134, 137, 156, 157, 162, 167, 177, 178, 180, 182, 184, 185, 192, 202, 203, 210, Krasovskii, 4, 7, 103, 126127, 131, 167, 172, 211, 221223 177 de la planta, 2, 3, 5964, 72, 78, 87, 94, 96, 116, 130, 164, 167, 168, 173, 180, Lgica borrosa, 13, 1117, 21, 30, 34, 41, 43, 186, 203, 214, 221223, 227230 44, 69, 76, 92, 122, 123, 127, 128, 144, de lazo cerrado, 2, 3, 6871, 87, 116, 136, 220 177, 188, 217 Lgica clsica, 12, 17, 30, 34 del controlador, 6568, 72, 87, 221, 222, LineSearch, 114 227229 Linealizacin, 3, 9294, 99, 102, 103, 113, 116, Mamdani, 2, 4951, 53, 56, 60, 7172, 144 121, 131, 136, 167, 184, 185, 211 puro, 49 LMI, 123 SAM, 5051 Lyapunov, 4, 7, 103, 123127, 131, 132, 134, TSK, 13, 5153, 56, 6072, 81, 83, 103, 136, 139, 167, 172, 177, 186, 214 130, 221 Tsukamoto, 51 Margen de tolerancia, 80 MATLAB , 6, 9, 83, 84, 8689, 116, 118, 130, Modelo de estado, 2, 56, 57, 62, 92, 130, 131, 151, 156, 178, 180, 191, 192, 223 225, 249 de tiempo continuo, 57, 58, 6069, 7172 Matriz hessiana, 114, 115 Matriz jacobiana, 3, 102, 103, 105, 107, 111, de tiempo discreto, 58, 60, 64, 6772 112, 115, 116, 118, 131, 132, 136, 164, Modelo matemtico equivalente, 2, 72 167, 168, 173, 175, 177, 182, 188, 203, de la planta, 3, 59, 62, 64, 68, 69, 113 210, 217, 228 de lazo cerrado, 3, 59, 69, 103, 113 Mtodo de Newton, 114 del controlador, 3, 59, 66, 68, 69, 109 Mtodo numrico, vase tambin Algoritmo linealizado, 94, 99 numrico Modicador lingstico, 41 Mnimos cuadrados, 114, 115 Momento de inercia, 144, 191 Modelado, 3, 59, 7283, 92, 130, 131, 156, 157, Momentos, 80 162, 164, 180, 203, 221, 223 Monotonicidad, 35, 36 borroso, 2, 55, 74, 81, 157 Motor de inferencia, 44, 45, 49, 53, 103 de la planta, 156, 221 mediante colonias de hormigas, 3, 8082, Negacin borrosa, 2, 33, 3638 224 Norma, 141 neuroborroso, 3, 7680 Modelo, 56, 76, 128, 130, 151, 164, 180, 184, Norma triangular, vase T -norma Ncleo, 2124, 30 185, 191, vase tambin Sistema Nmero borroso, 2123, 27 de la planta, 16, 102, 129, 157 Nmero cuasiborroso, 21, 2426 de lazo cerrado, 59, 102, 128, 151, 152

266

NDICE ALFABTICO

OCH, vase Modelado mediante colonias de hormigas Operador de implicacin, 43, 45, 50 Orden, 57, 60, 65, 136, 139, 228 Origen, 125, 127, 132, 134, 135, 139141, 168, 172, 173, 175, 177, 185, 186, 188, 210, 211, 214, 217 Parmetros adaptables, 60, 61, 65, 86, 130, 131, 135, 136, 138, 168, 186, 229, 230 Particionado en lnea, 74 experto, 3, 73 por clustering, 74, vase tambin Clustering uniforme, 3, 73 Peso, 21 Planta, 2, 4, 16, 59, 61, 62, 68, 69, 71, 72, 95, 97, 98, 100, 103105, 108, 110, 112, 114, 121, 123, 128131, 134, 137, 143 145, 151, 156, 157, 164, 168, 172, 173, 177, 178, 185, 188, 191, 192, 203, 210, 211, 221, 223, 227231 Principio de Incompatibilidad, 41 Probabilidad de pertenencia, 18 Producto algebraico, 39 Promedio ponderado, 52, 53, 61, 65, 103 Propiedad asociativa, 3436 conmutativa, 3436 distributiva, 34, 36 involutiva, 38 Punto borroso, vase funcin de pertenencia singleton Punto singular, vase Estado de equilibrio

Regla lingstica, vase Regla borrosa Retrato de fase, 169, 173, 174, 187, 188, 216 Snorma, 3536, 40, 43, 45, 50 Seal de control, 59, 61, 62, 65, 71, 94, 9698, 101, 102, 108, 109, 128, 129, 150, 151, 168, 178, 191, 192, 227230 Seal de error, 77, 79 Sistema borroso, 16, 42, 44, 45, 49, 53, 56, 86, 113, 114, 116, 121, 221 de control, 1, 16, 44, 45, 60, 92, 102, 103, 108, 113, 121, 122, 130, 136, 151, 156, 168, 172, 177, 188, 211 de control borroso, 68, 69, 84, 103, 105, 107, 109111, 118, 122, 123, 131, 136, 137, 156, 168, 177, 188, 217, 231 de inferencia, 4448 lineal, 92, 121 neuroborroso, 76 no lineal, 18, 57, 58, 60, 65, 67, 69, 72, 92, 93, 102, 114, 121123, 126, 156, 157, 221 Sobre-entrenamiento, 75 Software, 3, 8388, 92, 116118, 130, 131 Soporte, 2030 Standard Fuzzy Partition, 123 Suma, 3940 Suma algebraica, 39 Suma ponderada, 52, 53 Tconorma, vase Snorma Tnorma, 3536, 40, 43, 45, 50, 53 Taylor, 6, 9, 93, 102 Tecnologa fuzzy, 13 Tiempo normalizado, 64 Transitividad, 34

Razonamiento aproximado, 43, 44 Red neuronal, 53, 76, 77, 79 UML, 3, 84, 118 Regin de atraccin, 134 Unin borrosa, 2, 3134, 45, vase tambin Regin de conanza, 114 S norma Regla borrosa, 13, 13, 4243, 4951, 53, 59 62, 65, 66, 68, 69, 71, 72, 75, 76, 79, Universo de discurso, 7, 1820, 40, 42, 44, 47, 50, 52, 60, 61, 65, 69, 7173, 86, 129, 84, 85, 87, 95, 104, 106, 110, 123, 128 134, 157, 168, 173, 175, 178, 180, 186, 131, 136, 137, 151, 157, 168, 172, 178, 188, 191, 192, 203, 210, 214, 217, 227 180, 185, 192, 202, 211, 221, 222, 227 230 231

NDICE ALFABTICO

267

Validacin, 3, 8283, 130, 157, 162, 164, 178, 180, 192, 203 Validacin cruzada, 83 Variable de control, 59, 61, 64, 145, 157, 227 230 Variable de estado, 3, 7, 5761, 64, 65, 71, 72, 97, 102, 103, 105, 106, 108, 111, 123, 130, 134, 157, 168, 173, 175, 178, 182, 186, 188, 191, 203, 214, 217, 227230 Variable lingstica, 2, 4143, 46, 129, 145 Vector de control, 2, 3, 58, 60, 62, 6567, 69, 95, 97, 100, 102, 108, 109, 113, 130, 131, 157 Vector de estado, 2, 3, 57, 58, 6062, 6567, 69, 95, 100102, 104, 106, 108, 130, 131, 133, 152, 157, 177, 191 Vector de estado extendido, 6264, 66, 67, 70, 71, 94, 117, 228, 229 Vector de salida, 58

Bibliograf a
[1] Lofti A. Zadeh. Fuzzy sets. Information and Control, 8(3):338353, 1965. [2] Llus Amiguet. Las mquinas tienen que hablar en humano. Entrevista a Lofti A. Zadeh, La Vanguardia, 23/11/2004, pgina 68. [3] Lofti A. Zadeh. From circuit theory to system theory. In Proceedings of th Institute of Radio Engineers, volume 50, pages 856865, May 1962. [4] E.T. Lee and Lot A. Zadeh. Note on fuzzy languages. Information Sciences, 1(4):421 434, October 1969. [5] Lofti A. Zadeh. Similarity relations and fuzzy orderings. 3(2):177200, April 1971. Information Sciences,

[6] Lofti A. Zadeh. Outline of a new approach to the analysis of complex systems and decision processes. IEEE Transactions on Systems, Man, and Cybernetics, 3:2844, January 1973. [7] Lofti A. Zadeh. Fuzzy logic. IEEE Computer, 21(4):8393, April 1988. [8] Lofti A. Zadeh. Fuzzy algorithms. Information and Control, 12(2):94102, 1968. [9] Lofti A. Zadeh. Fuzzy logic and its application to approximate reasoning. In IFIP Congress, pages 591594, 1974. [10] Lofti A. Zadeh. The concept of a linguistic variable and its application to approximate reasoning I. Information Sciences, 8(3):199249, 1975. [11] Lofti A. Zadeh. The concept of a linguistic variable and its application to approximate reasoning II. Information Sciences, 8(4):301357, 1975. [12] Lofti A. Zadeh. The concept of a linguistic variable and its application to approximate reasoning III. Information Sciences, 9(1):4380, 1975. [13] Lofti A. Zadeh. Generalized theory of uncertainty (GTU)principal concepts and ideas. Computational Statistics & Data Analysis, 51(1):1546, November 2006. 269

270

BIBLIOGRAFA

[14] John Yen and Reza Langari. Fuzzy Logic: Intelligence, control, and information. Prentice Hall, 1999. [15] Lot A. Zadeh. Granular computing and Rough Set Theory. In Springer Berlin / Heidelberg, editor, Granular Computing and Rough Set Theory, volume 4585/2007, pages 14, 2007. [16] R. E. Bellman and Lofti A. Zadeh. Decisionmaking in a fuzzy environment. Management Science, 17(4):B141B164, December 1970. [17] George Lako. Hedges: A study in meaning criteria and the logic of fuzzy concepts. Journal of Philosophical Logic, 2(4):458508, October 1973. [18] J. A. Goguen. The logic of inexact concepts. Synthese, 19(3-4):325373, April 1969. [19] R. E. Smith. Measure theory on fuzzy sets. PhD thesis, Dept. of Mathematics, University of Saskatchewan, Saskatoon, Canada, 1970. [20] Michio Sugeno. Theory of fuzzy integrals and its applications. PhD thesis, Tokyo Institute of Technology, 1974. [21] James C. Bezdek and Joseph C. Dunn. Optimal fuzzy partitions: A heuristic for estimating the parameters in a mixture of normal distributions. IEEE Transactions on Computers, C-24(8):835838, August 1975. [22] J. C. Dunn. A fuzzy relative of the ISODATA process and its use in detecting compact well-separated clusters. Journal of Cybernetics, 3:3257, 1973. [23] Constantin Virgil Negoita. Information retrieval systems. PhD thesis, Polytechnical Institute, Bucharest, Romania, 1969. [24] Constantin Virgil Negoita. Fuzzy systems and articial intelligence. Cybernetes, 3:173 178, 1974. [25] H. J. Zimmermann. Description and optimization of fuzzy systems. International Journal of General Systems, 2:209215, 1976. [26] Jos Meseguer and Ignacio Sols. Automata in semimodule categories. In Proceedings of the First International Symposium on Category Theory Applied to Computation and Control, pages 193198, London, UK, 1975. Springer-Verlag. [27] Ignacio Sols. Aportaciones a la teora de topos, al lgebra universal y a las matemticas fuzzy. PhD thesis, Universidad de Zaragoza, Zaragoza, Espaa, 1975. [28] Ebrahim H. Mamdani and S. Assilian. An experimental in linguistic synthesis with a fuzzy logic controller. International Journal of Man-Machine Studies, 7(1):113, 1975. [29] S. Assilian. Articial intelligence in the control of real dynamical systems. PhD thesis, Queen Mary College, London University, 1974.

BIBLIOGRAFA

271

[30] Ebrahim H. Mamdani. Twenty years of fuzzy control: experiences gained and lessons learned. Second IEEE International Conference on Fuzzy Systems, 1:339344, March 1993. [31] P. J. King and E. H. Mamdani. The application of fuzzy control systems to industrial processes. Automatica, 13(3):235242, May 1977. [32] M. Togai and H. Watanabe. Expert system on a chip: an engine for real-time approximate reasoning. In Proceedings of the ACM SIGART international symposium on Methodologies for intelligent systems, pages 147154, New York, NY, USA, 1986. ACM Press. [33] S. Yasunobu and S. Miyamoto. Automatic train operation by predictive fuzzy control. In Sugeno, editor, Industrial Applications of Fuzzy Control, pages 118, Amsterdam, 1985. [34] Kaoru Hirota. Industrial education on fuzzy systems in Japan. In Proceedings of the Industrial Electronics, Control, and Instrumentation, volume 1, pages 176181, Maui, HI, USA, November 1993. [35] J. Gebhardt. Application of fuzzy logic to the control of a wind energy converter. In First European Congress on Fuzzy and Intelligent Technologies, pages 339348, Aachen, 1993. [36] C. von Altrock, B. Krause, K. Limper, and W. Schfers. Optimization of a waste incineration plant using fuzzy logic. In Second European Congress on Fuzzy and Intelligent Technologies, Aachen, 1994. [37] Oscal T. Chen, Yao-Chou Lu, and Hwai-Tsu Chang. Fuzzy reasoning processor for camera image autofocus. In Lance T. Wu, editor, Visual Communications and Image Processing95, volume 2501, pages 347354. SPIE, 1995. [38] T. Haruki and K. Kikuchi. Video camera system using fuzzy logic. IEEE Transactions on Consumer Electronics, 38(3):624634, August 1992. [39] Lee Yongman, Jang Seong-Ik, Chung Keewook, Lee Dongyun, Kim Wonchan, and Lee Choong-Woong. Fuzzy-control processor for automatic focusing. IEEE Transactions on Consumer Electronics, 40(2):138144, May 1994. [40] P. Hofbauer, H. O. Arend, and D. Pfannstiel. New heating systems controls based on the use of fuzzy logic. In First European Congress on Fuzzy and Intelligent Technologies, pages 10361042, Aachen, 1993. [41] H. Steinmller and O. Wick. Fuzzy and neurofuzzy applications in european washing machines. In First European Congress on Fuzzy and Intelligent Technologies, EUFIT93, pages 10311035, Aachen, 1993. [42] Jos Ferrer, Mara A. Rodrigo, Aurora Seco, and Josep Manuel Penya-roja. Energy saving in the aeration process by fuzzy logic control. Water Science and Technology, 38(3):209217, 1998.

272

BIBLIOGRAFA

[43] C. von Altrock. Fuzzy logic technologies in automotive engineering. In Embedded systems conference, volume 2, pages 407422, 1994. [44] C. von Altrock, B. Krause, and H. J. Zimmermann. Advanced fuzzy logic control of a model car in extreme situations. Fuzzy Sets and Systems, 48(1):4152, 1992. [45] C. von Altrock, B. Krause, and H. J. Zimmermann. Advanced fuzzy logic control technologies in automotive applications. In IEEE Conference on Fuzzy Systems, pages 831842, 1992. [46] A.S. Cherry and R.P. Jones. Fuzzy logic control of an automotive suspension system. In IEE Proceedings: Control Theory and Applications, pages 149160. IEE, Stevenage, United Kingdom, March 1995. [47] V. Rao, M.V.C. adn Prahlad. A tunable fuzzy logic controller for vehicle-active suspension systems. Fuzzy Sets and Systems, 85(1):1121, January 1997. [48] Y. Taskin, Y. Hacioglu, and N. Yagiz. The use of fuzzy-logic control to improve the ride comfort of vehicles. Journal of Mechanical Engineering, 53(4):233240, April 2007. [49] Hyun Mun Kim, Julie Dickerson, and Bart Kosko. Fuzzy throttle and brake control for platoons of smart cars. Fuzzy Sets and Systems, 84(3):209234, December 1996. [50] Jeery R. Layne, Kevin M. Passino, and Stephen Yurkovich. Fuzzy learning control for antiskid braking systems. IEEE Transactions on Control Systems Technology, 1(2):122129, June 1993. [51] Y. Lee and S.H. Zak. Designing a genetic neural fuzzy antilock-brake-system controller. IEEE Transactions on Evolutionary Computation, 6(2):198211, April 2002. [52] William K. Lennon and Kevin M. Passino. Intelligent control for brake systems. IEEE Transactions on Control Systems Technology, 7(2):188202, March 1999. [53] D.P. Madau, F. Yuan, Jr. Davis, L.I., and L.A. Feldkamp. Fuzzy logic anti-lock brake system for a limited range coecient of friction surface. In Second IEEE International Conference on Fuzzy Systems, pages 883888. IEEE, Piscataway, NJ, United States, 1993. [54] Georg F. Mauer. Fuzzy logic controller for an ABS braking system. IEEE Transactions on Fuzzy Systems, 3(4):381388, November 1995. [55] G.J. Vachtsevanos, S.S. Farinwata, and D.K. Pirovolou. Fuzzy logic control of an automotive engine. IEEE Control Systems Magazine, 13(3):6268, June 1993. [56] B.M. Baumann, G. Washington, B.C. Glenn, and G. Rizzoni. Mechatronic design and control of hybrid electric vehicles. IEEE/ASME Transactions on Mechatronics, 5(1):5872, March 2000.

BIBLIOGRAFA

273

[57] S.D. Farrall and R.P. Jones. Energy management in an automotive electric/heat engine hybrid powertrain using fuzzy decision making. In Proceedings of the 1993 IEEE International Symposium on Intelligent Control, pages 463468, Chicago, IL, August 1993. [58] Hyeoun-Dong Lee and Seung-Ki Sul. Fuzzy-logic-based torque control strategy for parallel-type hybrid electric vehicle. IEEE Transactions on Industrial Electronics, 45(4):625632, August 1998. [59] N.J. Schouten, M.A. Salman, and N.A. Kheir. Fuzzy logic control for parallel hybrid vehicles. IEEE Transactions on Control Systems Technology, 10(3):460468, May 2002. [60] N.J. Schouten, M.A. Salman, and N.A. Kheir. Energy management strategies for parallel hybrid vehicles using fuzzy logic. Control Engineering Practice, 11(2):171 177, February 2003. [61] Jong-Seob Won and Reza Langari. Fuzzy torque distribution control for a parallel hybrid vehicle. Expert Systems, 19(1):410, February 2002. [62] Claudi Alsina and Enric Trillas. On uniformly close fuzzy preorders. Fuzzy Sets and Systems, 53(3):343346, 1993. [63] Claudi Alsina and Enric Trillas. On the law S (S (x, y ), T (x, y )) = S (x, y ) of fuzzy logic. Fuzzy Optimization and Decision Making, 6(2):99107, 2007. [64] Claudi Alsina, Enric Trillas, and Llorenc James Valverde. On some logical connectives for fuzzy sets theory. Journal of Mathematical Analysis and Applications, 93(1):1526, January 1983. [65] Juan Luis Castro and Enric Trillas. The management of the inconsistency in expert systems. Fuzzy Sets and Systems, 58(1):5157, 1993. [66] Juan Luis Castro, Enric Trillas, and Jos Manuel Zurita. Nonmonotomic fuzzy reasoning. Fuzzy Sets and Systems, 94(2):217225, March 1998. [67] Claudio Moraga, Enric Trillas, and Sergio Guadarrama. Multiplevalued logic and articial intelligence fundamentals of fuzzy control revisited. Articial Intelligence Review, 20(34):169197, December 2003. [68] Ana Pradera, Enric Trillas, and Tomasa Calvo. A general class of triangular normbased aggregation operators: Quasi-linear T-S operators. International Journal of Approximate Reasoning, 30(1):5772, May 2002. [69] Enric Trillas. Sobre funciones de negacin en la teora de conjuntos difusos. Stochastica, 3:4760, 1979. [70] Enric Trillas and Cubillo Alsina. Some remarks on approximate entailment. International Journal of Approximate Reasoning, 6(4):525533, 1992. [71] Enric Trillas. Conjuntos borrosos. VicensVives, 1980.

274

BIBLIOGRAFA

[72] Enric Trillas, Cubillo Alsina, and J. M. Terricabras. Introduccin a la lgica borrosa. Ariel, Barcelona, 1995. [73] Enric Trillas and Susana Cubillo. Primeras lecciones sobre lgica borrosa. Facultad de Informtica, Servicio de Publicaciones, 1999. [74] Enric Trillas, Miguel Delgado, M. Amparo Vila, Juan Luis Castro, J. L. Verdegay, Claudio Moraga, Jos Cuena, Julio Gutierrez, and Antonio Ruiz. Fundamentos e introduccin a la ingeniera Fuzzy . Omron Electronics S.A., 1994. [75] F. Chiclana, F. Herrera, and E. Herrera-Viedma. Integrating three representation models in fuzzy multipurpose decision making based on fuzzy preference relations. Fuzzy Sets and Systems, 97(1):3348, July 1998. [76] O. Cordn, F. Gomide, F. Herrera, F. Homann, and L. Magdalena. Ten years of genetic fuzzy systems: Current framework and new trends. Fuzzy Sets and Systems, 141(1):531, January 2004. [77] Miguel Delgado, Francisco Herrera, Enrique Herrera-Viedma, and Lus Martnez. Combining numerical and linguistic information in group decision making. Information Sciences, 107(1-4):177194, 1998. [78] F. Herrera and E. Herrera-Viedma. Aggregation operators for linguistic weighted information. IEEE Transactions on Systems, Man, and CyberneticsPart B: Cybernetics, 27(5):646656, September 1997. [79] F. Herrera, E. Herrera-Viedma, and F. Chiclana. Multiperson decision-making based on multiplicative preference relations. European Journal of Operational Research, 129(2):372385, March 2001. [80] F. Herrera, E. Herrera-Viedma, and L. Martnez. A fusion approach for managing multi-granularity linguistic term sets in decision making. Fuzzy Sets and Systems, 114(1):4358, August 2000. [81] F. Herrera, E. Herrera-Viedma, and J.L. Verdegay. Sequential selection process in group decision making with a linguistic assessment approach. Information sciences, 85(4):223239, July 1995. [82] F. Herrera, E. Herrera-Viedma, and J.L. Verdegay. Direct approach processes in group decision making using linguistic OWA operators. Fuzzy Sets and Systems, 79(2):175 190, April 1996. [83] F. Herrera, E. Herrera-Viedma, and J.L. Verdegay. A model of consensus in group decision making under linguistic assessments. Fuzzy Sets and Systems, 78(1):7387, February 1996. [84] F. Herrera, E. Herrera-Viedma, and J.L. Verdegay. A rational consensus model in group decision making using linguistic assessments. Fuzzy Sets and Systems, 88(1):31 49, May 1997.

BIBLIOGRAFA

275

[85] F. Herrera, M. Lozano, and J.L. Verdegay. A learning process for fuzzy control rules using genetic algorithms. Fuzzy Sets and Systems, 100(1-3):143158, November 1998. [86] F. Herrera and L. Martnez. A 2-tuple fuzzy linguistic representation model for computing with words. IEEE Transactions on Fuzzy Systems, 8(6):746752, December 2000. [87] Miguel Delgado, Nicols Marn, Daniel Snchez, and Mara Amparo Vila. Fuzzy association rules: General model and applications. IEEE Transactions on Fuzzy Systems, 11(2):214225, 2003. [88] Miguel Delgado, Daniel Snchez, Mara J. Martn-Bautista, and Mara Amparo Vila. A probabilistic denition of a nonconvex fuzzy cardinality. Fuzzy Sets and Systems, 126(2):177190, 2002. [89] Miguel Delgado, Daniel Snchez, and Mara Amparo Vila. Fuzzy cardinality based evaluation of quantied sentences. International Journal of Approximate Reasoning, 23(1):2366, 2000. [90] Miguel Delgado, Jos Luis Verdegay, and Mara Amparo Vila. Linguistic decisionmaking models. International Journal of Intelligent Systems, 7(5):479492, March 1992. [91] Miguel Delgado, Jos Luis Verdegay, and Mara Amparo Vila. On aggregation operations of linguistic labels. International Journal of Intelligent Systems, 8(3):351370, March 1993. [92] Miguel Delgado, Jos Luis Verdegay, and Mara Amparo Vila. Model for linguistic partial information in decision-making problems. International Journal of Intelligent Systems, 9(4):365378, April 1994. [93] Pablo Carmona, Juan Luis Castro, and Jos Manuel Zurita. Strategies to identify fuzzy rules directly from certainty degrees: A comparison and a proposal. IEEE Transactions on Fuzzy Systems, 12(5):631640, October 2004. [94] Juan Luis Castro. Fuzzy logics as families of bivaluated logics. Fuzzy Sets and Systems, 64(3):321332, June 1994. [95] Juan Luis Castro. Fuzzy logic controllers are universal approximators. IEEE Transactions on Systems, Man, and Cybernetics, 25(4):629635, April 1995. [96] Juan Luis Castro, Jos Jess Castro-Schez, and J.M. Zurita. Learning maximal structure rules in fuzzy logic for knowledge acquisition in expert systems. Fuzzy Sets and Systems, 101(3):331342, February 1999. [97] Juan Luis Castro and Miguel Delgado. Fuzzy systems with defuzzication are universal approximators. IEEE Transactions on Systems, Man, and CyberneticsPart B: Cybernetics, 26(1):149152, February 1996.

276

BIBLIOGRAFA

[98] Juan Luis Castro, C.J. Mantas, and Jos M. Bentez. Interpretation of articial neural networks by means of fuzzy rules. IEEE Transactions on Neural Networks, 13(1):101 116, January 2002. [99] Juan Luis Castro and J.M. Zurita. An inductive learning algorithm in fuzzy systems. Fuzzy Sets and Systems, 89(2):193203, July 1997. [100] Javier Aracil, Anibal Ollero, and Alfonso Garcia-Cerezo. Stability indices for the global analysis of expert control systems. IEEE Transactions on Systems, Man, and Cybernetics, 19(5):9981007, September 1989. [101] Javier Aracil and Francisco Gordillo. Describing function method for stability analysis of PD and PI fuzzy controllers. Fuzzy Sets and Systems, 143(2):233249, April 2004. [102] Francisco Gordillo, Javier Aracil, and Teodoro Alamo. Determining limit cycles in fuzzy control systems. In IEEE International Conference on Fuzzy Systems, volume 1, pages 193198, July 1997. [103] Begoa C. Arrue, Anibal Ollero, and Jose Ramiro Martinez De Dios. An intelligent system for false alarm reduction in infrared forest-re detection. IEEE Intelligent Systems and Their Applications, 15(3):6473, May 2000. [104] Federico Cuesta, Francisco Gordillo, Javier Aracil, and Anibal Ollero. Stability analysis of nonlinear multivariable TakagiSugeno fuzzy control systems. IEEE Transactions on Fuzzy Systems, 7(5):508520, October 1999. [105] Federico Cuesta, Anibal Ollero, Begoa C. Arrue, and Reinhard Braunstingl. Intelligent control of nonholonomic mobile robots with fuzzy perception. Fuzzy Sets and Systems, 134(1):4764, February 2003. [106] Federico Cuesta, Enrique Ponce, and Javier Aracil. Local and global bifurcations in simple TakagiSugeno fuzzy systems. IEEE Transactions on Fuzzy Systems, 9(2):355 368, April 2001. [107] Fernando Gmez-Bravo, Federico Cuesta, and Anibal Ollero. Parallel and diagonal parking in nonholonomic autonomous vehicles. Engineering Applications of Articial Intelligence, 14(4):419434, August 2001. [108] Jose Ramiro Martinez-De Dios and Anibal Ollero. A multiresolution-fuzzy method for robust threshold selection in image segmentation. Intelligent Automation and Soft Computing, 12(4):419430, 2006. [109] Anibal Ollero, Javier Aracil, and Alfonso Garca-Cerezo. Robust design of rule-based fuzzy controllers. Fuzzy Sets and Systems, 70(23):249273, January 1995. [110] Anibal Ollero, Javier Aracil, and Francisco Gordillo. Stability analysis of MIMO fuzzy control systems in the frequency domain. In IEEE International Conference on Fuzzy Systems, volume 1, pages 4954, Anchorage, AK, May 1998.

BIBLIOGRAFA

277

[111] Anibal Ollero, Alfonso Garca-Cerezo, and Jorge Martinez. Fuzzy supervisory path tracking of mobile robots. Control Engineering Practice, 2(2):313319, April 1994. [112] Sebastian Dormido, Matilde Santos, A. P. de Madrid, and F. Morilla. Autosintona de controladores borrosos utilizando tcnicas clsicas basadas en reguladores PID. In Universidad de Santiago de Compostela, editor, Comunicaciones del III FLAT, pages 217225, Santiago de Compostela, Espaa, 1993. [113] Matilde Santos, Jess Manuel de la Cruz, and Sebastin Dormido. Self-tuning of fuzzy logic controllers in cascade loops. Intelligent Systems and Soft Computing for Nuclear Science and Industry, pages 258264, 1996. [114] Matilde Santos, Sebastin Dormido, and Jess Manuel de la Cruz. Evaluation of the fuzzy controllers performance. In 4th European Congress on Intelligent Techniques and Soft Computing EUFIT96, volume 2, pages 10561060, Verlag Mainz, Aachen, 1996. [115] Matilde Santos, Sebastin Dormido, and Jess Manuel de la Cruz. Fuzzy-PID controllers vs. fuzzy-PI controllers. In 5th IEEE International Conference on Fuzzy Systems FUZZ-IEEE96, pages 15981604, 1996. [116] Matilde Santos, Sebastian Dormido, and Jess Manuel de la Cruz. Inuence of the information processing in fuzzy logic controllers. In Proyecto Sur de Ediciones, editor, 6th International Conference Information Processing and Management of Uncertainty in Knowledge-Based Systems, IPMU96, volume 1, pages 8186, 1996. [117] Matilde Santos, Sebastin Dormido, Jess Manuel de la Cruz, and Jos Antonio Lpez. Tuning of fuzzy controllers: Applications of the relay method. In EUROSIM, volume 3, pages 11311136, New Orleans, 1995. [118] Matilde Santos, Sebastian Dormido, A. P. de Madrid, and Jess Manuel de la Cruz. Betweem fuzzy-PID and PID-conventional controllers: a good choice. Biennal Conference of the North American Fuzzy Information Processing Society (NAFIPS), pages 123127, 1996. [119] Matilde Santos, Sebastian Dormido, A. P. de Madrid, F. Morilla, and Jess Manuel de la Cruz. Tuning fuzzy logic controllers by classical techniques. In CASR94: Selected papers from the 4th International Workshop on Computer Aided System Theory, pages 214224, London, UK, 1996. Springer-Verlag. [120] Basil M. Al-Hadithi, Fernando Mata, and Agustn Jimnez. Slide-mode fuzzy controller for highly non linear systems. In The 10th IEEE International Conference on Fuzzy Systems, 2001, pages 15151518, 2001. [121] Basil M. Al-Hadithi, Fernando Mata, and Agustn Jimnez. Anlisis de estabilidad de sistemas borrosos. Revista Iberoamericana de Automtica e Informtica Industrial (RIAI), 4(2):725, April 2007. [122] Basil M. Al-Hadithi, Fernando Mata, and Agustn Jimnez. Fuzzy controller for robot manipulators. In IFSA, pages 688697, 2007.

278

BIBLIOGRAFA

[123] Fernando Mata, Basil M. Al-Hadithi, and Agustn Jimnez. On the global stability of TakagiSugeno general model. Mathware and Soft Computing, 6(23):293304, 1999. [124] Fernando Mata, Basil M. Al-Hadithi, and Agustn Jimnez. Generalization of stability criterion for TakagiSugeno continuous fuzzy model. Fuzzy Sets and System, 129(3):295309, August 2002. [125] Fernando Mata, Agustn Jimnez, Basil M. Al-Hadithi, Diego Rodrguez-Losada, and Ramn Galn. The fuzzy Kalman lter: State estimation using possibilistic techniques. Fuzzy Sets and Systems, 157(16):21452170, August 2006. [126] Alfonso Garca-Cerezo, Anibal Ollero, and Javier Aracil. Dynamic analysis of weigthedoutput fuzzy control systems. Annual Review in Automatic Programming, 19(C):4348, June 1994. [127] Mara J. Lpez-Baldn, Alfonso Garca-Cerezo, Jos M. Cejudo, and A. Romero. Fuzzy modeling of a thermal solar plant. International Journal of Intelligent Systems, 17(4):369379, April 2002. [128] Jos Ruiz-Gmez, Mara J. Lpez-Baldn, and Alfonso Garca-Cerezo. Fuzzy modelling of a ternary batch distillation column. System and Control: Theory and Applications, pages 320324, 2000. [129] Alfonso Garcia-Cerezo, Anthony Mandow, and Mara J. Lopez-Baldan. Fuzzy modelling operator navigation behaviors. In IEEE International Conference on Fuzzy Systems, volume 3, pages 13391345, Piscataway, NJ, United States, July 1997. IEEE. [130] Mara J. Lopez-Baldan, Jos Ruiz-Gmez, R. Fernandez, and Alfonso Garca-Cerezo. Input-output fuzzy modelling applied to a mobile robot. Computational Intelligence and Applications, pages 283288, 1999. [131] Senn Barro, Roque Marn, Francisco Palacios, and Ramn Ruz. Fuzzy logic in a patient supervision system. Articial Intelligence in Medicine, 21(1-3):193199, 2001. [132] J.M. Crdenas, M.A. Marn, and I. Navarrete. Fuzzy temporal constraint logic: a valid resolution principle. Fuzzy Sets and Systems, 117(2):231250, January 2001. [133] Paulo Flix, Senn Barro, and Roque Marn. Fuzzy constraint networks for signal pattern recognition. Articial Intelligence, 148(1-2):103140, August 2003. [134] Paulo Flix, Santiago Fraga, Senn Barro, and Roque Marn. Linguistic representation of fuzzy temporal proles. International Journal Uncertainly Fuzziness KnowledgeBased Systems, 7(3):243256, 1999. [135] Paulo Flix, Santiago Fraga, Roque Marn, and Senn Barro. Trend detection based on a fuzzy temporal prole model. Articial Intelligence in Engineering, 13:341349, October 1999.

BIBLIOGRAFA

279

[136] Antonio F. Gmez-Skarmeta, Mercedes Valds, Fernando Jimnez, and Javier G. Marn-Blzquez. Approximative fuzzy rules approaches for classication with hybridGA techniques. Information Sciences, 136(1-4):193214, August 2001. [137] F. Jimnez, J. M. Cadenas, J. L. Verdegay, and G. Snchez. Solving fuzzy optimization problems by evolutionary algorithms. Information Sciences, 152(1):303311, June 2003. [138] F. Jimnez, J. M. Cadenas, G. Snchez, A.F. Gmez-Skarmeta, and J.L. Verdegay. Multi-objective evolutionary computation and fuzzy optimization. International Journal of Approximate Reasoning, 43(1):5975, September 2006. [139] Jose Palma, Jose M. Juarez, Manuel Campos, and Roque Marin. Fuzzy theory approach for temporal model-based diagnosis: An application to medical domains. Aricial Intelligence in Medicine, 38(2):197218, October 2006. [140] Jos Vicente Salcedo and M. ngeles Martnez. BIBO stabilisation of Takagi-Sugeno fuzzy systems under persistent perturbations using fuzzy output-feedback controllers. IET Control Theory and Applications, 2(6):513523, June 2008. [141] Jos Vicente Salcedo and M. ngeles Martnez. Design of PDC fuzzy controllers under persistent disturbances and application in mechanical systems. Advances in Engineering Software, 39(11):937946, November 2008. [142] Jos Vicente Salcedo, M. ngeles Martnez, and S. Garca. Stabilization conditions of fuzzy systems under persistent perturbations and their application in nonlinear systems. Engineering Applications of Articial Intelligence, In-press. [143] Jorge Bondia and Jess Pic. Analysis of linear systems with fuzzy parametric uncertainty. Fuzzy Sets and Systems, 135(1):81121, April 2003. [144] Jorge Bondia and Jess Pic. Application of functional intervals to the response evaluation of linear time-invariant systems with fuzzy input. Reliable Computing, 10(5):369 387, October 2004. [145] Jorge Bondia, Antonio Sala, Jess Pic, and Miguel ngel Sainz. Controller design under fuzzy pole-placement specications: An interval arithmetic approach. IEEE Transactions on Fuzzy Systems, 14(6):822836, December 2006. [146] Antonio Sala and Pedro Albertos. Inference error minimisation: fuzzy modelling of ambiguous functions. Fuzzy Sets and Systems, 121(1):95111, July 2001. [147] Pedro Albertos and Antonio Sala. Perspectives of fuzzy control: Lights and shadows. In 2nd International IEEE Conference Intelligent Systems, volume 1, pages 2532, 2004. [148] Jose Luis Dez, Jose Luis Navarro, and Antonio Sala. A fuzzy clustering algorithm enhancing local model interpretability. Soft Computing, 11(10):973983, August 2007.

280

BIBLIOGRAFA

[149] Antonio Sala and Pedro Albertos. Fuzzy systems evaluation: The inference error approach. IEEE Transactions on Systems, Man, and CyberneticsPart B: Cybernetics, 28(2):268275, April 1998. [150] Antonio Sala, Jose Luis Diz, Jose Luis. Navarro, and Pedro Albertos. Fuzzy model usage and readability in identication for control. In Intelligent Automation and Control Trends, Principles, and Applications - Proceedings of the Sixth Biannual World Automation Congress, WAC, pages 113118, Seville, 2004. [151] J. Juez, Gregorio I. Sainz, E. J. Moya, and J. R. Pern. Early detection and diagnosis od faults in an AC motor using neurofuzzy techniques: FasArt+fuzzy K nearest neighbors. Lectures Notes in Computer Science, 2085:571578, 2001. [152] L. J. de Miguel, M. Mediavilla, and J. R. Peran. Fault diagnosis system based on sensitivity analysis and fuzzy logic. In 26th International Symposium on MultipleValued Logic (ISMVL96), page 50, Washington, DC, USA, 1996. IEEE Computer Society. [153] Gregorio I. Sainz, M. J. Fuente, and P. Vega. Recurrent neuro-fuzzy modelling of a wastewater treatement plant. ropean Journal of Control, 10(1):8395, January 2004. [154] Gregorio I. Sinz, J. J. Santamaria, and Y. A. Dimitriadis. Performance of a recurrent neuro-fuzzy ART based system for pattern recognition and modeling of dynamical systems: RFasArt. IFSA World Congress and 20th NAFIPS International Conference, 2001. Joint 9th, 1(1):534539, July 2001. [155] Gregorio Sinz, Yannis Dimitradis, J. M. Cano, E. Gmez, and E. Parrado. ART based model set for pattern recognition: FasArt family, chapter Neuro-Fuzzy systems for pattern recognition. Scientic World Publ. Co., 2000. [156] J. Acosta, A. Nebot, P. Villar, and J. M. Fuertes. Automatic learning of fuzzy partitions in human central nervous system modeling using genetic algorithms. In J. G. Anderson and M. Katzper, editors, Inter. Conf. on Health Science Simulation, pages 9095. SCS International, 2004. [157] A. Barcelo, E. Montseny, and P. Sobrevilla. On fuzzy texture spectrum for natural microtextures characterization. In conference EUSFLAT05, Barcelona, Spain, September 2005. [158] E. Montseny, P. Sobrevilla, and P. Mares. Edge orientation-based fuzzy hough transform (EOFHT). In 3rd Internacional Conference on Fuzzy Logic and Technology . Prof. Rainer Hampel, pages 683688, 2003. [159] Teresa Alsinet, C. Chesevar, Llus Godo, Sandra Sandri, and G. Simari. Formalizing argumentative reasoning in a possibilistic logic programming setting with fuzzy unication. International Journal of Approximate Reasoning, 2008. [160] Teresa Alsinet, C. Chesevar, Llus Godo, and G. Simari. A logic programming framework for possibilistic argumentation: Formalization and logical properties. Fuzzy Sets and Systems, 159(10):12081228, May 2008.

BIBLIOGRAFA

281

[161] Flix Bou, Francesc Esteva, and Llus Godo. Modal systems based on manyvalued logics. In M. Stepnicka, V. Novk, and U. Bodenhofer, editors, New dimensions in fuzzy logic and related technologies. EUSFLAT, volume I, pages 177182, 2007. [162] Didier Dubois, Francesc Esteva, Llus Godo, and Henri Prade. Fuzzy-set Based Logics. An History-oriented Presentation of their Main Developments, volume 8, pages 325 449. Elsevier, 2007. [163] Francesc Esteva, Joan Gispert, Llus Godo, and Carles Noguera. Adding truthconstants to logics of continuous T-norms: axiomatization and completeness results. Fuzzy Sets and Systems, 158(6):597618, March 2007. [164] Tommaso Flaminio and Llus Godo. A logic for reasoning about the probability of fuzzy events. Fuzzy Sets and Systems, 158(6):625638, March 2007. [165] Llus Godo and Ricardo Oscar Rodriguez. Logical approaches to fuzzy similarity-based reasoning: an overview. Springer-Verlag, 2008. [166] Llus Godo and Vicen Torra. On aggregation operators for ordinal qualitative information. IEEE Transactions on Fuzzy Systems, 8(2):143154, Apr 2000. [167] Vicen Torra and Yasuo Narukawa. Fuzzy measures and integrals in evaluation of strategies. Information Sciences, 177(21):46864695, November 2007. [168] Jos Manuel Andjar and Antonio Javier Barragn. A methodology to design stable nonlinear fuzzy control systems. Fuzzy Sets and Systems, 154(2):157181, September 2005. [169] Jos Manuel Andjar, Antonio Javier Barragn, Juan Manuel Crdoba, and Iaki Fernndez. Diseo de sistemas de control borroso: Modelado de la planta. Revista Iberoamericana de Automtica e Informtica Industrial (RIAI), 3(1):7581, January 2006. [170] Jos Manuel Andjar, Antonio Javier Barragn, and Manuel Emilio Gegndez. A general and formal methodology for designing stable nonlinear fuzzy control systems. IEEE Transactions on Fuzzy Systems, En prensa, DOI: 10.1109/TFUZZ.2009.2021984, 2009. [171] Jos Manuel Andjar, Antonio Javier Barragn, Manuel Emilio Gegndez, and Manuel Maestre. Control borroso multivariable basado en heurstica. un caso prctico: Gra porta contenedortes. Revista Iberoamericana de Automtica e Informtica Industrial (RIAI), 4(2):8189, 2007. [172] Javier Aroba, Jos Antonio Grande, Jos Manuel Andjar, Mara Luisa De La Torre, and Juan Carlos Riquelme. Application of fuzzy logic and data mining techniques as tools for qualitative interpretation of acid mine drainage processes. Environmental Geology, 53(1):135145, September 2007.

282

BIBLIOGRAFA

[173] Jos Antonio Grande, Jos Manuel Andjar, Javier Aroba, Mara Luisa De La Torre, and Rafael Beltrn. Precipitation, pH and metal load in AMD river basins: An application of fuzzy clustering algorithms to the process characterization. Journal of Environmental Monitoring, 7(4):325334, April 2005. [174] Mara Luisa De la Torre, Jos Antonio Grande, Javier Aroba, and Jos Manuel Andjar. Optimization of fertirrigation eciency in strawberry crops by application of fuzzy logic techniques. Journal of Environmental Monitoring, 7(11):10851092, November 2005. [175] D. Driankov, H. Hellendoorn, and M. Reinfrank. An introduction to fuzzy control. Springer-Verlag, New York, USA, 1993. [176] S. C. Kleene. Introduction to metamathematics. Von Nostrand, New York, 1952. [177] G. Birkho. Lattice Theory. American Mathematical Society, 2nd edition, 1948. [178] K. Menger. Statistical metric spaces. In National Academy of Sciences, volume 37, pages 535537, USA, 1942. [179] B. Schweizer and A. Sklar. Probabilistic metric spaces. North-Holland, Amsterdam, 1983. [180] Erich-Peter Klement, Radko Mesiar, and Endre Pap. Triangular norms. Position paper I: basic analytical and algebraic properties. Fuzzy Sets and Systems, 143(1):526, 2004. [181] Erich-Peter Klement, Radko Mesiar, and Endre Pap. Triangular norms. Position paper II: general constructions and parameterized families. Fuzzy Sets and Systems, 145(3):411438, 2004. [182] Erich-Peter Klement, Radko Mesiar, and Endre Pap. Triangular norms. Position paper III: continuous Tnorms. Fuzzy Sets and Systems, 145(3):439454, 2004. [183] Javier Corrales Holgado. Controladores en lgica borrosa. Coleccin Tecnologa e investigacin. Servidio de Publicaciones de la Universidad de Cdiz, 1995. [184] Lofti A. Zadeh. Semantic inference from fuzzy premises. In Proceedings of the 6th Int. symposium on Multiplevalued logic, pages 217218, Los Alamitos, CA, USA, 1976. IEEE Computer Society Press. [185] G. A. Miller. The magical number seven or minus two: some limits on our capacity of processing information. Psychological Rev., 63:8197, 1956. [186] Bart Kosko and Julie A. Dickerson. Theoretical aspects of fuzzy control, chapter Function approximation with additive fuzzy systems, pages 313347. John Wiley & Sons, Inc., New York, NY, USA, 1995. [187] Masaharu Mizumoto. Fuzzy controls under various fuzzy reasoning methods. Information Sciences, 45(2):129151, July 1988.

BIBLIOGRAFA

283

[188] Masaharu Mizumoto and Hans-Jurgen Zimmermann. Comparison of fuzzy reasoning methods. Fuzzy Sets and Systems, 8(3):253283, September 1982. [189] I. B. Turksen and Y. Tian. Combination of rules or their consequences in fuzzy expert systems. Fuzzy Sets and Systems, 58(1):340, August 1993. [190] Jerry M. Mendel. Fuzzy logic systems for engineering: A tutorial. Proceedings of the IEEE, 83(3):345377, March 1995. [191] George J. Klir and Bo Yuan. Fuzzy Sets and Fuzzy Logic: Theory and Applications. Prentice-Hall International, New Jersey, November 1995. [192] Dimitar P. Filev and Ronald R. Yager. An adaptive approach to defuzzication based on level sets. Fuzzy Sets and Systems, 54(3):355360, March 1993. [193] Xinwang Liu. Parameterized defuzzication with maximum entropy weighting functionanother view of the weighting function expectation method. Mathematical and Computer Modelling, 45(1-2):177188, January 2007. [194] S. Mabuchi. A proposal for a defuzzication strategy by the concept of sensitivity analysis. Fuzzy Sets and Systems, 55(1):114, April 1993. [195] Thomas Vetterlein and Mirko Navara. Defuzzication using Steiner points. Fuzzy Sets and Systems, 157(11):14551462, June 2006. [196] Ronald R. Yager and Dimitar Filev. On the issue of defuzzication and selection based on a fuzzy set. Fuzzy Sets and Systems, 55(3):255271, May 1993. [197] O. Gordon. An Evolutionary Methodology for Designing Fuzzy Rule-Based Systems. PhD thesis, University of Granada, 1997. [198] Ebrahim H. Mamdani. Application of fuzzy algorithms for control of a simple dynamic plant. Proceedings of the IEEE, 121(12):15851588, December 1974. [199] Ebrahim H. Mamdani. Application of fuzzy logic to approximate reasoning using linguistic synthesis. IEEE Transactions on Computers, C-26(12):11821191, December 1977. [200] Yongsheng Ding, Hao Ying, and Shihuang Huang Shao. Necessary conditions on minimal system conguration for general MISO Mamdani fuzzy systems as universal approximators. IEEE Transactions on Systems, Man, and CyberneticsPart B: Cybernetics, 30(6):857864, December 2000. [201] Puyin Liu. Mamdani fuzzy system: Universal approximator to a class of random processes. IEEE Transactions on Fuzzy Systems, 10(6):756766, December 2002. [202] Irina G. Perlieva and Vladik Ya Kreinovich. A new universal approximation result for fuzzy systems, which reects cnf-dnf duality. International Journal of Intelligent Systems, 17(12):11211130, December 2002.

284

BIBLIOGRAFA

[203] Hao Ying, Yongsheng Ding, Shaokuan Li, and Shihuang Shao. Typical takagi-sugeno and mamdani fuzzy systems as universal approximators: Necessary conditions and comparison. In IEEE International Conference on Fuzzy Systems, volume 1, pages 824828, 1998. [204] Ke Zeng, Wenli Xu, and Naiyao Zhang. Universal approximation of special mamdani fuzzy systems. Kongzhi yu Juece/Control and Decision, 15(4):435438, July 2000. [205] Bart Kosko. Neural networks and fuzzy systems: a dynamical systems approach to machine intelligence. PrenticeHall, Inc., Upper Saddle River, NJ, USA, 1991. [206] Bart Kosko. Fuzzy engineering. PrenticeHall, Inc., Upper Saddle River, NJ, USA, 1997. [207] Y. Tsukamoto. An approach to fuzzy reasoning model. In Advances in fuzzy Set Theory and Applications, Amsterdam, North-Holland, 1979. [208] T. Takagi and M. Sugeno. Fuzzy identication of systems and its applications to modeling and control. IEEE Transactions on Systems, Man, and Cybernetics, 15(1):116132, 1985. [209] M. Sugeno and G. T. Kang. Structure identication of fuzzy model. Fuzzy Sets and Systems, 28(1):1533, October 1988. [210] Bart Kosko. Fuzzy systems as universal approximators. IEEE Transactions on Computers, 43(11):13291333, November 1994. [211] Li-Xin Wang. Fuzzy systems are universal approximators. In IEEE International Conference on Fuzzy Systems, pages 11631170, San Diego, CA, USA, 1992. [212] Hao Ying. Sucient conditions on uniform approximation of multivariate functions by general TakagiSugeno fuzzy systems with linear rule consequent. IEEE Transactions on Systems, Man, and CyberneticsPart A: Systems and Humans, 28(4):515520, July 1998. [213] Ke Zeng, Nai-Yao Zhang, and Wen-Li Xu. A comparative study on sucient conditions for TakagiSugeno fuzzy systems as universal approximators. IEEE Transactions on Fuzzy Systems, 8(6):773780, December 2000. [214] Vladik Kreinovich, Hung T. Hguyen, and Yeung Yam. Fuzzy systems are universal approximators for a smooth function and its derivatives. International journal of Intelligent Systems, 15(6):565574, June 2000. [215] Vladik Kreinovich, C. G. Mouzouris, and Hung T. Hguyen. Fuzzy rule based modeling as a universal approximation tool. Fuzzy Systems: Modeling and Control. Kluwer Academic, 1998. [216] Arianna Mencattini, Marcello Salmeri, and Adelio Salsano. Sucient conditions to impose derivative constraints on MISO TakagiSugeno fuzzy logic systems. IEEE Transactions on Fuzzy Systems, 13(4):454467, August 2005.

BIBLIOGRAFA

285

[217] Riccardo Rovatti. Fuzzy piecewise multilinear and piecewise linear systems as universal approximators in Sobolev norms. IEEE Transactions on Fuzzy Systems, 6(2):235249, May 1998. [218] C. Fantuzzi and R. Rovatti. On the approximation capabilities of the homogeneous Takagi-Sugeno model. In Proceedings of the 5th IEEE International Conference on Fuzzy Systems, volume 2, pages 10671072, New Orleans, LA, September 1996. [219] Lennart Ljung and Torkel Glad. On global identiability for arbitrary model parametrizations. Automatica, 30(2):265276, February 1994. [220] H. K. Khalil. Nonlinear systems. Prentice-Hall, NJ, 2000. [221] H. J. Marquez. Nonlinear control systems. Analysis and design. John Wiley & Sons, Inc., 2003. [222] Henk Nijmeijer and Arjan van der Schaft. Nonlinear dynamical control systems. Springer Verlag, Berlin, 1990. [223] S. Sastry. Nonlinear system: analysis, stability, and control. Springer, New York, 1999. [224] Jean-Jacques E. Slotine and Weiping Li. Applied nonlinear control. Prentice-Hall, NJ, 1991. [225] Robert Babuka. Fuzzy modeling a control engineering perspective. In Proceedings of FUZZ-IEEE/IFES95, volume 4, pages 18971902, Yokohama, Japan, March 1995. [226] Robert Babuka and H. B. Verbruggen. A new identication method for linguistic fuzzy models. In Proceedings of FUZZ-IEEE/IFES95, volume 4, pages 905912, Yokohama, Japan, March 1995. [227] Hung T. Nguyen, Michio Sugeno, Richard M. Tong, and Ronald R. Yager. Theoretical aspects of fuzzy control. John Wiley Sons, 1995. [228] L. X. Wang. Adaptive fuzzy systems and control. Prentice Hall, New Jersey, 1994. [229] Li-Xin Wang. A course in fuzzy systems and control. Prentice Hall, New Yersey, USA, 1997. [230] L.K. Wong, F.H.F. Leung, and P.K.S. Tam. Stability design of TS model based fuzzy systems. In IEEE International Conference on Fuzzy Systems, volume 1, pages 8386, Barcelona, Spain, July 1997. [231] Jos Manuel Andjar and Antonio Javier Barragn. Matriz jacobiana de un sistema de control borroso en lazo cerrado. Aplicacin a la sntesis de sistemas de control borroso. In CEA-IFAC, editor, XXIV Jornadas de Automtica, Len, Espaa, September 2003. [232] Jos Manuel Andjar, Jos Manuel Bravo, and Antonio Peregrn. Stability analysis and synthesis of multivariable fuzzy systems using interval arithmetic. Fuzzy Sets and Systems, 148(3):337353, December 2004.

286

BIBLIOGRAFA

[233] Jos Manuel Andjar and Antonio Javier Barragn. Una aproximacin a la sntesis de sistemas de control borroso estables por diseo. In ISTANET, editor, I Simposio de computacin y sistemas inteligentes de la red ISTANET, pages 303322, Mlaga, Espaa, December 2004. [234] Oscar Cordn and Francisco Herrera. A proposal for improving the accuracy of linguistic modeling. IEEE Transactions on Fuzzy Systems, 8(3):335344, 2000. [235] Vilm Novk and Irina Perlieva. On the semantics of perception-based fuzzy logic deduction. International Journal of Intelligent Systems, 19(11):10071031, November 2004. [236] S. Akkurt, G. Tayfur, and S. Can. Fuzzy logic model for the prediction of cement compressive strength. Cement and Concrete Research, 34(8):14291433, 2004. [237] H.A. Nefeslioglu, C. Gokceoglu, and H. Sonmez. A Mamdani model to predict the weighted joint density. In Lecture Notes in Articial Intelligence (Subseries of Lecture Notes in Computer Science), volume 2773 PART 1, pages 10521057, July 2003. [238] SSL Chang and Lot A. Zadeh. On fuzzy mapping and control. IEEE Computer, SMC-2(1):3034, January 1972. [239] L. X. Wang. Adaptive fuzzy systems and control. Prentice Hall, New Jersey, 2nd edition, 1997. [240] Jyh-Shing Roger Jang. ANFIS: adaptive-network-based fuzzy inference system. IEEE Transactions on Systems, Man, and Cybernetics, 23(3):665685, May 1993. [241] Jyh-Shing Roger Jang and Chuen-Tsai Sun. Neuro-fuzzy modeling and control. Proceedings of the IEEE, 83(3):378406, March 1995. [242] Frank Homann. Incremental tuning of fuzzy controllers by means of an evolution strategy. In John R. Koza, Wolfgang Banzhaf, Kumar Chellapilla, Kalyanmoy Deb, Marco Dorigo, David B. Fogel, Max H. Garzon, David E. Goldberg, Hitoshi Iba, and Rick Riolo, editors, Genetic Programming 1998: Proceedings of the Third Annual Conference, pages 843851, University of Wisconsin, Madison, Wisconsin, USA, 1998. Morgan Kaufmann. [243] Frank Homann, Daniel Schauten, and Sebastian Hlemann. Incremental evolutionary design of tsk fuzzy controllers. IEEE Transactions on Fuzzy Systems, 15(4):563577, August 2007. [244] J.S.R. Jang, C.T. Sun, and E. Mizutani. Neuro-fuzzy and soft computing-A computational approach to learning and machine intelligence. IEEE Transactions on Automatic Control, 42(10):14821484, October 1997. [245] S. Chiu. Fuzzy model identication based on cluster estimation. In Journal of Intelligent & Fuzzy Systems, volume 2, pages 267278, 1994.

BIBLIOGRAFA

287

[246] I. Drezga and S. Rahman. Input variable selection for ann-based short-term load forecasting. IEEE Transactions on Power Systems, 13(4):12381244, November 1998. [247] Edward I. George. The variable selection problem. Journal of the American Statistical Association, 95(452):13041308, December 2000. [248] R.R. Hocking. The analysis and selection of variables in linear regression. Biometrics, 32(1):149, March 1976. [249] Hui Zou and Trevor J. Hastie. Regularization and variable selection via the elastic net. Journal of the Royal Statistical Society. Series B: Statistical Methodology, 67(2):301 320, March 2005. [250] N.R. Draper and H. Smith. Applied Regression Analysis. John Wiley & Sons, 2nd edition, 1981. [251] Ruck Thawonmas and Shigeo Abe. Function approximation based on fuzzy rules extracted from partitioned numerical data. IEEE Transactions on Systems, Man, and CyberneticsPart B: Cybernetics, 29(4):525534, August 1999. [252] Shiqian Wu, Meng Joo Er, and Yang Gao. A fast approach for automatic generation of fuzzy rules by generalized dynamic fuzzy neural networks. IEEE Transactions on Fuzzy Systems, 9(4):578594, August 2001. [253] Jos L. Dez, Jos L. Navarro, and Antonio Sala. Algoritmos de clustering en la identicacin de modelos borrosos. In CEA-IFAC, editor, XXIII Jornadas de Automtica, La Laguna, Santa Cruz de Tenerife, September 2002. [254] James C. Bezdek. Pattern Recognition with Fuzzy Objective Function Algorithms. Kluwer Academic Publishers, Norwell, MA, USA, 1981. [255] Euntai Kim, Minkee Park, Seunghwan Ji, and Mignon Park. A new approach to fuzzy modeling. IEEE Transactions on Fuzzy Systems, 5(3):328337, August 1997. [256] D.E. Gustafson and W.C. Kessel. Fuzzy clustering with fuzzy covariance matrix. In M.M. Gupta, R.K. Ragade, and R. R Yager, editors, Advances in Fuzzy Set Theory and Applications, pages 605620, North-Holland, Amsterdam, 1979. [257] Tzung-Pei Hong and Chai-Ying Lee. Induction of fuzzy rules and membership functions from training examples. Fuzzy Sets and Systems, 84(1):3347, June 1996. [258] Li-Xin Wang and Jerry M. Mendel. Generating fuzzy rules by learning from examples. IEEE Transactions on Systems, Man, and Cybernetics, 22(6):14141427, November 1992. [259] Nikola Kirilov Kasabov and Qun Song. Dens: Dynamic evolving neural-fuzzy inference system and its application for time-series prediction. IEEE Transactions on Fuzzy Systems, 10(2):144154, April 2002.

288

BIBLIOGRAFA

[260] Isaac David Guedalia, Mickey London, and Michael Werman. An on-line agglomerative clustering method for nonstationary data. Neural Computation, 11(2):521540, February 1999. [261] Boris Martnez, Francisco Herrera, Jess Fernndez, and Erick Marichal. Mtodo de agrupamiento en lnea para la identicacin e modelos borrosos TakagiSugeno. Revista Iberoamericana de Automtica e Informtica Industrial (RIAI), 5(3):6369, July 2008. [262] John Yen and Nathan Puger. A fuzzy logic based extension to payton and rosenblatts command fusion method for mobile robot navigation. IEEE Transactions on Systems, Man, and Cybernetics, 25(6):971978, June 1995. [263] Robert Babuka, Magne Setnes, Uzay Kaymak, and Hans R. van Nauta Lemke. Rule base simplication with similarity measures. In Proceedings of the 5th IEEE International Conference on Fuzzy Systems, volume 3, pages 16421647, New Orleans, LA, September 1996. [264] P. Dewilde and E. Deprettere. Singular value decomposition: An introduction. SVD ans signal processing: Algorithms, applications and architectures. Elsevier Science Publishers, 1988. [265] Magne Setnes, Robert Babuka, Uzay Kaymak, and Hans R. van Nauta Lemke. Similarity measures in fuzzy rule base simplication. IEEE Transactions on Systems, Man, and CyberneticsPart B: Cybernetics, 28(3):376386, June 1998. [266] Yeung Yam, Peter Baranyi, and Chi-Tin Yang. Reduction of fuzzy rule base via singular value decomposition. IEEE Transactions on Fuzzy Systems, 7(2):120132, April 1999. [267] Shin-ichi Horikawa, Takeshi Furuhashi, and Yoshiki Uchikawa. On fuzzy modeling using fuzzy neural networks with the back-propagation algorithm. IEEE Transactions on Neural Networks, 3(5):801806, September 1992. [268] Magne Setnes and H. Roubos. GAfuzzy modeling and classication: complexity and performance. IEEE Transactions on Fuzzy Systems, 8(5):509522, October 2000. [269] Jos Manuel Andjar, Javier Aroba, Mara Luisa de la Torre, and Jos Antonio Grande. Contrast of evolution models for agricultural contaminants in ground waters by means of fuzzy logic and data mining. Environmental Geology, 49(3):458466, January 2006. [270] Jos Manuel Andjar and Jos Manuel Bravo. Multivariable fuzzy control applied to the physical-chemical treatment facility of a cellulose factory. Fuzzy Sets and Systems, 150(3):475492, March 2005. [271] Jos Manuel Andjar, Juan Manuel Crdoba, and Iaki Fernndez. Una tcnica hbrida de modelizacin neuroborrosa mediante colonia de hormigas. In CEA-IFAC, editor, XXV Jornadas de Automtica, Ciudad Real, Espaa, September 2004. [272] Hiroyoshi Nomura, Isao Hayashi, and Noboru Wakami. A selftuning method of fuzzy inference rules by descent method. In R. Lowen and M. Roubens, editors, Fuzzy Logic, pages 465475. Kluwer Academic Publishers, Dordrecht, 1993.

BIBLIOGRAFA

289

[273] Bernard Widrow and Marcian E. Ho. Adaptive switching circuits. In Wescon Conference Record, pages 709717, 1989. [274] James A. Freeman and David M. Skapura. Neural networks: algorithms, applications, and programming techniques. Addison Wesley Longman Publishing Co., Inc., Redwood City, CA, USA, 1991. [275] Jerzy Mociski and Zbigniew Ogonowski. Advanced control with MATLAB and SIMULINK. Ellis Horwood, Upper Saddle River, NJ, USA, 1995. [276] Marco Dorigo, Gianni Di Caro, and Luca Maria Gambardella. Ant algorithms for discrete optimization. Articial Life, 5(2):137172, 1999. [277] Marco Dorigo, Vittorio Maniezzo, and Alberto Colorni. Ant system: Optimization by a colony of cooperating agents. IEEE Transactions on Systems, Man, and Cybernetics Part B: Cybernetics, 26(1):2941, February 1996. [278] Lennart Ljung. System identication: Theory for the user. Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 1987. [279] M. Stone. Cross-validity choice and assessment of statistical predictions. Journal of the Royal Statistical Society, 36(B):111133, 1974. [280] S. J. Farlow. The GMDH algorithm, chapter Self-organizing methods in modeling: GMDH type algorithms, pages 124. Marcel Dekker, 1984. [281] Michio Sugeno and Takahiro Yasukawa. Fuzzy-logic-based approach to qualitative modeling. IEEE Transactions on Fuzzy Systems, 1(1):731, February 1993. [282] John Yen and Liang Wang. Application of statistical information criteria for optimal fuzzy model construction. IEEE Transactions on Fuzzy Systems, 6(3):362372, August 1998. [283] John Yen and Wayne Gillespie. Integrating global and local evaluations for fuzzy model identication using genetic algorithms. In Sixth World Congress of Int. Fuzzy Systems Association (IFSA 95), San Pablo, Brasil, 1995. [284] The MathWorks, Inc. MATLAB external interfaces. 2005. [285] The MathWorks, Inc. MATLAB external interfaces reference. 2005. [286] The MathWorks, Inc. Fuzzy Logic Toolbox 2. Users guide. 2007. [287] Grady Booch, James Rumbaugh, and Ivar Jacobson. Unied Modeling Language User Guide. AddisonWesley, 1998. [288] Stephen Wiggins. Introduction to Applied Nonlinear Dynamical Systems and Chaos. Texts in Applied Mathematics. Springer, 2nd edition, October 2003.

290

BIBLIOGRAFA

[289] Jos Manuel Andjar and Antonio Javier Barragn. Algoritmo para el clculo de la matriz jacobiana de un sistema de control borroso en lazo cerrado. In EUSFLAT, editor, XII Congreso espaol sobre tecnologas y lgica fuzzy, pages 101106, Jan, Espaa, September 2004. [290] Jos Manuel Andjar, Antonio Javier Barragn, Manuel Emilio Gegndez, and Francisco Jess de Toro. Aplicacin de la matriz jacobiana de un sistema de control borroso a la obtencin de sus estados de equilibrio. In CEA-IFAC, editor, XXV Jornadas de Automtica, page 10, Ciudad Real, Espaa, September 2004. [291] J. Holgado, A. Ollero, and J. Aracil. Statistical study on stability indices of fuzzy control systems. In Proceedings of the 3rd IEEE Conference on Fuzzy Systems. IEEE World Congress on Computational Intelligence, volume 2, pages 936941, Orlando, FL, USA, June 1994. [292] Jos Manuel Andjar and Antonio Javier Barragn. Una metodologa de diseo de sistemas de control borroso. In CEA-IFAC, editor, I Simposio sobre control inteligente, Huelva, Espaa, June 2005. [293] Jos Manuel Andjar, Antonio Javier Barragn, Manuel Emilio Gegndez, and Manuel Maestre. Una metodologa para el diseo de sistemas de control borroso estables (Nuevas tendencias en control inteligente). CEA-IFAC, 3137, 2006. [294] J.E. Dennis Jr. Nonlinear least-squares, pages 269312. State of the art in numerical analysis. Academic Press, 1977. [295] J.E. Dennis Jr. and Robert B. Schnabel. Numerical Methods for Unconstrained Optimization and Nonlinear Equations, volume 16 of Classics in Applied Mathematics. Soc for Industrial & Applied Math, 1996. [296] L. Grippo, F. Lampariello, and S. Lucidi. A nonmonotone line search technique for newtons method. SIAM Journal on Numerical Analysis, 23(4):707716, 1986. [297] J.P. Bulteau and J.P. Vial. Curvilinear path and trust region in unconstrained optimization: a convergence analysis. Mathematical Programming Study, 1:82101, February 1983. [298] M.J.D. Powell. On the global convergence of trust region algorithms for unconstrained minimization. Mathematical Programming, 29(3):297303, August 1984. [299] K. Levenberg. A method for the solution of certain problems in least squares. In Quart. Appl. Math., volume 2, pages 164168, 1944. [300] D. Marquardt. An algorithm for least-squares estimation of nonlinear parameters. SIAM J. Appl. Math., 11:431441, 1963. [301] Jorge J. Mor. The Levenberg-Marquardt algorithm: Implementation and theory. In G.A. Watson, editor, Numerical Analysis, pages 105116. Springer Verlag, Berlin, 1977.

BIBLIOGRAFA

291

[302] Andrew R. Conn, Nicholas I.M. Gould, and Philippe L. Toint. Trustregion methods. Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 2000. [303] Jorge Nocedal and Stephen J. Wright. Numerical Optimization. Springer Series in Operations Research and Financial Engineering. Springer Verlag, 2nd edition, 2006. [304] D.F. Shanno. Conditioning of quasi-Newton methods for function minimization. Mathematics of Computing, 24(111):647656, July 1970. [305] Lofti A. Zadeh. The evolution of systems analysis and control: A personal perspective. IEEE Control Systems Magazine, 16(3):9598, July 1996. [306] Andrzej Piegat. Fuzzy modeling and control. Springer-Verlag Company, HeidelbergNew York, 2001. [307] Y. Li and Y. Yonezawa. Stability analysis of fuzzy control systems by the hyperstability theorem. Japanese journal of fuzzy theory and systems, 3(2):209214, 1991. [308] Andrzej Piegat. Hyperstability of fuzzy-control systems and degrees of freedom. In 5th European Congress on Intelligent Techniques and Soft Computing, EUFIT97, volume 2, pages 14461450, 1997. [309] Liang Wang and Reza Langari. Fuzzy controller design via hyperstability approach. In IEEE International Conference on Fuzzy Systems, volume 1, pages 178182, 1994. [310] Ming Jian Zhao, Ying Yang, and Jing Zhu. Design of fuzzy adaptive controller based on Popovs hyperstability theory. Zidonghua Xuebao/Acta Automatica Sinica, 27(3):406 410, May 2001. [311] H.-R. Lin and W.-J. Wang. L2 -stabilization design for fuzzy control systems. Fuzzy Sets and Systems, 100(1-3):159172, November 1998. [312] G. Feng, S. G. Cao, and N. W. Rees. Stable adaptive control of fuzzy dynamic systems. Fuzzy Sets and Systems, 131(2):217224, October 2002. [313] C. I. Siettos and G. V. Bafas. Semiglobal stabilization of nonlinear systems using fuzzy control and singular perturbation methods. Fuzzy Sets and Systems, 129(3):275294, August 2002. [314] Q. Sun, R. Li, and P. Zhang. Stable and optimal adaptive fuzzy control of complex systems using fuzzy dynamic model. Fuzzy Sets and Systems, 133(1):117, January 2003. [315] Kazuo Tanaka and Michio Sugeno. Stability analysis and design of fuzzy control systems. Fuzzy Sets and Systems, 45(2):135156, January 1992. [316] S. Tong and H.-H. Li. Observer-based robust fuzzy control of nonlinear systems with parametric uncertainties. Fuzzy Sets and Systems, 131(2):165184, October 2002.

292

BIBLIOGRAFA

[317] M. Maeda and S. Murakami. Stability analysis of fuzzy control systems using phase planes. In Japanese journal of fuzzy theory and systems, volume 3, pages 149160, 1991. [318] Javier Aracil. Stability Issues in Fuzzy Control. Springer-Verlag New York, Inc., Secaucus, NJ, USA, 2000. [319] Javier Aracil, A. Garca, and Anibal Ollero. Fuzzy control of dynamical systems. Stability analysis based on the conicity criterion. In 4th International Fuzzy Systems Association Congress (IFSA), pages 58, Brussels, Belgium, July 1991. [320] Heidar A. Malki, Huaidong Li, and Guanrong Chen. New design and stability analysis of fuzzy proportional-derivative control systems. IEEE Transactions on Fuzzy Systems, 2(4):245254, November 1994. [321] Hua O. Wang, Kazuo Tanaka, and Michael F. Grin. An approach to fuzzy control of nonlinear systems: stability and design issues. IEEE Transactions on Fuzzy Systems, 4(1):1423, February 1996. [322] Hao Ying. Practical design of nonlinear fuzzy controllers with stability analysis for regulating processes with unknown mathematical models. Automatica, 30(7):1185 1195, July 1994. [323] W. Assawinchaichote and Sing Kiong Nguang. H fuzzy control design for nonlinear singularly perturbed systems with pole placement constraints: an LMI approach. IEEE Transactions on Systems, Man, and CyberneticsPart B: Cybernetics, 34(1):579588, February 2004. [324] Thierry Marie Guerra and Laurent Vermeiren. Lmi-based relaxed nonquadratic stabilization conditions for nonlinear systems in the Takagi-Sugenos form. Automatica, 40(5):823829, May 2004. [325] Sung Kyung Hong and Yoonsu Nam. Stable fuzzy control system design with poleplacement constraint: an LMI approach. Computers in Industry, 51(1):111, May 2003. [326] H. K. Lam, F. M. Leung, and P. K. S. Tam. A linear matrix inequality approach for the control of uncertain fuzzy systems. IEEE Control Systems Magazine, 22(4):2025, August 2002. [327] H.K. Lam, F.H.F. Leung, and P.K.S. Tam. An improved stability analysis and design of fuzzy control systems. In Fuzzy Systems Conference Proceedings, 1999. FUZZ-IEEE 99. 1999 IEEE International, volume 1, pages 430433, August 1999. [328] K. Tanaka, T. Hori, and H.O. Wang. A fuzzy lyapunov approach to fuzzy control system design. In American Control Conference, 2001. Proceedings of the 2001, volume 6, pages 47904795, June 2001. [329] K. Tanaka, H. Ohtake, and H. O. Wang. A descriptor system approach to fuzzy control system design via fuzzy Lyapunov functions. IEEE Transactions on Fuzzy Systems, 15(3):333341, June 2007.

BIBLIOGRAFA

293

[330] Kazuo Tanaka, Takayuki Ikeda, and Hua O. Wang. Fuzzy regulators and fuzzy observers: relaxed stability conditions and LMIbased designs. IEEE Transactions on Fuzzy Systems, 6(2):250265, May 1998. [331] Zhi-Hong Xiu and Guang Ren. Stability analysis and systematic design of TakagiSugeno fuzzy control systems. Fuzzy Sets and Systems, 151(1):119138, April 2005. [332] Jorge Luis Martnez Rodrguez. Control de procesos industriales. Mlaga, Espaa, 3rd edition, September 2002. [333] Jian Cao, Haiyan Zhao, and Minglu L. Li. A fuzzy rule based load balancing model for a distributed service process engine. In 3rd International Conference on Grid and Pervasive Computing Symposia/Workshops, GPC 2008, pages 914, 2008. [334] M. Margaliot and G. Langholz. New approaches to fuzzy modeling and control: design and analysis. Machine Perception Articial Intelligence. World Scientic, Singapore, 2000. [335] Jos Manuel Andjar, Antonio Javier Barragn, Manuel Emilio Gegndez, and Manuel Maestre. Aplicacin de la sntesis de Lyapunov borrosa a un caso prctico real: la gra porta contenedores. In CEA-IFAC, editor, XXVII Jornadas de automtica, pages 10691074, Almera, Espaa, September 2006. [336] Kazuo Tanaka. Stability and stabilizability of fuzzyneurallinear control systems. IEEE Transactions on Fuzzy Systems, 3(4):438447, November 1995. [337] Min-You Chen and D. A. Linkens. Rule-base self-generation and simplication for data-driven fuzzy models. Fuzzy Sets and Systems, 142(2):243265, March 2004. [338] Tadanari Taniguchi, Kazuo Tanaka, Hiroshi Ohtake, and Hua O. Wang. Model construction, rule reduction, and robust compensation for generalized form of TakagiSugeno fuzzy systems. IEEE Transactions on Fuzzy Systems, 9(4):525538, August 2001. [339] Tor A. Johansen. Computation of Lyapunov functions for smooth nonlinear systems using convex optimization. Automatica, 36(11):16171626, November 2000. [340] David E. Goldberg. Genetic algorithms in search, optimization & machine learning. AddisonWesley, 1989. [341] J. A. Nelder and R. A Mead. A simplex method for function minimization. Computer Journal, 7(4):308313, 1965. [342] Y. Sakawa and Y. Shindo. Optimal control of container cranes. Automatica, 18(3):257 266, 1982. [343] Krzysztof Socha and Marco Dorigo. Ant colony optimization for continuous domains. European Journal of Operational Research, 185(3):11551173, August 2008.

294

BIBLIOGRAFA

[344] Wei Dong Gao. New continuous ant colony algorithm. In Proceedings of the World Congress on Intelligent Control and Automation (WCICA), pages 12751279, June 2008. [345] Qin Zhang and Xiong H. Wang. Binary and continuous ant colony algorithms research for solving continuous global optimization problem. In Proceedings - The 1st International Conference on Intelligent Networks and Intelligent Systems, ICINIS 2008, pages 14, November 2008. [346] Yuntao Zhao, Jing Xian Wang, and Xinliang Xie. Continuous ant colony algorithm based on entity and its convergence. In Proceedings - 2008 2nd International Symposium on Intelligent Information Technology Application, IITA 2008, volume 1, pages 8084, December 2008. [347] Ka-Ling Fok, Tien-Tsin Wong, and Man-Leung Wong. Evolutionary computing on consumer graphics hardware. IEEE Intelligent Systems, 22(2):6978, April 2007. [348] Man Leung Wong and Tien Tsin Wong. Intelligent and Evolutionary Systems, volume 187 of Studies in Computational Intelligence, chapter Implementation of Parallel Genetic Algorithms on Graphics Processing Units, pages 197216. SpringerLink, 2009. [349] Pedro Albertos and Antonio Sala. Control borroso. Una metodologa integradora. Revista Iberoamericana de Automtica e Informtica Industrial (RIAI), 1(2):2231, July 2004. [350] Ching-Hung Lee and Hung-Yi Pan. Performance enhancement for neural fuzzy systems using asymmetric membership functions. Fuzzy Sets and Systems, 160(7):949971, April 2009. [351] William H. Press. Numerical recipes in C: the art of scientic computing, chapter 2, pages 9697. Cambridge University Press, Cambridge, England, 2nd edition, 1998.

placeholder

Anda mungkin juga menyukai