A real-coded genetic algorithm is used to schedule the charging of an energy storage system (ESS), operated in tandem with renewable power by an electricity consumer who is subject to time-of-use pricing and a demand charge. Simulations based on load and generation profiles of typical residential customers show that an ESS scheduled by our algorithm can reduce electricity costs by approximately 17%, compared to a system without an ESS and by 8% compared to a scheduling algorithm based on net power.

1. Introduction

An energy storage system (ESS) is a system that is capable of absorbing energy, storing it for a period of time, and then returning it for use. In an electrical grid, an ESS can be used to match supply and demand. The ESS is charged when demand is low and discharged when demand is high. Thus, the overall energy efficiency of a system is improved, and the energy flow from the electrical grid connected to the system is stabilized. Reliability is a key issue in the effective use of renewable energy and in smart grids, and thus the demand for ESSs is increasing [1].

An ESS acts as a buffer between a generator and its load. Renewable energy sources often generate power during off-peak periods or when demand for energy is low. ESSs enable better integration of renewable energy sources into an electrical grid by (time-shifting) the generated power and smoothing out spikes in demand. Power producers can benefit from a more predictable generation requirement, which can improve revenue. Installing an ESS can enable industrial, commercial, or residential end-users to improve the quality and reliability of their power supply and to reduce their electricity costs and can act as a back-up power source [2, 3].

Dynamic pricing of electricity is being facilitated by new technologies such as smart meters. A form of dynamic pricing that is being adopted in many areas is known as time-of-use (TOU) pricing, in which electricity prices are set for a fixed period. Energy providers use TOU pricing to drive down demand at peak periods by using high prices to influence customers’ consumption rather than more invasive controls such as dynamic or passive demand response mechanisms, or even power cuts [4, 5]. Typically TOU prices do not change more than twice a year, but a TOU tariff is likely to have two or three price levels (e.g., “off-peak”, “mid-peak”, and “on-peak”) where the price is determined by the time of day. Customers can be expected to vary their usage in response to this price information and manage their energy costs by shifting their usage to a lower cost period. ESSs will play an important role in residential areas with a dynamic pricing policy. By storing energy during low off-peak price periods and using the stored energy when the price is high, consumers can avoid paying high rates.

In addition to charges based on usage, an electricity bill may include a demand charge, which is determined by the maximum energy capacity available to a customer, whether or not it is actually used. The demand charge is billed as a fixed rate that is calculated on a per kW basis. This charge is based on the premise that commercial customers and other large users should pay a share of the infrastructure costs associated with the maintenance of capacity [6]. We will consider both TOU pricing and demand charges [7].

Many problems related to the scheduling of the charging and discharging of an ESS have been studied recently [812]. Various optimization techniques can be applied to the operation of ESSs. The most frequently used method is dynamic programming, which was used by Maly and Kwan [13]. They tried to minimize electricity cost for an ESS with a given battery capacity, without unnecessarily reducing battery life. Van de Ven et al. [14] aimed to minimize the capital cost of an ESS subject to user demand and prices, as a Markov decision process, which can be solved using dynamic programming. Koutsopoulos et al. [15] addressed the optimal ESS control problem from the point of view of a utility operator and solved the off-line problem over a finite period by dynamic programming. Romaus et al. [16] investigated stochastic dynamic programming for energy management of a hybrid ESS for electric vehicles. They aimed to control the power flow to the ESS online, while taking into account the stochastic influences of traffic and the driver. Huang and Liu [17] applied adaptive dynamic programming to the management of a residential ESS, with an emphasis on domestic electricity storage systems. Their scheme was designed to learn during operation as the environment of the ESS changes unpredictably.

There have also been a number of studies using other scheduling methods. Youn and Cho [18] used linear programming to pursue optimal operation of an energy storage unit installed in a small power station. Hu et al. [19] used sequential quadratic programming to operate on ESS under real-time changes to the electricity price, so as to maximize profits. Nonlinear programming techniques were adopted by Rupanagunta et al. [20] to design an optimal controller for charge and discharge processes in ESSs, with the objective of minimizing the operating costs of the storage facility. Yoo et al. [21] used a Kalman filter to increase predictability in controlling the power flows between the components of an energy management system for a grid-connected residential photovoltaic (PV) system combined with an ESS under critical peak pricing. Lee [22] used multipass iteration particle swarm optimization to determine the operating schedule of an ESS for an industrial TOU-rate user who is also operating wind turbine generators. Gallo et al. [23] used a hybrid optimization technique to determine values of the battery parameters required for an ESS operated by a smart grid management system. Their method combines stochastic and deterministic elements within a computationally efficient algorithm.

