Keywords

1 Introduction

By 2018, industrialization has caused global warming of 1℃, and the Intergovernmental Panel on Climate Change (IPCC) has pointed out that in order to avoid serious effects of climate change, global warming must be controlled within 1.5 ℃ between 2030 and 2052 [1], so energy saving and carbon reduction has become an issue that all industries must confront. In the whole industrial field, the energy consumption and emissions generated by transportation account for a huge proportion, and the liquid fuel consumed by trucks alone accounts for more than 20% of the whole industrial field [2, 3], so the research on the energy saving of trucks is of urgent practical significance. At the current stage, predictive cruise control (PCC) with the objective of energy saving is easier to achieve than fully driverless, and therefore has been widely studied [4].

Model predictive control (MPC) benefits from its rolling optimization framework, which allows the continuous incorporation of future information into the control system, while being applicable to multi-objective and multi-constrained control problems, and is the basic framework for PCC [4, 5]. In the framework of MPC, there are generally three ways to solve the PCC optimization problem: one is the direct method, using the programming method to solve [6, 7], which can guarantee the optimality of control to a greater extent, but the solution speed of optimization problems with large complexity is slow; another is the indirect method, which uses the variational method or the Pontryagin minimax principle (PMP), etc. to transform the optimization problem and then solves it using numerical methods [8, 9], which is not conducive to imposing constraints on some state quantities; in addition is the dynamic programming method [10], which can guarantee the optimality of the control, but is difficult to optimize in real time, so it is often calculated in the cloud as a reference for the vehicle. In this paper, a quadratic programming (QP) approach is used to reduce the complexity of the optimization problem as much as possible while ensuring performance.

Real-time optimization of discrete gear for PCC is a complex problem, and there are two main methods to solve it. One is to use the default gear position known in the prediction horizon to deal with the problem [6], which will inevitably lose certain control optimality; the other is to use the mixed integer programming (MIP) approach to integrate the gear optimization directly into the speed planning [11], which can ensure the control optimality but has the disadvantage of slow solution speed. In this paper, a hierarchical control approach is used to achieve real-time optimization of gears while avoiding gear optimization and speed planning simultaneously.

In this paper, a hierarchical control approach is adopted, in which the lower layer controller searches for an offline optimized gear table based on the vehicle driving force and vehicle speed to achieve real-time optimization of gear, and the upper layer controller achieves real-time optimization of speed by solving a QP problem based on a linearized vehicle model. The structure of the later paper is as follows: the second section describes the way of gear optimization by the lower layer controller; the third subsection describes the design of the upper layer controller in MPC framework in detail; in the fourth section, the hierarchical controller is simulated and verified under typical road and real road scenarios respectively, and the results is analyzed; the fifth section summarizes the whole paper.

2 Lower Layer Gear Optimization Controller Design

In the PCC algorithm considering gear optimization, engine torque and gears need to be optimized simultaneously. In order to avoid solving complex MIP problems, it is necessary to separate the gear optimization from the engine torque optimization in a layer. In this section, the design of the lower layer gear optimization controller is briefly described, and for more details, please refer to the previous work.

2.1 Gear Optimization Map Design

The essence of the vehicle design with different gears is to make the engine work in the proper engine speed and torque range when the vehicle is driven at different speeds and driving forces. The design of the gear optimization map in this paper is to select the most energy-saving gears for vehicles operating at different speeds and driving forces with the goal of saving fuel, and to establish a single mapping relationship from speed and driving force to gears. The specific selection method is to calculate the engine torque and engine speed at different gears for a fixed operating point of vehicle speed and driving force, and then find the engine fuel consumption rate map to get the corresponding fuel consumption rate at different gears (The gears that are out of the engine operating range must be excluded), and select the gear with the lowest fuel consumption rate as the optimal gear at the operating point of the vehicle. (At a certain speed, the minimum fuel consumption rate is equivalent to the minimum fuel consumption in 100 km.) The optimal gears for different vehicle speeds and driving forces are aggregated to obtain the gear optimization map shown in Fig. 1.

