# Energy-Efficient Scheduling Problem Using an Effective Hybrid Multi-Objective Evolutionary Algorithm

^{1}

^{2}

^{*}

## Abstract

**:**

## 1. Introduction

## 2. Related Works

#### 2.1. Energy Consumption in the Scheduling Problem

#### 2.2. JIT Production in Scheduling Problem

## 3. Problem Formulation

#### 3.1. Notations and Assumptions

- N number of jobs.
- J
_{j}the jth job. - J
_{(i)}job placed in the ith position in a processing sequence. - Π a processing sequence of jobs.
- p
_{j}normal processing time of job j. - ${p}_{j}^{c}$ crash (minimum allowable) processing time of job j.
- ${p}_{j}^{e}$ expansion (maximum allowable) processing time of job j.
- ${m}_{j}^{c}$ maximum amount of compression for job j, namely ${m}_{j}^{c}={p}_{j}-{p}_{j}^{c}$.
- ${m}_{j}^{e}$ maximum amount of expansion for job j, namely ${m}_{j}^{e}={p}_{j}^{e}-{p}_{j}$.
- ${x}_{j}^{c}$ amount of compression of job j.
- ${x}_{j}^{e}$ amount of expansion of job j.
- ${p}_{j}^{a}$ actual processing time of job j, namely ${p}_{j}^{a}={p}_{j}-{x}_{j}^{c}+{x}_{j}^{e}$.
- a
_{j}unit cost of compression of job j. - b
_{j}unit cost of expansion of job j. - d
_{j}due date of job j. - C
_{j}completion time of job j. - T
_{j}tardiness of job j, namely T_{j}= max(0, C_{j}– d_{j}). - E
_{j}earliness of job j, namely E_{j}= max(0, d_{j}– C_{j}). - t
_{j}unit tardiness penalty factor for job j. - e
_{j}unit earliness penalty factor for job j. - S
_{j}start time of job j. - s
_{ij}setup time between job i and job j. - M an arbitrary big positive number.

- Setup time for a job is zero if it is the first order in a processing sequence.
- Machine is idle when there exists setup time s
_{ij}between job i and job j. - Each machine can process only one job at a time.
- No job preemption is allowed.
- The processing time is discrete.
- The normal processing time could be compressed by an amount of ${x}_{j}^{c}$ which requires a unit cost of compression.
- The normal processing time could be expanded by an amount of ${x}_{j}^{e}$ which requires a unit cost of expansion.
- The job with normal processing time will incur no extra processing cost.

#### 3.2. Mathematical Model

#### 3.2.1. Production Model

#### 3.2.2. Energy Consumption Model

_{idle}; the additional energy power during processing job is defined by P

_{run}; the total energy requirement when switching off and on machine is denoted by E

_{sc}. When a machine stays idle for a long time, the machine should be switched off so as to save energy. If the total amount of energy required (namely, E

_{sc}) for turning off and on the machine exceeds the energy demand during the idle time between the jobs in the jth and (j + 1)th position (denoted by ${E}_{idle}^{(\mathrm{j})(\mathrm{j}+1)}={T}_{B}\times {P}_{idle}$), it is better to keep the machine idle. The breakeven duration T

_{B}is used to determine whether the machine is closed or not when the machine is idle. The T

_{B}is defined as follows:

_{close}and P

_{start}is average power required to switch off/on machine and T

_{sc}is duration time during turning off/on machine, so E

_{sc}can be regarded as a constant value for a schedule. If T

_{idle}(T

_{idle}= s

_{(j)(j+1)}= S

_{(j+1)}– C

_{(j)}, j = 1, …, n − 1) is greater than T

_{B}, it is favorable to turn the machine off, or vice versa.

_{idle}= P

_{idle}× T

_{makespan}, where T

_{makespa}

_{n}is a completion time for a schedule, namely makespan. Additional energy consumption to process the jobs is E

_{run}= P

_{run}× T

_{run}, where ${T}_{run}={\displaystyle \sum {p}_{j}^{a}}$, j = 1, …, n. The total energy saving for a given schedule can be defined as follows.

_{sc}is 2 kWh. To briefly illustrate energy calculation, a fixed or actual processing time is employed in this scheduling problem considered, even though the job processing times are controllable. For a given job sequence π = (J

_{1}, J

_{3}, J

_{2}) as shown in Figure 1 the total idle energy consumption is E

_{idle}= P

_{idle}× T

_{makespan}= 1 × 11 = 11. Additional energy consumption during processing the jobs is E

_{run}= P

_{run}× T

_{run}= 2 × 6 = 12. According to Equation (12) the idle time T

_{idle}between J

_{1}and J

_{3}(T

_{idle}= S

_{(j+1)}– C

_{(j)}= 2 – 1 = 1) is smaller than a predefined breakeven duration T

_{B}= 2, machine should keep running. Similarly, the idle time (T

_{idle}= 4) between J

_{3}and J

_{2}is greater than T

_{B}= 2, so machine should be switched off so as to save energy. The energy saved can be calculated as following formula. E

_{save}= 1 × (1 × (9 − 5) – 2) = 2. The total energy consumption for this schedule is f

_{3}= E

_{idle}+ E

_{run}− E

_{save}= 11 + 12 − 2 = 21. Therefore, energy consumption is associated not only with the operational method but also closely with the turn on/off method. It can be reduced by switching off and on machine between scheduled tasks instead of leaving machine idle.

## 4. The Proposed LMOEA for Multi-Objective Scheduling with Controllable Processing Times

#### 4.1. Background on Multi-Objective Optimization

**a**and

**b**ϵ Ω, a vector

**a**= ${({\mathrm{a}}_{1},{\mathrm{a}}_{2},\dots ,{\mathrm{a}}_{\mathrm{n}})}^{T}$ is said to dominate another vector

**b**${({\mathrm{b}}_{1},{\mathrm{b}}_{2},\dots ,{\mathrm{b}}_{\mathrm{n}})}^{T}$ (denoted by a $\prec $ b) if and only if ${f}_{i}(a)\le {f}_{i}(b)$ for each i ϵ {1,…, k} and ${f}_{i}(a)\le {f}_{i}(b)$ for at least index j ϵ {1,…, k}. A solution x* ϵ Ω is called a Pareto optimal solution in Equation (15) if there is not any a solution x ϵ Ω that dominates x*. The corresponding objective function is called Pareto optimal front vector f (x*). That is to say, for a Pareto optimal solution, the improvement of any objective must cause the deterioration of at least another objective. The set of all Pareto optimal solutions is called Pareto set (PS*), while the set of all Pareto optimal front vectors is called the Pareto optimal front (PF*). The main goal of multi-objective optimization is to find PF*. However, in general a Pareto front consists of a large number of points. Therefore, a good Pareto front should contain a limited number of points which should be as close as possible to the PF* and should be uniformly spread as well.

#### 4.2. Framework of the Proposed Algorithm

- According to the no free lunch theorem, one algorithm cannot obtain a better result than all the others on all problems. Therefore, the proposed MOEA combines multiple techniques including harmony search (HS), genetic algorithm (GA), and differential evolution (DE) strategy. Even though the three nature-inspired algorithms are all population-based metaheuristics, they have different search manners or directions in search space, which can improve the diversity of the population and stability of the algorithm. The reasons why we adopt these three strategies in our proposal are explained in Section 3.2.1.
- The proposed algorithm is based on multiple techniques consisting of HS, GA, and DE, so it needs to use a new hybrid selection scheme to automatically select an appropriate operation during the search process. This new hybrid selection mechanism is featured because the static and adaptive selection scheme can switch alternately. The aim of this hybrid selection mechanism is to avoid adopting the same search operator over the course of the iteration, which means the search process get trapped in the local optima. Therefore, by integrating the advantages of static and adaptive selection scheme, this hybrid selection can help the algorithm to mitigate the local optima and search for preferable solutions in unexplored areas.

#### 4.2.1. Representation

- (1)
- Chromosome structure is simpler. Even though this proposed encoding scheme only consists of one dimensional structure, it contains two contents namely amount of compression or expansion of job processing times and job sequence.
- (2)
- Problem solving is simpler. Discrete optimization problems can be converted to continuous optimization problems by adoption of the proposed encoding scheme.
- (3)
- Constraint handling mechanism is simpler even unnecessary. The algorithm with the conventional encoding scheme needs to employ some special recombination operators to avoid unfeasible solution. However, this approach with the proposed encoding mechanism can generate feasible solutions.

^{c}, m

^{e}). The integer part, obtained by rounding off this real value, stands for the actual amount of compression or expansion of job processing times. To distinguish compression and expansion of job processing time, the positive integer represents actual amount of expansion and the negative integer denotes actual amount of compression. It is noted that the positive and negative number are generated with equal probability. The fractional part of a real number implies the processing order of jobs on a single machine. To further describe the proposed encoding scheme, Figure 3 illustrates the solution representation. For a given single machine scheduling problem with four jobs, we assume that its maximum amount of compression and expansion are m

^{c}= (−3, −4, −2, −4) and m

^{e}= (2, 3, 2, 4), respectively. One chromosome vector (−1.325, 2.420, −1.761, 3.067) is randomly generated in the range of compression or expansion amount. This chromosome can be translated into two meanings: (1) actual amount vector of compression or expansion of job processing times m = (−1, 2, −2, 3); (2) the sequence of jobs namely π = (J

_{4}, J

_{1}, J

_{2}, J

_{3}). In detail, the integer part (−1, 2, −2, 3) is obtained by rounding off the real number and represents actual amount of compression or expansion of job processing times. Among them, the integer value “−1” in the first position of the integer part means that amount of compression of J

