# Multi-Level Energy Management for Hybrid Electric Vehicles—Part I

^{1}

^{2}

^{*}

## Abstract

**:**

## 1. Introduction

- On the first level, the power-split is explicitly solved using the Pontryagin Minimum Principle (PMP), starting from [15]. This method is extended with costs on mode and gear switching, thereby eliminating unacceptable switching behaviour. A Dynamic Programming (DP) routine solves the discrete subproblem. Route and vehicle information determine the switching costs, supporting a full model based approach.
- The second level optimizes the battery state of charge with input- and state-constraints, and provides efficiency information of the hybrid system to the other levels using the battery costate from the PMP solution. Due to the mode switching system on the vehicle, charge sustaining behaviour must be enforced, by using an additional switching algorithm between non-unique solutions.
- The third level provides the necessary route information to the lower layers. By predicting the velocity along the route, using road slope and velocity limitations, the road load on the driveline is determined.

## 2. Parallel Hybrid Electric Vehicle Model

#### 2.1. Internal Combustion Engine

#### 2.2. Motor Generator

#### 2.3. Battery

#### 2.4. Mode Selection

#### 2.5. Gear Selection

#### 2.6. Vehicle

## 3. Multi-Level Energy Management

- the iterative scheme (Section 3.3), used in simulation to show convergence of the EMS in Section 7.1,
- the model predictive scheme (Section 3.4), that is real-time implementable and simulated in Section 7.2.

#### 3.1. Generic Energy Management Problem

#### 3.2. Multi-Level Optimization

#### 3.2.1. Level 1, ‘Power-Split Including Switching’ (Section 4)

- ${\mathit{\lambda}}_{\mathit{b}}$, estimated equivalent cost of battery energy,
- ${\mathit{P}}_{\mathit{d}}$, estimated power demand,
- $\mathit{v}$, estimated vehicle speed,

#### 3.2.2. Level 2, ‘Battery Energy’ (Section 5)

#### 3.2.3. Level 3, ‘Velocity’ (Section 6)

#### 3.3. Multi-Level Iteration

- Initialization:
- (a)
- all levels optimize over the complete drive cycle, from $t\left({s}_{0}\right)$ to final time ${t}_{f3}={t}_{f2}={t}_{f1}=t\left({s}_{f}\right)$,
- (b)
- initialize $\mathit{\omega}$ with an estimated average speed,

- Velocity prediction:
- (a)
- retrieve $\alpha \left(\mathit{s}\right)$, $\overline{\mathit{v}}\left(\mathit{s}\right)$ (road slope and speed limit information), $s\left({t}_{0}\right)$, $v\left({t}_{0}\right)$ (position and speed) and model parameters (Table 3),
- (b)
- use the vehicle model and results from optimal control, to predict the velocity profile,
- (c)
- store resulting ${\mathit{P}}_{\mathit{d}}$, $\mathit{v}$.

- Battery energy optimization:
- (a)
- retrieve ${\mathit{P}}_{\mathit{d}}$, $\mathit{\omega}$, ${E}_{b}\left({t}_{0}\right)$ and model parameters (Table 3),
- (b)
- calculate PMP necessary conditions and optimize the remaining boundary value problem(s),
- (c)
- store resulting ${\mathit{\lambda}}_{\mathit{b}}$.

- Power-split and switch optimization:
- (a)
- retrieve ${\mathit{\lambda}}_{\mathit{b}}$, ${\mathit{P}}_{\mathit{d}}$, $\mathit{v}$ and model parameters (Table 3),
- (b)
- calculate PMP necessary conditions and solve the remaining DP problem,
- (c)
- store resulting $\mathit{\omega}$ and output ${P}_{d}$, ${P}_{b}$, ${I}_{M}$, ${I}_{G}$ to the component controllers on the vehicle.

- Iterate:
- (a)
- repeat from step 2 with an improved estimate of $\mathit{\omega}$ and ${\mathit{\lambda}}_{\mathit{b}}$, unless stop conditions are met (number of iterations). Note that the initial conditions at ${t}_{0}$ remain identical.

#### 3.4. Multi-Level Model Predictive Control

- ${t}_{0}$ now refers to the vehicle’s current time and ${t}_{f}$ is relative to ${t}_{0}$, with a fixed horizon length (which implements the receding horizon),
- each sample time, only one iteration is applied, i.e., step 5 in the iteration scheme is skipped,
- the horizon length decreases on each level: $t\left({s}_{f}\right)>{t}_{f3}>{t}_{f2}>{t}_{f1}$,
- each level runs in its own regular schedule (sample time), where the higher levels run slower than the lower levels.

## 4. Level 1: Power-Split and Switch Optimization

- minimization of the Hamiltonian as a function of ${\lambda}_{b}$, resulting in the optimal power-split, mode and gear,
- calculation of ${\lambda}_{b}$ that complies to the battery constraints.

#### 4.1. Explicit Minimization of the Hamiltonian per Mode

#### 4.2. Mode Selection, without Cost on Switching

- for each (feasible) gear, calculate ${H}_{1a}({M}^{\ast}\left(G\right),G)$,
- select ${G}^{\ast}$ that minimizes ${H}_{1a}\left(G\right)$,

#### 4.3. Mode Selection, with Cost on Switching

- synchronization losses, caused by acceleration and deceleration of rotating masses (Appendix C.1),
- traction interruption, caused by disconnection of the driveline and leading to vehicle speed deviations (Appendix C.2). As the speed deviation during disconnection of the driveline, depends on the road load (e.g., up-hill resulting in a large speed decrease, on flat road resulting in a small speed decrease), the corresponding equivalent fuel costs are a function of the speed change and time loss.