Fig. 1.
figure 1

Gear optimization map.

It should be noted here that frequent gear changes should be avoided in the actual vehicle driving process, so a certain shift interval should be set, and the optimal gear map cannot be connected to consider only the shift interval, but it can be constrained at the output end.

2.2 Fuel Consumption Model Fitting

The fuel consumption rate of an engine can usually be expressed as a higher-order polynomial of engine torque and engine speed. When the gears of the vehicle operating points at different vehicle speeds and driving forces are determined, their corresponding engine fuel consumption rates are also fixed, so a higher-order polynomial of vehicle speed and driving force can be tried to fit the fuel consumption rate of the engine.

$$ \dot{m}_{f} \left( {v,F_{t} } \right) = (h_{03} v^{2} + h_{11} F_{t} + h_{13} v^{2} F_{t} + h_{21} F_{t}^{2} )v $$
(1)

\(\dot{m}_{f}\) is fuel consumption rate, \(v\) is vehicle speed, \(F_{t}\) is driving force, and others are fitting coefficients. The choice of different order matching of vehicle speed and drive force is mainly considered for the construction of the subsequent QP problem. The least squares based fitting of fuel consumption rate is very effective (see Fig. 2), so it is used as the energy consumption model in this paper.

Fig. 2.
figure 2

Fuel consumption rate fitting result.

3 Upper Layer PCC Controller Design

In this section, the design of the upper-level predictive cruise controller is described in detail. First, the conventional vehicle longitudinal dynamics model is transformed to obtain a linear vehicle model. After that, the objective function of the PCC optimization problem is established in the MPC framework, the system constraints are specified, and the optimization problem is organized into a normalized QP problem by derivation. Finally, the solution method and effect of the optimization problem are briefly explained.

3.1 Vehicle Model Conversion

The vehicle model usually used in the study of longitudinal control of vehicle is based on Newton's second law.

$$ \frac{v(k + 1) - v(k)}{{\Delta t}} = \frac{{F_{t} (k) - F_{\arg } (k)}}{{\delta m_{v} }} $$
(2)

\(\delta\) is the equivalent rotating mass conversion factor, \(m_{v}\) is the overall vehicle mass, and \(F_{\arg }\) is the sum of air resistance, rolling resistance, and hill climbing resistance during driving. For commercial vehicle, their rotating mass is small compared to the overall vehicle mass, and their \(\delta\) is close to 1. Therefore, the effect of rotating mass will be ignored in the subsequent contents of this paper.

In order that the optimal control problem in the MPC framework can be subsequently transformed into a QP problem, the kinetic energy theorem is applied to obtain the longitudinal vehicle model by using Eulerian dispersion.

$$ E(k + 1) - E(k) = \frac{1}{2}m_{v} \left( {v^{2} (k + 1) - v^{2} (k)} \right) = \left( {F_{t} (k) - F_{\arg } (k)} \right)\Delta s $$
(3)

After that, vehicle kinetic energy and driving force are selected as state quantities, and the rate of change of driving force is used as the control quantity, which is convenient for the establishment of QP problem and also for imposing comfort constraints on the vehicle, and the final state equation of vehicle longitudinal dynamics is obtained as follows.

