You are on page 1of 81

B.

TECH PROJECT REPORT


On
ECONOMIC LOAD DISPATCH USING OPTIMIZATION ALGORITHMS

SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENT FOR THE AWARD OF


THE DEGREE OF
BACHELOR OF TECHNOLOGY IN ELECTRICAL AND ELECTRONICS
ENGINEERING

SUBMITTED BY:
AAKASH KEDARI (BT10EEE001)
AUMKAR BORGAONKAR (BT10EEE018)
SAURABH DICHWALKAR (BT10EEE026)
SACHIN PRAKASH (BT10EEE076)
SHASHANK SAHU (BT10EEE078)
VAIBHAV KUMAR URAON (BT10EEE088)

UNDER THE GUIDANCE OF


DR. V.S. KALE
ASSOCIATE PROFESSOR,
DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING,
V.N.I.T. NAGPUR.

VISVESVARAYA NATIONAL INSTITUTE OF TECHNOLOGY, NAGPUR


(2013 – 2014)

[1]
VISVESVARAYA NATIONAL INSTITUTE OF TECHNOLOGY, NAGPUR
2013 – 2014

CERTIFICATE

This is to certify that the project work entitled “Economic Load Dispatch using
Optimization Algorithms”, is a bona fide work by Mr. Aakash Kedari, Mr. Aumkar
Borgaonkar, Mr. Saurabh Dichwalkar, Mr. Sachin Prakash, Mr. Shashank Sahu and
Mr. Vaibhav Kumar Uraon in the Department of Electrical and Electronics Engineering,
Visvesvaraya National Institute of Technology, Nagpur, in partial fulfillment of the
requirements of the award of the degree of Bachelor of Technology in Electrical and
Electronics Engineering.

Dr. V.S. Kale Dr. M.V. Aware


Mentor and Coordinator Head of Department
Department of Electrical Engg. Department of Electrical Engg.
V.N.I.T. Nagpur V.N.I.T. Nagpur

[2]
VISVESVARAYA NATIONAL INSTITUTE OF TECHNOLOGY, NAGPUR
2013 – 2014

DECLARATION

This is to declare that the project work entitled “Economic Load Dispatch using
Optimization Algorithms”, is a bona fide work performed by us, the below mentioned
students. This project work is being submitted and forwarded in partial fulfillment of the
requirements for the award of the degree of Bachelor of Technology in Electrical and
Electronics Engineering from Visvesvaraya National Institute of Technology,
Nagpur.
To the best of our knowledge this project report has not been submitted to any other
institution or university.

Aakash Kedari Aumkar Borgaonkar Saurabh Dichwalkar


(BT10EEE001) (BT10EEE018) (BT10EEE026)

Sachin Prakash Shashank Sahu Vaibhav Kumar Uraon


(BT10EEE076) (BT10EEE078) (BT10EEE088)

[3]
ACKNOWLEDGEMENT

We take this opportunity to acknowledge with deep sense of gratitude our project
guide Dr. V.S. Kale, Associate Professor, Department of Electrical And Electronics
Engineering, Visvesvaraya National Institute of Technology, Nagpur for his invaluable
guidance, constant motivation, and continuous support which has led to the successful
completion of this project.
We also take this opportunity to pay our sincere thanks to Dr. M.V. Aware, Head of
Department, Electrical Engineering, Visvesvaraya National Institute of Technology,
Nagpur, for providing the requisite facilities needed to complete the project. We would
also like to thank all the teaching and non-teaching staff for supporting us.
We express our thanks to our parents and all our friends for their constant support
and encouragement, which helped us complete this work.

Aakash Kedari
Aumkar Borgaonkar
Saurabh Dichwalkar
Sachin Prakash
Shashank Sahu
Vaibhav Kumar Uraon

[4]
ABSTRACT

For any power system, economic operation is of prime importance in


order to return profit on the capital invested. The operational economics
involving power generation and delivery is mainly affected by cost of power
production and also by the real power lost in the transmission network. Thus
in order to achieve economic operation it is essential to obtain such a
combination of power outputs for each generating unit, so that the total cost
of power generation and the transmission power losses are minimum.
This thesis focuses on determining the optimal or most economic load
sharing by the generating units with the variation in total load demand of the
power system network using various optimization algorithms.
Three optimizing algorithms, viz. Gradient or Iterative Method, Genetic
Algorithm and Firefly Algorithm, are studied and applied on a simple 3-
generator system with negligible transmission losses as well as on a 4-bus
system with significant transmission losses. The total cost of generation for
all the generating units is optimized considering given constraints.

[5]
TABLE OF CONTENTS

(A). Abstract ................................................................................................................................................... 5


(B). List of Figures ....................................................................................................................................... 7

1. Introduction .............................................................................................................................................. 8
Power Generation Cost .......................................................................................................................... 10
Economic Load Dispatch ....................................................................................................................... 12
Optimization .............................................................................................................................................. 15
Mathematical Modelling........................................................................................................................ 18
The Transmission-Loss Equation ...................................................................................................... 23

2. Gradient Method ...................................................................................................................................29


Steps Involved in Gradient Method .................................................................................................. 30
Implementation ........................................................................................................................................ 32

3. Genetic Algorithm ................................................................................................................................33


Introduction ............................................................................................................................................... 34
Flowchart of Genetic Algorithm ......................................................................................................... 35
Algorithm .................................................................................................................................................... 36
Genetic Algorithm Terminology......................................................................................................... 37
Working Mechanism of Genetic Algorithm .................................................................................... 40
Parameter Settings of Genetic Algorithm ....................................................................................... 45
Constraint Handling in Genetic Algorithm ..................................................................................... 46
Advantages/Disadvantages of Genetic Algorithm ...................................................................... 49
Implementation ........................................................................................................................................ 50

4. Firefly Algorithm ..................................................................................................................................51


Introduction ............................................................................................................................................... 52
Light Intensity and Attractiveness .................................................................................................... 53
Algorithm .................................................................................................................................................... 56
Firefly Algorithm Variants ................................................................................................................... 57
Implementation ........................................................................................................................................ 60

5. Results ........................................................................................................................................................61
Simple 3-Generator System ................................................................................................................. 62
4-Bus System ............................................................................................................................................. 73

Conclusion .....................................................................................................................................................78
References .....................................................................................................................................................80

[6]
LIST OF FIGURES

S. No Figure Page

1.1 Heat Rate vs. Generator Output 10


1.2 Optimization Problem 15
1.3 The example four-bus system 23
2.1 Implementation of Gradient Method 32
3.1 Survival of the fittest 34
3.2 Flow Chart for Genetic Algorithm 35
3.3 Roulette Wheel Selection 42
3.4 Single-point crossover 43
3.5 Bit-flip mutation 44
3.6 Implementation of Genetic Algorithm using OptimTool 50
5.1 Load sharing for different plant loads (Gradient Method – Neglecting Losses) 63
5.2 Load sharing for different plant loads (Genetic Algorithm – Neglecting Losses) 64
5.3 Error Variation with Population 66
5.4 Error Variation with No. of Generations 66
5.5 Error Variation with Crossover Fraction 67
5.6 Error Variation with Mutation Rate 67
5.7 Load sharing for different plant loads (Firefly Algorithm – Neglecting Losses) 68
5.8 Error Variation with No. of Fireflies 70
5.9 Error Variation with No. of Generations 70
5.10 Error Variation with Alpha 71
5.11 Error vs. mutation probability Error Variation with Gamma 71
5.12 4-Bus System 72

[7]
CHAPTER 1
INTRODUCTION

[8]
[9]
1.1 POWER GENERATION COST

A generating unit consists of a boiler, steam turbine and a generator. The


total cost of generation includes fuel, labor and maintenance cost but for
simplicity, only variable costs are accounted which include mainly the fuel
cost. The fuel cost is important in case of thermal as well as nuclear power
plants.

The shape of the generating cost curve can be understood by the heat
rate curve. The heat-rate curve denotes the thermal energy supplied by
burning the fuel per 𝑀𝑊ℎ𝑟 of electric energy.

The input heat energy rate, 𝐹𝑖 (𝑃𝑔𝑖 ) can be found by formula,

𝐹𝑖 (𝑃𝑔𝑖 ) = 𝑃𝑔𝑖 ∗ 𝐻𝑖 (𝑃𝑔𝑖 ) … (1.1.1)

where, 𝑃𝑔𝑖 is the three phase power in 𝑀𝑊 by 𝑖 𝑡ℎ generator


𝐻𝑖 (𝑃𝑔𝑖 ) is the heat-rate in 𝑀𝐾𝐶𝑎𝑙/𝑀𝑊ℎ𝑟
𝐹𝑖 (𝑃𝑔𝑖 ) is the input energy rate in 𝑀𝐾𝐶𝑎𝑙/ℎ𝑟

If we assume the cost of fuel as 𝐾 ₹/𝑀𝐾𝐶𝑎𝑙, the input fuel cost 𝐶𝑖 (𝑃𝑔𝑖 ) is

𝐶𝑖 (𝑃𝑔𝑖 ) = 𝐾 ∗ 𝐹𝑖 (𝑃𝑔𝑖 ) = 𝐾 ∗ 𝑃𝑔𝑖 ∗ 𝐻𝑖 (𝑃𝑔𝑖 ) … (1.1.2)

Figure 1.1: Heat Rate vs. Generator Output

[10]
𝐹𝑖𝑔. 1.1 shows a typical 𝐻𝑒𝑎𝑡 𝑅𝑎𝑡𝑒 𝑣𝑠. 𝐺𝑒𝑛𝑒𝑟𝑎𝑡𝑜𝑟 𝑂𝑢𝑡𝑝𝑢𝑡 curve for a single
generating unit.
The curve can be approximated as

𝛼𝑖
𝐻𝑖 (𝑃𝑔𝑖 ) = + 𝛽𝑖 + 𝛾𝑖 𝑃𝑔𝑖 … (1.1.3)
𝑃𝑔𝑖

Thus the generating cost function can be derived as

𝐶𝑖 (𝑃𝑔𝑖 ) = 𝐾 ∗ 𝑃𝑔𝑖 ∗ 𝐻𝑖 (𝑃𝑔𝑖 ) = 𝑎𝑖′ 𝑃𝑔𝑖


2
+ 𝑏𝑖 𝑃𝑔𝑖 + 𝑑𝑖 … (1.1.4)

As a standard practice, the above function is also written as

1
𝐶𝑖 (𝑃𝑔𝑖 ) = 𝑎𝑖 𝑃𝑔𝑖 2 + 𝑏𝑖 𝑃𝑔𝑖 + 𝑑𝑖 … (1.1.5)
2

For a system of ‘n’ generators, the total cost of power generation is given
by the summation of the costs of individual generating units.

𝐶𝑇𝑜𝑡𝑎𝑙 = ∑ 𝐶𝑖 … (1.1.5)
𝑖=1

[11]
1.2 ECONOMIC LOAD DISPATCH

An early attempt at economic load dispatch called for supplying power


from only the most efficient plant at light loads. As the load is increased
the most efficient plant will supply the load until its maximum capacity of
generation is reached. The remaining load will then be supplied by the
next most efficient plant.
However, this method fails even without considering losses.

Thus a new approach is needed to determine the economic sharing of the


total load by different generating units.
Now we have to minimize the total cost of power generation, i.e.

𝐶𝑡𝑜𝑡𝑎𝑙 = ∑ 𝐶𝑖 … (1.2.1)
𝑖=1

In addition, this optimization is constrained by the fact that the total power
generated by all the units should be equal to the sum of total load demand
of the system and the transmission power loss.

If we do not consider the transmission loss, the equality constraint can be


mathematically expressed as

∑ 𝑃𝑔𝑖 − 𝑃𝐷 = 0 … (1.2.2)
𝑘=1

The given problem defined by equations can now be solved by the method
of Lagrange multipliers.

We define the Lagrangian as

𝑛 𝑛

𝐿 = ∑ 𝐶𝑖 − 𝜆 [∑ 𝑃𝑔𝑖 − 𝑃𝐷 ] … (1.2.3)
𝑖=1 𝑘=1

where, 𝜆 is Lagrange multiplier.

[12]
Minimisation is achieved by the condition,

𝜕𝐿
=0 … (1.2.4)
𝜕𝑃𝑔𝑖

The result obtained can be written as

𝜕𝐶𝑖
=𝜆 … (1.2.5)
𝜕𝑃𝑔𝑖

𝜕𝐶𝑖
where, is the incremental cost of the 𝑖 𝑡ℎ generator in ₹/𝑀𝑊ℎ𝑟.
𝜕𝑃𝑔𝑖

If we consider power loss due to transmission network, the equality


constraint can be modified as

𝑃𝐷 + 𝑃𝐿 = ∑ 𝑃𝑔𝑖 … (1.2.6)
𝑘=1

where, 𝑃𝐿 is the total power loss in the transmission network.

A detailed procedure for determining the transmission loss as a function


of power generated by different generating units is discussed later in the
thesis.

For now, it is sufficient to know that the transmission network power loss
can be expressed as

𝑃𝐿 = 𝐹(𝑃𝑔1 , 𝑃𝑔2, 𝑃𝑔3 … 𝑃𝑔𝑛 ) … (1.2.7)

