Neural networks-based model predictive control for precision motion tracking of a micropositioning system


Micropositioning systems are widely employed in industrial applications. Nonminimum-phase (NMP) is a normal phenomenon in micropositioning system, which leads to a great challenge for control system design. Model predictive control (MPC) is effective in handling the NMP problem. However, the parameter tuning of MPC is quite complicated and time-consuming using traditional methods for motion tracking control implementation. In this paper, an efficient neural networks (NN) model is established to optimize the MPC controller parameters including the prediction horizon, control horizon, and weighting factor. With the developed NN model, the motion tracking process of the micropositioning system is more intelligent and adaptive. The effectiveness of the presented novel NN-MPC control strategy has been verified by conducting extensive simulation studies. Furthermore, the results demonstrate that the NN-MPC scheme has good robustness under model parameter variation and noise condition.


Micropositioning systems have been widely employed in various industrial fields, such as IC assembly and biomedical engineering manipulation (Zhang and Yu 2008; Zou et al. 2004). For example, in biological cell manipulation process, micropositioning stages are employed to realize a precision motion control of the microinjector for executing an accurate injection of the cells (Zhang and Xu 2018). In this paper, a custom-built compliant parallel micropositioning system is adopted as a plant. Based on parallel-kinematics design with flexure hinges, the micropositioning stage (see Fig. 1) delivers a workspace range over 10.5 mm \(\times\) 10.5 mm along with a compact dimension for micropositioning application. The structure is actuated by voice coil motor (VCM). The VCM provides enough force capability with the maximum driving force of 195 N and sufficient large motion range with a stroke of 12.7 mm. The output motion is measured by laser displacement sensors with a resolution of 25 nm over a measuring range of 20 mm (Xu 2012; Wan and Xu 2016).

The objective of the current research is to realize a precise motion tracking of the micropositioning stage for relevant engineering applications. However, a challenging problem has been emerged after the system identification experiment for the micropositioning stage. That is, the plant is of nonminimum-phase (NMP), which indicates that there are unstable zeros in the system (Wang and Xu 2016; Hauser et al. 1992). It follows that unstable poles exist in the inverse model of the system. It is complicated and challenging to control such kind of systems with NMP, because a lot of powerful control technologies based on the inverse principle lose their effect (Kapur and Kesavan 1992).

Control approaches based on zero-pole cancellation method can remove unstable zeros (Zhang and Gao 2013) However, it is just an ideal scenario because the error between zeros and poles leads to instability in practice (Hoagg and Bernstein 2007). Other kinds of approaches have also been proposed to handle the problem of nonminimum-phase in practical application, such as fuzzy control, sliding mode control (Elmali and Olgac 1992; Park and Desai 2016; Chen et al. 2017), etc. Nevertheless, it is relatively complicated and time-consuming to implement such kinds of controllers. Alternatively, MPC provides an excellent approach to dealing with the problem of NMP (Mohammadzaman et al. 2006). Some recent work on MPC control methods in micropositioning fields can be found in the literature (Rana et al. 2015; Cheng et al. 2015; Liu et al. 2016). Generally, MPC can handle time-varying or time-invariant, linear or nonlinear, time-delayed system-constrained optimal control problems (Wills et al. 2008; Rawlings 2000). MPC controller can adjust the control action before a change in the output reference actually occurs (Richalet 1993). During the operation, MPC utilizes a process model to predict the future response of a plant (Rossiter 2017).

The selection of optimal parameters for MPC is an essential task. Among the parameters of MPC, the weighting factor influences partial control effort to some extent. The prediction horizon predicts the plant’s future output, and the control horizon determines an optimal control signal by minimizing the cost function. Thus, choosing suitable parameters is a crucial task in MPC control strategy design. However, parameter tuning of the prediction horizon, control horizon, and weighting factor is quite complicated and time-consuming for MPC algorithm realization in practice (Wojsznis et al. 2003). Currently, traditional trial-and-error method is commonly applied in the MPC parameter tuning. However, obtaining optimal values by this way is usually impractical as it requires the operator to have certain prior experiences in specific field (Sin et al. 2008).

To solve this practical issue, NN is introduced in this work as a tool to tune the control parameters of MPC. In particular, a novel NN-MPC control scheme is presented for precision motion tracking control of the micropositioning system. With the established NN model, the parameter tuning process of MPC becomes more intelligent and adaptive for precision motion control of the micropositioning system. The effectiveness of the developed control strategy is verified by performing extensive numerical simulation studies under different conditions in this work.

The remaining sections of the paper are organized as follows. The specific process of system modeling and model identification is presented in Sect. 2. According to the identified plant’s model, a MPC controller is designed in Sect. 3. Afterwards, the motion tracking simulation study with the optimal MPC parameters is carried out in Sect. 4. In Sect. 5, the NN model is obtained for parameter optimization. Then, the robustness of MPC is verified under system uncertainty and perturbed condition in Sect. 6. The performance of the presented NN-MPC is further discussed in Sect. 7, where a summary is given to conclude the paper.

Fig. 1

Prototype of a flexure-based micropositioning system

System description and plant identification

Model predictive controller relies on the dynamic model of the controlled plant. In practice, the dynamic model is usually obtained by the system identification method (Dong et al. 2017; Zhang et al. 2018).

Dynamics modeling of a micropositioning system

The entire plant model of a micropositioning system can be described by the following second-order dynamic equation:

$$\begin{aligned} m \ddot{x}(t) + b {\dot{x}} (t) + k x(t) = d u(t) - f(t) \end{aligned}$$

where t is the time variable, symbol m stands for mass, b represents the damping coefficient, k and d are stiffness and mechanical coefficient, respectively. f(t) contains the high-order nonlinearity of the plant, external disturbance, and so on.

Dynamics model identification