_{1}is one unit time. Similarly, the value “3” in the fourth position denotes that amount of expansion of J

_{4}is three unit time. The fractional part (0.325, 0.420, 0.761, 0.067) implies job processing sequence. The fractional part numbers are sorted based on non-descending order, namely 0.067 < 0.325 < 0.420 < 0.761. Accordingly, the corresponding job processing sequence is (J

_{4}, J

_{1}, J

_{2}, J

_{3}). Using this encoding scheme, it is easy to recognize the actual amount of compression or expansion of jobs and processing sequence of jobs. Therefore, this decoding mechanism is very simple and efficient based on the above analysis.

#### 4.2.2. Crossover Operator

#### 4.2.3. Mutation Operator

_{4}, J

_{1}, J

_{2}, J

_{3}) according to the above proposed encoding scheme. After applying the second mutation operation, the fractional values of the second and fourth genes become 0.067 and 0.420, respectively. Accordingly, the sequence of jobs also becomes π = (J

_{2}, J

_{1}, J

_{4}, J

_{3}) and the corresponding compression or expansion amount of job processing times is m = (2, −1, 3, −2).

#### 4.2.4. Local Search Procedure

_{i}denote the selection probability of the ith strategy and P

_{1}is probability for S1, P

_{2}for S2, P

_{3}for S3. The self-adaptive selection mechanism can be described as follows. Firstly, if the external archive storing non-dominated solution found so far is updated, compute the selection rate of each local strategy ${P}_{i}={n}_{i}/\left|\mathrm{N}\right|$, where n

_{i}is the number of non-dominated solutions obtained by the ith local strategy in the external archive. $\left|\mathrm{N}\right|$ represents the current size of external archive. Then select a strategy by using the roulette wheel approach. To avoid this situation of all candidate solutions adopting the same local search operator during search process, each local strategy will be assigned with the possibility of 1/3 when this situation occurs. Based on the above analysis, this multiple local operator based on self-adaptive mechanism is very simple and effective for solving complex problems. We also investigate the effect of the hybridization of local search on performance of the proposed algorithm in Section 5.6.

#### 4.2.5. Replacement Strategy

## 5. Experimental Studies

- (1)
- Efficiency comparisons with different crossover in LMOEA for all problems in Section 5.4.
- (2)
- The best choice of crossover rate and mutation rate for all test instances in Section 5.5.
- (3)
- Performance analysis on the local search strategy of the LMOEA for the considered problems in Section 5.6.
- (4)
- Performance comparisons with other MOEAs for the scheduling problems in Section 5.7.

#### 5.1. Test Instances

_{j}= k × p

_{j}, j = 1, 2,…, n where k is control factor. The value of k will be set as 1, 2,…, 5 which corresponds to the trend of less tight due dates. The time unit is minute. The other parameters of data are shown in Table 2. The following tables record the results obtained by different MOEAs for each instance, where the instance with n jobs and k parameter is denoted as symbol “Problem_n_k”. For example, “Problem_10_1” represents the addressed problem is featured by 10 jobs and k equal to 1.

#### 5.2. Performance Metrics

_{j}denotes the Euclidean distance of each point in PF to its closest point in PF*, ${n}_{PF}$ is the number of vectors in PF*, ${d}_{i}^{\prime}$ is the Euclidean distance between the extreme solutions in the ith objective and the boundary solutions of the PF* obtained, and $\overline{{d}^{\prime}}$ is the average of all ${d}_{i}^{\prime}$. N is the number of PF* found. If the metric value is zero, then all the members of Pareto-optimal front are evenly spaced. A smaller value of the metric indicates a better distribution and diversity.

_{i}is the Euclidean distance between the ith member of PF obtained and the nearest member of the PF*. A low GD value is desirable, which denotes a good convergence performance.

#### 5.3. Parameters Settings

#### 5.4. Comparison among Different Crossovers

#### 5.5. The Best Choice of Crossover and Mutation Probability

#### 5.5.1. Selection of Crossover Probability

_{c}, it is generated from 0 to 1.0 in increments of 0.1, and the mutation probability P

_{m}is 1/n (n is the number of jobs) in this experiment. The IGD metric is utilized to test the performance of the proposed algorithm for different P

_{c}on each instance since this IGD metric is a comprehensive indicator. We conduct 30 independent runs for each crossover rate on each test instance. The IGD trajectories against different P

_{c}are plotted in Figure 8. The Y axis of each subfigure represents the IGD value and the X axis denotes the different P

_{c}. The red circle indicates the mean IGD value for a crossover rate combination. It can be observed that the IGD curves of small size problems with 10 jobs are stable with the increase of P

_{c}, which implies that the performance of the proposed algorithm is not sensitive to the P

_{c}. It is observed from Figure 8 that the algorithm is more stable with the decreasing of the box’s length. In terms of descriptive statistics, a box plot is a convenient way of graphically depicting groups of numerical data through their quartiles. Box plots may have lines extending vertically from the boxes indicating variability outside the upper and lower quartiles, hence the terms box plot diagram. Outliers maybe plotted as individual points. Box plots are non-parametric: its display variation in samples of a statistical population without making any assumptions of the underlying statistical distribution. The spacing between the different parts of the box indicate the degree of dispersion (spread) and skewness in the data, and show outliers. In addition to the points of themselves, they allow one to visually estimate various L-estimators, notably the interquartile range, midhinge, range, mid-range, and trimean. Box plots can be drawn either horizontally or vertically. Concerning medium and large scale problems, the IGD value gradually decreases with the increase of P

_{c}. It means that crossover with a large probability can help to improve the performance of the proposed algorithm for coping with these scheduling problems. Therefore, the range (0.7, 1) for P

_{c}is recommended for decision makers when solving these scheduling instances.

#### 5.5.2. Selection of Mutation Probability

_{c}is fixed as 0.9 and mutation rate P

_{m}is updated from 0 to 0.1 with step of 0.01. We can run the same type of experiment to determine the optimal mutation probability. The mean IGD results are plotted in Figure 9. The vertical axis of each subfigure denotes the IGD value and the horizontal axis represents the variation of P

_{m}. These scheduling problems can be divided into two categories. The first one is characterized as that a relatively stable IGD trend, indicating that the value of P

_{m}has little effect on the performance of the proposed algorithm. The instances with 10 jobs and problem_100_4 belong to this category. The second category, which consists of the rest medium and large instances except problem_100_4, is featured by a relatively high IGD value at the beginning, and then the IGD value decreases to a low level when P

_{m}is 0.04 and remains stable later. From the Figure 9, the value 0.1 for P

_{m}is recommended.

#### 5.6. Efficiency of Each Local Search Strategy

_{S1}to denote LMOEA with only S1. Similarly, MOEA

_{S2}indicates LMOEA using only S2, and MOEA

_{S3}represents LMOEA with only S3. Table 3, Table 4 and Table 5 show mean and standard deviation metrics on different algorithms in 30 independent runs.

_{S3}obtains significantly better results on 9 out of 15 problems with comparison to MOEA

_{S1}and MOEA

_{S2}in terms of GD metric, while MOEA

_{S1}and MOEA

_{S2}can achieve the better GD values on two and four problems, respectively. Concerning Spread metric, the MOEA

_{S1}performs better than the MOEA

_{S2}and MOEA

_{S3}for most instances. However, MOEA

_{S2}is superior to MOEA

_{S1}and MOEA

_{S3}with regard to IGD metric. Therefore, it can be concluded that none of the three local strategies has a dominant performance for all instances.

#### 5.7. LMOEA against Other MOEAs

- (1)
- NSGA-II is one of the most popular MOEA proposed by Deb et al. [44]. The characteristic of NSGA-II is that it uses a fast non-dominated sorting and crowding distance estimation procedure. The fast non-dominated sorting technique is used to assign the parent and offspring population to different levels of non-dominated solution fronts. A crowding distance strategy is employed to maintain diversity of the population.
- (2)
- SPEA2 was presented by Zitler et al. [51]. In SPEA2 algorithm each individual has a fitness value which is the sum of its strength raw fitness and density estimation based on the distance to the kth nearest neighbor. A new population is from the non-dominated solutions in both the original population and the external archive.
- (3)
- OMOPSO is a multi-objective particle swarm optimization algorithm proposed by Sierra and Coello Coello [52]. This proposal employs two external archives: one for storing the leaders for carrying out the flight and the other one for storing the final solutions. The crowding factor is used to remove the list of leaders whenever the external archive is full of final solutions. Only the leaders with the best crowding values are maintained. Additionally, the authors presented a scheme in which they divide the population into three different subpopulation.
- (4)
- MOEA/D invented by Zhang and Hui. [53] decomposes a multi-objective problem into a number of scalar sub-problems and optimizes them simultaneously. MOEA/D have received widely attention from evolutionary computation fields due to its fast convergence and good diversity.

_{1}objective; penalty cost represents f

_{2}and the total energy consumption denotes f