The Lagrangian in this case is defined as

𝑛 𝑛

𝑳 = ∑ 𝐶𝑖 − 𝜆 [∑ 𝑃𝑔𝑖 − 𝑃𝐷 − 𝑃𝐿 (𝑃𝑔1 , 𝑃𝑔2 , 𝑃𝑔3 , … 𝑃𝑔𝑛 )] … (1.2.8)


𝑖=1 𝑘=1

[13]
Minimisation of the above Lagrangian can be achieved by

𝜕𝐿
=0 … (1.2.9)
𝜕𝑃𝑔𝑖

The result can be obtained as

𝜕𝐶𝑖 𝜕𝑃𝐿
= 𝜆 [1 − ] … (1.2.10)
𝜕𝑃𝑔𝑖 𝜕𝑃𝑔𝑖

The above expression can be rewritten as

𝜕𝐶𝑖
𝜕𝑃𝑔𝑖
=𝜆 … (1.2.11)
𝜕𝑃𝐿
1−
𝜕𝑃𝑔𝑖

1
where, 𝐿𝑖 = 𝜕𝑃 is the penalty factor for 𝑖 𝑡ℎ generator.
1− 𝐿
𝜕𝑃𝑔𝑖

𝐸𝑞𝑢𝑎𝑡𝑖𝑜𝑛𝑠 (1.2.5) and (1.2.11) define the mathematically obtained


conditions for economic load dispatch in a power system with multiple
generating units.

[14]
1.3 OPTIMIZATION

Optimization is the process of finding the highest performance expressed


as a function of multiple independent parameters under the given
constraints by maximising desired factors and minimising undesired ones.

The function which is to be minimised or maximised is called the objective


function or the fitness function. This same function is used to measure the
performance of all the feasible solutions bound by different constraints.
The function value obtained by substituting a solution in the fitness
function is called fitness (or cost) of the solution.

Optimisation is the process of determining a solution with optimum fitness,


i.e. highest fitness in case where objective function is to be maximised
and least fitness in case where objective function to be minimised.

A simple optimisation problem is illustrated below. Consider graph of a


paraboloid given by

𝑧 = 𝑓(𝑥, 𝑦) = 4 − (𝑥 2 + 𝑦 2 ) … (1.3.1)

Figure 1.2: Optimization Problem

The global maximum at (0,0,4) is indicated by a red dot and it is the


optimum solution for the given function.

[15]
Depending upon the number of objective function to be optimized, an
optimization problem can be classified as:

 Single Objective Optimization

If there is only a single objective for optimization, the problem is a single


objective optimization problem. Single objective optimization problems
are relatively simple to solve and only information related to the
constraints on variables is required.

 Multi-Objective Optimization

If there are multiple objective functions to be optimized, the problem is a


multi-objective optimization problem. Multi-objective optimization
problems are comparatively complex to solve and require certain higher
level information for decision making apart from basic information related
to the constraints.

There are two approaches for solving a multi-objective optimization


problem

o The first approach is to express the multi-objective function as a


single objective functions by weighted sum method. Each objective
function is weighted according to some higher level information in
the decision making process. Thus in this approach, the higher level
information is used before optimization.

o The second approach is to optimize all the functions simultaneously


for any solution and then obtain a set of optimum solutions. Using
some higher level information, the most preferred optimum solution
is determined. It can be noted that in this approach, the higher level
information is used after optimization.

[16]
An optimization problem may belong to one of the following types:

 Unconstrained Optimization

This type of optimization is a constraint free optimization, i.e. the variables


may assume any random values from their domain. The variables are not
constrained by equalities or inequalities.

 Constrained Optimization

In this type of optimization problems a function 𝑓(𝑥) is to be minimized or


maximized subject to constraints 𝛷(𝑥).

A general constrained optimization problem may be written as follows

𝑀𝑎𝑥 𝑓(𝑥)
𝑆𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 𝑔𝑖 (𝑥) = 𝑐𝑖 𝑓𝑜𝑟 𝑖 = 1, 2, … … … , 𝑛 (𝐸𝑞𝑢𝑎𝑙𝑖𝑡𝑦 𝐶𝑜𝑛𝑠𝑡𝑟𝑎𝑖𝑛𝑡𝑠)
𝑆𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 ℎ𝑗 (𝑥) ≤ 𝑑𝑖 𝑓𝑜𝑟 𝐼 = 1, 2, … … … , 𝑛 (𝐼𝑛𝑒𝑞𝑢𝑎𝑙𝑖𝑡𝑦 𝐶𝑜𝑛𝑠𝑡𝑟𝑎𝑖𝑛𝑡𝑠)

Where, 𝑥 is a vector residing in n-dimensional space, 𝑓(𝑥) is a scalar


valued objective function.

[17]
1.4 MATHEMEMATICAL MODELLING

To find the economically optimum load dispatch solution it is required to


formulate the economic load dispatch problem into an optimisation
problem.

 Defining System Dimensions and System Variables

Firstly, we define our variables which form a ‘𝑛’ dimensional column


vector, 𝑛 being the total number of generating units in the power system.
The cost of generation is obtained as a quadratic function of power output
of each generating unit. Thus the ‘𝑛’ variables are basically the power
outputs of the ‘𝑛’ generating units.
Hence 𝑃𝑔1 , 𝑃𝑔2 , 𝑃𝑔3 , … , 𝑃𝑔𝑛 are the ‘𝑛’ variables under consideration.

 Formulating Physical Constraints

As the variables represent an electrical quantity, there are some practical


limitations on the values the variables may assume:

I. The power generated will have a maximum value depending upon the
thermal limits on the turbine generating unit.

II. Also due to the boiler and other thermodynamic considerations the
power generated by each generating unit also has a minimum
threshold value.

[18]
From the above statements, the power generated by 𝑖 𝑡ℎ generator in the
system, represented by 𝑃𝑔𝑖 will have inequality constraints as follows:

𝑃𝑔𝑖𝑚𝑖𝑛 ≤ 𝑃𝑔𝑖 ≤ 𝑃𝑔𝑖𝑚𝑎𝑥 … (1.4.1)

I. If transmission losses are ignored, the total power generated by the ‘𝑛’
generator system should be equal to the power delivered to the
connected load. Consider 𝑃𝐷 as the total power demand.
The equality constraint can be given as follows

𝑃𝐷 = ∑ 𝑃𝑔𝑖 … (1.4.2)
𝑘=1

II. If transmission losses are considered, the total power generated by


the ‘𝑛’ generator system should be sufficient to meet the power
demand of the system and the transmission power loss.

Consider 𝑷𝑫 as the power demand and 𝑷𝑳 as the transmission power loss.

The equality constraint for the power system with transmission losses is
given as follows
𝑛

𝑃𝐷 + 𝑃𝐿 = ∑ 𝑃𝑔𝑖 … (1.4.3)
𝑘=1

It can be noted from above equations, the constraints are either linear or
non-linear.
The inequality constraints of equation are linear inequalities. Also the
equality constraint of equation is a linear equality.
However, the equality constraint of equation is a non-linear equality as the
function 𝑷𝑳 is not a linear function.

[19]
 Defining Objective or Fitness Function

I. In case where transmission losses are not considered, the necessary


condition for economic load dispatch is given by equation

𝜕𝐶𝑖
=𝜆 … (1.4.4)
𝜕𝑃𝑔𝑖

By substituting the cost function for 𝑖 𝑡ℎ generating unit, the result can
be obtained as

𝜕 1
( 𝑎𝑖 𝑃𝑔𝑖 2 + 𝑏𝑖 𝑃𝑔𝑖 + 𝑑𝑖 ) = 𝑎𝑖 𝑃𝑔𝑖 + 𝑏𝑖 = 𝜆𝑖 … (1.4.5)
𝜕𝑃𝑔𝑖 2

where, 𝜆𝑖 is the incremental cost for 𝑖 𝑡ℎ generating unit.

It is clear from above expression that economic dispatch is obtained


when the incremental fuel costs of all the generating units are equal.

𝜆1 = 𝜆2 = ⋯ = 𝜆𝑛 … (1.4.6)

The above objective can also be implemented by minimizing the


difference between the incremental costs of different generating units.
Thus, the proposed objective function is as follows

𝑓(𝑃𝑔1 , 𝑃𝑔2 , 𝑃𝑔3 … 𝑃𝑔𝑛 ) = ∑(𝜆𝑖−1 − 𝜆𝑖 )2 … (1.4.7)


𝑖=2

From the above objective function, it may be noted that an optimum


solution is obtained when incremental costs of all the ‘n’ generating
units are equal. The difference is squared in order to avoid error in
fitness value due to negative difference.

[20]
II. In case where transmission power losses are also considered, the
necessary condition for economic load dispatch is given by equation

𝜕𝐶𝑖
𝜕𝑃𝑔𝑖
𝜕𝑃
=𝜆 … (1.4.8)
1− 𝐿
𝜕𝑃𝑔𝑖

By substituting the transmission power loss as a function of output


power generated by all the generating units, penalty factors for each
generating unit can be calculated.
Also by substituting cost function for 𝑖 𝑡ℎ generating unit, incremental
cost for that generating unit can be determined.

The condition for economic load dispatch considering line losses can
be given as follows

𝐿1 × 𝜆1 = 𝐿2 × 𝜆2 = ⋯ = 𝐿𝑛 × 𝜆𝑛 … (1.4.9)

The above objective can also be implemented by minimizing the


difference between the products of incremental cost and
corresponding penalty factor of each generating unit.

Thus the proposed objective function is as follows

𝑓(𝑃𝑔1 , 𝑃𝑔2 , 𝑃𝑔3 … 𝑃𝑔𝑛 ) = ∑(𝐿𝑖−1 × 𝜆𝑖−1 − 𝐿𝑖 × 𝜆𝑖 )2 … (1.4.10)


𝑖=2

However, the above function defines only one objective of the


optimization problem. It has been observed that using non-linear
constraints in a program is more time consuming. Thus it is suitable to
define the non-linear constraints as the part of the objective function.

[21]
As it can be seen from the non-linear constraint equation we define the
following function for optimization:

𝑃𝐷 + 𝑃𝐿 − ∑ 𝑃𝑔𝑖 = 0 … (1.4.11)
𝑘=1

where, 𝑃𝐿 is expressed in as a function of outputs delivered by all the


generating units.

[22]
1.5 THE TRANSMISSION-LOSS EQUATION

Let us consider a simple system consisting of two generating plants and


two loads with the transmission network represented by its bus impedance
matrix. The derivation is undertaken in two stages. In the first stage we
apply a power-invariant transformation to 𝑍𝑏𝑢𝑠 of the system in order to
express the system loss in terms of only generator currents. In the second
stage we transform the generator currents into the power outputs of the
plants which leads to the desired form of the loss equation for a system
with any number 𝐾 of the sources.
We begin the formulation using, as example, the four bus system of
𝐹𝑖𝑔. 1.3 in which nodes 1 and 2 are generator buses, nodes 3 and 4 are
load buses, and node 𝑛 is the system neutral. The current injections 𝐼3
and 𝐼4 at the load buses are combined together to form the composite
system load 𝐼𝐷 given by

𝐼3 + 𝐼4 = 𝐼𝐷 … (1.5.1)

Assuming that each load is a constant fraction of the total load, we set

𝐼3 = 𝑑3 𝐼𝐷 𝑎𝑛𝑑 𝐼4 = 𝑑4 𝐼𝐷 … (1.5.2)

from which it follows that

𝑑3 + 𝑑4 = 1 … (1.5.3)

By adding more terms, eqns. (1.5.1) through (1.5.3) can be generalized


to systems with more than two load buses.

Figure 1.3: The example four-bus system

[23]
We now choose node 𝑛 of 𝐹𝑖𝑔. 1.3 as reference for the nodal equations

𝑉1𝑛 𝑍11 𝑍12 𝑍13 𝑍14 𝐼1


𝑉 𝑍 𝑍22 𝑍23 𝑍24 𝐼2
[ 2𝑛 ] = [ 21 ][ ] … (1.5.4)
𝑉3𝑛 𝑍31 𝑍32 𝑍33 𝑍34 𝐼3
𝑉4𝑛 𝑍41 𝑍42 𝑍43 𝑍44 𝐼4

Double-subscript notation emphasizes the fact that the bus voltages are
measured with respect to reference node 𝑛. Expanding the first row of
eqn. (1.5.4) gives

𝑉1𝑛 = 𝑍11 𝐼1 + 𝑍12 𝐼2 + 𝑍13 𝐼3 + 𝑍14 𝐼4 … (1.5.5)

Substituting in this equation for 𝐼3 = 𝑑3 𝐼𝐷 and 𝐼4 = 𝑑4 𝐼𝐷 , then solving the


resultant equation for 𝐼𝐷 yield

−𝑍11 −𝑍12 −𝑍11


𝐼𝐷 = 𝐼1 + 𝐼2 + 𝐼0 … (1.5.6)
𝑑3 𝑍13 + 𝑑4 𝑍14 𝑑3 𝑍13 + 𝑑4 𝑍14 𝑑3 𝑍13 + 𝑑4 𝑍14 𝑛

in which the current 𝐼𝑛0 , called the no-load current, is simply