- all feasible modes M and gears G over the time horizon ${t}_{f1}$ are enumerated,
- for each combination of mode and gear and time, the Hamiltonian is explicitly solved using Equation (36), resulting in $H(M,G,k),$
- a Dynamic Program (DP) is formulated with $H(M,G,k)$ as elements for the cost-to-go matrix $(M,G,k),$
- to implement the cost for switching, for each mode change and gear change, the cost-to-go matrix is penalized with ${\u03f5}_{M}$ and ${\u03f5}_{G}$,
- the optimal sequence of modes and gears is calculated using DP,
- for the MPC implementation, only the first control action is implemented. The next sample time, the algorithm is repeated with updated inputs, disturbances and states.

## 5. Level 2: Battery Energy Optimization

- a prescribed rotational speed $\mathit{\omega}$, which defines $G\in [1,12]$ with the predetermined velocity profile. Before iteration over the levels an estimated average $\mathit{\omega}$ is selected. After each iteration, $\mathit{\omega}$ from Level 1 is used.
- mode and gear switching is instantaneous ($\Delta {t}_{M}=0,\Delta {t}_{G}=0$), without costs associated (${P}_{\u03f5}=0$).

**I1**- Constraint activation increases the number of boundary value problems to solve, where the number of sub-problems is not known a priori. The iterative solution method from [32] is recapitulated in Section 5.1.
**I2**- Controllability of ${E}_{b}\left({t}_{f2}\right)$ is not a continuous function of ${\lambda}_{b}$, due to the clutches in the topology, resulting in non-unique solutions. The switching algorithm in Section 5.2 ensures controllability for all ${\lambda}_{b}$.
**I3**- When the horizon does not include ${t}_{f}$, the end condition on ${E}_{b}\left({t}_{f2}\right)$ is not known, thereby removing charge sustenance $\Delta {E}_{b}=0$ as a control target. In Section 5.3, a solution is proposed, which is guaranteed to be optimal for a subset of scenarios.

#### 5.1. Constraint Handling (I1)

- The unconstrained subproblem is solved for a constant ${\mathit{\lambda}}_{\mathit{b}}$.
- If no constraint violation is present, the subproblem is solved. The procedure is repeated for the next unsolved subproblem.
- If constraint violations are present, the time ${t}_{c}$ of the largest constraint violation is identified. The subproblem is divided at ${t}_{c}$ into two new subproblems, with the first subproblem, having ${E}_{b}\left({t}_{c}\right)=\overline{{E}_{b}}$ as an end point constraint and the second subproblem having ${E}_{b}\left({t}_{c}\right)=\overline{{E}_{b}}$ as a start point constraint, when $\overline{{E}_{b}}$ is violated. For $\underline{{E}_{b}}$ violations ${E}_{b}\left({t}_{c}\right)=\underline{{E}_{b}}$.

#### 5.2. Controllability of ${E}_{b}$: Non-Uniqueness (I2)

**I2a**- with an infinite number of switchings,
**I2b**- with a minimal number of switchings (elaborating on [33]).

#### 5.2.1. Infinite Number of Switchings (I2a)

#### 5.2.2. Minimal Switching (I2b)

- if ${E}_{b}^{{B}_{1}^{-}}>\underline{{E}_{b}}$, then procedure I1 for constraint handling is performed,
- if ${E}_{b}^{{B}_{1}^{+}}<\overline{{E}_{b}}$, then procedure I1 for constraint handling is performed,
- if ${E}_{b}^{{B}_{1}^{\infty}}$ exceeds limits, then procedure I1 for constraint handling is performed,
- else a switching sequence exists in order to maintain ${E}_{b}$ within bounds.

- The initial mode M is maintained, here resulting in ${B}_{1}^{-},$
- Check for constraint violations. $\underline{{E}_{b}}$ violation is detected at $t=388$ s, so switching to ${B}_{1}^{+}$ is mandatory. Switching at $t=388$ s results in $\underline{{E}_{b}}$ undershoot of ${E}_{b}^{\wedge}$. With the known relative ${E}_{b}$ trajectories of ${B}_{1}^{-}$ and ${B}_{1}^{+}$, the advancement of the switching time is determined, here at 83 s, Figure 15,
- The previous step is repeated, until ${t}_{f}$ is reached,
- ${E}_{b}\left({t}_{f}\right)$ is now within limits, but not at ${E}_{b}\left(0\right)$. A switch to the other mode is back propagated from ${E}_{b}\left({t}_{f}\right)={E}_{b}\left(0\right)$, resulting in a last switch at 1191 s.

#### 5.3. Limited Horizon (I3)

- for a repeating cycle, with ${E}_{b}\left({t}_{0}\right)={E}_{b}\left({t}_{f}\right)$, which is often used in simulation assessments,
- when entering a zero-emission zone at ${t}_{f}$, with ${E}_{b}\left({t}_{f}\right)=\overline{{E}_{b}}$ for maximal electrical driving after ${t}_{f}$,
- when arriving at a charging station at ${t}_{f}$, with ${E}_{b}\left({t}_{f}\right)=\underline{{E}_{b}}$ for cheap charging of the battery after ${t}_{f}$.

- choose ${\lambda}_{b}$ based on bi-section and simulate ${E}_{b}$,
- find the time index of $\overline{{E}_{b}}$ and $\underline{{E}_{b}}$,
- calculate the distance to the boundary for the two indices and select the minimal distance,
- select the next ${\lambda}_{b}$ with bi-section, to increasing the minimal distance, and iterate.

**I3a**- if within the horizon, a ${E}_{b}$ limit is activated, irrespective of the control action e.g., due to a large energy recuperation event, the first subproblem up to this event is fully defined. The solution to this first subproblem is then optimal, and independent from the following subproblems.
**I3b**- if $({\lambda}_{b}^{\ast},{P}_{d})$ is on guard resulting in non-unique solutions and the non-unique solutions are able to span $[\overline{{E}_{b}}\left({t}_{f}\right),\underline{{E}_{b}}\left({t}_{f}\right)]$, ${\lambda}_{b}^{\ast}$ is optimal for all ${E}_{b}\left({t}_{f}\right)\in [\overline{{E}_{b}},\underline{{E}_{b}}]$.

## 6. Level 3: Velocity Prediction

#### Velocity Prediction Using Three Driving Modes