_{3}. Figure 11a presents PF in 3D space and it is hard to judge which MOEA is the best one among them. However, it is evident from Figure 11b that the proposed LMOEA reaches better approximations toward PF* than the other MOEAs in 2D space, which denotes the LMOEA has good convergence performance. It also indicates the two objectives of the total E/T and cost are conflicted with each other. As shown in Figure 11c,d, even though the SPEA2, OMOPSO and LMOEA can approach closer toward PF* than NSGA-II and MOEA/D, the proposed LMOEA can cover a wider range than SPEA2 and OMOPSO. It implies that PF obtained by LMOEA has good diversity. SPEA2 also covers a large area, but it tends to converge to local areas. The outperformance of LMOEA can be attributed to multiple local search strategies based upon adaptive mechanism, by which LMOEA can search preferable solutions in its neighborhood.

- (1)
- Different crossover operators have different impacts on the performance of the proposed LMOEA. The SBX operator is the best choice among the compared crossovers in LMOEA for solving the scheduling instances.
- (2)
- Compared with the adoption of only one local search strategy, integration of multiple local search techniques with self-adaptive mechanism can significantly improve the behavior of the LMOEA.
- (3)
- The objectives of total E/T, penalty cost and energy consumption are in conflict with each other according to Figure 11.
- (4)
- The proposed LMOEA can perform better than its rivals such as NSGA-II, OMOPSO, SPEA2, and MOEA/D for most scheduling instances.

## 6. Case Study

- Solution at point A: π = {J
_{5}, J_{11}, J_{1}, J_{2}, J_{3}, J_{6}, J_{12}, J_{7}, J_{10}, J_{9}, J_{8}, J_{4}}, m= (0, 0, 0, 0, −3, 0, −3, 0, 0, 0, 0, 1,) - Solution at point B: π = {J
_{5}, J_{11}, J_{1}, J_{2}, J_{6}, J_{12}, J_{3}, J_{4}, J_{10}, J_{7}, J_{9}, J_{8}}, m= (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,) - Solution at point C: π = {J
_{4}, J_{7}, J_{2}, J_{1}, J_{3}, J_{6}, J_{12}, J_{8}, J_{5}, J_{10}, J_{11}, J_{9}} m= (0, 0, 0, −1, 0, 0, 0, 0, 0, 0, 0, 0,)

## 7. Conclusions

- (1)
- A multi-objective scheduling model, which considers three objectives, is constructed. A hybrid MOEA with multiple local search strategy is developed to effectively solve this kind of the scheduling.
- (2)
- A new solution representation is provided for this kind of the scheduling. It also offers a new idea in solving scheduling problems.
- (3)
- In this work, the mutation operator composed of two types of mutation techniques is proposed. The first mutation technique can adjust amount of compression of job processing times. The second mutation technique can exchange order of jobs. It implies the mutation operator can helps the algorithm to escape from local optimum.
- (4)
- According to the above parametric experiment, both parameters Pc and Pm have critical effect on the performance of the LMOEA for most instances. The range (0.7, 1) for Pc and 0.1 for Pm are recommended for decision makers when solving these scheduling instances.
- (5)
- Multiple local strategies based on adaptive selection scheme can improve the performance of the LMOEA on instances.

## Acknowledgments

## Author Contributions

## Conflicts of Interest

## References

