Introduction

Emissions from the fossil fuels consumed by power plants lead to increased operational costs, as well as requiring much attention to minimize pollution. The economic dispatch (ED) problem has been considered since 1990, when ED was enacted by the Clean Air Organization to control environmental pollution, including SO2, NOx, and CO2. Various methods have been utilized to reduce emissions and the different strategies utilized to decrease emissions can be divided into three groups [1], as follows:

  • Installation of pollution removal devices in power plant sites;

  • Replacement of old devices with new ones;

  • Operation of power plants by considering environmental pollutants.

Various approaches have been proposed that consider emissions from power plants to address the ED problem. Finnegan and Fouad considered the emissions from power plants for the first time in 1974 [2], where they treated emissions as a constraint within a permissible range. Later, this strategy was used to control pollution in related studies [3]. The EMO algorithm was employed in [5] to speed up the convergence of an operational cost function. Many other solutions have been suggested to address this problem in previous studies. Analytical methods [6], a Lagrangian method [7], and the Newton–Raphson method [8] have all been employed as initial approaches. Evolutionary methods have also been employed for this purpose, such as a genetic algorithm [9], particle swarm optimization (PSO) [10], simulated annealing [11], artificial immune system [12], differential evolution [13], and the frog algorithm [14]. In [15], the PSO-SIL algorithm was used to obtain an economical power flow with the optimum costs.

These methods differ in terms of their speed and accuracy. The ED problem without consideration of environmental issues leads to increased costs. In addition, concerns over environmental pollutions are increasing constantly. However, the aforementioned techniques only consider the costs related to systems. In this study, we propose an analytical strategy for simultaneously minimizing costs and the emissions from power plants. This multi-objective problem is solved using a multi-objective PSO (MOPSO) algorithm. We applied the proposed strategy to a realistic six-bus test system. The results obtained were validated based on comparisons with those produced using the classic nonlinear programming (NLP) method.

The remainder of this paper is organized as follows. In Sect. 2, the ED problem is modeled for a power system by considering an emissions function. Additional constraints such as the ramp-rate limit and prohibited operating zone for generators, as well as network security are also considered. Furthermore, the problem-solving method is described in this section. In Sect. 3, MOPSO algorithm is proposed as a method for solving the problem. In Sect. 4, we present the simulations and the numerical results are discussed. Finally, we give our conclusions in Sect. 5.

Economic dispatch considering emissions

In power distribution systems, electrical engineers attempt to improve the power system efficiency by increasing the number of generating units and making profits to obtain the maximum benefits with the least cost. In addition, they should satisfy the total load requirements of the network and observe all the operating constraints on power plants, as well as transmission lines. The ED problem is an optimization problem regarding environmental emissions and the operating costs for generating units. The aim when solving this problem is to meet the load demand with the least cost and emissions, while also satisfying the constraints on the problem.

Operating cost function

The operating cost function comprising the constant cost and output power cost is given by Eq. (1). Quadratic operating cost function is the most common and simplest one because of neglecting valve-point effect that is expressed in ED problems.

$$ {\text{Min}}\;F_{1} (x) = \sum\limits_{i = 1}^{N} {10^{ - 2} (\alpha_{i} + \beta_{i} P_{Gi} + \gamma_{i} P_{Gi}^{2} } ) $$
(1)

Emission function

To minimize environmental deterioration due to emissions from fossil fuels in power plants, the amount of pollutants should depend on the output power from the generating power plant. Thus, an objective function for minimizing environmental pollution can be described by Eq. (2) [3, 4]:

$$ {\text{Min}}\;F_{2} (x) = \sum\limits_{i = 1}^{N} {10^{ - 2} (\alpha_{i} + \beta_{i} P_{Gi} + \gamma_{i} P_{Gi}^{2} } ) $$
(2)

Constraints

The power system considered operates subject to technical constraints.

Power balance constraint

The total generating power by all generating units is equal to the total load demand:

$$ \sum\limits_{i = 1}^{N} {P_{i} - P_{D} - P_{\text{loss}} = 0} $$
(3)

The system power loss is obtained by Eq. (4) based on matrix B, as follows.

$$ P_{\text{Loss}} = \sum\limits_{i = 1}^{N} {\sum\limits_{j = 1}^{N} {P_{i} } B_{ij} P_{j} + \sum\limits_{i = 1}^{N} {B_{i0} P_{i} + B_{00} } } $$
(4)

Generating units operating constraint

According to its technical characteristics, each generating unit can operate in an appropriate range. If the generating units violate the specified range, this does not result in cost-effective operation. Thus, upper and lower boundary power levels exist for each generating unit, as specified by Eq. (5):

