3 votos

¿Cómo puedo minimizar la parte real de las raíces de esta función involucrando a ambos $x$ y $e^x$ ¿condiciones?

La pregunta

Tengo una función $D(s) = s^2 + c s + k + K_d s e^{-s} + K_p e^{-s}.$ Los valores de $c$ y $k$ son fijos, pero puedo elegir $K_d$ y $K_p$ . ¿Cómo puedo elegir estos dos valores para minimizar $\max \{ \operatorname{Re}(s) : D(s) = 0 \}$ ?

Motivación

Estoy escribiendo un programa de piloto automático para un videojuego de simulación de vuelo. Dada la información sobre el estado actual de la aeronave, intenta calcular las entradas de control de vuelo que lo pondrán en un estado deseado.

Estoy usando Controladores PID para conseguirlo. Sin embargo, es difícil que funcionen en la práctica. La razón principal es que los aviones son intrínsecamente oscilantes en varios aspectos, y los parámetros PID mal elegidos exacerban estas oscilaciones. Intentar encontrar parámetros PID que controlen la aeronave eficazmente sin producir oscilaciones es muy tedioso.

Para intentar calcular los parámetros de forma automática, he decidido examinar un problema de control "de juguete" cuyo comportamiento es similar al de los aviones del videojuego.

Problema

En el problema "de juguete", el sistema es un oscilador armónico amortiguado. El oscilador es accionado por un controlador PD que intenta llevar la posición del oscilador a $0$ . Sin embargo, el controlador sufre un retraso de $1$ segundo.

La ecuación diferencial que describe este sistema es

$$f''(t) = - c f'(t) - k f(t) - K_d f'(t - 1) - K_p f(t - 1).$$

Aquí, el $c$ representa la fuerza de amortiguación y el término $k$ representa la fuerza restauradora. El $K_d$ y $K_p$ términos forman la fuerza motriz; el $K_d$ término intenta frenar el movimiento del sistema, y el $K_p$ plazo intenta empujar la posición del sistema hacia $0$ . Las constantes $c$ y $k$ no se puede cambiar, pero podemos seleccionar $K_d$ y $K_p$ .

Podemos encontrar la transformada de Laplace de $f$ :

$$s^2 F(s) - s f(0) - f'(0) = -c (s F(s) - f(0)) - k F(s) - K_d (s e^{-s} F(s) - f(-1)) - K_p e^{-s} F(s)$$ $$s^2 F(s) + c s F(s) + k F(s) + K_d s e^{-s} F(s) + K_p e^{-s} F(s) = s f(0) + f'(0) + c f(0) + K_d f(-1)$$ $$F(s) = \frac{s f(0) + f'(0) + c f(0) + K_d f(-1)}{s^2 + c s + k + K_d s e^{-s} + K_p e^{-s}}$$

Si entiendo bien la transformada de Laplace, el sistema converge siempre que todos los polos de $F(s)$ tienen una parte real negativa; y sufre oscilaciones divergentes siempre que al menos uno de los polos de $F(s)$ tiene al menos una parte real positiva.

Así, el comportamiento está determinado por la raíz más a la derecha de $s^2 + c s + k + K_d s e^{-s} + K_p e^{-s}$ . Si la parte real de esta raíz es negativa, el sistema convergerá. Además, cuanto más cerca esté la parte real del infinito negativo, más rápidamente convergerá el sistema. Por lo tanto, queremos elegir $K_d$ y $K_p$ para que la parte real de la raíz más a la derecha sea lo más pequeña posible.

De ahí la pregunta que encabeza este post.

Mis pensamientos

La ecuación $s^2 + c s + k + K_d s e^{-s} + K_p e^{-s} = 0$ no parece admitir una solución elemental. Probablemente podría encontrar sus raíces utilizando algún tipo de búsqueda numérica; ¿es ésta la mejor manera?

Aunque tuviera una forma rápida de calcular las soluciones de esta ecuación, tendría que realizar otra búsqueda para encontrar la que minimiza la parte real máxima. Si tuviera que realizar búsquedas anidadas, entonces todo el proceso podría volverse muy lento.

Jugando con la función en calculadoras gráficas, parece que suele tener tres raíces cerca del origen (no necesariamente distintas). ¿Esta función siempre tiene exactamente tres raíces cerca del origen cuando $K_d$ y $K_p$ no son ambos cero?

Si una búsqueda numérica es el mejor camino para ambas partes del problema (localizar las raíces y minimizarlas), tal vez el mejor enfoque va a ser utilizar el descenso de gradiente en el bucle externo para minimizar las raíces, y el método de Newton en el bucle interno para localizar las raíces.

3voto

MachineLearner Puntos 342

Un método habitual para tratar los retrasos temporales en los sistemas continuos es utilizar el Aproximación de Padé . Sustituir las funciones exponenciales por la siguiente aproximación de Padé.

$$\exp(-s)=\dfrac{\exp(-s/2)}{\exp(s/2)}\approx \dfrac{1-s/2+1/2!(s/2)^2-1/3!(s/2)^3+ ... + 1/m!(-s/2)^m}{1+s/2+1/2!(s/2)^2+1/3!(s/2)^3+ ...+1/m!(s/2)^m}.$$

Puede aumentar gradualmente $m$ y tratar de encontrar condiciones para los polinomios.

Otro método sería utilizar el criterio de Nyquist porque puede manejar los retrasos. Pero habría que fijar algunos de los parámetros.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X