- Zhou, M.; Pan, Y.; Chen, Z.; Yang, W. Optimizing green production strategies: An integrated approach. Comput. Ind. Eng.
**2013**, 65, 517–528. [Google Scholar] [CrossRef] - Rager, M.; Gahm, C.; Denz, F. Energy-oriented scheduling based on evolutionary algorithms. Comput. Oper. Res.
**2015**, 54, 218–231. [Google Scholar] [CrossRef] - Kayvanfar, V.; Mahdavi, I.; Komaki, G.M. Single machine scheduling with controllable processing times to minimize total tardiness and earliness. Comput. Ind. Eng.
**2013**, 65, 166–175. [Google Scholar] [CrossRef] - Dietmair, A.; Verl, A. Energy consumption forecasting and optimisation for tool machines. Mod. Mach. Sci. J.
**2009**, 14, 62–67. [Google Scholar] [CrossRef] - Dahmus, J.B.; Gutowski, T.G. An Environmental Analysis of Machining. In Proceedings of IMECE 2004, 2004 ASME International Mechanical Engineering Congress and Exposition, Anaheim, CA, USA, 13–19 November 2004.
- Drake, R.; Yildirim, M.B.; Twomey, J.; Whitman, L.; Ahmad, J.; Lodhia, P. Data collection framework on energy consumption in manufacturing. In Proceedings of the IIE Annual Conference and Expo, Orlando, FL, USA, 20–24 May 2006.
- Kayvanfar, V.; Mahdavi, I.; Komaki, G.M. A drastic hybrid heuristic algorithm to approach to JIT policy considering controllable processing times. Int. J. Adv. Manuf. Technol.
**2013**, 69, 257–267. [Google Scholar] [CrossRef] - Gahm, C.; Denz, F.; Dirr, M.; Tuma, A. Energy-efficient scheduling in manufacturing companies: A review and research framework. Eur. J. Oper. Res.
**2016**, 248, 744–757. [Google Scholar] [CrossRef] - Gao, K.Z.; Suganthan, P.N.; Pan, Q.K.; Chua, T.J.; Cai, T.X.; Chong, C.S. Pareto-based grouping discrete harmony search algorithm for multi-objective flexible job shop scheduling. Inform. Sci.
**2014**, 289, 76–90. [Google Scholar] [CrossRef] - García-Nájera, A.; Bullinaria, J.A.; Gutiérrez-Andrade, M.A. An evolutionary approach for multi-objective vehicle routing problems with backhauls. Comput. Ind. Eng.
**2015**, 81, 90–108. [Google Scholar] [CrossRef] - Gen, M.; Lin, L. Multiobjective evolutionary algorithm for manufacturing scheduling problems: State-of-the-art survey. J. Intell. Manuf.
**2014**, 25, 849–866. [Google Scholar] [CrossRef] - Hao, X.; Gen, M.; Lin, L.; Suer, G. Effective multiobjective eda for bi-criteria stochastic job-shop scheduling problem. J. Intell. Manuf.
**2015**. [Google Scholar] [CrossRef] - Zhang, G.; Shao, X.; Li, P.; Gao, L. An effective hybrid particle swarm optimization algorithm for multi-objective flexible job-shop scheduling problem. Comput. Ind. Eng.
**2009**, 56, 1309–1318. [Google Scholar] [CrossRef] - Zheng, J.-N.; Chien, C.-F.; Gen, M. Multi-objective multi-population biased random-key genetic algorithm for the 3-D container loading problem. Comput. Ind. Eng.
**2014**. [Google Scholar] [CrossRef] - Mouzon, G.; Yildirim, M.B.; Twomey, J. Operational methods for minimization of energy consumption of manufacturing equipment. Int. J. Prod. Res.
**2007**, 45, 4247–4271. [Google Scholar] [CrossRef] - Mouzon, G.; Yildirim, M.B. A framework to minimize total energy consumption and total tardiness on a single machine. Int. J. Sustain. Eng.
**2008**, 1, 105–116. [Google Scholar] [CrossRef] - Fang, K.; Uhan, N.; Zhao, F.; Sutherland, J.W. A new approach to scheduling in manufacturing for power consumption and carbon footprint reduction. J. Manuf. Syst.
**2011**, 30, 234–240. [Google Scholar] [CrossRef] - Fang, K.; Uhan, N.A.; Zhao, F.; Sutherland, J.W. Flow shop scheduling with peak power consumption constraints. Ann. Oper. Res.
**2013**, 206, 115–145. [Google Scholar] [CrossRef] - Bruzzone, A.A.G.; Anghinolfi, D.; Paolucci, M.; Tonelli, F. Energy-aware scheduling for improving manufacturing process sustainability: A mathematical model for flexible flow shops. Cirp Ann.-Manuf. Technol.
**2012**, 61, 459–462. [Google Scholar] [CrossRef] - Dai, M.; Tang, D.; Giret, A.; Salido, M.A.; Li, W.D. Energy-efficient scheduling for a flexible flow shop using an improved genetic-simulated annealing algorithm. Robot. Comput.-Integr. Manuf.
**2013**, 29, 418–429. [Google Scholar] [CrossRef] - Luo, H.; Du, B.; Huang, G.Q.; Chen, H.; Li, X. Hybrid flow shop scheduling considering machine electricity consumption cost. Int. J. Prod. Econ.
**2013**, 146, 423–439. [Google Scholar] [CrossRef] - Keller, K.; Schonborn, C.; Reinhart, G. Energy-orientated machine scheduling for hybrid flow shop. Procedia CIPR
**2015**, 29, 156–161. [Google Scholar] [CrossRef] - Liu, Y.; Dong, H.B.; Lohse, N.; Petrovic, S.; Gindy, N. An investigation into minimising total energy consumption and total weighted tardiness in job shops. J. Clean. Prod.
**2014**, 65, 87–96. [Google Scholar] [CrossRef] - Kang, P.S.; Duffy, A.; Shires, N.; Smith, T.; Novels, M. Lean Cables—A Step towards Competitive, Sustainable and Profitable Processes. In Proceedings of the 63rd International Wire and Cable Symposium, Providence, RI, USA, 9–12 November 2014.
- Kang, P.S.; Erhart, A.; Todeschini, V.; Duffy, A. Comparative Study of Two Scheduling Approaches to Resolve Scheduling Problem for a Wire and Cable Manufacturing Process. Available online: https://www.researchgate.net/publication/291312939_Comparative_Study_of_Two_Scheduling_Approaches_to_Resolve_Scheduling_Problem_for_a_Wire_and_Cable_Manufacturing_Process (accessed on 15 November 2015).
- Yildirim, M.B.; Mouzon, G. Single-machine sustainable production planning to minimize total energy consumption and total completion time using a multiple objective genetic algorithm. IEEE Trans. Eng. Manag.
**2012**, 59, 585–597. [Google Scholar] [CrossRef] - Shrouf, F.; Ordieres-Mere, J.; Garcia-Sanchez, A.; Ortega-Mier, M. Optimizing the production scheduling of a single machine to minimize total energy consumption costs. J. Clean. Prod.
**2014**, 67, 197–207. [Google Scholar] [CrossRef] - Lu, C.; Gao, L.; Li, X.; Chen, P. Energy-efficient multi-pass turning operation using multi-objective backtracking search algorithm. J. Clean. Prod.
**2016**, 137, 1516–1531. [Google Scholar] [CrossRef] - He, Y.; Liu, F.; Cao, H.-J.; Li, C.-J. A bi-objective model for jop-shop scheduling problem to minimize both energy consumption and makespan. J. Cent. South Univ. Technol.
**2005**, 12, 167–171. [Google Scholar] [CrossRef] - Liu, X.; Zou, F.; Zhang, X. Mathematical Model and Genetic Optimization for Hybrid Flow Shop Scheduling Problem Based on Energy Consumption. In Proceedings of 2008 Control and Decision Conference, Yantai, China, 2–4 July 2008.
- Zhang, L.; Li, X.; Gao, L.; Zhang, G. Dynamic rescheduling in fms that is simultaneously considering energy consumption and schedule efficiency. Int. J. Adv. Manuf. Technol.
**2013**, 87, 1387–1399. [Google Scholar] [CrossRef] - Liu, C.H. Approximate trade-off between minimisation of total weighted tardiness and minimisation of carbon dioxide (CO
_{2}) emissions in bi-criteria batch scheduling problem. Int. J. Comput. Integr. Manuf.**2014**, 27, 759–771. [Google Scholar] [CrossRef] - Mason, S.J.; Jin, S.; Jampani, J. A moving block heuristic for minimizing earliness and tardiness on a single machine with unrestrictive common due dates. J. Manuf. Syst.
**2005**, 24, 328–338. [Google Scholar] [CrossRef] - Lenstra, J.K.; Rinnooy Kan, A.H.G.; Brucker, P. Complexity of machine scheduling problems. In Annals of Discrete Mathematics; Elsevier: Toronto, ON, Canada, 1977; Volume 1, pp. 343–362. [Google Scholar]
- Yano, C.A.; Kim, Y.-D. Algorithms for a class of single-machine weighted tardiness and earliness problems. Eur. J. Oper. Res.
**1991**, 52, 167–178. [Google Scholar] [CrossRef] - Valente, J.M.S. Beam search heuristics for quadratic earliness and tardiness scheduling. J. Oper. Res. Soc.
**2010**, 61, 620–631. [Google Scholar] [CrossRef] - Valente, J.M.S.; Alves, R. Beam search algorithms for the early/tardy scheduling problem with release dates. J. Manuf. Syst.
**2005**, 24, 35–46. [Google Scholar] [CrossRef] - Khorshidian, H.; Javadian, N.; Zandieh, M.; Rezaeian, J.; Rahmani, K. A genetic algorithm for jit single machine scheduling with preemption and machine idle time. Expert Syst. Appl.
**2011**, 38, 7911–7918. [Google Scholar] [CrossRef] - Weng, W.; Wei, X.; Fujimura, S. Dynamic routing strategies for jit production in hybrid flow shops. Comput. Oper. Res.
**2012**, 39, 3316–3324. [Google Scholar] [CrossRef] - Benmansour, R.; Allaoui, H.; Artiba, A.; Hanafi, S. Minimizing the weighted sum of maximum earliness and maximum tardiness costs on a single machine with periodic preventive maintenance. Comput. Oper. Res.
**2014**, 47, 106–113. [Google Scholar] [CrossRef] - Sourd, F.; Kedad-Sidhoum, S. A faster branch-and-bound algorithm for the earliness-tardiness scheduling problem. J. Sched.
**2008**, 11, 49–58. [Google Scholar] [CrossRef] - Baker, K.R. Minimizing earliness and tardiness costs in stochastic scheduling. Eur. J. Oper. Res.
**2014**, 236, 445–452. [Google Scholar] [CrossRef] - Shabtay, D.; Steiner, G. The single-machine earliness-tardiness scheduling problem with due date assignment and resource-dependent processing times. Ann. Oper. Res.
**2008**, 159, 25–40. [Google Scholar] [CrossRef] - Deb, K.; Pratap, A.; Agarwal, S.; Meyarivan, T. A fast and elitist multiobjective genetic algorithm: Nsga-ii. IEEE Trans. Evol. Comput.
**2002**, 6, 182–197. [Google Scholar] [CrossRef] - Nearchou, A.C. Scheduling with controllable processing times and compression costs using population-based heuristics. Int. J. Prod. Res.
**2010**, 48, 7043–7062. [Google Scholar] [CrossRef] - Wang, L.; Pan, Q.-K.; Tasgetiren, M.F. A hybrid harmony search algorithm for the blocking permutation flow shop scheduling problem. Comput. Ind. Eng.
**2011**, 61, 76–83. [Google Scholar] [CrossRef] - Spears, W.M.; De Jong, K.A. On the virtues of parameterized uniform crossover. In Proceedings of the 4th International Conference on Genetic Algorithms, San Diego, CA, USA, 13–16 July 1991.
- Deb, K.; Agrawal, R.B. Simulated binary crossover for continuous search space. Complex Syst.
**1995**, 9, 115–148. [Google Scholar] - Eshelman, L.J. Chapter real-coded genetic algorithms and interval-schemata. Found. Genet. Algorithm.
**1993**, 2, 187–202. [Google Scholar] - Shen, X.N.; Yao, X. Mathematical modeling and multi-objective evolutionary algorithms applied to dynamic flexible job shop scheduling problems. Inform. Sci.
**2015**, 298, 198–224. [Google Scholar] [CrossRef] - Zitzler, E.; Laumanns, M.; Thiele, L. SPEA2: Improving the Strength Pareto Evolutionary Algorithm for Multiobjective Optimization. In Evolutionary Methods Design, Optimization, Control Application in Industrial Problem, Proceedings of the EUROGEN 2001 Conference, Athens, Creece, 19–21 September 2001; International Center for Numerical Methords in Engineering (CIMNE): Barcelona, Spain, 2001; pp. 95–100. [Google Scholar]
- Sierra, M.; Coello Coello, C. Improving PSO-based multi-objective optimization using crowding, mutation and ∈-dominance. In Evolutionary Multi-Criterion Optimization; Coello Coello, C., Hernández Aguirre, A., Zitzler, E., Eds.; Springer: Berlin/Heidelberg, Germany, 2005; pp. 505–519. [Google Scholar]
- Qingfu, Z.; Hui, L. MOEA/D: A multiobjective evolutionary algorithm based on decomposition. IEEE Trans. Evolut. Comput.
**2007**, 11, 712–731. [Google Scholar] [CrossRef]

**Figure 1.**Gantt chart and its corresponding power profile. The area that the red line and the axis encircled expresses energy consumption.

**Figure 4.**Mutation operator: (

**a**) the first mutation operator; (

**b**) the second mutation operator. The colored cell denotes mutation position, the red box denotes the job exchange part.

**Figure 7.**Average Inverse Generational Distance (IGD), Generational Distance (GD), and Spread value for different crossovers on all test instances.

**Figure 8.**Sensitivity study on crossover probability. The red circle indicates the mean IGD value for a crossover rate combination, the red + denote the abnormal value of the IGD.

**Figure 11.**Final solutions obtained by different MOEAs with the best IGD values from different perspectives. (

**a**) Pareto front of ET, Penalty cost and Energy consumption, (

**b**) Pareto front of ET and Penalty cost, (

**c**) Pareto front of ET and Energy consumption, (

**d**) Pareto front of Penalty cost and Energy consumption.

**Figure 12.**Pareto front obtained by the proposed LMOEA. Point A, B and C represent three extreme objective values.

Job | Setup Times | Actual Processing Times | ||
---|---|---|---|---|

1 | 2 | 3 | ||

1 | - | 1 | 1 | 1 |

2 | 1 | - | 2 | 2 |

3 | 5 | 4 | - | 3 |

Input Variables | Value |
---|---|

number of jobs (n) | 10, 50, 100 |

normal processing time (p_{j}) | ~ DU (20, 80) |

crash processing time (${p}_{j}^{c}$) | ~ DU (−p_{j}/3, 0) |

expansion processing time (${p}_{j}^{e}$) | ~ DU (0, p_{j}/5) |

due time (d_{j}) | d_{j} = k×p_{j}, k = 1, 2, 3, 4, 5. |

unit penalty cost of compression (a_{j}) | ~ U (0.5, 2.5) |

unit penalty cost of expansion (b_{j}) | ~ U (0.5, 2.5) |

penalty factor of earliness and tardiness(e_{j} or t_{j}) | 0.1 |

power during idle (p_{idle}) | 2.2 kW |

additional power when processing job (p_{run}) | 7.5 kW |

total energy when turning off and on machine (E_{sc}) | 6.72 kWh |