In this paper we describe a real-coded genetic algorithm (RCGA) for scheduling ESS charging and discharging. Genetic algorithms (GAs) were used by Monteiro et al. [24] for short-term forecasting of the energy output of a PV plant. They applied data mining techniques to historical forecasts of weather variables. The GA was used to make spot forecasts of power output from PV plants. We use an RCGA to schedule ESS operations under TOU pricing with a demand charge, when a supply of renewable energy, wind or solar energy, is available.

The remainder of the paper is organized as follows. In Section 2 we describe the ESS scheduling problem under TOU pricing with a demand charge, when renewable electricity is available. In Section 3 we describe an RCGA that addresses this problem. In Section 4 we present the simulation results, and draw conclusions in Section 5.

2. ESS Scheduling Problem under TOU Pricing with a Demand Charge

The formulation of our problem is similar to that of Lee [22], but we aim to optimize a daily, rather than a monthly, bill. Other studies have dealt with optimization problems under TOU pricing. Cao et al. [25] proposed an intelligent method to control EV charging loads in response to TOU price in a regulated market. Lee and Chen [26] formulated the problem of determining the optimal contract capacities and optimal sizes of ESSs for customers using a TOU rate.

Notations/expressions in the appendix summarize the notation and some of the expressions used in this study. The load is the amount of energy used during time interval , and is the amount of energy generated over the same period. The residual energy in the battery at the end of interval is . We set the length of a time interval to one hour. The energy supplied to the battery during time interval is and the net energy drawn from the grid is . Thus, the cost of energy over the time interval is , where is the price set for that interval. The possibility of compensation tariff for feed-in electricity is not considered in this study. If such a tariff is high, scheduling will favor feeding electricity into the grid. However, the trend in smart grid pricing is to encourage residential users to conserve any electricity that they generate, so feed-in tariffs are likely to become very low or zero, which is what we assume. In this case, the total cost of energy over time intervals is , where is the indicator function. We use twenty-four hour data and set to .

The total cost of electricity is the sum of the energy charge and the demand charge, which is the product of the fixed rate and the peak demand, and can thus be written . The problem of minimizing the total cost of electricity can now be expressed as follows: where is the total battery capacity, is the battery discharge power, and is the battery charge power. The value of cannot exceed the battery capacity, and the net amount of energy flowing in or out of the battery should lie in the range .

3. Real-Coded Genetic Algorithm

GAs that are based on real number representation are called real-coded GAs (RCGAs) [27]. Real coding was first used in specific applications, such as chemometric problems and in using metaoperators to find the most appropriate parameters for a standard GA [27]. Subsequently, RCGAs have mainly been used in numerical optimization problems over continuous domains [2831].

In our RCGA, a population consisting of pairs are randomly selected from a population of , and crossover and mutation operators are applied to each pair to generate offspring. Both parents and offspring are ranked and the best become the next generation. We use a population of 100, and our RCGA terminates after 2,000 generations.

3.1. Encoding

Our RCGA is encoded using an array of real numbers. Our approach differs from a typical real encoding in that each gene has its own range of real values that are determined by the value of its left-sided gene . The following two constraints must be satisfied by each value of : Therefore must satisfy the following expression in :

3.2. Evaluation

The objective function for the problem is used as the evaluation function of the RCGA: . Because this is a minimization problem, solutions with smaller objective values are more likely to survive.

3.3. Initialization

Initially 100 solutions are generated, satisfying the feasibility constraint of (3). For each (), a real number is randomly chosen over the interval . Each solution generated by this procedure corresponds to an available ESS schedule.

3.4. Crossover Operator

We use the crossover operator BLX- [32, 33], where is a nonnegative real-valued parameter. This operator produces offspring, where is a random number chosen over the interval , where , , and . The value of is set to in our RCGA. To ensure that each gene satisfies (3), BLX- is modified so that it accepts random real numbers over the interval , instead of the interval .

3.5. Mutation Operator

In Gaussian mutation [34], the parameter of an individual is mutated by at a mutation rate , where is an independent random Gaussian number with a mean of zero and a standard deviation of . In our RCGA, is set to , which is the magnitude of the range of feasible solutions. If a mutated value is not in , then it is replaced by or , whichever is the closest, to produce a feasible solution. If , then changes to can affect the feasibility of . Thus, values of which are not in are similarly replaced by the closer of or . The value of is set to .

4. Simulation Results

4.1. Problems Instances