The micropositioning system is considered as a linear system with uncertainty. The dynamics model is identified by resorting to the least squares method. Specifically, swept-sine signals with low amplitude of 0.01 V and incremental frequency ranging from 1 to 100 Hz are generated to drive the VCM. The output position is measured by the laser displacement sensor. To verify the presented control scheme, only the x-axis motion control of the system is handled in this work.

Firstly, the input and output data sets are sorted and organized, respectively. Both of them are applied for system model identification of the micropositioning system. Specifically, by taking the driving voltage of VCM as the input and x-axis position of the system as the output, the transfer function model is identified as shown in the following equation.

$$\begin{aligned} G(s) = \frac{5.77 s^2 - 18533 s + 25000000}{s^2 + 31s +21000} \end{aligned}$$

where s is the Laplace operator. The dynamics model (1) of the micropositioning system can be expressed as the following state-space equation form:

$$\begin{aligned} \begin{aligned} {\dot{X}} (t) &=A_c X(t) + B_c U(t) \\ Y(t) &=C X(t) \end{aligned} \end{aligned}$$

where the state vector \(X(t)=[x(t), {\dot{x}}(t)]^T\), and the three matrices are

$$\begin{aligned} A_c=\left[ \begin{array}{cc} 0 &{} 1\\ -\frac{k}{m} &{} -\frac{b}{m} \\ \end{array} \right] ,\ B_c=\left[ \begin{array}{cc} 0 &{} -\frac{d}{m} \\ \end{array} \right] ^T,\ C=\left[ 1\ 0\right] \end{aligned}$$

By adopting T as a sampling time in the discretization process, the continuous-time system model can be discretized by the zero-order-hold sampling:

$$\begin{aligned} \begin{aligned} X_{k+1} &=A_d X_k + B_d u_k \\ Y_k &=C_d X_k \end{aligned} \end{aligned}$$

where the notation \(X_k=X(kT)\), and the relevant matrices are calculated by

$$\begin{aligned} A_d = e^{A_c T},\ B_d = \int _{0}^{T} e^{A_c T} d\tau B_c,\ C_d = C \end{aligned}$$

Assume that the matrices \(B_d\) and \(C_d\) are of full rank, the triplet (\(A_d\), \(B_d\), \(C_d\)) of the nominal system is not only controllable but also observable. Then, the concerned control problem in this work is how to make the output \(Y_k\) track a reference signal \(R_s\) precisely.

Fig. 2

Pole-zero map of the identified system model