setup times between adjacent jobs (s_{ij}) | ~ DU (0, 10) |

**Table 3.**Mean and standard deviation of GD obtained by different MOEAs with different local search strategies.

Problem | MOEA_{S1} | MOEA_{S2} | MOEA_{S3} | LMOEA |
---|---|---|---|---|

Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | |

Problem_10_1 | 3.21 × 10^{−2}/5.2 × 10^{−2} | 6.79 × 10^{−3}/3.9 × 10^{−3} | 5.01 × 10^{−3}/3.6 × 10^{−3} | 6.47 × 10^{−3}/8.0 × 10^{−3} − |

Problem_10_2 | 4.45 × 10^{−3}/3.9 × 10^{−3} | 7.52 × 10^{−3}/7.3 × 10^{−3} | 6.38 × 10^{−3}/4.2 × 10^{−3} | 4.26 × 10^{−3}/1.5 × 10^{−3} + |

Problem_10_3 | 2.99 × 10^{−2}/1.7 × 10^{−2} | 1.79 × 10^{−2}/1.2 × 10^{−2} | 1.81 × 10^{−2}/1.2 × 10^{−2} | 3.94 × 10^{−3}/1.2 × 10^{−2} + |

Problem_10_4 | 1.21 × 10^{−2}/3.8 × 10^{−3} | 1.48 × 10^{−2}/1.2 × 10^{−2} | 1.69 × 10^{−2}/1.3 × 10^{−2} | 4.44 × 10^{−3}/1.1 × 10^{−2} + |

Problem_10_5 | 1.81 × 10^{−2}/1.6 × 10^{−2} | 8.54 × 10^{−3}/3.1 × 10^{−3} | 9.44 × 10^{−3}/4.8 × 10^{−3} | 4.93 × 10^{−3}/3.1 × 10^{−3} + |

Problem_50_1 | 4.73 × 10^{−1}/8.4 × 10^{−1} | 2.42 × 10^{−1}/6.4 × 10^{−1} | 8.27 × 10^{−2}/1.9 × 10^{−1} | 7.07 × 10^{−2}/1.3 × 10^{−1} + |

Problem_50_2 | 9.04 × 10^{−1}/9.0 × 10^{−1} | 8.36 × 10^{−2}/2.9 × 10^{−1} | 1.88 × 10^{−2}/3.9 × 10^{−1} | 7.38 × 10^{−2}/1.5 × 10^{−1} + |

Problem_50_3 | 1.12 × 10^{−1}/1.2 × 10^{−1} | 3.52 × 10^{−2}/7.8 × 10^{−2} | 1.34 × 10^{−2}/2.0 × 10^{−2} | 4.11 × 10^{−3}/3.0 × 10^{−3} + |

Problem_50_4 | 4.90 × 10^{−1}/6.2 × 10^{−1} | 1.01 × 10^{−1}/2.2 × 10^{−1} | 9.53 × 10^{−2}/2.5 × 10^{−1} | 3.67 × 10^{−3}/3.9 × 10^{−2} + |

Problem_50_5 | 4.64 × 10^{−1}/9.3 × 10^{−1} | 1.94 × 10^{−1}/4.1 × 10^{−1} | 1.59 × 10^{−1}/3.3 × 10^{−1} | 1.60 × 10^{−1}/5.3 × 10^{−1} − |

Problem_100_1 | 1.48 × 10^{−1}/1.2 × 10^{−1} | 2.49 × 10^{−2}/4.6 × 10^{−2} | 2.38 × 10^{−2}/4.3 × 10^{−2} | 1.56 × 10^{−2}/2.4 × 10^{−2} + |

Problem_100_2 | 1.01/1.2 × 10^{−1} | 9.80 × 10^{−1}/1.5 | 4.38 × 10^{−1}/8.6 × 10^{−1} | 1.53 × 10^{−2}/3.4 × 10^{−1} + |

Problem_100_3 | 1.12/2.2 × 10^{−1} | 7.15 × 10^{−1}/1.5 | 4.30 × 10^{−1}/1.2 | 7.56 × 10^{−2}/6.4 × 10^{−2} + |

Problem_100_4 | 1.08/2.3 × 10^{−1} | 5.50 × 10^{−1}/1.1 | 2.66 × 10^{−1}/7.2 × 10^{−1} | 6.12 × 10^{−2}/8.2 × 10^{−2} + |

Problem_100_5 | 6.89 × 10^{−1}/7.5 × 10^{−1} | 3.43 × 10^{−1}/7.0 × 10^{−1} | 5.34 × 10^{−1}/1.10 | 2.27 × 10^{−1}/2.8 × 10^{−1} + |

Hit rate | 0/15 | 0/15 | 2/15 | 13/15 |

**Table 4.**Mean and standard deviation of Spread obtained by different MOEAs with different local search strategies.

Problem | MOEA_{S1} | MOEA_{S2} | MOEA_{S3} | LMOEA |
---|---|---|---|---|

Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | |

Problem_10_1 | 1.03/1.5 × 10^{−1} | 1.12/1.5 × 10^{−1} | 1.11/1.8 × 10^{−1} | 9.03 × 10^{−1}/1.3 × 10^{−2} + |

Problem_10_2 | 1.06/1.2 × 10^{−1} | 1.26/2.1 × 10^{−1} | 1.25/1.8 × 10^{−1} | 1.09/1.6 × 10^{−1} − |

Problem_10_3 | 1.01/6.5 × 10^{−2} | 1.13/1.5 × 10^{−1} | 1.21/1.5 × 10^{−1} | 1.03/1.3 × 10^{−1} − |

Problem_10_4 | 1.32/1.1 × 10^{−1} | 1.42/1.4 × 10^{−1} | 1.36/1.3 × 10^{−1} | 8.45 × 10^{−1}/5.3 × 10^{−2} + |

Problem_10_5 | 1.02/6.3× 10^{−2} | 1.25/1.6 × 10^{−1} | 1.23/1.7 × 10^{−1} | 9.11 × 10^{−1}/6.2 × 10^{−2} + |

Problem_50_1 | 1.24/1.7 × 10^{−1} | 1.16/1.5 × 10^{−1} | 9.02 × 10^{−1}/1.9 × 10^{−1} | 9.50 × 10^{−1}/2.2 × 10^{−2} − |

Problem_50_2 | 1.25/1.8 × 10^{−1} | 1.11/2.1 × 10^{−1} | 1.11/2.3 × 10^{−1} | 1.01/2.1 × 10^{−1} + |

Problem_50_3 | 1.12/1.6 × 10^{−1} | 1.04/1.6 × 10^{−1} | 1.00/1.5 × 10^{−1} | 9.63 × 10^{−1}/6.7 × 10^{−2} + |

Problem_50_4 | 1.17/1.4 × 10^{−1} | 1.02/2.1 × 10^{−1} | 1.06/1.6 × 10^{−1} | 9.02 × 10^{−1}/8.4 × 10^{−2} + |

Problem_50_5 | 1.23/1.6 × 10^{−1} | 1.14/2.0 × 10^{−1} | 1.08/1.8 × 10^{−1} | 1.05/1.7 × 10^{−1} + |

Problem_100_1 | 9.57 × 10^{−1}/2.9 × 10^{−1} | 9.81 × 10^{−1}/2.0 × 10^{−1} | 9.66 × 10^{−1}/1.8 × 10^{−1} | 9.15 × 10^{−1}/6.3 × 10^{−2} + |

Problem_100_2 | 9.01 × 10^{−1}/3.8 × 10^{−1} | 1.21/2.1 × 10^{−1} | 1.15/2.0 × 10^{−1} | 1.01/2.4 × 10^{−1} − |

Problem_100_3 | 1.35/1.4 × 10^{−1} | 1.18/1.7 × 10^{−1} | 1.13/2.1 × 10^{−1} | 9.16 × 10^{−1}/1.7 × 10^{−1} + |

Problem_100_4 | 1.37/1.4 × 10^{−1} | 1.26/1.5 × 10^{−1} | 1.14/2.1 × 10^{−1} | 9.55 × 10^{−1}/8.5 × 10^{−2} + |

Problem_100_5 | 1.30/1.3 × 10^{−1} | 1.12/1.9 × 10^{−1} | 1.15/2.2 × 10^{−1} | 1.22/1.5× 10^{−1} − |

Hit rate | 3/15 | 1/15 | 1/15 | 10/15 |

**Table 5.**Mean and standard deviation of IGD obtained by different MOEAs with different local search strategies.

Problem | MOEA_{S1} | MOEA_{S2} | MOEA_{S3} | LMOEA |
---|---|---|---|---|

Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | |

Problem_10_1 | 5.61 × 10^{−3}/3.1 × 10^{−3} | 4.61 × 10^{−3}/2.2 × 10^{−3} | 4.94 × 10^{−3}/2.3 × 10^{−3} | 5.57 × 10^{−3}/2.4 × 10^{−3} − |

Problem_10_2 | 5.21 × 10^{−3}/2.8 × 10^{−3} | 5.33 × 10^{−3}/2.5 × 10^{−3} | 5.34 × 10^{−3}/3.1 × 10^{−3} | 4.55 × 10^{−3}/2.6 × 10^{−3} + |

Problem_10_3 | 7.30 × 10^{−3}/1.8 × 10^{−3} | 6.00 × 10^{−3}/1.7 × 10^{−3} | 6.24 × 10^{−3}/1.9 × 10^{−3} | 5.97 × 10^{−3}/1.7 × 10^{−3} + |

