1

I have a simple question. What's the difference in behaviour between saturation limit and constrained limit in control theory?

We say that we got this objective function:

$$J_{min} = \frac{1}{2}x^THx + c^Tx $$ With subject to:

$$lb <= x <= ub$$

And then we got this saturation limit, where $u$ is input signal:

$$x = sat(u, lb, ub)$$

Will this be the same in practice or does the quadratic optimazation give a more smoother behaviour in SISO case?

euraad
  • 3,082
  • Saturation limit is a physical limit that is not considered in your optimization scheme. Hence the optimal unsaturated input does not correspond to the optimal saturated input. – percusse Jul 06 '18 at 13:21
  • @percusse Yes, I know. How about the signal behaviour? Will it be smoother? – euraad Jul 06 '18 at 13:58

1 Answers1

1

No, it will not be the same except in trivial cases. If it was the same, we would not spend so much effort on developing efficient quadratic programming solvers.

They will have the same smoothness properties (piecewise affine over polytopic regions, i.e. not smooth)

Johan Löfberg
  • 9,797
  • 1
  • 17
  • 15
  • But isin't the smoothness the head goal with constraints? – euraad Jul 11 '18 at 11:46
  • Absolutely not. The reason we solve constrained problems is because we want the input and dynamics to satisfy various constraints. – Johan Löfberg Jul 11 '18 at 16:28
  • What happen if we have saturation? The system can goes unstable? – euraad Jul 11 '18 at 18:40
  • Yes, that can happen (although that is something that can happen regardless of controller, an unstable system with saturation will always have regions where stability is lost). With a controller which takes constraints into account in a predictive fashion, you can improve performance and behavior. – Johan Löfberg Jul 12 '18 at 07:11
  • Thank you for your good answer. I have a last question: How expensive is MPC? I'm mean if it was easy to set up an MPC, it would replace all controllers in the world such as MRAC, STR, LQR, MVC, PID etc. When I think about MPC, I tinking about a computer with a advanced computer software such as MATLAB and not a tiny microcontroller(ATmega, ARM 32-bit) with embedded software who comes from a C-generated simulation. I know that KJÅ wrote the book "Adaptive Control" in the 80/90's and much have change since then. So his knowledge could not be obsolete? I really like adaptive controllers. – euraad Jul 12 '18 at 13:40
  • Much more expensive than LQ etc of course, as you have to do matrix-vector operations at-least. A simple first-order algorithm might require some hundred iterations where you perform matrix-vector multiplications of size in the order of $Nm$ where $N$ is the prediction horizon and $m$ is the number of inputs (i.e. quadratic complexity in $Nm$), or a second-order method which would require matrix operations (cubic complexity) of matrices of same dimensions, but far fewer of them. On a modern machine, you can solve small to medium size MPC problems in, say, 100Hz or so, without being too clever. – Johan Löfberg Jul 12 '18 at 14:51
  • I thougth it only was to set the lower bounds and upper bounds limits on the input signal and have a simple linear model and choose the prediction horizon equal as control horizon, then the MPC is ready to go. Or it might take days to tune in a MPC? – euraad Jul 12 '18 at 15:10
  • Tuning MPC is like tuning any other controller, such as LQ where you tune the weights. – Johan Löfberg Jul 12 '18 at 15:15
  • Ok. I have allways heard that MPC is so expensive that it not worth to implement it on small objects such as robots, pumps, AC cooler etc. Only large factorys who produce gas e.g. – euraad Jul 12 '18 at 15:17
  • One good thing I know with optimazation is that MPC can handle non-minimum phase systems, which is very difficult at "normal" controllers. – euraad Jul 12 '18 at 15:20