Loading [MathJax]/extensions/MathMenu.js
Pareto-Optimal Event-Based Scheme for Station and Inter-Station Control of Electric and Automated Buses | IEEE Journals & Magazine | IEEE Xplore

Pareto-Optimal Event-Based Scheme for Station and Inter-Station Control of Electric and Automated Buses

DatasetsAvailable

Abstract:

This paper considers electric and automated buses required to follow a given line and respect a given timetable in an inter-city road. The main goal of this work is to de...Show More
Topic: Control and Monitoring of Next-Gen Urban Infrastructure: Applications to Power, Transportation, and Water Systems

Abstract:

This paper considers electric and automated buses required to follow a given line and respect a given timetable in an inter-city road. The main goal of this work is to design a control scheme in order to optimally decide, in real time, the speed profile of the bus along the line, as well as the dwell and charging times at stops. This must be done by accounting for the traffic conditions encountered in the road and by jointly minimizing the deviations from the timetable and the lack of energy in the bus battery compared with a desired level. For the resulting multi-objective optimal control problem a Pareto front analysis is performed in the paper, also considering a real test case. Relying on the analysis outcomes, an event-based control scheme is proposed, which allows, every time a bus reaches a stop, to find the most suitable Pareto-optimal solution depending on a set of state and scenario conditions referred to the expected departure time at stops, the predicted traffic conditions in the road and the state of charge of the bus battery. The performance of the proposed control scheme is tested on a real case study, thoroughly discussed in the paper.
Topic: Control and Monitoring of Next-Gen Urban Infrastructure: Applications to Power, Transportation, and Water Systems
Published in: IEEE Open Journal of Control Systems ( Volume: 3)
Page(s): 445 - 460
Date of Publication: 09 September 2024
Electronic ISSN: 2694-085X

Funding Agency:

No metrics found for this document.

CCBY - IEEE is not the copyright holder of this material. Please follow the instructions via https://creativecommons.org/licenses/by/4.0/ to obtain full-text articles and stipulations in the API documentation.
SECTION I.

Introduction

An efficient mobility system, both in terms of the offered transport services and from an energy perspective, is one of the essential requirements of smart cities [1]. In particular, the transition to smart mobility could take place in several ways, either through the adoption of green technologies, such as electric vehicles, or through the use of vehicles with a high level of automation that can provide both better performance and higher levels of safety. However, merely moving towards technologically advanced means of transport is not sufficient to turn cities into less polluted and more accessible places. Therefore, it is necessary to change the mobility habits of citizens, encouraging them to prefer collective transport systems over private vehicles. On the other hand, public transport services should be reconsidered both with the aim of adapting to these new technologies and to be more flexible and better suited to current mobility needs.

The planning and control issues widely studied for fossil fuel buses (see the survey paper [2]) need to be revised to consider the charging requirements [3] and the automated or semi-automated features of these vehicles [4], [5]. Thus, strategic, tactical, and operational planning and control problems must be reformulated in this new scenario. In particular, decisions made at the strategic level should also concern the choice of equipment installed on vehicles and charging infrastructure [6], the location of charging stations [7], and the sizing of the bus fleet. Some of these decisions can be made jointly. For example, [8] and [9] define the type of on-board technologies and the location of charging points at the same time, while in [10] a planning problem is proposed to determine the optimal number of electric buses in the fleet based on the technological equipment of the vehicle and the charging infrastructure. At the tactical level, decisions are mainly related to the definition of frequency and timetable with the goal of considering the energy needs of electric buses [11]. At the operational level the problems of vehicle scheduling and dispatching are particularly crucial since they are related to the availability of the charging infrastructure. Works addressing these issues are for example [12], [13], [14], [15]. Furthermore, when considering electric vehicles, the influence of the surrounding traffic becomes particularly relevant on the effective energy consumption and thus on the actual ability to complete the tasks assigned to each vehicle, as, for instance, illustrated in [16] where an electric bus schedule in presence of stochastic traffic conditions is proposed.

As far as control approaches are concerned, most of those present in the literature are targeted at the control of fossil-fuel buses. However, regardless of the bus type, the main control approaches can be distinguished into station control strategies, in which the control actions are implemented at bus stops and which typically involve the decision regarding the dwell time at stops [17], [18], and inter-station control strategies that are taken while the bus is traveling between two stops and are generally based on the control of the bus speed [19], [20]. Note that most of the approaches related to the control of electric buses fall into the category of inter-station control, combining the concepts already developed in eco-driving strategies for electric vehicles with the need to ensure efficient public transport services. An example of an eco-driving approach applied to the control of electric buses is presented in [21], [22]. Moreover, some works integrate station control with inter-station control, resulting in combined approaches that involve the implementation of multiple control actions at the same time. For instance, [23] and [24] combine the typical purposes of eco-driving control with the goal of limiting bus bunching.

This work falls in this line of research by integrating station and inter-station control through a Pareto-optimal event-based control scheme allowing to find the optimal bus speed during the trip and the dwell/charging times at bus stops. This optimal solution is obtained by solving, in real time, a multi-objective optimal control problem formalized to minimize deviations from the timetable and to achieve a final energy level that allows the bus to perform a subsequent ride. The main peculiarity of this approach lies in the fact that the bus performs the transport service on an intercity line, where the absence of reserved lanes requires that the control actions applied to the bus are defined according to traffic predictions on the bus route. Note that the approaches already present in the literature generally do not consider the influence of vehicular traffic on the bus control scheme. Whenever reserved lanes are not present both in urban and in intercity lines, this assumption can no longer be applied since the capability of each bus to perform the transport tasks is significantly affected by the traffic conditions it encounters along its route. Notice that our previous works [25], [26], [27], [28] also relate to this line of research. Yet, differently from what addressed in them, the goal of this paper is to propose a control algorithm in which at each stop a multi-objective optimal control problem is solved by applying a specific Pareto-optimal solution. The choice of the solutions to be applied in real time is given by the occurrence of some events originating from the simultaneous verification of conditions derived from the system state detected in real time and the traffic conditions predicted over the bus line.

To summarize, the new contributions of this work are as follows:

  • this work proposes two methods based on the lexicographic approach combined with the epsilon-constrained method to determine the Pareto optimal solutions of sixteen scenarios characterized by different traffic conditions, values of initial energy stored in the bus battery and initial travel delay. This analysis has revealed interesting properties of the system under study that have been used to develop the control scheme to be applied in real time;

  • a novel Pareto-optimal event-based control scheme is proposed to properly control the speed, dwell time and charging time of an automated and electric bus. This control scheme is of decentralized type and, depending on the occurrence of a certain event, allows to decide which lexicographic control problem to solve. The events, each of which corresponds to the solution of a specific optimal control problem, have been derived from the observations made on the determination of the Pareto optimal solutions in numerous scenarios;

  • the proposed control scheme has been applied to a case study, demonstrating its effectiveness compared to other state-of-the-art methods and showing its practical applicability due to the limited computational time required to solve each optimal control problem. Such limited computational effort suggests the possible extension of the proposed control scheme to the centralized case in which buses belonging to a fleet are simultaneously controlled;

  • compared to our previous works, the multi-objective optimization problem proposed here presents some modifications, such as the introduction of a constraint on the maximum bus charging time at the terminus.

This paper is structured as follows. Section II provides the main information about the basic settings of the considered problem and of the traffic prediction model. Section III introduces the multi-objective optimal control, whose Pareto front analysis is performed on different real case study scenarios in Section IV. Note that the analysis proposed in Section IV is preliminary to the definition of the control algorithm presented in Section V. The aim of this latter is to choose which Pareto-optimal solutions to actuate in real time based on some state and scenario conditions. Section V also presents the results obtained from the application of the proposed event-based control algorithm to a real case study and compares them with those obtained from the application of state-of-the-art methods. Finally, in Section VI, final remarks and conclusions of this work are presented.

SECTION II.

Intercity Bus Line Modeling: Notation, Basic Settings and Traffic Prediction

This section provides information on the settings of the intercity bus line considered in this paper, and the basic requirements of traffic predictions tools to be used in the optimal control problem described in Section III. Furthermore, Table 1 provides an overview of the notation adopted in this work.

TABLE 1 Parameters (1.a) and variables (1.b) adopted in the multi-objective optimization problem and in the proposed control scheme.
Table 1- Parameters (1.a) and variables (1.b) adopted in the multi-objective optimization problem and in the proposed control scheme.

The intercity line has several stops, we denote with $s$ a generic stop and with $\mathcal {\bar{S}} =\lbrace s:s=0,\ldots,S\rbrace$ the set of all the stops along the line, where $s=0$ is the stop from which the bus route starts, and $S$ is the terminus of the line. We also denote by $\mathcal {S}$ a subset of $\mathcal {\bar{S}}$ such that $\mathcal {S}=\mathcal {\bar{S}}\setminus \lbrace 0\rbrace$. The following parameters are associated with each $s \in \mathcal {S}$:

  • $\pi _{s}$ is the location of stop $s$ [km];

  • $\Pi _{s}$ is the length of the road stretch connecting stops $s$ and $s-1$ [km];

  • $\eta _{s} \in \lbrace 0,1\rbrace$ is equal to 1 if stop $s$ is equipped with a flash-charging infrastructure, 0 otherwise;

  • $\varsigma$ is the charging power of a flash-charging infrastructure [kW].