Problem_10_4 | 9.06 × 10^{−3}/3.7 × 10^{−3} | 7.91 × 10^{−3}/4.1 × 10^{−3} | 8.68 × 10^{−3}/3.9 × 10^{−3} | 6.87 × 10^{−3}/3.8 × 10^{−3} + |

Problem_10_5 | 5.69 × 10^{−3}/3.4 × 10^{−3} | 5.66 × 10^{−3}/3.5 × 10^{−3} | 5.35 × 10^{−3}/3.4 × 10^{−3} | 5.79 × 10^{−3}/3.4 × 10^{−3} − |

Problem_50_1 | 4.52 × 10^{−2}/8.5 × 10^{−3} | 2.11 × 10^{−2}/7.5 × 10^{−3} | 1.93 × 10^{−2}/5.8 × 10^{−3} | 7.46 × 10^{−3}/3.7 × 10^{−3} + |

Problem_50_2 | 3.56 × 10^{−2}/5.2 × 10^{−3} | 2.09 × 10^{−2}/7.7 × 10^{−3} | 2.45 × 10^{−2}/9.8 × 10^{−3} | 7.60 × 10^{−3}/4.5 × 10^{−3} + |

Problem_50_3 | 1.24 × 10^{−2}/1.5 × 10^{−3} | 1.34 × 10^{−2}/3.2 × 10^{−3} | 1.33 × 10^{−2}/4.7 × 10^{−3} | 7.53 × 10^{−3}/3.2 × 10^{−3} + |

Problem_50_4 | 2.98 × 10^{−2}/4.1 × 10^{−3} | 1.53 × 10^{−2}/3.1 × 10^{−3} | 1.62 × 10^{−2}/3.1 × 10^{−3} | 7.58 × 10^{−3}/2.2 × 10^{−3} + |

Problem_50_5 | 5.47 × 10^{−2}/1.2 × 10^{−2} | 2.27 × 10^{−2}/9.4 × 10^{−3} | 2.52 × 10^{−2}/9.1 × 10^{−3} | 8.03 × 10^{−3}/6.8 × 10^{−3} + |

Problem_100_1 | 3.27 × 10^{−2}/3.9 × 10^{−3} | 1.67 × 10^{−2}/1.5 × 10^{−3} | 1.58 × 10^{−2}/2.1 × 10^{−3} | 1.38 × 10^{−2}/2.3 × 10^{−3} + |

Problem_100_2 | 8.15 × 10^{−2}/1.4 × 10^{−2} | 2.24 × 10^{−2}/6.8 × 10^{−3} | 2.26 × 10^{−2}/6.9 × 10^{−3} | 2.18 × 10^{−2}/6.0 × 10^{−3} + |

Problem_100_3 | 7.00 × 10^{−2}/1.1 × 10^{−2} | 2.32 × 10^{−2}/6.5 × 10^{−3} | 2.02 × 10^{−2}/5.9 × 10^{−3} | 7.08 × 10^{−3}/6.4 × 10^{−3} + |

Problem_100_4 | 1.93 × 10^{−2}/3.6 × 10^{−3} | 2.06 × 10^{−2}/4.2 × 10^{−3} | 5.45 × 10^{−2}/6.5 × 10^{−3} | 8.56 × 10^{−3}/4.3 × 10^{−3} + |

Problem_100_5 | 8.37 × 10^{−2}/1.2 × 10^{−2} | 2.23 × 10^{−2}/6.2 × 10^{−3} | 2.34 × 10^{−2}/6.5 × 10^{−3} | 8.80 × 10^{−3}/6.4 × 10^{−3} + |

Hit rate | 0/15 | 1/15 | 1/15 | 13/15 |

Algorithm | Parameters | |||
---|---|---|---|---|

LMOEA | population size: 100 | crossover rate: 0.9 | mutation rate: 0.1 | archive size: 100 |

NSGA-II | population size: 100 | crossover rate: 0.9 | mutation rate: 0.1 | |

SPEA2 | population size: 100 | crossover rate: 0.9 | mutation rate: 0.1 | archive size: 100 |

OMOPSO | swarm size: 100 | mutation rate: 0.1 | leader size: 100 | |

MOEA/D | population size: 500 | CR = 1.0, F = 0.5, nr = 2, $\mathsf{\delta}=0.9$ | mutation rate: 0.1 | neighborhood size T: 20 |

Problem | NSGA-II | SPEA2 | OMOPSO | MOEA/D | LMOEA |
---|---|---|---|---|---|

Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | |

Problem_10_1 | 7.0 × 10^{−3}/8.7 × 10^{−3} | 1.14 × 10^{−2}/2.0 × 10^{−2} | 2.46 × 10^{−2}/1.4 × 10^{−2} | 6.78 × 10^{−2}/7.7 × 10^{−3} | 6.66 × 10^{−3}/5.8 × 10^{−3} + |

Problem_10_2 | 1.03 × 10^{−2}/1.0 × 10^{−2} | 8.93 × 10^{−3}/1.1 × 10^{−2} | 4.38 × 10^{−2}/2.6 × 10^{−2} | 3.23 × 10^{−2}/1.2 × 10^{−2} | 5.01 × 10^{−3}/6.3 × 10^{−3} + |

Problem_10_3 | 4.29 × 10^{−3}/3.3 × 10^{−3} | 3.77 × 10/2.5 × 10^{−3}^{−3} | 1.25 × 10^{−2}/8.4 × 10^{−3} | 4.29 × 10^{−3}/3.3 × 10^{−3} | 4.21 × 10^{−3}/1.7 × 10^{−3} − |

Problem_10_4 | 7.01 × 10^{−3}/3.8 × 10^{−3} | 6.53 × 10^{−3}/4.3 × 10^{−3} | 1.32 × 10^{−2}/8.5 × 10^{−3} | 6.31 × 10^{−3}/3.7 × 10^{−3} | 5.27 × 10^{−3}/1.9 × 10^{−3} + |

Problem_10_5 | 5.41 × 10^{−3}/1.3 × 10^{−3} | 4.01 × 10/1.9 × 10^{−3}^{−3} | 8.98 × 10^{−3}/4.7 × 10^{−3} | 5.65 × 10^{−3}/2.7 × 10^{−3} | 5.40 × 10^{−3}/2.2 × 10^{−3} − |

Problem_50_1 | 5.15 × 10^{−2}/8.1 × 10^{−2} | 3.22 × 10^{−2}/6.6 × 10^{−2} | 3.03 × 10^{−1}/3.3 × 10^{−1} | 3.14 × 10^{−2}/6.0 × 10^{−2} | 8.67 × 10^{−2}/1.1 × 10^{−1} − |

Problem_50_2 | 3.95 × 10^{−2}/3.2 × 10^{−2} | 8.36 × 10^{−2}/2.9 × 10^{−1} | 2.30 × 10^{−1}/2.1 × 10^{−1} | 4.86 × 10^{−2}/3.6 × 10^{−2} | 3.22 × 10^{−2}/3.5 × 10^{−2} + |

Problem_50_3 | 1.33 × 10^{−2}/1.9 × 10^{−2} | 3.52 × 10^{−2}/7.8 × 10^{−2} | 1.13 × 10^{−1}/1.0 × 10^{−1} | 2.33 × 10^{−2}/2.1 × 10^{−2} | 2.03 × 10^{−2}/3.2 × 10^{−2} − |

Problem_50_4 | 1.00 × 10^{−1}/1.3 × 10^{−1} | 1.01 × 10^{−1}/2.2 × 10^{−1} | 6.12 × 10^{−1}/5.8 × 10^{−1} | 1.12 × 10^{−1}/1.2 × 10^{−1} | 2.06 × 10^{−2}/3.9 × 10^{−2} + |

Problem_50_5 | 3.76 × 10^{−2}/4.5 × 10^{−2} | 1.94 × 10^{−1}/4.1 × 10^{−1} | 1.50 × 10^{−1}/1.4 × 10^{−1} | 1.76 × 10^{−1}/3.5 × 10^{−1} | 1.44 × 10^{−1}/1.8 × 10^{−1} − |

Problem_100_1 | 6.25 × 10^{−3}/5.6 × 10^{−3} | 6.19 × 10^{−3}/1.7 × 10^{−3} | 2.94 × 10^{−2}/1.5 × 10^{−2} | 6.01 × 10^{−3}/5.2 × 10^{−3} | 5.62 × 10^{−3}/2.6 × 10^{−3} + |

Problem_100_2 | 5.21 × 10^{−3}/4.4 × 10^{−3} | 4.40 × 10^{−3}/1.8 × 10^{−3} | 2.08 × 10^{−2}/7.2 × 10^{−3} | 5.03 × 10^{−3}/4.1 × 10^{−3} | 4.16 × 10^{−3}/1.2 × 10^{−3} + |

Problem_100_3 | 9.81 × 10^{−3}/8.4 × 10^{−3} | 2.42 × 10/1.8 × 10^{−3}^{−3} | 2.96 × 10^{−2}/1.0 × 10^{−2} | 3.18 × 10^{−3}/1.4 × 10^{−3} | 5.78 × 10^{−3}/1.8 × 10^{−3} − |

