SciELO - Scientific Electronic Library Online

 
vol.30 issue3CMIN - a CRISP-DM-based case tool for supporting data mining projectsAssessment and analysis of local marginal prices as an effect of electric transmission constraints in the Colombian power market author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • On index processCited by Google
  • Have no similar articlesSimilars in SciELO
  • On index processSimilars in Google

Share


Ingeniería e Investigación

Print version ISSN 0120-5609

Ing. Investig. vol.30 no.3 Bogotá Sept./Dec. 2010

 

Descomposición en suma de cuadrados: teoría y aplicaciones en control

Sum of squares decomposition: controltheory and applications

Andrés Pantoja1 , Eduardo Mojica Nava2 y Nicanor Quijano3

1 Ingeniero Electrónico, Universidad Nacional de Colombia Sede Manizales. M.Sc., en Ingeniería Electrónica, Universidad de los Andes. Estudiante de Doctorado, Universidad de los Andes. Universidad de Nariño, Pasto. ad.pantoja24@uniandes.edu.co.

2 Ingeniero Electrónico, Universidad Industrial de Santander. M.Sc., en Ingeniería Electrónica, Universidad de los Andes. Ph.D., en Ingeniería, Universidad de los Andes y Ecole Centrale Nantes, Francia. Universidad Católica, Bogotá, Colombia. ea.mojica70@uniandes.edu.co.

3 Ingeniero Electrónico, Pontificia Universidad Javeriana, Bogotá, Colombia. M.Sc., and Ph.D., en Ingenieria Electronica, Ohio State University, Columbus, OH, USA. Universidad de los Andes, Bogotá, Colombia. nquijano@uniandes.edu.co


RESUMEN

Las técnicas de descomposición en sumas de cuadrados (SOS) permiten emplear métodos numéricos para probar la positividad de funciones polinómicas multivariables resolviendo problemas de programación en semidefinida. Teniendo en cuenta que generalmente es difícil encontrar funciones de Lyapunov para realizar análisis de estabilidad en sistemas no lineales, con el uso de t técnicas SOS se utiliza una herramienta computacional para resolver este problema, planteando las condiciones de estabilidad como un problema SOS y obteniendo la solución con un toolbox de Matlab. Para mostrar el uso de esta herramienta se presentan ejemplos simples de los conceptos de SOS, análisis de estabilidad para sistemas no lineales polinomios, racionales, con incertidumbre en los parámetros y de sistemas conmutados con una aproximación en polinomio. Con dicha aproximación se encuentran funciones adecuadas para demostrar estabilidad asintótica para estos sistemas.

Palabras claves: suma de cuadrados, SOS, análisis de estabilidad, sistemas no lineales, sistemas conmutados.


ABSTRACT

Sum of squares decomposition (SOS) techniques allow us to use numerical methods, such as semidefinite programming, to prove positivity of multivariable polynomial functions. It is well known that it is not an easy task to find Lyapunov functions for stability analysis of nonlinear systems. In this work, we use an algorithmic tool to solve this problem. This approach is presented as SOS programming and solutions are obtained with a Matlab toolbox. We present simple examples of SOS concepts, stability analysis for nonlinear polynomial, and rational systems with uncertainties in the parameters to show the use of this tool. Besides of these approaches, we present an alternative stability analysis for switched systems with a polynomial approach.

Keywords: sum of squares, SOS, stability analysis, nonlinear systems, switched systems.


Recibido: abril 30 de 2009
Aceptado: noviembre 15 de 2010

Introducción

La teoría sobre la descomposición de funciones poligonales en sumas de cuadrados (SOS) ha tenido un desarrollo importante en los últimos diez años desde su introducción en (Parrilo, 2000). Este impulso se debe principalmente a la posibilidad de realizar relajaciones de problemas considerados NP-hard (e. g., la evaluación de la no negatividad de polinomios multivariables) (Papadimitriou, 1994), a problemas solucionables computacionalmente en tiempo polinomio. El problema consiste básicamente en encontrar condiciones para verificar la validez de la proposición

Para considerar el estudio algorítmico de este problema es evidente la necesidad de delimitar la estructura de las posibles funciones F, y al mismo tiempo hacer el problema lo suficientemente general para garantizar la aplicabilidad de los resultados. Un buen compromiso es alcanzado restringiendo la clase de F a funciones poligonales (Parrilo, 2000).

F(x1,...,xn)≥0, ∀x1,...,xn∈Rn (1)

Definición 1.1.Una función f polinomio en x1, . . . , xn, con coeficientes en un campo k, es una combinación lineal finita de monomios:

f= ∑αcαxα=∑αcαx1α1...xnαn cα>k (2)

donde la suma es sobre un número finito de ntuplas

α = (α1, ..., αn), con αi∈ N0.

