Minimum Energy Control

Поделиться
HTML-код
  • Опубликовано: 3 мар 2021
  • We use our intuition from the least norm least squares problem to find the input that drives our system to the origin with the least energy

Комментарии • 6

  • @mohamedelaminenehar333
    @mohamedelaminenehar333 3 года назад +1

    Good work sir

  • @mhdadk
    @mhdadk Год назад

    Thanks a lot for this very insightful video! I have a question that I would appreciate your answer to.
    It seems to me that the relationship between the controllability problem and the Controllability Grammian (CG), rather than being introduced from thin air as done in most control theory textbooks, can be motivated from the minimum energy control problem. That is, to determine controllability on the interval [t_0,t_f], we want to know if the following search problem has a solution (in the general linear time-varying setting):
    find u(t)
    s.t. -x_0 = \int_{t_0}^{t_f} \Phi(t_0,\tau) B(\tau) u(\tau) d\tau
    where x_0 is the initial condition, t_0 is the start time, t_f is the terminal time, \Phi(t_0,\tau) is the state transition matrix from \tau to t_0, and B(\tau) is the time-varying control matrix B evaluated at \tau. This search problem seems intractable, so we instead try to solve the minimum energy problem:
    min \int_{t_0}^{t_f} u^T(\tau) u(\tau) d\tau
    s.t. -x_0 = \int_{t_0}^{t_f} \Phi(t_0,\tau) B(\tau) u(\tau) d\tau
    We then find that the solution to the minimum energy problem is:
    u*(t) = B(t)' \Phi(t_0,t)' W_c(t_0,t_f)^{-1} (-x_0)
    where W_c(t_0,t_f) = \int_{t_0}^{t_f} \Phi(t_0,\tau)B(\tau)B^T(\tau)\Phi^T(\tau) d\tau is the CG on the interval [t_0,t_f]. If we translate this to the finite dimensional setting, as you did in the video, we see that
    u* = A^T (AA^T)^{-1} (-x_0)
    where A is a wide matrix with m rows and n columns, such that m < n. If the grammian AA^T is singular, then u^* does not exist. Since the image of the inner product \int_{t_0}^{t_f} u^T(\tau) u(\tau) d\tau is bounded below by the 0 trajectory, then u* won't exist only if the constraint in the minimum energy problem isn't satisfied. Since this constraint is the same constraint as the one in our original search problem, then the minimum energy problem and the search problem are equivalent. What do you think of this reasoning?

    • @richard_pates
      @richard_pates  Год назад +1

      That is an excellent way to think about it! I'm a bit unsure of the history, but I wouldn't be at all surprised if the controllability Gramain was originally discovered through this line of thinking.
      I'll also mention briefly the connection to the Gram or Gramian matrix, which is a more general concept from linear algebra.
      en.wikipedia.org/wiki/Gram_matrix
      Consider v(t)=exp(-At)B. We can think of v(t)=[v_1(t);...;v_n(t)] as the stacking up of vectors of functions v_1(t),...,v_n(t). Every element of the controllability Gramian from this video is then a 'dot product' between pairs of these vectors. Roughly speaking, these vectors are giving a basis for the state space, and invertibility of the controllability Gramian then corresponds to the connection to the inputs being rich enough to reach the entire state-space. This abstraction is not so useful from the perspective of control (as far as I'm aware), but does pop up in lots of other areas. There are often ways of speeding up computations by thinking about linear independence or least squares in this way - the most famous is probably the 'kernel trick' from machine learning. A nice connection to be aware of if your studies take you in that direction!

    • @mhdadk
      @mhdadk Год назад +1

      @@richard_pates Thank you very much for taking the time to respond! I really appreciate it.

  • @rajanimetri8377
    @rajanimetri8377 2 года назад

    Good video on "Minimum Control Energy". Sir, I have questions:
    Q1. Is it possible to demonstrate the 'minimum control energy' through some experimentation?
    Q2. How to plot minimum energy ellipsoids for different Time (t) in MATLAB or any other tool?
    Thank you.

    • @richard_pates
      @richard_pates  2 года назад

      Thank you! Nice questions, but I'm sorry I don't really know how to answer them! For Q2 I would recommend looking into some books by Stephen Boyd on convex optimization. I think I remember minimum energy ellipsoids coming up there, and maybe there are suggestions for how to compute them. For Q1 - this is tricky. The control signals derived in the video are 'open loop' (i.e. there is no feedback making sure you stay on the optimal trajectory as errors etc are introduced). If you want to implement these in practice, you should use a closed loop scheme. To explain how to do this is probably beyond the scope of the comment section! There are very strong connections between this control and model predictive control (indeed MPC generalises everything here) - so I would recommend to learn about MPC, and how to implement that!