Keywords

1 Introduction

Advanced safety technologies have become increasingly important with the realization of automated or unmanned vehicles. In such a requirement, a real-time optimal control (RTOC) system that can improve efficiency becomes available due to the increased computing power. A model predictive control (MPC) [1] is the most widely used RTOC algorithm that can optimize the cost value subject to constraints, including nonlinearity. The problem formulation is one of the crucial points for rapid convergence because the controller iteratively solves the optimal control problem. Thus, we have proposed the path generator embedded model predictive control (PG-MPC) approach, effectively reducing the computational burden [2]. However, the utility of the PG-MPC is not verified for the full-vehicle model environment.

This study applies the PG-MPC to the full-vehicle model simulation to evaluate its performance. The embedded path generator is constructed by deep learning [3] using the multiple open-loop optimal control problem solutions as the training dataset. The numerical simulation in the general layout course with the presence of the obstacle demonstrates the utility of the PG-MPC.

2 Vehicle Dynamics Model

A full-vehicle model is used for the numerical simulation, whereas an equivalent two-wheel model is used for the dynamics of each optimal control problem for open-loop optimal solutions and MPC to reduce the computational burden [4]. Equation (1) shows the equations of motion for the equivalent two-wheel model described in course coordinates with constant speed V. The vehicle state and control variables are \(\boldsymbol{X}=[~\beta ~r~\psi ~x_s~y_s~\delta _f~]^T\) and \(\boldsymbol{U}=[\delta _{fc}]\).

$$\begin{aligned} \begin{array}{ll} \dot{\boldsymbol{X}} = \boldsymbol{f}(\boldsymbol{X},\boldsymbol{U}) = \begin{bmatrix} -\dfrac{2(C_f+C_r)}{mV} \beta -\left( 1+\dfrac{2(C_f l_f-C_r l_r)}{mV^2}\right) r+\dfrac{2C_f}{mV} \delta _f \\ -\dfrac{2(C_f l_f-C_r l_r)}{I_z} \beta -\dfrac{2(C_f l_f^2+C_r l_r^2)}{I_z V} r+\dfrac{2C_f l_f}{I_z} \delta _f \\ r\\ \dfrac{1}{1-y_s\kappa }V\cos {(\psi _v)}\\ V\sin {(\psi _v)}\\ \dfrac{1}{T_d}(\delta _{fc}-\delta _f) \end{bmatrix} \end{array} \end{aligned}$$
(1)

Where \(\beta \) is the vehicle side slip angle; r is the yaw rate; \(\psi \) is the yaw angle; \(x_s\) and \(y_s\) are positions; \(\delta _{f}\) and \(\delta _{fc}\) are the front wheel steering angle and its command value; \(l_f\) and \(l_r\) are distance from the mass center and front and rear axel; \(C_f\) and \(C_r\) are the cornering power of the front and rear wheels; and \(I_z\) is the yaw moment of inertia. The relative yaw angles to the course center line are \(\psi _s(=\psi -\theta )\) and \(\psi _v(=\psi _s+\beta )\), where \(\theta \) is the course tangent angle and \(\kappa \) is the curvature, which are functions of position \(x_s\).

3 Optimal Path Generator Embedded MPC

3.1 Architecture of PG-MPC

The MPC architecture generally consists of the main frame and the optimization frame executed parallel during control, requiring information transfer between the frames. The optimization frame generates the optimal control input from the given information primarily through an iterative algorithm, which solves the optimal control problem in the optimization frame using the states and the reference path information from the main frame. However, generating the reference path while considering the target course and obstacle avoidance increases the computational burden of the main frame. Thus, in previous work, we proposed a PG-MPC algorithm in which the prescribed function provides the reference path directly during the iterative optimization computation.

Figure 1 shows the operation procedure of the PG-MPC for the vehicle in the course coordinate. The PG-MPC solves the nonlinear programming problem, which minimizes the cost function subject to the discretized dynamics, the initial conditions, and the path constraints. The prescribed function gives the reference value \(y_{sc_i}\) for each discrete point i, which works as the embedded path generator in the MPC algorithm, and its arguments use modest information from the main frame, which can reduce the computational burden of each frame. The primary key to this idea is to design an appropriate optimal path generator(OPG) function.

3.2 Construction of Optimal Path Generator

Fig. 1.
figure 1

Inner loop part of PG-MPC algorithm.

Fig. 2.
figure 2

Construction of optimal path generator using deep learning.