Es posible mostrar que el problema general de probar positividad global de una función en polinomio es también de hecho NP-hard (cuando el grado es al menos cuatro). Así que, cualquier método para garantizar la solución del problema en cada caso posible tendrá un comportamiento inaceptable en tiempo computacional para una función con un número de variables elevado.

Ésta es la principal desventaja de las metodologías teóricas tales como eliminación de cuantificadores (Parrilo, 2000).

Si se desean evitar los problemas de complejidad inherentes relacionados con la solución exacta, surge la siguiente cuestión: ¿hay algunas condiciones, que puedan ser probadas en tiempo polinomio para garantizar positividad global de una función? Como se verá en la siguiente sección, tal condición está dada por la existencia de una descomposición en suma de cuadrados.

Entre los problemas que pueden ser tratados por medio de las técnicas de SOS se encuentran optimizaciones globales, con restricciones y booleanas (Prajna et al., 2004), así como problemas aplicados al control como la búsqueda de funciones de Lyapunov para comprobación de estabilidad de puntos de equilibrio en sistemas no lineales (Topcu et al., 2008) y la delimitación de la incertidumbre en los parámetros en el análisis de sistemas dinámicos (Topcu y Packard, 2009). Además se ha explorado el análisis de estabilidad de sistemas no lineales con retardos de tiempo (Papachristodoulou, 2004) y la síntesis de controladores no lineales (Franze et al., 2009; Ebenbauer y Allg¨ower, 2006).

Específicamente, las técnicas SOS plantean un problema de optimización convexa que puede ser resuelto mediante programación semidefinida (SDP) (Parrilo, 2003). Este método es una generalización en la programación lineal (LP), donde las restricciones de no negatividad de las variables son reemplazadas por desigualdades matriciales semidefinidas positivas. La resolución de SDP se realiza con base en técnicas algorítmicas como las desigualdades lineales matriciales (LMI) y programas con métodos numéricos para SDP tales como SeDuMi y SPDT3 (Anjos y Burer, 2007).

Luego la resolución de un problema SOS implica la formulación de un problema SDP, encontrar la solución numérica y luego interpretar el resultado de forma que corresponda al problema inicial propuesto. Para el desarrollo de este proceso se utiliza el toolbox denominado SOSTOOLS (Prajna et al.), que brinda herramientas para el planteamiento de variables, funciones y restricciones en forma de SOS para la obtención de soluciones utilizando entorno simbólico de Matlab.

En este tutorial se presentan los conceptos básicos de las técnicas SOS, algunas aplicaciones en control como la determinación de funciones de Lyapunov, el análisis de la variación de los parámetros en sistemas no lineales con campos vectoriales racionales, la aplicación a sistemas conmutados y la utilización de SOS TOOLS en la resolución de los problemas planteados.

Suma de cuadrados

En esta sección se presentan conceptos importantes y ejemplos básicos del uso de SOS para observar la funcionalidad de la descomposición de una función en una suma de cuadrados, estableciendo bases para las aplicaciones en el área de control y partiendo del análisis de funciones poligonales multivariables.

Además, se introduce SOSTOOLS como la herramienta computacional utilizada en la resolución numérica de los problemas planteados como principales aplicaciones de estas técnicas.

Conceptos básicos

Definición 2.1.Un polinomio multivariable p(x) de grado 2d en x ∈ Rn, es una suma de cuadrados (SOS) si existen polinomios fi(x) tales que

p(x)= ∑i=1M f12(x) (3)

La descomposición en SOS puede ser expresada también como en (Parrilo, 2003), si existe una matriz Q ∈ Rn×n semidefinida positiva, tal que

p(x)=Z(x)T QZ(x) (4)

donde Z(x) es un vector de monomios en x de grado menor igual a d. Dado que Q = QT _ 0, puede ser factorizada de la forma Q = HHT , donde H ∈ Rn×r con r = rango de Q. Tomando h1, h2, . . . , hr, como las columnas de H, la ecuación (4) puede ser expresada como

p(x)= ∑i=1 (hT1Z(x))2 (5)

Entonces, el problema de la determinación de la descomposición SOS del polinomio mostrada en la ecuación (5) se puede relajar a encontrar una Q _ 0, convirtiéndose en un problema de programación en semidefinida, como se define en (Parrilo, 2000).

En el siguiente ejemplo se presenta cómo se expresa una función polinomio en forma SOS a través de las formas mostradas en (4) y (5).

Ejemplo 2.1. Encontrar una descomposición en SOS del polinomio dado por

p(x) = 13x41+14x31x2-18x21+14x21x22...

...6x1x2+9x42-30x32x1+9

Dado un vector

Z(x) = [1 x22 x1x2 x12]T 

se encuentra una matriz QT≥ 0 tal que

Una factorización Q =HHT dada por

da como resultado que

p(x)= (3x12-x1x2-3)2 + (2x21-3x22+5x1x2)2

