Hasta dónde llega una escalera: el conjunto alcanzable de la eliminación de armónicos

Publicado el

Haz clic o arrastra en el plano para pedir una fundamental y un armónico: dentro de la zona azul aparece la onda que lo consigue; fuera, la recta que demuestra que no existe.Abrir a pantalla completa ↗

En la primera parte la onda escalonada de un convertidor se diseñaba como un problema de control óptimo: se pide la amplitud de la fundamental, se eliminan unos armónicos y la forma de la escalera sale sola. Pero quedó una pregunta sin responder. Al subir la amplitud, a partir de 1,17 no había solución, con 3, con 5, con 7 o con 9 niveles. ¿Por qué justo ahí? ¿Y por qué no cambiaba con los niveles?

En diciembre de 2020 lo ataqué con programación dinámica: discretizar el tiempo y reconstruir hacia atrás el conjunto de estados desde los que se puede llegar al objetivo. Aquí está la respuesta exacta, que resulta ser bastante más sencilla: lo que se puede conseguir es un conjunto convexo con una fórmula cerrada, y no depende del número de niveles. Arriba se puede explorar: cada clic pide una fundamental y un armónico ; dentro de la zona azul aparece la onda que lo consigue y, fuera, la recta que demuestra que no existe.

La pregunta: qué coeficientes se pueden conseguir

Una onda entre y , con simetría de media onda, tiene coeficientes de Fourier

y lo mismo con cosenos. Con varios armónicos a la vez, el vector de coeficientes es , donde reúne los senos y cosenos de los armónicos que interesan. La pregunta es qué vectores se pueden obtener eligiendo : el conjunto alcanzable. Un objetivo (por ejemplo, fundamental 0,8 y el 5.º a cero) tiene solución si y solo si está dentro.

En 2020: programación dinámica

El planteamiento de entonces era el natural en control: discretizar el semiperiodo en pasos, , y reconstruir hacia atrás desde el origen la región desde la que todavía se puede llegar. Para describir su borde se usaban direcciones : en cada paso, el borde en la dirección avanza . Con eso se puede dibujar la región en dos o tres dimensiones, pero en más dimensiones una rejilla de estados no escala.

La respuesta exacta: un conjunto convexo

Esa misma fórmula, sin discretizar, es exactamente la descripción del conjunto alcanzable. Como depende linealmente de y se mueve en un intervalo, el conjunto es convexo, y su borde en la dirección está a una distancia

que se alcanza con la onda . Un objetivo es alcanzable si y solo si para todas las direcciones . En dos dimensiones esto dibuja la región entera; en diez dimensiones (la fundamental y cuatro armónicos, con senos y cosenos), sigue siendo un problema convexo pequeño, no una rejilla.

Tres regiones convexas azules, una por pareja de armónicos (1 y 3, 1 y 5, 1 y 7), con la fundamental en el eje horizontal y el armónico en el vertical. Cada una tiene una esquina, marcada en ámbar, que corresponde a la onda cuadrada, y un segmento verde horizontal que llega hasta 1,120, 1,218 y 1,245 respectivamente.
El conjunto alcanzable con dos armónicos. La esquina ámbar es la onda cuadrada (la mayor fundamental posible, 4/π, pero con el armónico que le toque). El segmento verde es lo que interesa en la eliminación de armónicos: la fundamental que se puede pedir con el armónico a cero.

La mayor amplitud que se puede pedir con los armónicos elegidos a cero es la distancia hasta el borde a lo largo del eje de la fundamental:

un programa lineal en cuanto se discretiza la integral. Para el caso de la primera parte (eliminar 5, 7, 11 y 13) da 1,1704: el mismo límite que habíamos encontrado barriendo la amplitud, entre 1,169 y 1,170. Cada conjunto de armónicos tiene el suyo:

Armónicos eliminadosMayor fundamental posible
ninguno (onda cuadrada)1,2732 (= 4/π)
51,2176
5, 71,1884
5, 7, 11, 131,1704
3, 9, 13, 171,1001
3, 5, 7, 91,0311

Eliminar armónicos bajos cuesta más amplitud que eliminar altos: el 3.º es el que más recorta.

Por qué el número de niveles no importa

El conjunto alcanzable se ha calculado con en todo el intervalo , sin niveles. ¿Por qué entonces coincide con lo que consigue una escalera de 3 o de 5 niveles? Por un resultado clásico, el teorema de convexidad de Lyapunov: lo que se alcanza con continuo en es exactamente lo mismo que se alcanza con que solo vale o . Los puntos del borde, de hecho, ya los consigue una onda de dos niveles (el signo de ).

Así que cualquier conjunto de niveles que incluya llega exactamente igual de lejos: por eso el 1,17 no cambiaba. Lo que sí cambia con los niveles es cómo se llega: con menos niveles hacen falta más conmutaciones para imitar los valores intermedios. En el visor se ve al cambiar entre 2, 3 y 5 niveles: la zona azul no se mueve, la onda sí.