𝑉1𝑛
𝐼𝑛0 = − … (1.5.7)
𝑍11

We shall soon see the physical meaning of 𝐼𝑛0 , which is a constant current
injected into node 𝑛 of the system whenever 𝑉1𝑛 is constant. By denoting

𝑍11 𝑍12
𝑡1 = 𝑎𝑛𝑑 𝑡2 = … (1.5.8)
𝑑3 𝑍13 + 𝑑4 𝑍14 𝑑3 𝑍13 + 𝑑4 𝑍14

We may simplify the coefficients of eqn. (1.5.6), which then becomes

𝐼𝐷 = −𝑡1 𝐼1 − 𝑡2 𝐼2 − 𝑡1 𝐼𝑛0 … (1.5.9)

[24]
Substituting in eqn. (1.5.2) for 𝐼𝐷 from eqn. (1.5.9) yields

𝐼3 = −𝑑3 𝑡1 𝐼1 − 𝑑3 𝑡2 𝐼2 − 𝑑3 𝑡1 𝐼𝑛0 … (1.5.10)

𝐼4 = −𝑑4 𝑡1 𝐼1 − 𝑑4 𝑡2 𝐼2 − 𝑑4 𝑡1 𝐼𝑛0 … (1.5.11)

We may regard eqn. (1.5.10) and (1.5.11) as defining the transformation


𝑪 of “old” currents 𝐼1 , 𝐼2 , 𝐼3 𝑎𝑛𝑑 𝐼4 to set of “new” currents 𝐼1 , 𝐼2 , 𝑎𝑛𝑑 𝐼𝑛0 , just
as in following eqn.

𝐼1 1 ∙ ∙
𝐼1 𝐼1
𝐼 ∙ 1 ∙
[ 2] = [ ] 𝐼 = 𝑪 [ 𝐼2 ] … (1.5.12)
𝐼3 −𝑑3 𝑡1 −𝑑3 𝑡2 −𝑑3 𝑡1 [ 20 ]
𝐼 𝐼𝑛0
𝐼4 −𝑑4 𝑡1 −𝑑4 𝑡2 −𝑑4 𝑡1 𝑛

As a result of eqn. (1.5.12), the expression for the real power loss of the
network takes the form as


𝐼1
𝑃𝐿 = [𝐼1 0 ][𝑪𝑇 𝑹 ∗] 𝐼
𝐼2 𝐼𝑛 𝑏𝑢𝑠 𝑪 [ 2 ] … (1.5.13)
𝐼𝑛0

Where 𝑹𝑏𝑢𝑠 is the symmetrical real part of 𝒁𝑏𝑢𝑠 of eqn. (1.5.4). Because
of the power-invariant nature of transformation 𝑪, eqn. (1.5.13) fully
represents the real power loss of the system in terms of the generator
currents 𝐼1 and 𝐼2 and the no-load current 𝐼𝑛0 . By fixing upon bus 1 as the
slack bus in power-flow studies of the systems, the current 𝐼𝑛0 = −𝑉1𝑛 ⁄𝑍11
becomes a constant complex number, which leaves 𝐼1 and 𝐼2 as the only
variables in the loss expression of eqn. (1.5.13).

If all load and generation were removed from the system and the
voltage 𝑉1𝑛 were applied to bus 1, only the current 𝐼𝑛0 would flow through
the shunt connections to node 𝑛. This current is normally small and
relatively constant since it is determined by Thevénin impedance 𝑍11 ,
which includes the high impedances of paths associated with line-
charging and transformer magnetizing currents but not load.

[25]
At each generator bus we now assume that the reactive power 𝑄𝑔𝑖 is a
constant fraction 𝑠𝑖 of the real power 𝑃𝑔𝑖 over the time period of interest.
This is equivalent to assuming that each generator operates at a constant
power factor over the same period, and so we write

𝑃𝑔1 + 𝑗𝑄𝑔1 = (1 + 𝑗𝑠1 )𝑃𝑔1 ; 𝑃𝑔2 + 𝑗𝑄𝑔2 = (1 + 𝑗𝑠2 )𝑃𝑔2 … (1.5.14)

Where 𝑠1 = 𝑄𝑔1 ⁄𝑃𝑔1 and 𝑠2 = 𝑄𝑔2 ⁄𝑃𝑔2 are real numbers. The output
currents from the generators are then given by

(1 − 𝑗𝑠1 ) (1 − 𝑗𝑠2 )
𝐼1 = 𝑃𝑔1 = 𝛼1 𝑃𝑔1 ; 𝐼2 = 𝑃𝑔2 = 𝛼2 𝑃𝑔2 … (1.5.15)
𝑉1∗ 𝑉2∗

In which 𝛼1 and 𝛼2 have obvious definitions. From eqn. (1.5.15) the


currents 𝐼1 , 𝐼2 𝑎𝑛𝑑 𝐼𝑛0 can be expressed in matrix form by

𝐼1 𝛼1 ∙ ∙ 𝑃𝑔1
[ 𝐼2 ] = [ ∙ 𝛼2 ∙ ] [𝑃𝑔2 ] … (1.5.16)
𝐼𝑛0 ∙ ∙ 𝐼𝑛0 1

And substituting from this equation into eqn. 1.5.13, we obtain

𝑃𝑔1 𝑇 𝛼1 ∙ ∙ 𝛼1 ∙ ∙ ∗ 𝑃𝑔1 ∗
𝑃𝐿 = [𝑃𝑔2 ] [ ∙ 𝛼2 ∙ ] 𝑪𝑇 𝑹𝑏𝑢𝑠 𝑪∗ [ ∙ 𝛼2 ∙ ] [𝑃𝑔2 ] … (1.5.17)
1 ∙ ∙ 𝐼𝑛0 ∙ ∙ 𝐼𝑛0 1

𝑇𝛼

We recall that the transpose of a product of matrices equals the reverse-


order product of their transposes. For instance, if there are three
matrices 𝑨, 𝑩 𝑎𝑛𝑑 𝑪, we have (𝑨𝑩𝑪)𝑇 = 𝑪𝑇 𝑩𝑇 𝑨𝑇 , and taking the complex
conjugate of each side gives (𝑨𝑩𝑪)𝑇∗ = 𝑪𝑇∗ 𝑩𝑇∗ 𝑨𝑇∗ . Thus, we can show
that the matrix 𝑻𝛼 of eqn. (1.5.17) has the convenient property of being
equal to the complex conjugate of its own transpose. A matrix with this
characteristic is called hermitian.

[26]
Consequently, adding 𝑻𝛼 to 𝑻∗𝛼 cancels out the imaginary parts of the off-
diagonal elements, and we obtain twice the symmetrical real part of 𝑻𝛼 ,
which we denote by

𝐵11 𝐵12 𝐵10 ⁄2


𝑻𝛼 + 𝑻∗𝛼
[ 𝐵21 𝐵22 𝐵20 ⁄2] = … (1.5.18)
2
𝐵10 ⁄2 𝐵20 ⁄2 𝐵00

To conform to industry practices, we use the symbol 𝐵10 ⁄2 ,


𝐵20 ⁄2 𝑎𝑛𝑑 𝐵00 here. Adding eqn. (1.5.17) to its complex conjugate and
applying eqn. (1.5.18) to the result give

𝐵11 𝐵12 𝐵10 ⁄2 𝑃𝑔1


𝑃𝐿 = [𝑃𝑔1 𝑃𝑔2 1] [ 𝐵21 𝐵22 𝐵20 ⁄2] [𝑃𝑔2 ] … (1.5.19)
𝐵10 ⁄2 𝐵20 ⁄2 𝐵00 1

In which 𝐵12 equals 𝐵21 . Expanding eqn. (1.5.19) by row-column


multiplication gives

2 2 2

𝑃𝐿 = ∑ ∑ 𝑃𝑔𝑖 𝐵𝑖𝑗 𝑃𝑔𝑗 + ∑ 𝐵𝑖0 𝑃𝑔𝑖 + 𝐵00 … (1.5.20)


𝑖=1 𝑗=1 𝑖=1

While we can rearrange into the equivalent form

𝐵 𝐵12 𝑃𝑔1 𝐵
𝑃𝐿 = [𝑃𝑔1 𝑃𝑔2 ] [ 11 ] [ ] + [𝑃𝑔1 𝑃𝑔2 ] [ 10 ] + 𝐵00 … (1.5.21)
𝐵21 𝐵22 𝑃𝑔2 𝐵20

Or the more general vector-matrix formulation

𝑃𝐿 = 𝑷𝑇𝐺 𝑩𝑷𝐺 + 𝑷𝑇𝐺 𝑩0 + 𝐵00 … (1.5.22)

[27]
When the system has 𝐾 sources rather than just two as in our example,
the vectors and matrices of eqn. (1.5.22) have 𝐾 rows and/or 𝐾 columns
and the summations of eqn. (1.5.20) range from 1 to 𝐾 to yield the general
form of the transmission-loss equation.

𝐾 𝐾 𝐾

𝑃𝐿 = ∑ ∑ 𝑃𝑔𝑖 𝐵𝑖𝑗 𝑃𝑔𝑗 + ∑ 𝐵𝑖0 𝑃𝑔𝑖 + 𝐵00 … (1.5.23)


𝑖=1 𝑗=1 𝑖=1

The 𝐵 terms are called loss coefficients or 𝐵-coefficients and the 𝐾 × 𝐾


square matrix 𝑩, which is always symmetrical, is known simply as the 𝑩-
matrix.

For the system for which they are derived 𝐵-coefficients yield the exact
loss only for the particular load and operating conditions as 𝑃𝑔1 and 𝑃𝑔2
vary, only insofar as bus voltages at the loads and plants maintain
constant magnitude and plant power factors remain constant. Fortunately,
the use of constant values for the loss coefficients yields reasonably
accurate results when the coefficients are calculated for some average
operating conditions and if extremely wide shifts of load between plants
or in total load do not occur. In practice, large systems are economically
loaded using different sets of loss coefficients calculated for various load
conditions.

[28]
CHAPTER 2
GRADIENT METHOD

[29]
2.1 STEPS INVOLVED IN GRADIENT METHOD

Following steps are involved in solving the economic load dispatch


problem using Gradient Method:

Step 1
Specify the system load level 𝑃𝐷 = ∑𝑚
𝑖=1 𝑃𝑔𝑖

Step 2
For the first iteration, choose initial values for the system 𝜆.

Step 3
Substitute the value of 𝜆 into the following equation and solve the resultant
system of linear simultaneous equations for the values of 𝑃𝑔𝑖 .

𝜆 − 𝑏𝑖
𝑃𝑔𝑖 =
𝑎𝑖

Step 4
Compare the quantity (∑𝑚
𝑖=1 𝑃𝑔𝑖 ) with 𝑃𝐷 to check the power balance of the
equation

𝑃𝐷 = ∑ 𝑃𝑔𝑖
𝑖=1

If power balance is not achieved within a specified tolerance, update the


system 𝜆 by setting

𝜆(𝑘+1) = 𝜆(𝑘) + Δ𝜆(𝑘)

where, the formula for the increment Δ𝜆(𝑘) is

(𝑘)
𝑃𝐷 − ∑𝑚𝑖=1 𝑃𝑔𝑖
Δ𝜆(𝑘) =
1
∑𝑚𝑖=1 𝑎
𝑖

[30]
The superscript (𝑘 + 1) indicates the next iteration being started and
superscript (𝑘) indicates the iteration just completed.

Step 5
Return to Step 3 and continue the calculations of Steps 3 and 4 until final
convergence is achieved.

The final results from the above procedure determine both the system 𝜆
and the economic dispatch output of each generating unit for the specified
level of system load.

[31]
2.2 IMPLEMENTATION

Figure 2.1: Implementation of Gradient Method

A spreadsheet is created in Microsoft Excel and the economic load


dispatch problem is formulated. 𝑭𝒊𝒈. 𝟐. 𝟏 shows the spreadsheet designed
for implementation of Gradient method. In order to find optimum
combination of power shared by the three generators, for a particular
value of load demand, the load demand cell 𝑷𝑫 value needs to be
changed accordingly. The spreadsheet automatically performs
calculations and displays results.

[32]
CHAPTER 3
GENETIC ALGORITHM

[33]
3.1 INTRODUCTION

The genetic algorithm (GA) is an optimization and search technique based


on the principles of genetics and natural selection. A GA allows a
population composed of many individuals to evolve under specified
selection rules to a state that maximizes the “fitness” (i.e., minimizes the
cost function). The method was developed by John Holland (1975) over
the course of the 1960s and 1970s and finally popularized by one of his
students, David Goldberg, who was able to solve a difficult problem
involving the control of gas-pipeline transmission for his dissertation
(Goldberg, 1989). Holland’s original work was summarized in his book.
He was the first to try to develop a theoretical basis for GAs through his
schema theorem. The work of De Jong (1975) showed the usefulness of
the GA for function optimization and made the first concerted effort to find
optimized GA parameters. Goldberg has probably contributed the most
fuel to the GA fire with his successful applications and excellent book
(1989). Since then, many versions of evolutionary programming have
been tried with varying degrees of success.

Figure 3.1: Survival of the fittest

[34]
3.2 FLOWCHART OF GENETIC ALGORITHM

Start Stop

