Keywords

1 Introduction

The modern electrical system is shifting towards microgrid, interconnected systems and smart-grid. And with this shift, new generation technologies are coming into picture. Some of the new methods of generation include renewable energy sources (RESs) that include PV, wind, biomass, fuel cell, plug-in hybrid vehicles (PHEVs), etc. Load frequency of multi-hybrid interconnected area is demonstrated by Raju et al. [1]. Since most of these resources are capable of producing only a few kW outputs, they are used locally and then interconnected to other resources within different areas. However, most of the RESs are non-linear in nature, and generally, they are linearized using various approximation techniques. Frequency control of non-linear transfer functions is demonstrated in [2, 3] and that of an approximated linear transfer function is demonstrated in [4]. Also, the output of most of these resources is independent of load variation. Because of this reason, generally, they are connected along with a hydro or a thermal power plant which is capable of readjusting their mechanical input to counteract the changes in frequency due to mismatch in power generation and demand. During load variation in the demand side, excess load demand is met by increasing the mechanical power input which is regulated by governor action. Therefore, every area consists of an output-controllable power plant if there exists an output-uncontrollable power plant (i.e. RESs like PV-based power plant) in the same area.

This paper deals with controlling load frequency deviation to load variation as well as power generation variation by using a PID controller [5]. Every system has the inherent ability to come back to a steady state after a disturbance has occurred on the system; however, with the help of controllers, the transient and steady-state characteristics can be improved to a great extent. To decide the optimal gain values of the controllers, the controllers are trained by various algorithms. In this paper, a modified particle swarm optimization algorithm (mPSO) is discussed. And then, the output of mPSO approach is compared with some of the new optimization techniques like ant lion optimization (ALO), arithmetic optimization algorithm (AOA) [6], atomic search optimization (ASO) [7], Harris hawk optimization (HHO) [8] and two robust tools for optimization such as particle swarm optimization (PSO) [9] and genetic algorithm (GA) [10]. PSO is modified and studied in various mathematical studies in many different fields, and the efficiency of strategies behind all those modifications is demonstrated by Bansal et al. [11]. In this paper, range of inertia weight is varied rather than varying the function itself. And the inertia weight function is taken as “chaotic random”. Table 1 represents the nomenclature of various notations used in this paper.

Table 1 Nomenclature for various notations used in this paper

This paper is divided into five sections. First section briefly introduces the concept behind the model. Second section deals with the mathematical model of the systems under study. Third section briefly introduces the optimization algorithm under study. Fourth section consists of results and observations. Finally, conclusions are made in fifth section. Values and various control parameters used throughout this paper are included in the appendix section.

2 Mathematical Modelling

2.1 Thermal Generator Model

First system in this paper is a standalone conventional thermal generation system which is modelled as follows [12]:

$$G_{{{\text{gov}}}} = \frac{{k_{g} }}{{T_{g} s + 1}}$$
(1)
$$G_{{{\text{turb}}}} = \frac{{k_{t} }}{{T_{t} s + 1}}$$
(2)
$$G_{{{\text{rh}}}} = \frac{{k_{r} T_{r} s + 1}}{{T_{r} s + 1}}$$
(3)

where Ggov, Grh, and Gturb are the first-order transfer functions of the governor, re-heater and the steam-based turbine and kg, kr and kt are, respectively, the gains of governor, re-heater and steam-based turbine. The generator transfer function can be written as follows:

$$G_{{{\text{gen}}}} = \frac{{k_{p} }}{{T_{p} s + 1}}$$
(4)

where kp is the gain of generator. Tg, Tr, Tp and Tt are, respectively, the time constants in case of governor, re-heater, generator and steam-based turbine.

2.2 Wind Turbine Model

Very commonly in wind turbines, doubly-fed induction generators (DFIG) are used, which operates familiar to synchronous generators but also provides the advantage of variable speed. The mechanical power output from the wind turbine is dependent upon the speed of the wind [13]. And it is given as,

$$P_{w} = \frac{1}{2}\rho A_{r} C_{p} v_{w}^{3}$$
(5)

where ρ, Ar, Cp and vw are density of air, area swept by the blade of the wind turbine, power coefficient representing the available power after wind turbine extracts energy from the wind and velocity of the wind, respectively. The values for the above-mentioned physical parameters are given in the appendix section. And the equation to calculate the exact value of Cp is given in [13]. In this paper, the wind speed is varied to achieve varying mechanical power output. Wind turbine plays a major role of introducing non-linearity in the system. However, after linearization, the transfer function of the turbine can be approximately given by,