Moreover, each bus in this line is associated with a timetable indicating the dwell times at each stop. The time horizon over which the bus is controlled is based on that timetable and starts at the bus departure time from stop $s=0$ and ends at the scheduled time at the terminus $S$ increased by a given tolerance. The resulting control horizon is discretized into $K$ time steps, where $k$ is a generic time step, $ \Delta _\mathrm{T}$ is the width of each time interval $[k,k+1)$, while $\mathcal {K}=\lbrace k: k=0, \ldots, K-1 \rbrace$ represents the set of time steps composing the control horizon, which has an overall duration of $ \Delta _\mathrm{T} \cdot K$. Based on the timetable associated with each bus, the following parameters are defined:

  • $\bar{w}_{s}(k) \in \lbrace 0,1\rbrace$, $k \in \mathcal {K}$, is equal to 1 $\forall k=k^\mathrm{a}_{s}, \ldots, k^\mathrm{d}_{s}$, 0 otherwise, where $k^\mathrm{a}_{s}$ is the time step in which the bus has to arrive at stop $s$, while $k^\mathrm{d}_{s}$ is the time step in which the bus has to leave the stop $s$ according to the timetable;

  • $T^\mathrm{w}_{s}$ is the number of time steps in which the bus has to wait at stop $s$ according to the timetable;

  • $T^\mathrm{t}_{s}$ is the number of time steps in which the bus has to travel from stop $s-1$ to stop $s$ according to the timetable;

  • $\bar{v}_{s}$ is the speed the bus should maintain between stops $s-1$ and $s$ in order to comply with the timetable [km/h].

A peculiar aspect of this problem is that, due to the lack of reserved lanes, the journey of the bus is affected by the surrounding traffic conditions, particularly by the speed of vehicular traffic it encounters along its route. Therefore, predictions of average traffic speed along the line should be taken into account when controlling bus speed. Such traffic predictions can be provided either by dynamic traffic models (see the survey paper [29] and the references therein) or by data-driven models (see for instance [30]). Usually these models are discretized both in space and time. The space discretization in dynamic traffic models is often associated with the road topology, whereas, when data-driven models are adopted, the number of sections is given by the number of available sensors able to provide traffic measurements. It is worth noting that the discretization used in the traffic prediction models can be different from the one used in the optimal control problem, so the traffic speed provided by the prediction models must be processed appropriately for being used in the control scheme.

In this problem we assume that the traffic prediction is performed on $N$ sections, each one having length $l_{i}$ [km], with $i=1, \ldots, N$. From here on we will refer to the set of road sections in the bus line as $\mathcal {I}=\lbrace i: i=1, \ldots, N\rbrace$, and, for each section $i\in \mathcal {I}$, we will denote with $p_{i}$ the position calculated as $p_{i}=\sum _{\jmath =1}^{i-1}l_\jmath$, with $i \in \mathcal {I} \setminus \lbrace 1\rbrace$ and with $p_{1}=0$. Let us also denote, for each $s\in \mathcal {S}$, the subset $\mathcal {I}_{s}\subseteq \mathcal {I}$ which contains the indices of the sections that are located on the leg connecting stop $s-1$ with stop $s$. In this work, the traffic prediction is performed using the METANET model [31] in the version presented in [25], [26]. Since, as mentioned above, the dynamic traffic model and the optimal control problem have two different temporal discretizations, here the average traffic speed $v^\mathrm{traffic}_{i}(k)$ for each section $i \in \mathcal {I}$ and at each time step $k \in \mathcal {K}$ has been obtained by applying the procedure illustrated in [25].

SECTION III.

the Multi-Objective Optimization Problem

In this section we introduce the multi-objective optimization problem that will be embedded into the event-based control scheme described in Section V.

Let us start by introducing the main variables adopted in this problem and, in particular, by defining the state variables used to describe the dynamics of the bus. They are the position of the bus $p^\mathrm{{bus}}(k)$ [km] and the energy stored in the bus battery $e^\mathrm{{bus}}(k)$ [kWh], defined for each time step $k \in \mathcal {K} \cup \lbrace K\rbrace$.

The control variables are the speed of the bus $v^\mathrm{{bus}}(k)$ [km/h], defined for time steps $k \in \mathcal {K}$, the dwell time activation $w^\mathrm{{bus}}_{s}(k)$ and the charging time activation $c^\mathrm{{bus}}_{s}(k)$ of the bus at the stops, defined for time steps $k \in \mathcal {K}$ and for each stop $s \in \mathcal {S}$. These last two variables are binary and are defined as follows: \begin{align*} w^\mathrm{{bus}}_{s}(k)=\left\lbrace \begin{array}{ll}1 & \text {if bus is waiting at}\ s\ \text{at time}\ k\\ 0 & \text {otherwise} \end{array} \right. \tag{1}\\ c^\mathrm{{bus}}_{s}(k)=\left\lbrace \begin{array}{ll}1 & \text {if bus is charging at}\ s\ \text{at time}\ k\\ 0 & \text {otherwise} \end{array} \right. \tag{2} \end{align*} View SourceRight-click on figure for MathML and additional features.Some auxiliary variables are needed to formalize the constraints of the optimization problem in linear form. A first type of auxiliary variables is defined for each road section $i \in \mathcal {I}$ and for each time step $k \in \mathcal {K}$:

  • $z^\mathrm{{bus}}_{i}(k)$ represents the presence of the bus after the beginning of section $i$ at time step $k$, i.e. \begin{equation*} z^\mathrm{{bus}}_{i}(k)=\left\lbrace \begin{array}{ll}1 & \text {if} \; p^\mathrm{{bus}}(k) \geq p_{i}\\ 0 & \text {otherwise} \end{array} \right. \tag{3} \end{equation*} View SourceRight-click on figure for MathML and additional features.

  • $y^\mathrm{{bus}}_{i}(k)$ models the presence of the bus before the beginning of section $i+1$ at time step $k$, i.e. \begin{equation*} y^\mathrm{{bus}}_{i}(k)=\left\lbrace \begin{array}{ll}1 & \text {if} \; p^\mathrm{{bus}}(k) \leq p_{i+1}\\ 0 & \text {otherwise} \end{array} \right. \tag{4} \end{equation*} View SourceRight-click on figure for MathML and additional features.

  • $\lambda ^\mathrm{{bus}}_{i}(k)$ represents the presence of the bus in section $i$ at time step $k$, then \begin{equation*} \lambda ^\mathrm{{bus}}_{i}(k)=\left\lbrace \begin{array}{ll}1 & \text {if} \; z^\mathrm{{bus}}_{i}(k)=y^\mathrm{{bus}}_{i}(k)=1\\ 0 & \text {otherwise} \end{array} \right. \tag{5} \end{equation*} View SourceRight-click on figure for MathML and additional features.

A second type of auxiliary variables concerns bus arrivals and departures at stops. These variables are defined for each stop $s \in \mathcal {S}$ and for each time step $k \in \mathcal {K}$, as follows:

  • $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$ stands for the proper arrival of the bus at stop $s$ between time steps $k$ and $k+1$ \begin{equation*} \gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)=\left\lbrace \begin{array}{ll}1 & \text {if} \; \text{ {bus} arrives at s} \\ & \text{between k and k+1}\\ 0 & \text {otherwise} \end{array} \right. \tag{6} \end{equation*} View SourceRight-click on figure for MathML and additional features.

  • $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$ relates to the proper departure of the bus at stop $s$ between time steps $k$ and $k+1$ \begin{equation*} \gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)=\left\lbrace \begin{array}{ll}1 & \text {if} \; \text{ {bus} departs from s} \\ & \text{between k and k+1}\\ 0 & \text {otherwise} \end{array} \right. \tag{7} \end{equation*} View SourceRight-click on figure for MathML and additional features.

Finally, another auxiliary variable is needed to represent the negative difference between the level of energy stored in the bus battery and the desired energy level $\bar{e}^\mathrm{{bus}, \mathrm{fin}}$ [kWh]. This variable is denoted by $\zeta ^\mathrm{{bus}, \mathrm{fin}}$ and is defined as follows: \begin{equation*} \zeta ^\mathrm{{bus}, \mathrm{fin}}=\max \lbrace \bar{e}^\mathrm{{bus}, \mathrm{fin}} - e^\mathrm{{bus}}(K), 0\rbrace \tag{8} \end{equation*} View SourceRight-click on figure for MathML and additional features.In the following subsections the constraints, the objectives and the statement of the multi-objective problem are introduced and discussed.

A. State Equations of the Bus

The bus dynamics is given by two state equations, regarding the position of the bus and the state of the energy stored in its battery, respectively, which are included in the optimization problem as constraints, i.e. \begin{align*} &p^\mathrm{{bus}}(k+1) = p^\mathrm{{bus}}(k) + v^\mathrm{{bus}}(k) \Delta _\mathrm{T} \qquad k \in \mathcal {K} \tag{9}\\ &e^\mathrm{{bus}}(k+1) = e^\mathrm{{bus}}(k)+ \Delta _\mathrm{T} \sum _{s \in \mathcal {S}} \varsigma c^\mathrm{{bus}}_{s}(k) + \\ &\quad - \delta \left[p^\mathrm{{bus}}(k+1)- p^\mathrm{{bus}}(k)\right] - \Delta _\mathrm{T} \beta \qquad k \in \mathcal {K} \tag{10} \end{align*} View SourceRight-click on figure for MathML and additional features.Equations (9) update the distance traveled by the bus based on its speed, while equations (10) compute the energy stored in the bus battery on the basis of the charging time, and considering the average mileage electric consumption $\delta$ [kWh/km] as well as the average consumption of auxiliary equipment $\beta$ [kWh/h], that decreases the energy stored in the battery on the basis of the elapsed service time. Note that both state equations (9) and (10) have to be initialized with initial conditions related to the initial bus position $p^\mathrm{{bus}}(0)$ and the initial energy in the bus battery $e^\mathrm{{bus}}(0)$. The dynamics of the bus position and of the charging/discharging process of the bus battery is represented by a simplified linear model. On the one hand, this allows to have linear constraints in the optimal control problem and, on the other hand, this model is accurate enough to represent both dynamics.

B. Constraints At Bus Stops

Some constraints are needed to correctly represent the arrival, departure, stopping of the bus at bus stops, and to enforce that the minimum service level requirements demanded for the public transport service are respected.