Define test functions and


enter test function
parameters
Display output

Set stopping criteria

Yes
Define GA parameters and Is the stopping
create initial population Increment iteration count criteria
satisfied?

Evaluate the fitness values

Sort the fitness and the


associated parameters
Sort the fitness and the
associated parameters

Re-evaluate the fitness values


Select pairs for mating

Perform crossover Mutate the population

Figure 3.2: Flow Chart for Genetic Algorithm

[35]
3.3 ALGORITHM

𝑰𝒏𝒑𝒖𝒕: Define the fitness function.


Define the GA Parameters:
Population
Generations
Crossover Fraction
Elite Count
Mutation Rate
Set the stopping criteria

𝑰𝒏𝒊𝒕𝒊𝒂𝒍𝒊𝒛𝒂𝒕𝒊𝒐𝒏
Step 1 Generate the initial population randomly
Step 2 Set iteration count = 1
𝐸𝑣𝑎𝑙𝑢𝑎𝑡𝑖𝑜𝑛
Step 3 Evaluate the fitness of each chromosome in the population
Step 4 Sort the fitness and associated parameters
𝐸𝑙𝑖𝑡𝑖𝑠𝑚 𝑏𝑎𝑠𝑒𝑑 𝑠𝑒𝑙𝑒𝑐𝑡𝑖𝑜𝑛
Step 5 Select the number of best solutions according to the elite count
and save them in a new population
𝐶𝑟𝑜𝑠𝑠𝑜𝑣𝑒𝑟
Step 6 Randomly select pairs of chromosomes for mating and
perform crossover
𝑀𝑢𝑡𝑎𝑡𝑖𝑜𝑛
Step 7 Mutate a chromosome from the population according to the
Mutation rate to generate a new chromosome
𝐿𝑜𝑜𝑝𝑖𝑛𝑔 𝑢𝑛𝑡𝑖𝑙 𝑠𝑡𝑜𝑝𝑝𝑖𝑛𝑔 𝑐𝑟𝑖𝑡𝑒𝑟𝑖𝑎 𝑖𝑠 𝑠𝑎𝑡𝑖𝑠𝑓𝑖𝑒𝑑
Step 8 If stopping criteria is satisfied
i. Then go to step 11
ii. Else go to step 9
Step 9 Increase iteration count
Step 10 Go to 𝑆𝑡𝑒𝑝 3
Step 11 Display the results

[36]
3.4 GENETIC ALGORITHM TERMINOLOGY

The most important components in a GA consist of:


1. Representation (definition of individuals)
2. Evaluation function (or fitness function)
3. Population
4. Parent selection mechanism
5. Variation operators (crossover and mutation)
6. Survivor selection mechanism (replacement)

 Representation

An individual is characterized by a set of parameters called as 𝐺𝑒𝑛𝑒𝑠. All


kinds of alphabets can be used to denote a gene (i.e. alphabets, numbers
etc.), but generally a binary digit is preferred. A value of a gene is called
an 𝑎𝑙𝑙𝑒𝑙𝑒. These 𝐺𝑒𝑛𝑒𝑠 are concatenated to form a string called
as 𝐶ℎ𝑟𝑜𝑚𝑜𝑠𝑜𝑚𝑒. Order of Genes on a chromosome can be important.
𝐶ℎ𝑟𝑜𝑚𝑜𝑠𝑜𝑚𝑒𝑠 combined together form the 𝐺𝑒𝑛𝑜𝑡𝑦𝑝𝑒. Genotype contains
all the information to construct an organism called the 𝑃ℎ𝑒𝑛𝑜𝑡𝑦𝑝𝑒.

 Variation Operators

The role of variation operators is to create new individuals from old ones.
Variation operators form the implementation of the elementary steps with
the search space.

 Mutation Operator

A unary variation operator is called 𝑚𝑢𝑡𝑎𝑡𝑖𝑜𝑛. It is applied to one genotype


and delivers a modified 𝑚𝑢𝑡𝑎𝑛𝑡, the 𝑐ℎ𝑖𝑙𝑑 or 𝑜𝑓𝑓𝑠𝑝𝑟𝑖𝑛𝑔 of it.

In general, mutation is supposed to cause a random unbiased change.


Mutation has a theoretical role: it can guarantee that the space is
connected.

[37]
 Crossover Operator

A binary variation operator is called 𝑟𝑒𝑐𝑜𝑚𝑏𝑖𝑛𝑎𝑡𝑖𝑜𝑛 or 𝑐𝑟𝑜𝑠𝑠𝑜𝑣𝑒𝑟. This


operator merges information from two parent genotypes into one or two
offspring genotypes.
Similar to mutation, crossover is a stochastic operator: the choice of which
parts of each parent are combined, and the way these parts are combined,
depends on random drawings.

The principle behind crossover is simple: by mating two individuals with


different but desirable features, we can produce an offspring which
combines both of those features.

 Parent Selection Mechanism

The role of 𝑝𝑎𝑟𝑒𝑛𝑡 𝑠𝑒𝑙𝑒𝑐𝑡𝑖𝑜𝑛 (𝑚𝑎𝑡𝑖𝑛𝑔 𝑠𝑒𝑙𝑒𝑐𝑡𝑖𝑜𝑛) is to distinguish among


individuals based on their quality to allow the better individuals to become
parents of the next generation.

Parent selection is 𝑝𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑠𝑡𝑖𝑐. Thus, high quality individuals get a


higher chance to become parents than those with low quality.
Nevertheless, low quality individuals are often given a small, but a positive
chance; otherwise the whole search could become too greedy and get
stuck in a local optimum.

 Survivor Selection Mechanism

The role of survivor selection is to distinguish among individuals based on


their quality. In GA, the population size is (almost always) constant, thus
a choice has to be made on which individuals will be allowed in the next
generation. This decision is based on their fitness values, favoring those
with higher quality.

As opposed to parent selection which is stochastic, survivor selection is


often 𝑑𝑒𝑡𝑒𝑟𝑚𝑖𝑛𝑖𝑠𝑡𝑖𝑐, for instance, ranking the unified multiset of parents
and offspring and selecting the top segment (fitness biased), or selection
only from the offspring (age-biased).

[38]
 Initialization

Initialization is kept simple in most GA applications. Whether this step is


worth the extra computational effort or not is very much depending on the
application at hand.

 Termination Condition

Notice that GA is stochastic and mostly there are no guarantees to reach


an optimum.

Commonly used conditions for terminations are the following:


1. The maximally allowed CPU times elapses
2. The total number of fitness evaluations reaches a given limit
3. For a given period of time, the fitness improvement remains
under a threshold value
4. The population diversity drops under a given threshold.

Note: 𝑃𝑟𝑒𝑚𝑎𝑡𝑢𝑟𝑒 𝑐𝑜𝑛𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒 is the well-known effect of losing


population diversity too quickly and getting trapped in a local optimum.

 Population

The role of the population is to hold possible solutions. A 𝑝𝑜𝑝𝑢𝑙𝑎𝑡𝑖𝑜𝑛 is a


multiset of genotypes.
In almost all GA applications, the population size is constant, not changing
during the evolutional search.

[39]
3.5 WORKING MECHANISM OF GENETIC ALGORITHM

The details of how Genetic Algorithms work are explained below.

 Initialization

While genetic algorithms are generally stated with an initial population that
is 𝑔𝑒𝑛𝑒𝑟𝑎𝑡𝑒𝑑 𝑟𝑎𝑛𝑑𝑜𝑚𝑙𝑦, some research has been conducted into
using 𝑠𝑝𝑒𝑐𝑖𝑎𝑙 𝑡𝑒𝑐ℎ𝑛𝑖𝑞𝑢𝑒𝑠 to produce a higher quality initial population.
Such an approach is designed to give the GA a good start and speed up
the evolutionary process.
𝐸𝑥𝑎𝑚𝑝𝑙𝑒: Some authors propose a GA for exam timetabling problem in
which the GA works only with feasible solutions, implying that the initial
population must also be made up of feasible solution. Then the GA is run
to improve the fitness of the initial population.

 Reproduction

There are two kinds of reproduction:


 Generational reproduction
 Steady-state reproduction.
In our Code, we have used the Generational Reproduction method.

o Generational Reproduction

In generational reproduction, the whole of a population is potentially


replaced at each generation. The most often used procedure is to loop
N/2 times, where N is the population size, select two chromosomes
each time according to the current selection procedure, producing two
children from those two parents, finally producing N new chromosomes.

[40]
 Parent Selection mechanism

The effect of selection is to return a probabilistically selected parent.


Although this selection procedure is stochastic, it does not imply GA
employ a directionless search. The chance of each parent being selected
is in some way related to its fitness.

Parent Selection can be done based on:


 Fitness of Chromosome.
 Rank of Chromosome.
 Tournament Method.
We have chosen parents based on their fitness value.

 Fitness-based selection

The standard method for parent selection is Roulette Wheel selection


or fitness-based selection. In this kind of parent selection, each
chromosome has a chance of selection that is directly proportional to
its fitness. The effect of this depends on the range of fitness values in
the current population.

Idea:
1. Sum the fitness of all chromosomes, call it 𝑇.
2. Generate a random number 𝑁 between 1 and 𝑇.
3. Return chromosome whose fitness added to the running total is
equal to a larger than 𝑁.
4. The chance of getting selected is exactly proportional to the fitness.

The table below shows the selection probability for 11 individuals, linear
ranking and selective pressure of 2 together with the fitness value.
Individual 1 is the most fit individual and occupies the largest interval,
whereas individual 10 as the second least fit individual has the smallest
interval on the line (see accompanying figure). Individual 11, the least
fit interval, has a fitness value of 0 and get no chance for reproduction.

[41]
Table 3.1: Selection Probability and Fitness Value

Number of 1 2 3 4 5 6 7 8 9 10 11
individual
Fitness value 2.0 1.8 1.6 14 1.2 1.0 0.8 0.6 0.4 0.2 0.0
Selection
0.18 0.16 0.15 0.13 0.11 0.09 0.07 0.06 0.03 0.02 0.0
Probability

For selecting the mating population the appropriate number of uniformly


distributed random numbers (uniform distributed between 0.0 and 1.0)
is independently generated.

Sample of 6 random numbers:

0.81, 0.32, 0.96, 0.01, 0.65, 0.42

The figure below shows the selection process of the individuals for the
example in the table together with the above sample trials.

Figure 3.3: Roulette Wheel Selection

After selection the mating population consists of the individuals:

1, 2, 3, 5, 6, 9

The roulette-wheel selection algorithm provides a zero bias but does


not guarantee minimum spread.

[42]
 Crossover Operator

The crossover operator is the most important in GA. Crossover is a


process yielding recombination of bit strings via an exchange of segments
between pairs of chromosomes. Generally, the chance of crossover is
between 0.6 and 1.0.There are many kinds of crossover.
 One Point Crossover.
 Two point Crossover.
 Uniform Crossover.

 One Point Crossover

In single-point crossover one crossover position 𝑘 ∈ [1,2, … , 𝑁𝑣𝑎𝑟 − 1],


(𝑁𝑣𝑎𝑟: number of variables of an individual), is selected uniformly at
random and the variables exchanged between the individuals about this
point, then two new offspring are produced. The figure below illustrates
this process.

Consider the following two individuals with 11 binary variables each:


𝑖𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙 1 01110011010
𝑖𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙 2 10101100101

The chosen crossover position is:


𝑐𝑟𝑜𝑠𝑠𝑜𝑣𝑒𝑟 𝑝𝑜𝑠𝑖𝑡𝑖𝑜𝑛 5

After crossover the new individuals are created:


𝑜𝑓𝑓𝑠𝑝𝑟𝑖𝑛𝑔 1 0 1 1 1 0| 1 0 0 1 0 1
𝑜𝑓𝑓𝑠𝑝𝑟𝑖𝑛𝑔 2 1 0 1 0 1| 0 1 1 0 1 0

Figure 3.4: Single-point Crossover

[43]
 Mutation

Mutation is the process where, each gene is altered independently with a


certain probability called as the mutation rate. The value of this probability
is generally very less (i.e. 0.001) and ranges between 1/𝑝𝑜𝑝_𝑠𝑖𝑧𝑒
and 1/𝑐ℎ𝑟𝑜𝑚𝑜𝑠𝑜𝑚𝑒_𝑙𝑒𝑛𝑔𝑡ℎ. Mutation has the effect of ensuring that all
possible chromosomes are reachable. With crossover and even inversion,
the search is constrained to alleles which exist in the initial population.
The mutation operator can overcome this by simply randomly selecting
any bit position in a string and changing it. This is useful since crossover
and inversion may not be able to produce new alleles if they do not appear
in the initial generation.

𝐸𝑥𝑎𝑚𝑝𝑙𝑒:

Figure 3.5: Bit-flip Mutation

[44]
3.6 PARAMETER SETTINGS OF GENETIC ALGORITHM

The most important decision in implementing a GA is how to set the values


for the various parameters, such as population size, generations,
crossover and mutation rate. These parameters interact with one another
non-linearly, so they cannot be optimized one at a time. There is a great
deal of discussion of parameter settings and approaches to parameter
adaptation in the evolutionary computation literature. There are no
conclusive results on what is best; most people use what has worked well
in previously reported cases.

 De-Jong Parameter Settings