$$G_{{{\text{WTG}}}} = \frac{{K_{{{\text{WTG}}}} }}{{T_{{{\text{WTG}}}} s + 1}}$$
(6)

where KWTG and TWTG are the gains of wind generator and the time constant of the same, respectively.

2.3 Photovoltaic Array Model

Generally, a PV array takes temperature and solar irradiance as input to the system. Both parameters are non-linear and depend upon the natural factors, so the input to the solar panel can be considered as a time-varying non-linear input signal. However, the average output power from the PV array is given by, Eq. (7)

$$P = A_{s} \eta_{s} G\left[ {1 - 0.005\left( {T_{a} + 25} \right)} \right]$$
(7)

where As, ηs and Ta are areas of the PV array (in m2), energy conversion efficiency of one module and ambient temperature (in degree Celsius), respectively, of a PV plant. And the values of the above-mentioned physical parameters of PV array is taken from [13] and it is given in the appendix section. G is the irradiance (in kW/m2) which is considered to be varying in this paper.

After removal of all the non-linearities from the system, the transfer function of the PV system is roughly approximated as,

$$G_{s} = \frac{{\Delta P_{s} }}{\Delta G} = \frac{{k_{s} }}{{T_{s} s + 1}}$$
(8)

where ∆Ps is the power output from the PV array and ∆G is the change in irradiance. Ks and Ts represent the gain and time constant of the solar plant, respectively.

2.4 Load Frequency Control of Two Area

When there is a sudden change in active power in an area, the region starts feeding on the power supplies of other regions [4, 10, 12]. Therefore, the main task of the load frequency control (LFC) of an interconnected system is to make sure the compensation of the local area frequency and the corresponding tie-line power. The deviations in frequency, as well as tie-line power, is due to the difference between generation and load side demand, so for a connected system, tie-line power of every area has to be taken into consideration. For an area i, the power system is modelled as:

$${\Delta }\dot{f}_{i} = \left( {\frac{1}{{2H_{i} }}} \right){\Delta }P_{mi} - \left( {\frac{1}{{2H_{i} }}} \right){\Delta }P_{Li} - \left( {\frac{{D_{i} }}{{2H_{i} }}} \right){\Delta }f_{i} - \left( {\frac{1}{{2H_{i} }}} \right){\Delta }P_{{{\text{tie}},i}}$$
(9)
$${\Delta }\dot{P}_{mi} = \left( {\frac{1}{{T_{ti} }}} \right){\Delta }P_{gi} - \left( {\frac{1}{{T_{ti} }}} \right){\Delta }P_{mi}$$
(10)
$${\Delta }\dot{P}_{gi} = \left( {\frac{1}{{T_{gi} }}} \right){\Delta }P_{ci} - \left( {\frac{1}{{R_{i} .T_{gi} }}} \right){\Delta }f_{i} - \left( {\frac{1}{{T_{gi} }}} \right){\Delta }P_{gi}$$
(11)

The change in tie-line power is expressed as follows:

$$\Delta \dot{P}_{{{\text{tie}},i}} = 2\pi \left[ {\mathop \sum \limits_{{\begin{array}{*{20}c} {j = 1} \\ {j \ne i} \\ \end{array} }}^{N} T_{ij} \Delta f_{i} - \mathop \sum \limits_{{\begin{array}{*{20}c} {j = 1} \\ {j \ne i} \\ \end{array} }}^{N} T_{ij} \Delta f_{j} } \right]$$
(12)

Frequency control in power system is categorized into flat tie-line control (FTC), fixed frequency control (FFC), and tie-line power frequency deviation control (TBC). TBC based LFC is used in this paper, regional area control error (ACE) is given by the following equations:

$${\text{ACE}}_{i} = {\Delta }P_{{{\text{tie}},i}} + B_{i} {\Delta }f_{i}$$
(13)
$${\Delta }f_{i} = \frac{1}{{2H_{i} s + D_{i} }}\sum {\Delta }P_{i}$$
(14)
$${\Delta }P_{{{\text{tie}}, i}} = \frac{2\pi }{s}\mathop \sum \limits_{{\begin{array}{*{20}c} {j = 1} \\ {j \ne i} \\ \end{array} }}^{n} T_{i,j} \left( {{\Delta }f_{i} - {\Delta }f_{j} } \right)$$
(15)

