Artificial Bee Colony Algorithm for Solving Optimal Power Flow Problem

This paper proposes an artificial bee colony (ABC) algorithm for solving optimal power flow (OPF) problem. The objective of the OPF problem is to minimize total cost of thermal units while satisfying the unit and system constraints such as generator capacity limits, power balance, line flow limits, bus voltages limits, and transformer tap settings limits. The ABC algorithm is an optimization method inspired from the foraging behavior of honey bees. The proposed algorithm has been tested on the IEEE 30-bus, 57-bus, and 118-bus systems. The numerical results have indicated that the proposed algorithm can find high quality solution for the problem in a fast manner via the result comparisons with other methods in the literature. Therefore, the proposed ABC algorithm can be a favorable method for solving the OPF problem.


Introduction
Optimal power flow (OPF) problems are the important fundamental issues in power system operation. In essence, they are the optimization problems and their main objective is to reduce the total generation cost of units while satisfying various constraints in the system. The OPF problem has been widely used in power system operation and planning [1]. Many techniques such as linear programming (LP) [2][3][4], nonlinear programming (NLP) [5][6][7][8], and quadratic programming (QP) [9] have been applied for solving the OPF problem. For implementation of these methods, the problem needs to be convexity and thus there is a fore to simplify the problem to ensure the convexity. However, the OPF is in general a nonconvex problem with many local minima. In addition, the classical optimization methods are highly sensitive to the starting points and frequently converge to local optimum solution or diverge altogether.
The LP methods are fast and reliable for solving optimization problems but the main disadvantage of the LP methods is that both objective and constraints of the problem need to be piecewise linear functions. The NLP methods suffer another problem of convergence and algorithmic complexity. Newton-based algorithm [10] suffers difficulties in handling large number of inequality constraints. Moreover, this method has also a drawback the convergence characteristics sensitive to the initial conditions. Interior point (IP) methods [11][12][13] convert the inequality constraints of the problem to equality ones by adding slack variables. In the IP method, if the step size is not properly chosen, the sublinear problem may lead to an infeasible solution in the original nonlinear domain [12]. These methods are usually confined to specific cases of the OPF problem and do not offer great freedom in objective functions or the type of constraints that may be used. Therefore, it is important to develop new and more general and reliable algorithms for dealing with the nonlinear OPF problem. Metaheuristic search techniques such as genetic algorithm (GA) [14][15][16], gradient projection method [17], and evolutionary programming (EP) [18] have been implemented for solving the OPF problem. However, the recent findings have identified some deficiencies in the GA performance. Recently, a new evolutionary computation technique, called artificial bee colony (ABC), has been proposed and introduced by Karaboga in [19]. The ABC 2 The Scientific World Journal algorithm is developed based on inspecting the behaviors of real bees on finding nectar and sharing the information of food sources to the bees in their hive. The main advantages of the ABC algorithm over other optimization methods for solving optimization are simplicity, high flexibility, strong robustness [20,21], few control parameters [22], ease of combination with other methods [21], ability to handle the objective with stochastic nature [23], fast convergence, and both exploration and exploitation.
In this paper, the ABC algorithm is proposed for solving OPF problem with both continuous and discrete control variables. The continuous controllable system quantities are generator MW, controlled voltage magnitude, and switchable shunt devices while the discrete ones are transformer tap settings. The objective is to minimize the total fuel cost of thermal generators by optimizing the control variables within their limits so that they cause no violation on other quantities (e.g., transmission-circuit loading, load bus voltage magnitude, and generator MVAR) occurring in either the normal or outage case of system operating conditions. The proposed algorithm has been tested on the IEEE 30-bus, 57-bus, and 118-bus systems for both normal and contingent cases. The obtained results from the proposed method are compared to those from EP [18], particle swarm optimization (PSO) [24], ant colony optimization (ACO) [25], self-adaptive DE (SADE ALM) [26], modified differential evolution (MDE) [27], improved EP (IEP) [28], QN and ACO methods in [29], hybrid GA (HGA) [30], and improved PSO (IPSO) [31].