Let us start with constraints which impose that the bus has to stop only in the proximity of bus stops \begin{align*} p^\mathrm{{bus}}(k) - \left(\pi _{s} -\Delta \right) \geq \sigma - \left(L +\sigma \right)\left(1- w^\mathrm{{bus}}_{s}(k)\right) \\ s \in \mathcal {S}, \, k \in \mathcal {K} \tag{11}\\ \left(\pi _{s} + \Delta \right) - p^\mathrm{{bus}}(k) \geq \sigma - \left(L +\sigma \right)\left(1- w^\mathrm{{bus}}_{s}(k)\right) \\ s \in \mathcal {S}, \, k \in \mathcal {K} \tag{12} \end{align*} View SourceRight-click on figure for MathML and additional features.where $\sigma$ is a small quantity arbitrarily chosen, $\Delta$ is a tolerance on the bus stop position, while $L$ is the length of the entire intercity line and is calculated as $L=\sum _{i \in \mathcal {I}}l_{i}$. Specifically, constraints (11)–​(12) impose that $w^\mathrm{{bus}}_{s}(k)$ is equal to 0 if $p^\mathrm{{bus}}(k) \leq \pi _{s}-\Delta$ or $p^\mathrm{{bus}}(k) \geq \pi _{s}+\Delta$.

Other constraints are needed to ensure that the bus cannot arrive at and depart from the same stop more than once \begin{align*} &\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)- \gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k) = w^\mathrm{{bus}}_{s}(k+1) - w^\mathrm{{bus}}_{s}(k) \\ &\quad\quad\quad\quad\qquad\qquad\qquad s \in \mathcal {S}, \, k \in \mathcal {K}\setminus \lbrace K-1\rbrace \tag{13}\\ &\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)+ \gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k) \leq 1\qquad s \in \mathcal {S}, \, k \in \mathcal {K} \tag{14}\\ &\sum _{ k\in \mathcal {K}}\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)+ \gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k) \leq 2\qquad s \in \mathcal {S} \tag{15} \end{align*} View SourceRight-click on figure for MathML and additional features.More in detail, constraints (13) and (14) guarantee that, when $w^\mathrm{{bus}}_{s}(k)=0$ and $w^\mathrm{{bus}}_{s}(k+1)=1$, one has $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)=1$ and $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)=0$. On the other hand, if $w^\mathrm{{bus}}_{s}(k)=1$ and $w^\mathrm{{bus}}_{s}(k+1)=0$, constraints (13) and (14) enforce that $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k) =0$ and $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)=1$. When $w^\mathrm{{bus}}_{s}(k)=w^\mathrm{{bus}}_{s}(k+1)$, both variables $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$ and $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$ are fixed to 0. Finally, with constraints (15), we impose that the sum of the variables of bus arrivals and departures at each stop and at each time step cannot be greater than 2.

Finally, the following constraints have been included to ensure the proper public transport service \begin{align*} \sum _{s \in \mathcal {S}} w^\mathrm{{bus}}_{s}(k) \leq 1 \qquad k \in \mathcal {K} \tag{16}\\ \sum _{k \in \mathcal {K}} w^\mathrm{{bus}}_{s}(k) \geq \psi _{s} \qquad s \in \mathcal {S} \tag{17} \end{align*} View SourceRight-click on figure for MathML and additional features.with constraints (16) imposing that the bus can be at most in one stop in each time step, while (17) ensuring that the bus stays at a stop for a minimum number of time steps $\psi _{s}$ estimated for each stop $s$ in order to allow passengers to board and alight from the bus.

C. Constraints on Charging At Bus Stops and on the Energy Level

Some constraints are needed to model the charging phases of the bus and to impose operational requirements on the level of energy stored in the battery. The constraints related to the possibility of charging at stops are \begin{align*} &c^\mathrm{{bus}}_{s}(k) \leq w^\mathrm{{bus}}_{s}(k) \qquad s \in \mathcal {S}, \, k \in \mathcal {K} \tag{18}\\ &c^\mathrm{{bus}}_{s}(k) \leq \eta _{s} \qquad s \in \mathcal {S}, \, k \in \mathcal {K} \tag{19}\\ &\sum _{k \in \mathcal {K}} c^\mathrm{{bus}}_{S}(k) \leq C^{\max } \tag{20} \end{align*} View SourceRight-click on figure for MathML and additional features.Constraints (18) impose that the bus can only be charged at a stop if it is waiting, while constraints (19) ensure that bus charging only occurs if the stop is equipped with a flash-charging infrastructure. Furthermore, constraint (20) imposes a maximum number $C^{\max }$ of time steps in which the bus can be charged at the last stop $S$. This condition is introduced because the terminus of the line, and its charging infrastructure, may be shared with other intercity bus lines.

Other constraints are introduced to impose some conditions on the level of energy stored in the bus battery \begin{align*} &\zeta ^\mathrm{{bus}, \mathrm{fin}} \geq \bar{e}^\mathrm{{bus}, \mathrm{fin}} - e^\mathrm{{bus}}(K) \tag{21}\\ &\zeta ^\mathrm{{bus}, \mathrm{fin}} \geq 0 \tag{22}\\ &e^\mathrm{{bus}, {\min }} \leq e^\mathrm{{bus}}(k) \leq e^\mathrm{{bus}, {\max }} \qquad k \in \mathcal {K} \tag{23} \end{align*} View SourceRight-click on figure for MathML and additional features.Constraints (21)–​(22) are used to properly set the variable $\zeta ^\mathrm{{bus}, \mathrm{fin}}$ according to (8). Finally, constraints (23) impose the minimum $e^\mathrm{{bus},\min }$ [kWh] and maximum energy for the bus battery $e^\mathrm{{bus},\max }$ [kWh].

D. Constraints on Bus Speed

One of the main features of this work lies in the fact that the speed of the bus is optimized by taking into account the prediction of the average traffic speed along its route. Some constraints are then needed to compare the position of the bus with the space discretization used for traffic speed predictions. The following constraints are included to properly define the auxiliary variables introduced earlier as a function of bus position \begin{align*} &p^\mathrm{{bus}}(k) - p_{i} +M \left(1-z^\mathrm{{bus}}_{i}(k)\right) \geq \sigma \\ &\hphantom{}i \in \mathcal {I}, \, k \in \mathcal {K} \tag{24}\\ &p_{i}-p^\mathrm{{bus}}(k)+M z^\mathrm{{bus}}_{i}(k) \geq 0 \qquad i \in \mathcal {I}, \,\hphantom{} k \in \mathcal {K} \tag{25}\\ &p_{i+1}-p^\mathrm{{bus}}(k)+M \left(1-y^\mathrm{{bus}}_{i}(k)\right)\geq 0 \\ &\hphantom{}i \in \mathcal {I}, \, k \in \mathcal {K} \tag{26}\\ &p^\mathrm{{bus}}(k) - p_{i+1} +M y^\mathrm{{bus}}_{i}(k) \geq \sigma \qquad i \in \mathcal {I}, \, k \in \mathcal {K}\; \tag{27}\\ &\lambda ^\mathrm{{bus}}_{i}(k) \leq z^\mathrm{{bus}}_{i}(k)\qquad i \in \mathcal {I}, \, k \in \mathcal {K} \tag{28}\\ &\lambda ^\mathrm{{bus}}_{i}(k) \leq y^\mathrm{{bus}}_{i}(k)\qquad i \in \mathcal {I}, \, k \in \mathcal {K} \tag{29}\\ &\lambda ^\mathrm{{bus}}_{i}(k) \geq z^\mathrm{{bus}}_{i}(k)+y^\mathrm{{bus}}_{i}(k)-1\qquad\; i \in \mathcal {I}, \, k \in \mathcal {K}\; \tag{30} \end{align*} View SourceRight-click on figure for MathML and additional features.where $M$ is a large quantity arbitrarily chosen. Specifically, constraints (24)–​(25) are used to define the variables $z^\mathrm{{bus}}_{i}(k)$ in accordance with their definition given in (3) and, similarly, constraints (26)–​(27) define the variables $y^\mathrm{{bus}}_{i}(k)$ in accordance with (4). Constraints (28)–​(30) define $\lambda ^\mathrm{{bus}}_{i}(k)$ on the basis of $z^\mathrm{{bus}}_{i}(k)$ and $y^\mathrm{{bus}}_{i}(k)$, as defined in (5).

The following constraints are introduced to properly bound the bus speed \begin{align*} &0 \leq v^\mathrm{{bus}}(k)\leq \sum _{i \in \mathcal {I}} \lambda ^\mathrm{{bus}}_{i}(k) v^\mathrm{traffic}_{i}(k)\qquad \hphantom{}k \in \mathcal {K} \tag{31}\\ &v^\mathrm{{bus}}(k) \leq \bigg (1- \sum _{s \in \mathcal {S}} w^\mathrm{{bus}}_{s}(k)\bigg)\cdot v^\mathrm{{bus},{\max }} \qquad k \in \mathcal {K} \; \tag{32}\\ &\quad -\overline{\Delta V} \leq v^\mathrm{{bus}}(k+1) - v^\mathrm{{bus}}(k)\leq \overline{\Delta V} \\ & \hphantom{}k \in \mathcal {K} \tag{33} \end{align*} View SourceRight-click on figure for MathML and additional features.

Constraints (31) impose positivity and upper bounds for the bus speed considering the predicted speed of the traffic flow $v^\mathrm{traffic}_{i}(k)$, while constraints (32) impose that the bus speed cannot exceed the maximum allowable speed $v^\mathrm{{bus},\max }$ and that the speed is null when the bus is waiting at the stops. Finally, constraints (33) ensure that the change in speed between two consecutive time steps does not exceed $\overline{\Delta V}$ [km/h].

E. Objectives and Problem Statement