$$ x(k + 1) = Ax(k) + B_{u} u(k) + B_{d} d(k),y(k) = C_{c} x(k) $$
(4)
$$ x(s) = \left[ {\begin{array}{*{20}c} {E(s)} & {F_{t} (s)} \\ \end{array} } \right]^{T} ;u(s) = \dot{F}_{t} (s) = \frac{1}{v}\dot{F}_{t} (t);y(s) = x(s) $$
$$ d(s) = \left[ {\begin{array}{*{20}c} { - m_{v} \Delta s(f\cos \alpha (s) + g\sin \alpha (s))} \\ 0 \\ \end{array} } \right]; $$
$$ A = \left[ {\begin{array}{*{20}c} {1 - \frac{{C_{d} A_{f} \rho }}{{m_{v} }}\Delta s} & {\Delta s} \\ 0 & 1 \\ \end{array} } \right];B_{u} = \left[ {\begin{array}{*{20}c} 0 \\ {\Delta s} \\ \end{array} } \right];B_{d} = \left[ {\begin{array}{*{20}c} 1 & 0 \\ 0 & 1 \\ \end{array} } \right];C_{c} = \left[ {\begin{array}{*{20}c} 1 & 0 \\ 0 & 1 \\ \end{array} } \right]. $$

\(C_{d}\) is air resistance coefficient, \(A_{f}\) is windward area, \(\rho\) is air density, \(f\) is rolling resistance coefficient, \(g\) is gravitational acceleration, and \(\alpha\) is road slope. In this paper, the distance domain discretization is used, which can well introduce the forward road information into the state equation as a known disturbance term.

3.2 Optimized Problem Establishment

The optimization problem in this paper will be constructed in the MPC framework with a mathematical expression that is discrete over the distance domain.

Objective Function Establishment. For the design of energy-saving PCC for commercial vehicles, the primary goal is fuel economy, but it is also necessary to consider time economy and driving comfort, so the design objective function is as follows.

$$ \begin{aligned} J & = \sum\limits_{i = 1}^{n} {\left[ {{{\dot{m}_{f} \left( {v(k + i|k),F_{t} (k + i|k)} \right)} \mathord{\left/ {\vphantom {{\dot{m}_{f} \left( {v(k + i|k),F_{t} (k + i|k)} \right)} {v(k + i|k)}}} \right. \kern-0pt} {v(k + i|k)}}} \right.} \hfill \\ & \left. {{ + }\omega_{r} \left( {E(k + i|k) - E_{r} (k + i)} \right)^{2} + q_{0,i} \dot{F}_{t}^{2} (k + i - 1)} \right]\Delta {\text{s}} \hfill \\ \end{aligned} $$
(5)

\(E_{r}\) is the reference kinetic energy, calculated from the reference vehicle speed. In the objective function, fuel economy is expressed in the form of cumulative fuel consumption, time economy is expressed as the squared speed tracking error, and comfort is expressed as the squared rate of change in drive force. The coefficients in front of each term are weighting factors, all of which can be adjusted.

System Constraint Selection. The system constraints include mainly the physical constraints of the vehicle, the physical constraints of the road as well as the safety constraints, and the driver comfort constraints.

Powertrain Constraints. The powertrain constraints are mainly engine output torque range limits related to engine speed, which can be translated into vehicle drive range limits related to vehicle speed after fixing the gear optimization map.

$$ F_{t,\min } (v(k)) \le F_{t} (k) \le F_{t,\max } (v(k)) $$
(6)

Under most vehicle driving conditions, the change of vehicle speed within the prediction horizon will not be very significant and basically will not reach the boundary of the driving force, so the upper and lower boundaries of the driving force at the current vehicle speed can be used as the limit within the whole prediction horizon.

Road Adhesion Restraint. The maximum and minimum drive force available to a vehicle under a given road is determined not only by the powertrain, but also by the road's adhesion limits.

$$ \left| {F_{t} (k)} \right| \le m_{v} g\varphi $$
(7)

\(\varphi\) is road adhesion coefficient.

Road Security Restraint. In the case of highways, the main consideration for the safety restraint of vehicles is the speed limit. The speed limit of the vehicle is usually determined by two aspects, which depend on the speed limit specified by the road on one hand and on the curvature of the road on the other hand. For car-following conditions, the safety distance or time gap constraint can also be transformed into a speed constraint.

$$ v_{\min } (k) \le v(k) \le v_{\max } (k) $$
(8)

