This is MRAC - Model Reference Adaptive Control for SISO systems.

$G_m(s)$ is our reference model. It's is a first order system because they don't have overshoot. $G_m(s)$ is a desired wish how then output $y$ should behave. $\gamma > 0$ is the tuning parameter and $G(s)$ is our unknown plant.

In other words. This is a PI-regulator, where the $P$ is also an integral. But still adaptive. MRAC is the most used adaptive regulators becuase it it's the simpliest of them all. It works for almost all systems. But must used in slow systems that slowly changes over time.

enter image description here

The formula for MRAC is:

$$u = u_c(t)\int (-\gamma u_c(t) e(t)) - y(t)\int (\gamma y(t) e(t))$$


If I want to apply this to MIMO systems. How should I change MRAC then?


1 Answer 1


Although there exist papers on mimo MRAC, the theory hasn't in my opinion progressed very much. That is because MRAC depends on cancelling zeroes, an approach that is questionable already for siso systems, and messier in the mimo case.

I'd say that, until more readily applicable directo adaptive control theory is developed, one would be better off with indirect adaptive control for multivariable systems - combine some type of parameter estimation with certainty-equivalence feedback.

This is just my opinion, if someone knows of successful uses of multivariable MRAC I'd be interested.

  • 1
    $\begingroup$ Thank you four your answer. I have tried parameter estimation via CControl library from my GitHub github.com/DanielMartensson/CControl and it works. But only in a ideal enviroment. Parameter estimation in real time systems work very poorly and if a model being identified, then the model is very bad. MRAC for SISO systems works great because it's so easy to tune in. There is a lack of information about MIMO MRAC, but I have spoken to a PhD about MIMO MRAC and he told me that the reason of the lackness is because researchers want to have it advanced, and not easy. $\endgroup$
    – euraad
    Commented Jun 3, 2021 at 11:39
  • $\begingroup$ The reason why MIMO MRAC is not more advanced, in my opinion, is that MRAC relies on canceling the model's zeros, something that is unachievable in many cases and undesirable in general. MRAC is a neat trick for the minimum-phase plants for which it was designed, but is hard to generalize and tricky to make work in the real world. $\endgroup$
    – Pait
    Commented Jun 4, 2021 at 14:27
  • $\begingroup$ Thank you for your reply. So in SISO case, the controller will tune in if the $u_c$ signal is a fixed step? Sooner or later in other words. $\endgroup$
    – euraad
    Commented Jun 4, 2021 at 18:44
  • 1
    $\begingroup$ By thw way! Can you change your answer so other people would understand what you mean by the difficulties of MIMO MRAC for example, canceling the poles? :) Best regards. $\endgroup$
    – euraad
    Commented Jun 5, 2021 at 11:05

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .