1 Introduction

Nonlinear model predictive control (NMPC) has become the industry standard for the control of strongly nonlinear constrained multivariable processes. The major reasons for this are as follows: NMPC handles process constraints in a systematic way; it can be used to control time-delay processes; and it can also be applied to control industrial processes close to extreme operating conditions, thus satisfying tighter environmental conditions imposed by governmental agencies. NMPC differs primarily from linear model predictive control (LMPC) in the type of model used for prediction. NMPC uses a nonlinear dynamic model for prediction while LMPC uses linear dynamic model. According to the review paper by Henson on NMPC [1], some of the nonlinear dynamic models that researchers have used include: first principle (FP) model [2, 3], Volterra models [4, 5], nonlinear autoregressive model [6], artificial neural networks [7,8,9,10,11,12], block-oriented models like Wiener [13] and Hammerstein models [14], orthonormal functions like Kautz model [15] etc. Model predictive control (MPC) since its invention has permeated so many industries due to its versatility. Its applications span food, process, pharmaceuticals, agriculture, power industries, etc. Schwenzer et al. in their recent review paper [16] gave the state of the art on the theory, historical evolution, and practical applications of MPC. One key challenge of NMPC identified in their review is how to deal with the high computation burden associated with full-blown NMPC. Norambuena et al. in [17] presented the application of MPC for flux and torque control in AC machines. They demonstrated its industrial applicability using an experimental test bench. Bolzoni et al. in [18] applied MPC for the optimization of the flexibility of sustainable energy assets and illustrated its effectiveness using an experimental case study. Jelsch et al. in [19] gave a comprehensive review on the applications of MPC in the pharmaceutical industry, both simulation and real-time applications were reviewed. They opined that MPC will play a key role in the new industrial revolution termed “Industry 4.0.” Yang et al. in [20] presented the application of MPC for an energy-efficient building control. In their application, a recurrent neural network was developed to approximate MPC control law, thus providing an efficient control method for building automation. Khankalantary et al. in [21] applied MPC for the tracking of an unknown ground moving target of a 6-degree-of-freedom quadrotor. One key theoretical condition that all MPC applications highlighted above must satisfy is the stability of the closed-loop system under MPC control. Chen and Allgower in [22] proposed the QIH-NMPC approach in order to design a stability guaranteed nonlinear model predictive control algorithm in the continuous time domain. Rajhans et al. in [23] proposed the discrete time version of QIH-NMPC. The effectiveness of their methods is explained using simulation examples.

In the traditional model predictive control where either control variables, \(u\left( k \right)\), or incremental control variables, \({\Delta }u\left( k \right)\) are used as the optimization decision variables, the future control trajectory, which consists of series of impulses, is usually modeled by the convolution model: \(u^{*} \left( k \right) = \mathop \sum \nolimits_{i = 0}^{{N_{u} - 1}} u^{*} \left( {k + i} \right)\delta \left( {k - i} \right)\). Two major remarks that can be made from this type of formulation are: (1) In systems that involve rapid sampling, complicated process dynamics and/or high demands on closed-loop performance, the control horizon, \(N_{u}\) may be required to be unnecessarily too large to have a satisfactory closed-loop system response, thereby leading to a highly compute-intensive optimization problem; (2) if no constraints are imposed on the slew rate of the future control signal and/or no weights imposed on it in the cost function, this could lead to steep and fast changes in the optimal control signal obtained. The latter often causes wear and tear in the final control element and sometimes leads to instability of the control system. Even when constraints are imposed on an incremental control signal, too small values could lead to poor performance in the closed-loop system.

To address the problem above, Lee et al. in [24] proposed the method of wavelet transformation with less computation burden. The limitation of the study is that all its application examples are linear dynamic systems. Yu et al.in [25] proposed the introduction of incremental input constraints in the discrete version of QIH-NMPC formulation. The simulation results obtained by them bring its applicability and advantages to the fore. However, there is no computation advantage gained. Wang in [26, 27] proposed the use of an orthonormal function—Laguerre function in modeling the future trajectory of the control signal. Thus, the optimal control problem reduces to finding the Laguerre filter coefficients. The justification for the Wang’s method in [27] is that the optimal control sequence obtained in LMPC can be represented as the impulse response of a stable dynamic system. Laguerre functions are known to be excellent in modeling finite impulse responses. Moreover, Laguerre functions are known to have rapid exponential decay. Prior to this time, the use of Laguerre functions has been in the areas of function approximation and dynamic system modeling and control. For example, Hansson et al.in [28] used Laguerre function for approximation and smoothing of isotope count rates varying with time. Wahlberg in [29] proposed the use of Laguerre model for identification of linear stable dynamic systems. Tabatabaei and Salehi in [30] proposed fractional order PID controller design based on Laguerre function. In the proposed scheme, PID controller was expanded in terms of Laguerre basis function. The following authors used Laguerre model as the prediction model in model predictive control [31,32,33,34,35,36]. However, Wang in [26, 27] was the first to use Laguerre model to describe the future control variables trajectory in a linear model predictive control framework. Recently, there is a renewed effort by researchers in exploiting the structures of orthonormal functions for predictive control design. Khan et al. in [37], Reddy and Saha in [38,39,40] in their papers explored the use of Kautz function which is also an orthonormal basis function like Laguerre function for resonating processes identification and predictive control design. However, they only use the orthonormal basis model for system modeling and not for control signal modeling. In [41], Pinheiro and Silveira used Laguerre function-based discrete LPMC for the control of an arm manipulator. The simulation and experimental results obtained showed that the approach resulted in less computational burden. In [42] Puvvula proposed the use of Kautz function-based linear time variant MPC for the control of standalone nonlinear micro-grid. The approach resulted in reduced optimization parameters and computational load. Eskandarpour and Sharf in [43] also proposed Laguerre function-based LMPC for the path following control of a quadrotor unmanned aerial vehicle. Zhang et al. in [44] applied Laguerre function-based LMPC augmented with exponential weighting function to control electrical vehicle path tracking with reduced computation time. In [45], Laguerre function-based LMPC was applied by Gao et al.to control magnet synchronous machine with reduced computation complexity. However, this application is still on a linear system. Taparia et al. in [46] also applied Laguerre function-based LMPC for multiple product inventory systems. Saeed et al.in [47] reported an experimental application in which Laguerre function-based LMPC was applied to a fast phase shift full-bridge DC-DC converter. The application of Laguerre LMPC in [47] allowed appreciable computation time to be gained. Ławryńczuk in [48] presents an adaptive nonlinear MPC approach using the Laguerre function for control/decision variables reduction. However, successively linearized online model was used for model prediction and not the first principle nonlinear model. It has an advantage of having to solve quadratic programming problem instead of nonlinear programming problem associated with using a nonlinear model. Tatjewski in [49] presents an effective dynamic matrix control (DMC) with the Laguerre function and applied it to systems with complicated dynamics with interesting results. Resmi et al. in [50] proposed Laguerre function-based distributed model predictive control and applied it to networked autonomous systems. Their results show reduced computation complexity and communication costs. Abdullah and Rossiter in [51] proposed Laguerre function-based predictive functional control, in which the special structure of Laguerre function was exploited to improve the performance and tuning of a predictive functional controller. The efficacy of their method was demonstrated on a number of simulation case studies with complex dynamics. Liu et al. in [52] presented a LMPC approach that combines a non-minimal state space model and Laguerre function. The simulation results presented showed that the approach resulted in a reduced computation effort without sacrificing too much control performance. However, in all these afore-mentioned approaches, linear dynamic model was used as the prediction model, as it is found in [26, 27]. The performance of the LMPC in many of these works will degrade when applied to highly nonlinear systems. Hence, there is a need for an approach that utilizes a nonlinear dynamic model as the prediction model, considering the fact that nonlinear processes are ubiquitous in the process industries.