Optimal Power Flow Problem Formulation
The OPF problem can be described as an optimization (minimization) process with nonlinear objective function and nonlinear constraints. In general, the general OPF problem can be expressed as follows: where ( ) is the objective function, ( ) represents the equality constraints, ℎ( ) represents the inequality constraints, and is the vector of the control variables varied by a control center operator (generated active and reactive powers, generation bus voltage magnitudes, transformer taps, etc.). The essence of the OPF problem resides in minimizing the objective function and simultaneously satisfying the load flow equations (equality constraints) without violating the inequality constraints. The fuel cost function for thermal generators is given by where is the number of generation buses including the slack bus, is the generated active power at bus , and , , and are the unit costs curve for th generator.
The smooth quadratic fuel cost function of the generating units is given by (2), where the valve point effects are neglected. The generating units with multivalve steam turbines exhibit a greater variation in the fuel-cost function. Since the valve point results in the ripples, a cost function contains higher order nonlinearity. Therefore, (2) should be replaced by (3) for taking into consideration the valve point effects. The sinusoidal function is thus added to the quadratic cost functions as follows [32]: where and are the fuel cost coefficients of th unit with valve point effects.
While minimizing the fuel cost function, it is necessary to make sure that the generation still supplies the load demands plus losses in transmission lines. Usually, the power flow equations are used as equality constraints [33].
Consider the following: where the active and reactive power injection at bus are defined in the following equation: The inequality constraints of the OPF problem reflect the limits on physical devices in power systems and they also ensure the system security. The usual types of inequality constraints are upper bus voltage limits at generations and load buses, lower bus voltage limits at load buses, reactive power limits at generation buses, maximum active power limits corresponding to lower limits at some generators, maximum line loading limits, and limits on tap settings. The inequality constraints of the problem include the following.
Generation Constraint. Generator voltages, real power outputs, and reactive power outputs are restricted by their upper and lower bounds as follows: Shunt VAR Constraint. Shunt VAR compensations are restricted by their upper and lower bounds as follows: where is the number of shunt compensators.
Transformer Tap Constraint. Transformer tap settings are restricted by their upper and lower bounds as follows: ,min ≤ ≤ ,max for = 1, 2, . . . , , where is the number of transformers with tap.  Security Constraint. Voltages at load bus are restricted by their upper and lower bounds as follows: where is the number of load buses.