Driving Comfort Constraints. The comfort constraint, usually considered as a constraint on the jerk, is considered here as a constraint on the rate of change of the vehicle drive. In the case of small changes in slope, the constraints on the rate of change of driving force are equivalent to the constraints on the jerk.

$$ \left| {\dot{F}_{t} (k)} \right| \le \dot{F}_{t,\max } $$
(9)

QP Problem Establishment. The optimal control problem built in the MPC framework needs to be transformed into the following normalized QP problem after a series of transformations in order to be solved conveniently by existing solvers.

$$ \begin{gathered} \mathop {\min }\limits_{U(k)} U^{T} (k)HU(k) + G(k + 1|k)U(k) \hfill \\ {\text{ s}}{\text{.t}}{. }C_{u} U(k) \ge b(k + 1|k) \hfill \\ \end{gathered} $$
(10)

First, the relationship between the observed sequence and the initial state quantity, the control sequence and the measurable disturbance in the whole prediction horizon needs to be expressed in the form of a matrix calculation equation.

$$ Y_{p} (k + 1|k) = S_{x} x(k) + S_{u} U(k) + S_{d} D(k) $$
(11)
$$\begin{aligned}& Y_{p} (k{ + }1\left| {k)} \right. \triangleq \left[ {\begin{array}{*{20}c} {y(k + 1\left| {k)} \right.} \\ {y(k + 2\left| {k)} \right.} \\ \vdots \\ {y(k + n\left| {k)} \right.} \\ \end{array} } \right]_{n \times 1} ; \\ & U(k) \triangleq \left[ {\begin{array}{*{20}c} {u(k)} \\ {u(k + 1)} \\ \vdots \\ {u(k + n - 1)} \\ \end{array} } \right]_{n \times 1} ; \\ & D(k) \triangleq \left[ {\begin{array}{*{20}c} {d(k)} \\ {d(k + 1)} \\ \vdots \\ {d(k + n - 1)} \\ \end{array} } \right]_{n \times 1} ; \end{aligned} $$
$$ S_{x} = \left[ {\begin{array}{*{20}c} {C_{c} A} \\ \begin{gathered} C_{c} A^{2} \hfill \\ C_{c} A^{3} \hfill \\ \end{gathered} \\ \vdots \\ {C_{c} A^{n} } \\ \end{array} } \right]_{n \times 1} ;S_{u} = \left[ {\begin{array}{*{20}c} {\begin{array}{*{20}c} {C_{c} B_{u} } & 0 \\ \end{array} } & 0 & \cdots & 0 \\ {\begin{array}{*{20}c} {C_{c} AB_{u} } & {C_{c} B_{u} } \\ \end{array} } & 0 & \cdots & 0 \\ {\begin{array}{*{20}c} {C_{c} A^{2} B_{u} } & {C_{c} AB_{u} } \\ \end{array} } & {C_{c} B_{u} } & \cdots & 0 \\ {\begin{array}{*{20}c} {\begin{array}{*{20}c} \vdots \\ {C_{c} A^{n - 1} B_{u} } \\ \end{array} } & {\begin{array}{*{20}c} \vdots \\ {C_{c} A^{n - 2} B_{u} } \\ \end{array} } \\ \end{array} } & {\begin{array}{*{20}c} \vdots \\ {C_{c} A^{n - 3} B_{u} } \\ \end{array} } & {\begin{array}{*{20}c} \ddots \\ \cdots \\ \end{array} } & {\begin{array}{*{20}c} \vdots \\ {C_{c} B_{u} } \\ \end{array} } \\ \end{array} } \right]_{n \times n} ; $$
$$ S_{d} = \left[ {\begin{array}{*{20}c} {\begin{array}{*{20}c} {C_{c} B_{d} } & 0 \\ \end{array} } & 0 & \cdots & 0 \\ {\begin{array}{*{20}c} {C_{c} AB_{d} } & {C_{c} B_{d} } \\ \end{array} } & 0 & \cdots & 0 \\ {\begin{array}{*{20}c} {C_{c} A^{2} B_{d} } & {C_{c} AB_{d} } \\ \end{array} } & {C_{c} B_{d} } & \cdots & 0 \\ {\begin{array}{*{20}c} {\begin{array}{*{20}c} \vdots \\ {C_{c} A^{n - 1} B_{d} } \\ \end{array} } & {\begin{array}{*{20}c} \vdots \\ {C_{c} A^{n - 2} B_{d} } \\ \end{array} } \\ \end{array} } & {\begin{array}{*{20}c} \vdots \\ {C_{c} A^{n - 3} B_{d} } \\ \end{array} } & {\begin{array}{*{20}c} \ddots \\ \cdots \\ \end{array} } & {\begin{array}{*{20}c} \vdots \\ {C_{c} B_{d} } \\ \end{array} } \\ \end{array} } \right]_{n \times n} . $$