$$ P_{i}^{ \hbox{min} } \le P_{i} \le P_{i}^{ \hbox{max} } $$
(5)

\( P_{i}^{ \hbox{min} } \) and \( P_{i}^{ \hbox{max} } \) are generated by each generating unit, respectively.

Ramp-rate limit

Thermal power plants cannot increase or decrease their output power instantaneously. Instead, the changes occur with a limited rate. Violating this rate will lead to damage to the rotor, thereby increasing the operating costs. The output power of active units should observe the following constraints:

$$ P_{i}^{ \hbox{max} } (t) = \hbox{min} (P_{i} (t - 1) + RUR_{i} \,\,,\,P_{i}^{\hbox{min} } ) $$
(6)
$$ P_{i}^{ \hbox{min} } (t) = \hbox{max} (P_{i} (t - 1) - RDR_{i} \,\,,\,P_{i}^{ \hbox{min} } ) $$
(7)

To comply with the aforementioned limitations, it is necessary to know the initial generation level for each unit. Figure 1 shows how to apply these limitations.

Fig. 1
figure 1

Various constraints on generating unit

MOPSO algorithm

Multi-objective optimization problems have several conflicting objective functions as well as equality and inequality constraints that should be optimized simultaneously, as follows.

$$ {\text{Min}}F(\vec{X}) = [f_{1} (\vec{X}),f_{2} (\vec{X}), \ldots ,f_{N} (\vec{X})^{T} $$
$$ \begin{aligned} &{\text{Subject}}\;{\text{to}}: \hfill \\ & g_{i} (X) < 0 \Rightarrow i = 1,2, \ldots N_{\text{eq}} \hfill \\ & h_{i} (X) = 0 \Rightarrow i = 1,2, \ldots N_{\text{eq}} \hfill \\ \end{aligned} $$
(8)

The space where the objective function is defined is called the objective space. In multi-objective optimization, both solutions have two states: one solution dominates another solution or none is dominated by another, as described by Eq. (9).

$$ \begin{aligned} \forall j \in \left\{ {1,2, \ldots ,n} \right\}, \Rightarrow f_{i} (\vec{X}_{1} ) \le f_{i} (\vec{X}_{2} ) \hfill \\ \exists k \in \left\{ {1,2, \ldots n} \right\} \Rightarrow f_{k} (\vec{X}_{2} ) < f_{K} (\vec{X}_{2} ) \hfill \\ \end{aligned} $$
(9)

By applying the Pareto criterion to the PSO algorithm, we can use this algorithm to solve multi-objective problems [16]. The MOPSO algorithm uses an external memory where dominant solutions are stored, i.e. an archive. First, the algorithm starts with initial random particles. Next, all the particles in the population are compared with each other in an iterative process and the positions of the dominant particles are stored in the archive. The velocity and position of ith particle in the dth dimension for the t + 1th iteration are updated using Eqs. (10) and (11). For detailed information, readers are referred to [16].

$$ x_{id}^{t + 1} = x_{id}^{t} + v_{id}^{t + 1} $$
(10)
$$ v_{id}^{t + 1} = w \times v_{id}^{t} + c_{1} rand_{1} \times (P_{bestid}^{t} - x_{id}^{t} ) + c_{2} rand_{2} \times (g_{bestrd}^{t} - x_{id}^{t} ) $$
(11)

The following steps are required to apply the algorithm to the problem considered in this study.

Step 1) Enter the input data

First, the input data required by the program are entered in detail: the power system configuration, operating characteristics of the generating units, and pollution coefficients for each generating unit.

Step 2) Define the initial population.

An initial populations and velocities are formed by considering the problem constraints using Eq. (12):

$$ \begin{aligned} & {\text{Population}} = [X_{1} ,X_{2} , \ldots ,X_{{N_{\text{Swarm}} }} ]^{T} \\ & X_{0} = [x_{0}^{1} ,x_{0}^{2} , \ldots ,x_{0}^{n} ] \\ & x_{0}^{j} = {\text{rand}}(0) \times (x_{j}^{ \hbox{max} } - x_{j}^{ \hbox{min} } ) + x_{j}^{ \hbox{min} } \\ & j = 1,2, \ldots ,n \\ & {\text{Velocity}} = [V_{1} \;V_{2} \; \ldots \;V_{{N_{\text{Swarm}} }} ]^{T} \\ & V_{i} = [v_{i} ]_{1 \times n} \\ & v_{i} = {\text{rand}}(0) \times (v_{i}^{ \hbox{max} } - v_{i}^{ \hbox{min} } ) + v_{i}^{\hbox{min} } \\ & i = 1,2, \ldots ,N_{\text{Swarm}} \\ \end{aligned} $$
(12)

