What is the difference between optimal control and robust control?

I know that Optimal Control have the controllers:

  • LQR - State feedback controller
  • LQG - State feedback observer controller
  • LQGI - State feedback observer integrator controller
  • LQGI/LTR - State feedback observer integrator loop transfer recovery controller (for increase robustness)

And Robust Control have:

  • $H_{2}$ controller
  • $H_{\infty}$ controller

But what are they? When are they better that LQ controllers? Have the H-contollers a Kalman filter? Is the H-controllers multivariable? Are they faster that LQ-controllers?


2 Answers 2


There's a huge difference. Optimal control seeks to optimize a performance index over a span of time, while robust control seek to optimize the stability and quality of the controller (its "robustness") given uncertainty in the plant model, feedback sensors, and actuators.

Optimal control assumes your model is perfect and optimizes a functional you provide. If your model is imperfect your optimal controller is not necessarily optimal! It is also only optimal for the specific cost functional you provide! LQ optimal control is ONLY truly optimal for a completely linear plant (unlikely) and a quadratic cost index. Anything else and there's no rigorous claim to optimality.

Robust control assumes your model is imperfect. Suppose, for instance, some parameters in your model are believed to be in a certain range but are not known for sure. An $H_2$ or $H_{\infty}$ controller will decide which control signals are admissible based on the level of uncertainty in the core parameters. For example, if you have the plant $$ P(s) = \frac{1}{s+a} $$ but only know $a \in [b,c]$ for some given $b$ and $c$, a robust controller will clamp overly aggressive control signals that would risk pushing the pole at $-a$ into the right-hand plane.

  • $\begingroup$ Thanks for the good answer. I know that Optimal controllers requires a perfect, or at least, a very good model of the system. Or else, the Optimal Contol will be Bad Control. So Robust Control is more for nonlinear control? $\endgroup$
    – euraad
    Commented Jul 6, 2017 at 20:35
  • 1
    $\begingroup$ So What's the diffrence between H2 and Hinf? $\endgroup$
    – euraad
    Commented Jul 7, 2017 at 9:12
  • 1
    $\begingroup$ @DanielMårtensson the type of control you actually implement on a system has everything to do with what the system is. Generally neither optimal nor robust control are used in practice. Robust control is a better bet if you do want one of the two, since its assumptions are more realistic. Many practical systems get by with just bang-bang (your heater), proportional control, or PID. If you don't have an extensive understanding of the plant dynamics and just need to control a few signals which are not strongly coupled, go with PID. Less fancy but way more durable than anything else. $\endgroup$
    – JMJ
    Commented Jul 10, 2017 at 18:45
  • 1
    $\begingroup$ @DanielMårtensson all hydraulic and mechanical in the sense that all of the components are hydraulic or mechanical or in the sense that you want a single controller which will control all possible systems constructed from those sort of components? I know of no theory which can produce a single controller capable of achieving the later. The Kalman filter is indeed widely used, but keep in mind that it's an estimator, not a controller. If the system is observable, then you can estimate the state with a KF and use it for feedback, but the KF alone does not give you any gains. $\endgroup$
    – JMJ
    Commented Jul 10, 2017 at 20:06
  • 1
    $\begingroup$ Both $H_2$ and $H_\infty$ controllers are also optimal. Namely, they minimizes the $H_2$ and $H_\infty$ norms of the systems. Intuitively, $H_2$ minimizes the "average" system gain over all possible input signals while $H_\infty$ minimizes the "worst case" system gain over all possible input signals. $\endgroup$
    – obareey
    Commented Apr 28, 2019 at 16:25

Optimal control requires that your dynamic model of the system be perfect, whereas in reality your model is going to be nowhere close to the actual system. An incorrect model could even result in unstable system behavior.

Robust control on the other hand renders your control law impervious to modelling uncertainties thereby allowing for a realistic margin of error. The simplest and most effective robust control strategy is sliding mode control, SMC. In SMC, denote by $s \in \mathbb{R}$ a linear combination of the system's error in state, i.e.: $$s = \sum_{r = 0}^{n-1}\sigma_re^{(r)} \tag{1}$$

$\begin{align}\text{where,}& \\ &e \in \mathbb{R} : e= x - x_d \text{ is the error in system state} \\ &x_d \text{ is the desired state} \\ &e^{(r)}\text{ represents the r}^{th}\text{ derivative wrt time of }e \\ &\sigma_r\text{ are chosen such that the monic polynomial formed using them as coefficients is Hurwitz}\end{align}$