El certificado: la recta roja

Cuando el objetivo está fuera, el resolvedor de la primera parte (el dual, con su vector ) no converge a nada: crece sin límite, como . Pero no crece en cualquier dirección: crece justo en la dirección de una recta que deja el objetivo a un lado y todo el conjunto alcanzable al otro, . Esa recta es la demostración de que no hay ninguna onda que lo consiga, y es la que dibuja el visor en rojo.

Dos niveles: la penalización lineal

En la primera parte, la penalización que fuerza la escalera (la parábola a trozos) no servía para dos niveles: entre y es plana. Las diapositivas de 2020 usaban otra, lineal: o . Con ella, el principio del máximo da directamente un control de dos valores, según el signo de : la eliminación de armónicos clásica de dos niveles. Las dos versiones dan las dos familias de soluciones simétricas.

Cuatro mapas de bandas azules y ámbar. El eje horizontal es la fundamental, de −1 a 1, y el vertical el ángulo en el cuarto de periodo. Arriba, eliminando 3, 5, 7 y 9, cinco bandas casi horizontales que cambian suavemente; abajo, eliminando 7, 9, 11 y 13, bandas que se ramifican hacia −0,55 y 0,55. A la izquierda la penalización −u, a la derecha +u, que son reflejos una de otra.
Los mapas de las diapositivas de 2020, recalculados con el resolvedor dual: cada columna es la onda de dos niveles para una fundamental. Los 1608 casos (cuatro conjuntos de armónicos, dos penalizaciones, 201 amplitudes) se resuelven con error 10⁻⁶ en los armónicos.

Con pocas conmutaciones, los niveles sí importan

Que el conjunto sea el mismo con cualquier número de niveles tiene letra pequeña: vale si se puede conmutar todo lo que haga falta. Cada conmutación son pérdidas en el convertidor, así que la pregunta práctica es otra: ¿qué se alcanza con N conmutaciones por cuarto de periodo? Ahí los niveles cambian el dibujo por completo.

Cuadrícula de quince paneles: filas para 2, 3 y 5 niveles y columnas para 1, 2, 3, 4 y 6 conmutaciones por cuarto de periodo. En cada uno, el contorno azul del conjunto completo y, rellena, la parte alcanzable. Con una conmutación solo hay curvas. Con dos niveles, dos conmutaciones ya rellenan casi todo; con tres niveles aparece una forma de pajarita que se rellena hacia cuatro conmutaciones; con cinco niveles, una banda ondulada alrededor del eje horizontal que crece despacio.
Lo alcanzable en el plano (b₁, b₅) con N conmutaciones por cuarto, subiendo o bajando un nivel cada vez (relleno), frente al conjunto completo (contorno). Con una sola conmutación no hay región, solo curvas. Con más niveles cada salto es más pequeño y hacen falta más para llegar a los bordes, pero lo alcanzable se concentra alrededor de b₅ = 0: justo donde trabaja la eliminación de armónicos.

Con dos niveles cada salto va de −1 a +1, y con dos conmutaciones ya se cubre casi todo. Con tres niveles sale una pajarita que se rellena hacia las cuatro conmutaciones. Con cinco, una banda ondulada que tarda en crecer: para poner mucho 5.º armónico hay que oscilar de −1 a +1, y con saltos de medio nivel eso cuesta muchas conmutaciones. Pero lo que interesa en la eliminación de armónicos es el eje horizontal (el armónico a cero), y ahí las bandas multinivel están centradas: un convertidor multinivel llega con pocas conmutaciones a lo que se le pide, y lo que no puede hacer es lo que nadie quiere.

La partícula en la caja que se encoge

El conjunto alcanzable también se puede ver en movimiento. Tomando como estado lo que falta por conseguir de cada coeficiente, , el problema es llevar un punto (la partícula) hasta el origen en el instante . Se mueve con velocidad : el nivel elige hacia dónde y , que gira, curva la trayectoria. Y el conjunto desde el que todavía se puede acabar es una caja convexa que se encoge con el tiempo, , hasta reducirse al origen. Mientras la partícula esté dentro, hay solución.

Izquierda: la solución óptima (el dual). La partícula lleva una brújula fija, q, y cambia de nivel cuando la dirección de movimiento D(t), que gira, cruza un umbral respecto a ella: 6 conmutaciones y llega al centro justo a tiempo. Con el nivel 0 se queda quieta mientras la caja se cierra. Derecha: una regla sin previsión (aguantar el nivel hasta la pared): se pega al borde y conmuta 140 veces.

La lección de la animación es que rebotar bien exige previsión. Esperar a la pared no funciona: al tocarla, el único control que no se sale es el extremo, y la partícula queda pegada conmutando sin parar; dejarle margen tampoco, porque una caja encogida a proporción no es segura. La previsión es exactamente lo que da el dual de la primera parte: una dirección fija que decide todos los rebotes desde el principio.

¿Cuántas conmutaciones?

La partícula óptima rebota pocas veces, pero ¿son las mínimas? Con ecuaciones (la fundamental y los armónicos eliminados), un objetivo genérico necesita al menos conmutaciones por cuarto de periodo: con menos ángulos libres que ecuaciones no hay solución.

Tres gráficas escalonadas, una por número de ecuaciones (4, 5 y 9), del número de conmutaciones por cuarto de periodo frente a la amplitud, con una curva por número de niveles (2, 3, 5, 7 y 9) y una línea discontinua en el mínimo. Con amplitudes bajas todas están en el mínimo; con amplitudes altas y muchos niveles suben de una a cuatro conmutaciones por encima.
Conmutaciones por cuarto de la solución óptima según la amplitud. Con 2 y 3 niveles está casi siempre en el mínimo; con muchos niveles y amplitudes altas añade pulsos.
  • Con 2 y 3 niveles, casi siempre el mínimo. Cuando es impar, exactamente en todas las amplitudes; cuando es par, a veces una de más (con simetría de cuarto de onda, el número de conmutaciones decide en qué nivel acaba la onda en ).
  • Con muchos niveles, de una a cuatro de más. La solución de mínimo valor eficaz prefiere añadir pulsos si así se parece más a la sinusoide.
  • La solución con el mínimo existe, pero esta formulación no siempre puede elegirla. Buscándola por fuerza bruta (todas las secuencias de niveles) aparece en todos los casos revisados; probando otras penalizaciones convexas solo se llega a ella en un tercio o dos tercios de los casos. La razón es estructural: las soluciones de este método siguen los cruces de umbral de un polinomio trigonométrico, y muchas ondas con el mínimo de conmutaciones no son de esa forma.
  • Y no hay atajo convexo. La idea natural, penalizar la variación total de la onda, no sirve: mide cuánto recorre la onda, no cuántas veces salta (una rampa cuesta lo mismo que un escalón), y en cuanto actúa la onda deja de ser una escalera. Contar conmutaciones es combinatorio; por eso la práctica habitual fija su número y enumera secuencias.

En resumen

  • Lo que una escalera puede conseguir es un conjunto convexo con fórmula exacta, y su frontera da la mayor amplitud posible para cada conjunto de armónicos eliminados (1,1704 para el 5.º, 7.º, 11.º y 13.º).
  • Ese conjunto no depende del número de niveles; lo que cambia con los niveles es cuántas conmutaciones hacen falta para llegar a cada sitio.
  • Cuando un objetivo es imposible, la solución trae su demostración: una recta que lo separa del conjunto.
  • La formulación por control óptimo usa el mínimo de conmutaciones en los casos sencillos, pero no lo garantiza: minimizar conmutaciones es otro problema, combinatorio.
  • Todo lo anterior cabe en el navegador: el conjunto, la onda y el certificado se calculan en milisegundos.

Qué no demuestra esto

  • No es teoría nueva. Que el conjunto alcanzable de un sistema lineal con control acotado sea convexo, que su función soporte sea y el teorema de Lyapunov son resultados clásicos de teoría de control. Lo que aporta aquí es aplicarlos a la eliminación de armónicos: explican de golpe el límite de amplitud y por qué no depende de los niveles.
  • Las regiones con pocas conmutaciones son muestreadas. Salen de probar ángulos al azar para todas las secuencias de niveles, no de una fórmula; los bordes de las regiones son aproximados.
  • El estudio de conmutaciones es numérico, sobre barridos de amplitud y unos pocos casos revisados por fuerza bruta, no un teorema.
  • Los límites de la tabla son numéricos. El programa lineal discretiza la integral en 20 000 puntos; los límites son fiables hasta la cuarta cifra, y se comprobaron frente al barrido de amplitudes con el resolvedor de la primera parte.

Cómo reproducirlo

Todo está en control/she-alcanzable del repositorio de las simulaciones:

python python/alcanzable.py         # límites de amplitud por programa lineal
node web/prueba/dos_niveles.mjs     # dos niveles con penalización lineal (mapas)
python python/pocas_conmutaciones.py fig/pocas.png   # lo alcanzable con N conmutaciones
node web/prueba/particula.mjs 0.8 5 3 tmp/p.json     # la partícula (óptima y perezosa)
node web/prueba/conmutaciones.mjs   # conmutaciones de la solución óptima
python python/variacion_total.py    # la penalización de variación total (no funciona)
python python/figuras_post.py fig   # figuras del artículo
cd web && python3 -m http.server    # el visor de arriba, en local

El resolvedor es el de la primera parte (control/she-control-optimo), con la opción de penalización lineal para dos niveles.

Etiquetas: control óptimo · electrónica de potencia · optimización convexa · control

← Todos los artículos