The control variables of the bus are found by pursuing two different objectives named $F_{1}$ and $F_{2}$, respectively. Specifically, the term $F_{1}$ refers to the deviation from the timetable, and is represented as the quadratic difference between the control variables $w^\mathrm{{bus}}_{s}(k)$ and their expected value $\bar{w}_{s}(k)$ (defined based on the timetable), multiplied by $\alpha _{s}(k)$, which is a weight parameter, defined for each $k \in \mathcal {K}$ and for each $s \in \mathcal {S}$, introduced to penalize non-adherence to timetable, early arrivals, and late departures from stops in different ways. The objective $F_{1}$ is given by \begin{equation*} F_{1} =\sum _{s \in \mathcal {S}} \sum _{k\in \mathcal {K}}\alpha _{s}(k) \bigg (\bar{w}_{s}(k) - w^\mathrm{{bus}}_{s}(k)\bigg)^{2} \tag{34} \end{equation*} View SourceRight-click on figure for MathML and additional features.The second objective $F_{2}$ penalizes the lack of final energy for the bus against the prescribed final energy level in order to be able to perform the subsequent ride, i.e. \begin{equation*} F_{2} = \zeta ^\mathrm{{bus}, \mathrm{fin}} \tag{35} \end{equation*} View SourceRight-click on figure for MathML and additional features.The resulting Problem 1 is a multi-objective optimal control problem with a mixed-integer linear quadratic formulation, including two cost terms, $F_{1}$ and $F_{2}$, respectively defined in (34) and (35).

Problem 1.

Multi-objective optimal control problem: Find the state variables $p^\mathrm{{bus}}(k)$, $e^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, the control variables $v^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, and $w^\mathrm{{bus}}_{s}(k)$, $c^\mathrm{{bus}}_{s}(k)$ $\forall k \in \mathcal {K}$, $\forall s \in \mathcal {S}$, the auxiliaries variables $z^\mathrm{{bus}}_{i}(k)$, $y^\mathrm{{bus}}_{i}(k)$, $\lambda ^\mathrm{{bus}}_{i}(k)$, $\forall i \in \mathcal {I}$, $ \forall k \in \mathcal {K}$, $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$, $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$, $ \forall s \in \mathcal {S}$, $\forall k \in \mathcal {K}$, and $\zeta ^\mathrm{{bus}, \mathrm{fin}}$, such that \begin{gather*} \min \left(F_{1},F_{2}\right) \tag{36}\\ \text{subject to }{(9)}-{(33)} \end{gather*} View SourceRight-click on figure for MathML and additional features.

SECTION IV.

Analysis of the Pareto Front

Multi-objective optimal control problems are employed when the controller has to jointly pursue two or more objectives that may be in conflict with each other. In that case, there can be solutions in which the reduction of one objective implies an increase in the others. In multi-objective optimization, then, the different solutions may be classified according to the definition of Pareto dominance.

Referring to our specific case, let us denote by $\mathcal {Z}\subseteq \mathbb {R}^{2}$ the set of vectors $\mathbf {z}\in \mathbb {R}^{2}$ containing the pairs of objective values $F_{1}$ and $F_{2}$ associated with all feasible solutions of Problem 1. Then let us compare two vectors of objective function values, namely $\mathbf {z}, \mathbf {z}^{*}\in \mathcal {Z}$, where $\mathbf {z}=[F_{1}^{z},F_{2}^{z}]$ and $\mathbf {z}^{*}=[F_{1}^{z^{*}},F_{2}^{z^{*}}\!]$.

Definition 1:

The vector $\mathbf {z}^{*}\in \mathcal {Z}$ Pareto-dominates the vector $\mathbf {z}\in \mathcal {Z}$ if and only if $F_{1}^{z^{*}}\leq F_{1}^{z} \, \wedge \, F_{2}^{z^{*}}\leq F_{2}^{z}$.

Definition 2:

A vector $\mathbf {z}^{*}\in \mathcal {Z}$ is Pareto-optimal if there does not exist another vector $\mathbf {z}\in \mathcal {Z}$ such that $\mathbf {z}\in \mathcal {Z}$ Pareto-dominates $\mathbf {z}^{*}\in \mathcal {Z}$, according to Definition 1.

Definition 3:

The Pareto front $\Xi$ gathers all vectors $\mathbf {z}^{*}\in \mathcal {Z}$ that are Pareto-optimal, according to Definition 2.

In this section, two methods based on the integration of the epsilon-constraint method and lexicographic ordering are proposed to find the Pareto-optimal solutions of Problem 1 considering different traffic scenarios and different initial conditions related to the state of a bus, i.e. the initial amount of energy stored in bus battery and the initial delay of the ride. The choice of adopting these methods is due to the fact that Problem 1 is not convex and the application of other methods, such as the Weighted Sum Method, does not guarantee to find all points in the Pareto front (see more details on the concept of supported efficient solutions in [32] and [33]).

More in details, the Pareto-optimal solutions are sought by ranking the objectives according to a certain priority, as it is done in lexicographic approaches, and progressively reducing the bound on the non-priority objective according to the logic of the epsilon-constraint method. Since in Problem 1 there are two objectives, the possible priority orders are two and give rise to the following two methods:

  • Method $\varepsilon$-lexmin$F_{1}$, which allows the determination of the set $\Xi _{1}$ containing the Pareto-optimal vectors $\mathbf {z}^{*}_{1}$ which satisfy Definition 3, considering $F_{1}$ as the most important objective and $F_{2}$ as secondary objective;

  • Method $\varepsilon$-lexmin$F_{2}$, which allows the determination of the set $\Xi _{2}$ containing the Pareto-optimal vectors $\mathbf {z}^{*}_{2}$ which satisfy Definition 3, considering $F_{2}$ as the most important objective and $F_{1}$ as the secondary one.

In the following subsections we provide a detailed description of the two multi-objective methods and we show some results obtained by applying such methods for solving Problem 1 in a real-case study.

A. DESCRIPTION of METHODS $\varepsilon$-Lexmin$F_{1}$ and $\varepsilon$-Lexmin$F_{2}$

Let us start by describing the first method, i.e. Method $\varepsilon$-lexmin$F_{1}$, that is based on the iterative solution of the following single-objective problems:

Problem 2:

Find the state variables $p^\mathrm{{bus}}(k)$, $e^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, the control variables $v^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, and $w^\mathrm{{bus}}_{s}(k)$, $c^\mathrm{{bus}}_{s}(k)$ $\forall k \in \mathcal {K}$, $\forall s \in \mathcal {S}$, the auxiliaries variables $z^\mathrm{{bus}}_{i}(k)$, $y^\mathrm{{bus}}_{i}(k)$, $\lambda ^\mathrm{{bus}}_{i}(k)$, $\forall i \in \mathcal {I}$, $ \forall k \in \mathcal {K}$, $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$, $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$, $ \forall s \in \mathcal {S}$, $\forall k \in \mathcal {K}$, and $\zeta ^\mathrm{{bus}, \mathrm{fin}}$, such that \begin{gather*} \min \; F_{1} \tag{37}\\ \text{subject to } {(9)}\!-\!{(23)} \text{ and}\\ F_{2}\leq \varepsilon _{F_{2}} \tag{38} \end{gather*} View SourceRight-click on figure for MathML and additional features.

Problem 3:

Find the state variables $p^\mathrm{{bus}}(k)$, $e^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, the control variables $v^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, and $w^\mathrm{{bus}}_{s}(k)$, $c^\mathrm{{bus}}_{s}(k)$ $\forall k \in \mathcal {K}$, $\forall s \in \mathcal {S}$, the auxiliaries variables $z^\mathrm{{bus}}_{i}(k)$, $y^\mathrm{{bus}}_{i}(k)$, $\lambda ^\mathrm{{bus}}_{i}(k)$, $\forall i \in \mathcal {I}$, $ \forall k \in \mathcal {K}$, $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$, $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$, $ \forall s \in \mathcal {S}$, $\forall k \in \mathcal {K}$, and $\zeta ^\mathrm{{bus}, \mathrm{fin}}$, such that \begin{gather*} \min \; F_{2} \tag{39}\\ \text{subject to } {(9)}\!-\!{(23)} \text{ and}\\ F_{1}= \bar{F_{1}} \tag{40} \end{gather*} View SourceRight-click on figure for MathML and additional features.

where $\bar{F_{1}}$ is the optimal value of the objective $F_{1}$ found by solving Problem 2. Method $\varepsilon$-lexmin$F_{1}$ consists of iteratively finding Pareto-optimal solutions of Problem 1, by solving at each iteration Problems 2 and 3 and by progressively reducing the bound $\varepsilon _{F_{2}} \geq 0$ with a step-width equal to $\Delta _{F_{2}}$. In Algorithm 1 the pseudocode of Method $\varepsilon$-lexmin$F_{1}$ is presented, where $\imath$ denotes the generic iteration of the algorithm. Then, at each iteration $\imath$ of the algorithm, the optimal values of $F_{1}^{(\imath)}$ and $F_{2}^{(\imath)}$ associated with the $\imath$-th Pareto-optimal solution are added to the set $\Xi _{1}$.

Note that the first iteration of Algorithm 1, i.e. when $\imath =1$, corresponds to solving the following lexicographic problem:

Problem 4:

Find the state variables $p^\mathrm{{bus}}(k)$, $e^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, the control variables $v^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, and $w^\mathrm{{bus}}_{s}(k)$, $c^\mathrm{{bus}}_{s}(k)$ $\forall k \in \mathcal {K}$, $\forall s \in \mathcal {S}$, the auxiliaries variables $z^\mathrm{{bus}}_{i}(k)$, $y^\mathrm{{bus}}_{i}(k)$, $\lambda ^\mathrm{{bus}}_{i}(k)$, $\forall i \in \mathcal {I}$, $ \forall k \in \mathcal {K}$, $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$, $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$, $ \forall s \in \mathcal {S}$, $\forall k \in \mathcal {K}$, and $\zeta ^\mathrm{{bus}, \mathrm{fin}}$, such that \begin{gather*} \rm lexmin\left\lbrace F_{1}, F_{2} \right\rbrace \tag{41}\\ \text{subject to } {(9)}\!-\!{(23)} \end{gather*} View SourceRight-click on figure for MathML and additional features.

Algorithm 1: Pseudocode for Method $\varepsilon$-lexmin$F_{1}$.

Initialize $\Xi _{1}=\emptyset$

Initialize $\imath =1$

Solve Problem 2 with $\varepsilon _{F_{2}}=\infty$ (unbounded case)

Solve Problem 3

Save the vector of optimal values $\mathbf {z}^{*,1}_{1}=[F_{1}^{(1)}, F_{2}^{(1)}]$ in $\Xi _{1}$