After that, the objective function is written in a quadratic form.

$$ J = \sum\limits_{i = 1}^{n} {\left[ {y^{T} (k + i\left| {k)} \right.Q_{i} y\left( {k + i\left| k \right.} \right) + \mathop{q}\limits^{\rightharpoonup} _{i} y\left( {k + i\left| k \right.} \right) + q_{0,i} u^{2} (k + i - 1)} \right]} \Delta s $$
(12)
$$ Q_{i} = \left[ {\begin{array}{*{20}c} {q_{1,i} } & {q_{2,i} /2} \\ {q_{2,i} /2} & {q_{3,i} } \\ \end{array} } \right];\mathop{q}\limits^{\leftharpoonup} _{i} = \left[ {\begin{array}{*{20}c} {q_{4,i} } & {q_{5,i} } \\ \end{array} } \right]; $$
$$ q_{1,i} = \omega_{r,i} ;q_{2,i} = \frac{{2h_{13} }}{{M_{v} }};q_{3,i} = h_{21} ;q_{4,i} = \frac{{2h_{03} }}{{M_{v} }} - 2\omega_{r,i} E_{r} (k + i);q_{5,i} = h_{11} ,q_{0,i} . $$

The objective function of the optimization problem is then transformed into a pure matrix expression by associating Eqs. (11) and (12). Considering that the discrete steps within the prediction horizon should be treated equally, the same values are used for the weights at different control steps, which will similarly the expressions.

$$ J = \left\| {\Gamma_{y} Y_{p} (k + 1\left| {k)} \right.} \right\|^{2} + \left\| {\Gamma_{u} U(k)} \right\|^{2} + \Gamma_{{y^{\prime}}} Y_{p} (k + 1\left| {k)} \right. $$
(13)
$$ \Gamma_{y} = \left[ {\begin{array}{*{20}c} R & 0 & \cdots & 0 \\ 0 & R & \cdots & 0 \\ \vdots & \vdots & \ddots & 0 \\ 0 & 0 & \cdots & R \\ \end{array} } \right]_{n \times n} ;\Gamma_{u} = \left[ {\begin{array}{*{20}c} {\sqrt {q_{0} \Delta s} } & 0 & \cdots & 0 \\ 0 & {\sqrt {q_{0} \Delta s} } & \cdots & 0 \\ \vdots & \vdots & \ddots & 0 \\ 0 & 0 & \cdots & {\sqrt {q_{0} \Delta s} } \\ \end{array} } \right]_{n \times n} ; $$
$$ \Gamma_{{y^{\prime}}} = \left[ {\begin{array}{*{20}c} {\mathop{q}\limits^{\rightharpoonup} } & \cdots & {\mathop{q}\limits^{\rightharpoonup} } \\ \end{array} } \right]_{1 \times n} \Delta s;R^{T} R = Q\Delta s. $$

It should be noted that when the matrix \(Q\) is non-positive it should be made positive by adjusting the parameters associated with it and the energy model fitting coefficients. Then, the objective function is transformed into a quadratic form about the control sequence through an equivalent transformation to obtain the objective function matrix of the normalized QP problem (see Eq. (10)).