- maximum acceleration with $\overline{{F}_{d}}$,
- minimum acceleration with $\underline{{F}_{d}}$,
- constant speed ${v}_{0}$, with ${F}_{d}={F}_{0}$.

- retrieve $\mathit{\alpha}\left(s\right)$ and $\overline{\mathit{v}}\left(s\right)$ from the preview data source, for the drive cycle,
- decide on ${v}_{0}$, typically the reference speed of the speed control on the vehicle,
- simulate the vehicle model forwards over the drive cycle, using mode 1 (maximum acceleration). Limit the velocity to ${v}_{0}$ and $\overline{\mathit{v}}\left(s\right)$. Store the resulting vector of the forward simulation ${\mathit{v}}_{\mathit{f}}\left(s\right)$,
- simulate the vehicle model backwards over the drive cycle, using mode 2 (minimum acceleration). Limit the velocity to ${v}_{0}$ and $\overline{\mathit{v}}\left(s\right)$. Store the resulting vector of the backward simulation ${\mathit{v}}_{\mathit{b}}\left(s\right)$,
- calculate the minimum of the two vectors ${\mathit{v}}_{\mathit{c}}\left(s\right)=min({\mathit{v}}_{\mathit{f}}\left(s\right),{\mathit{v}}_{\mathit{b}}\left(s\right)),$
- calculate ${\mathit{P}}_{\mathit{d}}$ using the vehicle model and ${\mathit{v}}_{\mathit{c}}\left(s\right)$.

## 7. Simulation Results of the Multi-Level EMS

- ‘Multi-level iteration, short cycle’ (Section 7.1), using full horizon optimization on a short, abstract drive cycle. The optimization iterates over the levels, until the fuel consumption is converged to an optimum. With the full horizon, each level has complete information of the drive cycle. The results show how fast the algorithm converges, and, by using an abstract cycle, the decisions on each level are interpreted.
- ‘Multi-level MPC, short cycle’ (Section 7.2), using receding horizon optimization on a short, abstract drive cycle. By limiting the horizon and implementing the iterations over a receding horizon, the optimality will reduce. This section shows the fuel penalty of this approach, and by using the same abstract cycle, the decisions on each level are compared to the previous scenario.
- ‘Multi-level MPC, long cycle’ (Section 7.3). To show the real-life fuel saving potential of the multi-level MPC, a representative, long-haul, drive cycle is used, replacing the abstracted cycles of the previous scenarios. Furthermore, a high fidelity model of the vehicle replaces the model from Section 2. The results are compared with a baseline EMS, which uses heuristics and no preview.

#### 7.1. Multi-Level Iteration, Short Cycle

#### 7.2. Multi-Level MPC, Short Cycle

#### 7.3. Multi-Level MPC, Long Cycle

- Level 1, 5 s horizon, sample time 0.01 s,
- Level 2, 1000 s horizon, sample time 1 s,
- Level 3, 1000 s horizon, sample time 1 s.

## 8. Conclusions

## Author Contributions

## Funding

## Acknowledgments

## Conflicts of Interest

## Appendix A. Pontryagin’s Minimum Principle

## Appendix B. Interpretation of the Costate

## Appendix C. Cost of Switching

- synchronization of rotating masses (acceleration/deceleration), possibly with slipping clutches,
- interruption of traction.

#### Appendix C.1. Synchronization Cost

- the largest cost is due to acceleration of rotation masses (inertia),
- during deceleration no energy is recuperated,
- switch events are typical, e.g., based on average behavior,
- each switch involves an inverse switch on a later moment.

- disconnected, stopped: 0 rpm,
- connected: 930 rpm,
- downshift: 1200 rpm,

Transition | Direction ⇒ [kJ] | Direction ⇐ [kJ] | Avg [kJ] |
---|---|---|---|

${G}_{k}\iff {G}_{k+1}$ | 0 | 10,20,30${}^{(\ast )}$ | 20 |

${M}_{e}\iff {M}_{m}$ | 16 | 31 | 24 |

${M}_{e}\iff {M}_{c}$ | 16 | 0 | 8 |

${M}_{m}\iff {M}_{c}$ | 31 | 0 | 16 |

#### Appendix C.2. Traction Interruption Cost

- the transition has a fixed traction interruption time ($\Delta {t}_{o}$),
- during the transition, the road load is constant,
- the driveline is not saturated, i.e., traction is available to recover the vehicle speed,
- ${\lambda}_{t}$ represents the equivalent cost of time loss for a certain cycle, and is constant.

**Figure A1.**Open driveline behavior for timeloss ($\Delta {t}_{t}$) calculation. From ${t}_{0}$ to ${t}_{1}$, no traction ${F}_{d}$ is available, causing the vehicle to decelerate. From ${t}_{1}$ to ${t}_{2}$, speed recovery takes place at maximum traction $\overline{{F}_{d}}$. Arrival at position ${s}_{2}\left({t}_{2}\right)$ is later than without switch event (dotted line), which is the defined timeloss.

Segment | Timeloss [s] | Speedloss [m/s] | Eq. Cost [kJ] |
---|---|---|---|

0% | −0.01 | −0.075 | 0.17 |

6% | −0.07 | −0.65 | 1.8 |

12% | −0.22 | −1.25 | 5.6 |

## Appendix D. Simulation Results of Multi-Level Iteration

#### Appendix D.1. Iteration 0

- Level 3: on this level, we assume that the vehicle is cruising constantly at the maximum speed ${v}_{0}$, i.e., 25 km/h. The elevation is given by Figure 16. Assuming an average, constant engine speed (here: 1100 rpm), ${\mathit{P}}_{\mathit{d}}$ is calculated.
- Level 2: on this level, charge sustenance is enforced (${E}_{b}\left({t}_{0}\right)={E}_{b}\left({t}_{f}\right)$) by searching for ${\mathit{\lambda}}_{\mathit{b}}^{\ast}$. The capabilities of the CE and MG at 1100 rpm influence the resulting power-split and mode switching.
- Level 1: on this level, the cost of switching is added to the power-split optimization, using the just found ${\mathit{\lambda}}_{\mathit{b}}$, ${\mathit{P}}_{\mathit{d}}$ and $\mathit{v}$. The resulting dynamic program is solved for the full horizon, here 10.6 km.