This work therefore proposes a Laguerre function-based QIH-NMPC, which is an extension of LMPC. In the proposed extension, we suggest using any nonlinear dynamic model (namely first principle or Neural network model) as the prediction model in the NMPC algorithm. The future control signal within the prediction horizon is then parameterized using the Laguerre function. Although the extension seems straightforward, the use of a nonlinear model in the MPC algorithm changes the solution procedure. The optimization problem now changes from quadratic programming to nonlinear programming. Notwithstanding, the resulting optimal control problem can still be solved using sequential quadratic programming (SQP) or any of the methods available in the literature. The advantages associated with using this approach are that: nonlinear dynamic models are used as the prediction model; a minimal number of parameters are employed in describing the control trajectory; the approach results in a smoother control signal; and the scaling factor in the Laguerre function presents an additional degree of freedom that can be adjusted to control the closed-loop system response speed. The major contribution of this work is the innovative way of integrating the Laguerre function with QIH-NMPC thus leading to an algorithm with the dual attributes of stability guaranteed and noise-filtering capability. The present work also provides some conditions and proof of the stability of the proposed method. The quasi-infinite horizon nature of QIH-NMPC enables a short prediction horizon to be used while still enjoying the advantages associated with using an infinite horizon. Thus, the proposed approach results in a considerable reduction of the computation burden.

The rest of the paper is organized as follows. In Sect. 2, we present the algorithm for QIH-NMPC design using the Laguerre function. In Sect. 3, two numerical examples are used to illustrate the applicability of the proposed method. In Sect. 4, we discuss the noticeable patterns observed in results and draw some conclusions.

1.1 Notation

Let \({\mathbb{R}}\) denote the field of real numbers, \({\mathbb{R}}^{n}\), the n-dimensional Euclidean space. \(x\) denotes the 2-norm while \(x_{P}^{2} : = x^{T} Px\) is the weighted norm, where \(P\) is an arbitrary Hermitian, positive definite matrix. To differentiate between the “real” system and the system model used for predictions within the controller, bar is used to denote model’s inputs while \(z\) is used for the system’s model states.

2 Nonlinear model predictive control using Laguerre function

2.1 Problem statement

Consider that the industrial process to be controlled, which is here called “the system” is given by the following nonlinear difference equation:

$$ x\left( {k + 1} \right) = f\left( {x\left( k \right),u\left( k \right)} \right) $$
(1)

where \( x\left( k \right)\in{\mathbb{R}}^{{n_{x} }}\) and \( u\left( k \right)\in{\mathbb{R}}^{{n_{u} }}\) are the system states and control inputs, respectively. Consider that the nonlinear discrete-time model for the system in Eq. (1) is given as Eq. (2) for the purpose of predictive controller design

$$ z\left( {k + 1} \right) = f\left( {z\left( k \right),\overline{u}\left( k \right)} \right) $$
(2)

where \( z\left( k \right)\in{\mathbb{R}}^{{n_{x} }}\) is the model prediction of the system states, the bar on \(u\left( k \right)\) indicates the value of the control signal in the system model. The control objective is to stabilize the system at the equilibrium point \( f\left( {0,0} \right) = 0\) while ensuring that the control input stays within its bounds and makes cautious moves.

The following assumptions were made concerning the system modeled by Eq. (2)

  1. (A1)

    \(f: {\mathbb{R}}^{{n_{x} }} \times {\mathbb{R}}^{{n_{u} }} \to {\mathbb{R}}^{{n_{x} }}\) is twice continuously differentiable and \(f\left( {0,0} \right) = 0\), where \( 0\in{\mathbb{R}}^{n}\) is an equilibrium of the system.

  2. (A2)

    The sets \({\mathcal{X}} \subset {\mathbb{R}}^{{n_{x} }}\), \({\mathcal{U}} \subset {\mathbb{R}}^{{n_{u} }}\) and \(\Delta {\mathcal{U}} \subset {\mathbb{R}}^{{n_{u} }}\) are compact and the point \(\left( {0,0} \right)\) lies in the interior of the set \({\mathcal{X}} \times {\mathcal{U}}\).

  3. (A3)

    The system states \(\left\{ {x\left( k \right):k = 0,1,2,..} \right\}\) are perfectly measurable.

2.2 QIH-NMPC formulation

Quasi-infinite horizon model predictive control (QIH-NMPC) [22] is one of the ways of designing NMPC to guarantee closed-loop stability [53, 54]. In the stability paradigm of NMPC, an infinite horizon is usually recommended in order to ascertain stability theoretically. However, this may be practically impossible as it may lead to highly compute-intensive control law. In order to circumvent the use of an infinite-horizon while still ascertaining stability, Chen and Allgower in [22] introduced the QIH-NMPC formulation. The term quasi-infinite horizon was used for this formulation because the terminal cost component of the cost index in Eq. (3b) provides a bound that extends the prediction horizon to an almost infinity.

The quasi-infinite horizon nonlinear model predictive control (QIH-NMPC) problem is thus posed as: At any instant \(k\), let \(\Delta \overline{U}\left( k \right) := \left\{ {\Delta \overline{u}\left( k \right),\Delta \overline{u}\left( {k + 1} \right), \ldots ,\Delta \overline{u}\left( {k + N_{p} - 1} \right)} \right\}\) be vector of future incremental control inputs.

The general QIH-NMPC problem consists of solving an optimal control problem posed as Eq. (3)

$$ \mathop {\min }\limits_{{\Delta \overline{U}\left( k \right)}} {\mathcal{I}}\left( {z\left( k \right),\Delta \overline{U}\left( k \right)} \right) $$
(3a)

where

$$ {\mathcal{I}}\left( {z\left( k \right),\Delta \overline{U}\left( k \right)} \right) = \mathop \sum \limits_{i = 0}^{{N_{p} - 1}} l\left( {z\left( {k + i} \right),\Delta \overline{u}\left( {k + i} \right)} \right) + V_{f} \left( {z\left( {k + N_{p} } \right)} \right) $$
(3b)
$$ l\left( {z\left( {k + i} \right),\Delta \overline{u}\left( {k + i} \right)} \right) = \left( ||{z\left( {k + i} \right)||_{{W_{x} }}^{2} + ||\Delta \overline{u}\left( {k + i} \right)||_ {{W_{\Delta u}}}^{2}}\right) $$
(3c)
$$ V_{f} \left( {z\left( {k + N_{p} } \right)} \right) = ||z\left( {k + N_{p} }|| \right)_{P}^{2} $$
(3d)

subject to:

$$ z\left( {k + i + 1} \right) = f\left( {z\left( {k + i} \right),\overline{u}\left( {k + i} \right)} \right)\quad {\text{for}}\;i = 0, \ldots ,N_{p} - 1 $$
(3e)
$$ z\left( k \right) = x\left( k \right) $$
(3f)
$$ z\left( {k + i} \right) \in{\mathcal{X}}\;\quad {\text{for }}i = 0, \ldots ,N_{p} $$
(3g)
$$ \overline{u}\left( {k + i} \right) \in{\mathcal{U}}\quad {\text{for}}\;i = 0, \ldots ,N_{p} - 1 $$
(3h)
$$ \Delta \overline{u}\left( {k + i} \right)\in \Delta {\mathcal{U}}\quad {\text{for}}\,\,i = 0, \ldots ,N_{p} - 1 $$
(3i)
$$ z\left( {k + N_{p} } \right) \in{\Omega } $$
(3j)
$$ \Delta u\left( {k + i} \right) = u\left( {k + i} \right) - u\left( {k + i - 1} \right) ,$$
(3k)