The load profile that we will use is a residential customer profile provided by NorthWestern Energy [35] and is based on data for 1992 and 1993. The company’s Load Vision profiling software was used to construct profiles for typical diversified residential loads on weekdays and at weekends for each season and three weather scenarios. The portion of the data that we used in this study is presented as Table 1.

Hourly solar generation data were obtained using PVWatts, developed by the National Renewable Energy Laboratory (NREL). This calculator predicts the energy production of residential and small commercial PV installations, based on hourly data for sunny and cloudy days in Helena, a city in the northwestern United States. The specifications of the PV system that we consider are listed in Table 2.

Typical TOU prices were generated by simulations using three price levels, for summer and winter, based on the TOU pricing models of several utility companies. We consider two daily rates of demand charge, 20 cents/kW (low) and 30 cents/kW (high). The TOU pricing model that we have constructed is given in Table 3.

We consider a battery with a total capacity of 2 kWh, but only 1.8 kWh is used to extend battery life. The maximum rate of charge and discharge is around to be 0.6 kW. Thus, we set to 1.8, and values of and of 0.6 kW are used in the problem formulation.

4.2. Results and Discussion

We compared our RCGA with a net-power-based algorithm (NPB) which charges or discharges the battery to make up the difference between the power generated and the load. This naive algorithm does not consider the electricity price at all.

The simulation results are shown in Table 4. All the algorithms run in under a second on an Intel Xeon CPU E5530 @ 2.40 GHz. A run of RCGA took 0.18 seconds.

The results in Table 4 show that our RCGA always outperforms the NPB. The maximum benefit is 11% in Cases 7, 8, and 16, and the minimum is 4% in Case 2. The RCGA performed better in the winter than in the summer. This result can be explained by the difference in the summer and winter price schedules. In summer, the peak period usually occurs at a time when PV energy is plentiful, and so the power drawn from the grid is easily reduced, without the need for an elaborate algorithm. In winter, there is much less PV energy available during peak periods, making the RCGA more effective. We also show the effectiveness of the RCGA by comparing it with another optimization method in the appendix.

Figures 1 and 2 show simulated levels of battery charge which are produced by the NPB and RCGA in the winter and the summer scenarios. Typical PV and load profiles with TOU prices for each season and weather scenario are shown in Figures 1(a), 1(d), 2(a), and 2(d). The other figures show battery charge, the average and peak power drawn from the grid. The NPB charges the battery when the generation exceeds the load and discharges otherwise. The ESS operated on the NPB schedule charges the battery in the daytime when the sun blazes and discharges the battery in the evening when the sun sets, regardless of the season and the weather. However, the RCGA optimizes the ESS charge schedule to minimize the electricity cost under various constraints and a given pricing policy. Thus, the ESS operated on the RCGA schedule charges and discharges the battery dynamically depending on the season and the weather. The figures show that the RCGA schedules reduce both the peak power and the purchase of electricity (i.e., grid power) during on-peak periods.

5. Conclusion

We have developed an RCGA for ESS charge scheduling, which is especially important for electricity customers who have to contend with dynamic pricing. We considered TOU pricing with a demand charge when electricity is supplied to a customer with their own renewable energy generation facility. The scheduling problem for this scenario was formally defined, and the RCGA was used to develop a novel approach to charge scheduling. Experiments using the load and generation profiles of typical residential customers showed that scheduling by the RCGA reduced both the peak power consumption and the purchase of electricity during on-peak periods. This suggests that charge scheduling using an RCGA can help to reduce customers’ electricity bills.

Neither battery efficiency nor the capital cost of a storage system was considered in this study, although these factors can clearly affect overall cost. Further studies that consider these factors are needed. It would also be interesting to investigate how our RCGA performs under more dynamic pricing schemes such as real-time pricing, which are a part of many smart grid scenarios.


Effectiveness of the Proposed RCGA

To check the performance of our RCGA, we ran a multistart method [36] which starts with many different initial solutions and returns the best among them. We denote by MSM the algorithm that randomly generates solutions as given in Section 3.3 and produces the best as its final solution. Table 5 compares the performance of the MSM and the RCGA. A run of the MSM took 5.4 seconds, which is 30 times longer than that of the RCGA. The MSM showed better performance than the NPB overall, but it was inferior to the RCGA for all the cases. The results show the effectiveness of our genetic search process.


:Load during time interval
:Energy generated during time interval
:Residual energy in the battery at the end of time interval
:Energy supplied to the battery during time interval
:Net energy drawn from the grid during time interval
:Energy price set for time interval
:Fixed price
:Cost of energy over time interval
:Number of time intervals = 24
:Battery capacity
:Battery charge power
:Battery discharge power
:Indicator function such that (true) = 1 and (false) = 0.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.