Eagle Strategy Based Crow Search Algorithm for Solving Unit Commitment Problem in Smart Grid System

ABSTRACT


INTRODUCTION
Smart grids are a set of technologies, concepts and approaches, allowing the integration the generation, transmission, distribution and use into one internet by full use of advanced sensor measurement technology, communications technology, information technology, computer technology, control technology, new energy technologies [1]. However, Smart Grid uses digital technology to control grid and choosing the best mode of power distribution to reduce energy consumption, reduce costs, increase reliability and also increase transparency in the network. Therefore, the system intelligent will have will have a significant impact in the fields of finance and economics of the power industry [2]. Although, The traditional network is a one-way network in which the electrical energy produced in power plants is channeled to consumers without information to create an automated and distributed network of advanced power supplies. The unit commitment problem plays a significant role in optimizing the cost of generating electrical power by planning production units based on the allocation of the production cost of each unit and the actual output power [3]. They involves scheduling the on/off states of generating units to minimize the operating cost for a given time horizon. The committed units must meet the systems fore-casted demand and spinning reserve requirement at minimum operating cost, subject to a large set of operating constraints. The UC problem, one of the most important tasks in short-term operation planning of modern power systems, has a significant influence on the secure and economic operation of power systems [4]. Optimal commitment scheduling cannot only save millions of dollars for power companies, it also ensures system reliability by maintaining the proper spinning reserve. The UC problem is mathematically formulated as a nonlinear, largescale and mixed integer combinatorial opti-mization problem [5], [6]. The number of combinations of 0-1 variables grows exponentially for a large-scale UC problem.
Therefore, the UC is one of the most difficult problems in the area of power system optimization. The UCP is a NP-Hard problem [7] which cannot be solved exactly in reasonable computing time for large scale problems. Research efforts, therefore, have concentrated on efficient and near-optimal UC algorithms which can be applied to realistic power systems and have reasonable storage and computation time requirements. The optimization methods for UC problems can be divided into two classes through a survey of literature as follows: The first are numerical optimization techniques such as priority list methods [4], dynamic programming [8], [9], Lagrangian relaxation methods [10], branch-and-bound methods [11], and mixed integer programming [12]. The other are stochastic search methods such as genetic algorithms (GA) [13], evolutionary programming (EP) [14], simulated annealing (SA) [15], and particle swarm optimization (PSO) [16].
To solve unit commitment problem (UCP), it has become evident that the researchers concentrated on using single metaheuristics. However, there are some limitations to this. To overcome this problem, a wide variety of hybrid approaches are proposed in the literature. The core idea of a hybrid with two or more metaheuristics was inspired by the possibility that the new hybridized algorithm combines the strengths of each of these algorithms to provide the following advantages: (i) To produce better solutions, (ii) to provide solutions in less time. Among the existing meta-heuristic algorithms, eagle strategy (ES) is a two-stage method recently proposed by [17] to solve optimization problems. In this two-stage strategy, the first stage explores the search space globally by using the so-called levy flight; if it finds a promising solution, then an intensive local search is employed using a more efficient local optimizer, such as hill-climbing and the downhill simplex method. Then, the two-stage process starts again with new global exploration, followed by a local search in a new region. One of the remarkable advantages of such a combination is to use a balanced tradeoff between global search (which is generally slow) and a rapid local search. Another advantage is that this is a methodology or strategy, not an algorithm. In fact, we can use different algorithms at different stages and at different times during iterations. Up to now, most published works on ES combined with efficient local search, such as the follower pollination algorithm (PFA) [18], and differential, 1) evolution (DE) [19] mainly focused on solving the continuous optimization problem; there is no previous work that attempts to use ES in conjunction with a local optimizer, such as crow search algorithm [20] to solve the unit commitment problem. 2) The rest of this paper is organized as follows. Section 2 contains the mathematical formulation of the UCP. Section 3 introduces the repairing mechanisms applied to the UCP. Section 4 briefly presents the basics of ES and CSA. Section 5 proposes the binary eagle strategy based crow search algorithm to solve UCP. Section 6 provides the computational results.Finally, Section 7 outlines the conclusions.