where \(N_{p}\) is the prediction horizon, \(l\left( {.,.} \right)\) is the stage cost function, \(V_{f} \left( . \right)\) is the terminal cost function, \(W_{x}\) and \(W_{\Delta u}\) are positive definite matrices;\( P\) is the symmetric positive definite terminal weighting matrix; \({{ \Omega }}\) represents the terminal region, i.e., \( {\Omega } = \left\{ {z \in {\mathbb{R}}^{{n_{x} }} |z^{T} Pz \le \alpha } \right\}\). The computation of the terminal ingredients (\(P\) and \(\alpha\)) can be found in [22] for continuous-time systems; and [23, 25] for discrete-time systems.

The sets \({\mathcal{X}} \subset {\mathbb{R}}^{{n_{x} }}\), \({\mathcal{U}} \subset {\mathbb{R}}^{{n_{u} }}\) and \(\Delta {\mathcal{U}} \subset {\mathbb{R}}^{{n_{u} }}\) are compact sets containing the constraints on system’s states, \(x\), input \(u\) and incremental input, \(\Delta u\). Solving the optimization problem in Eq. (3) results in an optimal incremental control sequence:

$$ \Delta \overline{U}^{*} \left( k \right) := \left\{ {\Delta \overline{u}^{*} \left( k \right),\Delta \overline{u}^{*} \left( {k + 1} \right), \ldots ,\Delta \overline{u}^{*} \left( {k + N_{p} - 1} \right)} \right\} $$
(4)

The first control action in the sequence \(\Delta \overline{U}^{*} \left( k \right)\) is applied to the system, thus

$$ u\left( k \right) = \overline{u}^{*} \left( k \right) = \Delta \overline{u}^{*} \left( k \right) + u\left( {k - 1} \right) $$
(5)

Remark 1

In order to ensure the recursive feasibility of the optimization problem in Eq. (3), an extra terminal constraint [25]: \( Kz\left( {k + N_{p} } \right) - \overline{u}\left( {k + N_{p} - 1} \right)\in \Delta {\mathcal{U}}\) can be enforced where \(K\) is the linear state feedback control law obtained by solving linear quadratic regulator (LQR) problem.

2.3 Dynamic system modeling using Laguerre functions

According to Wahlberg in [29], the impulse response of any dynamic system can be represented by the Laguerre function of \(m{\text{th}}\) order denoted as \(z\)-transfer function:

$$ {\Gamma }_{m} \left( z \right) = \frac{{\sqrt {\left( {1 - a^{2} } \right)} }}{z - a}\left[ {\frac{1 - az}{{z - a}}} \right]^{m - 1} $$
(6)

where \(a\) is the pole of the Laguerre network and is \(0 \le a < 1\) for the stability of the network.

By taking the inverse \({Z}\)-transform of Eq. (6) the Laguerre function can be obtained in discrete form.

Equation (7) with \(k = 1,2, \ldots ,\infty\)

$$ l_{m} \left( k \right) = Z^{ - 1} \left\{ {{\Gamma }_{m} \left( z \right)} \right\} $$
(7)

The state-space realization of the above Laguerre function can be written in the discrete form:

$$ L\left( {k + 1} \right) = {\text{A}}_{L} L\left( k \right) $$
(8)

where

$$ L\left( k \right) = \left[ {l_{1} \left( k \right),l_{2} \left( k \right), \ldots ,l_{N} \left( k \right)} \right]^{T} $$
$$ A_{L} = \left[ {\begin{array}{*{20}c} a & 0 & 0 & \ldots & 0 \\ \beta & a & 0 & \ldots & 0 \\ { - a\beta } & \beta & a & \ldots & 0 \\ {a^{2} \beta } & { - a\beta } & \beta & \ldots & 0 \\ & & & & \\ {\left( { - 1} \right)^{N - 2} a^{N - 2} \beta } & {\left( { - 1} \right)^{N - 3} a^{N - 3} \beta } & \ldots & \beta & a \\ \end{array} } \right] $$
$$ \beta = 1 - a^{2} $$

The initial condition of the Laguerre function is given by:

$$ L\left( 0 \right) = \sqrt {\left( {1 - a^{2} } \right)} \left[ {\begin{array}{*{20}c} 1 & { - a} & { - a^{2} } & { - a^{3} } & \ldots & {\left( { - 1} \right)^{N - 1} a^{N - 1} } \\ \end{array} } \right] $$
(9)

where \(N\) is the dimension of the Laguerre function vector and also the number of terms used in the approximation.

2.4 Control signal trajectory description using Laguerre functions

In the traditional NMPC problem where \({\Delta }u\left( k \right)\) is the optimization decision variable, the future incremental control signal trajectory denoted \({\Delta }u\left( k \right)\), \({\Delta }u\left( {k + 1} \right)\), \({{ \Delta }}u\left( {k + 2} \right)\), \(\cdots\), \({{ \Delta }}u\left( {k + i} \right)\), \(\cdots\), \({\Delta }u\left( {k + N_{u} - 1} \right)\) represents the impulse response of a stable dynamic system and can be modeled by the convolution model:

$$ {\Delta }u\left( k \right) = \mathop \sum \limits_{i = 0}^{{N_{u} - 1}} {\Delta }u\left( {k + i} \right)\delta \left( {k - i} \right) $$
(10)

where \(N_{u}\) refers to the control horizon.

Alternatively, the future control trajectory can be modeled by a set of Laguerre functions, \(l_{1} \left( k \right),l_{2} \left( k \right), \ldots ,l_{N} \left( k \right)\). Thus, the rate of change of control signal can be represented as:

$$ \Delta u\left( {k + i} \right) \approx \mathop \sum \limits_{j = 1}^{N} c_{j} \left( k \right)l_{j} \left( k \right) = L\left( k \right)^{T} \eta \left( k \right) $$
(11)

where \(\Delta u\left( {k + i} \right) = u\left( {k + i} \right) - u\left( {k + i - 1} \right)\), \(\eta^{T} \left( k \right) = \left[ {c_{1} \left( k \right), c_{2} \left( k \right), \ldots ,c_{N} \left( k \right)} \right]\), \(N\) is the number of terms used in the expansion and \(c_{j} ,j = 1,2, \ldots ,N\) are the Laguerre filter coefficients. As \(N\) increases the expansion converges to the underlying signal \(\Delta u\left( k \right), \Delta u\left( {k + 1} \right), \Delta u\left( {k + 2} \right), \ldots ,\Delta u\left( {k + N_{u} } \right)\), where \(N_{u}\) is the control horizon in the traditional MPC.

In a vector form, Eq. (11) can be written as

$$ \Delta u\left( {k + i} \right) = L\left( k \right)^{T} \eta \left( k \right) $$
(12)

For a multi-input system, the incremental control input can be denoted as:

$$ \Delta u\left( k \right) = \left[ {\Delta \begin{array}{*{20}c} {u_{1} \left( k \right)} & {\Delta u_{2} \left( k \right)} & \ldots & {\Delta u_{{n_{u} }} \left( k \right)} \\ \end{array} } \right]^{T} $$
(13)

where \(n_{u}\) is the number of control inputs. The trajectory of each control input is modeled by a separate Laguerre function with its own pole location, \(a_{j}\) and order \(N_{j} .\) Thus,

$$ \Delta u_{j} \left( {k + i} \right) = L_{j} \left( k \right)^{T} \eta_{j} \left( k \right),\quad j = 0, \ldots ,n_{u} {\text{ and }}i = 1, \ldots ,N $$
(14)

By substituting for each incremental control input in Eq. (13) with its Laguerre equivalent, the equation can thus be written as:

