Professional Documents
Culture Documents
Research Paper
Research Paper
Research Paper
ABSTRACT
As the demand for electrical energy continues to grow, efficient load generation balancing and resource allocation become
crucial for ensuring the reliability and stability of power systems. In this project, the load generation balancing problem is
formulated as a multi-objective optimization problem with two competing objectives i.e., minimizing the total cost of generation
and minimizing the total power loss in a multi-area power grid. To address this problem, this paper presents a novel multi-
objective flow direction algorithm. The algorithm aims to find an optimal solution by iteratively updating the candidate solutions
(flows). The algorithm explores the search space by updating the positions of the flows based on the flow direction and
neighborhood interactions. For each updated flow, the fitness values are calculated using the weighted sum method. The
algorithm continues until convergence. The performance of the proposed MOFDA is evaluated by both bi-objective and tri-
objective benchmark functions, all of which have different properties. Moreover, the MOFDA is compared to other ten multi-
objective optimization algorithms including, MOPSO, GA-MUL, MOBA, MOAHA and MOWOA. Simulation results show that
MOFDA performs better than other optimization algorithms, depicting better fitness values and better standard deviation values
for 10 algorithm runs implying that the MOFDA always achieves the global minimum as compared to other algorithms which
were sometimes being trapped at a local minimum. Simulations are also carried out on a multi-area power grid model to assess
MOFDA’s performance, considering various load demands and power limits on the generation power in each area. The results
show that the algorithm successfully achieves load generation balancing, effectively lowering both power generation cost and
losses and improving the power grid’s overall stability and efficiency.
{( ) ( ) }
2∗randn
at the basin outlet point. iter rand∗iter
W = 1− ∗ ∗rand (5)
Max iter Ma x iter
The algorithm’s initial parameters are the population size α ,
the number of neighbors β , and the radius of the
neighbourhood ∆ . Where iter is the current iteration, Max_iter denotes the total
2.4.1 Mathematical modelling of FDA number of iterations, and (rand) denotes a random vector
According to the FDA, relation (2) is used to identify where with uniform distribution.
the initial flow will be located. The flow travels to the neighbor with the least objective
Flo w X (i )=lb +rand∗( ub−lb ) (2) function at a speed of V, as was previously mentioned. On
the other hand, the slope has a direct correlation with the
where, Flo w X (i ) is the position of the ith flow, flow velocity to the neighbors. Therefore, the relation (6) is
employed to determine the flow velocity vector:
lb and ub represent the lower and upper limits of the
decision variables, V =randn∗S o (6)
rand is uniformly distributed in the range of [0, 1]. where So denotes the slope vector between the current flow’s
Each flow is surrounded by neighborhoods, with the location and its neighbor. Global search is enabled by the
neighbor flow position determined through the following random number randn, which generates a variety of
relationship: solutions. The following relation also determines the vector
of the slope of ith flow in reference to its jth neighbor:
Neighbo r X ( j )=Flo w X (i )+ randn∗∆
( )
(3) Flo w fitness ( i)−Neighbo r fitness ( j )
So ( i , j, d )= (7)
Where, Neighbo r X ( j )denotes the position of the j-th ‖Flo w x ( i ,d )−Neighbo r x ( j , d )‖
neighbor,
randn is normally distributed with values in the range of [0, where the objective values for the flows I and neighbor j are
1]. represented by Flo w fitness (i) and Neighbo r fitness ( j) respectively
with the d parameter depicting the dimensions of problem. flow and neighborhood position to evaluate the
The following relationship is applied to complete the new objectives. It returns a row vector of fitness values.
position of the flow The fitness values for each flow and neighborhood
are calculated using the weighted sum method. The
(‖ )
Flo w X (i) −Neighbo r X ( j)
Flo w newX (i )=Flo w X (i )+V ∗ (8) weights matrix, representing the weights for each
Flo w X (i) −Neighbo r X ( j)‖ objective, is multiplied element-wise with the
objective values, and the sum is taken to obtain the
fitness value. This is done for both fitness_flow and
At this point it is important to note that no neighbor’s fitness
fitness_neighbor matrices. This therefore transforms
value may be lower than a flow. The FDA algorithm chooses
the multi-objective problem into a single objective
another flow at random to simulate this state; if its objective
by using weights.
function is lower than the present flow’s, it will travel in the
The sorting of positions and fitness values is
same direction; otherwise, it will move in the direction of
performed based on the calculated fitness values for
the dominating slope. Relation (9) demonstrates how to
each flow.
simulate the flow direction.
The Convergence Curve matrix is modified to store
if flo w fitness ( r) < flo w fitness (i ) the archive of objective values at each iteration. It
becomes a [num_objectives x maxiter] matrix.
Flo w newX (i )=Flo w X (i )+randn∗( Flo w X (r )−Flow X (i) )
The visualization of the Pareto front is added using scatter
else plots. If num_objectives is less than 3, a 2D scatter plot is
used to show objectives 1 and 2. Otherwise, a 3D scatter plot
Flo w newX (i )=Flo w X (i )+2 randn∗Bes t X −Flo w X (i ) ¿ ¿ is used to show objectives 1, 2, and 3.
s . t g p ( s , c ) ≥0 , p=1,2, … … , P (10) f1: Cost of the grid, which is the total generation
cost considering the generation dispatch in each
h q ( s , c )=0 , q=1,2 , … ,Q where, area.
f2: Losses in the grid, which represents the total
c = (c1, c2, …, cn) is a vector of decision variables, s is a
power losses in the transmission lines between
vector of dependent variables, gp(s,c) are inequality
areas.
constraints, hq(s,c) are equality constraints,
and P and Q represent the number of inequality constraints The aim is to find the Pareto optimal solutions (optimum
and equality constraints, respectively. value of generation dispatch for each area) that offers the
best trade-off between minimizing f1 and f2.
3.2.1 Objective Functions and Constraints
Minimize Generation Costs (f1): The objective is to
minimize the total generation cost for the multi-area power
grid. The generation cost for each area is calculated from
relation (11) by multiplying the power generated ( x i) with
the respective generation cost ( gencost s i) in each area. The
total generation cost is the sum of the individual costs for all
areas. Mathematically, the generation cost objective function
can be represented as:
N
f 1 ( x )=∑ x i∗gencost si (14)
i=1
Where, P1, P2, …. PN represent the generation dispatch for f 2 ( x )=∑ ∑ power flowij∗losscoefficien t ij ¿ 15)
i=1 j=1
each area
Functions f 1 ( x )∧f 2 ( x )are then represented as 2. Initially, f1 and f2 are set to infinity as default
F 1 ( s , c ) , F 2 ( s , c ) from equation 10 as: values.
3. The function checks if the sum of the generation
Min F=¿ ) (16) dispatch x is greater than or equal to the sum of the
3.3 Multi-area power grid Optimization area loads (area_loads). This condition ensures that
To minimize both the power generation costs and power the generation dispatch meets the grid load. If the
losses in a multi-area power grid, the MOFDA is applied. condition is not met, the default values of f1 and f2
The modified algorithm aims to find an optimal solution i.e., remain unchanged.
generation dispatch that achieves the best trade-off between 4. If the generation dispatch meets the grid load, the
minimizing both generation costs and power losses, function proceeds to calculate the total generation
considering the constraints of the multi-area power grid. cost for each area. It multiplies the generation
dispatch x with the corresponding generation costs
Below is the code explanation of the multi_area grid (gen_costs) using element-wise multiplication (.*),
function to be optimized and then sums up the results. The total generation
cost is stored in the variable
Inputs:
total_generation_cost.
5. Next, the function calculates the available remaining
x: A vector of generation dispatch for each
supply and demand in each area. It initializes demand
generating station. It represents the decision variable
and supply vectors with zeros, and then determines
for the optimization problem.
area_loads: A vector of length num_areas
the surplus or deficit of power by subtracting
area_loads from x. If the difference is positive, it
containing the loads in each area of the power grid.
gen_costs: A vector of size num_areas containing
means there is surplus supply (supply is updated),
the costs of generating power in each area. and if the difference is negative, it means there is a
transmission_loss_coeff: A matrix of size
demand deficit (demand is updated).
num_areas x num_areas containing the
6. The power flow matrix (power_flow) is initialized
transmission loss coefficients between each pair of with zeros. This matrix will store the distribution of
areas. power from supply to demand in each area.
7. The function proceeds to offset the demand from the
Outputs: available power. It iterates over each demand and
supply combination, and if the supply is greater than
f1: The cost of the grid, which is one of the objective or equal to the demand, it allocates the entire demand
values. to that supply, updates the supply and demand values
f2: The losses in the grid, which is the other accordingly, and stores the demand value in the
objective value. corresponding position of power_flow. If the supply
is less than the demand, it allocates the entire supply
Explanation: to that demand, updates the supply and demand
values, and stores the supply value in power_flow.
1. The function begins by loading the grid parameters 8. After offsetting the demand, the function computes
from the params structure, which contains the total loss in the grid. It initializes total_loss
area_loads, gen_costs, and loss_coefficient. with zero and then iterates over each demand and
supply combination. For each combination, it
multiplies the power flow (power_flow(i, j)) with (loss_coefficient(i, j)) and adds it to the
the corresponding transmission loss coefficient total_loss.
MALO MOGOA MOBA
Schaffer(F1(x), F2(x))
MALO MOGOA
F1 F2 F3 Fitness sum F1 F2 F3 Fitness sum
3.11E+00 -1.70E+01 -1.28E+01 -2.67E+01 3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.17E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.16E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.16E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.13E+00 -1.70E+01 -1.28E+01 -2.67E+01
3.15E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.10E+00 -1.70E+01 -1.28E+01 -2.67E+01
3.17E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.14E+00 -1.70E+01 -1.28E+01 -2.67E+01
3.19E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.14E+00 -1.70E+01 -1.28E+01 -2.67E+01
3.16E+00 -1.69E+01 -1.29E+01 -2.67E+01 3.10E+00 -1.70E+01 -1.28E+01 -2.67E+01
3.13E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.11E+00 -1.70E+01 -1.28E+01 -2.67E+01
3.13E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.10E+00 -1.70E+01 -1.28E+01 -2.67E+01
Pareto Mean -2.67E+01 Pareto Mean -2.67E+01
Standard Deviation 6.62E-03 Standard Deviation 1.01E-02
MOBA MOAHA
F1 F2 F3 Fitness sum F1 F2 F3 Fitness sum
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.13E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.15E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.13E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.15E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.13E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.13E+00 -1.70E+01 -1.29E+01 -2.67E+01
3.14E+00 -1.70E+01 -1.29E+01 -2.67E+01 3.15E+00 -1.70E+01 -1.29E+01 -2.67E+01
Pareto Mean -2.67E+01 Pareto Mean -2.67E+01
Standard Deviation 1.07E-08 Standard Deviation 3.70E-03
3.5
Pareto weigted fitness sum
3
3
2.5
F1
1.5 2.5
0.5
0 2
0 0.5 1 1.5 2 2.5 3 3.5 4 0 20 40 60 80 100
F2 Iterations
Kursawe
Kursawe Pareto Front Convergence Curve
2 -17
MOFDA
-18
0
-19
Pareto weigted fitness sum
-2
-20
-21
-4
F1
-22
-6
-23
-8 -24
-25
-10
-26
-12 -27
-20 -18 -16 -14 -12 -10 0 20 40 60 80 100
F2 Iterations
ZDT1
ZDT1 Pareto Front
3
Convergence Curve
3.5
MOFDA
2.5
3
F1
1.5
2
1
1.5
0.5
1
0 0.5
0 0.2 0.4 0.6 0.8 1 0 20 40 60 80 100
F2 Iterations
ZDT2
ZDT2 Pareto Front
4.5 Convergence Curve
6
MOFDA
4 5.5
3.5 5
Pareto weigted fitness sum
3 4.5
4
2.5
F1
3.5
2
3
1.5
2.5
1
2
0.5 1.5
0 1
0 0.2 0.4 0.6 0.8 1 0 20 40 60 80 100
F2 Iterations
ZDT3
12 ZDT3 Pareto Front Convergence Curve
10 5
14
MOFDA
4
12
3
10
F1
4
2 -1
0 -2
-2 -3
-4 -4
-5
-0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -20 -19 -18 -17 -16 -15 -14 -13 -12 -11
F2 Iterations
ZDT6
Convergence Curve
9
ZDT6 Pareto Front MOFDA
9
8
8
7
4
4
3
3
2
2
1 1
0 0
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 20 40 60 80 100
F2 Iterations
Viennet2
Convergence Curve
-10
MOFDA
-12
-14
Pareto weigted fitness sum
-16
-18
-20
-22
-24
-26
-28
0 20 40 60 80 100
Iterations
Viennet3
Convergence Curve
16.25
MOFDA
16.2
16.1
16.05
16
15.95
15.9
0 20 40 60 80 100
Iterations
The table shows the standard deviation and Fitness sum MOPSO and GA-MUL also perform relatively well, with
fitness values for ten runs of each algorithm. The algorithms Fitness sums that are comparable to MOFDA in most
are run 10 times to see their effectiveness in achieving a circumstances. They do, however, exhibit slightly higher
global minimum. For all the test functions, the MOFDA standard deviations, indicating some inconsistency in their
proves to achieve a global minimum as depicted by the very outcomes. MOBA, MOAHA, and MOWOA also perform
small standard deviation (implying that the fitness values are well, but with somewhat greater Fitness sums and standard
tightly clustered around the mean) as compared to other deviations than MOFDA, indicating a lesser optimization
algorithms with higher standard deviations which are potential and stability.
sometimes trapped in their local minima’s. This implies that
In addition, plots of the Pareto fronts and convergence
the MOFDA has a higher level of optimization stability and
curves for benchmark functions are included in figure(s) 7.1.
consistency. Moreover, MOFDA consistently outperforms
The Pareto fronts represent the distribution of solutions that
other algorithms as it obtains competitive Pareto means,
provide the optimal balance between the objectives,
showing a solid balance of objectives and effective
illustrating the trade-off between the often conflicting
optimization signifying more consistent and dependable
objectives. The convergence curves represent the algorithms'
optimized results.
convergence behavior across optimization iterations,
illustrating how rapidly they approach optimal solutions.
The IEEE set are modelled for load balancing. However, no set for generation + load balancing is free or availed. To cater for
these, an arbitrary dataset was modelled following the IEEE buss schemes.
Used algorithm parameters; alpha=50, beta=3, weights = [1,1], Maximum iteration=100
Table 4.2: Specifications for the multi-area setup
[ ]
0.0 0.1 0.2 0.4 0.145
0.81 0.0 0.3 0.75 0.35
0.65 0.8 0.0 0.32 0.05
0.45 0.25 0.6 0.0 0.12
0.64 0.85 0.05 0.62 0.00
Using the parameters above, the results of table 4.3 were extracted for 10 runs of the algorithms.
For the given parameters, optimal generation dispatch that satisfies the power grid constraints in each area is
The best fitness values for the generation costs and grid losses and their Fitness sum are shown in tables 4.3.
Figure 4.1 Shows the pareto front obtained for the multi-area power grid setup
Pareto Front
MOFDA
555
550
545
Transmission Losses
540
535
530
525
520
515
510
1.17 1.18 1.19 1.2 1.21 1.22
Generation Costs 5
10
[1] Chudy, D., & Leśniak, A., Advantages of Applying Large-scale Energy Storage For Load Generation Balancing, 2021.
[2] Frunt, J., Analysis of balancing requirements in future sustainable and reliable power, 2011.
[3] Fonseca, Carlos M., and Peter J. Fleming., "Multiobjective optimization." Handbook of evolutionary computation 1", 1997.
[4] Han, H., Zhang, L., Yinga, A., & Qiao, J. , Adaptive multiple selection strategy for multi-objective particle swarm optimization.
Information Sciences, 2023, pp. 624, 235-25.
[5] Chakrabarti, A., & Halder, S., Power system analysis: operation and control. PHI Learning Pvt. Ltd.., 2022.
[6] Grainger, J. J., & Stevenson Jr, W. D., Power system analysis. McGraw-Hill series in electrical and computer engineering., 1994.
[7] Wang, X. F., Song, Y., & Irving, M. , Modern power systems analysis. Springer Science & Business Media., 2010.
[8] He, P., Li, M., Zhao, L., Venkatesh, B., & Li, H. (2016)., Water-filling exact solutions for load balancing of smart power grid systems.
IEEE Transactions on Smart Grid, 9(2), ., 2016.
[9] Alagoz, Izzet, et al., ” Turkish Journal of Electrical Power and Energy Systems, vol. 1, no. 1, AVES Publishing Co., May 2021, pp. 1–
11., May 2021.
[10] Al-Shetwi, A. Q. , Sustainable development of renewable energy integrated power sector: Trends, environmental impacts, and
recent challenges. Science of The Total Environment, 153645., 2022.
[11] Karimi, H., Jadid, S., & Makui, A., Stochastic energy scheduling of multi-microgrid systems considering independence
performance index and energy storage systems. Journal of Energy Storage, 33, 102083, 2021.
[12] Moghbeli, M., et al. , “Evaluating the Impact of Energy Efficiency Programs on Generation Maintenance Scheduling.”
International Journal of Electrical Power & Energy Systems, vol. 119, Elsevier BV, July 2020.
[13] Fliege, J., & Werner, R. (2014). , Robust multiobjective optimization & applications in portfolio optimization. European Journal of
Operational Research, pp. 422-433..
[14] Coello, Carlos A. Coello., “Evolutionary Multiobjective Optimization.” Wiley Interdisciplinary Reviews: Data Mining and
Knowledge Discovery, vol. 1, no. 5, Wiley,, July 2011, pp. 444-47.
[15] Shirguppikar, Shailesh S., and Uday A. Dabade. , “Experimental Investigation of Dry Electric Discharge Machining (Dry EDM)
Process on Bright Mild Steel.” Materials Today: Proceedings, vol. 5, no. 2, Elsevier BV , pp. 7595–603., 2018.
[16] Doblas, D., Nebro, A. J., López-Ibáñez, M., García-Nieto, J., & Coello Coello, C. A, Automatic Design of Multi-objective Particle
Swarm Optimizers. In Swarm Intelligence: 13th International Conference, ANTS 2022, Málaga, Spain, November 2, 2022,
October. , pp. 287-308..
[17] Abualigah, L., Shehab, M., Alshinwan, M., Mirjalili, S., & Elaziz, M. A., Ant lion optimizer: a comprehensive survey of its variants
and applications. Archives of Computational Methods in Engineering, 2021.
[18] Mirjalili, S., & Mirjalili, S., Genetic algorithm. Evolutionary Algorithms and Neural Networks: Theory and Applications., 2019.
[19] Karami, H., Anaraki, M. V., Farzin, S., & Mirjalili, S. (2021, June). , Flow Direction Algorithm (FDA): A Novel Optimization Approach
for Solving Optimization Problems. Computers & Industrial Engineering, (2021 June).
[20] Chen, G.; Yi, X.; Zhang, Z.; Wang, H., Applications of multi-objective dimension-based firefly algorithm to optimize the power
losses, emission, and cost in power systems. Appl. Soft Comput., 2018, p. 322–342.
[21] Mirjalili, S., et al., "Ant lion optimizer: a comprehensive survey of its variants and applications. Archives of Computational
Methods in Engineering," 2021.
[22] Meraihi, Y., Gabis, A. B., Mirjalili, S., & Ramdane-Cherif, A. (2021)., "Grasshopper optimization algorithm: theory, variants, and
applications.," 2021.
[23] Meng, Z., Yıldız, B. S., Li, G., Zhong, C., Mirjalili, S., & Yildiz, A. R., "A comparison of metaheuristic multiobjective reliability-based
design optimization.," 2022.
[24] S. J. P. &. S. S. Mirjalili, Multi-objective ant lion optimizer: a multi-objective optimization algorithm for solving engineering
problems. Applied Intelligence,, 2017, pp. 79-95.