**Figure A2.**Decisions and results from Level 2 and 1, after the zeroth iteration. Due to the different model abstraction, the solution on Level 1 is not exactly charge sustaining anymore.

#### Appendix D.2. Iteration 1

- Level 3: the constant engine speed from iteration 0 is replaced by the speed resulting from the gear switching sequence. As speed is not explicitly optimized and can always be maintained in this example, ${\mathit{P}}_{\mathit{d}}$ is not altered.
- Level 2: using the gear switching sequence, a new charge sustaining ${\mathit{\lambda}}_{\mathit{b}}$ is calculated.
- Level 1: with the adjusted ${\mathit{\lambda}}_{\mathit{b}}$, the power-split and switching sequence are optimized

**Figure A3.**Decisions and results from Level 2 and 1, after the first iteration. After updating the information on ${\mathit{\lambda}}_{\mathit{b}}$ and $\mathit{\omega}$, the solution on both levels converges, and are charge sustaining.

## Appendix E. Simulation Results of Multi-Level MPC

- the trace starts at ${G}_{5}$ and is maintained for a long time. That gear is selected at the end of the −6% slope to maximize brake energy recuperation. After the slope, ${P}_{d}$ is low, and a little friction reduction of the MG could be accomplished with an upshift. However, the fuel improvement of switching in MG is an order of magnitude lower than in other modes. Now, for a gear switch to occur, the accumulated fuel improvement over the horizon (5 s) must be higher than the cost of the switch event itself, which it is not, for this short horizon, and the switch will not occur.
- on the +6%, a higher gear ${G}_{9}$ is needed, in order to minimize CE friction losses. Before the +6% slope, this decision enters the horizon, and, as the switch will be made anyhow, the algorithm decides to do the switch immediately, as driving MG in ${G}_{9}$ is slightly more profitable.
- on the top of the first hill, a short shift to ${G}_{10}$ is performed, simultaneously with a mode switch, which makes the gear switch event cheap. The decision has, however, a marginal impact on the fuel consumption.

**Figure A4.**Results for MPC, with a 5-sample horizon on Level 1. Differences with Figure A2 are mainly in the gear decisions, with a marginal impact on fuel.

## References