$$ \Delta u\left( k \right) = \left[ {L_{1} \left( k \right)^{T} \eta_{1} \left( k \right), L_{2} \left( k \right)^{T} \eta_{2} \left( k \right), \ldots ,L_{{n_{u} }} \left( k \right)^{T} \eta_{{n_{u} }} \left( k \right)} \right]^{T} $$
(15)
$$ \Delta u\left( k \right) = \left[ {L_{1} \left( k \right)^{T} , L_{2} \left( k \right)^{T} , \ldots ,L_{{n_{u} }} \left( k \right)^{T} } \right]^{T} \eta \left( k \right) $$
(16)

where \(\eta^{T} \left( k \right) = \left[ {\eta_{1}^{T} \left( k \right), \eta_{2}^{T} \left( k \right), \ldots ,\eta_{{n_{u} }}^{T} \left( k \right)} \right]\) are the parameters to be optimized.

2.5 QIH-NMPC formulation using Laguerre function

The QIH-NMPC using Laguerre function can then be formulated thus:

At any instant \(k\), let the vector of Laguerre parameters for \(n_{u}\) number of control inputs be denoted.

$$\eta \left( k \right) := \left\{ {\eta_{1} \left( k \right),\eta_{2} \left( k \right), \ldots ,\eta_{{n_{u} }} \left( k \right)} \right\}$$
(17a)

where each input channel consists of \(N\) Laguerre filter coefficients, denoted as:

$$ \eta_{j} := \left\{ {c_{1} \left( k \right),c_{2} \left( k \right), \ldots ,c_{N} \left( k \right)} \right\},\quad j = 1:n_{u} $$
(17b)

The general QIH-NMPC problem involves solving an optimal control problem posed as Eq. (18).

$$ \mathop {\min }\limits_{\eta } {\mathcal{I}}\left( {z\left( k \right),\eta \left( k \right)} \right) $$
(18a)

where

$$ {\mathcal{I}}\left( {z\left( k \right),\eta \left( k \right)} \right) = \mathop \sum \limits_{i = 0}^{{N_{p} - 1}} l\left( {z\left( {k + i} \right),\eta \left( k \right)} \right) + V_{f} \left( {z\left( {k + N_{p} } \right)} \right) $$
(18b)
$$ l\left( {z\left( {k + i} \right),\eta \left( k \right)} \right) = \left( ||{z\left( {k + i} \right)||_{{W_{x} }}^{2} +|| L^{T} \left( {k + i} \right)\eta \left( k \right)||_{{W_{\eta } }}^{2} } \right) $$
(18c)
$$ V_{f} \left( {z\left( {k + N_{p} } \right)} \right) =|| z\left( {k + N_{p} } \right)||_{p}^{2} $$
(18d)

subject to:

$$ z\left( {k + i + 1} \right) = f\left( {z\left( {k + i} \right), L^{T} \left( {k + i} \right)\eta \left( k \right)} \right)\quad {\text{for }}i = 0, \ldots ,N_{p} - 1 $$
(18e)
$$ z\left( k \right) = x\left( k \right) $$
(18f)
$$ z\left( {k + i} \right)\in{\mathcal{X}} \quad \text{for}\, i = 0, \ldots ,N_{p} $$
(18g)
$$ z\left( {k + N_{p} } \right)\in {\Omega } $$
(18h)

2.5.1 Constraints on incremental control inputs, \(\Delta {\varvec{u}}\left( {\varvec{k}} \right)\)

For a multi-input system, the constraints on the incremental control input can be formulated as:

$$ \left[ {\begin{array}{*{20}c} {L_{1} \left( i \right)^{T} } & {o_{2}^{T} } & \ldots & {o_{{n_{u} }}^{T} } \\ {o_{1}^{T} } & {L_{2} \left( i \right)^{T} } & \ldots & {o_{{n_{u} }}^{T} } \\ \vdots & \vdots & \ddots & \vdots \\ {o_{1}^{T} } & {o_{2}^{T} } & \ldots & {L_{{n_{u} }} \left( i \right)^{T} } \\ \end{array} } \right]\eta \in {\mathcal{U}}\quad i = 0, \ldots ,N_{p} - 1 $$
(18i)

where \(\eta = \left[ {\begin{array}{*{20}c} {\eta_{1}^{T} } & {\eta_{2}^{T} } & \ldots & {\eta_{{n_{u} }}^{T} } \\ \end{array} } \right]^{T}\).

2.5.2 Constraints on control inputs, \({\varvec{u}}\left( {\varvec{k}} \right)\)

Recall that \(u\left( {k + i} \right) = \Delta u\left( {k + i} \right) + u\left( {k - 1 + i} \right)\), by using this equation repeatedly, \(u\left( {k + i} \right)\) can be expressed as:

$$ u\left( {k + i} \right) = \mathop \sum \limits_{i = 0}^{i} \Delta u\left( {k + i} \right) + u\left( {k - 1} \right) = \mathop \sum \limits_{i = 0}^{i} L\left( i \right)^{T} \eta + u\left( {k - 1} \right) $$
(18j)

The constraints on the control inputs can then be expressed as

$$ \left[ {\begin{array}{*{20}c} {\mathop \sum \limits_{i = 0}^{i} L_{1} \left( i \right)^{T} } & {o_{2}^{T} } & \ldots & {o_{{n_{u} }}^{T} } \\ {o_{1}^{T} } & {\mathop \sum \limits_{i = 0}^{i} L_{2} \left( i \right)^{T} } & \ldots & {o_{{n_{u} }}^{T} } \\ \vdots & \vdots & \ddots & \vdots \\ {o_{1}^{T} } & {o_{2}^{T} } & \ldots & {\mathop \sum \limits_{i = 0}^{i} L_{{n_{u} }} \left( i \right)^{T} } \\ \end{array} } \right]\eta + u\left( {k - 1} \right) $$
(18k)

where \(u\left( {k - 1} \right)\) is the previous control signal, and \(o_{{n_{u} }}^{T}\) is a zero vector with the same dimension as \(L_{{n_{u} }} \left( i \right)^{T}\).

Solving the optimization problem in Eq. (18) results in the optimal solution

$$ \eta^{*T} \left( k \right) := \left\{ {\eta_{1}^{T} \left( k \right),\eta_{2}^{T} \left( k \right), \ldots ,\eta_{{n_{u} }}^{T} \left( k \right)} \right\} $$
(19)

The optimal incremental control sequence can now be evaluated as:

$$ \Delta u^{*} \left( k \right):= \left\{ {L\left( 0 \right)^{T} \eta \left( k \right),L\left( 1 \right)^{T} \eta \left( k \right),L\left( 2 \right)^{T} \eta \left( k \right), \ldots ,L\left( {N_{p} - 1} \right)^{T} \eta \left( k \right)} \right\} $$
(20)

In the principle of receding horizon, out of all the control sequences obtained in Eq. (20) only the first element is implemented, the incremental control law can then be obtained as

$$ \Delta \overline{u}^{*} \left( k \right) = \left[ {\begin{array}{*{20}c} {L_{1} \left( 0 \right)^{T} } & {0_{r} } & \ldots & {0_{r} } \\ {0_{r} } & {L_{2} \left( 0 \right)^{T} } & \ldots & {0_{r} } \\ \vdots & \vdots & \ddots & \vdots \\ {0_{r} } & {0_{r} } & \ldots & {L_{{n_{u} }} \left( 0 \right)^{T} } \\ \end{array} } \right]\eta^{*} \left( k \right) $$
(21)

where \(0_{r}\) represents a zero block matrix with appropriate dimensionality.

The control input to be applied to the system is then calculated as:

$$ u\left( k \right) = \overline{u}^{*} \left( k \right) = \Delta \overline{u}^{*} \left( k \right) + u\left( {k - 1} \right) $$
(22)

Figure 1 gives the block diagram for the implementation of the proposed Laguerre-function-based QIH-NMPC while Fig. 2 gives the flow chart for the implementation of the control algorithm.