The insensitivity of SMC to model uncertainties becomes clear if we consider the following problem:

Consider that the system in consideration is given by the following dynamics, $$x^{(n)} = f(\textbf{x}) + g(\textbf{x})u\tag{2}$$ $\begin{align}\text{where,} & \\ &\textbf{x}\in\mathbb{R}^{(n-1)}: \textbf{x} = \begin{bmatrix}x \ \dot{x} \ .... \ x^{(n-1)}\end{bmatrix}^{T} \text{ is the system state} \\ &f, g \in \mathbb{R}\text{ are scalar functions assumed smooth} \\ &u \text{ is the control input}\end{align}$

For conciseness, assume that $g(\textbf{x}) = 1$, but the derivation extends trivially to the general case, and that the following relation is known, $$\mid\text{ }f - \hat{f}\mid\text{ } \leq \text{ F} \tag{3}$$

where, $\text{ }F\text{ is a constant , }\hat{f}\text{ is our estimate on the dynamics, i.e., on f. }$

Now taking derivative of (1): $$\begin{align}&\dot{s} = x^{(n)} - x_d^{(n)} + \sigma_{n-2}e^{(n-1)}\text{ + ...} \\ \implies\text{ } & \dot{s} = f + u - v\tag{from (2)}\end{align}$$

where, $v = x_d^{(n)} - \sigma_{n-2}e^{(n-1)}\text{ + ...}$

Let u = $v - \hat{f} -Ksgn(s)$ where K is a constant whose value will be made clear further. Now consider the Lyapunov function, $$\begin{align} & V = \frac{1}{2}s^2 \\ \implies\text{ } & \dot{V} = s\dot{s} \\ \implies\text{ } &\dot{V} = s(f + u - v) \\ \implies\text{ } & \dot{V} = s(f - \hat{f} - Ksgn(s))\end{align}$$

if we chose, K = F + $\eta$, where $\eta > 0$ then, $$\dot{V} \leq -\eta\mid{s}\text{ }\mid$$

Thus, by Lyapunov theory we have finite convergence of $s$ to $0$. How does this help? When $s = 0$, from (1), $$e^{(n-1)} + \sum_{r = 0}^{n-2}\sigma_re^{(r)} = 0$$ which represents a stable error dynamics, which asymptotically dies down. Thus, we have formulated a control law that does its best to "cancel" out the dynamics (by using our estimate) and then we have also taken care of the uncertainty.

There is tons of literature on SMC and it is definitely worth a read. Rate of convergence is decided by your choice of the parameters and you cannot really compare it to optimal controllers as its a whole different ballpark.

  • $\begingroup$ So what's the reason why Optimal Control is more used that Robust Control? $\endgroup$
    – euraad
    Commented Jun 26, 2018 at 18:23
  • $\begingroup$ As far as SMC is concerned, it has a lot of undesirable behaviour. The control law is discontinuous in $s$, and thus there is occurence of high frequency oscillations called "chattering" which can damage actuators, or even excite unmodelled dynamics. $\endgroup$
    – BabaYaga
    Commented Jun 26, 2018 at 18:26
  • $\begingroup$ Also, as far as practical implementation is concerned, even PID can control a highly nonlinear system like the quadrotor with incorrect model parameters, but its not the "right" way to do it. But when the industry involved has the resources, its always preferred to do an extensive system identification, linearise the system, and then use linear or optimal control methods, like in aircraft, where the dynamics are linearised about every operating point. $\endgroup$
    – BabaYaga
    Commented Jun 26, 2018 at 18:27
  • $\begingroup$ You mean that the industri using adaptive controllers? $\endgroup$
    – euraad
    Commented Jun 26, 2018 at 18:32
  • $\begingroup$ Adaptive controllers are another class of nonlinear controllers. In the simplest case if your dynamics are in a particular form, you can use pure adaptive control. However it can also be coupled with fuzzy systems or neural networks to create truly powerful controllers. But one should remember that these are, as of now, of little practical use. If you want a better idea about adaptive control, best to read the literature or you could ask a new question. I'd be happy to answer. $\endgroup$
    – BabaYaga
    Commented Jun 26, 2018 at 18:34

You must log in to answer this question.

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