Figure 2 shows the construction of the OPG using the deep learning framework. Using a deep-learning neural network, we construct the nonlinear function that generates the optimal reference path. The multi-layer neural network function generated by the supervised deep learning algorithm approximates the nonlinear relationships of multiple open-loop optimal solutions, considering various situations, such as lateral displacement from the reference path and the relative position to the obstacles. The optimal solution is calculated numerically using an optimization method based on the pseudospectral (PS) method [5]. In addition, the time-axis folding method [6] is used to spread the dense discretization nodes around the obstacle. Optimal control solutions in the feasible region used for the training dataset are obtained by the following cost function, Eq. (2).

$$\begin{aligned} J = \displaystyle \int _{t_0}^{t_f} q_1 \varDelta y_s^2+q_2 \dot{\delta }_{f}^2 +q_3 \ddot{y}_s^2 + q_4 (e^{e^{-W h(x_s(t), y_s(t))}}-1) dt \end{aligned}$$
(2)

The first three terms in the Lagrange cost evaluate the position error(\(\varDelta y_s=y_{s_{obs}}-y_{sc}\)), the steering angular velocity(\(\dot{\delta }_{f}\)), and the lateral acceleration(\(\ddot{y}_s\)) respectively to follow the target course while moderating control input. The fourth term gives a risk potential value that increases the cost function J when the vehicle is close to the obstacle [7].

$$\begin{aligned} h(x_s(t), y_s(t)) = \Bigl (\dfrac{ x_s(t) - x_{s_{obs}}}{a}\Bigr )^p + \Bigl (\dfrac{ y_s(t) - y_{s_{obs}}}{b}\Bigr )^p - r^p \end{aligned}$$
(3)

Where a, b, p, r, W determines the shape of the obstacle and \(x_{obs},y_{obs}\) determines the position of the obstacle in the \(x_s\) and \(y_s\) axes.

Figure 3 shows the obtained discretization nodes of the open-loop optimal solution for the 220 cases used for the training dataset. The lateral distance increases to avoid the obstacle where the relative distance is near the obstacle; otherwise, the vehicle takes straight trajectories. By using this training dataset to obtain the OPG, several pairs of the number of hidden layers (HD) and the number of neurons (ND) were tried, and we found HD=4 and ND=14 minimize the average absolute error.

Figure 4 shows the function value of constructed OPG for domain around the obstacle. The reference command \(y_{sc}\) increases when the relative distance is close to the obstacle. The function is smooth, and there is no outlier value.

Fig. 3.
figure 3

Open-loop optimal trajectories used for a training dataset.

Fig. 4.
figure 4

Function value of OPG around obstacle.

4 Numerical Simulation

This section demonstrates a numerical application of the PG-MPC developed in previous sections. The utility of the PG-MPC is evaluated by comparing it with the results of the standard MPC. A full-vehicle model of the middle-sized sedan runs in a general shape layout course consisting of straight and curved sections. Three obstacles on the course are assumed to be detected by sensors, and their relative position and speed can be used as information for controller inputs.

Table 1 shows the parameters of the numerical simulation. The cost function for both controllers is Eq. (2), but the standard MPC must consider the fourth term to avoid the obstacle, while the PG-MPC does not need this term because it only follows the reference path generated by the OPG. For this reason, the standard MPC requires large horizon parameters, \(H_p\) and \(H_u\), to obtain a stable trajectory, which increases the computational burden.

Table 1. Parameters used for numerical simulation.
Fig. 5.
figure 5

Overall trajectory around the course, obstacle avoidance trajectory, and exsample scene.

Fig. 6.
figure 6

States variables, G-G diagram, and computation time.

Figure 5 shows the trajectories obtained by the full-vehicle model simulation, including the overall result and details around the obstacles. Both controllers successfully run around the overall course. However, the standard MPC takes inward avoidance trajectories at the obstacle \(x_s=950\), which runs off the course. Thus, an additional constraint is required to keep the vehicle inside the course.

Figure 6 shows the states variables, the G-G diagram, and computation time. It is clear that the PG-MPC runs a smoother trajectory and uses less G-force for comfortable driving. The computation time history shows that the appearance of the obstacle varies the evaluation character of the cost function, which increases the computational burden of the standard MPC. On the other hand, the PG-MPC has a level computation time because it follows the path generated by the OPG. Therefore, the PG-MPC can be applied to the full-vehicle model environment.

5 Conclusion

The model predictive control that sequentially generates the optimal trajectories has found wide applications in recent years. In previous studies, we have proposed the path generator embedded model predictive control approach, effectively increasing the performance. In this study, numerical simulations of the full-vehicle model investigate the applicability of the controller for the vehicle in the general shape road. The path generator is constructed by deep learning using the multiple open-loop optimal control problem solutions as the training dataset. Results demonstrate that the sequentially calculating optimal control command has the potential for real-time optimal control in the presence of the obstacle. Furthermore, the path generator embedded model predictive control has a level computation time because it only follows the smooth reference path.