Fig. 1
figure 1

Laguerre-function-based QIH-NMPC strategy

Fig. 2
figure 2

Flow chart of the Laguerre-function-based QIH-NMPC strategy

Remark 2

The introduction of the Laguerre function in the QIH-NMPC problem, that is, Eqs. (18i) to (18k), ensures the control signal \(u\left( k \right)\) makes less aggressive and more cautious moves [26, 27].

2.5.3 Effects of Laguerre parameters on closed-loop system performance

The two Laguerre function parameters have effects on closed-loop system performance [27]. The Laguerre pole (\(a\)) determines the stability of the Laguerre network and the extent of noise filtering. The larger the Laguerre pole, \(a\) the less noisy the control signal and the closer the Laguerre function is to instability. Laguerre’s pole of zero (i.e.,\(a = 0\)) reduces the proposed method to the traditional method. The design parameter, \(N\) refers to the Laguerre order and can be viewed as the number of terms used in modeling the control signal. The more the complexity desired in the dynamic of the control signal, the larger the value of \(N\) that should be used. However, this comes at a price of increased computational time. Usually, a Laguerre order of \(N =\) 2 will work for most systems. This is because, with this parameter, the dynamics of the Laguerre filter will be rich enough to be able to model well the dynamics of the control signal of the system under control.

2.6 Nominal Stability of Laguerre function-based QIH-NMPC

In Laguerre function-based QIH-NMPC, the final control signal implemented on the plant after solving the optimal control problem posed as Eq. (18) is given as \(u\left( k \right) = \overline{u}^{*} \left( k \right)\). After applying the first element of the computed control signal sequence from Eq. (22) on the system in Eq. (1), the closed-loop system evolves as:

$$ x\left( {k + 1} \right) = f\left( {x\left( k \right),u^{*} \left( k \right)} \right) $$
(23)

To prove the nominal stability of the closed-loop system, there is need to first establish the recursive feasibility of the optimization at time \(k \ge 0\) otherwise, there is no guarantee that the designed controller will not fail as a result of the optimization problem becoming infeasible during closed loop operation.

2.6.1 Recursive feasibility of the optimization problem

The predictive controller is an iterative online control law, which requires repeated solution of the optimal control problem. There is the need for it to be feasible at any time instant, \(k \ge 0\). The optimization problem in Eqs. (18a) to (18k) is said to be feasible if it leads to at least one input profile (not necessarily optimal), \(\overline{U}\left( k \right):= \left\{ {\overline{u}^{*} \left( k \right),\overline{u}^{*} \left( {k + 1} \right), \ldots ,\overline{u}^{*} \left( {k + N_{p} - 1} \right)} \right\} \in {\mathcal{U}}\) such that the generated trajectory of Eq. (18e) satisfies the terminal inequality constraint Eq. (18h) and such that the value of the objective function Eq. (18b) is bounded. The following Lemma is given on the feasibility of the optimization problem:

Lemma 1

For the nominal system, with the availability of perfect state measurement and no disturbances, the feasibility of the open-loop optimal control problem in Eqs. (18a) and (18b) subject to constraints in Eqs. (18c) to (18k) at sampling time \(k = 0\) implies its feasibility at all time,\( k > 0\).

Proof of Lemma 1

Assuming that at sampling time \(k = 0\), the initial state of the system, \(x\left( 0 \right)\) is feasible and consider that the optimal control sequence, \(\overline{U}_{k}^{*} := \left\{ {\overline{u}_{k}^{*} ,\overline{u}_{k + 1}^{*} , \ldots ,\overline{u}_{{k + N_{p} - 1}}^{*} } \right\} = \left\{ {L\left( 0 \right)^{T} \eta ,L\left( 1 \right)^{T} \eta ,L\left( 2 \right)^{T} \eta , \ldots ,L\left( {N_{p} - 1} \right)^{T} \eta } \right\}\in {\mathcal{U}}\) exists and can be obtained by solving the optimal control problem defined by Eqs. (18a) and (18b), subject constraints given by Eqs. (18c) to (18k). This optimal control input, when applied in an open loop, drives the system model in Eq. (2) from the initial state, \(x\left( 0 \right)\) into the terminal region \({\Omega }\) along the optimal trajectory in Eq. (24), with \(z^{*} \left( {N_{p} } \right) \in {\Omega }\)

$$ z^{*} \left( {i + 1} \right) = f\left( {z^{*} \left( i \right),\overline{u}^{*} \left( i \right)} \right)\quad {\text{for }}i = 0, \ldots ,N_{p} - 1 $$
(24)

By applying the control variable obtained at sampling time \(k = 0\) on closed-loop system, that is, \(u\left( 0 \right) = \overline{u}^{*} \left( 0 \right)\), the closed-loop system state evolves as \(x\left( 1 \right) = z^{*} \left( 1 \right)\), in the absence of disturbances. Consider again the Laguerre function-based QIH-NMPC problem at sampling time, \(k = 1\), with initial condition, \(z\left( 1 \right) = x\left( 1 \right)\); the control sequence obtained at the previous sampling time is shifted by one step forward and the last element replaced by \({-}Kz\left( {N_{p} } \right)\). Therefore, the optimal control problem at sampling time \(k = 1\), will be solved with the candidate input profile as \(\left\{ {L\left( 1 \right)^{T} \eta ,L\left( 2 \right)^{T} \eta ,L\left( 3 \right)^{T} \eta , \ldots ,L\left( {N_{p} - 1} \right)^{T} \eta , {-}Kz\left( {N_{p} } \right).{ }} \right\}\), where \(K\) is the linear state feedback gain used in computing the terminal ingredients (\(P\) and \({\Omega }\)) offline. By considering the fact that the terminal region, \({\Omega }\) is invariant for the nonlinear system model controlled with the linear state feedback controller, \(K\) and \(z^{*} \left( {N_{p} } \right) \in {\Omega }\), it implies that \(z\left( {N_{p} + 1} \right) \in {\Omega }\) and \(x\left( k \right) \in {\Omega }\). Thus, the optimal control problem will be recursively feasible forever.

2.6.2 Asymptotic stability of the closed-loop system

Here, we want to establish the asymptotic stability of the closed-loop system, Eq. (23), under the Laguerre function-based QIH-NMPC, at the equilibrium point (\(f\left( {0,0} \right) = 0)\). This proof is in the same spirit with that in [53].

Theorem 1

Suppose that.

  1. (1)

    Assumptions A1–A3 are satisfied,

  2. (2)

    The Laguerre function is stable,

  3. (3)

    At the time instant, \(k = 0\), the optimization problem posed as Eq. (18) has a feasible solution,

  4. (4)

    The stage cost \(l\left( {z\left( k \right),\overline{u}\left( k \right)} \right)\) is strictly positive and is 0 only for \(l\left( {0,0} \right)\)

  5. (5)

    There exists a local control law \( - K\left( z \right) \)for which the terminal set \( {\Omega } \) is invariant, that is, the closed-loop trajectories starting inside \( {\Omega } \) remain in that set forever, and the state and input constraints are also satisfied (that is, for \( z \in {\Omega } \), it also holds that \( - K\left( z \right)\in{\mathcal{U}} \))

  6. (6)

    Terminal cost \(V_{f} \left( {z\left( k \right)} \right)\) is a Lyapunov function inside, \({\Omega }\) and also satisfies:

    $$ V_{f} \left( {z\left( {k + 1} \right)} \right){ } - V_{f} \left( {z\left( k \right)} \right) \le - l\left( {z\left( k \right), - K\left( z \right)} \right)\quad {\text{for }}z \in {\Omega }{.} $$
    (25)

Then, the nominal closed-loop system, Eq. (23) will be stable.