Es claro que una función SOS es globalmente positiva, pero no todas las funciones positivas son SOS.

Un ejemplo de estas funciones es el llamado polinomio Motzkin, M(x) = x41 x22+x21x42+x63−3x21x22x23. Para demostrar positividad en este tipo de funciones usando técnicas SOS, en (Reznick, 2000) se demuestra que si p(x) > 0, ∀x ∈ Rn, entonces existe un r entero positivo tal que

p(x)(∑ni=1x21)r es SOS

Entonces, el problema se extiende a probar diferentes valores de r hasta encontrar factible la representación SOS del nuevo polinomio.

Herramienta computacional SOSTOOLS

SOSTOOLS (Prajna et al.) es un toolbox de Matlab para la resolución de problemas de suma de cuadrados (SOSP) en combinación con un programa de resolución de problemas de programación semidefinida (e. g., SeDuMi o SDPT3). Esta herramienta permite convertir el SOSP planteado en un problema SDP, utilizar el algoritmo de resolución y expresar la solución en términos de las variables y polinomios iniciales. El procedimiento general para obtener la solución de problemas SOS se resume en:

- Definir las variables, polinomios y constantes SOS, y las variables generales del problema, utilizando el toolbox Symbolic o en formato polinomio de Matlab.

- Definir las restricciones del problema SOS como desigualdades e igualdades en función de las variables definidas anteriormente.

- Utilizar las funciones de SOSTOOLS para la resolución del problema y la obtención de las soluciones en las variables originales.

En la siguiente sección se presentan algunas aplicaciones en control,  especialmente en el análisis de estabilidad de puntos de equilibrio de sistemas no lineales por medio del método directo de Lyapunov, y en el análisis de estabilidad de sistemas conmutados.

Aplicaciones en control

Como se mencionó, una de las aplicaciones para las técnicas SOS se encuentra en la facilidad computacional de hallar una función de Lyapunov que demuestre la estabilidad de un punto de equilibrio de un sistema no lineal. Esta tarea generalmente resulta difícil, excepto para ciertos sistemas con reducido número de variables y dependiendo de pruebas para funciones conocidas (e. g., funciones de energía) o de métodos específicos (como el del gradiente o Krasovskii), aplicados a campos vectoriales especiales (Khalil, 2002).

En el caso de campos vectoriales y funciones de Lyapunov poligonales las condiciones para verificar la estabilidad del punto de equilibrio, son esencialmente pruebas de no negatividad que pueden resultar en problemas NP-Hard. Cambiando estas condiciones por la búsqueda de funciones SOS el problema puede ser resuelto utilizando la herramienta algorítmica SOSTOOLS.

En los ejemplos siguientes se aplica la herramienta en el análisis de sistemas polinomios, racionales y con incertidumbres en los parámetros, realizando variaciones en los algoritmos simples originales y con base en ampliaciones del teorema fundamental de Lyapunov.

Sistemas con campos vectoriales polinómicos y racionales

El teorema de estabilidad de Lyapunov en forma general se aplica a un sistema autónomo de la forma

x.=f(x) (6)

donde f : D →Rn es un mapeo continuo de D ⊂ Rnen Rn, y sin pérdida de generalidad (Khalil, 2002); el origen es un punto de equilibrio de (6) (i. e., f (0) = 0). Si se define una función en continuamente diferenciable V(x) denominada función de Lyapunov, las condiciones de estabilidad del sistema se RESUMEN en que si V(x) es definida positiva y ˙V (x) es semidefinida negativa, el origen es estable. Si además, ˙V (x) es definida negativa, el origen es asintóticamente estable.

Para aplicar las técnicas SOS es necesario realizar una relajación de las condiciones de este teorema, con el fin de que las condiciones de no negatividad sean expresadas como sumas de cuadrados. En el caso de sistemas polinomios, teniendo un estado x = [x1, x2, . . . , xn], se define una función V(x) de grado 2d y una función auxiliar φ(x) de la forma

φ(x)= ∑i=1nnj=1εijx12j (7)

con e ε ≥ 0, para todo i y j y ∑aj=1εij> 0, para todo i = 1, 2, . . . , n. Con estas condiciones, φ(x) es definida positiva. Por lo tanto, si V(x)−φ(x) puede ser expresado como una suma de cuadrados, se garantiza que V(x) es definida positiva también.

Entonces, las condiciones de estabilidad pueden ser expresadas como

V(x)−φ(x) es SOS (8)

- δV/δx f(x) es SOS (9)

Por lo tanto, el algoritmo para encontrar una función de Lyapunov usando SOSTOOLS se resume en:

- Definir una función polinómica general V(x) de grado determinado (2d) con monomios en x de grado d.

