# Augmented nonlinear state space model for nonlinear model predictive control?

Assume that we have a discrete state space model:

$$x(k+1) = Ax(k) + Bu(k)\\ y(k) = Cx(k) + Du(k)$$

And we want to use optimization to minimize this cost function.

$$J =\sum_{k=0}^{n}(x_k^TQx_k + u_k^TRu_k)$$

Where the states $x_k$ can be found from the augmented state space model.

$$\begin{bmatrix} x_0\\ x_1\\ x_2\\ x_3\\ \vdots\\ x_{n} \end{bmatrix} = \begin{bmatrix} A\\ A^2\\ A^3\\ A^4\\ \vdots\\ A^{n-1} \end{bmatrix}x_0+\begin{bmatrix} B & 0 & 0 & 0 & \dots & 0\\ AB & B & 0 & 0 & \dots & 0\\ A^2B & AB & B & 0 & \dots& 0\\ A^3B & A^2B & AB & B & \dots& 0\\ \vdots & \vdots & \vdots &\ddots &\ddots & 0\\ A^{n-2}B & A^{n-3}B & A^{n-4}B & A^{n-5}B & \dots & B \end{bmatrix} \begin{bmatrix} u_0\\ u_1\\ u_2\\ u_3\\ \vdots\\ u_n \end{bmatrix}$$

But what if I have a nonlinear state space model:

$$x(k+1) = A(x(k), u(k)) + B(x(k), u(k))\\ y(k) = C(x(k), u(k)) + D(x(k), u(k))$$

How can I create the augmented state space model, if I want a perfect linearization?

Because, when I linearize a state space model:

$$\dot x = f(x, u)$$

I need to linezarise the model in (0,0) by using first talyor series.

$$f_L(x,a) = f(a) + \dot f(a,u) (x-a)$$

Where $f(a) = 0$ and $\delta = (x-a)$

So the new linear state space model will be:

$$\dot x \delta = Ax\delta + B u\delta$$

Where $A = \dot f(a,u)$.

But what if I not use first taylor series? How can I then create the nonlinear augmented state space model?

Can I create the nonlinear augmented state space model like this:

$$\begin{bmatrix} x_0\\ x_1\\ x_2\\ x_3\\ \vdots\\ x_{n} \end{bmatrix} = \begin{bmatrix} \bar A\\ \bar A^2\\ \bar A^3\\ \bar A^4\\ \vdots\\ \bar A^{n-1} \end{bmatrix}+\begin{bmatrix} B & 0 & 0 & 0 & \dots & 0\\ AB & B & 0 & 0 & \dots & 0\\ A^2B & AB & B & 0 & \dots& 0\\ A^3B & A^2B & AB & B & \dots& 0\\ \vdots & \vdots & \vdots &\ddots &\ddots & 0\\ A^{n-2}B & A^{n-3}B & A^{n-4}B & A^{n-5}B & \dots & B \end{bmatrix}$$

Where $$\bar A = A(x(k_0), u(k))$$ $$A = A(x(k_0), u(k))$$ $$B = B(x(k_0), u(k))$$

?

• Are you asking what the nonlinear prediction model is in a discrete-time representation of an optimal control problem that really wants to address an underlying continuous-time process? – Johan Löfberg May 29 '18 at 16:10
• @JohanLöfberg Yes. I asking about the discrete time representation, but the linearizing is different. Well, first it need to be a continuous time representation model, then it need to be linearize and then turn to discrete time. The linearizion is the question here. Can I turn the continuous time model to discrete without to linearize the system without first taylor series/jacobian? – Daniel Mårtensson May 29 '18 at 17:15
• For the nonlinear state-space model $\dot{x}(t) = f(x(t),u(t))$, the discret-time nonlinear model, under zero-hold input assumption, is given by $x(t+T) = \int_{t}^{t+T}f(x(\tau,u(t))d\tau$, i.e., no simple formula if that is what you are looking for. If you linearize $f$ (around which input?...) you get the standard $e^{AT}$ expressions etc – Johan Löfberg May 29 '18 at 18:28
• @JohanLöfberg So nonlinear prediction is far more difficult that it sounds like? Maybe I should stay at linear prediction instead.... – Daniel Mårtensson May 29 '18 at 18:40
• Nonlinear predictions are needed when linear aren't enough. A non-answer, but impossible to specify better. – Johan Löfberg May 29 '18 at 18:51