where, n is the number of state variables, v i and x i are the velocity and position of the ith state variable, respectively, rand (0) is a random number between 0 and 1.

Step 3) Apply the power dispatch algorithm, as shown in Fig. 2, to each generated population. In addition, calculate a fitness function based on the equations, i.e., the objective functions.

Fig. 2
figure 2

Power dispatch algorithm flowchart

Step 4) Determine the non-dominated solutions.

The non-dominated solutions are determined by Eq. (8).

Step 5) Separate the non-dominated solutions and store them in an archive.

To access non-dominated solutions, they should be stored.

Step 6) Select the best particle from the archive of non-dominated solutions as a leader.

The leader selection process is as follows. First, the search space is divided into equal parts. Next, a probability distribution is assigned to each search space division. Finally, the best particle is selected as the leader by a roulette wheel method.

Step 7) Obtain the new velocity and position for each particle using Eqs. (10) and (11).

Step 8) Update the best position for each particle by comparing each particle’s new position with the previous positions.

$$ P_{{{\text{best}},i}} (t + 1) = \left\{ \begin{aligned} & P{}_{{{\text{best}},i}}(t)\quad P_{{{\text{best}},i}} (t) \prec \,X_{i} (t + 1) \hfill \\ &X_{i} (t + 1)\quad X_{i} (t + 1) \prec \,P_{{{\text{best}},i}} (t)\, \hfill \\ &{\text{select}}\,\;{\text{randomly}} \hfill \\& (P_{{{\text{best}},i}} (t)orX_{i} (t + 1))\quad {\text{otherwise}} \hfill \\ \end{aligned} \right. $$
(13)

Step 9) Integrate the current non-dominated solutions into the archive.

Step 10) Eliminate dominated solutions from the archive.

Dominated-solutions are eliminated from solution circle of the archive.

Step 11) If the number of solutions in the archive exceeds a predefined value, eliminate extra solutions.

Step 12) Check the program termination criterion.

If the maximum number of iterations is reached, the optimization process is terminated; otherwise, the previous generation is replaced by the new current generation and the algorithm jumps to Step 6. Figure 3 shows a flowchart illustrating the proposed algorithm for solving the optimization problem.

Fig. 3
figure 3

MOPSO flowchart

Step 13) Select the best interactive solution.

To select the best solution among the optimum solutions obtained, a fuzzy decision function with a membership function is employed to include the exact values of variables, where the membership function \( \mu_{i}^{k} \) shows the ith objective function’s optimality among the kth Pareto optimal solutions calculated by Eq. (14):