- Sciarretta, A.; Guzzella, L. Control of hybrid electric vehicles. IEEE Control Syst. Mag.
**2007**, 27, 60–70. [Google Scholar] - Serrao, L. Open Issues in Supervisory Control of Hybrid Electric Vehicles: A unified approach using optimal control methods. In Proceedings of the RHEVE Hybrid and Electric Vehicles, Paris, France, 6–7 December 2011. [Google Scholar]
- Willems, F.; Spronkmans, S.; Kessels, J. Integrated Powertrain Control to meet low CO
_{2}emissions for a hybrid distribution truck with SCR-deNO_{x}system. In Proceedings of the Dynamic Systems and Control Conference, Arlington, VA, USA, 31 October–2 November 2011. [Google Scholar] - Pham, T.; Kessels, J.; van den Bosch, P.; Huisman, R. Integrated Energy and Thermal Management for Hybrid Electric Heavy Duty Trucks. In Proceedings of the IEEE Vehicle Power and Propulsion Conference, Seoul, Korea, 9–12 October 2012. [Google Scholar]
- van Reeven, V.; Huisman, R.; Kessels, J.; Pham, T.; Hofman, T. Integrating energy and thermal management of hybrid trucks. In Proceedings of the VDI Commercial Vehicles, Celle, Germany, 5–6 June 2013. [Google Scholar]
- Donkers, M.; Schijndel, J.V.; Heemels, W.; Willems, F. Optimal control for integrated emission management in diesel engines. Control Eng. Pract.
**2017**, 61, 206–216. [Google Scholar] [CrossRef] [Green Version] - Willems, F.; Kupper, F.; Rascanu, G.; Feru, E. Integrated Energy and Emission Management for Diesel Engines with Waste Heat Recovery using Dynamic Models. Oil Gas Sci. Technol.
**2015**, 70, 143–158. [Google Scholar] [CrossRef] - van Reeven, V.; Hofman, T.; Willems, F.; Huisman, R.; Steinbuch, M. Optimal control of engine warmup in hybrid vehicles. Oil Gas Sci. Technol.
**2014**, 71, 14. [Google Scholar] [CrossRef] - Merz, F.; Sciarretta, A.; Dabadie, J.C.; Serrao, L. On the optimal thermal management of hybrid-electric vehicles with heat recovery sytems. Oil Gas Sci. Technol.
**2012**, 67, 601–612. [Google Scholar] [CrossRef] - Back, M. Pradiktive Antriebsregelung zum Energieoptimalen Betrieb von Hybridfahrzeugen. Ph.D. Thesis, Universitat Fridericiana Karlsruhe, Karlsruhe, Germany, 2005. [Google Scholar]
- Johannesson, L.; Asbogard, M.; Egardt, B. Assessing the Potential of Predictive Control for Hybrid Vehicle Powertrains Using Stochastic Dynamic Programming. IEEE Trans. Intell. Transp. Syst.
**2007**, 8, 71–83. [Google Scholar] [CrossRef] - Delprat, S.; Guerra, T.; Paganelli, G.; Lauber, J.; Delhom, M. Control strategy optimization for a hybrid parallel powertrain. In Proceedings of the 2001 American Control Conference, Arlington, VA, USA, 25–27 June 2001. [Google Scholar]
- Finkeldei, E.; Back, M. Implementing an MPC algorithm in a vehicle with a hybrid powertrain using telematics as a sensor for powertrain control. In Proceedings of the IFAC Symposium on Advances in Automotive Control, Arlington, VA, USA, 25–27 June 2004. [Google Scholar]
- Borhan, H.; Vahidi, A.; Phillips, A.; Kuang, M.; Kolmanovsky, I.; Cairano, S.D. MPC-Based energy Management of a power-split hybrid electric vehicle. IEEE Trans. Control Syst. Technol.
**2012**, 20, 593–603. [Google Scholar] [CrossRef] - Ambühl, D.; Sundström, O.; Sciarretta, A.; Guzzella, L. Explicit optimal control policy and its practical application for hybrid electric powertrains. Control Eng. Pract.
**2010**, 18, 1429–1439. [Google Scholar] [CrossRef] - Murgovski, N.; Johannesson, L.M.; Sjöberg, J. Engine on/off control for dimensioning hybrid electric powertrains via convex optimization. IEEE Trans. Veh. Technol.
**2013**, 62, 2949–2962. [Google Scholar] [CrossRef] - Elbert, P. Noncausal and Causal Optimization Strategies for Hybrid Electric Vehicles. Ph.D. Thesis, ETH Zurich, Zurich, Switzerland, 2013. [Google Scholar]
- Ngo, V.; Hofman, T.; Steinbuch, M.; Serrarens, A. Optimal Control of the Gear Shift Command for Hybrid Electric Vehicles. IEEE Trans. Veh. Technol.
**2012**, 61, 3531–3543. [Google Scholar] [CrossRef] - Nüesch, T.; Elbert, P.; Flankl, M.; Onder, C.; Guzzella, L. Convex optimization for the energy management of hybrid electric vehicles considering engine start and gearshift costs. Energies
**2014**, 7, 834–856. [Google Scholar] [CrossRef] - van Reeven, V.; Hofman, T.; Huisman, R.; Steinbuch, M. Extending Energy Management in Hybrid Electric Vehicles with Explicit Control of Gear Shifting and Start-Stop. In Proceedings of the American Control Conference, Montreal, QC, Canada, 27–29 June 2012. [Google Scholar]
- Scattolini, R. Architectures for distributed and hierarchical model predictive control. J. Process Control
**2009**, 19, 723–731. [Google Scholar] [CrossRef] - Ambühl, D.; Guzzella, L. Predictive Reference Signal Generator for Hybrid Electric Vehicles. IEEE Trans. Veh. Technol.
**2009**, 58, 4730–4740. [Google Scholar] [CrossRef] - van Keulen, T.; Jager, B.d.; Serrarens, A.; Steinbuch, M. Optimal Energy Management in Hybrid Electric Trucks Using Route Information. Oil Gas Sci. Technol. Rev. IFP
**2010**, 65, 103–113. [Google Scholar] [CrossRef] - Sun, C.; Moura, S.J.; Hu, X.; Hedrick, J.K.; Sun, F. Dynamic Traffic Feedback Data Enabled Energy Management in Plug-in Hybrid Electric Vehicles. IEEE Trans. Control Syst. Technol.
**2015**, 23, 1075–1086. [Google Scholar] - Mesarovic, M.D.; Macko, D.; Takahara, Y. Theory of Hierarchical Multilevel Systems; Academic Press: Cambridge, MA, USA, 1970. [Google Scholar]
- Maciejowski, J. Predictive Control with Constraints; Prentice Hall: Upper Saddle River, NJ, USA, 2002. [Google Scholar]
- Findeisen, W. Control and Coordination in Hierarchical Systems; John Wiley & Sons: Hoboken, NJ, USA, 1980. [Google Scholar]
- Van Reeven, V.; Hofman, T. Multi-level energy management: Implementation and validation—Part II. Vehicles
**2018**. under review. [Google Scholar] - Guzzella, L.; Onder, C. Introduction to Modeling and Control of Internal Combustion Engine Systems; Springer: Berlin, Germany, 2010. [Google Scholar]
- Bialas, W.F.; Karwan, M.H. Multilevel Linear Programming; State University of New York: Buffalo, NY, USA, 1978; p. 78-1. [Google Scholar]
- Kirk, D.E. Optimal Control Theory, an Introduction; Dover Publications: Chicago, IL, USA, 1970. [Google Scholar]
- van Keulen, T.; Gillot, J.; de Jager, B.; Steinbuch, M. Solution for state constrained optimal control problems applied to power split control for hybrid vehicles. Automatica
**2014**, 50, 187–192. [Google Scholar] [CrossRef] - Wei, X.; Utkin, V.; Rizzoni, G.; Guzzella, L. Model-based Fuel Optimal Control of Hybrid Electric Vehicle using Variable Structure Control Systems. J. Dyn. Syst. Meas. Control
**2007**, 129, 13–20. [Google Scholar] [CrossRef] - Delprat, S.; Hofman, T. Hybrid Vehicle Optimal Control: Linear Interpolation and Singular Control. In Proceedings of the IEEE Vehicle Power and Propulsion Conference, Coimbra, Portugal, 27–30 October 2014. [Google Scholar]
- Fröberg, A.; Nielsen, L. Optimal Control Utilizing Analytical Solution for Heavy Truck Cruise Control; Internal Report; Linkopings Universitet: Linkoping, Sweden, 2008. [Google Scholar]
- Bryson, A.E.; Ho, Y. Applied Optimal Control; Taylor and Francis: Abingdon, UK, 1975. [Google Scholar]
- Hartl, R.F.; Sethi, S.P.; Vickson, R.G. A survey of the maximum principle for optimal control problems with state constraints. SIAM
**1995**, 37, 181–218. [Google Scholar] [CrossRef] - Sciarretta, A.; Back, M.; Guzzella, L. Optimal control of parallel hybrid electric vehicles. IEEE Trans. Control Syst. Technol.
**2004**, 12, 352–363. [Google Scholar] [CrossRef] - van Keulen, T.; de Jager, B.; Foster, D.; Steinbuch, M. Velocity Trajectory Optimization in Hybrid Electric Trucks. In Proceedings of the American Control Conference, Baltimore, MD, USA, 30 June–2 July 2010. [Google Scholar]
- Hellström, E.; Åslund, J.; Nielsen, L. Horizon length and fuel equivalents for fuel-optimal look-ahead control. In Proceedings of the Advances in Automotive Control, Munich, Germany, 12–14 July 2010. [Google Scholar]
- Ngo, V. Gear Shift Strategies for Automotive Transmissions. Ph.D. Thesis, Technical University Eindhoven, Eindhoven, The Netherlands, 2012. [Google Scholar]

