Nor Fatin Binti Abd Latiff (51211216066)
Nor Fatin Binti Abd Latiff (51211216066)
JULY 2018
STUDY ON NATURE INSPIRED OPTIMIZATION TECHNIQUES
FOR LOAD FREQUENCY CONTROL (LFC) USING
FRACTIONAL ORDER (FOPID) CONTROLLER
JULY 2018
i
DECLARATION
I declare that this report is my original work and all references have been
cited adequately as required by the university.
ii
APPROVAL PAGE
I have supervised and examined this report and verify that it meets the
program and university’s requirements for the Bachelor of Engineering
Technology (Hons.) in Electrical.
Official Stamp:
iii
ACKNOWLEDGEMENT
Last but not least I would like to thank my family and my fellow friends
for their motivational words, moral and financial support during the process of
completing this project. Finally, my finest gratitude goes to those who are
involve direct or indirectly in the completion of this project. Without their
support this project would not have been done successfully.
iv
ABSTRACT
v
TABLE OF CONTENTS
Contents Page No
DECLARATION ii
APPROVAL PAGE iii
ACKNOWLEDGEMENT iv
ABSTRACT v
TABLE OF CONTENTS vi
LIST OF FIGURES ix
LIST OF TABLES xiv
LIST OF ABBREVIATIONS xvii
CHAPTER 1: INTRODUCTION
1.1 Background of the Project 1
1.2 Problem Statement 2
1.3 Objectives of the Project 3
1.4 Significance of the Project 3
1.5 Scopes and Limitations of the Project 4
1.6 Chapter Summary 4
vi
2.4.2 Fractional Calculus and Fractional Order PIDµλ 10
(FOPID) Controller Based Techniques
CHAPTER 3: METHODOLOGY
3.1 Introduction 20
3.2 Research Plan 21
3.3 MATLAB and Simulink Software 22
3.3.1 Power System Modelling 23
3.3.2 Modelling of the System 26
3.4 Load Frequency Control using FOPID Controller 27
3.4.1 Implementing FOPID Controller for Load 27
Frequency Control
3.5 Optimal Tuning of FOPID Controller using Firefly 28
Algorithm and Cuckoo Search Algorithm
3.5.1 Firefly Algorithm 29
3.5.2 Cuckoo Search Algorithm 32
3.6 Integral Time Square Error (ITSE) 35
3.7 Chapter Summary 35
vii
4.4 Case 3: Application of Fitness Function 73
4.5 Comparison of Performance Between Firefly Algorithm 89
and Cuckoo Search Algorithm
4.6 Discussions 92
4.7 Chapter Summary 97
REFERENCES 100
APPENDICES
Appendix A 103
Appendix B 104
Appendix C 107
viii
LIST OF FIGURES
ix
Value = 0.075
Figure 4-9 Firefly Algorithm Frequency Response for Load 45
Value = 0.125
Figure 4-10 Algorithm Convergence Graph for Load value 46
= 0.125
Figure 4-11 Cuckoo Search Algorithm Frequency 47
Response for Load = 0.1
Figure 4-12 Cuckoo Search Algorithm Convergence Graph 48
for Load Value = 0.1
Figure 4-13 Cuckoo Search Algorithm Frequency 49
Response for Load Value = 0.05
Figure 4-14 Cuckoo Search Algorithm Convergence Graph 50
for Load Value = 0.05
Figure 4-15 Cuckoo Search Algorithm Frequency 51
Response for Load Value = 0.15
Figure 4-16 Cuckoo Search Algorithm Convergence Graph 52
for Load Value = 0.15
Figure 4-17 Cuckoo Search Algorithm Frequency 53
Response for Load Value = 0.075
Figure 4-18 Cuckoo Search Algorithm Convergence Graph 54
for Load Value = 0.075
Figure 4-19 Cuckoo Search Algorithm Frequency 55
Response for Load Value = 0.125
Figure 4-20 Cuckoo Search Algorithm Convergence Graph 56
for Load Value = 0.125
Figure 4-21 Firefly Algorithm Frequency Response with 57
+50% Efficiency of Governor and Turbine
Figure 4-22 Firefly Algorithm Convergence Graph with 58
+50% Efficiency of Governor and Turbine
Figure 4-23 Firefly Algorithm Frequency Response with 59
+25% Efficiency of Governor and Turbine
Figure 4-24 Firefly Algorithm Convergence Graph with 60
+25% Efficiency of Governor and Turbine
x
Figure 4-25 Firefly Algorithm Frequency Response with - 61
50% Efficiency of Governor and Turbine
Figure 4-26 Firefly Algorithm Convergence Graph with - 62
50% Efficiency of Governor and Turbine
Figure 4-27 Firefly Algorithm Frequency Response with - 63
25% Efficiency of Governor and Turbine
Figure 4-28 Firefly Algorithm Convergence Graph with - 64
25% Efficiency of Governor and Turbine
Figure 4-29 Cuckoo Search Algorithm Frequency 65
Response with +50% Efficiency of Governor
and Turbine
Figure 4-30 Cuckoo Search Algorithm Convergence Graph 66
with +50% Efficiency of Governor and Turbine
Figure 4-31 Cuckoo Search Algorithm Frequency 67
Response with +25% Efficiency of Governor
and Turbine
Figure 4-32 Cuckoo Search Algorithm Convergence Graph 68
with +25% Efficiency of Governor and Turbine
Figure 4-33 Cuckoo Search Algorithm Frequency 69
Response with -50% Efficiency of Governor
and Turbine
Figure 4-34 Cuckoo Search Algorithm Convergence Graph 70
with -50% Efficiency of Governor and Turbine
Figure 4-35 Cuckoo Search Algorithm Frequency 71
Response with -25% Efficiency of Governor
and Turbine
Figure 4-36 Cuckoo Search Algorithm Convergence Graph 72
with -25% Efficiency of Governor and Turbine
Figure 4-37 Firefly Algorithm Frequency Response with 73
ITSE Fitness Function
Figure 4-38 Firefly Algorithm Convergence Graph with 74
ITSE Fitness Function
Figure 4-39 Firefly Algorithm Frequency Response with 75
xi
ITAE Fitness Function
Figure 4-40 Firefly Algorithm Convergence Graph with 76
ITAE Fitness Function
Figure 4-41 Firefly Algorithm Frequency Response with IAE 77
Fitness Function
Figure 4-42 Firefly Algorithm Convergence Graph with IAE 78
Fitness Function
Figure 4-43 Firefly Algorithm Frequency Response with ISE 79
Fitness Function
Figure 4-44 Firefly Algorithm Convergence Graph with ISE 80
Fitness Function
Figure 4-45 Cuckoo Search Algorithm Frequency 81
Response with ITSE Fitness Function
Figure 4-46 Cuckoo Search Algorithm Convergence Graph 82
with ITSE Fitness Function
Figure 4-47 Cuckoo Search Algorithm Frequency 83
Response with ITAE Fitness Function
Figure 4-48 Cuckoo Search Algorithm Convergence Graph 84
with ITAE Fitness Function
Figure 4-49 Cuckoo Search Algorithm Frequency 85
Response with IAE Fitness Function
Figure 4-50 Cuckoo Search Algorithm Convergence Graph 86
with IAE Fitness Function
Figure 4-51 Cuckoo Search Algorithm Frequency 87
Response with ISE Fitness Function
Figure 4-52 Cuckoo Search Algorithm Convergence Graph 88
with ISE Fitness Function
Figure 4-53 Cuckoo Search Algorithm Frequency 93
Response with Load Value = 0.05
Figure 4-54 Cuckoo Search Algorithm Frequency 95
Response with -50% Efficiency of Governor
and Turbine
xii
Figure 4-55 Cuckoo Search Algorithm Frequency 97
Response with ITSE Fitness Function
xiii
LIST OF TABLES
xiv
Table 4-22 Step Info 57
Table 4-23 System Parameter Values 59
Table 4-24 Step Info 59
Table 4-25 System Parameter Values 61
Table 4-26 Step Info 61
Table 4-27 System Parameter Values 63
Table 4-28 Step Info 63
Table 4-29 System Parameter Values 65
Table 4-30 Step Info 65
Table 4-31 System Parameter Values 67
Table 4-32 Step Info 67
Table 4-33 System Parameter Values 69
Table 4-34 Step Info 69
Table 4-35 System Parameter Values 71
Table 4-36 Step Info 71
Table 4-37 System Parameter Values 73
Table 4-38 Step Info 73
Table 4-39 System Parameter Values 75
Table 4-40 Step Info 75
Table 4-41 System Parameter Values 77
Table 4-42 Step Info 77
Table 4-43 System Parameter Values 79
Table 4-44 Step Info 79
Table 4-45 System Parameter Values 81
Table 4-46 Step Info 81
Table 4-47 System Parameter Values 83
Table 4-48 Step Info 83
Table 4-49 System Parameter Values 85
Table 4-50 Step Info 85
Table 4-51 System Parameter Values 87
Table 4-52 Step Info 87
Table 4-53 System Parameter Values Case 1 89
Table 4-54 System Parameter Values Case 2 90
xv
Table 4-55 System Parameter Values Case 3 91
Table 4-56 Step Info for Cuckoo Search Algorithm with 93
Load Value = 0.05
Table 4-57 Step Info for Cuckoo Search Algorithm with the 95
Governor and Turbine -50%
Table 4-58 Step Info for Cuckoo Search Algorithm with 96
Fitness Function ITSE
xvi
LIST OF ABBREVIATIONS
Abbreviation Descriptions
LFC - Load Frequency System
AVR - Automatic Voltage Regulator
FA - Firefly Algorithm
CSA - Cuckoo Search Algorithm
FOPID - Fractional Order PID
MATLAB - Matrix Laboratory
xvii
CHAPTER 1
INTRODUCTION
1
particularize boundary, is known as load frequency control (LFC). In a power
system, LFC is known to be the key part as it will determine the performance
of the power system. Most of the time an Integral Controller can be seen
used in common LFC. However, the major downside of using the Integral
Controller is that the integral gain of the controller restraints the dynamic
operation of the system. Substantial instability and oscillations might happen
from the high gain which declines the system's performance. Along this line,
the integral gain must be of a value which gives a bargain amidst a wanted
temporary recovery and small overshoot in the dynamic performance of the
whole system.
Many methodologies to attune the gain of the fixed parameters of the
PI controller were done in research and along the inclining in magnitude and
advanced power systems, there is a possibility that the system oscillation will
cultivate within wide-area which could result into an increased broad-area
blackout. Thus, modern control strategies were used in LFC such as optimal
control and adaptive control. Nonetheless, to utilize these type of control
strategies, information on the condition of the systems or systematic online
identifier is needed. It is probably difficult to use these methods if there are
shortage of info on these methods.
Generally, it is known that major scale power systems are operate by using
the interconnected subsystems. The tie lines required to be set to connect
the linking of control areas. Every area obtaining its own particular generator.
These areas are required to be able to sustain their own load besides
planned interchanges with the nearby areas. Generally, every power system
works under the condition that Generation plus Transmission losses must
equal to the connected load at rated frequency. Theoretically, if there are any
changes of the real power, it can affect the frequency of the system together
with the mechanical input power. The mechanical input power act to
generates the use of control the frequency of output electrical power. Hence,
Load Frequency Control (LFC) is a standout amongst the main issues in
electrical power system design/operation and is becoming much more
2
noteworthy lately with expanding in size, changes in structure and complexity
in interconnected power system. Due to the loading of a given power system
is inconsistent from time to time. In order to ensure the quality of power
supply, it is crucial to improve the system performance and stability. To
achieve optimum performance of power system when there are sudden area
load changes, the existence of a load frequency controller is essential to
keep the system frequency at the desired nominal value. Here also, using the
conventional PID controller is not very efficient to ensure the system stability.
PID controller can only come out with gain Kp, Ki and Kd. So, the number of
parameters that need to be evaluated is low and also the PID controller is not
very flexible due to it.
For this field, this project is much important for the stability of the electric
power system. The optimal tuning of Load Frequency Controller can ensure
the power system to run efficiently. Optimal tuning of Load Frequency
Controller can also be use in future for further analysis. Moreover, since this
project only focused on a single area, it actually can be further extended to
two, three or more areas of multiple generators on Load Frequency Control.
3
1.5 Scopes and Limitations of the Project
Overall in this chapter, a brief explanation on the problem that triggered the
need to this study is explained thus leading to the objective of this project to
solve the problem arose. The scope and limitations are also explained that is
helpful to further point on the disadvantage and advantages of this study for
further research.
4
CHAPTER 2
LITERATURE REVIEW
2.1 Introduction
5
2.2.1 Frequency
In power plant, frequency is a crucial existence along with the voltage. They
play a major role. By adjusting active power at generation side, the frequency
can be controlled. In crucial condition, from the load side, the active power
can be controlled. When the frequency at one end of the system and the
other end of the system is the same, frequency is said to remains the same
throughout the system.
Because the load varies from time to time, the value of power generation and
load consumption are imbalance. The high load variation can lead to power
blackout and power outages in interconnected power system. It is very
important to keep the stability of the power system by regulating the active
power in order to maintain the frequency. This is where control system is
needed.
6
2.3.1 Load Frequency Control
In a common type power system, majority typical sources for power produces
are like thermal, nuclear power, hydro, diesel, natural gas etc. The main
function of a power system is to counterpart the real and reactive power to
generation to the load including losses. Automatic Generation Control (AGC)
is the term used to define the problem of controlling the real power output of
each generating units with the respect to the system frequency deviation and
tie line power exchange within prescribed limits. The problem of controlling
the reactive power balance in the system is often referred to as Excitation
Control [3].
7
true power amongst the generation is a direct incorporation of net exchange
and frequency variations can lead to accomplishing the objectives of LFC.
The first plan to control the frequency was by methods for the flywheel
governor of the synchronous machine and was observe to be inadequate. By
then a supplementary control was connect to the governor by methods for a
signal particularly proportional to the frequency deviation plus its integral.
This proportional plus integral control scheme shapes the conventional
method to manage the automatic generation control of power system.
8
kind of power system. In like manner this particular circumstance, LFC issues
in the unstable power system is a difficult mission and researchers are as yet
finding the best solution in this sector. [3]
Standard control procedures for LFC issues are ones that take the integral of
a control error as the control signal. In the established control methods, to
procure the wanted gain and phase margins. Bode and Nyquist diagrams
and furthermore root locus are usually utilized. Hence, the power system
process of classic techniques for LFC issues are basic, direct and agreeable
for application. Regardless, the examination done by using these
methodologies reveal that they indicate poor dynamic execution, especially
inside seeing other destabilizing impacts, for instance, parameter varieties
and nonlinearities. [6]
A special type of optimal control that deals with linear system (in state and in
control) and minimization of fitness function that are quadratic or the
quadratic performance is Linear Quadratic Regulator (LQR) problem [6]. LQR
control in 2011 is said by Singh and Gupta to be considered in scalar system
when the sensor, controller and actuator all have their own clocks that may
drift apart from each other. Both an affine and a quadratic clock model also
considered as LQR control. An analyzation was made by Singh and Gupta
regarding the loss of performance incurred as a function of how
asynchronous the clocks are for a quadratic cost function. After a while, the
guidelines on how often to utilize the communication resources to
synchronize the clocks were obtained by them [7].
9
2.4.2 Fractional calculus and Fractional order PI𝛌𝑫µ (FOPID) Controller
Based Techniques
Fractional order PID (FOPID) controller was proposed for load frequency
control (LFC) in an interconnected power system. This controller had five
parameters to be tuned; thus, it provided two more degrees of freedom in
comparison with the conventional PID [8]. This is not a new thing nor new
concept. It is probably the earliest (19th century) systematic studies have
been done by Liouville, Riemann, and Holmgren. Since then, a few numbers
of definitions have been introduced in the literature for it, from which one is
selected to be presented here. There are few properties of FOPID that could
help to get better performance which are, robustness toward plant gain
variations, eliminating steady state error, and also a good disturbance
rejection. Here, it can be concluded that using Fractional Order PID (FOPID)
controller is actually quite good and suitable for the Load Frequency Control
(LFC) [14].
Podlubny was the first person who proposed the concept of FOPID
controller [9] [10]. Between FOPID and the conventional PID controller, the
difference is that in FOPID, the order of derivative and integral is not integer.
Because of this characteristics, FOPID controller provides extra degrees of
freedom in getting the optimal tuning of the controller. From here, it can also
lead to better performance in comparison with conventional PID [11]. As the
interest towards improving the conventional PID controller has increase,
FOPID controller has received attention in the last few years [12]. Below
shows the formulation of FOPID controller:
𝐾
𝐾(𝑆) = 𝐾𝑝 + 𝑆 𝐼 + 𝐾𝑑 𝑆 µ [13]
𝜆
where Kp, KI, and Kd are proportional, integral, and derivative gain,
respectively.While λ and μ are orders of integral and derivative, respectively.
10
Figure 2- 2: Block Diagram of FOPID Controller
11
2.5 Nature Inspired Optimization Technique
12
Table 2- 2: Nature inspired optimization techniques
Genetic Algorithm (GA) Genetic Algorithm (GA) are likely the most
famous developmental calculations regarding
the assorted variety of their application. A
larger part of surely understood enhancement
issues have been attempted by genetic
algorithm.
13
2.5.1 Firefly Algorithm
The flashing light of fireflies is a stunning sight in the summer sky in the
tropical and mild regions. There are around two thousand firefly species, and
majority fireflies create short and rhythmic flashes. The pattern of flashes is
frequently extraordinary for specific species. The flashing light is created by a
process of bioluminescence, and the verifiable purpose of such signaling
systems are still debated. Meta heuristic optimization algorithm which is
biologically inspired by the behavior of fireflies is the Firefly Algorithm. Be that
as it may, two essential elements of such flashes are to draw in mating
partners (communication), and to lure potential prey. Likewise, flashing may
also assist as a defensive cautioning instrument. The rhythmic flash, the rate
of flashing and the quantity of time from some part of the signal system that
unites both genders together. Females react to a male's uncommon pattern
of flashing in the same species, while in other type of species such as
photuris, female fireflies can copy the mating flashing pattern of other
different species in order to bait and eat the male fireflies who may
mistakenly consider the flashes as a potential suitable mate. The flashing
light can be formulated in such a way that it is related with the objective
function to be optimized, which makes it conceivable to plan a new
optimization algorithm [16].
i. This creature fireflies are unisex, they do not have gender male or
female. Because of that, fireflies are attracted to one another.
ii. As the brightness is increases, the attractiveness of the fireflies also
increases. They are directly proportional to each other. Thus, all these
fireflies easily attracted to move to the place with higher level of
brightness. While for distance and brightness, they are inversely
proportional to each other.
iii. Here, the objection function value or fitness function value is
represented by the level of the brightness.
Function of distance(r) is represented as follow:
14
β(r) = β0 𝑒 −𝛾𝑟2 [17]
Cuckoo Search (CS) was presented in 2009, and it has pulled in awesome
attention because of its promising proficiency in taking care of numerous
advancement issues and real-world applications. Over the latest couple of
years, numerous papers have been appropriated with respect to cuckoo
search, and the relevant writing has broadened basically. This part abridges
quickly most of the writing about cuckoo look in peer-reviewed diaries and
meetings discovered up until now. These references can be systematically
grouped into fitting classes, which can be utilized as a reason for further
inquire about.
15
2.5.2.1 Cuckoo Breeding Behavior
16
qualities of Lévy flights [28]. A Lévy flight is an arbitrary stroll in which the
progression lengths are conveyed by a substantial followed likelihood
dissemination. After a substantial number of steps, the separation from the
birthplace of the arbitrary walk watches out for a steady dispersion.
Activities Weeks
1 2 3 4 5 6 7 8 9 1 1 1 1 14 1 1 1
0 1 2 3 5 6 7
Free FYP
Activities
Meet FYP
SV
Introductory
FYP 1
Briefing
Meet FYP
Supervisor
Workshop
(Chapter 4 &
5)
Meet FYP
Supervisor
Free FYP
Activities
Meet FYP
Supervisor
Workshop
(Abstract
Writing &
Skills)
Free FYP
Activities
Meet FYP
Supervisor
Final FYP 2
Briefing
17
Meet FYP
Supervisor
Industry Day
Submit
complete
draft &
Check
Plagiarism
Submit
complete
draft &
Check
Plagiarism
Submission
of FYP
Thesis
Activities Weeks
1 2 3 4 5 6 7 8 9 10 11 12 13 1 15 16 17
4
Meet FYP
Supervisor
Free FYP
Activities
Introductory
FYP 2
Briefing
Free FYP
Activities
Workshop
(Chapter
4&5) in
Thesis
Writing
Free FYP
Activities
Meet FYP
Supervisor
Meet FYP
Supervisor
18
Workshop
(Abstract
Writing &
Poster)
Meet FYP
Supervisor
Meet FYP
Supervisor
Final FYP 2
Briefing
Meet FYP
Supervisor
Industry
Day
Submit
complete
draft &
Check
Plagiarism
Submit
complete
draft &
Check
Plagiarism
Final Week
for
Hardcover
Bound
This section diagrams the past concentrated identified with this examination
venture. Numerous past studies have been done identified with optimization
technique to solve optimization problem. This part abridged on what can be
expected toward the finishing of this research study. This chapter is
additionally useful with a specific end goal to pick up data on what are the
best strategies to use to increase satisfactory results for this research project.
19
CHAPTER 3
METHODOLOGY
3.1 Introduction
This chapter shall explain and justify the research methods that have chosen
to meet all the objectives in Chapter 1. The methodology is the overall
approach that underpins the research. Within this chapter also, it will expose
in details about the research plan which is the MATLAB and Simulink
software, Load Frequency Control using FOPID controller, implementing the
FOPID Controller for Load Frequency Control, optimal tuning of FOPID
controller using the Firefly Algorithm and Cuckoo Search Algorithm, and the
fitness function using the Integral Time Square Error (ITSE). All the results
and questions was presented and analyzed at Chapter 4.
20
3.2 Research Plan
Firefly Algorithm
Cuckoo Search
21
3.3 MATLAB and SIMULINK Software
This chapter clearly defines the research methods used to conduct the study
for this paper. MATLAB is a high-performance language for technical
computing. It integrates computation, visualization, and programming in an
easy-to-use environment where problems and solutions are expressed in
familiar mathematical notation. Typical uses include:
22
By using the MATLAB (Matrix Laboratory) of Simulink, the model block
of single area interconnected reheat thermal system with the additional of
FOPID Controller can be designed. Then, to observe the frequency response
and tie line power in terms of settling time and overshoot/undershoot.
Moreover, a comparative analysis using the Cuckoo Search (CS) algorithm
and Firefly Algorithm (FA) technique to tune the FOPID controller of the LFC.
In addition, a Graphical-user interface (GUI) will be designed to show how
the scheme works and for users’ ease.
In this project, the system under study is a single area interconnected reheat
thermal system. To achieve the reliable and safety operation of power
system, it is necessary that one controller has been considered for each
generation unit. Each power plant consists of the speed governing system,
turbine and generator that for simplicity at analysis in the frequency domain,
the transfer functions are used for modelling the power system components.
The Load Frequency Control (LFC) is utilized to keep up sensibly uniform
recurrence, to separate the heap between the generators, and to control the
tie-line exchange plans. The adjustment in recurrence is detected when the
rotor edge δ is changed. The blunder signals are changed into genuine
power command signal, which is sent to prime mover, to require an
augmentation in the torque. The prime mover at that point acquires change
the generator output by a sum which will change the estimations of inside the
predetermined resistance.
23
component that characterizes a numerical connection between its input
and output. To make this basic model, it required four Simulink blocks.
24
d) Constructing Simulink Block Diagram
Afterward, the block diagram can be constructed in Simulink. The block
diagram for every element must be constructed independently. Later, the
subcomponent is ready to be integrated into a whole system.
e) Running the Simulation
The last part in modelling using Simulink is to run the simulation and
examine the outcomes. Simulink allows us to initialize system inputs,
simulate a model, and see alteration of behaviour which enables us to
rapidly assesses the model.
f) Validating Simulation Results
After the model have been simulated, the model must be validated to see
whether it precisely replicates the attributes of the system. The
linearization and trimming instruments accessible from the command line
of MATLAB can be used to examine and validate the model. Outside of
Simulink before beginning to construct the model, MATLAB performs the
first three steps stated.
25
3.3.2 Modelling of the System
26
3.4 Load Frequency Control Using FOPID Controller
The idea of FOPID controller was first proposed by Podlubny. The difference
amongst FOPID and PID controller is that, in FOPID, the request of
derivative and essential is not whole number. This trademark gives additional
degrees of freedom in tuning the controller and can prompt better powerful
execution in comparison with ordinary PID. Because of expanding
enthusiasm for enhancing the response of regular PID, FOPID controller has
gotten extensive consideration in the most recent couple of years. The
definition of FOPID controller is demonstrated as follows:
𝐾
K (S) = 𝐾𝑝 + 𝑆𝜆𝐼 + 𝐾𝑑 𝑆𝜇
where Kp, Ki, and Kd proportional, integral, and derivative gain, respectively.
27
Additionally, λ and μ are requests of basic and derivative gain,
separately. It is demonstrated that implementing FOPID controller for LFC
enhances the power framework reaction in terms of settling time, overshoots,
and undershoots. Also, this controller is vigorous to watch the recurrence
reaction and tie line control regarding settling time and overshoot/undershoot.
The gains of the FOPID controller can be acquired by trial and error method.
Each FOPID controller has five parameters to be tuned, and along these
lines, in the contemplated single area reheat thermal system, there were five
parameters to be ideally tuned. Figure 7 demonstrates the flowchart of tuning
the parameters utilizing Firefly Algorithm (FA) and Cuckoo Search Algorithm.
28
3.5.1 Firefly Algorithm
i. The fireflies are unisex thus the fireflies are attracted to each other.
ii. The attractiveness of the fireflies is proportional to their brightness.
Thus, the fireflies are attracted and move depending on the higher
level of brightness.
iii. The level of brightness however is inversely proportional to the
distance between fireflies.
iv. The level of brightness represents the objective function value.
[3]
[4]
where 𝑥𝑖 and 𝑥𝑗 denotes two different fireflies and the motion of the firefly
is conveyed as:
[5]
In the controller optimization problem, the fireflies are used to represent the
FOPID parameters Kp, Ki, Kd, Mu and Lambda. The error criterion of the
29
controller is utilized as the objective function. In this investigation the integral
time weighted squared error (ITSE) is used. The upper bound and lower
bound of the FOPID controller’s parameters are set in the range of [0.2,2].
30
Figure 3- 5: Flowchart of Firefly Algorithm
31
3.5.2 Cuckoo Search Algorithm
i. Each cuckoo selects a nest randomly and lays one egg in it.
ii. The best nests with high quality of eggs will be carried over to the next
generation.
iii. For a fixed number of nests, a host cuckoo can discover a foreign egg
with a probability 𝑝𝛼 є [0,1]. In this case, the host cuckoo can either
throw the egg away or abandon the nest and build a new one
somewhere else.
32
The basic steps of the Cuckoo search algorithm based on three rules can be
summarized as pseudo code shown:
33
Figure 3- 6: Flowchart of Cuckoo Search Algorithm
34
3.6 Integral Time Square Error
ITSE incorporates the squared error multiplied by the time over time. The
function of ITSE is to weight errors which exist after quite a while. A much
more heavily than those towards the beginning of the response. ITSE tuning
makes systems which settle rapidly. The drawback of ITSE is that the tuning
likewise makes systems to have more oscillations.
𝑡
𝐼𝑇𝑆𝐸 = ∫0 𝑡. (𝐴𝐶𝐸𝑖 )2dt [23]
35
CHAPTER 4
4.1 Introduction
The first case is the application of load with different number of values
to both of the optimization technique. For each area the value of load will
start at 0.1, the load will then be increased and decreased by 25% and 50%
respectively. The load value that will be tested is 0.1, 0.075, 0.05, 0.125, and
0.5. The second case is the efficiency of the governor and turbine applied for
both of the optimization technique. Here, the value of the governor and
turbine will then be increased and decreased also at 25% and 50%. The third
case is the application of the different fitness function which is IAE, ITAE and
ISE. The parameters of the FOPID controller is recorded to see the
performance of each algorithm.
36
4.2 Case 1: Application of Load
Firefly Algorithm Performance for Load applied in the Area Load Value = 0.1
Controller Kp Ki Kd µ λ
Values
1.4653 1.4350 1.0653 0.9493 1.0400
37
Figure 4- 2: Firefly Algorithm Convergence graph for Load Value = 0.1
38
Firefly Algorithm Performance for Load applied in the Area Load Value = 0.05
Controller Kp Ki Kd µ λ
Values
1.3503 1.2416 1.1884 0.8514 1.0325
39
Figure 4- 4: Firefly Algorithm Convergence Graph for Load Value = 0.05
40
Firefly Algorithm Performance for Load applied in the Area Load Value = 0.15
Controller Kp Ki Kd µ λ
Values
1.4635 1.3073 1.2480 0.9292 1.0686
41
Figure 4- 6: Firefly Algorithm Convergence Graph for Load Value = 0.15
42
Firefly Algorithm Performance for Load applied in the Area Load Value =
0.075
Controller Kp Ki Kd µ λ
Values
1.0078 1.3660 1.4719 1.1924 0.9310
43
Figure 4- 8: Firefly Algorithm Convergence graph for Load Value = 0.075
44
Firefly Algorithm Performance for Load applied in the Area Load Value =
0.125
Controller Kp Ki Kd µ λ
Values
1.2552 1.5024 0.5088 1.0933 1.1676
45
Figure 4- 10: Firefly Algorithm Convergence Graph for Load value = 0.125
46
Cuckoo Search Algorithm Performance for Load applied in the Area Load
Value = 0.1
Controller Kp Ki Kd µ λ
Values
2 2 1.6290 0.8734 1.0047
47
Figure 4- 12: Cuckoo Search Algorithm Convergence Graph for Load Value =
0.1
48
Cuckoo Search Algorithm Performance for Load applied in the Area Load
Value = 0.05
Controller Kp Ki Kd µ λ
Values
2 2 1.6380 0.8730 1.0037
Figure 4- 13: Cuckoo Search Algorithm Frequency Response for Load Value
= 0.05
49
Figure 4- 14: Cuckoo Search Algorithm Convergence Graph for Load Value =
0.05
50
Cuckoo Search Algorithm Performance for Load applied in the Area Load
Value = 0.15
Controller Kp Ki Kd µ λ
Values
2 2 1.6093 0.8808 1.0025
Figure 4- 15: Cuckoo Search Algorithm Frequency Response for Load Value
= 0.15
51
Figure 4- 16: Cuckoo Search Algorithm Convergence Graph for Load Value =
0.15
52
Cuckoo Search Algorithm Performance for Load applied in the Area Load
Value = 0.075
Controller Kp Ki Kd µ λ
Values
2 2 1.6307 0.8742 1.0059
Figure 4- 17: Cuckoo Search Algorithm Frequency Response for Load Value
= 0.075
53
Figure 4- 18: Cuckoo Search Algorithm Convergence Graph for Load Value =
0.075
54
Cuckoo Search Algorithm Performance for Load applied in the Area Load
Value = 0.125
Controller Kp Ki Kd µ λ
Values
2 2 1.6493 0.8740 1.0046
Figure 4- 19: Cuckoo Search Algorithm Frequency Response for Load Value
= 0.125
55
Figure 4- 20: Cuckoo Search Algorithm Convergence Graph for Load Value =
0.125
56
4.3 Case 2: Application of Governor and Turbine
Controller Kp Ki Kd µ λ
Values
1.7350 1.7950 1.9100 1.0350 1.1450
57
Figure 4- 22: Firefly Algorithm Convergence Graph with +50% Efficiency of
Governor and Turbine
58
Firefly Algorithm Performance for Governor and Turbine
Controller Kp Ki Kd µ λ
Values
1.6252 1.1955 1.6556 1.0764 0.9352
59
Figure 4- 24: Firefly Algorithm Convergence Graph with +25% Efficiency of
Governor and Turbine
60
Firefly Algorithm Performance for Governor and Turbine
Controller Kp Ki Kd µ λ
Values
1.2992 1.3249 0.9466 0.6417 1.1268
61
Figure 4- 26: Firefly Algorithm Convergence Graph with -50% Efficiency of
Governor and Turbine
62
Firefly Algorithm Performance for Governor and Turbine
Controller Kp Ki Kd µ λ
Values
0.7419 1.7725 1.4378 0.6920 1.0037
63
Figure 4- 28: Firefly Algorithm Convergence Graph with -25% Efficiency of
Governor and Turbine
64
Cuckoo Search Performance for Governor and Turbine
Controller Kp Ki Kd µ λ
Values
2 2 2 0.9815 0.9730
65
Figure 4- 30: Cuckoo Search Algorithm Convergence Graph with +50%
Efficiency of Governor and Turbine
66
Cuckoo Search Performance for Governor and Turbine
Controller Kp Ki Kd µ λ
Values
2 2 2 0.9814 0.9730
67
Figure 4- 32: Cuckoo Search Algorithm Convergence Graph with +25%
Efficiency of Governor and Turbine
68
Cuckoo Search Performance for Governor and Turbine
Controller Kp Ki Kd µ λ
Values
2 2 1.1395 0.8328 1.0215
69
Figure 4- 34: Cuckoo Search Algorithm Convergence Graph with -50%
Efficiency of Governor and Turbine
70
Cuckoo Search Performance for Governor and Turbine
Controller Kp Ki Kd µ λ
Values
2 2 2 0.9147 0.9918
71
Figure 4- 36: Cuckoo Search Algorithm Convergence Graph with -25%
Efficiency of Governor and Turbine
72
4.4 Case 3: Application of Fitness Function
Controller Kp Ki Kd µ λ
Values
1.0078 1.3660 1.4719 1.1924 0.9310
73
Figure 4- 38: Firefly Algorithm Convergence Graph with ITSE Fitness
Function
74
Firefly Algorithm Performance for Fitness Function
Controller Kp Ki Kd µ λ
Values
1.1848 1.5498 0.5512 0.8917 1.1408
75
Figure 4- 40: Firefly Algorithm Convergence Graph with ITAE Fitness
Function
76
Firefly Algorithm Performance for Fitness Function
Controller Kp Ki Kd µ λ
Values
0.5504 1.5540 0.8025 0.4963 1.2951
77
Figure 4- 42: Firefly Algorithm Convergence Graph with IAE Fitness Function
78
Firefly Algorithm Performance for Fitness Function
Controller Kp Ki Kd µ λ
Values
1.6216 1.7812 1.3241 1.2240 0.7920
79
Figure 4- 44: Firefly Algorithm Convergence Graph with ISE Fitness Function
80
Cuckoo Search Algorithm Performance for Fitness Function
Controller Kp Ki Kd µ λ
Values
2 1.9999 1.6290 0.8734 1.0047
81
Figure 4- 46: Cuckoo Search Algorithm Convergence Graph with ITSE
Fitness Function
82
Cuckoo Search Algorithm Performance for Fitness Function
Controller Kp Ki Kd µ λ
Values
1.8100 1.9993 0.9411 1.0676 1.0001
83
Figure 4- 48: Cuckoo Search Algorithm Convergence Graph with ITAE
Fitness Function
84
Cuckoo Search Algorithm Performance for Fitness Function
Controller Kp Ki Kd µ λ
Values
2 2 0.9090 1.1050 1.0086
85
Figure 4- 50: Cuckoo Search Algorithm Convergence Graph with IAE Fitness
Function
86
Cuckoo Search Algorithm Performance for Fitness Function
Controller Kp Ki Kd µ λ
Values
2 2 2 0.9438 0.9747
87
Figure 4- 52: Cuckoo Search Algorithm Convergence Graph with ISE Fitness
Function
88
4.5 Comparison of performance between Firefly Algorithm and
Cuckoo Search Algorithm
Value Kp Ki Kd µ λ Objective
Function
89
Case 2: Application of Governor and Turbine
% Kp Ki Kd µ λ Objective
Function
CS
+25% 2 2 2 0.9814 0.9730 0.0009253
90
Case 3: Application of Fitness Function
Type Kp Ki Kd µ λ Objective
Function
CS
ITAE 1.8100 1.9993 0.9411 1.0676 1.0001 0.0451
91
4.6 Discussions
The Firefly Algorithm and Cuckoo Search Algorithm are applied to optimize
the gains of the FOPID controller. The tuning method is used to optimize the
proportional (Kp), integral (Ki), derivative (Kd) gains, µ and λ of the controller.
The modelling and optimization process is carried out using MATLAB
software version R2016a. The model of the single area reheat thermal power
system is designed in Simulink and the controller optimization is executed
through an M-file script.
This project consists of three cases. Case 1 is where the load is set
accordingly to the different value of load in the simulation block. The load
demand of the first value was set to 0.1. Figure 4-1 till Figure 4-20 shows the
frequency response of the both optimization technique used which are Firefly
Algorithm and Cuckoo Search Algorithm. Table 4-53 shows the system
parameter values for each load in Case 1. Here, it can be seen that using the
Cuckoo Search Algorithm as the optimization technique has better
performance compared to the Firefly Algorithm. In terms of the settling time,
Firefly Algorithm with the load value of 0.125 as referred to the Table 4-10
and the frequency response in Figure 4-9 settles the system better
compares to the Cuckoo Search Algorithm in Figure 4.19 with the time
11.9303s. The oscillations for Cuckoo Search Algorithm less than Firefly
Algorithm. The overshoot value for Cuckoo Search Algorithm is slightly
higher compared to the Firefly Algorithm. Comparing the error for both
techniques, Cuckoo Search Algorithm has a lower ITSE compared to the
Firefly Algorithm. Moreover, the value of the load was decreased and
increased to 25% and 50% in from the initial load value which is 0.1, as the
value of load increased, it seems that the frequency response for both Firefly
Algorithm and Cuckoo Search Algorithm has a greater undershoot compared
to the initial load value of 0.1. It is also noticed that the ITSE for both
algorithms are slightly different but only by small margin.
Table 4- 56: Step Info for Cuckoo Search with Load = 0.05
93
The algorithms then further tested in Case 2 whereby the value of the
governor and turbine were altered by decreasing and increasing to the value
of 25% and 50% accordingly. The case 2 focuses on whether the efficiency
of both governor and turbine would affect the performance of the system.
Table 4-54 shows the system parameter values for Case 2. This test is done
in order to further verify the performance of the algorithms used which are
Firefly Algorithm and Cuckoo Search Algorithm. The value of governor and
turbine is increased to 50%, thus resulted the value of the overshoot in Firefly
Algorithm to be higher than the value of overshoot in Cuckoo Search
Algorithm. In terms of undershoot, Cuckoo Search Algorithm has lower value
of undershoot compared to Firefly Algorithm. Here, the tuning of the
controller for Firefly Algorithm settled faster compare to the Cuckoo Search
Algorithm. Besides, the value of ITSE in Cuckoo Search Algorithm is lesser
than the value of ITSE in Firefly Algorithm.
94
lower than the Firefly Algorithm. Overall, we can say that in Case 2 as
referring to step info at Table 4-57 and frequency response at Figure 4-54,
Cuckoo Search Algorithm for the value of governor and turbine decreased to
50% has the best performance.
Table 4- 57: Step Info of Cuckoo Search Governor and Turbine -50%
Next, the simulation is then run to determine the best algorithm for the
Case 3. Here, by using different types of fitness function, it shows that every
fitness function results by different value of parameters. In terms of
overshoot/undershoot and settling time also different from each other. Table
4-55 shows the system parameter values after running all the simulations for
Case 3. The fitness function used in case three are Integral of Time
multiplied with Square Error (ITSE), Integral of Time Absolute Error (ITAE),
Integral of Absolute Error (IAE), and Integral of Square Error (ISE). The
usage of ITSE shows that the value of the fitness function in Cuckoo Search
95
Algorithm is lower than the Firefly Algorithm. Whereas, in terms of overshoot,
the value of the overshoot in Firefly Algorithm is higher than the Cuckoo
Search Algorithm while the value of undershoot in Cuckoo Search Algorithm
obtaining lower value than Firefly Algorithm. For ITSE, Cuckoo Search
Algorithm settled faster than the Firefly Algorithm.
Next, by using the IAE as the fitness function, it shows that Cuckoo
Search Algorithm has better performance compared to Firefly Algorithm. In
terms of overshoot and undershoot, the value of overshoot in Firefly
Algorithm has lower value than Cuckoo Search Algorithm while the value of
undershoot in Cuckoo Search Algorithm is higher than the Firefly Algorithm.
Here, Firefly Algorithm settled faster than the Cuckoo Search Algorithm.
Finally using the ISE, it proved that Firefly Algorithm has better
performance compared to the Cuckoo Search Algorithm. The value of
overshoot in Cuckoo Search Algorithm is higher and the value of undershoot
in Cuckoo Search Algorithm is lower than the Firefly Algorithm. In terms of
settling time, Cuckoo Search Algorithm settled faster than the Firefly
Algorithm. In this case as referred to step info at Table 4-58 and frequency
response at Figure 4-55, Cuckoo Search Algorithm with ITSE has the best
performance.
Table 4- 58: Step Info Cuckoo Search Algorithm with Fitness Function ITSE
96
Figure 4- 55: Cuckoo Search Algorithm Frequency Response with ITSE
Fitness Function
Lastly the convergence graph which shows the value of error for all
100 runs of the algorithms used is observed. From the observation, it is seen
that for all three cases tested, Firefly Algorithm has faster rate of searching
for the best optimal solution compare to Cuckoo Search Algorithm. However,
the last value of error for both algorithms is compared and it can be seen that
Cuckoo Search Algorithm has a lower value of error for majority of the test
compared to Firefly Algorithm. This shows that Cuckoo Search Algorithm has
a better performance compared to Firefly Algorithm.
This chapter shows the final results obtained in the project. This chapter is
important in order to know whether the project reach its objective or not.
From the results obtained in this chapter it can be say that the project is a
success as it achieved the objective of comparing and identifying the
optimization algorithm that has the better performance.
97
CHAPTER 5
5.1 Introduction
This chapter shall properly assess the project on how the project is achieved
and being done. Within the chapter also, obtaining the recommendations of
how the project can be improve for the future.
5.2 Conclusions
98
Algorithm shows a better performance in all three out of the three cases
tested. This research can further be investigated by using different variations
of Cuckoo Search Algorithm and Firefly Algorithm available.
5.2 Recommendations
There are few recommendations that can be further done in this project in
future. Firstly, this project can further be done for other type of optimization
algorithms. In further studies, other optimization algorithms to be tested
compared such as the Grey Wolves Optimization (GWO) technique, Particle
Swarm Optimization (PSO) technique which are popular algorithms that are
said to have a good performance in terms of the overshoot/undershoot, and
settling time. As an addition, there are other variation of Firefly Algorithm
such as the Levy Flight Optimization Algorithm and Chaotic Firefly Algorithm
that can be further study in future. Next, this project can also be further
extended on two, three and more areas so that the scope and limitation of
this project can get wider. Moreover, in future this project can be further study
on how a single FOPID controller can be uses to control more than one area.
To make this study a more reliable research, the values of the FOPID
parameters of the controller should be tested using a real FOPID controller to
a power plant to validate the results obtained.
99
REFERENCES
[7] Rahul Singh and Vijay Gupta (2011): “On LQR Control with
Asynchronous Clocks” Department of Electrical Engineering,
University of Notre Dome, Notre Dome, IN 46556, Dec. 2011.
100
36th conference on decision and control. San Diego, California,
USA; 1997.
[14] Swati Sondhi & Yogesh Hote Energy Conversion and Management,
Volume 85, September 2014, Pages 343-353. “Fractional order PID
controller for load frequency control”.
[17] D. Karaboga and B. Basturk, "A powerful and efficient algorithm for
numerical function optimization: artificial bee colony (ABC)
algorithm," Journal of global optimization, vol. 39, pp. 459-471,
2007.
[19] Payne RB, Sorenson MD, Klitz K, (2005) The Cuckoos, Oxford
University Press.
101
[20] Yang XS, Deb S, (2009) Cuckoo search via Lévy flights, Proceeings of
World Congress on Nature & Biologically Inspired Computing, India,
pp 210-214.
102
APPENDIX A
103
APPENDIX B
%Firefly Algorithm
no_fireflies = 30;
MaxGeneration = 100;
D=5;
ub=2;
lb=0.2;
Range = ub-lb;
gamma=1.0;
delta=0.97;
alpha=0.8;
betamin=0.2;
% ------------------------------------------------
%Initialization
firefly = rand(no_fireflies,D).* Range + lb;
acc = 0.005;
value = firefly;
firefly = round(value/acc)*acc;
ObjVal = tracklsqabc6(firefly,no_fireflies);
ObjVal = ObjVal';
[firefly ObjVal];
% ------------------------------------------------
delta=1-(10^(-4)/0.9)^(1^MaxGeneration);
alpha=(1-delta)*alpha;
% ------------------------------------------------
% Evaluate new solutions (for all n fireflies)
for i=1:no_fireflies
ObjVal(i) = tracklsqabc6(firefly(i,:),1);
Lightn(i)=ObjVal(i);
104
end
% Ranking fireflies based on their light intensity/objectives
[Lightn,Index]=sort(ObjVal);
ns_tmp=firefly;
for i=1:no_fireflies
firefly(i,:)=ns_tmp(Index(i),:);
end
% Find the current best
fireflyo=firefly;
Lighto=Lightn;
Fireflybest=firefly(1,:);
Lightbest=Lightn(1);
% Updating fireflies
for i=1:no_fireflies
105
%%Check Limit of Kp Ki Kd
for i2=1:no_fireflies
for i3 = 1:D
if (firefly(i2,i3)<lb)
firefly(i2,i3) = lb;
end
if(firefly(i2,i3)>ub)
firefly(i2,i3) = ub;
end
end
end
% for i2=1:no_fireflies
% if firefly(i2,:)<lb , firefly(i2,:) = lb; end
% if firefly(i2,:)>ub , firefly(i2,:) = ub; end
%
% for i3=1
% if firefly(i3,:)<lb , firefly(i3,:) = lb; end
% if firefly(i3,:)>ub , firefly(i3,:) = ub; end
% end
% end
pp(k,:) = Lightbest;
k
Lightbest
Fireflybest
end
Fireflybest = [Fireflybest Lightbest];
Kp = Fireflybest(:,1)
Ki = Fireflybest(:,2)
Kd = Fireflybest(:,3)
mu = Fireflybest(:,4)
lambda = Fireflybest(:,5)
%set_param('sim12ex51','SimulationCommand','start');
106
APPENDIX C
N_iter=0;
%% Starting iterations
for iter=1:N_IterTotal,
% Generate new solutions (but keep the current best)
new_nest=get_cuckoos(nest,bestnest,Lb,Ub);
107
[fnew,best,nest,fitness]=get_best_nest(nest,new_nest,fitness,n);
% Update the counter
N_iter=N_iter+n;
% Discovery and randomization
new_nest=empty_nests(nest,Lb,Ub,pa) ;
[fnew,best,nest,fitness]=get_best_nest(nest,new_nest,fitness,n);
% Update the counter again
N_iter=N_iter+n;
% Find the best objective so far
if fnew<fmin,
fmin=fnew;
bestnest=best;
end
pp(iter,:) = fmin;
%%
Kp = bestnest(:,1)
Ki = bestnest(:,2)
Kd = bestnest(:,3)
mu = bestnest(:,4)
lambda = bestnest(:,5)
%set_param('sim12ex51','SimulationCommand','start');
108