Fix $\imath =2$

while Problem 2 and 3 are feasible $\wedge$ $\varepsilon _{F_{2}}\geq 0$ do Solve Problem 2 with $\varepsilon _{F_{2}}=F_{2}^{(\imath -1)}-\Delta _{F_{2}}$

Solve Problem 3

Save the vector of optimal values $\mathbf {z}^{*,\imath }_{1}=[F_{1}^{(\imath)}, F_{2}^{(\imath)}]$ in $\Xi _{1}$

Fix $\imath =\imath +1$

end while

Algorithm 2: Pseudocode for Method $\varepsilon$-lexmin$F_{2}$.

Initialize $\Xi _{2}=\emptyset$

Initialize $\imath =1$

Solve Problem 5 with $\varepsilon _{F_{1}}=\infty$ (unbounded case)

Solve Problem 6

Save the vector of optimal values $\mathbf {z}^{*,1}_{2}=[F_{1}^{(1)}, F_{2}^{(1)}]$ in $\Xi _{2}$

Fix $\imath =2$

while Problem 5 and 6 are feasible $\wedge$ $\varepsilon _{F_{1}}\geq 0$ do Solve Problem 5 with $\varepsilon _{F_{1}}=F_{1}^{(\imath -1)}-\Delta _{F_{1}}$

Solve Problem 6

Save the vector of optimal values $\mathbf {z}^{*,\imath }_{2}=[F_{1}^{(\imath)}, F_{2}^{(\imath)}]$ in $\Xi _{2}$

Fix $\imath =\imath +1$

end while

The application of Method $\varepsilon$-lexmin$F_{2}$ is analogous and is based on the iterative solution of the following single-objective problems:

Problem 5:

Find the state variables $p^\mathrm{{bus}}(k)$, $e^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, the control variables $v^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, and $w^\mathrm{{bus}}_{s}(k)$, $c^\mathrm{{bus}}_{s}(k)$ $\forall k \in \mathcal {K}$, $\forall s \in \mathcal {S}$, the auxiliaries variables $z^\mathrm{{bus}}_{i}(k)$, $y^\mathrm{{bus}}_{i}(k)$, $\lambda ^\mathrm{{bus}}_{i}(k)$, $\forall i \in \mathcal {I}$, $ \forall k \in \mathcal {K}$, $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$, $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$, $ \forall s \in \mathcal {S}$, $\forall k \in \mathcal {K}$, and $\zeta ^\mathrm{{bus}, \mathrm{fin}}$, such that \begin{gather*} \min \; F_{2} \tag{42}\\ \text{subject to } {(9)}\!-\!{(23)} \text{ and}\\ F_{1}\leq \varepsilon _{F_{1}} \tag{43} \end{gather*} View SourceRight-click on figure for MathML and additional features.

Problem 6:

Find the state variables $p^\mathrm{{bus}}(k)$, $e^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, the control variables $v^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, and $w^\mathrm{{bus}}_{s}(k)$, $c^\mathrm{{bus}}_{s}(k)$ $\forall k \in \mathcal {K}$, $\forall s \in \mathcal {S}$, the auxiliaries variables $z^\mathrm{{bus}}_{i}(k)$, $y^\mathrm{{bus}}_{i}(k)$, $\lambda ^\mathrm{{bus}}_{i}(k)$, $\forall i \in \mathcal {I}$, $ \forall k \in \mathcal {K}$, $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$, $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$, $ \forall s \in \mathcal {S}$, $\forall k \in \mathcal {K}$, and $\zeta ^\mathrm{{bus}, \mathrm{fin}}$, such that \begin{gather*} \min \; {F_{1}} \tag{44}\\ \text{subject to } {(9)}\!-\!{(23)} \text{ and}\\ F_{2}= \bar{F_{2}} \tag{45} \end{gather*} View SourceRight-click on figure for MathML and additional features.where $\bar{F_{2}}$ is the optimal value of objective $F_{2}$ found by solving Problem 5. Thus, as already described for Method $\varepsilon$-lexmin$F_{1}$, the application of Method $\varepsilon$-lexmin$F_{2}$ consists in iteratively finding Pareto-optimal solutions of Problem 1, by solving at each iteration Problems 5 and 6 and by progressively reducing the bound $\varepsilon _{F_{1}} \geq 0$ with a step-width equal to $\Delta _{F_{1}}$. The pseudocode for Method $\varepsilon$-lexmin$F_{2}$ is reported in Algorithm 2.

Note again that, even for this method, the first iteration of Algorithm 2 corresponds to solving the following lexicographic problem:

Problem 7:

Find the state variables $p^\mathrm{{bus}}(k)$, $e^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, the control variables $v^\mathrm{{bus}}(k)$, $\forall k \in \mathcal {K}$, and $w^\mathrm{{bus}}_{s}(k)$, $c^\mathrm{{bus}}_{s}(k)$ $\forall k \in \mathcal {K}$, $\forall s \in \mathcal {S}$, the auxiliaries variables $z^\mathrm{{bus}}_{i}(k)$, $y^\mathrm{{bus}}_{i}(k)$, $\lambda ^\mathrm{{bus}}_{i}(k)$, $\forall i \in \mathcal {I}$, $ \forall k \in \mathcal {K}$, $\gamma ^\mathrm{{bus}, \mathrm{arr}}_{s}(k)$, $\gamma ^\mathrm{{bus}, \mathrm{dep}}_{s}(k)$, $ \forall s \in \mathcal {S}$, $\forall k \in \mathcal {K}$, and $\zeta ^\mathrm{{bus}, \mathrm{fin}}$, such that \begin{gather*} \rm lexmin\left\lbrace F_{2}, F_{1} \right\rbrace \tag{46}\\ \text{subject to }{(9)}\!-\!{(23)} \end{gather*} View SourceRight-click on figure for MathML and additional features.

It is possible to make an important remark regarding the described multi-objective methods.

Remark 1:

Method $\varepsilon$-lexmin$F_{1}$ and Method $\varepsilon$-lexmin$F_{2}$ guarantee to find Pareto-optimal solutions (see [32]), but the number of Pareto-optimal vectors in $\Xi _{1}$ and $\Xi _{2}$ depends on the method applied and on the choice of the parameters $\Delta _{F_{1}}$ and $\Delta _{F_{2}}$.

It is worth noting that the values assumed by the parameters $\Delta _{F_{1}}$ and $\Delta _{F_{2}}$ strongly depend on the numerical magnitude of the associated objective function. These parameters can be defined in an iterative way on the basis of the maximum value assumed by the corresponding objective function. Thus, the value of these parameters can be determined from an initial tentative value that is progressively reduced until no increase in the number of the Pareto-optimal solutions is observed.

B. Numerical Analysis

In this section, a numerical application of the methods introduced earlier is proposed to find the Pareto-optimal solutions related to a case study inspired by an intercity bus line located in Italy. The interurban bus line under investigation connects Savona to Finalborgo for a route of 27 kilometers. The line includes eight stops, five of which (including the terminus) are equipped with flash-charging infrastructure (see Table 2). In this analysis, two bus rides are considered, which, being operated at two different times of the day, are affected by different traffic conditions. The first bus route, named Ride A, departs from Savona at 7:13 a.m. and faces the commuter rush hour, while the second bus ride, named Ride B, departs at 2:35 p.m. and faces a route under free flow traffic conditions. The timetable of both rides is shown in Table 3.

TABLE 2 Bus line and features of stops.
Table 2- Bus line and features of stops.
TABLE 3 Timetable of Ride A and Ride B.
Table 3- Timetable of Ride A and Ride B.

Different initial conditions have been considered for each bus ride regarding the initial energy stored in the bus battery and the minutes of delay on departure from the Savona stop. The combination of these initial conditions resulted in eight scenarios for each ride, as shown in Tables 4 and 5.

TABLE 4 Scenarios related to Ride A.
Table 4- Scenarios related to Ride A.
TABLE 5 Scenarios related to Ride B.
Table 5- Scenarios related to Ride B.

For all the scenarios the time step $\Delta _\mathrm{T}$ is equal to 1 minute, while the reference values $\bar{w}_{s}(k)$ of the objective $F_{1}$ have been set according to the timetables given in Table 3. The weights $\alpha _{s}(k)$ have been chosen to discourage delayed departures more than early arrivals at stops and to severely discourage noncompliance with the timetable. As for the goal $F_{2}$, the desired final energy value $\bar{e}^\mathrm{{bus},\rm fin}$ has been set equal to 200 [kWh]. Other parameters common to all scenarios are given in Table 8.

TABLE 6 Analysis of the pareto-optimal solutions found for the scenarios related to Ride A.
Table 6- Analysis of the pareto-optimal solutions found for the scenarios related to Ride A.
TABLE 7 Analysis of the pareto-optimal solutions found for the scenarios related to Ride B.
Table 7- Analysis of the pareto-optimal solutions found for the scenarios related to Ride B.
TABLE 8 Parameters of Problem 1.
Table 8- Parameters of Problem 1.

The two multi-objective methods presented above have been applied to these sixteen scenarios using different values of the parameters $\Delta _{F_{2}}$ (in Algorithm 1) and $\Delta _{F_{1}}$ (in Algorithm 2). This section only reports the results obtained with $\Delta _{F_{2}}=0.5$ and $\Delta _{F_{1}}=0.05$. Note that with these parameters the same sets $\Xi _{1}$ and $\Xi _{2}$ have been obtained with the two methods. These methods have also been tested with smaller values of $\Delta _{F_{2}}$ and $\Delta _{F_{1}}$, but without obtaining additional Pareto-optimal solutions.

The numerical results discussed in this section have been obtained by solving the optimization problems in Algorithm 1 and Algorithm 2 in Matlab using YALMIP [34] and adopting Gurobi 11 as solver. The main characteristics of sets $\Xi _{1}$ and $\Xi _{2}$ are reported in Tables 6 and 7.