**Figure 1.**Multi-level optimization of the velocity (v), battery energy (${E}_{b}$) and power split (${P}_{e},{P}_{b}$) including mode and gear selection (${I}_{M},{I}_{G}$). In Section 3 the scheme is described, with the prediction of: road slope ($\mathit{\alpha}$), velocity limit ($\overline{\mathit{v}}$), driveline rotational speed ($\mathit{\omega}$), driveline power (${\mathit{P}}_{\mathit{d}}$), velocity ($\mathit{v}$) and battery costate (${\mathit{\lambda}}_{\mathit{b}}$), dependent on: vehicle position (s), velocity (v), battery energy (${E}_{b}$), driveline power (${P}_{d}$), mode (M) and gear (G).

**Figure 2.**Topology of the parallel Hybrid Electric Vehicle with its relevant power flows, defined positive towards the road and relevant states (between parenthesis).

**Figure 3.**Power capabilities of internal combustion engine (CE) and motor generator (MG) as a function of the rotational speed. Dotted lines indicate the nominal friction ${P}_{e0}$ and ${P}_{m0}$.

**Figure 4.**State machine for switching between modes M. All mode switches go through ${M}_{o}$ (‘open driveline’), which is maintained for $\Delta {t}_{M}$. The negation of the mode command is denoted with $\sim i$.

**Figure 5.**State machine for switching between gears G. All gear switches go through ${G}_{0}$ (‘open driveline’), which is maintained for $\Delta {t}_{G}$. The negation of the gear command is denoted with $\sim i$.

**Figure 6.**Schematic of the horizon in the ‘multi-level iteration’ and ‘multi-level Model Predictive Controller (MPC)’ solution schemes. The multi-level iteration has an identical horizon, for all levels, and for all iterations, comprising the complete drive cycle. The multi-level MPC has a solution scheme, with shorter horizon lengths. With each time sample, the vehicle moves along the drive cycle. At each time sample, one iteration is performed, over a horizon starting at ${t}_{0}$, having a fixed horizon length to ${t}_{f}$. When the level has a faster sample time, iterations are performed more often, thereby improving the feedback performance.

**Figure 7.**The Hamiltonian ${H}_{1}^{\ast}$ of the three modes ${M}_{m},{M}_{c},{M}_{e}$ as a function of ${\lambda}_{b}$ for a power demand and rotational speed. The optimal mode ${M}^{\ast}$ changes at the boundary points ${B}_{1},{B}_{2},{B}_{3}$.

**Figure 8.**${P}_{b}^{\ast}$ as a function of ${\lambda}_{b}$ for the modes ${M}_{m},{M}_{c},{M}_{e}$ for a power demand and gear. At ${B}_{1}$ and ${B}_{2}$, the optimal mode ${M}^{\ast}$ switches between ${M}_{c}$ and ${M}_{e}$, with a corresponding jump in ${P}_{b}^{\ast}$. At ${B}_{3}$ a jump occurs due to switching between ${M}_{c}$ and ${M}_{m}$.

