1. Introduction
With an ever-increasing interest in the electrification of vehicles in the push for green transportation, many organizations and companies have been looking to adopt a fleet of electric vehicles [
1]. This transition includes battery-electric buses (BEBs) [
2,
3]. In particular, agencies such as the Utah Transit Authority (UTA) have directed focus into replacing their fleets with BEBs. Alongside all the benefits that are associated with BEBs come new challenges that must be addressed prior to their integration into mainstream utilization. The energy storage capacity of BEBs is typically significantly less than their combustion counterparts while also having significantly longer refueling periods [
2,
4]. This is further complicated due to the care that must be taken in prolonging the lifespan of the battery [
5,
6,
7]. As another complication, BEB refueling is not a fixed cost (i.e., price per gallon multiplied by tank size). Utility companies, in addition to charging for the total energy consumed over a pay period, often charge a demand cost. The demand cost is based on the peak power drawn during the pay period and can significantly impact the overall monetary cost of maintaining the BEBs. To address these limitations, this work introduces a static scheduling framework for a fleet of BEBs that aims to minimize charging costs while considering other constraints pertinent for operation.
A host of strategies have been proposed to solve the BEB charger scheduling problem. Strategies vary in terms of their basic formulation, primarily using variations of the vehicle scheduling problem (VSP) which emphasize the generation of BEB routing schedules, but take little consideration as to how the BEBs are assigned to chargers [
8,
9,
10,
11,
12,
13,
14]. In [
15,
16], the work directly addresses the charger scheduling problem by creating a mixed integer linear program (MILP) that utilizes a network flow approach to generate static charging schedules given a schedule of BEB routes. Similarly, Ref. [
17] developed an MILP that generates a static charging schedule by utilizing a rectangle packing approach, referred to as the position allocation problem (PAP). Some works assume that BEBs always charge to full capacity each time they connect to a charger [
8,
9,
14,
18,
19]. Other works allow for partial charging using a linear battery charge model [
13,
16,
20,
21,
22] or utilize a higher-fidelity, nonlinear battery model [
8,
15,
23,
24,
25]. Some works consider only fast chargers during planning [
12,
14,
20,
21,
22,
26,
27,
28], while others assume that different types of chargers can exist in different locations [
11,
13].
When considering the utility rate schedules, two key elements must be considered: the consumption cost and the demand cost. Most approaches consider a consumption cost [
9,
10,
16,
18,
23,
24,
25,
26]. This is akin to the combustion engine fuel cost. Fewer works, however, consider the demand cost [
13,
16,
23,
24,
25]. The demand cost calculation requires a fine sampling of the power usage at any given time. Approaches that assume a full charge whenever the bus connects typically employ a coarse sampling of charger time periods and may not be well suited to demand cost calculations. Furthermore, the assumption of always using fast chargers is adverse to battery health [
6,
7,
18].
To accurately calculate the demand cost, an inherent trade-off exists between the low computation of a representative linear model and the high computation of a high-fidelity nonlinear model. A linear, proportional model is used in this work as they have been shown to be accurate below an 80% threshold [
2]. This is considered sufficient for this work as charging a battery nearly to capacity is detrimental to the health and can significantly reduce the total charge cycles a battery may undergo [
6,
7]. Thus, staying within the linear operating region is desirable for battery health.
The contributions of this work lie in the adaptation and enhancement of [
17] to develop a novel formulation by employing a simulated annealing (SA) framework that generates static charging schedules and considers (1) different types of chargers at the same location, (2) minimization of the consumption and demand utility costs, and (3) partial charging through a representative linear charge model. Particularly, this work addresses the gap in the literature by expanding the work of [
17] by reimplementing the MILP, utilizing a meta-heuristic approach and examining its performance while further considering demand cost. These contributions are demonstrated via simulation and compared to two other models: an implementation of the PAP for BEBs, denoted as BPAP, and what is known as the Qin-Modified technique.
The remainder of this paper is as follows.
Section 2 provides the problem statement associated with this work.
Section 3 provides a description of the input parameters and decision variables, then introduces the structure of the formulation. In
Section 4, the concept and theory of SA is introduced. In particular, the algorithms and methods utilized for the SA implementation for this work are discussed.
Section 5 combines the previous sections to introduce the particular pseudocode for the SA PAP. In
Section 6, an example problem is provided to demonstrate the capability of the work provided in this paper. The results are then presented and discussed.
2. Problem Description
Consider a fleet of BEBs scheduled to perform a set of prescribed routes on a given day. An individual BEB from said fleet begins and completes an individual route at the same station from which it also receives its charge. During each route, the BEB’s state of charge (SOC) is depleted by a certain amount. The charge supplied during its visit must be enough to sustain the BEB’s SOC at an appropriate level so that it may complete its next route. Provided there is a set of chargers at the station, the bus may be placed in any single queue to receive its charge. Let the term “arrival” describe the time at which a BEB reaches the station. Furthermore, let the term “visit” denote a BEB having arrived, awaited its predetermined time (whether it has received a charge or not), and departed from the station. Each BEB is allowed to have multiple visits throughout the working day.
Because each bus may visit the station more than once, let the previously considered fleet contain BEBs that collectively visit a station times. At said station, let there exist a pool of charging queues from which a visiting BEB may be assigned. Upon arrival to the station, a bus is admitted to one of the queues for charging. Each queue represents a charger that supplies the bus with a charge at a particular rate or allows the bus to sit idle when no charging is required (i.e., a charge rate of zero). The set of possible queue indices is denoted as , where is the set of integers. It is assumed that charger has an associated charge rate, denoted as . Let the set of arrivals be written as , and let each BEB be prescribed an identification number from the set . As such, each visit can be represented by the tuple: , in which the elements within the tuple denote the visit index, , BEB identification number, , arrival time to the station, , departure time from the station, , time at which the BEB begins charging, , time at which the BEB ends charging, , the charger queue for the BEB to be placed into, , the SOC upon arrival, , and the index of the next visit for the currently visiting BEB, . The null element, ⌀, is used to specify when a BEB has no future visits. Let the set of visits be denoted as , where the visit is denoted is . Furthermore, let a particular item from the tuple for visit i be written as . For example, the arrival time for visit i is written as .
The amount of time a BEB is allowed to charge during visit
i is dictated by the scheduled arrival time and required departure time,
. Partial charging is allowed; however, the SOC may not exceed the BEB battery capacity,
, and the SOC is desired to stay above some minimum percentage of the battery capacity,
. The battery dynamics in this work are modeled as linear, and remain accurate up to about an SOC of 80% [
22]. Note that excessively charging the BEBs is undesirable due to battery health concerns, as at higher SOCs, overshoot becomes a concern and may also cause the battery to undergo deep cycles, which may accelerate battery degradation [
6,
7].
Each BEB arrival, except for the last arrival for each BEB, has a paired “route” that the BEB must perform after the visit. This route, as one would expect, causes the BEB to discharge by some certain amount. Each bus route is assumed to have a fixed discharge. Let the discharge of the route for visit i be denoted as . Note that the last visit for each BEB does not have an associated route, implying that there is no discharge after these particular visits, i.e., for all i corresponding to a final visit.
5. Optimization Algorithm
This section combines the generation algorithms and the optimization problem into a single algorithm (Algorithm 8). Generally, SA assumes that the generated candidate solutions are within the solution space of the problem,
, where
S is the solution space. In other words, the initialization and perturbations of a schedule must be verified to ensure that the generated schedule is in the solution space. Therefore, the objective function and constraints introduced in
Section 3.2 and
Section 3.3, respectively, must be employed to verify that the outputs of Algorithms 6 and 7 are in the feasible space,
S.
As previously stated, the generating functions directly influence the values of the assigned charge queue, charge initialization time, and charge completion time:
,
, and
, respectively. Having generated those values, the rest of the decision variables may be derived. Beginning with the packing constraints, Equations (
7a) and (
7b) are employed to enable and disable
and
and Equations (
7c) and (
7e) ensure the validity of the values. Equation (
7f) can be directly calculated and Equation (
7i) is fully defined.
Changing the focus over to the dynamic constraints, similarly to what was seen with the packing constraints, the battery dynamic constraints are also fully defined. Equation (
7g) is sequentially calculated after a given schedule has been created. Equation (
7h) is evaluated to ensure that the BEB is not overcharged. The penalty method implemented in
Section 3.2 is set in place to allow the SOC to go below the specified threshold,
, but to punish the solution for doing so. Thus, over time, the candidate solutions will be encouraged toward a solution that does not activate the penalty method (i.e., the solution is operationally feasible).
The implementation of the SA PAP, outlined in Algorithm 8, will now be discussed. The algorithm begins by creating a temperature schedule and creating an initial solution. The algorithm then iterates through the temperature schedule (outer loop). For each iteration of the outer loop, an inner loop is executed
times. During this inner loop, the solution is modified by a primitive generating function to create a candidate solution. The candidate solution is then compared with the active solution, and updated according to the acceptance criteria. These actions are performed until the cooling equation is exhausted.
Algorithm 8: Simulated annealing approach to the position allocation problem. |
|
7. Conclusions
This work developed an SA implementation of the BEB charge scheduling problem derived from the works of the position allocation problem [
17]. The model was designed to encourage the use of slow chargers for battery health, minimize the peak energy consumption, and minimize the total energy consumed. The problem description was provided along with the assumptions made about the structure of the BEB route schedule. The optimization problem was then introduced by describing the components of the objective function and outlining the constraints utilized to ensure that candidate solutions are in the solution space.
An example of the SA PAP algorithm was presented and compared against the BPAP, which acted as a baseline for the other schedule. Another threshold-based strategy called the Qin-Modified technique was also introduced as a means of comparing the schedules. The SA PAP was run utilizing two different neighborhood searching techniques named the “quick” and “heuristic” techniques, respectively. The quick SA’s objective was to randomly search a wide neighborhood while the heuristic technique was designed to incrementally search a neighborhood by randomly selecting a fast or slow charging queue and then stepping through the queues one at a time. The execution time compounds as the number of iterations in the cooling function increases as shown by the respective quick and heuristic execution times: 1532.8 s and 1916 s. The Qin-Modified strategy favored the use of fast chargers due to its inability to identify when demanding routes were on the horizon, whereas the other methods used fast charges sparingly. Particularly, the SA techniques favored higher number of slow chargers with longer charge durations in comparison to the BPAP.
Both of the SA techniques were unable to keep the SOC above the 25% SOC threshold, with SOC falling to 23.5% for the heuristic SA and 24.4% for the quick SA. Due to the minimum charge threshold being a soft constraint for the SA, the algorithm found other actions to be more favorable at the expense of moderately breaching the threshold. The Qin-Modified, on the other hand, had the SOC of one BEB fall to 0% SOC. The schedule that consumed the least amount of energy is the BPAP (4237.2 kWh) followed by the heuristic SA (4295.6 kWh). The difference between the two was about 8532.8 kWh. The quick SA energy consumption came in at a close third at 4428.7 kWh. Both the quick and SA techniques were able to significantly reduce the peak power demand, having peaks below 1200 kW. The BPAP and Qin both had peak power demands above 1800 kW. The best scoring schedule was the quick SA due to its significant reduction in demand cost, similar energy consumption as the heuristic SA and BPAP, and its small minimum SOC threshold deficit.
Future areas of interest are to introduce real-time capabilities to allow dynamic adaptation to the schedule. Furthermore, nonlinear battery dynamics are of interest to increase the fidelity of the charging model. In addition, methods to include uncertainty to the model, such as “fuzzifying” the initial and final charge times, are of interest to allow flexibility in the arrival and departure times.