From the analysis of the results given in Tables 6 and 7, and, in particular, by looking at the last two columns showing the extreme solutions of the Pareto front, it is possible to state that the objectives $F_{1}$ and $F_{2}$ are in conflict in all the scenarios analyzed, as discussed in [26]. Another interesting aspect to consider concerns the number of Pareto-optimal solutions found for each scenario, shown in the first two columns of Tables 6 and 7. Although this analysis has been conducted on a limited number of scenarios, it can be argued that the number of points found in each Pareto front is conditioned by several aspects:

  • starting the ride with an initial energy level that is very low;

  • starting the ride with some delay;

  • finding unfavorable traffic conditions.

The most critical scenarios are those in which the bus starts the ride with a very low initial energy level (Scenarios A.1, A.5, B.1 and B.5). Indeed, in Scenarios A.1 (peak-hour scenario) and B.1 (uncongested scenario), where the bus has an initial energy level close to the minimum allowed, the number of points found in the Pareto front is two. In cases in which, in addition to a very low initial energy level, there is also an initial delay (Scenarios A.5 and B.5), either no feasible solutions have been found (Scenario A.5) or only one point in the Pareto front has been obtained (Scenario B.5). Other scenarios for which a limited number of Pareto-optimal solutions have been found are those corresponding to: Scenarios B.6-B.8 (scenarios without traffic congestion but with initial delay on the ride), Scenarios A.2-A.4 (scenarios with traffic congestion) and A.6-A.8 (scenarios with congestion and initial delay). This is because, under these conditions, the constraints ensuring a minimum level of energy stored in the bus battery and the constraints related to provide an adequate public transport service lead to a limited number of feasible solutions and consequently also to a limited number of points in the Pareto front. Note that, for the scenarios in which only two points have been found, the values of the objective functions are exactly those obtained by solving the lexicographic problems in which the priority is given alternately to the two objectives, namely solving Problem 4 and Problem 7, respectively.

On the other hand, in Scenarios B.2-B.4, characterized by free-flow traffic conditions, the absence of initial delay and an initial energy level that is not critical, the Pareto front is characterized by more than two points.

Overall, the results obtained from these sixteen scenarios suggest some remarks. First of all, it is important to note that there are some sets of critical conditions, given by the combination of the initial states of the bus (e.g., initial state of charge and initial delay) and traffic conditions on the line, such that Problem 1 has no feasible solutions. The definition of these critical conditions will be the subject of future works, while in this paper we focus on defining a control scheme aimed to optimize the bus performance in all the other cases.

Furthermore, it is worth noting that the traffic conditions encountered along the bus line severely affect the capability of the bus to meet the objectives, both in terms of timetable compliance and energy consumption, since the longer the time spent by the bus on the line is, the greater its energy consumption becomes.

SECTION V.

the Pareto-Optimal Event-Based Control Scheme

Inspired by the analysis realized in Section IV, in this section we propose an event-based control scheme, whose general structure is shown in Fig. 1. This control scheme is founded on the solution of Problem 1 in which the choice of the priority order of one objective over the other is made on the basis of the occurrence of specific events. These events are given by the simultaneous occurrence of some conditions concerning the state of the bus and the traffic conditions on the bus line.

Figure 1. - The proposed control scheme.
Figure 1.

The proposed control scheme.

More in detail, each time the bus is at a stop, the traffic prediction model (see Section II) is run, and some state and scenario conditions are verified; these conditions concern:

  • the predicted traffic speed on the bus line (scenario-conditions);

  • the expected departure time of the bus at the stop (state-conditions);

  • the state of charge of the bus battery (state-conditions).

On the basis of the conditions that are verified, an event is identified and a lexicographic optimal control problem is solved, which reflects a specific decision on the priority to be assigned to the objectives and thus the Pareto-optimal solution to be applied in real time. This procedure is applied from the stop at which the ride begins, i.e. $s=0$, until the stop preceding the terminus, i.e. $s=S-1$, by solving a specific optimal control problem with the aim of finding the speed, the dwell and charging times that the bus should actuate to ensure the adequate execution of the transport service. Note that, at each stop $s \in \mathcal {\bar{S}}\setminus \lbrace S\rbrace$, such a problem is solved over the entire time horizon required for the bus to reach the terminus, then reducing the problem size with the bus moving towards the terminus.

A. Scenario and State Conditions

Let us denote with $\tilde{k}_{s}$, $\forall s \in \mathcal {\bar{S}}\setminus \lbrace S\rbrace$, the time step at which the bus leaves stop $s$. If $s=0$, $\tilde{k}_{0}$ represents the time step corresponding to the start of the bus ride; when the bus is on time, $\tilde{k}_{0}$ is set equal to 0, otherwise $\tilde{k}_{0}$ represents the initial delay of the bus. For the other stops $s\in \mathcal {\bar{S}}\setminus \lbrace S\rbrace$, $\tilde{k}_{s}$ represents the effective time step of departure from stop $s$.

Let us also denote with $\bar{v}^\mathrm{traffic}_{s+1}(\tilde{k}_{s}|\tilde{k}_{s}+T^\mathrm{t}_{s+1})$ the average traffic speed predicted on the bus line at time step $\tilde{k}_{s}$ and over the time interval $[\tilde{k}_{s}, \tilde{k}_{s}+T^\mathrm{t}_{s+1}]$. This speed is given by \begin{align*} &\bar{v}^\mathrm{traffic}_{s+1}\left(\tilde{k}_{s}|\tilde{k}_{s}+T^\mathrm{t}_{s+1}\right) \\ &\quad =\frac{1}{T^\mathrm{t}_{s+1}\cdot |\mathcal {I}_{s+1}|}\sum _{i\in \mathcal {I}_{s+1}}\sum _{k=\tilde{k}_{s}}^{\tilde{k}_{s}+T^\mathrm{t}_{s+1}} v_{i}^\mathrm{traffic}(k) \tag{47} \end{align*} View SourceRight-click on figure for MathML and additional features.In addition, threshold values on the initial stored energy in the bus battery, i.e. $\bar{e}_{s}(e^\mathrm{{bus}}(0))$, are defined for each stop $s \in \mathcal {\bar{S}}$ in order to verify if the desired final energy level $\bar{e}^\mathrm{{bus}, \mathrm{fin}}$ can be reached. These threshold values are obtained considering complete adherence to the timetable and based on the state equation (10) referred to the energy stored in the bus battery, as follows \begin{align*} \bar{e}_{s}\left(e^\mathrm{{bus}}(0)\right)=& e^\mathrm{{bus}}(0) - \sum _{r\in \mathcal {S}:r \leq s}\bigl [ \Pi _{s}\delta + \Delta _\mathrm{T} \left(T^\mathrm{t}_{r}+T^\mathrm{w}_{r}\right)\beta \bigr ] \\ & +\sum _{r\in \mathcal {S}:r \leq s,\eta _{r}=1}E^{+}_{r} \qquad \forall s \in \mathcal {S} \tag{48} \end{align*} View SourceRight-click on figure for MathML and additional features.where $E^{+}_{s}$ is the energy charged at stop $s$ equipped with flash charging infrastructure. This charged energy is calculated by considering that the bus meets the timetable and such energy amount is divided equally among all charging stations such that the following equation holds \begin{align*} \bar{e}^\mathrm{fin} -\biggl [ e^\mathrm{{bus}}(0) - \sum _{s\in \mathcal {S}}\bigl [\Pi _{s}\delta +\Delta _\mathrm{T} \left(T^\mathrm{t}_{s}+T^\mathrm{w}_{s}\right)\beta \bigr ] \\ +\sum _{s\in \mathcal {S}:\eta _{s}=1}E^{+}_{s}\biggr ] = 0 \quad \tag{49} \end{align*} View SourceRight-click on figure for MathML and additional features.

a) Scenario-conditions on the predicted traffic speed on the bus line

These scenario-conditions are dedicated to assess whether the bus may find congestion along its route. Therefore, considering that $\bar{v}_{s+1}$ is the speed that the bus should maintain between $s$ and $s+1$ to meet the timetable, the following conditions are defined

  1. $\bar{v}^\mathrm{traffic}_{s+1}(\tilde{k}_{s}|\tilde{k}_{s}+T^\mathrm{t}_{s+1})\geq \bar{v}_{s+1}$ meaning that the bus should not find slowdowns on the route between $s$ and $s+1$;

  2. $\bar{v}^\mathrm{traffic}_{s+1}(\tilde{k}_{s}|\tilde{k}_{s}+T^\mathrm{t}_{s+1})< \bar{v}_{s+1}$ meaning that the bus might be slowed down in the route between $s$ and $s+1$.

  3. $\bar{v}_{s+1} - \bar{v}^\mathrm{traffic}_{s+1}(\tilde{k}_{s}|\tilde{k}_{s}+T^\mathrm{t}_{s+1}) \leq \Delta _{v}$ meaning that the expected speed reduction on the route between $s$ and $s+1$ does not exceed a speed reduction threshold value $\Delta _{v}$.

b) State-conditions on the expected departure time of the bus at the stop

These state-conditions compare the expected departure time from stop $s$, i.e. time step $\tilde{k}_{s}$, with the time step in which the bus has to leave stop $s$ according to the timetable, i.e. $k^\mathrm{d}_{s}$. The conditions are:

  1. $\tilde{k}_{s}\leq k^\mathrm{d}_{s}$ meaning that the bus travels on time;

  2. $\tilde{k}_{s}> k^\mathrm{d}_{s}$ meaning that the bus is late;

  3. $\tilde{k}_{s} - k^\mathrm{d}_{s} \leq d_{s}$ meaning that the cumulated delay at stop $s$ does not exceed the maximum acceptable delay $d_{s}$.

c) State-conditions on the state of charge of the bus battery

Some conditions concerning the state of charge of the bus battery must be verified as well. These conditions are both related with the minimum level of energy in the battery and with the energy threshold values introduced previously.