According to the transfer function (2), we can easily obtain two zeros (1587, 1341.7i) and \((1587, -1341.7i)\), which are located in the right half of s-plane. Therefore, the micropositioning system has a NMP issue (Wang and Xu 2016. NMP systems are ubiquitous in mechanical control engineering. Due to the existence of the zero point in the right half-plane as shown in Fig. 2, the step response of the system has a negative adjustment, which has a great impact on the mechanical control. Based on the identified transfer function model, MPC can handle the problem as long as appropriate parameters are selected.

MPC scheme design

The dynamic model (5) can also be written into the following discrete-time state-space equation at the k-th sampling moment.

$$\begin{aligned} \begin{aligned} x(k+1)&=A_d x(k)+B_d u(k) \\ y(k)&=C_d x(k) \end{aligned} \end{aligned}$$

where \(u(k)\in R^m\) is the control variable (effective driving voltage of VCM); y is the process output (displacement measured by laser sensor); and \(x(k) \in R^n\) is the state vector. The target of model predictive control design is to obtain an incremental control effort in an optimal manner.

MPC controller design

Denoting the difference of the state variable by

$$\begin{aligned} \begin{aligned} \varDelta x(k+1)&=x(k+1)-x(k)\\ \varDelta u(k)&=u(k)-u(k-1) \\ \varDelta y(k+1)&=y(k+1)-y(k) \end{aligned} \end{aligned}$$

Taking a difference operation on both sides of (7), yields

$$\begin{aligned} x(k+1)-x(k)=A_d (x(k)-x(k-1))+B_d (u(k) -u(k-1)) \end{aligned}$$

Thus, the state-space model (7) can be represented as

$$\begin{aligned} \begin{aligned} \varDelta x(k+1)&=A_d \varDelta x(k)+B_d \varDelta u(k) \\ y(k+1)&=C_d A_d \varDelta x(k)+C_d B_d \varDelta u(k)+y(k) \end{aligned} \end{aligned}$$

The next step is to connect \(\varDelta x(k)\) with the output y(k) . For that, a new state-variable vector is chosen to be

$$\begin{aligned} \begin{aligned} Q(k)&=\left[ \begin{array}{c} \varDelta x(k)^T \\ y(k) \end{array} \right] \\ \end{aligned} \end{aligned}$$


$$\begin{aligned} \begin{aligned} A_e&=\left[ \begin{array}{cc} A_d &{} 0 \\ C_d A_d &{} I \end{array} \right] \\ B_e&=\left[ \begin{array}{c} B_d \\ C_d B_d \end{array} \right] \\ C_e&=\left[ \begin{array}{cc} 0&I \end{array} \right] \end{aligned} \end{aligned}$$

The triplet \((A_e, B_e, C_e)\) is called the augmented model, and the triplet will be applied in following process of predictive control design. Putting together (7) with (11) leads to the following state-space model:

$$\begin{aligned} \begin{aligned} Q(k+1)&=A_e Q(k)+B_e \varDelta u(k) \\ y(k)&=C_e Q(k) \end{aligned} \end{aligned}$$

Here, it is assumed that when the sampling instant is set as \(k_i\) (\(k_i> 0\)), the state variable vector \(Q(k_i)\) is available through rigorous measurement. Simultaneously, the state \(Q(k_i)\) provides the current plant information. Later, the general situation where the state cannot be directly measured will be further discussed. The future control action is denoted by

$$\begin{aligned} \varDelta u(k_i), \varDelta u(k_i+1),\ldots ,\varDelta u(k_i+N_c-1) \end{aligned}$$

where \(N_c\) represents the control horizon dictating the number of parameters employed to capture the future control action. With the obtained vector \(Q(k_i)\), the future state variables are predicted for \(N_p\) number of samples, where \(N_p\) represents the prediction horizon, which is also the length of the optimization window. Future state variables can be denoted as

$$\begin{aligned} Q(k_i+1 \big | k_i), Q(k_i+2 \big | k_i), \ldots , Q(k_i+N_p \big | k_i) \end{aligned}$$

where \(Q(k_i+m \big | k_i)\) is the predicted state variable at \(k_i+m\) with the given current plant information \(Q(k_i)\). The prediction horizon \(N_p\) should be selected larger than (or equivalent to) the control horizon \(N_c\) (Xiao et al. 2017.

$$\begin{aligned} N_c \le N_p \end{aligned}$$

Based upon the state-space model \((A_e, B_e, C_e)\), we can calculate the future state vectors sequentially using future control parameter:

$$\begin{aligned} \begin{aligned} Q(k_i+1 \big | k_i) &=A_e Q(k_i) + B_e \varDelta u(k_i) \\ Q(k_i+2 \big | k_i)&={A_e^2 Q( k_i) + A_e B_e \varDelta u(k_i)+ B_e \varDelta u(k_i +1)}\\ \cdot \\ \cdot \\ \cdot \\ Q(k_i+N_p \big | k_i) &=A_e^{N_p} Q(k_i) + A_e^{N_p -1} B_e \varDelta u(k_i) \\&+ A_e^{N_p -2} B_e \varDelta u(k_i +1) + \ldots \\&+ A_e^{N_p -N_c} B_e \varDelta u(k_i + N_c -1) \end{aligned} \end{aligned}$$

The predicted output variable is replaced by the predicted state variable:

$$\begin{aligned} \begin{aligned} y(k_i+1 \big | k_i) &=C_e A_e Q(k_i) + C_e B_e \varDelta u(k_i) \\ y(k_i+2 \big | k_i) &=C_e A_e^2 Q(k_i) + C_e A_e B_e \varDelta u(k_i) + C_e B_e \varDelta u(k_i +1)\\&\cdot \\&\cdot \\&\cdot \\ y(k_i+N_p \big | k_i) &=C_e A_e^{N_p} Q(k_i) + C_e A_e^{N_p -1} B_e \varDelta u(k_i) \\&+ C_e A_e^{N_p -2} B_e \varDelta u(k_i +1) + \ldots \\&+ C_e A_e^{N_p -N_c} B_e \varDelta u(k_i + N_c -1) \end{aligned} \end{aligned}$$

All of the predictors are represented by the current state variable information \(Q(k_i)\) and the future control movement \(\varDelta u(k_i+ \rho )\), where \(\rho\) ranges from 0 to \(N_c-1\). Variables \(\varDelta u(k_i)\), \(\varDelta u(k_i+1)\), \(\ldots\), \(\varDelta u(k_i+N_c-1)\) are combined into the matrix form:

$$\begin{aligned} \varDelta U = \left[ \begin{array}{c} \varDelta u(k_i)\\ \varDelta u(k_i +1)\\ \varDelta u(k_i +2)\\ \cdot\\ \cdot\\ \cdot\\ \varDelta u(k_i + N_c -1) \end{array} \right] \end{aligned}$$

Similarly, by denoting

$$\begin{aligned} Y=\left[ y(k_i+1 \big | k_i), y(k_i+2 \big | k_i), \ldots , y(k_i+N_p \big | k_i) \right] ^T \end{aligned}$$

we can collect the two matrices in a compact form as follows.

$$\begin{aligned} Y= & {} \varLambda Q(k_i) + \Phi \varDelta U \end{aligned}$$
$$\begin{aligned} \varLambda= & {} \left[ \begin{array}{c} C_e A_e\\ C_e A_e^2\\ C_e A_e^3\\ \cdot\\ \cdot\\ \cdot\\ C_e A_e^{N_p} \end{array} \right] \end{aligned}$$
$$\begin{aligned} \varPhi= & {} \left[ \begin{array}{cccc} C_e B_e &{} 0 &{} \ldots &{} 0 \\ C_e A_e B_e &{} C_e B_e &{} \ldots &{} 0 \\ C_e A_e^2 B_e &{} C_e A_e B_e &{} \ldots &{} 0 \\ \cdot&{} \cdot&{} \cdot&{} \cdot\\ \cdot&{} \cdot&{} \cdot&{} \cdot\\ \cdot&{} \cdot&{} \cdot&{} \cdot\\ C_e A_e^{N_p-1} B_e &{} C_e A_e^{N_p-2} B_e &{} \ldots &{} C_e A_e^{N_p-N_c} B_e \end{array} \right] \end{aligned}$$

As for \(R_s(k_i)\), it is the command reference signal at the sampling time \(k_i\). Within the prediction range, the ultimate goal of the control algorithm is to make the predicted output signal tracking be as close as possible to the reference signal (Wang 2009). The direct purpose is to generate the optimal control vector \(\varDelta U\) such that the cost function between the reference and predicted outputs is minimized.

Assume that the \(N_p\) step preview \((R_s = [r(k_i+1), r(k_i+2), \ldots , r(k_i+N_p)]^T)\) of reference signal is available. The cost function J for minimization can be defined as follows.

$$\begin{aligned} J=(R_s-Y)^T (R_s-Y)+ \varDelta U^TW\varDelta U ,\ (W=\bar{w}I) \end{aligned}$$

where \(\bar{w}\) is the weighting to limit the partial control effort. From the first derivative of the cost function J, the necessary condition for the minimum J is obtained as

$$\begin{aligned} \frac{\partial J}{\partial \varDelta U} = 0 \end{aligned}$$

from which we can find the optimal solution for the control signal:

$$\begin{aligned} \varDelta U= ( \varPhi ^T \varPhi + W)^{-1} \varPhi ^T (R_s- \varLambda Q(k_i) ) \end{aligned}$$

Since only the first element of \(\varDelta U\) is used, the optimal incremental control effort at instant \(k_i\) can be represented as

$$\begin{aligned} \varDelta u(k_i )=e \varDelta U = e( \varPhi ^T \varPhi + \bar{w}I)^{-1} \varPhi ^T (r(k_i)- \varLambda Q(k_i) ) \end{aligned}$$

where the vector \(e=[1,0,0,\ldots , 0]\). Extracting the key points of the above algorithm formulas, we can definitely design the MPC controller for motion tracking control of the micropositioning system. Generally, the block diagram of the control system can be depicted as shown in Fig. 3.

Fig. 3

Simulation diagram of MPC control system

Stability analysis

To demonstrate the stability of the presented control strategy, a Lyapunov function candidate is selected as follows.

$$\begin{aligned} \begin{aligned} \ L(k_i)&=\sum _{m=1}^{N_p} Q(k_i+m) ^T Q(k_i+m) \\&+ {\sum _{m=0}^{N_p-1}\varDelta u(k_i+m)^T W \varDelta u(k_i+m) } \end{aligned} \end{aligned}$$

It is seen that \(L(k_i)\) is positive definite. Similarly, at time \(k_i+1\), the Lyapunov function becomes

$$\begin{aligned} \begin{aligned} \ L(k_i+1)&=\sum _{m=1}^{N_p} Q(k_i+1+m) ^T Q(k_i+1+m) \\&+{\sum _{m=1}^{N_p-1}\varDelta u(k_i+1+m)^T W \varDelta u(k_i+1+m) } \end{aligned} \end{aligned}$$

Taking into account the controller (27), the difference between the above two functions is obtained as:

$$\begin{aligned} \begin{aligned} \ L(k_i+1)-L(k_i) &=-Q(k_i+1) ^T Q(k_i+1) \\&-\varDelta u(k_i)^T W \varDelta u(k_i)\\ <&0 \end{aligned} \end{aligned}$$

which is negative. Thus, the stability of the presented model predictive control system is proved.

Fig. 4

Tracking error comparison with different values of weighting factor

Simulation testing

In the process of MPC controller design, there are mainly three parameters affecting the control effect, i.e., the weighting factor \(\bar{w}\), prediction horizon \(N_p\), and control horizon \(N_c\). Their roles are explained below.

  1. (1)

    Weighting factor \(\bar{w}\): Parameter \(\bar{w}\) is the weighting factor that limits the partial effort in Eq. (27). Before discussing the simulation investigations on the influence of parameter prediction horizon and control horizon, the effect of the weighting factor \(\bar{w}\) is verified through different tests. For demonstration, sinusoidal wave with amplitude \((A=30)\) and frequency \((f=0.3)\) is used for discovering the effect of the weighting factor \(\bar{w}\). Based on the principle of control variates, the other two parameters \(N_p\) and \(N_c\) are respectively fixed while the weighting factor \(\bar{w}\) is being tested. As the parameter value of the weighting factor \(\bar{w}\) decreases, the system response becomes quicker. On the contrary, as the value of the weighting factor is set larger, the system response becomes slower, which leads to larger error between the output signal and reference signal, as shown in Fig. 4.

  2. (2)

    Prediction horizon \(N_p\): Prediction horizon \(N_p\) represents the number of samples in the future, where the MPC controller predicts the plant output. Increasing the value of \(N_p\) is beneficial to enhance the system response.

  3. (3)

    Control horizon \(N_c\): Control horizon \(N_c\) is the number of samples within the prediction horizon, where the MPC controller can affect the controller action. Reducing the value of \(N_c\) is beneficial to enhance the anti-interference ability, stability, and robustness of the control system, but the dynamics response speed will be slower (Qin and Badgwell 2003).

As the varying of control parameters, the overall root mean square (RMS) positioning error is adopted as the main criterion for tracking error in the simulation study of the micropositioning system’s motion control process.

$$\begin{aligned} RMS = \sqrt{ \frac{1}{n} \sum _{k=1}^{n}(r_{ref}(k)-y(k))^2 } \end{aligned}$$

where \(r_{ref}\) stands for the reference signal, and y(k) is tracking signal output. The data of \(r_{ref}\) and y(k) are stored in every cycle of simulation. RMS error is calculated by Matlab automatically.

The sinusoidal motion tracking performance of the developed controller is tested using sinusoid trajectories with varied amplitudes and different frequencies. The function of the reference input signal can be described as

$$\begin{aligned} r_{ref}(t)=f(A,f,t)=A\sin (2\pi ft+\pi /2) \end{aligned}$$

where A represents the amplitude and f is the frequency of sinusoid reference, respectively.

Fig. 5

Tracking results of MPC with varied prediction horizon \(N_p=5\) and control horizon \(N_c=2\)

Next, how about the relation between the joint parameter vector \((N_p\) , \(N_c)\) and reference signals with varied amplitudes and frequencies? Variable-controlling approach will be applied in the following parts. The weighting factor \(\bar{w}\) is set to be a fixed value, and varied \(N_p\) and \(N_c\) are selected until good tracking result is obtained. Here, the sinusoidal wave trajectory with an amplitude \((A=3)\) and a frequency \((f=0.3)\) is used in motion tracking simulation. As shown in Fig. 5, when the prediction horizon \(N_p\) is selected as 5 and the control horizon \(N_c\) is selected as 2, the trajectory tracking performance is unsatisfactory. The error between the reference signal and output signal is large and the RMS is up to 0.739. Trail-and-error method is employed in the overall process of horizon parameter optimization. Manually, varied values are put into trial until the ideal result is presented. The motion tracking performance could be improved with the prediction horizon and control horizon optimized well.

In view of the overall simulation, the larger the prediction horizon, the more obvious the delay effect will be presented in the motion tracking of the reference signal. The reason lies in that a large prediction horizon increases the predictive burden of the MPC controller. The performance will be poorer due to the extra calculation as the value of \(N_p\) becomes larger and larger. With short prediction and control horizons, the closed-loop predictive control system is not necessarily stable. In many cases, the control horizon \(N_c\) is chosen as \(N_p\), which may lead to quite long computational time.

Fig. 6

Tracking result of MPC with prediction horizon \(N_p=8\) and control horizon \(N_c=2\)

Finally, with the choice of parameter set of \(N_c = 2\) and \(N_p = 8\), the controller can produce efficient control signal that leads to satisfactory motion tracking performance. The tracking waveform of simulation result is shown as Fig.  6. Quantitatively, the RMS error is minimized as 0.205, which is quite smaller than the error results of any other parameters apart from (\(N_c = 2\), \(N_p = 8\)). Similarly, reference signals with other amplitudes and frequencies are tested respectively, and the optimal vectors (\(N_p\), \(N_c\), \(\bar{w}\)) are also found manually in similar way, as shown in Table 1.

Neural networks model

In the literature, there is no universe solution to the selection of weighting factor \(\bar{w}\), predictive horizon \(N_p\), and control horizon \(N_c\) for MPC. Manually selecting the parameter vector (\(N_p\) , \(N_c\) , \(\bar{w}\)) is time-consuming and complicated. In addition, the three elements interact with each other, and affect the tracking performance together. In this section, we adopt NN as an efficient tool, which can help to establish a model for parameter optimization and selection. By applying the above method, we can make the control design more adaptive. The major target of this section is to introduce BP network to train a NN model, which contains the relation between the input data (amplitude and frequency of the input signal) and target data (optimal weighting factor, prediction horizon, and control horizon of MPC), as shown in Fig. 7.

Table 1 Input data (Af) and target output data (\(N_p\), \(N_c\), \(\bar{w}\))
Fig. 7

Scheme of BP-based NN model

BP network is a typical feedforward neural networks which is trained according to the error back-propagation algorithm. The network applied in this work totally contains three layers: an input layer, a hidden layer with non-linear BP activation function, and a linear output layer. Practically, the network can also be regarded as a special two-layer network which is linear in the parameters by fixing all BP centers and nonlinearities in the hidden layer. Thus, the hidden layer performs a fixed nonlinear transformation with no adjustable parameters and it maps the input space onto a new space. The output layer then implements a linear combiner on this new space. Here, the adjustable parameters are the weights of this linear combiner. These parameters can therefore be determined by using the linear Levenberg–Marquardt (LM) method, which is an important advantage of this approach.

Neural networks model for MPC parameter tuning

Practically, for each specific trajectory reference signal, there is the corresponding vector of joint parameters (\(N_p\), \(N_c\), \(\bar{w}\)). The criterion is mainly judged with \(RMS_{min}\), which fits to the most effective motion tracking result correspondingly. Therefore, the following works of this section is to establish a NN model, which can represent the relation between the input vector (Af) and the output vector \((N_p, N_c, \bar{w}\)).

$$\begin{aligned} ( N_p,N_c,\bar{w} ) = \text {function}_{NN} (A,f) \end{aligned}$$

In general, there are three steps in the training process. First of all, one should assemble the training data and determine the network target; secondly, the network training is needed; the final step is to simulate the network response to specific new inputs.

For ensuring that the NN model establishment is more accurate, sufficient sampling data should be obtained. In the process, there are totally 50 sampling data of reference signal with the amplitude ranging from 1 to 50 (mm) and the frequency ranging 0.1 for 5 (Hz) regularly. Correspondingly, the incremental amplitudes (1, 2, 3 ...24, 25, 26 ...50) and varied frequency (0.1, 0.2, 0.3 ...2.4, 2.5, 2.6 ...5) are placed in one matrix [1, 2, 3 ...24, 25, 26 ...50; 0.1, 0.2, 0.3 ...2.4, 2.5, 2.6 ...5]. The matrix is used as input data for NN training. Similarly, a set of associated desired output matrix \([N_p, N_c, \bar{w}]\) are used as target data. Ultimately, the hidden layer includes 10 neurons in the networks.

The aforementioned input data and target data are used to train the NN systematically, until the NN model has already learned the function relations of the sample inputs and targets. Among the total data set, seventy percent of the data are applied to train the network, and fifteen percent of the data are used to validate the effect of the generalized network. The remaining samples are used to provide an independent testing of network generalization to data. The NN model is obtained eventually, as shown in Fig. 7.

Fig. 8

Tracking results of MPC with NN model optimized vector (18, 5, 21)

Parameter verification using NN model for MPC

For testing and verifying the efficacy of the model established in the section above, we use the vector \((A=13 ,f=0.7)\) as a new input. After running the NN model, an output vector (17.921, 5.193, 21.301) is obtained as the model optimization result. Since \(17.921\approx 18\), \(5.193 \approx 5\), and \(21.301 \approx 21\), the integer vector (18, 5, 21) is used for verification. Then, the simulation shows that the tracking result is satisfactory, as depicted in Fig.  8. Graphically, the output tracking signal is quite close to the reference trajectory. Quantitatively, the RMS is calculated as 1.02, which is extremely close to \(RMS_{min}(0.99)\) (manual selection result).

Fig. 9

Tracking results of MPC without NN model optimization (11, 3, 10)

Fig. 10

Tracking error comparison between MPC with and without NN model optimization

Naturally, we may have such a question: If the output vector is selected without using NN model, how will be the tracking performance? For instance, we select (11, 3, 10), the same parameter set as the reference signal (A = 5, f = 0.5) in Table 1 for testing. The tracking result is shown in Fig. 9, which exhibits that the tracking performance is unsatisfactory without using the NN model. In order to make the comparison of the situations with and without NN model more clearly, the error tracking signals are plotted as shown in Fig. 10, in which the green line represents the error signal of MPC without NN model optimization and the blue line is the one with NN model. Obviously, the overall amplitude of the blue signal is quite smaller than the green one, which illustrates that the effectiveness of NN model is obvious.

Comparison study

Quantitatively, the RMS error with NN model is 1.02. While the error without NN model is 3.73, which is approximately 3.7 times as large as that with NN model. The error comparison is tabulated in Table 2. The worse result of traditional control is mainly induced by the trial-and-error method. This is the reason why a novel NN model is developed in this work. For obtaining a more precise positioning result by using trial-and-error method, the three parameters \(N_p\), \(N_c\), and \(\bar{w}\) should be tuned one by one (Xu 2016). For example, the parameter \(N_p\) should be tuned at first by neglecting \(N_c\) and \(\bar{w}\). Once a better result is obtained by the selected parameter \(N_p\), the parameter \(N_c\) should be tuned in the next step. Finally, the parameters \(\bar{w}\) should be adjusted to further reduce the tracking error. In addition, the coupling among the control parameters complicate the tuning process even more.

The positioning tracking performances of the controllers are conducted using a sinusoidal reference input, which has varying amplitude and frequency. However, the parameter tuning of MPC by trial-and-error approach is quite complicated and time-consuming for tracking the varying amplitude and frequency of sinusoidal reference input. In contract, the novel NN–MPC scheme makes the positioning tracking process more adaptive and efficient by using the developed NN model, which can automatically adjust the control parameters more adaptively and intelligently.

Table 2 Tracking error comparison of with or without NN model

Verification of MPC robustness

MPC has long been used in process industry control because of its two advantages. One is the constraint handling characteristics, which can conveniently handle various constraints in the controlled variables and manipulated variables of the process due to its outstanding advantage of solving quadratic problem. Another one lies in its good robustness.

In real environment, the model imperfections, physical condition limitations, and disturbances may cause the output to deviate from its reference signal. As a robust control algorithm, MPC has its irreplaceable advantage in dealing with the problem of external perturbations and internal noises by using its good control effect and strong robustness (Ali et al. 2017). Also, MPC can effectively overcome the uncertainty, nonlinearity and unmodelable high-order dynamics of control process. In actual environment, the plant model of the micropositioning stage can be expressed in the following state-space form:

$$\begin{aligned} \begin{aligned} X_{k+1} &=A_d X_k + B_d u_k + f_k \\ Y_k &=C_d X_k \end{aligned} \end{aligned}$$

where \(f_k\) is considered as the combined effects of unmodeled high-order dynamics, internal noise and external perturbations, which mainly come from the vibration and even air-flow vibration in experimental setup. In simulation study, \(f_k\) is assumed to be a sequence of integrated white noises and transiently perturbed signals.

Robustness testing with system model uncertainty

Firstly, robustness testing is conducted under system uncertainties of system matrix \(A_d\) and control matrix \(B_d\) in simulation study

$$\begin{aligned} A_d=\left[ \begin{array}{cc} a_0 &{} a_1\\ a_2 &{} a_3 \\ \end{array} \right] , \ B_d=\left[ \begin{array}{cc} b_0 &{} b_1 \\ \end{array} \right] ^T \end{aligned}$$

For illustration, the reference signal (A = 7, f = 0.3) is used for testing. Before the time \(t_1=7\) s, we use the original set of model parameters \(A_d\), \(B_d\), and \(C_d\) in simulation testing. After \(t_1\), we use another set of model parameters \(A_{d1}\), \(B_{d1}\), and \(C_d\). The system model values of \(A_d\) and \(B_d\) are modified as follows.

$$\begin{aligned} A_{d1}=\left[ \begin{array}{cc} a_0 &{} 1.3a_1\\ a_2 &{} 1.1a_3 \\ \end{array} \right] , \ B_{d1}=\left[ \begin{array}{cc} 0.9b_0 &{} b_1 \\ \end{array} \right] ^T \end{aligned}$$

The testing result is shown in Fig. 11. It is observed that the tracking trajectory is satisfactory and good robustness is revealed in this testing.

Fig. 11

Robustness testing result with system parameter variation

After \(t_2=15\) s, we use another set of model parameters \(A_{d2}\), \(B_{d2}\), and \(C_d\). The model values of \(A_d\) and \(B_d\) are modified as:

$$\begin{aligned} A_{d2}=\left[ \begin{array}{cc} 0.5a_0 &{} 1.3a_1\\ 0.7a_2 &{} 1.4a_3 \\ \end{array} \right] , \ B_{d2}=\left[ \begin{array}{cc} 0.5b_0 &{} b_1 \\ \end{array} \right] ^T \end{aligned}$$

The testing result is shown in Fig. 11. It is found that the tracking trajectory is unsatisfactory since a larger tracking error is induced in this testing.

Fig. 12

Tracking error of robustness testing with system parameter variation

For making more intuitive comparison, the displacement errors of the above situations are shown in Fig. 12. Quantitatively, we can get the error comparison: Error0 < Error1 < Error2.

According to the above analyses, we can see that slight change of the system parameter values cause little impact on the final result of motion tracking. Once the range of change is beyond a certain extent, the tracking error would be unacceptable. In general, the realization of MPC algorithm relies on the system model of the plant. The good robustness of MPC is limited under certain condition. That is, the robustness of MPC is acceptable only when the model parameters change within the allowable range.

Robustness testing with disturbance and noise

Secondly, robustness testing is conducted under noise condition and disturbance condition in simulation study as shown in Fig.  13a, in which the noise influence exists throughout the overall process and external disturbance is transient (external disturbance happens in the beginning and then vanishes gradually). The sinusoid wave (with amplitude 30 and frequency 0.3) is used as reference signal. As shown in Fig. 14, the red line represents the reference signal, the blue line represents the output signal, and the green line is the error signal between the above two signals. The model predictive controller behaves fine under noise condition without disturbance. However, it could not handle external disturbance very well, as shown in the initial part of Fig.  14. The main reason for this phenomenon lies in that the response of MPC is slow since more time is needed for MPC computation to minimize the cost function.

Fig. 13

Simulation block diagrams. a MPC control under perturbed conditions; b PID control under perturbed conditions

Fig. 14

MPC tracking results under noise and disturbance

Fig. 15

PID control results under noise and disturbance

Fig. 16

Robustness comparison between PID and MPC controllers under perturbed conditions

Table 3 Tracking error comparison of PID and MPC controllers

For comparison, the PID control is also implemented as shown in Fig. 13b. The simulation is tested for PID control strategy under the same perturbed condition as the previous one. Being opposite to the situation of MPC control, PID can handle the external disturbance problem very well, but it fails to eliminate the noise under continuous noisy conditions, as shown in Fig. 15. The advantage of disturbance cancellation ability of PID is obvious. The reason may lie in that PID strategy includes a derivative part, which can eliminate the overshoot for the control response to some extent (Yan and Xu 2019). For observing the comparison more intuitively, PID error and MPC error are shown in Fig. 16. We can see that the amplitude of PID’s error signal is quite larger than that of MPC. For comparing the two control strategies quantitatively, the RMS errors are tabulated in Table 3. From the table, we can see the obvious advantage of MPC to suppress the noise effect.

In the beginning, the external disturbance is the main perturbation factor in motion process. Later, the noise factor arises as the dominant one after the transient disturbance disappears. External disturbance is temporary and occasional, but the noise is continuously affecting the system in actual workspace. Therefore, MPC is more effective for application in realistic experimental environment owing to its strong robustness.

Discussion and conclusion

The strategy of NN–MPC control is implemented for motion control of the micropositioning system in this research. The conventional way of tuning parameters for the MPC is time-consuming. With the establishment of novel NN model, the parameter tuning of the MPC is conducted more efficiently and adaptively. Once the reference signals with varied amplitudes and frequencies (A,f) are generated, the optimal parameter vectors (\(N_p\), \(N_c\), \(\bar{w}\)) can be produced by the NN model automatically. Then, the parameter vectors can be put into use in MPC system according to the actual demands. It means that it is unnecessary to tune the parameters manually with trail-and-error approach. The developed NN-MPC is more intelligent and adaptive than the conventional methods. Based on the current result, a more integrated control scheme is being improved further in our research. The block diagram is shown in Fig.  17. In order to solve more challenging problems occurred in engineering application, more intelligent algorithms will be put into use in the controller design.

Fig. 17

Simulation block diagram of the control scheme

In this paper, a micropositioning system with nonminimum-phase is controlled by using an innovative control scheme based on NN–MPC. By applying the advanced control strategy, precision motion tracking is achieved eventually with various reference signals. Critically, a NN model is established for the MPC parameter tuning, which makes the process of motion tracking control more efficient and adaptive in the micropositioning system. Robustness property of the motion control under various conditions has been verified. Further works including experimental study will be conducted in the future. Moreover, the developed control scheme based on NN-MPC will be extended to other non-minimum-phase or minimum-phase systems for relevant applications.


  1. Ali A., Ahmed, S.F., Joyo, M.K., Kushsairy K.: Mpc-pid comparison for controlling therapeutic upper limb rehabilitation robot under perturbed conditions. In: Proc. of 2017 IEEE 3rd International Conference on Engineering Technologies and Social Sciences (ICETSS), 2017, pp. 1–5

  2. Chen, Z., Zheng, J., Zhang, H., Ding, H.: Tracking of piezoelectric actuators with hysteresis: a nonlinear robust output regulation approach. Int J Robust Nonlinear Control 27(15), 2610–2626 (2017)

    MathSciNet  MATH  Google Scholar 

  3. Cheng, L., Liu, W., Hou, Z., Yu, J., Tan, M.: Neural-network-based nonlinear model predictive control for piezoelectric actuators. IEEE Trans Ind Electron 62(12), 7717–7727 (2015)

    Google Scholar 

  4. Dong, R., Tan, Y., Xie, Y., Janschek, K.: Recursive identification of micropositioning stage based on sandwich model with hysteresis. IEEE Trans Control Syst Technol 25(1), 317–325 (2017)

    Google Scholar 

  5. Elmali, H., Olgac, N.: Sliding mode control with perturbation estimation (SMCPE): a new approach. Int J Control 56(4), 923–941 (1992)

    MathSciNet  MATH  Google Scholar 

  6. Hauser, J., Sastry, S., Meyer, G.: Nonlinear control design for slightly non-minimum phase systems: application to v/stol aircraft. Automatica 28(4), 665–679 (1992)

    MathSciNet  MATH  Google Scholar 

  7. Hoagg, J.B., Bernstein, D.S.: Nonminimum-phase zeros—much to do about nothing—classical control—revisited part ii. IEEE Control Syst Mag 27(3), 45–57 (2007)

    Google Scholar 

  8. Kapur J.N., Kesavan H.K.: Entropy optimization principles and their applications. In: Entropy and Energy Sissipation in Water Resources. Springer, 1992, pp. 3–20

  9. Liu, W., Cheng, L., Hou, Z., Yu, J., Tan, M.: An inversion-free predictive controller for piezoelectric actuators based on a dynamic linearized neural network model. IEEE/ASME Trans Mech 21(1), 214–226 (2016)

    Google Scholar 

  10. Mohammadzaman I., Sedigh, A.K., Nasirian, M.: Predictive control of non-minimum phase motor with backlash in an earth station antenna. In: Proc. of 2006 Chinese Control Conference (CCC 2006), 2006, pp. 900–905

  11. Park, K., Desai, J.P.: Micropositioning and control of an underactuated platform for microscopic applications. IEEE/ASME Trans Mech 21(6), 2635–2646 (2016)

    Google Scholar 

  12. Qin, S.J., Badgwell, T.A.: A survey of industrial model predictive control technology. Control Eng Pract 11(7), 733–764 (2003)

    Google Scholar 

  13. Rana, M.S., Pota, H.R., Petersen, I.R.: Performance of sinusoidal scanning with mpc in afm imaging. IEEE/ASME Trans Mech 20(1), 73–83 (2015)

    Google Scholar 

  14. Rawlings, J.B.: Tutorial overview of model predictive control. IEEE Control Syst Mag 20(3), 38–52 (2000)

    Google Scholar 

  15. Richalet, J.: Industrial applications of model based predictive control. Automatica 29(5), 1251–1274 (1993)

    MathSciNet  Google Scholar 

  16. Rossiter, J.A.: Model-based predictive control: a practical approach. CRC Press, Boca Raton (2017)

    Google Scholar 

  17. Sin, G., De Pauw, D.J., Weijers, S., Vanrolleghem, P.A.: An efficient approach to automate the manual trial and error calibration of activated sludge models. Biotechnol Bioeng 100(3), 516–528 (2008)

    Google Scholar 

  18. Wan, S., Xu, Q.: Design and analysis of a new compliant xy micropositioning stage based on roberts mechanism. Mech Mach Theory 95, 125–139 (2016)

    Google Scholar 

  19. Wang P., Xu Q.: Model predictive control design of a flexure-based micropositioning system. In: Proc. of 2016 Chinese Control and Decision Conference (CCDC), 2016, pp. 5232–5236

  20. Wang L.: Model predictive control system design and implementation using MATLAB®. Springer, 2009

  21. Wills, A.G., Bates, D., Fleming, A.J., Ninness, B., Moheimani, S.O.R.: Model predictive control applied to constraint handling in active noise and vibration control. IEEE Trans Control Syst Technol 16(1), 3–12 (2008)

    Google Scholar 

  22. Wojsznis, W., Gudaz, J., Blevins, T., Mehta, A.: Practical approach to tuning mpc. ISA Trans 42(1), 149–162 (2003)

    Google Scholar 

  23. Xiao, H., Li, Z., Yang, C., Zhang, L., Yuan, P., Ding, L., Wang, T.: Robust stabilization of a wheeled mobile robot using model predictive control based on neurodynamics optimization. IEEE Trans Ind Electron 64(1), 505–516 (2017)

    Google Scholar 

  24. Xu, Q.: New flexure parallel-kinematic micropositioning system with large workspace. IEEE Trans Robot 28(2), 478–491 (2012)

    Google Scholar 

  25. Xu, Q.: Digital integral terminal sliding mode predictive control of piezoelectric–driven motion system. IEEE Trans Ind Electron 63(6), 3976–3984 (2016)

    Google Scholar 

  26. Yan Y., Xu Q.: Neural networks-based pid precision motion control of a piezo-actuated microinjector. In: Intelligent Robotics and Applications. ICIRA 2019, H. Yu, J. Liu, L. Liu, Z. Ju, Y. Liu, D. Zhou, Eds., Springer, 2019, Lecture Notes in Computer Science 11745, ISBN: 978-3-030-27528-0, pp. 407-418

  27. Zhang, R., Gao, F.: Multivariable decoupling predictive functional control with non-zero-pole cancellation and state weighting: application on chamber pressure in a coke furnace. Chem Eng Sci 94, 30–43 (2013)

    Google Scholar 

  28. Zhang, X., Xu, Q.: Design and testing of a new 3-DOF spatial flexure parallel micropositioning stage. Int J Precis Eng Manuf 19(1), 109–118 (2018)

    Google Scholar 

  29. Zhang, Y., Yu, L.-C.: Single-cell microinjection technology in cell biology. Bioessays 30(6), 606–610 (2008)

    Google Scholar 

  30. Zhang, H., Hu, B., Li, L., Chen, Z., Wu, D., Xu, B., Huang, X., Gu, G., Yuan, Y.: Distributed hammerstein modeling for cross-coupling effect of multiaxis piezoelectric micropositioning stages. IEEE/ASME Trans Mech 23(6), 2794–2804 (2018)

    Google Scholar 

  31. Zou, Q., Leang, K., Sadoun, E., Reed, M., Devasia, S.: Control issues in high-speed afm for biological applications: collagen imaging example. Asian J Control 6(2), 164–178 (2004)

    Google Scholar 

Download references

Author information



Corresponding author

Correspondence to Qingsong Xu.

Ethics declarations

Conflict of interest

The authors declare that they have no conflict of interest.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This work was funded in part by National Natural Science Foundation of China (File No. 51575545), The Science and Technology Development Fund, Macau SAR (File Nos. 0008/2020/A, 0153/2019/A3 and 0022/2019/AKP) and University of Macau (File Nos. MYRG2018-00034-FST and MYRG2019-00133-FST).

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Yan, Y., Xu, Q. Neural networks-based model predictive control for precision motion tracking of a micropositioning system. Int J Intell Robot Appl 4, 164–176 (2020).

Download citation


  • Micropositioning system
  • Precision motion control
  • Model predictive control
  • Neural networks