Parallel Multi-Objective Genetic Algorithm for Short-Term Economic Environmental Hydrothermal Scheduling

With the increasingly serious energy crisis and environmental pollution, the short-term economic environmental hydrothermal scheduling (SEEHTS) problem is becoming more and more important in modern electrical power systems. In order to handle the SEEHTS problem efficiently, the parallel multi-objective genetic algorithm (PMOGA) is proposed in the paper. Based on the Fork/Join parallel framework, PMOGA divides the whole population of individuals into several subpopulations which will evolve in different cores simultaneously. In this way, PMOGA can avoid the wastage of computational resources and increase the population diversity. Moreover, the constraint handling technique is used to handle the complex constraints in SEEHTS, and a selection strategy based on constraint violation is also employed to ensure the convergence speed and solution feasibility. The results from a hydrothermal system in different cases indicate that PMOGA can make the utmost of system resources to significantly improve the computing efficiency and solution quality. Moreover, PMOGA has competitive performance in SEEHTS when compared with several other methods reported in the previous literature, providing a new approach for the operation of hydrothermal systems.


Introduction
Along with the rapid development of global economy over the past several decades, the power demand has increased continuously, and a large amount of hydro and thermal plants have been successively built to supply sufficient energy [1][2][3].However, thermal plants inevitably produce emissions of pollutants like sulfur oxide and nitrogen oxide, which gives rise to a series of serious environmental problems and high social economic costs [4][5][6].Given to strong awareness about sustainable development, short-term economic environmental hydrothermal scheduling (SEEHTS) is becoming one of the most important optimization problems in modern electrical power systems [7].The main aim of SEEHTS is to choose the optimal operational process in a scheduling period to minimize the total fuel cost and pollutant emission cost simultaneously, while satisfying a group of equality and inequality constraints imposed on the system, including generation limits of hydro and thermal plants, storage and discharge limits and hydraulic balance of hydro plants, and load balance.diversity simultaneously; (3) a new heuristic constraint handling method based on the two-stage proportional adjustment idea is proposed to ensure the feasibility of solutions; and (4) our method outperforms several other methods, which proves to be an alternative tool for the SEEHTS problem.
The rest of this paper is organized as follows.Section 2 introduces the mathematical model for the SEEHTS problem.Section 3 presents the proposed PMOGA method.Section 4 gives the details of PMOGA for the SEEHTS problem.Section 5 provides the experimental results and discussions.Section 6 presents the conclusions.

Object Function
Since the short-term hydrothermal system scheduling minimizes both environmental pollutant and economic costs simultaneously, the optimization objectives can be described as follows: where f eco ($) and f emi (lb) denote the total economic cost and environmental cost, respectively.

Economic Objective
Generally, the fuel cost for thermal plants can be seen as the sum of a quadratic and a sinusoidal function representing the valve-point effect.The economic objective is to minimize the total fuel cost of hydrothermal system over the planning period, which can be described as follows: where N T is the number of thermal plants; J is the number of time intervals; P j Ti is the power generation of the i-th thermal plant at the j-th interval in MW; f i P j Ti denotes the fuel cost function of the i-th thermal plant at the j-th interval in $; a i ($/h), b i ($/MWh), c i ($/(MW) 2 h), d i ($/h) and e i (1/MW) are the fuel coefficients of the i-th thermal plant , respectively; P min Ti is the minimum power of the i-th thermal plant in MW.

Environmental Objective
Compared to hydropower plants, thermal plants may produce some atmospheric pollution during power generation.Thus, the environmental objective is to minimize the total emission pollutants of thermal generators as much as possible, which can be expressed as follows: where e i P j Ti is the emission cost function of the i-th thermal plant at the j-th interval in lb.α i (lb/h), β i (lb/MWh), γ i (lb/(MW) 2 h), η i (lb/h) and θ i (1/MW) are the emission coefficients of the i-th thermal plant , respectively.

Constraints
In SEEHTS, a large amount of equality and inequality constraints must be considered, such as water and load balances, reservoir discharge rates, and technical constraints for hydro or thermal generators.Besides, for the purposed of persistence, the variable units are the same as those in [32,33].
where N H is number of hydro plants in system; P j D is the system load at the jth interval in MW; P j L is the power transmission loss at the j-th interval in MW, which is described as follows: where P j m denotes the power generation of the m-th plants in system at the j-th interval in MW; B m 2i , B m 1i and B 0 (MW) represent the power transmission loss coefficients, respectively.Furthermore, P j Hk denotes the power output of the kth hydro plant at the j-th interval in MW, which is a quadratic function of water discharge and storage volumes as follows [32,34]: (6)   where C k1 , C k2 , C k3 , C k4 , C k5 and C k6 represent the generation coefficients of the k-th hydro plant, respectively.The units of C k1 , C k2 and C k3 are respectively MW/(10 4 •m 3 ) 2 , the units of C k4 and C k5 are respectively MW/10 4 •m 3 , while the unit of C k6 is MW.V j Hk is the initial storage of the k-th hydro plant at the j-th interval in 10 4 •m 3 .Q j Hk is the water discharge of the k-th hydro plant at the j-th interval in 10 4 •m 3 .