Let us start with the conditions that refer to the minimum energy level required to perform the transport service. Specifically, two different state-conditions are defined based on the expected traffic speed: one for the case in which no slowdowns are foreseen (i.e. when condition (V1) is verified) and one for the case in which the average speed on the route is expected to be lower than the one required to meet the bus timetable (i.e. when condition (V2) is verified). This distinction is due to the fact that, in case of congestion, the time taken to reach the subsequent stop, calculated on the basis of the average traffic speed given by (47), is greater than the one required by the timetable causing higher energy consumption. Therefore, the state-conditions to be verified at each stop $s\in \mathcal {\bar{S}} \setminus {S}$ are:

  1. \begin{align*} e^\mathrm{min} \leq e_{s}(\tilde{k}_{s})- \sum _{r\in \mathcal {S}:s< r\leq \bar{s}} \biggl [ \Pi _{r}\delta + \Delta _\mathrm{T}\cdot T^\mathrm{t}_{r}\beta \biggr ] \\ - \sum _{r\in \mathcal {S}:s< r< \bar{s}}\Delta _\mathrm{T}\cdot T^\mathrm{w}_{r}\beta \leq e^\mathrm{{bus}, \rm min}+\Delta ^{e}_{s} \end{align*} View SourceRight-click on figure for MathML and additional features.which must be verified if condition (V1) is satisfied;

  2. \begin{align*} & e^\mathrm{min} \leq e_{s}(\tilde{k}_{s})- \sum _{r\in \mathcal {S}:s< r\leq \bar{s}} \biggl [ \Pi _{r}\delta \\ &\quad + \Delta _\mathrm{T}\cdot \bigg \lceil \frac{\Pi _{r}}{\bar{v}^\mathrm{traffic}_{r}\left(\tilde{k}_{s}|\tilde{k}_{s}+T^\mathrm{t}_{r}\right)\Delta _\mathrm{T}}\bigg \rceil \beta \biggr ] \\ &\quad - \sum _{r\in \mathcal {S}:s< r< \bar{s}} \Delta _\mathrm{T}\cdot T^\mathrm{w}_{r}\beta \leq e^\mathrm{{bus}, \rm min}+\Delta ^{e, \rm c}_{s} \end{align*} View SourceRight-click on figure for MathML and additional features.which must be verified if condition (V2) is satisfied.

In (E1) and (E2) $\bar{s}$ indicates the first stop equipped with flash charging infrastructure after stop $s$, while $\Delta ^{e}_{s}$ and $\Delta ^{e, c}_{s}$ are safety thresholds on the minimum energy stored in the bus battery in the two cases. These thresholds are computed for each stop $s$ considering the average energy required to reach the first charging station $\bar{s}$. The value of $\Delta ^{e, c}_{s}$ is increased with respect to $\Delta ^{e}_{s}$ to account for the higher consumption during congestion. Note that if the energy level is lower than the required minimum energy level, Problem 1 does not have a feasible solution; however, it is possible to determine conditions on the initial energy of the bus such that constraints (23) are not violated. The determination of these conditions will be the subject of future works.

Other state-conditions are relevant to the energy thresholds that must be reached at each stop to achieve the desired final energy level:

  1. $e^\mathrm{{bus}}(\tilde{k}_{s})> \bar{e}_{s}(e^\mathrm{{bus}}(0))$

  2. $e^\mathrm{{bus}}(\tilde{k}_{s})< \bar{e}_{s}(e^\mathrm{{bus}}(0))$

  3. $e^\mathrm{{bus}}(\tilde{k}_{s})= \bar{e}_{s}(e^\mathrm{{bus}}(0))$

Note that the energy threshold values expressed by (48) and used in conditions (E3)–(E5) depend on the initial state of charge of the bus and should be calculated as soon as the bus is ready to start its ride from $s=0$.

B. Control Algorithm

The control algorithm proposed in this paper is run every time the bus is waiting at a stop $s \in \mathcal {\bar{S}}\setminus {S}$. At each of these stops, the order of priority to be assigned to objectives $F_{1}$ and $F_{2}$ is defined on the basis of the occurrence of an event given by the simultaneous verification of both scenario and state-conditions. Then an appropriate optimal control problem is solved, defined on the set of time steps $\mathcal {K}(\tilde{k}_{s})=\lbrace k: k=\tilde{k}_{s}, \ldots, K-1 \rbrace$. This optimal control problem is solved to find the control variables associated with the bus, i.e. the speed and dwell/charging times, over the entire route that the bus still has to travel to reach the terminus. However, only the control actions until the next stop are implemented, i.e. the speed profile between stops $s$ and $s+1$ as well as the dwell and charging times at stop $s+1$. The main steps of the proposed control algorithm are illustrated below.

  • Step 0

    When the bus is ready to leave stop $s=0$, compute the energy threshold values $\bar{e}_{s}(e^\mathrm{{bus}}(0))$ for each stop $s \in \mathcal {S}$

  • Step 1

    Run the traffic prediction model as described in Section II and obtain the predicted traffic speed $v^\mathrm{traffic}_{i}(k)$ for each section $i\in \mathcal {I}$ and for each time step $k \in \mathcal {K}(\tilde{k}_{s})$

  • Step 2

    Compute the average traffic speed $\bar{v}^\mathrm{traffic}_{s+1}(\tilde{k}_{s}|\tilde{k}_{s}+T^\mathrm{t}_{s+1})$ along the route between $s$ and $s+1$

  • Step 3

    Identify the current event with the event selector

  • Step 4

    Solve the optimal control problem specific to the event resulting from Step 3, as detailed below, and apply the control actions $v^\mathrm{{bus}}(k)$, $w^\mathrm{{bus}}_{s+1}(k)$ and $c^\mathrm{{bus}}_{s+1}(k)$ for all $k = \tilde{k}_{s}, \ldots, \tilde{k}_{s+1}$. Increase $s$ and return to Step 1 until $s \ne S$

C. Event Selector

As already mentioned, the decision regarding the optimal control problem to be solved at each bus stop depends on which event is identified as the current one. The procedure for selecting events is illustrated below. Note that these events result from all possible combinations of the state and scenario conditions illustrated above, which, for the sake of simplicity, are grouped into four cases.

The verification of the state-conditions (T1), (T2) and the scenario-conditions (V1), (V2), leads to the following four different cases

  • Case 1: Conditions (T1) and (V1) are verified (no delay and no slowdowns)

  • Case 2: Conditions (T1) and (V2) are verified (no delay and slowdowns)

  • Case 3: Conditions (T2) and (V1) are verified (delay and no slowdowns)

  • Case 4: Conditions (T2) and (V2) are verified (delay and slowdowns)

The details of Case 1 - Case 4 and their associated sets of events are given hereinafter

1) Case 1

This case gathers all the events that occur when conditions (T1) and (V1) are verified jointly, i.e. when there is no cumulated delay and there are no slowdowns. Then, let us denote with $\mathcal {C}_{1}= \lbrace \text{C1.a, C1.b, C1.c, C1.d}\rbrace$, the set of events associated with Case 1 as described below:

  1. It occurs when conditions (T1), (V1) and (E1) (and consequently (E4)) are jointly verified. For this event, give priority to $F_{2}$ by solving Problem 7

  1. It occurs when conditions (T1), (V1) and (E3) are met. For this event, give priority to $F_{1}$ by solving Problem 4

  1. It occurs when conditions (T1), (V1) and (E4) are satisfied, but condition (E2) is not verified. For this event, give priority to $F_{2}$ by solving Problem 7

  1. It occurs when conditions (T1), (V1) and (E5) are verified. For this event, find the control variables by applying Problems 2-​3 (or Problems 5-​6) by properly choosing the parameter $\Delta _{F_{2}}$ (or $\Delta _{F_{1}}$) as shown in [35].

Note that, when $s=0$ conditions (E3)-(E5) cannot be checked. Therefore, if at the beginning of the ride the conditions (T1), (V1) are simultaneously satisfied and condition (E1) is not met, the multi-objective control problem as indicated in C1.d must be solved.

2) Case 2

This case collects all the events that take place when conditions (T1) and (V2) are both verified, i.e. the case without cumulated delay and with slowdowns. Therefore, we denote with $\mathcal {C}_{2}= \lbrace \text{C2.a, C2.b, C2.c}\rbrace$, the set of events associated with Case 2 which are defined as follows:

  1. It occurs when conditions (T1), (V2) and (E2) (and consequently (E4)) are satisfied. For this event, give priority to $F_{2}$ by solving Problem 7

  1. It occurs when conditions (T1), (V2), (V3) and (E4) are simultaneously fulfilled, but condition (E2) is not verified. For this event, give priority to $F_{2}$ by solving Problem 7

  1. It occurs when conditions (T1), (V2) and any of conditions (E3)-(E5) are met, but condition (E2) is not verified. For this event, give priority to $F_{1}$ by solving Problem 4.

Note that, if in case $s=0$, condition (E2) is not met, solve the multi-objective control problem as indicated in C2.c.

3) Case 3

This case brings together all the events that involve the joint verification of conditions (T2) and (V1), namely when there is cumulated delay and there are no slowdowns. For Case 3, we introduce the set of events $\mathcal {C}_{3}= \lbrace \text{C3.a, C3.b, C3.c}\rbrace$, that are described as follows:

  1. It occurs when conditions (T2), (V1) and (E1) (and consequently (E4)) are satisfied. For this event, give priority to $F_{2}$ by solving Problem 7

  1. It occurs when conditions (T2), (V1), (T3) and (E4) are met, but condition (E2) is not verified. For this event, give priority to $F_{2}$ by solving Problem 7

  1. It occurs when conditions (T2), (V1), and any of conditions (E3)-(E5) are fulfilled, but condition (E2) is not met. For this event, give priority to $F_{1}$ by solving Problem 4.

If, in case $s=0$, and condition (E1) is not met, solve the multi-objective control problem as indicated in C3.c.

4) Case 4