Artificial Bee Colony Algorithm for OPF Problem
3.1. Artificial Bee Colony Algorithm. Artificial bee colony (ABC) algorithm is introduced by Karaboga in 2005 [19]. The ABC algorithm was formed by observing the activities and behavior of the real bees while they were looking for the nectar resources and sharing the amount of the resources with the other bees. Data flow creation around the beehive is a behavior of bees which involves the fundamentals of the swarm intelligence. The colony of artificial bees consists of three groups of bees including employed bees, onlookers, and scouts. Each type of bees has a different role in the optimization process. The employed bees wait above the nectar source and keep the neighboring sources in memory while the onlooker bees get that data from the employed bees and make a resource choice to collect the nectar and the scouts are very much accountable for calculation. The algorithm for solving an optimization problem is comprised of three steps. In the first step, the employed bees are sent to scamper for resources and the nectar amount is computed. In the second step, the onlooker bees make a resource choice appropriate to the data they took from the new identified nectar resources. Finally, in the last step, one of the employed bees is chosen at random as a scout bee and it is sent to the sources to identify new sources [34]. A half of the bees in the colony are chosen as employed bees and the rest half are chosen as the onlooker bees in the algorithm. Therefore, the number of the employed bees is equal to the number of nectar sources. The food sources in the approach refer to the probable solutions of the issue to be optimized.
In the first step of the ABC algorithm, the initial solutions are randomly created in the particular range of the variables 4 The Scientific World Journal . Secondly, each employed bee identifies the new sources whose amounts are equal to the half of the total sources. Equation (10) is used to find a new source as follows: In (10), ∈ {1, 2, . . . , } and ∈ {1, 2, . . . , } are randomly chosen indexes. Although is randomly determined, it has to be different from and is a random number between [0, 1]. This parameter controls the production of the neighbor food sources around and represents the comparison of two food positions visually by a bee. After each candidate source position is produced and then evaluated by the artificial bee, its performance is compared with its previous one. If the new food has equal or better nectar than the old source, it is used to replace the old one in the memory. Otherwise, the old one is retained in the memory.
In the third step, the onlooker bees select a food source with the probability given in (11).
Consider the following: where fit is the fitness value of the solution which is proportional to the nectar amount of the food source in the position and is the number of food sources which is equal to the number of employed bees. The scout bees are very much accountable for random researches in each colony. The scout bees do not use any pre-knowledge and facts when they are looking for nectar sources, thus their research is randomly done completely [35]. The scout bees are chosen among the employed bees with respect to the limit parameters. If a solution that denotes a source is not realized with particular number of trials, then this source is discarded. The bee of that source identifies the new source chosen as a scout bee. The number of incomings and outgoings to a source is obtained by the "limit" parameter. Identifying a new source of a scout bee is given in (12).  Consider the following: where min and max are the minimum and maximum limits of the parameter to be optimized. In the ABC algorithm, the stopping criterion is usually based on number of iterations. Normally, stopping criteria of an optimization algorithm are based on maximum number of iterations or maximum error between two consecutive iterations. However, the maximum error cannot be applicable for metaheuristic search methods since they usually suffer unimproved result for several iterations during the convergence process. Therefore, the stopping criterion for the proposed ABC is only based on the maximum number of iterations.
The Scientific World Journal 5

Implementation of ABC for the OPF Problem.
The overall algorithm of ABC for solving the OPF problem is as follows.
Step 1. Initialize food sources and select parameters for the ABC algorithm.
Step 2. Calculate power flow using Newton-Raphson algorithm based on the initial values.
Step 3. Calculate fitness function based on the obtained solution of power flow. Set the initial food sources as the best solution. Set the iteration counter to 1.
Step 4. Determine position for employed bees.
Step 5. Solve power flow problem using Newton-Raphson method based on the position of employed bees.
Step 6. Calculate the fitness function corresponding to the new position of the employed bees.
Step 7. Compare the new value of the fitness function and the initialized one to obtain the best one.
Step 8. If not all onlooker bees are distributed to food sources, update the new position for the onlooker bees and return to Step 5.
Step 9. Determine unimproved food sources when the "limit" is exceeded.
Step 10. If any unimproved food sources were found, initialize food source for the scout bees, solve power flow problem, and calculate fitness function value.
Step 11. Update the best food source position and corresponding fitness function values.
Step 12. If the maximum number of iterations is not reached, increase the iteration counter and return to Step 4. The flowchart of the ABC algorithm for solving an optimization problem is shown in Figure 1.

Numerical Results
The proposed ABC algorithm is tested on the IEEE 30bus, 57-bus, and 118-bus systems and the obtained results are compared to those from other methods available in the literature. The proposed ABC algorithm is coded in Matlab R2009a and run on an Intel Core 2 Duo CPU 1.66 GHz processor with 2.0 GB of RAM. The stopping criterion of the algorithm is the maximum number of iterations. In this paper, the power flow solution for test systems using Newton-Raphson method is obtained from Matpower [36].
For a fair comparison of computational time among the solutions solving the problem using different computers, we 6 The Scientific World Journal where core is the number of cores in computer and clock is the processor speed. For most microprocessors, they can perform 4 FLOPs per clock cycle [37]. Therefore, different processors can be converted into a common base for comparison. In this paper, we choose the computer used for ABC as a base and other computers will be converted into this base. The adjusted CPU time from other methods by other computers will be calculated as follows:  simplicity. The generators cost coefficients of the IEEE 30-bus test system are given in [36].