where ∆Ptie,i is the total tie-line power deviation between area i and the rest of the areas and ∆fi is the frequency deviation in area-i. Bi is the frequency deviation factor, expressed in Eq. (13), and it is given by Eq. (16),

$$B_{i} = \frac{1}{{R_{i} }} + D_{i}$$
(16)

2.5 Control Strategy

To obtain the controller output, the input to the controller is taken as ACEi. In this paper, PID controller has been put into use. ui is the output of the controller and it is obtained as,

$$u_{i} = K_{pi} \left( {{\text{ACE}}_{i} } \right) + K_{ii} \int {ACE_{i} {\text{d}}t} + K_{di} \frac{{{\text{dACE}}_{i} }}{{{\text{d}}t}}$$
(17)

Equation (17) represents the controller equation for a PID controller.

The objective of the optimization is to reduce the ISE of frequency and tie-line power deviation obtained from both areas. The objective function, ISE is given by Eq. (18).

$${\text{ISE}} = \int {(\Delta P_{{{\text{tie}},i}}^{2} + \sum \Delta f_{i}^{2} )}$$
(18)

3 Overview of Modification in Particle Swarm Optimization

Particle swarm optimization algorithm (PSO) is originally developed by Kennedy and colleague Eberhart in the year 1995. The idea behind this optimization technique is based on the nature of hunting shown by a school of fish. This technique indulges in randomly locating a population of search agents in a given search space. The search agent closest to the optimum value is called the best agent of that particular iteration. In the next iteration, all the other search agents are directed towards the direction of the best search agent obtained in the first iteration by updating the velocity and position accordingly. However, in the original PSO algorithm, Kennedy and Eberhart failed to put forward how to direct the search path in the direction of global or a local optimum. Therefore, PSO was later modified by introducing the parameter “inertia weight” by Shi and Eberhart [14]. The equation of inertia weight has been modified over the years in various papers related to different optimization problems. In this paper, a new approach to calculate inertia weight during successive iteration has been introduced. The underlying principle of PSO is expressed in the form of the following equations.

$$v_{i}^{k + 1} = w \times v_{i}^{k} + c_{1} {\text{rand}}()\left( {p{\text{best}}_{i}^{k} - x_{i}^{k} } \right) + c_{2} \,{\text{rand}}()\left( {g{\text{best}}_{i}^{k} - x_{i}^{k} } \right)$$
(19)
$$x_{i}^{k + 1} = x_{i}^{k} + v_{i}^{k + 1}$$
(20)
$$w = w_{\max } - \frac{{(w_{\max } - w_{\min } ) \times {\text{present}}\_{\text{iter}}}}{{\max \_{\text{iter}}}}$$
(21)

The modification in w is done by changing the range of wmax and wmin in every iteration to quickly converge to the optimal solution. And the logic applied is if the local_best > global_best in the second half of optimization then the range of w is widened to obtain a better global optimum. But if global_best > local_best, then the range of w is reduced in steps, for better exploitation. The second half of optimization starts after the tenth iteration here. And the above logic is mathematically expressed by the following sets of equations.

$$w_{\max } = w_{{\max_{0} }} - \left\{ {0.3 \times \frac{{\left( {{\text{pres}}_{{{\text{iter}}}} - 10} \right)}}{{(\max_{{{\text{iter}}}} - 10)}}} \right\}$$
(22)
$$w_{\min } = w_{{\min_{0} }} + \left\{ {0.2 \times \frac{{\left( {{\text{pres}}_{{{\text{iter}}}} - 10} \right)}}{{(\max_{{{\text{iter}}}} - 10)}}} \right\}$$
(23)

At the end of the iteration, the optimal gain value is obtained.

4 Results and Observation