FORMULATION OF UCP 2.1. Objective function
The purpose of UCP is principally finding the minimum cost to a group of generators by turning everyone either on or off over a specific time to satisfy the loads and meet a different operational constraints. The total cost F over the whole scheduling periods is the sum of the operating cost and start-up cost for all of the unit. Therefore, the objective function of the UC problem is:

19
Where H is total scheduling period; N G is number of gener-ators; Pih is generation of unit i at time h; uhi is on/off status of unit i at time h (on = 1 and off = 0); STih is start-up cost of unit i at time h. Generally, fi(Pih) denotes the fuel cost per unit which is mathematically a quadratic function: Where ai, bi and ci represent the unit cost coefficients. The startup cost of the ith unit is given as:

{
Where and are the hot start up cost and cold start up cost of the ith unit; is the continuous off time duration of the ith unit; is the minimum down time of the ith unit; is the cold start hours of the ith unit.

Where
is system load demand at time t.

System spinning reserve requirement
∑ Where is spinning reserve at time t.

Generation power limits
Where and are minimum and maximum generation limit of unit i, respectively

2.2.4.Unit minimum up time
Once a unit is started up, it should not be shut-down before a minimum up-time period is met and it math-ematically expressed for ith generating unit as follows: A unit must be on for a certain number of hours before it can be shut down.
Where is continuously on time of unit i up to time h, is unit i minimum up time.

2.2.5.Unit minimum down time
Once a unit is started down, it should not be shut-up before a minimum down-time period is met and it mathematically expressed for ith generating unit as follows: A unit must be off for a certain number of hours before it can be brought online Where is continuously off time of unit i up to time h, is unit i minimum down time.

2.2.6.Unit initial status
The initial status at the start of the scheduling period must be taken into account.

THE REPAIRING MECHANISMS FOR THE UCP
Since the size of the discrete search space of the UCP increases exponentially with the increasing number of units to be scheduled, it becomes a mathematically complex com-binatorial optimization problem. It is a tough job for any algorithm to regain the feasibility of infeasible solutions of such problems, which suggests the use of some mechanisms for forcibly satisfying the constraints of a problem. In such an attempt, the following four repairing mechanisms, the first three of which are used by many researchers for the UCP [21][22][23][24][25][26], are incorporated in the proposed binary-ES-CSA addressed in Section 5:

Priority list for unit-scheduling
Priority list is made according to every unit and its parameter, and as we observe the difference in the output powers, we can see that cost per produced of a unit at its maximum output power is less than that other output power. In this research, priority list is based on fuel cost obtained gained from the average fuel cost of each unit operating at its maximum output power. The average full-load cost a of a unit is defined as the cost per unit of power ($/MW) when the unit is at its full capacity. When the fuel cost of unit is given by Equation (2), can be expressed as: The units are ranked by their in ascending order. Thus, the priority list of units will be formulated based on the order of i, in which a unit with the lowest i will have the highest priority to be dispatched.

Spinning reserve constraints repairing
The spinning reserve may not meet the standards of the obtained primary unit scheduling using Binary ES-CSA . Hence, the heuristic search strategy repairs the spinning reserve constraints (5). To explain that, in order to keep the randomness nature of ES-CSA which is known as a stochastic searching algorithm, a constant pr is defined as a utilization ratio of the priority list. The procedures for repairing the spinning reserve violations in primary unit scheduling are shown as follows [26] : Step 1: Set h = 1 Step 2: For all uncommitted units at hour t, calculate the average full-load cost using formula (9). Sort them in ascending order of to obtain a list SS ( ) Step 3: The amount of excessive spinning reserve at each hour is calculated by:

∑
Step 4: If Rh0, go to Step 6; Step 5: Generate a random number [0; 1]. If < pr, commit an uncommitted unit in SS ( ) with the lowest and return to step 3; Otherwise, randomly commit an uncommitted unit in SS( ) and return to step 3.

Minimum up and down time constraints repairing
Since the obtained unit schedule may not meet the demands of the minimum up and down time constraints/limitations, because they are failed in the previous process. Thus, they ought to be examined and fixed if the violations exist. The minimum down time is usually violated at high load levels at which the peak load hours are shorter than the minimum up time, for this cause the hills exist. In almost the same way, the minimum down time of the units, thus valleys exist. Heuristic search algorithm will be used to bank hills and fill valleys. To check for violations, on and off times of units are determined in advance. The continuously on/off times of the unit i up to hour t is calculated as follows: The details procedures to repair violations of the minimum up and down times constraints are as follows [26]: Step 1: Calculate the duration on and off times of all units for the whole schedule time horizon using formulas (10) and (11) Step 2: Set h=1 Step 3: Set i=1 Step 4 : and and then set .
Step 5 : and and and then set .
Step 6 : and and and ∑ then set .
Step 7: Update the duration on/off times for the unit i using using formulas (10) and (11).

Decommitment of excess units
Repairing the minimum up/down time constraints of a unit may lead to extreme spinning reserves at some time instants that are not desirable from the point of operating cost. Hence a heuristic algorithm is used to decommit some units one by one, in descending order of their average full load costs as given by Equation (3.1), until the spinning reserve constraint given by Eq. (2.5) is just satisfied at any time instant. However, such decommitment is made subject to the satisfaction of the up/down time constraints of a unit, i.e., a unit will be decommitted only if no up/down time constraint of the unit is violated from such decommitment.

OVERVIEW OF EAGLE STRATEGY AND CROW SEARCH ALGORITHM 4.1. Egale Strategy
Eagle strategy is a two-stage optimization strategy was presented by [17]. This algorithm mimics behavior of eagles in nature. In fact, eagles use two different components to search for their prey. The first one is a random search performed by flying freely and the second one is an intensive search to catch prey when they see them. In this two-stage strategy, the first stage explores the search space globally by using a Levy flight: if it finds a promising solution, then an intensive local search is employed using more efficient local optimizer, such as hill-climbing and the down-hill simplex method. Then, the two-stage process commences another time with new global exploration, followed by local search in a new area. One of the remarkable advantages of such a combination is to use a parallel balance between global search (which is generally slow) and a rapid local search. There is another advantage that is called a methodology or strategy, not an algorithm. In fact, there are different algorithms that can be used at different times and stages during iterations. The main steps of the ES are outlined in Algorithm 1.

Crow search algorithm
The crow search algorithm (CSA) is a new population-based stochastic search algorithm recently proposed by [20]. The CSA is a newly developed optimization technique to solve complex engineering optimization problems [27], [28]. It is inspired by the intelligent behavior of crows. The principles ofCSA are listed as follows [20]: a. Crows live in the form of the flock. b. Crows memorize the position of their hiding places. c. Crows follow each other to commit thievery. d. Crows protect their caches from being pilfered through probability. Following the above assumptions, the core mechanism of the CSA consists of three basic phases, namely initialization, generate a new position, and updating the memory of crows. At first, the initial population of crows represented by n dimension is randomly generated. At iteration t, the position of crow is specified by [ ]and it is assumed that this crow has memorized its best experience thus far in its memory [ ]To generate a new position, crow i select randomly a crow j, for example, from the population and attempts to follow it to find the position of its hiding place (mj ). In this case, according to a parameter named awareness probability (AP), two states may happen: a. State 1: Crow j does not know that crow i is following it. As a result, the crow i will determine the hiding place of crow j. b. State 2: Crow j knows that crow j is following it. As a result, to protect its cache from being pilfered, the crow j will fool crow i by going to another position whitin the search space. According to States 1 and 2, the position of the crows is updated as follows: { Where rj is a uniformly distributed fuzzy number from [0; 1] and denotes the awareness probability of crow j at iteration iter. Finally, the crows update their memory as follows: { Where f( -) denotes the objective function value. It is seen that if the fitness function value of the new position of a crow is better than the fitness function value of the memorized position, the crow updates its memory by the new position. The above process is repeated until a given termination criterion (itermax ) is met. Finally, the best solution of the memories is returned as the optimal solution found by the CSA. The main steps of the CSA are outlined in Algorithm 2

BINARY EAGLE STRATEGY BASED CROW SEARCH ALGORITHM FOR UCP
The binary ES-CSA is used to optimise the unit-scheduling problem in the first step, and the Lambda-iteration method [4] is used to solve the economic load dispatch problem in the second step. These two steps run iteratively until the algorithm meets the stopping criterion. Optimising the first sub problem of unit-scheduling is more difficult than the other sub-problem of ELD. So this paper mainly discusses how to model BESCSA for the first sub-problem, and the second sub-problem is solved by the traditional Lambdaiteration method. These two sub-problems are optimised iteratively until the algorithm meets the stopping criterion. The Equations (9) and (14) are transfer from continues to binary space using the following equations : { Where = , y = 1 + and rand() is a random number from uniform distribution [0; 1] and is the updated binary position at iter iteration.

Solution representation and Initialization
Before using the proposed binary ES-CSA to solve UCP, the representation of a crow must be defined. A crow is also called an individual. Hence, we defined each unit on/off (or 1/0) status as a gene, all available unit status at each hour make up a sub-chromosome, and there are H sub-chromosomes over the time horizon H comprising an individual. An individual would display the unit commitment schedule over the time horizon H. The on/off schedule of the units is stored as an integer-matrix U with dimension N G H. A matrix representation of an individual in the population is shown as follows: Where uhi is unit on/off status of unit i at time h (uhi = 1=0 for on/off).
In the initialization process, a set of individuals is created at random. For the complete N P population, the candidate solution of each individual Uj; (j = 1; 2; :::; N P ) is randomly initialized. The position uhi of each crow Uj is generated using a uniform distributed random function, which generates either 0 or 1 and they are equally likely.

Generate new solutions
As mentioned above, the ES is a two-stage strategy, and we can use different algorithms at different stages. In the first stage, ES uses the so-called Levy flights, which represent a kind of non-Gaussian stochastic process whose step sizes are distributed based on a Levy stable distribution to generate new solutions. When a new solution is produced, the following Levy flight is applied: Here, is the step size that is relevant to the scales of the problem. The product means entry-wise multiplications. Levy flights essentially provide a random walk while their random steps are drawn from a Levy distribution for large steps: In this paper, we will use the Mantegna algorithm [28], which is one of the most efficient algorithms used to implement Levy flights. We assume that Levy ( ) = s, so the formula can also be described as follows: By using Mantegna's algorithm [26], the step length s can be calculated as follows: By using Mantegna's algorithm [26], the step length s can be calculated as follows:

| | ⁄
Where draw from the normal ditrutions respectively .that is : and are calculated as follows Such a combination may produce better results than those using pure CSA. In UCP, binary numbers 0 and 1 are used to indicate the unit status (i.e., OFF or ON). The proposed startegy is essentially a real-coded algorithm, and therefore some modifications are needed to enable it to deal with the binary variable (i.e., 0 and 1) optimization problem.

Lambda-iteration method for ELD problem
With the feasible UC schedule, classical equal lambda-iteration method [4] is used to solve the ELD problem in this paper. The ELD procedure is stopped when the tolerance, which indicates that the sum of all online units output minus the load demand, is less than the value given before hand. Once the optimal values of Pit are found, the total generation production cost is computed by adding the operating cost of all units over the time horizon H. The total start-up cost is calculated by adding the startup costs of those units that change their states from 0 to 1. Lambda-iteration method for solving ELD pseudo-codes is listed in algorithm 3.

Solution methodology
In this section, the novel binary eagle startegy based crow search algorithm is proposed to solve the UCP and then the lambda-iteration method is used to solve the sub-problem EDP. The main steps are listed as follow: Step 1: Randomly initialize the parameters (R; AP; f l; Np), feasible vectors and initialize the memory of each crow at t = 0 as in Section 4.4.1 Step 2: Calculate priority list of units according to each unit parameters as in Section 3.3.1 Step 3: Modify unit's status of individuals in the crows satisfying spinning reserve constraints as in Section 3.3.2 Step 4: Repair each crow in the swarm for minimum up/down time violations as in Section 3.3.3.
Step 5: Decommit units of each crow in the swarm to reduce excessive spinning reserve due to minimum up/down times repairing as in Section 3.3.4 Step 6: Solve ELD problem using equal lambda-iteration method as in Section 5.3 Step 7: Fitness evaluation of all crows. Calculate the fitness function value of each agent using the objective function (1) and evaluate each crow in the population.
Step 8: Generate a set of crows X for globale exploration using the Levy flight according to Section 5.5.1 and run steps 3-7 Step 9: Update the memory of crows according to Equation (14) Step 10: Generate randomly a set of crows around this promising solution Step 11: Carry out an intensive local search via the crow search algorithm and run steps 3-7 Step 12: Update the memory of crows according to Equation (14) Step 13: If (a better solution is found) Update the current best Step 14: If the maximum iteration number is reached, then go to step 15. Otherwise, increase iteration number and go back to step 3.
Step 15: Stop and report the optimal solution of UCP.

RESULTS AND DISCUSSION
In order to verify the feasibility and effectiveness of the proposed method (Binary ES-CSA) for solving UCP, the proposed Binary ES-CSA is tested on different system sizes based on a basic system of 10 units from literature [10]. The scheduling time horizon H is chosen as one day with 24 intervals of one hour each. The spinning reserve requirement is set to be 10% of total load demand. For the systems of 20, 40, 60, 80 and 100 units, the basic 10-unit system is duplicated and total load demands are adjusted proportionally to the system size. The proposed Binary ES-CSA method is coded in MATLAB and implements on an Intel 2.26 GHz CPU with RAM 2GB personal computer. The parameters of proposed algorithm is given in Table 1, for the demand and generating unit data of the test system are given in Tables 2 and 3 . To validate the results obtained with the proposed ES-CSA method, we compare the performance of the ES-CSA to those of other approaches with respect to the best total production cost and CPU execution time. The results were reported in literature when the same problem was solved using Lagrangian relaxation (LR) (S. A. Kazarlis, A. Bakirtzis, and V. Petridis 1996) [13], integer-coded GA (ICGA) (Damousis et al. 2004) [32], evolutionary programming (EP) (Juste et al. 1999) [14], and Lagrangian relaxation and genetic algorithms (LRGA) (Cheng et al. 2000) [25]. Table 4 provides comparison of the best total production cost from the ES-CSA method to those of other methods. It is clearly shown that the total production costs by the ES-CSA in all test cases are smaller than those of the above methods. From Table 4, it is obvious that the proposed ES-CSA method is superior to the mentioned methods.
The CPU execution times of the ES-CSA and other methods in literature are shown in Table 3. Although they may not be directly comparable due to different computers used, but the trend of computational time is shown that ES-CSA is able to find good optimal solutions in much smaller times than other methods. As shown in Tables 3 and 4, the total production costs of ES-CSA are shown to be less expensive than those of other methods on all generating unit systems. Obviously, ES-CSA vastly improves performance than other methods in terms of both solution quality and CPU times especially on the large-scale UCP.
In the meantime, we examine the variation in the total fuel cost of test system with evolutionary generation numbers. For differenttest systems, the convergence processes of the best solution in the 30 trials are listed in Figures 1 et 2. From Figure 1 and 2, it is easy to see the ES-CSA has satisfactory con-vergence and the algorithm escaped from the local optima at thelater iterations. It proved that the stochastic searching mechanism of ES-CSA, which is conducted by gravitational forces among agents, is efficient. And the proposed mutation strategies improved theperformance of ES-CSA.

CONCLUSION
In this paper, we proposed an eagle strategy based crow seach algorithm (ES-CSA) to solve unit commitment problem in smart grid system. The proposed method is a combination of binary eagle strategy based crow seach algorithm with Lambda-iteration method, which is enhanced by priority list to handle the spinning reserve constraints and a heuristic search strategy to handle minimum up/down time constraints. The simulation results for solving several UCP instances with thenumber of units in the range of 10-100 shows that the proposed method is effective for solving UCP. The total production costs over the scheduled time horizon by ES-CSA are less expensive than any otheroptimization methods reported in the literature especially on the large-scale UCP. Moreover, the CPU times of the proposed method increase linear with the UCP system size, which is favorable for large-scale implementation.