This case collects all events that correspond to the simultaneous activation of conditions (T2) and (V2), i.e. when both cumulated delay and slowdowns are present. Thus, let us denote with $\mathcal {C}_{4}= \lbrace \text{C4.a, C4.b, C4.c}\rbrace$, the set of events associated with Case 4, which are defined as follows:

  1. It occurs when conditions (T2), (V2), and (E2) (and consequently (E4)) are verified. For this event, give priority to $F_{2}$ by solving Problem 7

  1. It occurs when conditions (T2), (V2), (T3), (V3) and (E4) are verified, but condition (E2) is not met. For this event give priority to $F_{2}$ by solving Problem 7

  1. It occurs when conditions (T2), (V2), and any of conditions (E3)-(E5) are fulfilled, but condition (E2) is not met and conditions (T3), (V3) are not jointly satisfied. For this event, give priority to $F_{1}$ by solving Problem 4.

If in case $s=0$ condition (E2) is not met, solve the multi-objective problem as indicated in C4.c.

D. Simulation Results

In this section, the proposed Pareto-optimal event-based control algorithm has been tested on Ride A described in Section III-B. This ride is performed during the rush hour, for which we considered a 3-minute initial delay and an initial state of charge $e^\mathrm{{bus}}(0)$ equal to 160 [kWh] that corresponds to a state of charge (SOC) of about 53%, while the desired SOC is about 66%. Once the bus reaches the end of the line, it must wait 10 minutes before continuing to the next ride; in addition, the maximum time for which the bus can remain in charge at the terminus is 5 minutes.

The parameters used for checking the state-conditions are given in Table 9. For each $s\in \mathcal {S}$, $T^\mathrm{t}_{s}$, $T^\mathrm{w}_{s}$ and $\bar{v}_{s}$ are derived from the timetable, $\bar{e}_{s}(e^\mathrm{{bus}}(0))$ is calculated with (48), and $d_{s}$ is set to limit the cumulated delay at the terminus. Moreover, the parameter $\Delta _{v}$ is set equal to 5 [km/h].

TABLE 9 Scenario and state-conditions parameters.
Table 9- Scenario and state-conditions parameters.

The solutions obtained with the proposed control scheme have been compared with those obtained by solving two single-objective problems, in which only $F_{1}$ and only $F_{2}$ is minimized, respectively, and with the solutions obtained via the application of two lexicographic problems in which the priority order is fixed, i.e. with the priority order $\lbrace F_{1},F_{2}\rbrace$ and $\lbrace F_{2},F_{1}\rbrace$, respectively. Note that these four problems are solved once at the beginning of the ride and considering the entire duration of the bus trip.

The comparison has been performed by computing the following indicators: \begin{align*} D_{S} =& \Delta _\mathrm{T} \bigl (\tilde{k}^\mathrm{a}_{S} - k^\mathrm{a}_{S}\bigr) \tag{50}\\ \Delta _{SOC} =& SOC(K) - \overline{SOC} \tag{51} \end{align*} View SourceRight-click on figure for MathML and additional features.where the index in (50) gives the cumulated delay $D_{S}$ at the terminus, being $\tilde{k}^\mathrm{a}_{S}$ the actual time step at which the bus arrives there, while (51) defines the difference $\Delta _{SOC}$ between the state of charge $SOC(K)$ of the bus at the end of the ride and the state of charge $\overline{SOC}$ corresponding to the final desired energy level.

According to the control algorithm previously introduced, at each stop $s$, with $s \in \mathcal {\bar{S}}\setminus \lbrace S\rbrace$, the prediction of traffic conditions along the bus line is performed. Fig. 2 depicts the profile, in time and space, of the average traffic speed predicted at $\tilde{k}_{0}$, showing that the bus finds slowdowns starting from the road section between Spotorno and Noli to the final destination. In this work, in order to compare the results obtained from the application of the proposed control scheme with those achieved by the resolution of the other four problems, in all runs of the event-based control algorithm the same traffic scenario shown in Fig. 2 has been used. Note that, instead, in a real application the traffic prediction would be re-run at each stop, being initialized with the actual traffic state measured at $\tilde{k}_{s}$, leading to better results than those described below.

Figure 2. - Traffic speed over the Savona-Finalborgo bus line predicted at $\tilde{k}_{0}$.
Figure 2.

Traffic speed over the Savona-Finalborgo bus line predicted at $\tilde{k}_{0}$.

As it is shown in Table 10, by starting the ride with a three-minute delay, the control algorithm initially selects the event C3.c and chooses $F_{1}$ as the priority objective. In this way, the bus is able to recover the delay at Vado Ligure stop. At Vado Ligure stop and at the next one, the algorithm identifies event C1.c, i.e. the traffic forecasts do not predict slowdowns and the level of energy stored in the bus battery is lower than the scheduled one. Therefore, in the problems solved at these stops the primary objective is $F_{2}$. On the other hand, slowdowns are predicted between the stops from Spotorno to Finalpia. For the first two stops, event C2.c is selected, as the bus does not accumulate delay, while at Varigotti stop, event C4.c is identified, corresponding to presence of slowdowns and delay, and finally at Finalpia stop, event C3.c is selected, meaning presence of only delay. For these four stops, the control actions are computed by setting $F_{1}$ as the primary objective. Finally, at Finalmarina stop, the bus run does not exceed the tolerance threshold on the delay, and since no slowdowns are expected, event C3.b is selected. Consequently, the problem to be solved considers $F_{2}$ as primary objective. Table 10 also shows the computational time resulting from the application of the proposed control algorithm by using a standard laptop. In more detail, the last column of Table 10 shows the total time required to solve the optimal control problem at each stop and, in brackets, the details of the computational time required to solve the two single problems that constitute the lexicographic approach is reported. Analyzing these computational times, it can be stated that the control algorithm is suitable for on-line applications, as the highest computational effort is 28 seconds and this is required at the first execution of the algorithm, i.e., when the optimal control algorithm considers the entire bus journey, which can also be executed off-line. Furthermore, it is possible to note that the computation time is significantly reduced with each run of the algorithm, as the size of the control problem to be solved decreases.

TABLE 10 Summary of the application of the proposed pareto-optimal event-based control algorithm.
Table 10- Summary of the application of the proposed pareto-optimal event-based control algorithm.

The results obtained from the application of the proposed control algorithm are shown in Figures 3–​5. In particular, Fig. 3 shows the values of the control variables $w^\mathrm{{bus}}_{s}(k)$ (upper figure and green line) and $c^\mathrm{{bus}}_{s}(k)$ (lower figure and yellow line) obtained from the eight runs of the algorithm and compared with the reference values $\bar{w}_{s}(k)$ (dashed red line). Fig. 4 depicts the profile of the bus speed and position, and finally, Fig. 5 displays the profile of the state of charge during the bus run.

Figure 3. - Dwell time (green line) and charging time (yellow line) compared with reference value $\bar{w}_{s}(k)$ (red dashed line).
Figure 3.

Dwell time (green line) and charging time (yellow line) compared with reference value $\bar{w}_{s}(k)$ (red dashed line).

Figure 4. - Speed and position of the bus during the ride.
Figure 4.

Speed and position of the bus during the ride.

Figure 5. - State of charge of the bus during the ride (blue solid line) and desired state of charge (red dashed line).
Figure 5.

State of charge of the bus during the ride (blue solid line) and desired state of charge (red dashed line).

By applying the event-based control approach proposed in this paper, the state of charge at the terminus is about 51% (approximately 16% less than the desired one), while the cumulated delay at the terminus is 1 minute. Comparing this solution with the solutions obtained with the other methods (Table 11), it can be observed that the proposed controller provides an intermediate solution which better balances the two control objectives. Specifically, analyzing the results of the single-objective problems, it can be stated that the two objectives $F_{1}$ (resulting in zero delay and final SOC of about 42%, with a difference of 25% with the desired value) and $F_{2}$ (8 minutes of delay and final SOC of about 54%, with a difference of 13% with the desired value) are indeed in conflict, confirming the analysis on the Pareto front conducted earlier. In addition, the proposed control scheme also achieves less extreme results than those found through solving the problem with fixed priority $\lbrace F_{1},F_{2}\rbrace$ (resulting in zero delay and final SOC of about 50%, with a 17% difference from the desired value) and $\lbrace F_{2},F_{1}\rbrace$ (7 minutes of delay and final SOC of about 54%, with a 13% difference).

TABLE 11 Comparison of the performance indicators.
Table 11- Comparison of the performance indicators.
SECTION VI.

Conclusion and Future Works

In this paper station and inter-station control of electric and automated buses in an inter-city road line has been addressed, in order to find the optimal speed profile along the road, and the dwell/charging times at stops. The proposed control scheme is event-based, in that it identifies in real time the occurrence of a specific event, characterized by the joint fulfillment of a set of state and scenario conditions, and decides on the type of multi-objective control method to be applied to the system to find the most suitable solution. Specifically, the proposed control scheme includes two objectives to be optimized: one related to the minimization of the deviation from the bus timetable and the other referring to the final energy level stored in the bus battery. It is important to note that more than two objectives can be considered in the formulation of the optimization problem. However, it should be specified that, as the number of objectives increases, the complexity of the Pareto frontier analysis and the number of optimization problems to be solved in real time to determine the bus control actions increases. The applied methods, based on the lexicographic approach combined with the epsilon-constrained method, guarantee that the solutions found are Pareto-optimal. Different simulation tests based on real data have been presented and discussed in the paper, showing the good performance of the proposed control scheme. This work lays the basis for the definition of a multi-scale control strategy in which the control scheme proposed here represents the high-level control module that will be coupled with a low-level control module that takes into account the effective dynamics of the bus, the real energy consumption and the actual charging performance at the stop. This multi-scale control scheme will be extended in the future to consider the centralized case for controlling bus fleets. In the centralized case, additional constraints will be added to the multi-objective optimization problem to co-ordinate the presence of buses at the stops and to avoid bunching phenomena.

NOTE

Open Access funding provided by ‘Università degli Studi di Genova’ within the CRUI CARE Agreement

Usage
Select a Year
2025

View as

Total usage sinceSep 2024:202
051015202530JanFebMarAprMayJunJulAugSepOctNovDec28130000000000
Year Total:41
Data is updated monthly. Usage includes PDF downloads and HTML views.

References

References is not available for this document.