$$ \mu_{i}^{k} = \left\{ \begin{aligned} &1\quad f_{i} \le f_{i}^{\hbox{min} } \hfill \\& \frac{{f_{i}^{ \hbox{max} } - f_{i} }}{{f_{i}^{ \hbox{max} } - f_{i}^{ \hbox{min} } }}\;f_{i}^{ \hbox{max} } < f_{i} < f_{i}^{\hbox{min} } \quad \hfill \\ & 0\quad f_{i} \ge f_{i}^{ \hbox{max} } \hfill \\ \end{aligned} \right. $$
(14)

These limits are calculated separately in the proposed method using the optimization results for each objective function. \( \mu_{i}^{k} \) Ranges between 0 and 1 such that \( \mu_{i}^{k} = 0 \) indicates the incompatibility of the solution with the specified objectives, whereas \( \mu_{i}^{k} = 1 \) indicates full compatibility. For each Pareto k’s optimum solution, the normalized membership function is obtained by Eq. (15):

$$ \mu^{k} = \frac{{\sum\limits_{i = 1}^{m} {\mu_{i}^{k} } }}{{\sum\limits_{k = 1}^{n} {\sum\limits_{i = 1}^{m} {\mu_{i}^{k} } } }} $$
(15)

The solution with the highest membership function is selected as the best compatible solution. Figure 4 illustrates the optimization problem and the application of the fuzzy method to select the best solution from the Pareto solution set.

Fig. 4
figure 4

Application of the fuzzy method to select the best solution from the Pareto solution set

Case study and simulation results

To demonstrate the effectiveness of the proposed algorithm, a six-bus test system was used for simulation purpose. This power system is utilized to solve economic load dispatch considering air pollution under safety constraint by MOPSO algorithm. The proposed approach was applied to the system under various load conditions and the results obtained were compared with those produced by the classic NLP method (for detailed information readers are referred to [17]). The system considered has been in use for 25 years. The average increased cost of generating units was 45 $/MWh. The system is shown in Fig. 5.

Fig. 5
figure 5

Case study system

The system considered in the case study comprised three power plants and six generating units. The fuel costs and pollution coefficients for the generating units are given in Table 1 and 2, respectively. For simplicity, we only considered one pollutant, i.e. NOx. Table 3 shows the coefficients for the system’s transmission power loss. The method used in this study is based on the fundamentals algorithm as a multi-objective function. Thus, using the Pareto optimization principle, we formulated a MOPSO algorithm to solve the problem. In addition, the results obtained were compared with those produced by the classic NLP to demonstrate the superior performance of our method in terms of accuracy.

Table 1 Fuel costs for generating units
Table 2 Pollution coefficients for generating units
Table 3 Transmission power loss coefficients

Operating cost function

In this section, the results obtained in terms of minimizing the operating cost function are presented in two modes: with and without system power loss. The optimum power dispatch levels for the generating units using PSO and NLP are shown in Tables 4 and 5, respectively.

Table 4 Economic dispatch without transmission system power loss
Table 5 Economic dispatch with transmission system power loss

The results in Tables 4 and 5 indicate that generating units 5 and 6, which had the lowest start-up cost among all the generating units, contributed enormously to meeting the load demand. Generating unit-5 produces 2,871,629 MW and generating unit-6 generates 2,828,004 MW without considering power losses. Obviously, these values increase when power losses are considered (see Table 5).

Figure 6 shows the convergence trend with the proposed method when minimizing the operating cost function with/without system power loss. Based on the results obtained and Fig. 6, we can state that when transmission system loss was included, the operating cost increased from 45,463.49 $/h to 47,170.92 $/h.

Fig. 6
figure 6

Convergence trend of the operating costs: a without transmission power loss; and b with transmission power loss

Emission cost function

In this section, we present the results obtained by minimizing the emission cost function in two modes: with and without system power loss. The optimum power dispatch levels for the generating units using PSO and NLP are shown in Tables 6 and 7, respectively.

Table 6 Economic dispatch of emissions without transmission system power loss
Table 7 Economic dispatch of emissions with transmission system power loss

Based on the results in Tables 6 and 7, we can state that generating units 1 and 2, which had the lowest emissions, operated near their maximum value and these units made major contributions to meeting the load demand. Generating unit-1 produces total power of 116.99 MW and generating unit-2 generates 116.98 MW without power loss. This will definitely increase when power loss is considered (See Table 7).

Figure 7 shows the convergence trend with the proposed method when minimizing the emission cost function with/without system power loss. According to the results obtained, when transmission system loss was included, the emission costs increased from 646.12 to 697.03 kg/h.

Fig. 7
figure 7

Convergence trend in the emission costs: a without transmission power loss; and b with transmission power loss

Simultaneous minimization of the operating cost and emission cost functions

In this section, we present the results obtained by simultaneously minimizing the operating and emission cost functions in two modes: with and without system power loss. The optimum power dispatch levels for the generating units using MOPSO and NLP are shown in Tables 8 and 9, respectively.

Table 8 Simultaneous minimization of the operating cost and emission cost functions without transmission system power loss
Table 9 Simultaneous minimization of the operating cost and emission cost functions with transmission system power loss

According to the results in Tables 8 and 9, when we simultaneously optimized the operating and emission cost functions, there was a trade-off between the two conflicting functions to operate the system at the optimum point.

Figure 8 shows the convergence trend with the proposed method when we simultaneously minimized the operating cost and emission cost functions with/without system power loss.

Fig. 8
figure 8

Pareto criterion distribution based on the operating and emission costs: a without transmission power loss; and b with transmission power loss

Conclusions

In this study, the MOPSO algorithm was used to solve the ED problem considering emissions in a power system with various constraints. To obtain satisfactory results, the problem was solved by taking into account the operating and emission costs in a separate mode. Next, the problem was solved by trading off between two contrasting objective functions, i.e., operating and emission cost functions, for simultaneous minimization. This process was analyzed in two modes, without and with transmission system power loss. As results indicate when two objective functions are optimized simultaneously the related costs are highly reduced. Comparing the results obtained with those produced by the NLP method demonstrated that the MOPSO algorithm outperformed the NLP method in terms of its accuracy and convergence speed as results show, if two pollution and exploitation cost functions are optimized simultaneously, without considering losses, their values would be 46,112.09 $/h and 682.32 $/h and if losses are considered, these values would be 48,381.09 $/h and 726.52 $/h.