- Crear la expresión φ(x) como en (7). - Definir la expresión V(x)−φ(x) como una desigualdad SOS. - Definir - δV/δx f (x) como una desigualdad SOS. - Resolver el programa y obtener la V(x) resultado.

Ejemplo 3.1 (Khalil, 2002). Encontrar una función de Lyapunov que demuestre la estabilidad asintótica del origen del siguiente sistema:

x.1= x2(1-x21)

x.2= -(x1+x2)(1-x21) (10)

El sistema tiene un punto de equilibrio en x = 0. Este punto de equilibrio no es único, ya que en x1 = 1 y en x1 = −1, ˙ x1 = 0 y ˙ x2 = 0. Luego al determinar una función de Lyapunov que cumpla con (8) y (9) se comprueba la estabilidad del origen y se puede establecer una posible región de atracción observando las curvas de nivel de la función V(x) encontrada.

Usando SOSTOOLS se halla una función de grado 8, con 42 términos cuyas curvas de nivel se muestran en el plano de fase del sistema en la Figura 1. Se observa que la mayor región de atracción para la V(x) encontrada se obtiene al acercarse a x1 = −1, que es el límite donde las curvas de nivel de la función de Lyapunov dejan de ser cerradas.

Al tener un sistema con f (x) racional, la condición en (9) se modifica para aplicar el  mismo algoritmo en SOSTOOLS.

En este caso se debe encontrar una función

w(x) > 0 tal que

-w(x)- δV/δx f(x) sea SOS y polinómica (11)

Se nota entonces que siendo w(x) > 0, se conserva la segunda condición del teorema general de estabilidad, y siendo (11) una función polinómica, se pueden aplicar nuevamente técnicas SOS para el análisis, como se muestra en el siguiente ejemplo.

Ejemplo 3.2 (Khalil, 2002). Encontrar una función polinómica de Lyapunov para mostrar la estabilidad del origen del sistema dado por

x.1= -6x1/(1+x21)2 +2x2

x.2= -2(x1+x2)/(1+x12)2 (12)

Escogiendo w(x) = (1+x12)2 ≥ 0, y dado que V(x) es polinomio, en el algoritmo para encontrar la función de Lyapunov se define −(1+x12)2 δV/δx f (x) como una desigualdad SOS con la finalidad de cumplir la segunda condición del teorema general de  estabilidad.

El resultado de esta aplicación es una función V(x) de orden 10 con 62 términos. El diagrama de fase del sistema y algunas curvas de nivel de V(x) (i. e., regiones de atracción en el origen) se muestran en la Figura 2.

Se observa que en el sistema (12), el punto x = 0 es el único punto de equilibrio, y la determinación de V(x) permite establecer regiones de atracción en el origen.

A pesar de que las funciones de Lyapunov halladas para los ejemplos 3.1 y 3.2 tienen un elevado número de términos, poseen la ventaja de encontrarse directamente en el entorno del toolbox symbolic de Matlab, permitiendo facilidad en la manipulación, graficación y verificación de las condiciones de las expresiones.

Además, a partir de los ejemplos presentados se vislumbra la utilidad de la herramienta SOSTOOLS en el análisis de sistemas de mayor complejidad o de mayor cantidad de variables, simplificando el trabajo de la demostración de estabilidad a la implementación de algoritmos adecuados en la herramienta computacional.

Sistemas con incertidumbres en los parámetros

Considerar el sistema no lineal general dado por la ecuación (6), y que la incertidumbre en los parámetros del sistema puede ser expresada como:

ci(x,u)≤0 para i=1,...,N1 (13)

donde u ∈ Rm es el conjunto de parámetros con incertidumbre y N1 es el número de restricciones requeridas.