Proof of Theorem 1:

Given the optimal input profile, \(\overline{U}^{*} \left( k \right) := \left\{ {\overline{u}^{*} \left( k \right),\overline{u}^{*} \left( {k + 1} \right),\overline{u}^{*} \left( {k + 2} \right), \ldots ,\overline{u}^{*} \left( {k + N_{p} - 1} \right)} \right\} = \left\{ {L\left( 0 \right)^{T} \eta \left( k \right),L\left( 1 \right)^{T} \eta \left( k \right),L\left( 2 \right)^{T} \eta \left( k \right), \ldots ,L\left( {N_{p} - 1} \right)^{T} \eta \left( k \right)} \right\}\) and optimal predicted state sequence as

$$ z^{*} \left( {k + i + 1} \right) = f\left( {z^{*} \left( {k + i} \right), \overline{u}^{*} \left( {k + i} \right)} \right)\quad {\text{for }}i = 0, \ldots ,N_{p} - 1 $$
(26)
$$ z^{*} \left( k \right) = x\left( k \right) $$
(27)

The optimal value function is also given as:

$$ {\mathcal{I}}^{*} \left( {z^{*} \left( k \right)} \right) = \mathop \sum \limits_{k = 0}^{{N_{p} - 1}} l\left( {z^{*} \left( k \right),u^{*} \left( k \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p} } \right)} \right) $$
(28)

To establish the asymptotic stability of the closed-loop system under the control of Laguerre function-based QIH-NMPC, we need to show that the optimal value function \({\mathcal{I}}^{*} \left( {z^{*} \left( k \right)} \right)\) is a Lyapunov function satisfying non-increasing property below:

$$ {\mathcal{I}}^{*} \left( {z\left( {k + 1} \right)} \right) - {\mathcal{I}}^{*} \left( {z\left( k \right)} \right) < 0\quad {\text{for }}z \ne 0 $$
(29)

The optimal value function calculated at optimal control sequence \(\left\{ {L\left( 0 \right)^{T} \eta \left( k \right),L\left( 1 \right)^{T} \eta \left( k \right),L\left( 2 \right)^{T} \eta \left( k \right), \ldots ,L\left( {N_{p} - 1} \right)^{T} \eta \left( k \right)} \right\}\) and initial state \(x\left( k \right)\) is given as:

$$ {\mathcal{I}}^{*} \left( {z\left( k \right)} \right) = \mathop \sum \limits_{k = 0}^{{N_{p} - 1}} l\left( {z^{*} \left( k \right),u^{*} \left( k \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p} } \right)} \right) $$
(30)

At the next sampling time, \(\left( {k + 1} \right)\) when the state is \(z\left( {k + 1} \right)\) and the feasible (but sub-optimal) control sequence is \(\left\{ {L\left( 1 \right)^{T} \eta ,L\left( 2 \right)^{T} \eta ,L\left( 3 \right)^{T} \eta , \ldots ,L\left( {N_{p} - 1} \right)^{T} \eta , {-}Kz\left( {N_{p} } \right)} \right\}\), the sub optimal value function is as follows:

$$ {\mathcal{I}^{\prime}}\left( {z\left( {k + 1} \right)} \right) = \mathop \sum \limits_{k = 1}^{{N_{p} }} l\left( {z^{*} \left( k \right),u^{*} \left( k \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p} + 1} \right)} \right) $$
(31)

where

$$ z^{*} \left( {N_{p} + 1} \right) = f\left( {z^{*} \left( {N_{p} } \right),K\left( {z^{*} \left( {N_{p} } \right)} \right)} \right) $$
(32)

Since Eq. (31) is sub-optimal, we have:

$$ {\mathcal{I}}^{*} \left( {z\left( {k + 1} \right)} \right) \le {\mathcal{I}^{\prime}}\left( {z(k + 1} \right)) $$
(33)

The sub-optimal value function can be re-written as:

$$ {\mathcal{I}^{\prime}}\left( {z\left( {k + 1} \right)} \right) = \mathop \sum \limits_{k = 0}^{{N_{p} }} l\left( {z^{*} \left( k \right),u^{*} \left( k \right)} \right) - l\left( {z^{*} \left( 0 \right),u^{*} \left( 0 \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p} + 1} \right)} \right) + l\left( {z^{*} \left( {N_{p} } \right),u^{*} \left( {N_{p} } \right)} \right) $$
(34)

By adding \(V_{f} \left( {z^{*} \left( {N_{p} } \right)} \right)\) to both sides of Eq. (34), we have:

$$ {\mathcal{I}^{\prime}}\left( {z\left( {k + 1} \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p} } \right)} \right){ } = \mathop \sum \limits_{k = 0}^{{N_{p} }} l\left( {z^{*} \left( k \right),u^{*} \left( k \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p} } \right)} \right){ } - l\left( {z^{*} \left( 0 \right),u^{*} \left( 0 \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p + 1} } \right)} \right) + l\left( {z^{*} \left( {N_{p} } \right),u^{*} \left( {N_{p} } \right)} \right) $$
(35)

It should be noted that the first two terms on the RHS of Eq. (35) is equal to \({\mathcal{I}}^{*} \left( {z\left( k \right)} \right)\), thus Eq. (35) can be further written as:

$$ {\mathcal{I}^{\prime}}\left( {z\left( {k + 1} \right)} \right){ } = {\mathcal{I}}^{*} \left( {z\left( k \right)} \right) - l\left( {z^{*} \left( 0 \right),u^{*} \left( 0 \right)} \right) - V_{f} \left( {z^{*} \left( {N_{p} } \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p + 1} } \right)} \right) + l\left( {z^{*} \left( {N_{p} } \right),u^{*} \left( {N_{p} } \right)} \right) $$
(36)

With assumption (3), the last three terms of Eq. (36) become:

$$ - V_{f} \left( {z^{*} \left( {N_{p} } \right)} \right) + V_{f} \left( {z^{*} \left( {N_{p + 1} } \right)} \right) + l\left( {z^{*} \left( {N_{p} } \right),u^{*} \left( {N_{p} } \right)} \right) \le 0 $$
(37)

Substituting the condition in Eq. (25) into Eq. (36), we have:

$$ {\mathcal{I}}^{*} \left( {z\left( {k + 1} \right)} \right) - {\mathcal{I}}^{*} \left( {z\left( k \right)} \right) \le - l\left( {z^{*} \left( 0 \right),u^{*} \left( 0 \right)} \right) $$
(38)

In assumption (1), it is assumed that \(l\left( {z,u} \right)\) is strictly positive and is 0 only for \(l\left( {0,0} \right)\) thus, we have:

$$ {\mathcal{I}}^{*} \left( {z\left( {k + 1} \right)} \right) - {\mathcal{I}}^{*} \left( {z\left( k \right)} \right) \le 0 ,$$
(39)

which indicates that the optimal value function is strictly decreasing along the closed-loop system trajectories and thus indicating that the closed-loop system in Eq. (23) will converge to the origin, thus establishing asymptotic stability of the Laguerre function-based QIH-NMPC for the origin. Then, the closed-loop system in Eq. (23) will be asymptotically stable.

3 Numerical examples

Two numerical examples, namely an unstable nonlinear two states, single input system and a non-minimum phase four-tank system are used to illustrate the effectiveness of the proposed method. The integral of the absolute magnitude of the tracking error (IAE), the total variation (TV) of control signal [55] and the mean CPU time were computed for the responses generated for the purpose of making comparison between the methods. The IAE and TV were calculated using the following equations:

$$ {\text{IAE}} = \mathop \int \limits_{0}^{\infty } \left| {e\left( t \right)} \right|{\text{d}}t $$
(40)
$$ {\text{TV}} = \mathop \sum \limits_{k = 1}^{\infty } \left| {u_{k + 1} - u_{k} } \right| $$
(41)