Two-area system consisting of a thermal unit and a wind unit in the first area and a thermal unit and a PV unit in the second area is modelled in MATLAB/Simulink. The thermal unit is modelled using transfer functions defined in Sect. 2.1 and the controlled power output from PID controller-1 is fed to the thermal unit of area 1. The power output from the wind turbine is connected as a constant power source, and it is modelled as defined in Sect. 2.3 of the paper. The power output of wind turbine is varied along with the wind speed. A white band noise input is used to simulate the time to time-varying wind speed. Since, practically, the wind speed varies in long intervals, the simulation time for the noise input signal is kept to around 20 s. On the other hand, the thermal unit of the second area is designed similar to that of the first area and PID controller-2 regulates the controlled output and feeds it to the thermal unit. PV unit is modelled using transfer functions given in Sect. 2.2 of the paper. Again, PV is connected as constant power output and a white band noise signal is used to describe the varying nature of irradiance. In this case, the sample time for noise signal is kept to around 5 s, considering the practical scenario on a cloudy day. And both areas are interconnected using a tie-line which is already described by equations given in Sect. 2.4. The inputs of both controllers are the ACE of respective areas, which is defined in Sect. 2.5. A load disturbance of 4% is introduced at the 20th second of simulation time at the load end of area 1 and the algorithms were run. While running the algorithms, the initialization parameter population and maximum iteration are taken ranging from 50–200 and 16–24, respectively. While the definition parameters of various algorithms are varied to their best potential in obtaining optimal gain. The proposed mPSO algorithm takes in 50 search agents and 16 iterations to converge into the final optimal value. PSO and ASO worked better with 200 search agents and 16–24 iterations. Whereas for the rest of the algorithms, total search agents were selected 150–250 and 16–24 iterations. The algorithm’s purpose was to minimize the ISE value over the limited number of iterations. Each algorithm is run multiple times, and ISE and time are recorded and compared with the proposed algorithm. The variation in time ranges from 104 s to 2 × 105 s for various algorithms, while the mPSO consumes time in the range of 5500–7500 s. In the aspect of convergence, every other algorithm converges to their respective final solution within the tenth iteration, while proposed mPSO converges within 8th–12th iteration and still searches for a global solution till last iteration. ISE is reduced to around 9.8 × 10–5 by mPSO whereas the least ISE obtained by the combined algorithms is 2.1 × 10–4. The model under study is represented by Fig. 1. The controller parameters along with other observational data are listed in Table 2. The input to the constant output sources (i.e. wind and PV) and the proposed load disturbance is shown in Fig. 2. And the output due to various algorithms is depicted in Figs. 3, 4 and 5.

Fig. 1
figure 1

The proposed model of two-area LFC consisting of RESs like wind and solar power. Load disturbance is injected at area-1. Irradiance and wind speed are considered to be fluctuating

Table 2 Comparison table among various algorithms studied
Fig. 2
figure 2

source side and due to load variation at the load end

Disturbances in the system. Due to natural factors at the

Fig. 3
figure 3

Control of change in tie-line power by using various optimizers. Major deviation in the power is observed at 20 s is caused due to the variation in wind speed and load demand. The rest of the minor deviations are caused due to irradiance variation

Fig. 4
figure 4

Area 1: Control of frequency deviation by various algorithms. Major deviation in the frequency is observed at 20 s is caused due to the variation in wind speed and load demand. The rest of the minor deviations are caused due to irradiance variation

Fig. 5
figure 5

Area 2: Control of frequency deviation by various algorithms. Major deviation in the frequency of the second area is observed at 20 s, however, at various intervals, irradiance deviation is more effective whenever large fluctuation is there, and can be seen at 10 s, 40 s, 65 s, 70 s and 75 s

5 Conclusion

This paper presents the viability of a new modified swarm optimizer mPSO when incorporated in load frequency control of integrated power system of RESs and conventional sources. The proposed mPSO strategy is compared with some of the new optimizers (AOA, HHO and ASO) in the market and some of the robust optimizers for LFC (PSO, GA and ALO). The algorithm is tested on a basic PID controller. The aspects of comparison taken into consideration in this paper mainly include the accuracy of finding optimal gain value by exploration and exploitation, time taken to converge to final result following minimizing error. After a series of simulations and iteration, it is found that in every aspect the proposed mPSO technique, while working on the LFC of two area system, gives better results than the other algorithms it is compared with. The least value of ISE is obtained with mPSO, which is 0.000098, whereas the second-least value obtained using ASO is 0.00021. The total iteration time taken by mPSO algorithm to obtain optimal gain value is 5546.6 s, which is the fastest among other algorithms, whereas the next fastest algorithm is PSO and it consumes 9902.7 s to obtain the optimal gain value. Also, while most of the algorithms rely on more search agents (50–100) for better exploration, the proposed mPSO technique requires comparatively lesser search agents (30–50). It is because in the first half of iteration the algorithm has the widest range of inertia weight (i.e. wmax = 0.9 and wmin = 0.2) which helps to search for global optimum and in the second half of the iteration, the algorithm exploits the best global optima for nearby local optima by reducing the inertia weight in steps as described in Eqs. (22 and 23) in Sect. 3. By doing this, a considerable amount of accuracy is achieved along with a significant reduction in search agents required to exploit and time spent per iteration.