12
$\begingroup$

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?

$\endgroup$

2 Answers 2

14
$\begingroup$

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.

$\endgroup$
15
  • $\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
    Jul 6, 2017 at 20:35
  • $\begingroup$ If I require MIMO control with an integrator and a kalman filter. Is Robust Control good for me then? Or is Robust Control only for SISO systems or 2-DOF systems? $\endgroup$
    – euraad
    Jul 6, 2017 at 20:50
  • $\begingroup$ @DanielMårtensson nonlinear control is its own thing, although there are robust nonlinear controllers. $H_n$ control for all numbers $n$ would assume a linear, MIMO plant model. Keep in mind that both are complicated to actually implement. Robust control is typically more practical, but there's also a lot of good ways to reduce MIMO to SISO based on the timeconstants of the dynamic modes. Look up sequential loop closure in the context of MIMO autopilots to see more of what I'm talking about. $\endgroup$
    – JMJ
    Jul 6, 2017 at 21:34
  • $\begingroup$ So Robust Control is better that Optimal Control? Have Robust Control a kalman filter and MIMO? How more difficult is Robust Control compered to Optimal Control? Robust Control is most only SISO? $\endgroup$
    – euraad
    Jul 7, 2017 at 5:56
  • $\begingroup$ So What's the diffrence between H2 and Hinf? $\endgroup$
    – euraad
    Jul 7, 2017 at 9:12
3
$\begingroup$

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.

$\endgroup$
6
  • $\begingroup$ So what's the reason why Optimal Control is more used that Robust Control? $\endgroup$
    – euraad
    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
    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
    Jun 26, 2018 at 18:27
  • $\begingroup$ You mean that the industri using adaptive controllers? $\endgroup$
    – euraad
    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
    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 .