Asumir que las funciones ci pueden ser expresadas como funciones polinómicas en (x,u), y f (x,u) como un vector de funciones polinómicas o racionales en (x,u) sin singularidades en D ⊂ Rn×m, donde D = {(x,u) ∈ Rn×m|ci(x,u) ≤ 0, para todo i. Además, sin pérdida de generalidad, asumir que f (x,u) = 0 para

x = 0 y u ∈ D0 u , donde D0 u = {u ∈ Rm|(0,u) ∈ D}. El siguiente teorema, tomado de Papachristodoulou y Prajna (2002), que es una extensión del teorema de estabilidad de Lyapunov, presenta las condiciones para la estabilidad local del origen del sistema (6) con las restricciones dadas por (13).

Teorema 3.2. Suponiendo que para el sistema existen funciones V(x), w(x,u) y pi(x,u) tales que V(x) es positiva definida en una vecindad del origen w(x,u) > 0 y pi(x,u) ≥ 0 en D entonces

Z(x,u)=-w(x,u)δV/δx f(x,u)+∑i=1 N1p1(x,u)c1(x,u)≥0 (14)

garantiza que el origen es un punto de equilibrio estable del sistema.

Para el caso en que f (x,u) sea un campo vectorial racional, se escoge una función w(x,u) > 0 tal que −w(x,u)δV/δx f(x,u) sea una función polinómica y se puedan aplicar los algoritmos SOS. Las condiciones anteriores pueden ser relajadas a definiciones de SOS, como se muestra en la siguiente proposición tomada de Papachristodoulou y Prajna (2002).

Proposición 3.2. Para una función polinómica φ(x) ≥ 0 (o SOS), como se define en (7), la estabilidad local del origen del sistema puede ser garantizada si:

V(x)−φ(x) es SOS, es decir, V(x) es definida positiva. Z(x,u) es SOS.

pi(x,u), es SOS, para i = 1, . . . , N1 es SOS.

Entonces, el algoritmo para encontrar una función de Lyapunov conserva los tres primeros pasos del algoritmo para sistemas sin restricciones. Las diferencias se presentan al definir la condición (14). Para esto se debe:

- Definir tantos pi(x,u) como restricciones de desigualdad tenga el sistema. Los pi(x,u) deben ser variables SOS. - Escoger un w(x,u) > 0 si es necesario. - Definir −w(x,u)δV/δx f(x,u) + ∑ pi(x,u)ci(x,u) como una desigualdad SOS. - Resolver el programa y obtener la V(x) resultado.

En el siguiente ejemplo se aplica este procedimiento para evaluar la estabilidad del origen en un sistema térmico multizona con una estrategia de control basada en la teoría de juegos evolutivos (Pantoja y Quijano, 2008).

Ejemplo 3.3. Un sistema térmico con N zonas independientes puede ser modelado mediante

Ti=-aiTi+bixi+aiTa

donde Ti es la temperatura en la i- ésima zona (i =  1, . . . , N), ai,bi constantes positivas, Ta es la temperatura ambiente y xi es la entrada de control para la zona i. Asumiendo que Ti(0) = Ta, que se tiene una temperatura límite superior B tal que B >> Ta, y haciendo qi = BTi, el sistema puede ser expresado por:

qi.= -aiqi-bixi+ai(B-Ta) (15)

Las dinámicas de la señal de control se definen de tal forma que la temperatura de todas las zonas llegue a un punto de equilibrio que corresponda a la máxima temperatura uniforme que se  pueda obtener a partir de una cantidad de recursos limitada. Estas dinámicas, dadas por el concepto de replicator dynamics (Pantoja y Quijano, 2008), son:

x1.= x1 (q1-1/P∑j=1Nxjqj) (16)

donde P > 0 es la cantidad total de recursos disponibles para calentar todas las zonas. Entonces,∑j=1Nxi= P. El punto de equilibrio del sistema compuesto por (15) y (16) es:

x*1=aj/bjP/∑j=1N aj/bj

q*1= (B-Ta)- P/∑j=1N aj/bj

de donde la temperatura final de cada zona está dada por

T1*= Ta+P/∑j=1N aj/bj, para 1=1, ...,N

que es claramente constante y dependiente solamente de los parámetros del sistema y de los recursos disponibles.

El problema radica entonces en analizar la estabilidad de este punto de equilibrio ante variaciones en los parámetros de cada zona ai y bi para un sistema de dos zonas (i.e., N = 2).

Al realizar un cambio de coordenadas en el sistema para que el origen sea el punto de equilibrio, las variables de error del sistema están definidas por eqi = qiq*iy exi= xix*i. Dado que x1 + x2 = P, x*2 = Px*1, luego ex2 = −ex1 . Entonces, el sistema descrito por

e.1= (ex1+Pa1b2/a1b2+a2b1)(eq2-eq1)...

(a1b2/a1b2+a2b1 + ex1/P -1)

e.q1=-a1eq1-b1ex1

e.q2= -a2eq2+b2ex1

tiene al origen como el único punto de equilibrio.

Unos rangos estimados de las variaciones en los parámetros del sistema están dada por:

0 < ai< 2 para i = 1,2

0 < bi < 0,01 para i = 1,2

Estas desigualdades deben expresarse de forma polinómica para incluirse en el algoritmo SOS. Para esto, sean a y a los límites inferior y superior respectivamente para la variable a, la desigualdad a < a < a se expresa como (aa)(aa) < 0. Definiendo además los polinomios respectivos pi(x,u) como variables polinómicas SOS y w(x,u) = (a1b2+a2b1)2 > 0, se adecúa la condición (14) a una desigualdad SOS para implementar el algoritmo en SOSTOOLS.

El resultado del programa es una función en V(x) de orden 4 con 32 términos, cuyas trayectorias a lo largo de las soluciones del sistema se muestran en la Figura 3, para diferentes valores de los parámetros aiy bi, con una cantidad de recursos P = 150 y con señal de control inicial x1 = 149. En esta misma figura se presenta el comportamiento de Z(x,u) para iguales condiciones.

Se debe notar que con la finalidad de cumplir con las condiciones del teorema 3.1, las trayectorias de estas funciones sólo deben ser mayores que cero. Cuando los valores de los parámetros se acercan a los límites de los rangos establecidos, Z(x,u) se acerca a cero más rápidamente.

Esto implica la proximidad de la restricción y la necesidad de establecer nuevos rangos para obtener una nueva función de Lyapunov. En cuanto a los resultados mostrados en la Figura 3, el punto de equilibrio del sistema térmico multizona controlado es asintóticamente estable, como se demuestra en Pantoja y Quijano (2008).

Sistemas conmutados

En esta sección se considera el problema del análisis de estabilidad de los sistemas conmutados (i. e., sistemas continuos con señales de conmutación) usando desigualdades de disipación con conmutaciones arbitrarias.

Este método permite encontrar una función común de Lyapunov para todo el conjunto de subsistemas.

El resultado principal que permite usar el método de las desigualdades de disipación, desarrollado previamente para sistemas no lineales de forma polinomio, es una nueva representación del sistema conmutado como un sistema polinomio continuo con restricción, es decir que el sistema conmutado original es representado por un sistema de ecuaciones diferencio-algebraicas DAE (Differential-Algebraic Equations), donde todas las ecuaciones diferenciales y algebraicas son de forma polinomio (Mojica-Nava et al., 2010).

3.3.1 Aproximación en polinomio de los sistemas conmutados. Se define a los sistemas conmutados como aquellos que consisten de varios subsistemas continuos y una ley de conmutación discreta que indica cuál estado está activo en cada instante de tiempo.

El modelo matemático que describe los sistemas conmutados de forma general está dado por

x.(t)=fσ(t)(x,u,t) (17)

donde fi : Rn×Rm×R+→Rnson los vectores de campo, la entrada externa de control u ∈ Rmy s : [0, t f ] → Q ∈ {0,1,2, ...,q} es un función del tiempo constante a trozos. Cada modo de operación corresponde a un sistema específico ˙ x(t) = fi(x,u, t), para algún i ∈ Q, y la señal de conmutación s determina cuál subsistema es seguido en cada instante del tiempo, dentro del intervalo de tiempo [0, t f ], con t f como tiempo final. Las señales de control, σ y u, son funciones medibles.

Esta definición general de sistemas conmutados permite obtener una representación en polinomio continua, como se mencionó, definiendo una nueva variable, la cual cumple las funciones de variable de control, reemplazando la señal de conmutación por una señal continua pero restringida a tomar ciertos valores dentro del conjunto de valores posibles. Para hacer esto lo primero es reescribir la ecuación (17) como un sistema no conmutado controlado.

Primero, se define un vector de campos vectoriales F(x,u) : Rn×Rm→Rn,

F(x,u)=[f0(x,u)f1(x,u)...fq(x,u) (18)

donde fi(x,u), i ∈Q es la función para cada subsistema del sistema conmutado dado en (17). Luego, para encontrar la expresión en polinomio se necesita en cada i ∈ Q = {0,1, . . . ,q} un coeficiente lk con la propiedad de lk(i) = 0 cuando i 6= k, y lk(k) = 1. Sea L el vector de coeficientes de interpolación en polinomio de LaGrange (Burden y Faires, 1985) definido con la nueva variable s, i. e.:

L(s)=[l0(s),l1(s),...,lq(s)]T (19)

donde

lk(s)= Πqi=0,l=/k(20)

Por otro lado, se necesita restringir los valores de la variables para que lleve al sistema a estar en las mismas posibles trayectorias del sistema conmutado; esto se logra gracias a un polinomio cuyas raíces corresponden con los números de posible modos de operación. Sea Q(s) el polinomio que restringe, tal que

Q(s)=Πqk=0 (s-k) =0 (21)

Un sistema polinomio continuo relacionado con el sistema conmutado original (17) está definido en la siguiente proposición, tomada de Mojica-Nava et al. (2010).

Proposición 3.3. Considere un sistema conmutado de la forma presentada en (17), con un vector de campos vectoriales en la forma dada en (19) tal que existe un único polinomio P de orden q+1 con la propiedad de fi(x,u) = P(x,u, i) para cada i ∈ Q. Este polinomio está dado por

P(x,u,s)= F(x,u)L(s)

= ∑qk=0 fk(x,u)lk(s) (22)

donde s ∈ R, y lk(s) es dado por (21). Ahora, el sistema (17) toma la forma del sistema continuo polinomio con restricciones, representado por un sistema de ecuaciones algebro-diferenciales no lineales

x.=P(x,u,s)

0=Q(s) (23)

por cada i ∈ Q = {0,1, ...,q} sujeto al polinomio Q(s) dado en (21).

Ahora, la representación polinomio permite tratar el problema con las técnicas descritas para sistemas poligonales usando la teoría de las desigualdades de disipación. Es conveniente aclarar en esta parte que esa representación polinomio también puede ser usada para hallar la función común de Lyapunov por los métodos planteados, pero se presentan las desigualdades de disipación para abrir posibilidades a futuros trabajos en el área del análisis de disipación de energía en los sistemas conmutados, un tema que no ha sido ampliamente desarrollado (Zhao y Hill, 2008).

En la siguiente sección se presentan los principales resultados obtenidos sobre el análisis de estabilidad de sistemas conmutados usando las desigualdades de disipación.

3.3.1. Resultados en análisis de estabilidad usando las desigualdades de disipación

El siguiente teorema (tomado de Ebenbauer y Allg¨ower, 2004) da un resultado simple para la estabilidad de sistemas modelados por ecuaciones algebro-diferenciales del tipo (23).

Teorema 3.4.El punto de equilibrio x = 0 del sistema algebro-diferencial (23) es estable para cualquier entrada admisible s = s(t), si existe una función de Lyapunov candidata V : Rn 7→ R, una función r : R(m+2)(n+q) 7→ R, y un número entero m tal que la desigualdad de disipación

∀ V(x)x.≤ //Gμ(ξ,ς) (24)

es satisfecha por algún x-vecindario Ωx((ξ ,ς) = 0).

La idea detrás de la desigualdad (24) no es más que la verificación de que la función ˙V sea negativa, semidefinida con respecto al conjunto de restricciones.

En general es difícil encontrar una función de Lyapunov V y una función r para problemas por acticos. Pero justamente los desarrollos que han tenido las técnicas SOS basadas en programación semidefinida permiten verificar las desigualdades de la forma (24) eficientemente en el caso de que todas las funciones implicadas en la desigualdad tengan forma polinomio (Ebenbauer y Allg¨ower, 2004). Ciertamente, en este caso, todas las funciones son de naturaleza polinomio. Ya ha sido establecido que el sistema algebro-diferencial (23) es de índice 1 (Mojica-Nava et al., 2010). Así que se debe escoger m = 1, y si se trata de probar la estabilidad global del sistema (22), la siguiente desigualdad polinomio debe ser satisfecha:

V(x) > 0

∀ V (x) P(x,s) ≤ //Q(s)//2ρ(x,s)

lo cual implica que

V(x) > 0

∀ V (x)( ∑qk=0fk(x,u)lk(s))≤ //Πqk=0 (s-k)//2ρ(x,s)(25)

para todo x = (x, ˙ x, s) ∈ R2n. Nótese que si V es polinomio y positiva definida, implica que V es radialmente ilimitada.

Por ilustración y claridad de exposición, se considera el caso cuando q = 1. La desigualdad de disipación es de la forma

∀ V (x)(f0(x)(1-s)+f1(x)s≤//s(1-s)//2ρ(x,s)(26)

Usando los conceptos sobre SOS se puede presentar la desigualdad (25) como sigue.

Encontrar una función polinomio V(x) tal que

V(x)-φ(x)≥0 es SOS

-∀ V (x)(∑qk=0fk(x,u)lk(s))+...

//Πqk=0 (s-k)//2ρ(x,s)≥0 es SOS (27)

las funciones poligonales V(x), r (x, s), y la función definida positiva j(x) puede ser computada usando SOSTOOLS (Prajna et al.).

3.3.3. Ejemplo numérico: sistema conmutado. Se considera el sistema conmutado siguiente: ˙ x = fi(x), x = [x1 x2]T, con

Este sistema está considerado como conmutado homogéneo presentado para análisis de estabilidad (Zhang et al., 2007). Con el propósito de probar estabilidad bajo conmutaciones arbitrarias, se usa la representación equivalente polinomio

x.(t)=f0(1-s)+f1s

s∈Γ ={s∈R/Q(s)=s(s-1)=0

Usando estas matrices poligonales se obtiene,

-δV/δxf0(1-s)+f1(s)+(s4-2s3+s2)λ(x,s)≥0

Utilizando SOSTOOLS se obtiene una función de Lyapunov de grado sexto, i. e.:

V(x)= -0,0364x21+0,02x41-0,0082x42+0,0476x22...

-0,056x1x2+0,0113x21x22-0,064x1x32-0,0457x61

...-0,016x41x42+0,0034x62

la cual, a través del teorema 3.5, prueba que el origen del sistema conmutado homogéneo no lineal reformulado como una DAE polinomio es estable.

Conclusiones

En este tutorial se presentan las técnicas SOS como un criterio efectivo para la demostración de no negatividad de funciones polinómicas multivariables. Aunque la determinación de la no negatividad de una función polinómica puede resultar en un problema NPHard, al plantear las condiciones de estabilidad por medio de variables SOS el problema puede ser resuelto eficazmente por el toolbox SOSTOOLS, teniendo en cuenta los posibles errores numéricos y el elevado costo computacional de esta herramienta en sistemas con un número de variables elevado. A partir de considerar sistemas no lineales polinomios se pueden realizar extensiones al análisis de sistemas racionales resultantes de controladores no lineales y de sistemas conmutados analizados desde un enfoque polinomio, teniendo en cuenta las variaciones e incertidumbres en los parámetros del sistema o restricciones en el procedimiento de análisis de estabilidad. De esta manera, a partir de los ejemplos presentados, se vislumbra la utilidad de las herramientas SOS en el análisis de sistemas de diferentes tipos o de mayor complejidad.

Bibliografía

Anjos, M., Burer, S., On handling free variables in interior-point methods for conic linear optimization., SIAM Journal on Optimization, 18(4), 2007, pp.1310-1325.        [ Links ]

Burden, R., Faires, J. D., Numerical Analysis PWS, Boston, 1985.        [ Links ]

Ebenbauer, C., Allgöwer, F., Computer-Aided Stability Analysis of Differential-Algebraic Equations., In Proceedings of the NOLCOS, 2004, pp. 1025-1030.        [ Links ]

Ebenbauer, C., Allgöwer, F., Analysis and Design of Polynomial Control Systems Using Dissipation Inequalities and Sum of Squares., Computers & Chemical Engineering, 30 (10-12), 2006, pp. 1590- 1602.        [ Links ]

Franze, G., Casavola, A., Famularo, D., Garone, E., An off-line MPC Strategy for Nonlinear Systems Based on SOS Programming., Nonlinear Model Predictive Control, LNCIS 384, 2009, pp. 491-499.        [ Links ]

Khalil, H., Nonlinear Systems., Prentice Hall Upper Saddle River, NJ, 2002.        [ Links ]

Mojica-Nava, E., Quijano, N., Rakoto- Ravalontsalama, N., Gauthier, A., A Polynomial Approach to Stability Analysis of Switched Systems., Systems and Control Letters, 59(2), 2010, pp. 98-104.        [ Links ]

Pantoja, A., Quijano, N., Modeling and Analysis for a Temperature System Based on Resource Dynamics and the Ideal Free Distribution., In Proceedings of the American Control Conference, 2008, pp. 3390-3395.        [ Links ]

Papachristodoulou, A., Analysis of Nonlinear Time- Delay Systems Using the Sum of Squares Decomposition., In Proceedings of the American Control Conference, 2004, pp. 4153-4158.        [ Links ]

Papachristodoulou, A., Prajna, S., On the Construction of Lyapunov Functions Using the Sum of Squares Decomposition., In Proceedings of the 41st IEEE Conference on Decision and Control, 2002, pp. 3482-3487.        [ Links ]

Parrilo, P., Structured Semidefinite Programs and Semialgebraic Geometry Methods in Robustness and Optimization., Ph.D. thesis, California Institute of Technology, 2000.        [ Links ]

Parrilo, P., Semidefinite Programming Relaxations for Semialgebraic Problems., Mathematical Programming, 96(2), 2003, pp. 293-320.        [ Links ]

Prajna, S., Papachristodoulou, A., Parrilo, P., SOSTOOLS: Sum of Squares Optimization Toolbox for MATLAB-User Guide., Control and Dynamical Systems, California Institute of Technology, Pasadena, CA, 91125. Available on http://www.cds.caltech.edu/sostools.        [ Links ]

Prajna, S., Papachristodoulou, A., Seiler, P., Parrilo, P., SOSTOOLS: Control Applications and New Developments., In Proceedings of the IEEE International Symposium on Computer Aided Control Systems Design, 2004, pp. 315-320.        [ Links ]

Reznick, B., Some Concrete Aspects of Hilberts 17th Problem., Contemporary Mathematics, 253, 2000, pp. 251-272.        [ Links ]

Topcu, U., Packard, A., Local Stability Analysis for Uncertain Nonlinear Systems., IEEE Transactions on Automatic Control, 54(5), 2009, pp. 1042-1047.        [ Links ]

Topcu, U., Packard, A., Seiler, P., Local Stability Analysis Using Simulations and Sum-of-SquaresProgramming,, Automatica, 44(10), 2008, pp. 2669- 2675.        [ Links ]

Zhang, L., Liu, S., Lan, H., On Stability of Switched Homogeneous Nonlinear Systems., J. Math. Anal. Appl, 334, 2007, pp. 414-430.        [ Links ]

Zhao, J., Hill, D., Passivity and Stability of Switched Systems: A Multiple Storage Function Method., Systems & Control Letters, 57, 2008, pp. 158- 164.         [ Links ]

Creative Commons License All the contents of this journal, except where otherwise noted, is licensed under a Creative Commons Attribution License