The OPF Problem with Quadratic Fuel Cost Functions.
In this case, the units cost curves are represented by quadratic function. The obtained results using ABC are given in Table 1. Figure 2 shows the convergence characteristic of the ABC algorithm. As observed, there is no change in the fuel cost function value after 20 iterations. That means the optimal solution for the problem can be obtained within 20 iterations. The obtained total cost and computational time from the ABC algorithm for the system are compared to those from EP [18], PSO [24], and ACO [25] as in Table 1. The result comparison has indicated that the proposed ABC algorithm can obtain better total cost than the others. For the computational time, the proposed ABC is slower than EP but faster  Figure 5: Convergence characteristic of the ABC algorithm for the IEEE 118-bus system. than PSO. Therefore, the proposed ABC algorithm is effective for the OPF problem for this system. Note the adjusted computational time in Table 1 is given in the appendix.

The OPF Problem for Units with Valve Point Effects.
In this case, the generator fuel cost curves of generator at buses 1 and 2 are represented by a quadratic function with rectified sine components as (3). The generator cost coefficients of those two generators are given in [26]. The obtained results by the proposed ABC algorithm are shown in Table 2 and the convergence characteristic of the proposed method for the system in this case is given in Figure 3. The total cost and computational time obtained by the proposed method are also compared to those from IEP [26], MDE [27], and SADE ALM [26]. The result comparison has also indicated that the proposed ABC algorithm can find better total cost than the others with a fast computational manner. Therefore, the proposed ABC algorithm is also very effective for solving the problem for this case.

The IEEE-57
Bus-System. In this case, the IEEE 57-bus system is considered to investigate the effectiveness of the proposed algorithm. The IEEE 57-bus system consists of 7 generators, 15 transformers, and 80 transmission circuits. The single-line diagram of this system and the detailed data are given in [36]. The total load demand of the system is 1250.8 MW. The obtained result by the proposed method is compared to those from QN and ACO in [29] and HGA [30] methods as shown in Table 3. The convergence characteristic of the proposed algorithm for the system is given in Figure 4. In this case, the number of iterations for the proposed method to obtain the optimal solution is less than 30. The result comparison has also revealed that the proposed method can obtain better total cost than the other methods with faster computational time.

The IEEE-118-Bus
System. The proposed ABC algorithm has been tested on large-scale system of 118 buses [38]. The system comprises 54 generators with a total installed capacity of 8190 MW and the system demand is 3668 MW. Table 4 shows the minimum, mean, and maximum cost achieved by the proposed ABC algorithm for 50 runs. The convergence characteristic of the proposed algorithm for the system is given in Figure 5. As observed, the number of iterations for obtaining the result in this case is higher than the previous ones since this a large-scale system and the  Table 4 has also indicated that the proposed ABC algorithm can obtain better total cost with faster computational time than the IPSO method. Therefore, the proposed ABC algorithm is also very effective for the large-scale systems.

Conclusion
In this paper, the ABC algorithm is successfully applied for solving the OPF problem. The ABC algorithm is based on the foraging behavior of honey bees for finding global solution for optimization problems. The advantages of the proposed algorithm are robustness, fast calculation, flexibility, and few setting parameters. However, the ABC algorithm also suffers a drawback of search space limited by initial solution. In fact, this drawback can be overcome using normal distribution sample in the initial step. The proposed ABC algorithm has been tested on different systems and the obtained result for each system is compared to other methods in the literature. The result comparisons have shown that the proposed algorithm can obtain better optimal solution than many other methods with a fast computational manner, especially for large-scale systems. Therefore, the proposed ABC algorithm can be a favorable method for solving OPF problems in power systems.