Thermal Plant Power Output Capacity Constraints
where P j,max Ti and P j,min Ti are the maximum and minimum power output of the i-th thermal plant at the j-th interval in MW, respectively.

P j,min Hk
where P j,max Hk and P j,min Hk are the maximum and minimum power output of the k-th hydro plant at the j-th interval in MW, respectively.

Reservoir Storage Volume Constraints
where V j,max Hk and V j,min Hk represent the maximum and minimum storage volume of the k-th hydro plant at the j-th interval in 10 4 •m 3 , respectively.

Water Discharge Constraints
Energies 2017, 10, 163 where Q j,max Hk and Q j,min Hk represent the maximum and minimum water discharge of the k-th hydro plant at the j-th interval in 10 4 •m 3 , respectively.

Water Dynamic Balance Constraints
where I j Hk and S j Hk represent the local inflow and water spillage of the k-th hydro plant at the j-th interval in 10 4 •m 3 , respectively.To be mentioned, for simplicity, it is assumed that all the water discharge is used for generation.Ω k is the set of directly upstream hydro plants above the kth hydro plant.τ k l is the water transport period from hydro plant l to k.

Initial and Terminal Storage Volume Constraints
where V beg Hk and V end Hk are the initial storage volume and final storage volume of the k-th hydro plant in 10 4 •m 3 , respectively.