where \(u_{k}\) and \(u_{k + 1}\) are controller output signals at two consecutive sampling times. TV has been known to be a good indication of the smoothness of the control action.

3.1 Two states and one input system

Consider the following nonlinear system in [22]:

$$ \dot{x}_{1} = x_{2} + u\left( {\mu + \left( {1 - \mu } \right)x_{1} } \right) $$
(42)
$$ \dot{x}_{2} = x_{1} + u\left( {\mu - 4\left( {1 - \mu } \right)x_{2} } \right) $$
(43)

where \(\mu = 0.5\). The system is stabilizable but not controllable. The equilibrium point of the system is at \(x_{1} = 0\), \(x_{2} = 0\) and \(u = 0\). The control objective is to drive the system from the starting point (\(x_{1} \left( 0 \right) = - 3\), \(x_{2} \left( 0 \right) = 2\)) to the specified equilibrium point in the face of noisy state measurements while satisfying the input and incremental input constraints given as \(- 2 \le u_{k} \le 2\) and \(- 0.5 \le \Delta u_{k} \le 0.5\).

The weighting matrices were selected as \(W_{x} = {\text{diag}}\left[ {0.5 0.5} \right]\), \(W_{\Delta u} = 1\). Solving a linear quadratic regulator (LQR) problem with the weighting matrices as above gives the linear state feedback control matrix as

$$ K = \left[ { - 2.0107 - 2.0107} \right] $$
(44)

Yu et al. [25] obtained the terminal penalty matrix \(P\) and the terminal set, \({\Omega }\) as follows:

$$ P = \left[ {\begin{array}{*{20}c} {188.9674} & {166.0917} \\ {166.0917} & {188.9674} \\ \end{array} } \right] $$
(45)
$$ {\Omega } = \left\{ {z\in{\mathbb{R}}^{2} |z^{T} Pz \le 0.778} \right\} $$
(46)

The prediction horizon for both the proposed approach and the traditional QIH-NMPC was selected as \(N_{p} = 20.\) It was observed that a prediction horizon \(N_{p} \le 6\) could not stabilize the system at the equilibrium point. Laguerre function parameters were chosen as follows: \(N = 2\), \(a = 0.8\) while those of the Kautz functions were chosen as: \(N = 2\), \(p_{1} = 0.8\), \(p_{2} = 0.2\), where \(N\) is the number terms used in the Laguerre and the Kautz networks; \(a\) is the Laguerre pole; \(p_{1}\) and \(p_{2}\) are the Kautz poles. It should be noted that Kautz function allows two different poles to be selected in the network unlike Laguerre function that has only one pole (i.e., \(a\)). The simulation results obtained by implementing the proposed QIH-NMPC-Laguerre, QIH-NMPC-Kautz and the traditional QIH-NMPC are plotted in Figs. 3, 4, 5, 6, 7, 8, 9 and 10. In order to simulate real-life scenarios, the system’s measured states were corrupted with uniformly distributed random noises with minimum and maximum values of \(- 0.1\) and \(0.1,\) respectively, and a switching time of 0.1 s. Figure 3 gives the evolution of the state, \(x_{1}\) of the system from its starting point \(x_{1} \left( 0 \right) = - 3\) to an equilibrium point \(x_{1} \left( \infty \right) = 0\) while Fig. 4 shows how the state \(x_{2}\) of the system is driven from its starting point \(x_{1} \left( 0 \right) = 2\) to an equilibrium point \(x_{2} \left( \infty \right) = 0\). Figures 3 and 4 show that the Laguerre function-based QIH-NMPC, Kautz function-based QIH-NMPC and the traditional QIH-NMPC drive the system states (\(x_{1}\) and \(x_{2}\)) to the equilibrium point (\(0, 0\)) at almost the same time. The results indicate that the dynamics of the state’s evolution of QIH-NMPC-Kautz and QIH-NMPC-traditional match each other very closely. It is observed from the responses in Figs. 3 and 4 that the dynamics of the evolution of state \(x_{1}\) is slower for QIH-NMPC-Laguerre while that of state \(x_{2}\) is faster. This is due to a large Laguerre pole (\(a = 0.8\)) that was used. The Laguerre pole of \(a = 0.4\) produced state evolutions in which the responses of QIH-NMPC-Laguerre almost matches that of the traditional QIH-NMPC but this comes at a prize of slightly more noisy response, albeit the traditional QIH-NMPC is still more noisy in this scenario. The closed-loop responses and the performance metrics for Laguerre pole of \(a = 0.4\) and Kautz poles of \(p_{1} = 0.4\), \(p_{2} = 0.4\) can be found in Figures S1 to S8 and Table S1 in the Supplementary materials.

Fig. 3
figure 3

System state \(x_{1}\) evolution

Fig. 4
figure 4

System state \(x_{2}\) evolution

Figures 5 and 6 show the system input and incremental input evolution for the Laguerre function-based QIH-NMPC, Figs. 7 and 8 show those of QIH-NMPC-Kautz while Figs. 9 and 10 show those of the traditional QIH-NMPC. These results reveal that the manipulated inputs for QIH-NMPC-Laguerre (Fig. 5) and QIH-NMPC-Kautz (Fig. 7) are smoother than that of QIH-NMPC-traditional (Fig. 9). The results also reveal that the incremental control signals change less frequently for both QIH-NMPC-Laguerre (Fig. 6) and QIH-NMPC-Kautz (Fig. 8) than that of QIH-NMPC-traditional (Fig. 10). The performance indices computed are summarized in Table 1, which show that the Laguerre function-based QIH-NMPC and Kautz function-based QIH-NMPC are less sensitive to measurement noise (with lower values of TV in Table 1). This is because the orthonormal functions act as noise filters. The average CPU time for both QIH-NMPC-Laguerre and QIH-NMPC-Kautz is also found to be less than that of the traditional QIH-NMPC as summarized in Table 1. The computation of the control law was done on a hp Personal Computer with the following specifications: 16 GB installed RAM; Intel® core™ i5-6300U CPU @2.40 GHz, 2.50 GHz-base speed (dual-core); 64-bit Operating System.

Fig. 5
figure 5

System input evolution under Laguerre QIH-NMPC. This shows a computational advantage of the proposed method over the traditional method

Fig. 6
figure 6

System incremental input evolution under Laguerre QIH-NMPC

Fig. 7
figure 7

System input evolution under Kautz QIH-NMPC

Fig. 8
figure 8

System incremental input evolution under Laguerre QIH-NMPC

Fig. 9
figure 9

System input evolution under traditional QIH-NMPC

Fig. 10
figure 10

System incremental input evolution under traditional QIH-NMPC

Table 1 Performance Indices

3.2 Four tank system

The four tank system proposed by Johansson and depicted as found in Fig. 11 consists of four interconnected four tanks and two pumps. It is a two-input, four-states system with voltages to the pumps as the control variables. The dynamics of water levels inside the tanks are modeled by:

$$ \frac{{dh_{1} }}{dt} = - \frac{{a_{1} }}{{A_{1} }}\sqrt {2gh_{1} } + \frac{{a_{3} }}{{A_{1} }}\sqrt {2gh_{3} } + \frac{{\gamma_{1} k_{1} }}{{A_{1} }}u_{1} $$
(47a)
$$ \frac{{dh_{2} }}{dt} = - \frac{{a_{2} }}{{A_{2} }}\sqrt {2gh_{2} } + \frac{{a_{4} }}{{A_{2} }}\sqrt {2gh_{4} } + \frac{{\gamma_{2} k_{2} }}{{A_{2} }}u_{2} $$
(47b)
$$ \frac{{dh_{3} }}{dt} = - \frac{{a_{3} }}{{A_{3} }}\sqrt {2gh_{3} } + \frac{{\left( {1 - \gamma_{2} } \right)k_{2} }}{{A_{3} }}u_{2} $$
(47c)
$$ \frac{{dh_{4} }}{dt} = - \frac{{a_{4} }}{{A_{4} }}\sqrt {2gh_{4} } + \frac{{\left( {1 - \gamma_{1} } \right)k_{1} }}{{A_{4} }}u_{1} $$
(47d)
Fig. 11
figure 11