Problem_100_4 | 5.85 × 10^{−3}/4.2 × 10^{−3} | 4.53 × 10^{−3}/1.8 × 10^{−3} | 1.91 × 10^{−2}/6.8 × 10^{−3} | 5.85 × 10^{−3}/4.2 × 10^{−3} | 4.06 × 10^{−3}/9.6 × 10^{−4} + |

Problem_100_5 | 7.67 × 10^{−3}/8.5 × 10^{−3} | 4.97 × 10^{−3}/2.5 × 10^{−3} | 9.06 × 10^{−2}/4.5 × 10^{−2} | 3.69 × 10/4.5 × 10^{−3}^{−2} | 2.28 × 10^{−1}/1.2 × 10^{−2} − |

Hit rate | 2/15 | 3/15 | 0/15 | 2/15 | 8/15 |

Problem | NSGA-II | SPEA2 | OMOPSO | MOEA/D | LMOEA |
---|---|---|---|---|---|

Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | |

Problem_10_1 | 8.38 × 10^{−1}/1.2 × 10^{−1} | 8.12 × 10^{−1}/1.6 × 10^{−1} | 9.51 × 10^{−1}/1.3 × 10^{−1} | 7.46 × 10^{−1}/1.2 × 10^{−1} | 8.96 × 10^{−1}/1.5 × 10^{−1} − |

Problem_10_2 | 1.03/2.2 × 10^{−1} | 8.61 × 10^{−1}/2.3 × 10^{−1} | 1.12/1.5 × 10^{−1} | 8.45 × 10^{−1}/1.8 × 10^{−1} | 1.03/2.0 × 10^{−1} − |

Problem_10_3 | 9.87 × 10^{−1}/7.1 × 10^{−2} | 9.43 × 10^{−1}/9.7 × 10^{−1} | 9.79 × 10^{−1}/1.2 × 10^{−1} | 9.23 × 10^{−1}/8.6 × 10^{−2} | 9.80 × 10^{−1}/6.5 × 10^{−2} − |

Problem_10_4 | 9.73 × 10^{−1}/8.2 × 10^{−2} | 8.50 × 10^{−1}/7.9 × 10^{−1} | 9.80 × 10^{−1}/1.4 × 10^{−1} | 9.17 × 10^{−1}/8.9 × 10^{−2} | 8.66 × 10^{−1}/8.5 × 10^{−2} − |

Problem_10_5 | 8.87 × 10^{−1}/7.2 × 10^{−2} | 9.12 × 10^{−1}/9.1 × 10^{−1} | 9.22 × 10^{−1}/9.1 × 10^{−2} | 8.84 × 10^{−1}/9.2 × 10^{−2} | 8.76 × 10^{−1}/9.3 × 10^{−2} + |

Problem_50_1 | 9.71 × 10^{−1}/2.1 × 10^{−1} | 1.05/3.2 × 10^{−1} | 1.08/2.0 × 10^{−1} | 1.03/2.2 × 10^{−1} | 1.02/3.5 × 10^{−1} − |

Problem_50_2 | 9.28 × 10^{−1}/1.4 × 10^{−1} | 7.72 × 10^{−1}/2.2 × 10^{−1} | 1.10/2.5 × 10^{−1} | 9.68 × 10^{−1}/2.7 × 10^{−1} | 9.66 × 10^{−1}/2.9 × 10^{−2} − |

Problem_50_3 | 8.45 × 10^{−1}/1.3 × 10^{−1} | 9.04 × 10^{−1}/3.2 × 10^{−1} | 1.02/2.2 × 10^{−1} | 9.27 × 10^{−1}/3.1 × 10^{−1} | 8.26 × 10^{−1}/2.6 × 10^{−1} + |

Problem_50_4 | 9.88 × 10^{−1}/2.4 × 10^{−1} | 8.94 × 10^{−1}/2.7 × 10^{−1} | 1.18/2.1 × 10^{−1} | 9.94 × 10^{−1}/3.4 × 10^{−1} | 8.50 × 10^{−1}/2.8 × 10^{−1} + |

Problem_50_5 | 9.38 × 10^{−1}/1.8 × 10^{−1} | 9.48 × 10^{−1}/3.1 × 10^{−1} | 1.00/1.7 × 10^{−1} | 9.42 × 10^{−1}/3.1 × 10^{−1} | 9.19 × 10^{−1}/3.2 × 10^{−1} + |

Problem_100_1 | 9.06 × 10^{−1}/1.6e−01 | 7.57 × 10^{−1}/1.8 × 10^{−1} | 9.66 × 10^{−1}/1.8 × 10^{−1} | 8.64 × 10^{−1}/1.8 × 10^{−1} | 8.10 × 10^{−1}/1.8 × 10^{−1} − |

Problem_100_2 | 8.66 × 10^{−1}/9.0 × 10^{−2} | 7.39 × 10^{−1}/9.7 × 10^{−1} | 8.62 × 10^{−1}/9.3 × 10^{−2} | 7.14 × 10^{−1}/8.8 × 10^{−2} | 8.06 × 10^{−1}/6.1 × 10^{−2} − |

Problem_100_3 | 8.55 × 10^{−1}/6.1 × 10^{−2} | 7.37 × 10^{−1}/7.7 × 10^{−2} | 8.29 × 10^{−1}/9.1 × 10^{−2} | 7.88 × 10^{−1}/7.9 × 10^{−1} | 7.65 × 10^{−1}/7.3 × 10^{−2} − |

Problem_100_4 | 1.06/2.8 × 10^{−1} | 8.38 × 10^{−1}/2.9 × 10^{−1} | 8.47 × 10^{−1}/8.2 × 10^{−2} | 8.64 × 10^{−1}/3.1 × 10^{−1} | 8.44 × 10^{−1}/2.9 × 10^{−1} − |

Problem_100_5 | 1.04/2.8 × 10^{−1} | 9.26 × 10^{−1}/2.9 × 10^{−1} | 8.53 × 10^{−1}/9.9 × 10^{−2} | 9.26 × 10^{−1}/2.9 × 10^{−1} | 1.10/1.5 × 10^{−1} − |

Hit rate | 1/15 | 5/15 | 1/15 | 4/15 | 4/15 |

Problem | NSGA-II | SPEA2 | OMOPSO | MOEA/D | LMOEA |
---|---|---|---|---|---|

Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | |

Problem_10_1 | 4.95 × 10^{−3}/2.0 × 10^{−3} | 5.07 × 10^{−3}/1.8 × 10^{−3} | 5.80 × 10^{−3}/1.7 × 10^{−3} | 5.11 × 10^{−3}/1.8 × 10^{−3} | 4.34 × 10^{−3}/1.8 × 10^{−3} + |

Problem_10_2 | 6.19 × 10^{−3}/2.3 × 10^{−3} | 7.01 × 10^{−3}/2.6 × 10^{−3} | 6.57 × 10^{−3}/2.6 × 10^{−3} | 6.82 × 10^{−3}/2.5 × 10^{−3} | 5.41 × 10^{−3}/2.2 × 10^{−3} + |

Problem_10_3 | 4.64 × 10^{−3}/2.1 × 10^{−3} | 5.46 × 10^{−3}/1.7 × 10^{−3} | 5.89 × 10^{−3}/2.1 × 10^{−3} | 5.23 × 10^{−3}/1.6 × 10^{−3} | 3.66 × 10^{−3}/1.2 × 10^{−3} + |

Problem_10_4 | 4.00 × 10^{−3}/1.2 × 10^{−3} | 5.17 × 10^{−3}/1.8 × 10^{−3} | 4.88 × 10^{−3}/1.3 × 10^{−3} | 4.51 × 10^{−3}/1.9 × 10^{−3} | 3.57 × 10^{−3}/1.3 × 10^{−3} + |

Problem_10_5 | 4.57 × 10^{−3}/1.2 × 10^{−3} | 5.55 × 10^{−3}/1.5 × 10^{−3} | 5.34 × 10^{−3}/1.4 × 10^{−3} | 5.12 × 10^{−3}/1.2 × 10^{−3} | 4.53 × 10^{−3}/1.9 × 10^{−3} + |

Problem_50_1 | 6.02 × 10^{−3}/7.1 × 10^{−4} | 7.35 × 10^{−3}/7.5 × 10^{−4} | 9.14 × 10^{−3}/1.1 × 10^{−3} | 6.35 × 10^{−3}/7.2 × 10^{−4} | 5.78 × 10^{−3}/9.8 × 10^{−4} + |

Problem_50_2 | 5.07 × 10^{−3}/1.1 × 10^{−3} | 6.07 × 10^{−3}/7.0 × 10^{−4} | 7.67 × 10^{−3}/1.3 × 10^{−3} | 5.13 × 10^{−3}/1.5 × 10^{−3} | 4.69 × 10^{−3}/6.4 × 10^{−4} + |

Problem_50_3 | 4.87 × 10^{−3}/7.8 × 10^{−4} | 6.18 × 10^{−3}/6.1 × 10^{−4} | 8.42 × 10^{−3}/1.8 × 10^{−3} | 6.12 × 10^{−3}/5.7 × 10^{−4} | 4.54 × 10^{−3}/5.1 × 10^{−4} + |

Problem_50_4 | 5.83 × 10^{−3}/9.1 × 10^{−4} | 6.65 × 10^{−3}/7.4 × 10^{−4} | 1.06 × 10^{−3}/1.7 × 10^{−3} | 6.71 × 10^{−3}/7.2 × 10^{−4} | 5.40 × 10^{−3}/8.3 × 10^{−4} + |