**Figure 9.**Explicit mode change map as a function of costate ${\lambda}_{b}$ and power demand ${P}_{d}$, indicating the guards B between the optimal modes ${M}_{m}^{\ast}$ (motor-only), ${M}_{e}^{\ast}$ (engine-only) and ${M}_{c}^{\ast}$ (combined). Figure 7 and Figure 8 are cross sections at ${P}_{d}^{\#}$.

**Figure 10.**Illustrating the Receding Horizon Integer Program to solve at each time step. Over a horizon of four seconds with a sampling time of one second, all feasible modes and gears are enumerated (blue), starting at the current mode and gear (red). For all feasible modes, H is calculated, increased with an equivalent fuel penalty ${P}_{\u03f5}$ on each mode or gear change, and the optimal trajectory over the horizon (blue dotted line) is determined, using Dynamic Programming (DP).

**Figure 11.**For dealing with constraints, non-unique solutions and a limited horizon, the flowchart shows the procedure for solving the boundary value problems (BVP). Starting with one unsolved (sub)problem (SP), from ${t}_{0}$ to ${t}_{f}$, the process is started. Dependent on the number of constraint violations, the procedure ends with a set of solved subproblems, each providing a segment of ${\mathit{\lambda}}_{\mathit{b}}$ over the complete horizon. Each subproblem contains the solution to a BVP, and dependent on the stated conditions, the additional procedures

**I1**,

**I2**or

**I3**are needed.

**Figure 12.**Changing the constant ${\mathit{\lambda}}_{\mathit{b}}$ for a drive cycle, causes jumps in the charge sustenance, due to non-unique (singular) solutions at ${B}_{1}$ and ${B}_{2}$.

**Figure 13.**Illustration of algorithm I2a. Power demand ${P}_{d}$ of a drive segment with ${\lambda}_{b}^{\ast}={B}_{1}$ and two optimal modes: ${B}_{1}^{-}$ (${P}_{m}$ is positive during high power demands, resulting in too low ${E}_{b}\left({t}_{f}\right)$) and ${B}_{1}^{+}$ (${P}_{m}$ is zero during high power demands, resulting in too high ${E}_{b}\left({t}_{f}\right)$). A charge sustaining trajectory (${E}_{b}\left({t}_{f}\right)={E}_{b}\left(0\right)$), is possible with one switch at ${t}_{s1}$ or ${t}_{s2}$, or with infinitely many switchings indicated as ${B}_{1}^{\infty}$.

**Figure 14.**Illustration of algorithm I2b, first part. Starting with ${B}_{1}^{-}$ the lower boundary is violated at ${t}_{s}$ and a switch must be made to ${B}_{1}^{+}$. However, ${t}_{s}=388$ s as switching point is too late, as ${B}_{1}^{+}$ exceeds $\underline{{E}_{b}}$ with ${E}_{b}^{\wedge}$.

**Figure 15.**Illustration of algorithm I2b, second part. A new ${t}_{s1}=83$ s is found, and ${B}_{1}^{+}$ is continued, until at ${t}_{s2}=1191$ s the switch to ${B}_{1}^{-}$ has to be made to ensure ${E}_{b}\left({t}_{f}\right)={E}_{b}\left(0\right)$.

**Figure 17.**High fidelity simulation results on a representative long-haul cycle. The previewing Energy Management System (EMS) saves an additional $1.2\%$ fuel to the baseline EMS.

**Table 1.**Optimizing Energy Management System (EMS) algorithms, for power-split, stop-start and gear. ‘Cost’ indicates if switching events are penalized in the algorithm. See Table 2 for the used abbreviations.

Reference | Power-Split | Stop-Start | Gear Selection |
---|---|---|---|

[15] | PMP | PMP | - |

[16] | QP | RB | - |

[17] | QP | PMP | RB |

[18] | PMP | DP | DP |

[19] | QP | DP + cost | DP + cost |

[20] | MILP | MILP + cost | MILP + cost |

this work | PMP | DP + cost | DP + cost |

Components | |

BT | Battery |

CE | Combustion Engine |

CL | Clutch |

EMS | Energy Management System |

FT | Fuel Tank |

GB | Gearbox |

HEV | Hybrid Electric Vehicle |

MG | Motor Generator |

RD | Road |

VH | Vehicle |

Algorithms | |

DP | Dynamic Program |

MILP | Mixed Integer Linear Program |

PMP | Pontryagin’s Minimum Principle |

QP | Quadratic Program |

RB | Rule Based (heuristics) |

**Table 3.**Model parameters for the internal combustion engine (CE), motor generator (MG), battery (BT) and vehicle (VH).

Model | Parameter | Value | Unit | Description |
---|---|---|---|---|

CE | ${\eta}_{e}$ | 0.45 | - | indicated efficiency |

${P}_{e0}$ | ${P}_{e0}\left({\omega}_{e}\right)$ | W | friction (cf. Figure 3) | |

$\underline{{P}_{e}}$ | $\underline{{P}_{e}}\left({\omega}_{e}\right)$ | W | minimum power (cf. Figure 3) | |

$\overline{{P}_{e}}$ | $\overline{{P}_{e}}\left({\omega}_{e}\right)$ | W | maximum power (cf. Figure 3) | |

${I}_{e}$ | 3 | kg m${}^{2}$ | moment of inertia | |

MG | ${\eta}_{m}$ | 0.95 | - | mechanical efficiency |

${P}_{m0}$ | ${P}_{m0}\left({\omega}_{m}\right)$ | W | friction (cf. Figure 3) | |

$\underline{{P}_{m}}$ | $\underline{{P}_{m}}\left({\omega}_{m}\right)$ | W | minimum power (cf. Figure 3) | |

$\overline{{P}_{m}}$ | $\overline{{P}_{m}}\left({\omega}_{m}\right)$ | W | maximum power (cf. Figure 3) | |

${I}_{m}$ | 1.5 | kg m${}^{2}$ | moment of inertia | |

BT | $\beta $ | $1\times {10}^{-6}$ | 1/W | loss coefficient |

$\overline{{E}_{b}}-\underline{{E}_{b}}$ | $4\times {10}^{6}$ | J | effective battery size | |

VH | m | $20\times {10}^{3}$ | kg | vehicle mass |

$\rho $ | 1.2 | kg/m${}^{3}$ | air density | |

${c}_{w}$ | 0.65 | - | air drag coefficient | |

A | 10 | m${}^{2}$ | frontal area | |

${c}_{r}$ | $4\times {10}^{-3}$ | - | rolling resistance coefficient | |

${r}_{d}$ | 52.2 | - | drive ratio | |

${c}_{G}$ | 1.29 | - | gear base constant | |

g | 9.8 | m/s${}^{2}$ | gravitational constant |

M | Description | CL${}_{1}$ | CL${}_{2}$ | $\mathit{\omega}$ | ${\mathit{P}}_{\mathit{p}}\left(\mathit{M}\right)$ |
---|---|---|---|---|---|

${M}_{c}$ | combined | closed | closed | ${\omega}_{e}$ = ${\omega}_{m}$ = $\omega $ | ${P}_{e}+{P}_{m}$ |

${M}_{e}$ | engine-only | closed | open | ${\omega}_{e}$ = $\omega ,{\omega}_{m}$ = 0 | ${P}_{e}$ |

${M}_{m}$ | motor-only | open | closed | ${\omega}_{m}$ = $\omega ,{\omega}_{e}$ = 0 | ${P}_{m}$ |

${M}_{o}$ | open driveline | open | open | ${\omega}_{e}$ = ${\omega}_{m}$ = 0 | 0 |

‘Generic’ | ‘Velocity’ | ‘Battery Energy’ | ‘Power-Split’ | |
---|---|---|---|---|

$\mathit{i}$ | 3 | 2 | 1 | |

${u}_{i}$ | $\left[\begin{array}{c}{P}_{d}\\ {P}_{b}\\ {I}_{M}\\ {I}_{G}\end{array}\right]$ | $\left[{P}_{d}\right]$ | $\left[\begin{array}{c}{P}_{b}\\ {I}_{M}\end{array}\right]$ | $\left[\begin{array}{c}{P}_{b}\\ {I}_{M}\\ {I}_{G}\end{array}\right]$ |

${x}_{i}$ | $\left[\begin{array}{c}s\\ v\\ {E}_{b}\\ M\\ G\end{array}\right]$ | $\left[\begin{array}{c}s\\ v\end{array}\right]$ | $\left[\begin{array}{c}{E}_{b}\end{array}\right]$ | $\left[\begin{array}{c}M\\ G\end{array}\right]$ |

${w}_{i}$ | $\left[\begin{array}{c}\mathit{\alpha}\\ \overline{\mathit{v}}\end{array}\right]$ | $\left[\begin{array}{c}\mathit{\alpha}\\ \overline{\mathit{v}}\\ \mathit{\omega}\end{array}\right]$ | $\left[\begin{array}{c}{\mathit{P}}_{\mathit{d}}\\ \mathit{\omega}\end{array}\right]$ | $\left[\begin{array}{c}{\mathit{P}}_{\mathit{d}}\\ {\mathit{\lambda}}_{\mathit{b}}\\ \mathit{v}\end{array}\right]$ |

${P}_{\u03f5i}$ | $\left[\begin{array}{c}{\u03f5}_{M}\\ {\u03f5}_{G}\end{array}\right]$ | 0 | 0 | $\left[\begin{array}{c}{\u03f5}_{M}\\ {\u03f5}_{G}\end{array}\right]$ |

${h}_{ei}$ | $\left[\begin{array}{c}s\left({t}_{0}\right)-{s}_{0}\\ s\left({t}_{f}\right)-{s}_{f}\\ {E}_{b}\left({t}_{f}\right)-{E}_{b}\left({t}_{0}\right)\end{array}\right]$ | $\left[\begin{array}{c}s\left({t}_{0}\right)-{s}_{0}\\ s\left({t}_{f3}\right)-{s}_{f}\end{array}\right]$ | $\left[\begin{array}{c}{E}_{b}\left({t}_{f2}\right)-{E}_{b}\left({t}_{0}\right)\end{array}\right]$ | 0 |

${h}_{ni}$ | $\left[\begin{array}{c}v-\overline{v}\\ {E}_{b}-\overline{{E}_{b}}\\ \underline{{E}_{b}}-{E}_{b}\\ {P}_{e}-\overline{{P}_{e}}\\ \underline{{P}_{e}}-{P}_{e}\\ {P}_{m}-\overline{{P}_{m}}\\ \underline{{P}_{m}}-{P}_{m}\end{array}\right]$ | $\left[\begin{array}{c}v-\overline{v}\\ {P}_{f}-\overline{{P}_{f}}\\ \underline{{P}_{f}}-{P}_{f}\end{array}\right]$ | $\left[\begin{array}{c}{E}_{b}-\overline{{E}_{b}}\\ \underline{{E}_{b}}-{E}_{b}\\ {P}_{e}-\overline{{P}_{e}}\\ \underline{{P}_{e}}-{P}_{e}\\ {P}_{m}-\overline{{P}_{m}}\\ \underline{{P}_{m}}-{P}_{m}\end{array}\right]$ | $\left[\begin{array}{c}{P}_{e}-\overline{{P}_{e}}\\ \underline{{P}_{e}}-{P}_{e}\\ {P}_{m}-\overline{{P}_{m}}\\ \underline{{P}_{m}}-{P}_{m}\end{array}\right]$ |

${t}_{fi}$ | ${t}_{f}=t\left({s}_{f}\right)$ | ${t}_{f3}\le t\left({s}_{f}\right)$ | ${t}_{f2}\le {t}_{f3}$ | ${t}_{f1}\le {t}_{f2}$ |

${y}_{i}$ | $\left[\begin{array}{c}{P}_{d}\\ {P}_{b}\\ {I}_{M}\\ {I}_{G}\end{array}\right]$ | $\left[\begin{array}{c}{\mathit{P}}_{\mathit{d}}\\ \mathit{v}\end{array}\right]$ | $\left[\begin{array}{c}{\mathit{\lambda}}_{\mathit{b}}\end{array}\right]$ | $\left[\begin{array}{c}{P}_{e}\\ {P}_{b}\\ {I}_{M}\\ {I}_{G}\\ \mathit{\omega}\end{array}\right]$ |

Mode | Description | ${\mathit{P}}_{\mathit{b}}^{\ast}$ |
---|---|---|

${M}_{m}$ | motor-only | $({P}_{d}-{P}_{m0})/{\eta}_{m}$ |

${M}_{e}$ | engine-only | 0 |

${M}_{c}$ | combined | $\left\{\begin{array}{cc}-\frac{({\lambda}_{b}+\frac{{\eta}_{m}}{\eta})}{2\beta {\lambda}_{b}}& \mathrm{if}\phantom{\rule{0.222222em}{0ex}}{P}_{b}>0\\ -\frac{({\lambda}_{b}+\frac{1}{\eta {\eta}_{m}})}{2\beta {\lambda}_{b}}& \mathrm{if}\phantom{\rule{0.222222em}{0ex}}{P}_{b}\le 0\end{array}\right.$ |

J [MJ] | Energy Reduction [%] | |
---|---|---|

non-hybrid | 16.8 | 0 |

iteration 0 | 7.91 | 52.9 |

iteration 1 | 7.90 | 53.0 |

MPC | 7.93 | 52.8 |

Vehicle | Fuel [l/100 km] | Fuel [%] |
---|---|---|

non-hybrid | 33.0 | 0 |

EMS ‘baseline’ | 31.1 | −5.8 |

EMS ‘preview’ | 30.7 | −7.0 |

© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

van Reeven, V.; Hofman, T.
Multi-Level Energy Management for Hybrid Electric Vehicles—Part I. *Vehicles* **2019**, *1*, 3-40.
https://doi.org/10.3390/vehicles1010002

**AMA Style**

van Reeven V, Hofman T.
Multi-Level Energy Management for Hybrid Electric Vehicles—Part I. *Vehicles*. 2019; 1(1):3-40.
https://doi.org/10.3390/vehicles1010002

**Chicago/Turabian Style**

van Reeven, Vital, and Theo Hofman.
2019. "Multi-Level Energy Management for Hybrid Electric Vehicles—Part I" *Vehicles* 1, no. 1: 3-40.
https://doi.org/10.3390/vehicles1010002