De Jong (1975) performed an early systematic study of how varying


parameters affected the GA's on−line and off−line search performance on
a small suite of test functions.

De Jong's experiments indicated that the best population size was 50–
100 individuals, the best single−point crossover rate was ~0.6 per pair of
parents, and the best mutation rate was 0.001 per bit. These settings
(along with De Jong's test suite) became widely used in the GA
community, even though it was not clear how well the GA would perform
with these settings on problems outside De Jong's test suite.

The standard De-Jong settings are listed in table below:

Table 3.2: Standard De-Jong Settings

𝑷𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓 𝑵𝒂𝒎𝒆 𝑷𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓 𝑺𝒆𝒕𝒕𝒊𝒏𝒈


𝑃𝑜𝑝𝑢𝑙𝑎𝑡𝑖𝑜𝑛 𝑠𝑖𝑧𝑒 50
𝑁𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝑔𝑒𝑛𝑒𝑟𝑎𝑡𝑖𝑜𝑛𝑠 1000
𝐶𝑟𝑜𝑠𝑠𝑜𝑣𝑒𝑟 𝑝𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑡𝑦 0.6
2-𝑝𝑜𝑖𝑛𝑡
𝐶𝑟𝑜𝑠𝑠𝑜𝑣𝑒𝑟 𝑡𝑦𝑝𝑒
𝑜𝑟 𝑠𝑖𝑛𝑔𝑙𝑒 𝑝𝑜𝑖𝑛𝑡
𝑀𝑢𝑡𝑎𝑡𝑖𝑜𝑛 𝑝𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑡𝑦 0.001
𝑀𝑢𝑡𝑎𝑡𝑖𝑜𝑛 𝑡𝑦𝑝𝑒 𝐵𝑖𝑡 𝑓𝑙𝑖𝑝

[45]
3.7 CONSTRAINT HANDLING IN GENETIC ALGORITHM

There are many ways to handle constraints in a GA. At the high


conceptual level we can distinguish two cases: 𝑖𝑛𝑑𝑖𝑟𝑒𝑐𝑡 𝑐𝑜𝑛𝑠𝑡𝑟𝑎𝑖𝑛𝑡
ℎ𝑎𝑛𝑑𝑙𝑖𝑛𝑔 and 𝑑𝑖𝑟𝑒𝑐𝑡 𝑐𝑜𝑛𝑠𝑡𝑟𝑎𝑖𝑛𝑡 ℎ𝑎𝑛𝑑𝑙𝑖𝑛𝑔.

Indirect constraint handling means that we circumvent the problem of


satisfying constraints by incorporating them in the fitness function 𝑓 such
that 𝑓 optimal implies that the constraints are satisfied, and use the power
of GA to find a solution.

Direct constraint handling means that we leave the constraints as they are
and ‘adapt’ the GA to enforce them.

The most common approach in the GA community to handle constraints


(particularly, inequality constraints) is to use penalties. The idea of this
method is to transform a constrained-optimization problem into an
unconstrained one by adding (or subtracting) a certain value to/from the
objective function based on the amount of constraint violation present in
a certain solution. In classical optimization, two kinds of penalty functions
are considered: 𝑒𝑥𝑡𝑒𝑟𝑖𝑜𝑟 and 𝑖𝑛𝑡𝑒𝑟𝑖𝑜𝑟. In the case of exterior methods, we
start with an infeasible solution and from there we move towards the
feasible region. In the case of interior methods, the penalty term is chosen
such that its value will be small at points away from the constraint
boundaries and will tend to infinity as the constraint boundaries are
approached. Then, if we start from a feasible point, the subsequent points
generated will always lie within the feasible region since the constraint
boundaries act as barriers during the optimization process.

The most common method used in GAs is the exterior penalty approach
and therefore, we will concentrate our discussion only on such technique.
The main reason why most researchers in the GA community tend to
choose exterior penalties is because they do not require an initial feasible
solution. This sort of requirement (an initial feasible solution) is precisely
the main drawback of interior penalties. This is an important drawback,
since in many of the applications for which EAs are intended the problem
of finding a feasible solution is itself NP-hard.

[46]
The basic approach is to define the fitness value of an individual 𝑖 as
follows:

𝑓𝑖𝑡𝑛𝑒𝑠𝑠𝑖 (𝑋) = 𝑓𝑖 (𝑋) + 𝑄1

where, 𝑄𝑖 represents a penalty for an individual 𝑖. It is assumed that if 𝑖 is


feasible then 𝑄𝑖 = 0 (i.e. feasible individuals are not penalized).

Ideally, the penalty should be kept as low as possible, just above the limit
below which infeasible solutions are optimal (this is called, the minimum
penalty rule). This is due to the fact that if the penalty is too high or too
low, then the problem might become very difficult for a GA. If the penalty
is too high and the optimum lies at the boundary of the feasible region, the
GA will be pushed inside the feasible region very quickly, and will not be
able to move back towards the boundary with the infeasible region. A large
penalty discourages the exploration of the infeasible region since the very
beginning of the search process. If, for example, there are several
disjointed feasible regions in the search space, the GA would tend to
move to one of them, and would not be able to move to a different feasible
region unless they are very close to each other.

On the other hand, if the penalty is too low, a lot of the search time will be
spent exploring the infeasible region because the penalty will be negligible
with respect to the objective function. These issues are very important in
GAs, because many of the problems in which they are used have their
optimum lying on the boundary of the feasible region.

The minimum penalty rule is conceptually simple, but it is not necessarily


easy to implement. The reason is that the exact location of the boundary
between the feasible and infeasible regions is unknown in many of the
problems for which GAs are intended.

In the following subsections we discuss the different types of penalty


methods in turn.

[47]
 Static Penalty

In this approach, several levels of violation are defined and a


corresponding penalty coefficient is chosen for each in such a way that
the penalty coefficients increase as we reach higher levels of violation. An
individual is evaluated using:

𝑚
𝑓𝑖𝑡𝑛𝑒𝑠𝑠𝑖 (𝑋) = 𝑓𝑖 (𝑋) + ∑ 𝑅𝑘,𝑗 ∅𝑗 2 (𝑋)
𝑗=1

where, 𝑅𝑖,𝑗 are the penalty coefficients used,


𝑚 is the number of constraints,
𝑓(𝑋) is the unpenalized objective function value, and
𝑘 = 1, 2, … , 𝑙, where 𝑙 is the number of levels of violations defined
by the user.

In our experiments, the value of 𝑅𝑘,𝑗 is defined as follows:


100, 𝑔𝑒𝑛 ≤ 100
200, 100 < 𝑔𝑒𝑛 ≤ 300
𝑅={
500, 300 < 𝑔𝑒𝑛 ≤ 600
1000, 600 < 𝑔𝑒𝑛 ≤ 1000

 Dynamic penalty

Dynamic penalty introduces a dynamic aspect to the penalty function by


increasing the penalty as we progress through generations. The fitness of
individuals is evaluated (at generation 𝑡) using:

𝑚 𝛽
𝑓𝑖𝑡𝑛𝑒𝑠𝑠𝑖 (𝑋) = 𝑓𝑖 (𝑋) + (𝐶 × 𝑡)𝛼 ∑ |∅𝑗 (𝑋)|
𝑗=1

where 𝐶, 𝛼 𝑎𝑛𝑑 𝛽 are constants defined by the user,


𝑚 is the number of constraints.
In this thesis, the value of 𝐶 is set to 0.5 and that of 𝛼 and 𝛽 to 2.

[48]
3.8 ADVANTAGES/DISADVANTAGES OF GENETIC
ALGORITHM

 Advantages

 It can solve every optimisation problem which can be described with


the chromosome encoding.
 It solves problems with multiple solutions.
 Since the genetic algorithm execution technique is not dependent
on the error surface, we can solve multi-dimensional, non-
differential, non-continuous, and even non-parametrical problems.
 Genetic algorithm is a method which is very easy to understand and
it practically does not demand the knowledge of mathematics.

 Disadvantages

 Certain optimisation problems (they are called variant problems)


cannot be solved by means of genetic algorithms. This occurs due
to poorly known fitness functions.
 There is no absolute assurance that a genetic algorithm will find a
global optimum.
 Genetic algorithm cannot assure constant optimisation response
times.
 Genetic algorithm applications in controls which are performed in
real time are limited because of random solutions and convergence.

[49]
3.9 IMPLEMENTATION

Figure 3.6: Implementation of Genetic Algorithm using OptimTool

𝐹𝑖𝑔. 3.6 shows the user interface of the Optimization Toolbox available in
MATLAB. In this project, this toolbar is used to generate results using
Genetic Algorithm method. Genetic Algorithm parameters can be set in
the Options section. The Problem Setup and Results section takes the
fitness function and various mathematical constraints as inputs and then
displays results.

[50]
CHAPTER 4
FIREFLY ALGORITHM

[51]
4.1 INTRODUCTION

The firefly algorithm (FA) is a metaheuristic algorithm, inspired by the


flashing behavior of fireflies. The primary purpose for a firefly's flash is to
act as a signal to attract other fireflies for mating or to communicate the
location of the food resources.

Xin-She Yang formulated this firefly algorithm using the following three
idealized rules:

 All fireflies are unisex so that one firefly will be attracted to other
fireflies regardless of their sex;

 Attractiveness is proportional to their brightness, thus for any two


flashing fireflies, the less bright one will move towards the brighter
one. The attractiveness is proportional to the brightness and they
both decrease as their distance increases. If there is no brighter one
than a particular firefly, it will move randomly;

 The brightness of a firefly is affected or determined by the landscape


of the objective function.

For a maximization problem, the brightness can simply be proportional to


the value of the objective function. Other forms of brightness can be
defined in a similar way to the fitness function in genetic algorithms.

It is also important to note that the apparent light intensity of a source-


firefly as seen by any other firefly will not be the same as that of the source
intensity. Thus the concept of attractiveness of a firefly is introduced.

[52]
4.2 LIGHT INTENSITY AND ATTRACTIVENESS

In the firefly algorithm, the variation of light intensity and formulation of the
attractiveness are two important issues. For simplicity, we can always
assume that the attractiveness of a firefly is determined by its brightness
which in turn is associated with the encoded objective function.

In the simplest case for maximum optimization problems, the brightness 𝐼


of a firefly at a particular location 𝑥 can be chosen as 𝐼(𝑥) ∝ 𝑓(𝑥).

However, the attractiveness 𝛽 is relative, it should be seen in the eyes of


the beholder or judged by the other fireflies. Thus, it will vary with the
distance 𝑟𝑖𝑗 between firefly 𝑖 and firefly 𝑗. In addition, light intensity
decreases with the distance from its source, and light is also absorbed in
the media, so we should allow the attractiveness to vary with the degree
of absorption.

In the simplest form, the light intensity I(r) varies according to the inverse
square law

𝐼𝑠
𝐼(𝑟) = … (4.2.1)
𝑟2

where, 𝐼𝑠 is the intensity at the source.

In order to avoid the singularity at 𝑟 = 0 in the expression 𝐼𝑠 ⁄𝑟 2 , the


combined effect of both the inverse square law and absorption can be
approximated as the following Gaussian form

2
𝐼(𝑟) = 𝐼0 𝑒 −𝛾𝑟 … (4.2.2)

where, 𝐼0 is the light intensity at source.

[53]
As a firefly's attractiveness is proportional to the light intensity seen by
adjacent fireflies, we can now define the attractiveness 𝛽 of a firefly by

2
𝛽 = 𝛽0 𝑒 −𝛾𝑟 … (4.2.3)

where, 𝛽0 is the attractiveness at 𝑟 = 0.

As it is often faster to calculate 1/(1 + 𝑟 2 ) than an exponential function,


the above function, if necessary, can conveniently be approximated as

𝛽0
𝛽= … (4.2.4)
1 + 𝛾𝑟 2

Both (4.2.3) and (4.2.4) define a characteristic distance Γ = 1/√𝛾 over


which the attractiveness changes significantly from 𝛽0 to 𝛽0 𝑒 −1 for
equation (4.2.3) or 𝛽0 /2 for equation (4.2.4).

In the actual implementation, the attractiveness function 𝛽(𝑟) can be any


monotonically decreasing functions such as the following generalized
form

𝑚
𝛽(𝑟) = 𝛽0 𝑒 −𝛾𝑟 , (𝑚 ≥ 1) … (4.2.5)

For a fixed 𝛾, the characteristic length becomes

Γ = 𝛾 −1⁄𝑚 → 1, 𝑚→ ∞ … (4.2.6)

Conversely, for a given length scale Γ in an optimization problem, the


parameter 𝛾 can be used as a typical initial value. That is

1
𝛾= … (4.2.7)
Γ𝑚

[54]
The distance between any two fireflies 𝑖 and 𝑗 at 𝑥𝑖 and 𝑥𝑗 , respectively, is
the Cartesian distance

𝑑
2
𝑟𝑖𝑗 =∥ 𝑥𝑖 − 𝑥𝑗 ∥ = √∑(𝑥𝑖,𝑘 − 𝑥𝑗,𝑘 ) , … (4.2.8)
𝑘=1

where 𝑥𝑖,𝑘 is the 𝑘th component of the spatial coordinate 𝑥𝑖 of the 𝑖 th firefly.

The movement of a firefly 𝑖 is attracted to another more attractive


(brighter) firefly 𝑗 is determined by

2
𝑥𝑖 = 𝑥𝑖 + 𝛽0 𝑒 −𝛾𝑟𝑖𝑗 (𝑥𝑗 − 𝑥𝑖 ) + 𝛼𝜖𝑖 , … (4.2.9)

Where the second term is due to the attraction. The third term is
randomization with 𝛼 being the randomization parameter, and 𝜖𝑖 is a
vector of random numbers drawn from a Gaussian distribution or uniform
distribution. For most of our implementation, we can take 𝛽0 = 1 and 𝛼 ∈
[0,1].

It is worth pointing out that (4.2.9) is a random walk biased towards


the brighter fireflies. If 𝛽0 = 0, it becomes a simple walk.

The parameter 𝛾 now characterizes the variation of the attractiveness, and


its value is crucially important in determining the speed of the
convergence and how the FA algorithm behaves. In theory, 𝛾 ∈ [0, ∞), but
in practice, 𝛾 = 𝑂(1) is determined by the characteristic length Γ of the
system to be optimized. Thus, for most applications, it typically varies from
0:1 to 10.

[55]
4.3 ALGORITHM

The pseudo code can be summarized as:

Begin
 Objective function: 𝑓(𝑥), 𝑥 = (𝑥1 , 𝑥2 , … , 𝑥𝑑 )𝑇
 Generate an initial population of fireflies 𝑥𝑖 (𝑖 = 1,2, … , 𝑛)
 Formulate light intensity 𝐼𝑖 so that it is associated with
𝑓(𝑥𝑖 )
 Define light absorption coefficient 𝛾
while (t < MaxGeneration)
for i=1 : n all n fireflies
for j=1 : n all n fireflies (inner loop)
if(Ii < Ij)
move firefly i towards j
end if
Vary attractiveness with distance 𝑟 via exp(−𝛾𝑟);
Evaluate new solutions and update light
intensity;
end for j
end for i
Rank fireflies and find the current global best 𝑔∗
end while
Post-processing the results and visualization
end

The main update formula for any pair of two fireflies 𝑥𝑖 and 𝑥𝑗 is

𝑥𝑖𝑡+1 = 𝑥𝑖𝑡 + 𝛽 exp[−𝛾𝑟𝑖𝑗2 ] (𝑥𝑗𝑡 − 𝑥𝑖𝑡 ) + 𝛼𝑡 𝜖𝑡 … (4.3.1)

where 𝛼𝑡 is a parameter controlling the step size, while 𝜖𝑡 is a vector drawn


from a Gaussian or other distribution.

[56]
4.4 FIREFLY ALGORITHM VARIANTS

The basic firefly algorithm is very efficient, but we can see that the
solutions are still changing as the optima are approaching. It is possible
to improve the solution quality by reducing the randomness.

A further improvement on the convergence of the algorithm is to vary the


randomization parameter 𝛼 so that it decreases gradually as the optima
are approaching. For example, we can use

𝛼 = 𝛼∞ + (𝛼0 − 𝛼∞ )𝑒 −𝑡 … (4.4.1)

where 𝑡 ∈ [0; 𝑡𝑚𝑎𝑥 ] is the pseudo time for simulations and 𝑡𝑚𝑎𝑥 is the
maximum number of generations. 𝛼0 is the initial randomization parameter
while 𝛼∞ is the final value. We can also use a similar function to the
geometrical annealing schedule. That is

𝛼 = 𝛼0 𝜃 𝑡 … (4.4.2)

where 𝜃 ∈ (0,1] is the randomness reduction constant.

In addition, in the current version of the FA algorithm, we do not explicitly


use the current global best 𝑔∗ , even though we only use it to decode the
final best solutions. Recent studies show that the efficiency may
significantly improve if we add an extra term 𝜆𝜖𝑖 (𝑥𝑖 – 𝑔∗ ) to the updating
formula (4.2.9). Here 𝜆 is a parameter similar to 𝛼 and 𝛽, and 𝜖𝑖 is a vector
of random numbers.

[57]
 Discrete Firefly Algorithm (DFA)

A discrete version of Firefly Algorithm, namely, Discrete Firefly Algorithm


(DFA) proposed recently by M. K. Sayadi, R. Ramezanian and N.
Ghaffari-Nasab can efficiently solve NP-hard scheduling problems. DFA
outperforms existing algorithms such as the ant colony algorithm.

For image segmentation, the FA-based method is far more efficient to


Otsu's method and recursive Otsu. Meanwhile, a good implementation of
a discrete firefly algorithm for QAP problems has been carried out by
Durkota.

 Multi-objective Firefly Algorithm

An important study of FA was carried out by Apostolopoulos and Vlachos,


which provides a detailed background and analysis over a wide range of
test problems including multi-objective load dispatch problem.

 Lagrangian Firefly Algorithm

An interesting, Lagrangian firefly algorithm is proposed to solve power


system optimization unit commitment problems.

 Chaotic Firefly Algorithm

A chaotic firefly algorithm (CFA) was developed and found to outperform


the previously best-known solutions available.

 Hybrid Algorithms

A hybrid intelligent scheme has been developed by combining the firefly


algorithm with the ant colony optimization.

[58]
 Firefly Algorithm Based Memetic Algorithm

A firefly algorithm (FA) based memetic algorithm (FA-MA) is proposed to


appropriately determine the parameters of SVR forecasting model for
electricity load forecasting. In the proposed FA-MA algorithm, the FA
algorithm is applied to explore the solution space, and the pattern search
is used to conduct individual learning and thus enhance the exploitation
of FA.

 Parallel Firefly Algorithm With Predation (PFAP)

An implementation for shared memory environments with the addition of


a predation mechanism that helps the method to escape local optimum.

[59]
4.5 IMPLEMENTATION

In order to demonstrate how the firefly algorithm can be used to solve the
economic load dispatch problem, we implemented it in MATLAB using the
code, developed by Xin-She Yang, from the book “Nature-Inspired
Metaheuristic Algorithms”.

[60]
CHAPTER 5
RESULTS

[61]
5.1 SIMPLE 3-GENERATOR SYSTEM

Consider a power plant consisting of 3 units is considered. The


parameters of the units are shown in Table 5.1.

Table 5.1: System Specifications

𝑼𝒏𝒊𝒕 𝑷𝒎𝒊𝒏 𝑷𝒎𝒂𝒙 𝒂 𝒃


𝟏 𝟐𝟎 𝟐𝟎𝟎 𝟎. 𝟐𝟓 𝟑𝟎
𝟐 𝟐𝟎 𝟐𝟐𝟓 𝟎. 𝟐𝟎 𝟒𝟎
𝟑 𝟏𝟓 𝟏𝟕𝟓 𝟎. 𝟑𝟎 𝟑𝟓

For the given data,


I. For a plant load of 400 MW, analyse the effects of various
parameters on economic load dispatch solution by Genetic
algorithm and Firefly algorithm
II. Find the sharing of the load by different units, for plant loads
between 100 MW and 600 MW

The system considered in this problem is a three generator single load


system. Also it is assumed that the transmission losses in the system are
negligible. Using the given data and constraints, solutions are obtained for
economic load dispatch.

[62]
 Gradient Method

As shown in earlier section, using an Excel spreadsheet, gradient method


is formulated and for each value of load demand 𝑃𝐷 , the spreadsheet is
used to determine the economic load dispatch condition.

Table 5.2: Results by Gradient Method

𝑹𝑬𝑺𝑼𝑳𝑻𝑺 𝑩𝒀 𝑮𝑹𝑨𝑫𝑰𝑬𝑵𝑻 𝑴𝑬𝑻𝑯𝑶𝑫


𝑷𝒅 𝑷𝒈𝟏 𝑷𝒈𝟐 𝑷𝒈𝟑 𝑺𝒖𝒎 𝑪𝟏 𝑪𝟐 𝑪𝟑 𝑪𝒕
100 56 20 30 106 2072 840 1185 4097
150 70.27027 37.83784 41.89189 150 2725.346956 1656.683814 1729.455717 6111.486486
200 86.48649 58.10811 55.40541 200.00001 3529.583819 2661.979645 2399.653269 8591.216732
250 102.7027 78.37838 68.91892 250 4399.561573 3749.452245 3124.63483 11273.64865
300 118.9189 98.64865 82.43243 299.99998 5335.280097 4919.101615 3904.400877 14158.78259
350 135.1351 118.9189 95.94595 349.99995 6336.739907 6170.926478 4738.952048 17246.61843
400 151.3514 139.1892 109.4595 400.0001 7403.947785 7504.93134 5628.289821 20537.16895
450 167.5676 159.4595 122.973 450.0001 8536.890571 8921.113214 6572.408809 24030.41259
500 183.7838 179.7297 136.4865 500 9735.574643 10419.46451 7571.312202 27726.35135
550 200 200 150 550 11000 12000 8625 31625

𝑇𝑎𝑏𝑙𝑒 5.2 shows optimum load shared by the three generators calculated
using Gradient method. The load shared by the different units is
graphically represented by 𝐹𝑖𝑔. 5.1.

Load shared by each unit for different plant loads


(by Gradient Method)
250

200
Unit Output (MW)

150

100

50

0
100 150 200 250 300 350 400 450 500 550
Plant Load (MW)

Pg1 Pg2 Pg3

Figure 5.1: Load sharing for different plant loads (Gradient Method – Neglecting Losses)

[63]
 Genetic Algorithm

As discussed in earlier sessions, MATLAB toolbox is used for


optimisation. Various parameters in the toolbox are set as shown
in 𝑇𝑎𝑏𝑙𝑒 5.4. The results obtained using genetic algorithm are shown
in 𝑇𝑎𝑏𝑙𝑒 5.3. The objective function considered is given by the equation
(1.4.7) and equations (1.4.1) and (1.4.3) give inequality and equality
constraints

Table 5.3: Results by Genetic Algorithm

𝑹𝑬𝑺𝑼𝑳𝑻𝑺 𝑩𝒀 𝑮𝑬𝑵𝑬𝑻𝑰𝑪 𝑨𝑳𝑮𝑶𝑹𝑰𝑻𝑯𝑴


𝑷𝒅 𝑷𝒈𝟏 𝑷𝒈𝟐 𝑷𝒈𝟑 𝑺𝒖𝒎 𝑪𝟏 𝑪𝟐 𝑪𝟑 𝑪𝒕
100 51.106 20 29.358 100.464 1859.657905 840 1156.813825 3856.471729
150 68.868 35.28 45.703 149.851 2658.890178 1535.66784 1912.919631 6107.477649
200 89.165 57.482 53.376 200.023 3668.749653 2629.698032 2295.509606 8593.957292
250 103.817 78.574 68.446 250.837 4461.756186 3760.347348 3098.338237 11320.44177
300 120.599 101.545 78.015 300.159 5435.98485 5092.938703 3643.476034 14172.39959
350 137.889 120.069 91.539 349.497 6513.34204 6244.416476 4460.773278 17218.53179
400 152.837 139.024 107.749 399.61 7505.003571 7493.727258 5512.69205 20511.42288
450 167.423 161.873 121.067 450.363 8526.497616 9095.206813 6435.927773 24057.6322
500 183.308 179.869 137.215 500.392 9699.467858 10430.04572 7626.718434 27756.23201
550 198.832 200.32 150.993 550.145 10906.73053 12025.61024 8704.587907 31636.92868
600 200 225 175 600 11000 14062.5 10718.75 35781.25

The load shared by the different units is graphically represented


by 𝐹𝑖𝑔. 5.2.

Load shared by each unit for different plant loads


(by Genetic Algorithm)
250

200
Unit Output (MW)

150

100

50

0
100 150 200 250 300 350 400 450 500 550 600
Plant Load (MW)

Pg1 Pg2 Pg3

Figure 5.2: Load sharing for different plant loads (Genetic Algorithm – Neglecting Losses)

[64]
o Effect of variation in parameters

A number of parameters control the precise operation of a GA, viz.


population size (how many chromosomes are in population in one
generation), generation, crossover probability (how often will the
crossover be performed), and mutation probability (how often will be
parts of chromosomes mutated). The efficiency of GA is greatly
dependent on these four tuning parameters.

To study the effect of variation in parameters on the output of GA, the


four parameters are individually varied and the fitness value of the
solution thus obtained is compared with the reference value according
to the formula

𝑎𝑐𝑡𝑢𝑎𝑙 − 𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑒
𝑒𝑟𝑟𝑜𝑟 = × 100%
𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑒

where, 𝑎𝑐𝑡𝑢𝑎𝑙 is the fitness value of the current solution obtained;


𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑒 is the fitness value of the reference solution obtained
by running Genetic Algorithm using parameters listed
in 𝑇𝑎𝑏𝑙𝑒 5.4.

Table 5.4: Parameters for Genetic Algorithm

𝑷𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓 𝑵𝒂𝒎𝒆 𝑷𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓 𝑺𝒆𝒕𝒕𝒊𝒏𝒈


𝑃𝑜𝑝𝑢𝑙𝑎𝑡𝑖𝑜𝑛 𝑆𝑖𝑧𝑒 64
𝑁𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝐺𝑒𝑛𝑒𝑟𝑎𝑡𝑖𝑜𝑛𝑠 1000
𝐶𝑟𝑜𝑠𝑠𝑜𝑣𝑒𝑟 𝑃𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑡𝑦 0.5
𝑀𝑢𝑡𝑎𝑡𝑖𝑜𝑛 𝑃𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑡𝑦 0.1
𝐸𝑙𝑖𝑡𝑒 𝐶𝑜𝑢𝑛𝑡 5

To be able to compare effect of changing parameters on GA efficiency,


we need to fix all the other parameters at their default values.

[65]
i. Population Size

It can be easily noted from 𝐹𝑖𝑔. 5.3 that for very low individual population,
accurate solution cannot be obtained. Also for higher values of
population, the error becomes relatively constant however there is no
guarantee of an optimum.

Figure 5.3: Error Variation with Population

ii. Number of Generations

As it can be seen from 𝐹𝑖𝑔. 5.4, the variation in error with number of
generations in a GA does not have any peculiar pattern. However, it
can be concluded that the error margin decreases as the number of
generations increase.

Figure 5.4: Error Variation with No. of Generations

[66]
iii. Crossover Probability

Crossover probability is an important virtue of GA program in order to


enrich diversity of individuals. 𝐹𝑖𝑔. 5.5 shows the variation of error with
changing crossover fraction. It can be noted that as the crossover
fraction approaches 1, obtained solution deviates from the reference
optimum.

Figure 5.5: Error Variation with Crossover Fraction

iv. Mutation Probability

Mutation probability is important from the point of view of generating


randomness in the population. As it can be seen from 𝐹𝑖𝑔. 5.6, it is
difficult to determine a specific pattern in error variation with changing
mutation rate. However, optimum solution is found to have obtained for
mutation probability values below 0.2. It also confirms with the general
convention of assuming low mutation probability.

Figure 5.6: Error Variation with Mutation Rate

[67]
 Firefly Algorithm (Neglecting Line Losses)

Table 5.5: Results by Firefly Algorithm

𝑹𝑬𝑺𝑼𝑳𝑻𝑺 𝑩𝒀 𝑭𝑰𝑹𝑬𝑭𝑳𝒀 𝑨𝑳𝑮𝑶𝑹𝑰𝑻𝑯𝑴


𝑷𝒅 𝑷𝒈𝟏 𝑷𝒈𝟐 𝑷𝒈𝟑 𝑺𝒖𝒎 𝑪𝟏 𝑪𝟐 𝑪𝟑 𝑪𝒕
100 52.58 20 27.62 100.2 1922.98205 840 1081.12966 3844.11171
150 70.27 37.83 41.89 149.99 2725.334113 1656.31089 1729.365815 6111.010818
200 86.489 58.107 55.402 199.998 3529.71339 2661.922345 2399.477241 8591.112976
250 102.705 78.378 68.917 250 4399.689628 3749.431088 3124.527933 11273.64865
300 118.918 98.649 82.431 299.998 5335.226341 4919.12252 3904.315464 14158.66432
350 135.135 118.918 95.946 349.999 6336.733528 6170.869072 4738.955237 17246.55784
400 151.352 139.19 109.457 399.999 7403.988488 7504.98561 5628.120227 20537.09433
450 167.569 159.46 122.97 449.999 8536.99122 8921.14916 6572.193135 24030.33352
500 183.784 179.73 136.484 499.998 9735.589832 10419.48729 7571.122338 27726.19946
550 199.999 200 150 549.999 10999.92 12000 8625 31624.92
600 200 225 174.311 599.311 11000 14062.5 10658.53371 35721.03371

𝑇𝑎𝑏𝑙𝑒 5.5 shows optimum load shared by the three generators calculated
using Gradient method. The load shared by the different units is
graphically represented by 𝐹𝑖𝑔. 5.7.

Load shared by each unit for different plant loads


(by Firefly Algorithm)
250

200
Unit Output (MW)

150

100

50

0
100 150 200 250 300 350 400 450 500 550 600
Plant Load (MW)

Pg1 Pg2 Pg3

Figure 5.7: Load sharing for different plant loads (Firefly Algorithm – Neglecting Losses)

[68]
o Effect of variation in parameters

A number of parameters control the precise operation of a FA, viz.


number of fireflies, generations, absorption coefficient, and maximum
radius of random step. The efficiency of FA is greatly dependent on
these four tuning parameters.

To study the effect of variation in parameters on the output of FA, the


four parameters are individually varied and the fitness value of the
solution thus obtained is compared with the reference value according
to the formula

𝑎𝑐𝑡𝑢𝑎𝑙 − 𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑒
𝑒𝑟𝑟𝑜𝑟 = × 100%
𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑒

where, 𝑎𝑐𝑡𝑢𝑎𝑙 is the fitness value of the current solution obtained;


𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑒 is the fitness value of the reference solution obtained
by running Firefly Algorithm using parameters listed in 𝑇𝑎𝑏𝑙𝑒 5.6.

Table 5.6: Parameters for Firefly Algorithm

𝑷𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓 𝑵𝒂𝒎𝒆 𝑷𝒂𝒓𝒂𝒎𝒆𝒕𝒆𝒓 𝑺𝒆𝒕𝒕𝒊𝒏𝒈


𝑁𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝐹𝑖𝑟𝑒𝑓𝑙𝑖𝑒𝑠 40
𝑁𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝐺𝑒𝑛𝑒𝑟𝑎𝑡𝑖𝑜𝑛𝑠 500
𝑀𝑎𝑥𝑖𝑚𝑢𝑚 𝑅𝑎𝑑𝑖𝑢𝑠 𝑜𝑓 𝑅𝑎𝑛𝑑𝑜𝑚 𝑆𝑡𝑒𝑝 0.5
𝑆𝑡𝑒𝑝 𝑆𝑖𝑧𝑒 𝑇𝑜𝑤𝑎𝑟𝑑𝑠 𝐵𝑒𝑡𝑡𝑒𝑟 𝑆𝑜𝑙𝑢𝑡𝑖𝑜𝑛 0.2
𝐴𝑏𝑠𝑜𝑟𝑝𝑡𝑖𝑜𝑛 𝐶𝑜𝑒𝑓𝑓𝑖𝑐𝑖𝑒𝑛𝑡 1

To be able to compare effect of changing parameters on FA efficiency, we


need to fix all the other parameters at their default values.

[69]
i. Number of Fireflies

The firefly algorithm is very much similar to a particle swarm


algorithm and thus the number of particles is an important property.
However it is interesting to note as shown in 𝐹𝑖𝑔. 5.8 that the solution
obtained using more than one firefly population is the same as the
reference solution.

Figure 5.8: Error Variation with No. of Fireflies

ii. Number of Generations

Variation of error with change in number of generations is shown


in 𝐹𝑖𝑔. 5.9. After a particular number of generations, the error attains
a steady state value which is approximately equal to zero.

Figure 5.9: Error Variation with No. of Generations

[70]
iii. Maximum Radius of Random Step

Maximum radius of Random step 𝛼 is important from the point of


view of generating randomness in the motion of the fireflies. The
variation in error with change in 𝛼 is shown in 𝐹𝑖𝑔. 5.10.

Figure 5.10: Error Variation with Alpha

iv. Absorption Coefficient

Absorption coefficient, denoted by 𝛾, plays an important role in


converging the solution. However, as it can be observerd
from 𝐹𝑖𝑔. 5.11, showing variation of error with change in 𝛾, the graph
is scattered. But the average error decreases as the absorption
coefficient value increases.

Figure 5.11: Error Variation with Gamma

[71]
 Comparison of Results

In order to more clearly demonstrate the performance of the two


algorithms, the results obtained by using these algorithms are compared
with those obtained by Gradient Method which is conventionally used to
solve this problem.

The results obtained are expressed in terms of the yearly cost advantage
over the Gradient method. The negative sign indicates that the results of
Gradient method are better than the results of the corresponding method
and positive sign indicates that result of the particular method are better
than those obtained by Gradient method.
𝑇𝑎𝑏𝑙𝑒 5.7 describes the yearly cost advantage (in₹ ) of Genetic Algorithm
and Firefly Algorithm over the Gradient method.

Table 5.7: Cost Comparison

𝒀𝒆𝒂𝒓𝒍𝒚 𝑪𝒐𝒔𝒕 𝑨𝒅𝒗𝒂𝒏𝒕𝒂𝒈𝒆 𝒊𝒏 ₹


𝑷𝑫 𝑼𝒔𝒊𝒏𝒈 𝑮𝑨 𝑼𝒔𝒊𝒏𝒈 𝑭𝑨
100 2107027.653 2215301.42
150 35117.41332 4166.860322
200 −24007.30115 908.9096331
250 −409907.7411 0
300 −119284.8953 1035.996488
350 246038.9494 530.8078868
400 225535.5475 653.676425
450 −238443.7642 692.7361572
500 −261754.5509 1330.564735
550 −104495.1961 700.798905

[72]
5.2 4-BUS SYSTEM

Figure 5.12: 4-Bus System

Consider the four-bus system shown in 𝐹𝑖𝑔. 5.12. The line and bus data
given is in 𝑇𝑎𝑏𝑙𝑒 5.9. The base-case power-flow solution is shown
in 𝑇𝑎𝑏𝑙𝑒 5.10. It is required to calculate the loss-coefficients for the system
and using the same, transmission power loss is to be estimated for various
load demands.
𝑇𝑎𝑏𝑙𝑒 5.8 gives the data required for formulating the economic load
dispatch problem.

Table 5.8: System Specifications

𝑼𝒏𝒊𝒕 𝑷𝒎𝒊𝒏 𝑷𝒎𝒂𝒙 𝒂 𝒃 𝒄


𝟏 𝟎. 𝟓 𝟒 𝟏𝟎𝟓 𝟖𝟔𝟔. 𝟐𝟓 𝟑𝟎𝟖. 𝟏𝟐𝟓
𝟐 𝟎. 𝟕𝟓 𝟒. 𝟓 𝟏𝟐𝟏. 𝟕 𝟏𝟎𝟎𝟒. 𝟎𝟐𝟓 𝟏𝟑𝟔. 𝟗𝟏𝟐𝟓
† All vales in per unit on 230-kV, 100-MVA base.

Table 5.9: Line data and bus data


𝑩𝒖𝒔 𝑳𝒊𝒏𝒆 𝒅𝒂𝒕𝒂 𝑩𝒖𝒔 𝒅𝒂𝒕𝒂
𝒕𝒐 𝑺𝒆𝒓𝒊𝒆𝒔 𝒁 𝑺𝒉𝒖𝒏𝒕 𝒀 𝑮𝒆𝒏𝒆𝒓𝒂𝒕𝒊𝒐𝒏 𝑳𝒐𝒂𝒅
𝑩𝒖𝒔 𝑹 𝑿 𝑩 𝑩𝒖𝒔 𝑷 |𝑽|∠𝜹° 𝑷 𝑸
𝑳𝒊𝒏𝒆 𝟏 − 𝟒 . 00744 . 0372 . 0775 𝟏 ° ∙ ∙
1.0∠0
𝑳𝒊𝒏𝒆 𝟏 − 𝟑 . 01008 . 0504 . 1025 𝟐 3.18 1.0 ∙ ∙
𝑳𝒊𝒏𝒆 𝟐 − 𝟑 . 00744 . 0372 . 0775 𝟑 ∙ ∙ 2.20 1.3634
𝑳𝒊𝒏𝒆 𝟐 − 𝟒 . 01272 . 0636 . 1275 𝟒 ∙ ∙ 2.80 1.7352
† All vales in per unit on 230-kV, 100-MVA base.

[73]
Table 5.10: Power-flow solution
𝑩𝒂𝒔𝒆 𝒄𝒂𝒔𝒆
𝑮𝒆𝒏𝒆𝒓𝒂𝒕𝒊𝒐𝒏 𝑽𝒐𝒍𝒕𝒂𝒈𝒆
𝑩𝒖𝒔 𝑷 𝑸 𝑴𝒂𝒈𝒏𝒊𝒕𝒖𝒅𝒆 𝑨𝒏𝒈𝒍𝒆
(𝒑𝒆𝒓 𝒖𝒏𝒊𝒕) (𝒅𝒆𝒈)
𝟏 1.913152 1.872240 1.0 0.0
𝟐 3.18 1.325439 1.0 2.43995
𝟑 ∙ ∙ 0.96051 −1.07932
𝟒 ∙ ∙ 0.94304 −2.62658
𝑻𝒐𝒕𝒂𝒍 5.093152 3.197679
† All vales in per unit on 230-kV, 100-MVA base.

Each transmission line is represented by its equivalent-𝜋 circuit with half


of the line-charging susceptance to neutral at both ends. Choosing the
neutral node 𝑛 as reference, we construct the bus impedance
matrix 𝒁𝑏𝑢𝑠 = 𝑹𝑏𝑢𝑠 + 𝑗𝑿𝑏𝑢𝑠 , where

2.911963 −1.786620 −0.795044 −0.072159


−1.786620 2.932995 −0.072159 −1.300878
𝑹𝑏𝑢𝑠 =[ ] × 10−3
−0.795044 −0.072159 2.911963 −1.786620
−0.072159 −1.300878 −1.786620 2.932995

−2.582884 −2.606321 −2.601379 −2.597783


−2.606321 −2.582784 −2.597783 −2.603899
𝑿𝑏𝑢𝑠 =[ ]
−2.601379 −2.597783 −2.582884 −2.606321
−2.597783 −2.603899 −2.606321 −2.582784

From the power-flow results of 𝑇𝑎𝑏𝑙𝑒 5.10 the load currents are calculated,

𝑃3 − 𝑗𝑄3 −2.2 + 𝑗1.36340


𝐼3 = ∗ = °
= 2.694641∠147.1331°
𝑉3 0.96051∠1.07932
𝑃4 − 𝑗𝑄4 −2.8 + 𝑗1.73520
𝐼4 = ∗ = °
= 3.493043∠145.5863°
𝑉4 0.94304∠2.62658

and we then find that

𝐼3
𝑑3 = = 0.435473 + 𝑗0.006637
𝐼3 + 𝐼4

[74]
𝐼4
𝑑4 = = 0.564527 + 𝑗0.006637
𝐼3 + 𝐼4

The quantities 𝑡1 and 𝑡2 of eqn. (1.5.8) are calculated from 𝑑3 , 𝑑4 , and the
row-one elements of 𝒁𝑏𝑢𝑠 as follows:

𝑍11
𝑡1 = = 0.993664 + 𝑗0.001259
𝑑3 𝑍13 + 𝑑4 𝑍14
𝑍12
𝑡2 = = 1.002681 − 𝑗0.000547
𝑑3 𝑍13 + 𝑑4 𝑍14

Based on the above results, we compute the −𝑑𝑖 𝑡𝑗 terms of eqn.(1.5.12)


to obtain the current transformation 𝑪

1 ∙ ⋯ ∙
∙ 1 ⋯ ∙
𝑪 = [−0.432705 − 𝑗0.007143 −0.436644 − 𝑗0.006416 ⋯ −0.432705 − 𝑗0.007143]
−0.560958 + 𝑗0.005884 −0.566037 + 𝑗0.006964 ⋯ −0.560958 + 𝑗0.005884

1 ∙ ⋯ ∙
∙ 1 ⋯ ∙
𝑪𝑇 𝑹𝑏𝑢𝑠 𝑪∗ = [−0.432705 − 𝑗0.007143 −0.436644 − 𝑗0.006416 ⋯ −0.432705 − 𝑗0.007143]
−0.560958 + 𝑗0.005884 −0.566037 + 𝑗0.006964 ⋯ −0.560958 + 𝑗0.005884

The per-unit no-load current is calculated to be

−𝑉1 1.0 + 𝑗0.0


𝐼𝑛0 = =− = −0.000436 − 𝑗0.387146
𝑍11 0.002912 − 𝑗2.582884

and using the base-case power-flow results, we compute from


eqn. (1.5.15)

1.872240
1 − 𝑗𝑠1 1 − 𝑗 (1.913152)
𝛼1 = = = 1.0 − 𝑗0.978615
𝑉1∗ 1.0∠0°
1.325439
1 − 𝑗𝑠2 1 − 𝑗 (3.180000)
𝛼2 = = = 1.016838 − 𝑗0.373855
𝑉2∗ 1.0∠−2.43995°
[75]
The hermitian matrix 𝑻𝛼 of eqn.(1.5.17) is given by

𝛼1 ∙ ∙ 𝛼1 ∙ ∙ ∗
𝑻𝛼 = [ ∙ 𝛼2 ∙ ] 𝑪𝑇 𝑹𝑏𝑢𝑠 𝑪∗ [ ∙ 𝛼2 ∙]
∙ ∙ 𝐼𝑛0 ∙ ∙ 𝐼𝑛0
8.383183 + 𝑗0.0 −0.049448 + 𝑗0.004538 0.375082 + 𝑗0.380069
𝑻𝛼 = [−0.049448 − 𝑗0.004538 5.963568 + 𝑗0.0 0.194971 + 𝑗0.539511] × 10−3
0.375082 − 𝑗0.380069 0.194971 − 𝑗0.539511 0.090121 + 𝑗0.0

By extracting the real parts of the respective elements of 𝑻𝛼 , we obtain


the desired 𝑩-matrix of per-unit loss coefficients.

𝐵11 𝐵12 𝐵10 ⁄2 8.383183 −0.049448 0.375082


[ 𝐵21 𝐵22 𝐵20 ⁄2] = [−0.049448 5.963568 0.194971] × 10−3
𝐵10 ⁄2 𝐵20 ⁄2 𝐵00 0.375082 0.194971 0.090121

From the obtained value of loss coefficients, it is now possible to compute


the solution for economic load dispatch problem. The objective function
considered is already discussed in earlier section and is given by eqn.
(1.4.10).
Using the multi-objective optimization technique, the optimum solution for
economic load dispatch problem is determined and the real power loss is
are calculated for the solution. The generator which is not connected to
the slack bus, is assigned power output of one of the generators and load
flow analysis is performed to obtain the actual loss in the system and
power output of other generator. Also the actual loss in the system is
obtained by load flow analysis.
It is important to note that all the plant power factors, bus voltages and the
load power factors are assumed to be constant throughout the process.
Using the base load value of 5 𝑝. 𝑢. contributed by loads connected to
𝑏𝑢𝑠 3 and 𝑏𝑢𝑠 4, the loss coefficients are calculated and the same are
used for calculations of other load conditions.
𝑇𝑎𝑏𝑙𝑒 5.10 shows the calculated and actual power loss for base load and
80%, 90%, 110% and 120% of the base load. The error in calculation is
also shown in MW.

[76]
Table 5.10: Calculation of transmission power loss using Genetic Algorithm

𝑮𝒆𝒏𝒆𝒕𝒊𝒄 𝑨𝒍𝒈𝒐𝒓𝒊𝒕𝒉𝒎
𝑷𝑫 𝑷𝟏 𝒖𝒔𝒊𝒏𝒈 𝑷𝟐 𝒖𝒔𝒊𝒏𝒈 𝑷𝟐 𝒖𝒔𝒊𝒏𝒈 𝑷𝑳 𝑷𝑳 𝑫𝒊𝒇𝒇. 𝒊𝒏 𝑷𝑳
𝑬𝑳𝑫 𝑬𝑳𝑫 𝑳𝒐𝒂𝒅 𝑭𝒍𝒐𝒘 (𝑨𝒄𝒕𝒖𝒂𝒍) (𝑪𝒂𝒍𝒄. ) (𝑴𝑾)
80% 2.648 1.425 1.39237 0.040372 0.07315 3.2778
90% 2.917 1.673 1.410149 0.047155 0.09047 4.3315
Base Load 3.188 1.937 1.882512 0.070525 0.11022 3.9695
110% 3.418 2.165 2.171842 0.08987 0.12865 3.878
120% 3.692 2.418 2.419919 0.111969 0.15205 4.0081

𝑇𝑎𝑏𝑙𝑒 5.10 and 𝑇𝑎𝑏𝑙𝑒 5.11 show the calculated and actual power loss for
base load and 80%, 90%, 110% and 120% of the base load using Genetic
algorithm and Firefly algorithm respectively. The error in calculation is also
shown in 𝑀𝑊.

Table 5.11: Calculation of transmission power loss using Firefly Algorithm

𝑭𝒊𝒓𝒆𝒇𝒍𝒚 𝑨𝒍𝒈𝒐𝒓𝒊𝒕𝒉𝒎
𝑷𝑫 𝑷𝟏 𝒖𝒔𝒊𝒏𝒈 𝑷𝟐 𝒖𝒔𝒊𝒏𝒈 𝑷𝟐 𝒖𝒔𝒊𝒏𝒈 𝑷𝑳 𝑷𝑳 𝑫𝒊𝒇𝒇. 𝒊𝒏 𝑷𝑳
𝑬𝑳𝑫 𝑬𝑳𝑫 𝑳𝒐𝒂𝒅 𝑭𝒍𝒐𝒘 (𝑨𝒄𝒕𝒖𝒂𝒍) (𝑪𝒂𝒍𝒄. ) (𝑴𝑾)
80% 2.6479 1.4249 1.39247 0.040372 0.0731 3.2728
90% 2.9139 1.6766 1.413257 0.047163 0.0904 4.3237
Base Load 3.18 1.9294 1.89055 0.070563 0.1096 3.9037
110% 3.4471 2.1838 2.14256 0.089686 0.1308 4.1114
120% 3.7146 2.4395 2.397148 0.111796 0.1541 4.2304

A 𝑴𝑨𝑻𝑳𝑨𝑩 code for 𝑳𝒐𝒂𝒅 𝑭𝒍𝒐𝒘 𝑨𝒏𝒂𝒍𝒚𝒔𝒊𝒔 developed at 𝑰𝑰𝑻, 𝑩𝒐𝒎𝒃𝒂𝒚 is


used for calculating the required electrical quantities.

[77]
CONCLUSIONS

[78]
Genetic Algorithm and Firefly Algorithm are used for solving the
optimization problem of economic load dispatch. From the results
obtained, following conclusions can be drawn –

 When compared to the results obtained by Gradient method, it is


found that the Genetic algorithm does not consistently provide better
solution than Gradient method. However, the amount of annual cost
advantage over Gradient method given by Genetic algorithm is
significantly high whenever the solution by the Genetic algorithm is
better.
 When compared to the results obtained by Gradient method, it is
found that the Firefly algorithm consistently provides better or
almost equivalent results. However, the annual cost advantage over
Gradient method given by Firefly algorithm is in fact negligible.
 Solution by using Firefly algorithm converges faster than the
solution by Genetic algorithm method.
 The performance of Genetic Algorithm and Firefly Algorithm can be
improved by suitably varying different program parameters. The
variation of error in solution with change in different parameters is
studied.
 The error in estimating transmission power losses using economic
load dispatch conditions for both the algorithms are listed and on the
basis of whether these errors are negligible or not, it can be decided
if there is a need to update the loss coefficients periodically.
 The objective function used in the multi-objective optimization
problem is not sufficiently effective from the point of view of
minimizing the losses.

The project needs further investigation before a conclusion is drawn for


the superior optimization algorithm out of Genetic Algorithm and Firefly
Algorithm. However, considering the need for reliability of the solution and
the time constraint due to real tie application, Firefly Algorithm can be
considered more useful for this particular application.

[79]
REFERENCES

[80]
[1] John J. Grainger, William D. Stevenson, Power System Analysis. McGraw-Hill,
Inc. 1994
[2] Kothari, D. P., and I. J. Nagrath. Power System Engineering. Tata McGraw-Hill,
2008.
[3] Bedekar, Prashant P., Sudhir R. Bhide, and Vijay S. Kale. "Optimum Unit
Commitment for Thermal Power Plants – A genetic Algorithm Approach”
In INDICON, 18–20 December, 2009.
[4] Haupt, Randy L., and Sue Ellen Haupt. Practical genetic algorithms. Wiley-
Interscience, 2004.
[5] Coello, Carlos A. Coello, and A. Carlos. "A survey of constraint handling
techniques used with evolutionary algorithms" Lania-RI-99-04, Laboratorio
Nacional de Informática Avanzada (1999).
[6] Xin She Yang, Nature Inspired Metaheuristic Algorithms, Second Edition,
Luniver Press, 2010
[7] D. Hazarika, P. K. Bordoloi. “Modified loss coefficients in the determination of
optimum generation scheduling” IEE PROCEEDINGS-C, Vol. 138, No. 2,
March 1991
[8] He Dakuo, Wang Fuli. “Feedback Penalty Based on Genetic Algorithm”
Proceedings of the 4th World Congress on Intelligent Control and Automation
[9] Homaifar, Abdollah, Charlene X. Qi, and Steven H. Lai. "Constrained
optimization via genetic algorithms." Simulation 62, no. 4 (1994): 242-253.
[10] Kuri-Morales, Angel Fernando, and Jesús Gutiérrez-García. "Penalty function
methods for constrained optimization with genetic algorithms: A statistical
analysis." In MICAI 2002: Advances in Artificial Intelligence, pp. 108-117.
Springer Berlin Heidelberg, 2002.
[11] Michalewicz, Zbigniew. "A survey of constraint handling techniques in
evolutionary computation methods." In Proceedings of the 4th Annual
Conference on Evolutionary Programming, pp. 135-155. MIT Press, 1995.
[12] Meng Xin, Gao junru, Li Lei. “Load Distribution of Thermal Power Plant Based
on Adaptive Genetic Algorithm” 2009 International Forum on Computer
Science-Technology and Applications
[13] Michalewicz, Zbigniew. "Genetic algorithms, numerical optimization, and
constraints." In Proceedings of the Sixth International Conference on Genetic
Algorithms, vol. 195, pp. 151-158. Morgan Kaufmann, San Mateo, CA, 1995.
[14] T. Kumano “A Functional Optimization Based Dynamic Economic Load
Dispatch Considering Ramping Rate of Thermal Unit Output”
[15] Dr. K. N. Shubhanga, Mr. Chandra S. R. “Manual for a Power Flow Program
(Version 1.0)” Department of Electrical Engineering, NITK, Surathkal

[81]

You might also like