Problem_50_5 | 5.28 × 10^{−3}/8.4 × 10^{−4} | 6.64 × 10^{−3}/5.6 × 10^{−4} | 7.60 × 10^{−3}/1.0 × 10^{−3} | 6.51 × 10^{−3}/5.1 × 10^{−4} | 5.02 × 10^{−3}/1.1 × 10^{−4} + |

Problem_100_1 | 7.40 × 10^{−3}/1.4 × 10^{−3} | 9.76 × 10^{−3}/9.4 × 10^{−4} | 8.44 × 10^{−3}/1.1 × 10^{−3} | 8.03 × 10^{−3}/7.3 × 10^{−4} | 6.70 × 10^{−3}/1.0 × 10^{−3} + |

Problem_100_2 | 1.10 × 10^{−2}/2.7 × 10^{−3} | 1.28 × 10^{−2}/2.3 × 10^{−3} | 9.27 × 10^{−3}/1.0 × 10^{−3} | 3.01 × 10^{−3}/2.7 × 10^{−3} | 9.56 × 10^{−3}/2.3 × 10^{−3} − |

Problem_100_3 | 8.07 × 10^{−3}/1.3 × 10^{−3} | 9.75 × 10^{−3}/8.9 × 10^{−4} | 9.27 × 10^{−3}/1.2 × 10^{−3} | 7.87 × 10^{−4}/5.9 × 10^{−4} | 7.12 × 10^{−3}/1.1 × 10^{−3} + |

Problem_100_4 | 8.36 × 10^{−3}/1.3 × 10^{−3} | 1.01 × 10^{−2}/9.9 × 10^{−4} | 8.70 × 10^{−3}/9.6 × 10^{−4} | 2.12 × 10^{−2}/1.9 × 10^{−3} | 7.66 × 10^{−3}/1.1 × 10^{−3} + |

Problem_100_5 | 6.85 × 10^{−3}/8.7 × 10^{−4} | 8.36 × 10^{−3}/1.2 × 10^{−3} | 8.51 × 10^{−3}/1.1 × 10^{−3} | 7.34 × 10^{−3}/1.7 × 10^{−3} | 6.49 × 10^{−3}/1.1 × 10^{−3} + |

Hit rate | 0/15 | 0/15 | 1/15 | 0/15 | 14/15 |

Problem | NSGA-II | SPEA2 | OMOPSO | MOEA/D | LMOEA |
---|---|---|---|---|---|

Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | Mean/Std. | |

Problem_10_1 | 0.661/0.375 | 0.642/0.321 | 17.076/1.719 | 1.292/0.206 | 7.348/0.528 |

Problem_10_2 | 0.717/0.310 | 0.615/0.276 | 15.422/1.288 | 1.242/0.219 | 7.313/0.658 |

Problem_10_3 | 0.697/0.321 | 0.658/0.398 | 14.801/1.302 | 1.238/0.212 | 7.154/0.672 |

Problem_10_4 | 0.702/0.329 | 0.635/0.293 | 15.845/1.494 | 1.250/0.247 | 7.631/0.911 |

Problem_10_5 | 0.691/0.322 | 0.639/0.277 | 15.617/1.581 | 1.255/0.206 | 7.211/0.638 |

Problem_50_1 | 2.161/0.511 | 1.295/0.339 | 119.246/5.678 | 2.988/0.374 | 9.060/0.890 |

Problem_50_2 | 2.219/0.480 | 1.290/0.340 | 129.345/8.984 | 3.233/0.448 | 9.182/0.727 |

Problem_50_3 | 2.134/0.447 | 1.318/0.276 | 117.909/6.094 | 3.500/0.447 | 9.022/0.703 |

Problem_50_4 | 2.189/0.386 | 1.283/0.375 | 119.640/6.532 | 3.448/0.372 | 8.632/0.629 |

Problem_50_5 | 2.180/0.363 | 1.285/0.340 | 115.436/7.438 | 3.433/0.335 | 8.596/0.882 |

Problem_100_1 | 5.606/0.481 | 2.780/0.370 | 389.005/15.972 | 6.954/0.794 | 11.616/0.831 |

Problem_100_2 | 5.493/0.348 | 2.863/0.376 | 387.852/15.519 | 6.192/0.488 | 11.609/0.921 |

Problem_100_3 | 5.545/0.467 | 2.749/0.366 | 387.411/16.465 | 6.196/0.434 | 11.683/0.921 |

Problem_100_4 | 5.728/0.539 | 2.793/0.446 | 418.133/24.103 | 6.231/0.461 | 11.538/0.923 |

Problem_100_5 | 5.542/0.408 | 2.746/0.390 | 395.403/16.745 | 6.472/0.530 | 11.757/1.029 |

Machine Processing Power (kW) | Power with Setup Time (kW) | Power When Turning On/Off (kW) |
---|---|---|

26.5 | 3.8 | 10.5 |

Machine Type | Available Machine Number | Manufacture Description |
---|---|---|

TIG welding machine | 1 | Slicing of cover slab and gusset |

Job Type | Size (cm) | Job No. | Normal Processing Time (min) (p) | Maximum Amount of Extension of Processing Time (${\mathit{m}}_{\mathit{j}}^{\mathit{e}}$) | Unit Cost of Expansion Time (b_{j}) | Maximum Amount of Compression of Processing Time (${\mathit{m}}_{\mathit{j}}^{\mathit{c}}$) | Unit Cost of Compression Time (a_{j}) | Due Time (d_{j}) |
---|---|---|---|---|---|---|---|---|

Y6ws01A1 | 105 | 1 | 16 | 1 | 2 | 2 | 1.5 | 80 |

Y6ws01A1 | 115 | 2 | 18 | 2 | 2 | 3 | 1.5 | 120 |

Y6ws01A1 | 125 | 3 | 20 | 3 | 2 | 4 | 1.5 | 170 |

Y6ws01A1 | 135 | 4 | 22 | 4 | 2 | 5 | 1.5 | 190 |

L1ws01A2 | 105 | 5 | 16 | 1 | 2 | 2 | 1.5 | 170 |

L1ws01A2 | 115 | 6 | 18 | 2 | 2 | 3 | 1.5 | 130 |

L1ws01A2 | 125 | 7 | 20 | 3 | 2 | 4 | 1.5 | 180 |

L1ws01A2 | 135 | 8 | 22 | 4 | 2 | 5 | 1.5 | 220 |

G5ws01A3 | 105 | 9 | 16 | 1 | 2 | 2 | 1.5 | 230 |

G5ws01A3 | 115 | 10 | 18 | 2 | 2 | 3 | 1.5 | 200 |

G5ws01A3 | 125 | 11 | 20 | 3 | 2 | 4 | 1.5 | 120 |

G5ws01A3 | 135 | 12 | 22 | 4 | 2 | 5 | 1.5 | 150 |

Setup Time (min) | Job1 | Job2 | Job3 | Job4 | Job5 | Job6 | Job7 | Job8 | Job9 | Job10 | Job11 | Job12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|

Job1 | - | 6 | 5 | 7 | 5 | 8 | 6 | 9 | 8 | 10 | 9 | 9 |

Job2 | 4 | - | 4 | 5 | 6 | 7 | 9 | 5 | 10 | 8 | 5 | 7 |

Job3 | 4 | 5 | - | 5 | 6 | 3 | 6 | 10 | 8 | 7 | 5 | 4 |

Job4 | 5 | 5 | 4 | - | 5 | 4 | 8 | 5 | 6 | 10 | 12 | 5 |

Job5 | 8 | 11 | 6 | 9 | - | 8 | 7 | 9 | 7 | 4 | 8 | 14 |

Job6 | 5 | 4 | 8 | 9 | 8 | - | 11 | 18 | 5 | 6 | 5 | 4 |

Job7 | 6 | 4 | 11 | 8 | 7 | 5 | - | 9 | 6 | 6 | 7 | 8 |

Job8 | 9 | 6 | 5 | 7 | 3 | 10 | 15 | - | 4 | 5 | 5 | 9 |

Job9 | 5 | 6 | 7 | 13 | 11 | 6 | 5 | 8 | - | 12 | 8 | 10 |

Job10 | 10 | 7 | 7 | 14 | 9 | 8 | 5 | 8 | 5 | - | 4 | 10 |

Job11 | 4 | 6 | 9 | 5 | 6 | 7 | 8 | 11 | 3 | 7 | - | 15 |

Job12 | 5 | 6 | 8 | 4 | 7 | 9 | 7 | 5 | 15 | 8 | 14 | - |

© 2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC-BY) license (http://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Yin, L.; Li, X.; Lu, C.; Gao, L.
Energy-Efficient Scheduling Problem Using an Effective Hybrid Multi-Objective Evolutionary Algorithm. *Sustainability* **2016**, *8*, 1268.
https://doi.org/10.3390/su8121268

**AMA Style**

Yin L, Li X, Lu C, Gao L.
Energy-Efficient Scheduling Problem Using an Effective Hybrid Multi-Objective Evolutionary Algorithm. *Sustainability*. 2016; 8(12):1268.
https://doi.org/10.3390/su8121268

**Chicago/Turabian Style**

Yin, Lvjiang, Xinyu Li, Chao Lu, and Liang Gao.
2016. "Energy-Efficient Scheduling Problem Using an Effective Hybrid Multi-Objective Evolutionary Algorithm" *Sustainability* 8, no. 12: 1268.
https://doi.org/10.3390/su8121268