$$ \left\{ \begin{gathered} H = S_{u}^{T} \Gamma_{y}^{T} \Gamma_{y} S_{u} + \Gamma_{u}^{T} \Gamma_{u} \hfill \\ G(k + 1|k) = - 2E_{p}^{T} (k + 1|k)\Gamma_{y}^{T} \Gamma_{y} S_{u} + \Gamma_{{y^{\prime}}} S_{u} \hfill \\ \end{gathered} \right. $$
(14)
$$ E_{p} (k + 1|k) \triangleq - S_{x} x(k) - S_{d} D(k) $$

After that the constraint of the control quantity is normalized and its upper and lower bound is determined by Eq. (9).

$$ \left[ \begin{gathered} - I_{n \times n} \\ I_{n \times n} \\ \end{gathered} \right]U(k) \ge \left[ \begin{gathered} - U_{\max } (k) \\ U_{\max } (k) \\ \end{gathered} \right] $$
(15)
$$ U_{\max } (k) = \left[ {\begin{array}{*{20}c} {\dot{F}_{t,\max } } & \cdots & {\dot{F}_{t,\max } } \\ \end{array} } \right]_{1 \times n}^{T} ;U_{\max } (k) = - \left[ {\begin{array}{*{20}c} {\dot{F}_{t,\max } } & \cdots & {\dot{F}_{t,\max } } \\ \end{array} } \right]_{1 \times n}^{T} . $$

The constraints on the state quantities are normalized as follows, with the upper and lower bounds determined by Eqs. (6)–(8).

$$ \left[ \begin{gathered} - S_{u} \\ S_{u} \\ \end{gathered} \right]U(k) \ge \left[ \begin{gathered} (S_{x} x(k) + S_{d} D(k)) - Y_{\max } (k) \\ - (S_{x} x(k) + S_{d} D(k)) + Y_{\min } (k) \\ \end{gathered} \right] $$
(16)
$$ \begin{gathered} Y_{\max } (k) = [\begin{array}{*{20}c} {y_{\max }^{T} (k|k + 1)} & \cdots & {y_{\max }^{T} (k|k + n)} \\ \end{array} ]^{T} ; \hfill \\ Y_{\min } (k) = [\begin{array}{*{20}c} {y_{\min }^{T} (k|k + 1)} & \cdots & {y_{\min }^{T} (k|k + n)} \\ \end{array} ]^{T} . \hfill \\ \end{gathered} $$

Summarizing Eqs. (15) and (16), the inequality constraints for the QP problem is obtained as follows.

$$ \left[ \begin{gathered} - I_{n \times n} \\ I_{n \times n} \\ - S_{u} \\ S_{u} \\ \end{gathered} \right]U(k) \ge \left[ \begin{gathered} - U_{\max } (k) \\ U_{\max } (k) \\ (S_{x} x(k) + S_{d} D(k)) - Y_{\max } (k) \\ - (S_{x} x(k) + S_{d} D(k)) + Y_{\min } (k) \\ \end{gathered} \right] $$
(17)

At the above point, the PCC problem in the MPC framework has been completely transformed into a QP problem.

3.3 Optimization Problem Solving

There are numerous well-established solvers available for the normalized QP problem. In this paper, MATLAB's own quadprog solver is used to solve the PCC optimization problem established in the previous paper, and the average computational speed of a single optimization is 2.05ms on a computer configured with an i7-10875H CPU @ 2.30GHz, which can satisfy the real-time optimization.

Table 1. Table captions should be placed above the tables.

4 Simulation

In this section, the PCC algorithm designed in this paper is compared with the PCC based on indirect method solving in classical road scenario and real road scenario respectively by SIMULINK simulation, and the effectiveness of the algorithm is proved. Some vehicle parameters and controller parameters are shown in Table 1.

4.1 Simulation Results

Typical Road Scenario Simulation Result. The typical road Scenario uses a combination of flat, uphill and downhill road scenarios with a continuous downhill hazard scenario. The reference speed used for the simulation is 60km/h. The road information and the vehicle speed curve, drive force curve, shift curve and fuel consumption curve during the simulation are shown in Fig. 3.

Fig. 3.
figure 3

Gear optimization map.

The cumulative fuel consumption using the QP solution is 2003.51 g, the 100 km fuel consumption is 31.88L, and the average speed is 60.06 km/h; the cumulative fuel consumption using the indirect method is 2009.88 g, the 100 km fuel consumption is 31.96L, and the average speed is 59.02 km/h.

Real Road Scenario Simulation Result. Real road scenario uses the real road data from Yicheng service area to Zhongxiang toll station of 33 km on G55 highway with the same reference speed of 60 km/h. The curve of road information and simulation results are shown in Fig. 4.

Fig. 4.
figure 4

Gear optimization map.

The cumulative fuel consumption using the QP solution is 7687.51 g, the 100 km fuel consumption is 31.45 L, and the average speed is 60.59 km/h; the cumulative fuel consumption using the indirect method is 7689.22 g, the 100 km fuel consumption is 31.46 L, and the average speed is 59.68 km/h.

4.2 Analysis of Simulation Results

The simulation results will be analyzed from four perspectives: fuel economy, time economy, driving comfort, and computational speed.

Fuel Economy. Compared with the indirect method, the QP solution can save 0.32% of fuel under typical road scenario and 0.022% of fuel under real road scenario. Considering the simulations of both conditions, it can be concluded that the QP-based PCC algorithm is slightly more fuel-efficient than the indirect method-based PCC algorithm, and considering that the latter can save at least 4% of fuel compared with the conventional CC algorithm in previous studies [8, 9], it can be concluded that the PCC algorithm proposed in this paper can achieve 4% fuel savings.

Time Economy. Compared with the indirect method, the QP solution can save 1% of time under typical road conditions and 2% of time under real road conditions, which can achieve the improvement of time economy without reducing the fuel economy.

Driving Comfort. Comparing the speed and drive curves of the two algorithms, it can be seen that both curves of the QP-based PCC algorithm change more gently, which means that the acceleration and jerk are smaller, i.e., the driving comfort of the vehicle is improved.

Computational Speed. As mentioned in the previous section on solving optimization problems in the MPC framework, the average speed of a single optimization computation using the QP method is 2.05 ms. The average speed of a single optimization computation using the indirect solution method in the previous work is related to the number of iterations of the algorithm, and the minimum speed of a single optimization computation is 0.95 ms. The computational speed of both algorithms is in the order of milliseconds, and both can achieve real-time optimization.

To conclude, the PCC algorithm proposed in this paper can achieve the improvement of time economy and driving comfort compared with the algorithm based on the indirect method of solving, while ensuring the fuel economy and real-time optimization.

5 Summary and Future Work

In this paper, a hierarchical control approach is used to achieve simultaneous real-time optimization of vehicle speed and gear. The lower layer controller optimizes the gears offline with the goal of energy saving, avoiding the problem of slow solution of complex mixed integer programming problems; the upper layer controller, using vehicle kinetic energy and driving force as state quantities, linearizes the nonlinear vehicle model and constructs a quadratic programming mathematical problem, which can take into account the fuel economy, time economy and driving comfort of the vehicle, and can be constrained for both state and control quantities, and can be solved by a well-developed method. In the future, the method can be applied to electric vehicles with gearbox, using the characteristics of motor braking energy recovery to uniformly fit the energy consumption of drive and brake when the motor brake can meet the braking demand, and combine the drive and braking force into one control quantity for optimization. In addition, the speed prediction of the previous vehicle can be imported and transformed into a reference vehicle speed and speed constraint to achieve the car-following condition.