The four tank system

where \(h_{i}\) denotes the water level, \(u_{i}\) the flow rate of pump, \(A_{i}\) the cross-section of tank, \(a_{i}\) the cross-section of the outlet hole, \(g\) the acceleration due to gravity, and \(\gamma_{i} \in \left( {0,1} \right)\) the valve parameters. The four tank system has the unique attribute that it can exhibit both minimum-phase and non-minimum phase behaviors. Our aim here is to control the tank at the non-minimum operating point, which is the more difficult operating point using Laguerre-function-based QIH-NMPC. The values of the model parameters are summarized in Table 2 while valve parameters are chosen as \(\gamma_{1} = \gamma_{2} = 0.4\). The nominal operating point of the tank is given as: \(x_{ss} = \left[ {\begin{array}{*{20}c} {13.99} & {14.06} & {14.26} & {21.43} \\ \end{array} } \right] {\text{cm}}\), \(u_{ss} = \left[ {\begin{array}{*{20}c} {43.4} & {35.4} \\ \end{array} } \right] {\text{ml/s}}\). The control objective is to regulate the tank at this point in the face of noisy measurements. The model equations are discretized using explicit fourth-order Runge–Kutta at a sampling time of 3 s, this is for the purpose of predictive controller design. The sampling time for the implementation of the predictive controller was equally chosen as \(T_{s} = 3\) s. The input constraints were chosen as:

$$ {\mathcal{U}} = \left\{ {u_{1} , u_{2} \in {\mathbb{R}}\left| {0 \le u_{1} \le 60, 0 \le u_{2} \le 60 } \right.} \right\} $$
(48)
Table 2 Model parameters of four tank system

The weighting matrices for the design of QIH-NMPC in the continuous-time mode were selected in [56] as \(W_{x}^{c} = diag\left( {\left[ {\begin{array}{*{20}c} 1 & 1 & 0 & 0 \\ \end{array} } \right]} \right)\), \(W_{u}^{c} = {\text{diag}}\left( {\left[ {\begin{array}{*{20}c} {0.01} & {0.01} \\ \end{array} } \right]} \right)\) while the linear state feedback control matrix were calculated as (using the pole placement method):

$$ K = \left[ {\begin{array}{*{20}c} {0.0000} & { - 0.0050} & { - 0.0184} & { - 0.0157} \\ { - 0.0020} & {0.0005} & { - 0.1213} & { - 0.0266} \\ \end{array} } \right] $$
(49)

The terminal penalty matrix \(P\) and the terminal set, \({\Omega }\) [56] were obtained as follows:

$$ P = \left[ {\begin{array}{*{20}c} {103.21} & { - 1.33} & {22.37} & { - 1.06{ }} \\ { - 1.33} & {99.38} & { - 2.11} & {26.92} \\ {22.37} & { - 2.11} & {86.30} & { - 1.92} \\ { - 1.06} & {26.92} & { - 1.92} & {114.41} \\ \end{array} } \right] $$
(50)
$$ {\Omega } = \left\{ {z \in{\mathbb{R}}^{4} |z^{T} Pz \le 11934} \right\} $$
(51)

The tuning parameters used for the implementation of both the proposed approach and the traditional QIH-NMPC algorithms were selected as: \(N_{p} = 10\), \(T_{s} = 3\) s, \(W_{x} = T_{s} W_{x}^{c}\), \(W_{\Delta u} = W_{u}^{c} /T_{s}\). Laguerre function parameters were chosen as follows: \(N = \left[ {\begin{array}{*{20}c} 1 & 1 \\ \end{array} } \right]\), \(a = \left[ {\begin{array}{*{20}c} {0.75} & {0.75} \\ \end{array} } \right]\) while the Kautz function parameters were chosen as: \(N = \left[ {\begin{array}{*{20}c} 1 & 1 \\ \end{array} } \right]\), \(p_{1} = \left[ {\begin{array}{*{20}c} {0.75} & {0.75} \\ \end{array} } \right]\), \(p_{2} = \left[ {\begin{array}{*{20}c} {0.75} & {0.75} \\ \end{array} } \right]\). The simulation results obtained by implementing the Laguerre function-based QIH-NMPC, Kautz function-based QIH-NMPC in comparison with the traditional QIH-NMPC are plotted in Figs. 12, 13 and14. The figures show how the state of the system evolves from the starting point \(x\left( 0 \right) = \left[ {\begin{array}{*{20}c} 0 & 0 & 0 & 0 \\ \end{array} } \right] {\text{cm}}\) to the equilibrium point \(x_{ss} = \left[ {\begin{array}{*{20}c} {13.99} & {14.06} & {14.26} & {21.43} \\ \end{array} } \right] {\text{cm}}\). These results reveal that the states evolution of the four tank system under QIH-NMPC-Laguerre (Fig. 12) and QIH-NMPC-Kautz (Fig. 13) are similar and without overshoot. The control inputs for QIH-NMPC-Laguerre (Fig. 12) and QIH-NMPC-Kautz (Fig. 13) are observed to be less noisy compared with the traditional QIH-NMPC (Fig. 14). This is because of the noise filtering provided by the two functions—Laguerre and Kautz. The performance indices are summarized in Table 1. The table indicates that the CPU time is lowest for QIH-NMPC-Laguerre, followed by QIH-NMPC-Kautz while that of the QIH-NMPC-traditional is the most computationally intensive. However, the traditional method has a lower IAE. This is because of fast speed of evolution of the states of the four-tank system under the control of QIH-NMPC-traditional, orchestrated by unrestrained control inputs changes. The closed-loop responses and the performance metrics for the Laguerre pole of \(a = \left[ {0.25, 0.25} \right] \) and Kautz poles of \(p_{1} = \left[ {0.25, 0.25} \right]\), and \(p_{2} = \left[ {0.25, 0.25} \right]\) can be found in Figures S9 to S11 and Table S1, respectively, as contained in the Supplementary materials. These results show that the Laguerre function-based and Kautz function-based QIH-NMPC display responses whose speed are very much comparable to that of traditional QIH-NMPC while still maintaining much less noisy control signals.

Fig. 12
figure 12

State and input evolutions using Laguerre function-based QIH-NMPC

Fig. 13
figure 13

State and input evolutions using Kautz function-based QIH-NMPC

Fig. 14
figure 14

State and input evolutions under traditional QIH-NMPC

4 Conclusions

An extension to Wang’s linear model predictive control based on Laguerre function [27] is proposed for a QIH-NMPC. The proposed method is proven to be stable and robust against measurement noise. The simulation results obtained from the numerical examples considered show that QIH-NMPC based on the two orthonormal functions-Laguerre and Kautz functions, leads to a smoother control signal. In contrast, the traditional QIH-NMPC method leads to an optimal control signal that is much more noisy for the same set of NMPC tuning parameters. The closed-loop simulation results also indicate that the larger the Laguerre pole, \(a\), (and the Kautz poles, \(p_{1}\) and \(p_{2}\)), the less aggressive and the more cautious the control signal. Also, the proposed method requires fewer parameters to be optimized to yield the same results as traditional QIH-NMPC. Although the first principle model has been used here as the prediction model for the NMPC, other types of models (e.g., artificial neural network) can be used as prediction model.