Overview of Multi-Objective Genetic Algorithm
In fact, multi-objective optimization (MOO) has found many applications in the energy field.Without loss of generality, supposing that there are n objectives to be minimized, which is defined as f (x) = [f 1 (x), f 2 (x), . . ., f n (x)], where f i (x) is the ith objective and x is the decision vector.Generally, in MOO problems, no one solution is better than any other solutions with respect to all objectives.Hence, MOO aims at finding the Pareto optimal solution set consisting of alternative compromise solutions for all the objectives [31,[35][36][37].
The non-dominated sorting genetic algorithm-II, NSGA-II for short, is one of the most classical multi-objective genetic algorithms used to solve MOO problems [30].Due to its practicality and feasibility, NSGA-II is chosen as the method to be parallelized in this research.In the NSGA-II, each potential solution for the optimization problem at hand is treated as one individual surviving in nature.After randomly generating the initial population in the search space, three basic evolutionary operators-the selection operator, crossover operator and mutation operator-are used to produce the new population composed of elite individuals.Moreover, using the fast sorting method and crowding distance strategy, all the Pareto solutions obtained at each cycle will be dynamically updated [38,39].The iterative process will be not stopped until the terminal condition is met, then the final individuals represent the approximate optimal Pareto solutions.The procedures of NSGA-II are briefly described as follows: Step 1: Preparation and initialization.Determine the necessary computational parameters of the algorithm, and generate the parent population randomly in the feasible space.
Step 2: Calculate the objective function values and constraint violation value of each solution in the parent population.
Step 3: Fast non-dominated sorting the parent population.Each solution is assigned a front level equal to its own non-domination level.Then, calculate the crowding distance value of all the individuals at each non-domination level, which will be used to sort the parent population in a descending order.
Energies 2017, 10, 163 6 of 22 Step 4: Selection operation.Two individuals randomly chosen from the hybrid population are compared, and the one with better front level and crowding distance value will be selected as the candidate solution in the mating pool.
Step 5: Crossover and mutation operation.To enhance the population diversity, the predefined crossover operator and mutation operator will be used to generate the offspring population.
Step 6: The parent population and offspring population are combined and sorted based on the non-domination and crowding distance.Then, the better solutions will be chosen as the members in the new generation.
Step 7: Repeat Steps 2 to 6 until the maximum iteration is reached, then export the Pareto optimal solutions.

Fork/Join Parallel Framework
As a famous parallel framework based on the divide-and-conquer strategy, Fork/Join first divides the complicated computational task into a series of smaller subtasks to be simultaneously solved by simple methods, and then merges the solutions of all the subtasks to obtain the final optimal result of the original problem [20,26].Figure 1 shows a diagram of the Fork/Join framework.In the Fork/Join framework, the threshold is used to control the scale of the subtasks and decide whether to implement the decomposition process.Thus, the threshold selection has direct impact on the performance of parallel methods: smaller value usually brings about heavy management expenses spent on subtasks, while larger value cannot make full use of the abundant multi-core resource in computers.Thus, the threshold value should be chosen carefully before the calculation.To obtain better parallelization performance, the threshold here is defined as follows: where T is the threshold value; a is the scale of the parent task; P is the number of units for parallel computing; and x represents the minimum integer bigger than x.
In Fork/Join, to reduce the extra cost caused by the frequent creation and closure of worker threads, the thread pool where the number of threads is equal to the number of cores is created at the beginning.During the parallel computation process, to avoid wasting multi-core resources, Fork/Join uses the work stealing technique to handle the work queue contention problem.Besides, as Fork/Join is an open source project, with little knowledge of the technical parallelization, programmers can call the universal application programming interface to develop procedures running in many operating systems that support Java virtual machine operation [26].Thus, due to the above outstanding merits, Fork/Join is employed in this paper to realize the implementation of parallel algorithms for solving the SEEHTS problem.

Fork/Join Parallel Framework
As a famous parallel framework based on the divide-and-conquer strategy, Fork/Join first divides the complicated computational task into a series of smaller subtasks to be simultaneously solved by simple methods, and then merges the solutions of all the subtasks to obtain the final optimal result of the original problem [20,26].Figure 1 shows a diagram of the Fork/Join framework.In the Fork/Join framework, the threshold is used to control the scale of the subtasks and decide whether to implement the decomposition process.Thus, the threshold selection has direct impact on the performance of parallel methods: smaller value usually brings about heavy management expenses spent on subtasks, while larger value cannot make full use of the abundant multi-core resource in computers.Thus, the threshold value should be chosen carefully before the calculation.To obtain better parallelization performance, the threshold here is defined as follows: where T is the threshold value; a is the scale of the parent task; P is the number of units for parallel computing; and x     represents the minimum integer bigger than x.In Fork/Join, to reduce the extra cost caused by the frequent creation and closure of worker threads, the thread pool where the number of threads is equal to the number of cores is created at the beginning.During the parallel computation process, to avoid wasting multi-core resources, Fork/Join uses the work stealing technique to handle the work queue contention problem.Besides, as Fork/Join is an open source project, with little knowledge of the technical parallelization, programmers can call the universal application programming interface to develop procedures running in many operating systems that support Java virtual machine operation [26].Thus, due to the above outstanding merits, Fork/Join is employed in this paper to realize the implementation of parallel algorithms for solving the SEEHTS problem.

Parallel Multi-Objective Genetic Algorithm
Although the NSGA-II algorithm has been successfully employed to solve multi-objective problems, this method still has some disadvantages: (1) considering the worst case of all operations, the overall complexity of NSGA-II exhibits an approximate square growth [30], i.e., O(M•N 2 ), where M and N denote the number of objectives and individuals, respectively; (2) at the latter evolution process, the diversity of individuals will significantly reduce, and the population tends to emerge the premature convergence [29].When handling large-scale engineering problems, NSGA-II may take a long computation time to finish the entire evolution process, but the pseudo Pareto optimal

Parallel Multi-Objective Genetic Algorithm
Although the NSGA-II algorithm has been successfully employed to solve multi-objective problems, this method still has some disadvantages: (1) considering the worst case of all operations, the overall complexity of NSGA-II exhibits an approximate square growth [30], i.e., O(M•N 2 ), where M and N denote the number of objectives and individuals, respectively; (2) at the latter evolution process, the diversity of individuals will significantly reduce, and the population tends to emerge the premature convergence [29].When handling large-scale engineering problems, NSGA-II may take a long computation time to finish the entire evolution process, but the pseudo Pareto optimal solutions are obtained in the end.Then, inspired by some earlier studies on the small population technique [40,41] and multi-core parallel technology [20,21], the PMOGA is proposed in this section to alleviate the above problems in MOGA.
Figure 2 shows a map of the population decomposition process in PMOGA, while the map of the PMOGA algorithm is given in Figure 3.In the PMOGA, the calculation of the original larger population is treated as the parent task.After the initialization step, the divide-and-conquer strategy is used to divide the task into several smaller subpopulations which will be executed simultaneously in different cores or threads.Each computing unit only answers for the task assigned by thread manager, and all the subpopulations start searching for the feasible Pareto solutions.The parallel processing will not be stopped until all subtasks finish the corresponding calculation task.Once the calculation of all subtasks is done, the main thread will collect the final Pareto solutions of all the subpopulations and choose the best individuals to form up the optimal Pareto solution set.
Energies 2017, 10, 163 7 of 21 manager, and all the subpopulations start searching for the feasible Pareto solutions.The parallel processing will not be stopped until all subtasks finish the corresponding calculation task.Once the calculation of all subtasks is done, the main thread will collect the final Pareto solutions of all the subpopulations and choose the best individuals to form up the optimal Pareto solution set.In summary, our method can combine the advantages of MOGA and parallel technique so as to enhance the population diversity and computational efficiency simultaneously.On the one hand, as shown in Figure 4, PMOGA can maintain the population diversity by dividing the whole population into several small subpopulations to search for Pareto solutions independently in the problem space.The small-population based strategy can help increase the exploitation and exploration ability of swarms and avoid the prematurity problem of MOGA as far as possible.

Individual
Search direction Individual Search direction  manager, and all the subpopulations start searching for the feasible Pareto solutions.The parallel processing will not be stopped until all subtasks finish the corresponding calculation task.Once the calculation of all subtasks is done, the main thread will collect the final Pareto solutions of all the subpopulations and choose the best individuals to form up the optimal Pareto solution set.In summary, our method can combine the advantages of MOGA and parallel technique so as to enhance the population diversity and computational efficiency simultaneously.On the one hand, as shown in Figure 4, PMOGA can maintain the population diversity by dividing the whole population into several small subpopulations to search for Pareto solutions independently in the problem space.The small-population based strategy can help increase the exploitation and exploration ability of swarms and avoid the prematurity problem of MOGA as far as possible.

Individual
Search direction Individual Search direction  In summary, our method can combine the advantages of MOGA and parallel technique so as to enhance the population diversity and computational efficiency simultaneously.On the one hand, as shown in Figure 4, PMOGA can maintain the population diversity by dividing the whole population into several small subpopulations to search for Pareto solutions independently in the problem space.The small-population based strategy can help increase the exploitation and exploration ability of swarms and avoid the prematurity problem of MOGA as far as possible.
In summary, our method can combine the advantages of MOGA and parallel technique so as to enhance the population diversity and computational efficiency simultaneously.On the one hand, as shown in Figure 4, PMOGA can maintain the population diversity by dividing the whole population into several small subpopulations to search for Pareto solutions independently in the problem space.The small-population based strategy can help increase the exploitation and exploration ability of swarms and avoid the prematurity problem of MOGA as far as possible.

Individual
Search direction Individual Search direction On the other hand, by using the parallel technique, PMOGA can reduce the execution time of population evolution significantly.Assume there are N individuals and M objectives, when PMOGA is performed in P units, the number of individuals in each subpopulation is about N/P, and the complexity of each subtask is reduced to O(M•( N/P) 2 ), which indicates that PMOGA lowers the computational complexity and improves the efficiency compared with MOGA.In addition, with the On the other hand, by using the parallel technique, PMOGA can reduce the execution time of population evolution significantly.Assume there are N individuals and M objectives, when PMOGA is performed in P units, the number of individuals in each subpopulation is about N/P, and the complexity of each subtask is reduced to O(M•(N/P) 2 ), which indicates that PMOGA lowers the computational complexity and improves the efficiency compared with MOGA.In addition, with the increase of cores involved in the calculation, the acceleration effect of the algorithm will become more obvious, and the algorithm can finish more tasks within the same computation time.Thus, based on the parallel technique and population decomposition strategy, the proposed PMOGA can effectively address the complicated SEEHTS problem.

PMOGA for Short-Term Economic Environmental Hydrothermal Scheduling
In this section, some practical strategies are proposed to deal with complicated constraints in the SEEHTS problem.

Structure of Individuals
For convenience, the water discharge of hydro plants and power generation of thermal plants are selected as decision variables for evolution.The structure of an individual is expressed by the following real-coded matrix consisted of some decision variables: Thus, each individual contains the detailed scheduling decision information of all the N H + N T generators in T periods, and the total dimension of the population is N P •(N H + N T )•T, where N P denotes the number of individuals in the population.

Initialization of Individuals
During the initialization phase, the elements of all the N P individuals are generated randomly in the feasible range of water discharge in hydro plants and power output in thermal plants, which is as follows: where U(0,1) denotes the number distributed uniformly in the range of [0,1].

Constraint Handling Method
Since the SEEHTS involves a number of complex constraints, the newly generated individuals in the initialization phase and evolution process may not satisfy all the necessary constraints, which will influence the convergence speed of algorithms [29,33].Thus, a heuristic strategy for repairing infeasible solutions is proposed in this section to enhance the computing efficiency of algorithms.Moreover, the equality constraints (power and water balances) are solved through an iterative scheme for each set of values of decision variables given by the optimizer, and they are not handled as part of the optimization algorithm, while only bounds and inequality constraints are handled by the optimizer.

Inequality Constraints Handling Method
When the elements of the newly generated individuals do not satisfy the boundary constraints, the following formula will be used to modify the infeasible values:

Water Balance Constraints Handling Method
To deal with the water balance constraints, a two stage proportional adjustment method is proposed.This method first calculates the total water discharge volume, and then adjusts the water discharge sequence by the relative weight which is gotten by the original water discharge rate in the total left water discharge volume.The procedure is as follows: Step 1: Set the hydro plant index k = 1.
Step 2: Calculate the total water discharge of the kth hydro plant.According to Equations (11) and (12), the terminal reservoir storage volume V end Hk can be expressed as follows: Thus, the possible total discharge rate W k of the k-th hydro plant during the whole scheduling periods is as follows: Step 3: Use the following formula to adjust the water discharge rate to be feasible value at any periods, and then the modified water discharge sequence Hk is used to calculate the corresponding storage volumes of the kth hydro plant in the scheduling periods.
Step 4: Set k = k + 1, and if k ≤ N H , go to Step 2; otherwise, the process to adjust water balance constraints is done.

Power Balance Constraints Handling Method
In this section, to satisfy the power balance constraints, the output of thermal plants is adjusted without changing the output of hydro plants in the previous adjustment.The procedure is as follows: Step 1: Set the period index j = 1.
Step 2: Calculate the power transmission loss by Equation ( 5) and the total power output D j left for thermal plants by Equation (21).
Step 3: Use the following formula to adjust the power output of all thermal plants to be feasible value at the current period: Step 4: Set j = j + 1, and if j ≤ T, go back to Step 2; otherwise, the process for handling load balance constraints is done.

Selection Strategy Based on Constraint Violation
In theory, the individuals modified by the above constraint handling process can satisfy all the constraints imposed on hydrothermal systems.However, it is possible that some infeasible solutions still exist because of various problems.Thus, after the elements are modified to be feasible values during the constraint handling process, the total violation of individual X will be calculated by summing the violation of storage volume, power output and system balance, which is as follows: From the above equation, it can be found that TV will be zero and a positive number for feasible solutions and infeasible solutions, respectively.Here, to make full use of the constraint violation information, the dominance relationship between any two solutions X 1 and X 2 is modified as below: (1) the feasible individual always dominates the infeasible one; (2) between two feasible individuals, the dominance relationship is determined by the objectives and crowding distance; (3) between two infeasible candidates, the one with smaller violation value is chosen.

Outline of PMOGA for the SEEHTS Problem
The outline of PMOGA for solving the SEEHTS problem is presented as below: Step 1: Preparation.Set the computing parameters, such as the population size, the maximum iteration and the worker threads for parallelization.
Step 2: Initialization.Use the method in Section 4.2 to initialize all the individuals randomly in the problem space.Then, the main thread creates a thread pool and divides the whole population into several subpopulations to be concurrently optimized.
Step 3: Subpopulation evolution.For any one subpopulation, use the corresponding crossover, mutation and selection operators to generate the members for the next cycle, and the whole iterative process will not be stopped until the maximum iteration is reached.To be mentioned, for the target subpopulation, the constraint handling method in Section 4.3 is used to repair infeasible solutions, while the method in Section 4.4 is employed to verify the performance of solutions.
Step 4: Stop the calculation.The main thread will shut down the thread pool when all the subpopulations finish the calculation.Meanwhile, the results of each subpopulation are collected to form up the optimal Pareto solution set that will be exported as the final solutions for the problem.

Description of the Power System
In this section, we choose a classical interconnected hydrothermal power system to verify the performance of the proposed method.Figure 5 shows a schematic map of the test hydrothermal system that has four cascaded hydro plants and three thermal plants.The scheduling period is one day, while the time interval is 1 h, and the whole number of scheduling intervals is 24.For the power system, the related coefficients data and operation limits of plants, system load at each period and hydraulic connection of reservoirs are taken from [32].These data are not given here due to the space limitations.For testifying the feasibility of the proposed method, three different case studies were implemented in the following sections.For three cases, there is some difference in the calculation of the economic objective and transmission line losses, while they all have 168 decision variables and are subjected to the necessary boundary constraints, about 192 inequality constraints and 128 equality constraints.In addition, given that evolutionary algorithms use random numbers, there may be some difference in the optimal solutions found in different trails.Hence, to compare the performance of algorithms in each study, we run our algorithms 10 times with a different random number seed.variables and are subjected to the necessary boundary constraints, about 192 inequality constraints and 128 equality constraints.In addition, given that evolutionary algorithms use random numbers, there may be some difference in the optimal solutions found in different trails.Hence, to compare the performance of algorithms in each study, we run our algorithms 10 times with a different random number seed.

Parameters Setting
Based on lots of trials, the basic parameters of PMOGA are set as follows: the population size is 1200, the max iterations are 1000, and the size of external archive set is 30.The MOGA parameters are the same as that of PMOGA.Moreover, the number of worker threads in PMOGA is set to be equal to the number of computer cores.All the examples are encoded in Java language and executed on a personal computer with the Windows XP operating system and one Intel Xeon CPU E3-1245@3.30GHz (four cores).

Parameters Setting
Based on lots of trials, the basic parameters of PMOGA are set as follows: the population size is 1200, the max iterations are 1000, and the size of external archive set is 30.The MOGA parameters are the same as that of PMOGA.Moreover, the number of worker threads in PMOGA is set to be equal to the number of computer cores.All the examples are encoded in Java language and executed on a personal computer with the Windows XP operating system and one Intel Xeon CPU E3-1245@3.30GHz (four cores).

Case Study 1
In the first case study, for the sake of simplicity, the valve-point effect and transmission line losses are not considered.The result of multi-objective cultural algorithm based on particle swarm optimization (MOCA-PSO) is employed to testify the effectiveness of the proposed method [12].In order to verify its stability and effectiveness, the algorithm runs the experiment 10 trials independently for each case with different initial populations.The best compromise solutions in 10 trails obtained by PMOGA are drawn in Figure 6, where it can be seen that both the fuel cost and emission have a small range of variation, and the 7th trial with smaller objectives is selected as best one among the 10 trials [42].In a similar way, the best trial for the following two cases can be obtained, which details are not given to save space.Figure 7 shows the Pareto optimal front obtained by various methods, while Table 1 lists the detailed objective values of both MOGA and PMOGA.To demonstrate the validity of the constraint handling strategy, Scheme 15 in Table 1 is selected as the trade-off scheduling plan, the hourly reservoir storage volume is drawn in Figure 8, while the water discharge rates of hydro plants and power outputs of all plants are shown in Table 2.   Figure 7 shows the Pareto optimal front obtained by various methods, while Table 1 lists the detailed objective values of both MOGA and PMOGA.To demonstrate the validity of the constraint handling strategy, Scheme 15 in Table 1 is selected as the trade-off scheduling plan, the hourly reservoir storage volume is drawn in Figure 8, while the water discharge rates of hydro plants and power outputs of all plants are shown in Table 2. Figure 7 shows the Pareto optimal front obtained by various methods, while Table 1 lists the detailed objective values of both MOGA and PMOGA.To demonstrate the validity of the constraint handling strategy, Scheme 15 in Table 1 is selected as the trade-off scheduling plan, the hourly reservoir storage volume is drawn in Figure 8, while the water discharge rates of hydro plants and power outputs of all plants are shown in Table 2.    From the distribution of Pareto solutions in Figure 7, it can be clearly seen that the optimal PMOGA scheme dominates the solutions of other methods, which means that the PMOGA outperforms both MOGA and MOCA-PSO in terms of solution convergence and diversity.The economic objective and emission objective are in conflict with each other because the increasing value of one object will decrease the other which is in line with the results of [10,42].That's to say, for the SEEHTS problem, the lowest fuel costs may lead to damage of the environmental benefit.Meanwhile, with the same level of fuel cost, the proposed method can obtain the scheme with smaller emission cost in comparison with other methods.Moreover, Table 2 and Figure 8 indicate that the water discharge and storage volumes, power outputs are all in the predefined boundaries of the predefined operational constraints, demonstrating the feasibility and validity of the constraints handling method proposed in this research.Therefore, the proposed method can provide abundant technical options for planners and decision makers.say, for the SEEHTS problem, the lowest fuel costs may lead to damage of the environmental benefit.Meanwhile, with the same level of fuel cost, the proposed method can obtain the scheme with smaller emission cost in comparison with other methods.Moreover, Table 2 and Figure 8 indicate that the water discharge and storage volumes, power outputs are all in the predefined boundaries of the predefined operational constraints, demonstrating the feasibility and validity of the constraints handling method proposed in this research.Therefore, the proposed method can provide abundant technical options for planners and decision makers.In this section, the valve-point effect and the constraints of the first case are considered in the problem formulation.To compare the performance of the proposed method, the improved multi-objective gravitational search algorithm (IMOGSA) [13] and multi-objective differential evolution with adaptive Cauchy mutation (MODE-ACM) [4] are employed to solve the same problem.The Pareto optimal fronts by various methods are drawn in Figure 9, while the numerical results of MOGA and PMOGA are listed in Table 3.Moreover, the detailed operational processes of Scheme 15 in Table 3 are given in Table 4 and Figure 10, respectively.
Energies 2017, 10, 163 14 of 21 results of MOGA and PMOGA are listed in Table 3.Moreover, the detailed operational processes of Scheme 15 in Table 3 are given in Table 4 and Figure 10, respectively.From Table 3 and Figure 9, it can be found that the proposed method can gives a group of solutions closer to the true optimal Pareto front compared with other evolution techniques, which proves that PMOGA can be an effective approach to solve complex multi-objective problems.Meanwhile, the results again prove that there is irreconcilable contradiction between the economic objective and the environmental objective.For example, in the best economic scheme, the fuel cost of PMOGA is reduced by 1867 ($) compared to the MOGA.In addition, the results in Table 4 and From Table 3 and Figure 9, it can be found that the proposed method can gives a group of solutions closer to the true optimal Pareto front compared with other evolution techniques, which proves that Energies 2017, 10, 163 15 of 22 PMOGA can be an effective approach to solve complex multi-objective problems.Meanwhile, the results again prove that there is irreconcilable contradiction between the economic objective and the environmental objective.For example, in the best economic scheme, the fuel cost of PMOGA is reduced by 1867 ($) compared to the MOGA.In addition, the results in Table 4 and Figure 10 indicate that all the variables can satisfy the preset maximum and minimum constraints of the SEEHTS problem, which proves the validity of the proposed algorithm to deal with complicated constraints.Hence, from the above analysis, it can be concluded that PMOGA is an alternative method to handle the hydrothermal system scheduling problem.MOGA PMOGA Moreover, to further show the effectiveness of the proposed technique, its results is compared to the results of other methods in Table 5, including differential evolution (DE) [43], quantum-behaved particle swarm optimization with differential mutation (QPSO-DM) [44], and improved quantum-behaved particle swarm optimization (IQPSO) [1].For the ELS case, the fuel cost is the only objective to be optimized, and it is not necessary to compare the emissions.Similarly, for the EES case, the emissions are the objective we care about, thus the fuel cost is not compared.From Table 5, it can be clearly observed that compared with methods reported in previous literatures, PMOGA provides results with fewer fuel cost and pollutant emissions in different cases.From the comparison with DE, QPSO-DM and IQPSO, the proposed algorithm can reduce the total fuel cost by 1870 ($), 279 ($) and 729 ($) in the ELS case; while the emission obtained by PMOGA is reduced by 2486 (lb), 1888 (lb) and 1996 (lb) in the EES case.In the CEES case, PMOGA can reduce simultaneously the fuel cost and emission compared with the DE and IQPSO, while its solution is not dominated by that of QPSO-DM.Thus, PMOGA is able to provide better solutions in comparison with other methods while satisfying all the constraints of the hydrothermal system.Moreover, to further show the effectiveness of the proposed technique, its results is compared to the results of other methods in Table 5, including differential evolution (DE) [43], quantum-behaved particle swarm optimization with differential mutation (QPSO-DM) [44], and improved quantum-behaved particle swarm optimization (IQPSO) [1].For the ELS case, the fuel cost is the only objective to be optimized, and it is not necessary to compare the emissions.Similarly, for the EES case, the emissions are the objective we care about, thus the fuel cost is not compared.From Table 5, it can be clearly observed that compared with methods reported in previous literatures, PMOGA provides results with fewer fuel cost and pollutant emissions in different cases.From the comparison with DE, QPSO-DM and IQPSO, the proposed algorithm can reduce the total fuel cost by 1870 ($), 279 ($) and 729 ($) in the ELS case; while the emission obtained by PMOGA is reduced by 2486 (lb), 1888 (lb) and 1996 (lb) in the EES case.In the CEES case, PMOGA can reduce simultaneously the fuel cost and emission compared with the DE and IQPSO, while its solution is not dominated by that of QPSO-DM.Thus, PMOGA is able to provide better solutions in comparison with other methods while satisfying all the constraints of the hydrothermal system.In this case, all constraints are considered for accurate formulation.Compared with previous cases, the power balance constraint makes it much more difficult to solve the SEEHTS because the power transmission losses changes dynamically with the outputs of plants in system.To verify its effectiveness, PMOGA is employed for the practical power system with MOGA and HMOCA [45].
The Pareto optimal schemes obtained by various methods are drawn in Figure 11, and the detailed objectives of PMOGA and MOGA are listed in Table 6.In addition, the 15th scheme is selected as the compromise plan, and its scheduling processes are given in Table 7 and Figure 12, respectively.In this case, all constraints are considered for accurate formulation.Compared with previous cases, the power balance constraint makes it much more difficult to solve the SEEHTS because the power transmission losses changes dynamically with the outputs of plants in system.To verify its effectiveness, PMOGA is employed for the practical power system with MOGA and HMOCA [45].The Pareto optimal schemes obtained by various methods are drawn in Figure 11, and the detailed objectives of PMOGA and MOGA are listed in Table 6.In addition, the 15th scheme is selected as the compromise plan, and its scheduling processes are given in Table 7 and Figure 12, respectively.From the results listed in Figure 11, it can be seen that, with the same size of external archive set, the Pareto optimal front distribution of PMOGA is wilder than other methods.Therefore, PMOGA has better performance than other methods in the solution diversity because its schemes are closer to the true Pareto optimal front.Moreover, from the data in Table 6, we can find that PMOGA can obtain schemes with smaller objective values than that of the traditional MOGA algorithm.For example, compared to MOGA, PMOGA can reduce the emission cost by 487 (lb) in the optimal economic scheme and decrease the fuel cost by 78 ($) in the optimal emission scheme, respectively.From Table 7 and Figure 12, we can find that the results of PMOGA can satisfy all kinds of equality and inequality constraints in the hydrothermal system at each period.Moreover, due to the valve-point and power transmission losses, compared with the compromise solution (Scheme 15) in previous case studies, there is some visible difference in the scheduling process of plants, and the fuel cost and emission cost are higher.Hence, PMOGA is an effective optimization algorithm for solving multi-objective problems.

Metrics
The speedup and efficiency are two indicators frequently used to evaluate the performance of parallel computation [20,26], which are defined as follows: = PP E S P (25) where SP and EP are the speedup and efficiency, respectively; P is the number of cores; TS is the serial computation time of the task in a single core; and TP is the parallel computation time of the task with P computing units.

Results Analysis and Discussion
In this section, a group of scenarios with different populations and worker threads for three cases was executed to test the computational efficiency of parallel algorithms in multi-core environment.Table 8 lists the computation time in different scenario using both serial and parallel algorithms with various working threads.
From Table 8, it can be observed that the number of threads has no effect on the performance of algorithms in the serial situation, which means that conventional serial algorithm cannot make full use of the abundant computing resources available in a multi-core environment.On one hand, as the  The speedup and efficiency are two indicators frequently used to evaluate the performance of parallel computation [20,26], which are defined as follows: E P = S P P where S P and E P are the speedup and efficiency, respectively; P is the number of cores; T S is the serial computation time of the task in a single core; and T P is the parallel computation time of the task with P computing units.

Results Analysis and Discussion
In this section, a group of scenarios with different populations and worker threads for three cases was executed to test the computational efficiency of parallel algorithms in multi-core environment.Table 8 lists the computation time in different scenario using both serial and parallel algorithms with various working threads.From Table 8, it can be observed that the number of threads has no effect on the performance of algorithms in the serial situation, which means that conventional serial algorithm cannot make full use of the abundant computing resources available in a multi-core environment.On one hand, as the problem complexity increases, the MOGA execution time shows an obvious increase: with the same 600 individuals, the time consumption increases by 46 s from Case 1 to Case 3. On the other hand, the computation time of MOGA was increased rapidly with the increase of population: in the first case, the time for 1200 individuals increases 3-fold in comparison with 600 individuals.Thus, the MOGA will experience a rapid increase with the expansion of problem scale, which motivates us to develop a parallel algorithm to improve the performance of MOGA.
The time of PMOGA in different cases are also listed in Table 8.Compared with the MOGA, the PMOGA can significantly shorten the computation time.When there are 1200 individuals, the time reductions are 291.8s, 374.5 s and 335.4 s for two threads, four threads and eight threads in the first case.In addition, the speedup increases with the number of individuals and threads, and there is super linear speedup when the number of worker threads is lesser than the maximum number of computational cores.This is because MOGA exhibits a quadratic growth in the computational complexity, which means that the population with greater size needs longer computation time; while in PMOGA, each subpopulation has relative smaller scale than MOGA, which dramatically reduces the time spent on iteration process of the algorithm.Besides, the speedup has a quick decrease when the number of worker threads exceeds the maximum number of computational cores.The reason lies in that under such circumstances, the thread pool needs more communication time and memory usage, which has a negative effect on the computational efficiency [21,26].Thus, unreasonable worker threads only use some of the parallel resources in the multi-core computer, and the number of threads equal to the cores can obtain the best performance for most tasks.
Moreover, it can be seen from Table 8 that the efficiency in the same case has a quick drop as the computing units increase.This is because more time is spent on the internal storage sharing and working tasks communication between different computing units [20].In other word, the task with larger scale tends to obtain greater efficiency in the same condition.Hence, the above analysis indicates that, for the SEEHTS problem, the parallel technology can make full use of the abundant computational resources to enhance the efficiency of algorithms.

Conclusions
The SEEHTS is classified as a multi-objective optimization problem subject to a set of complex constraints.In the present study, a new method known as PMOGA is proposed to handle the SEEHTS problem.Based on the Fork/Join parallel framework and natural parallelism of evolutionary algorithms, PMOGA makes full use of the abundant computational resources in a multi-core environment to enhance the performance of MOGA.A mature hydrothermal test system is used to test the effectiveness of the proposed approach.The simulation results in different cases indicate that compared with MOGA and several methods reported in the previous literature, PMOGA can obtain better results with less fuel cost and environment pollution.Besides, with two worker threads, the execution time of PMOGA for different population sizes is less than half that of MOGA for computing, demonstrating the effectiveness of the parallel technique.Furthermore, the speedup and efficiency of PMOGA are improved significantly with the expansion of problem scale, proving its potential to solve large-scale multi-objective optimization problems.Thus, the practicality and feasibility of PMOGA is verified adequately by the results of various cases, which indicate that the PMOGA can be a competitive tool for the SEEHTS problem.Since the choices of objective have great influence on the operational process, it is recommended that decision makers should pay careful attention to the hydrothermal scheduling so as to balance the economic and environmental objectives, and choose the approximate compromise scheme based on the actual demands of power systems.

Figure 1 .
Figure 1.Map of the divide-and-conquer strategy.

Figure 1 .
Figure 1.Map of the divide-and-conquer strategy.

Figure 2 .
Figure 2. Map of the population decomposition in parallel multi-objective genetic algorithm (PMOGA).

Figure 5 .
Figure 5. Schematic map of the test hydrothermal system.

Figure 5 .
Figure 5. Schematic map of the test hydrothermal system.

Figure 7 .
Figure 7.The optimal Pareto front by different algorithms for Case 1.

Figure 6 .
Figure 6.Best compromise solutions obtained by PMOGA in 10 independent trials.

Figure 7 .
Figure 7.The optimal Pareto front by different algorithms for Case 1.

Figure 7 .
Figure 7.The optimal Pareto front by different algorithms for Case 1.

Figure 8 .
Figure 8.The water storage processes of Scheme 15 by PMOGA for Case 1.

Figure 9 .
Figure 9.The optimal Pareto front by different algorithms for Case 2.

Figure 9 .
Figure 9.The optimal Pareto front by different algorithms for Case 2.

Figure 10 .
Figure 10.The water storage processes of Scheme 15 by PMOGA for Case 2.

Figure 11 .
Figure 11.The optimal Pareto front by different algorithms for Case 3.

Figure 12 .
Figure 12.The water storage processes of Scheme 15 by PMOGA for Case 3.

Figure 12 .
Figure 12.The water storage processes of Scheme 15 by PMOGA for Case 3.

Table 1 .
The non-dominated schemes obtained by different methods for Case 1.

Table 1 .
The non-dominated schemes obtained by different methods for Case 1.

Table 1 .
The non-dominated schemes obtained by different methods for Case 1.

Table 2 .
The detailed results of scheme 15 by PMOGA for case 1.The water storage processes of Scheme 15 by PMOGA for Case 1.

Table 2 .
The detailed results of scheme 15 by PMOGA for case 1.

Table 3 .
The non-dominated schemes obtained by different methods for Case 2.

Table 3 .
The non-dominated schemes obtained by different methods for Case 2.

Table 4 .
The detailed results of scheme 15 by PMOGA for case 2. The water storage processes of Scheme 15 by PMOGA for Case 2.

Table 5 .
Comparison of solutions by PMOGA and other methods for case 2. ELS: economic load scheduling; EES: economic emission scheduling; CEES: combined economic emission scheduling; DE: differential evolution; QPSO-DM: quantum-behaved particle swarm optimization with differential mutation; and IQPSO: improved quantum-behaved particle swarm optimization.

Table 6 .
The non-dominated schemes obtained by different methods for Case 3.

Table 6 .
non-dominated schemes obtained by different methods for Case 3.

Table 7 .
The detailed results of Scheme 15 by PMOGA for Case 3.

Table 8 .
Serial and parallel computation time in different cases (time: s).