Abstract
For the job shop with variable processing speeds, the aim of energy saving and consumption reduction is implemented from the perspective of production scheduling. By analyzing the characteristics of the workshop, a multi-objective mathematical model is established with the objective of reducing the total energy consumption and shortening the makespan. A multi-objective discrete water wave optimization (MODWWO) algorithm is proposed for solving the problem. Firstly, a two-vector encoding method is adopted to divide the scheduling solution into two parts, which represent speed selection and operation permutation in the scheduling solution, respectively. Secondly, some dispatching rules are used to initialize the population and obtain the initial scheduling solutions. Then, three operators of the basic water wave optimization algorithm are redesigned to make the algorithm adaptive for the multi-objective discrete scheduling problem under study. A new propagation operator is presented with the ability of balancing global exploration and local exploitation based on individual rank and neighborhood structures. A novel refraction operator is designed based on crossover operation, by which each individual can learn from the current best individual to absorb better information. And a breaking operator is modified based on the local search strategy to enhance the exploitation ability. Finally, extensive simulation experiments demonstrate that the proposed MODWWO algorithm is effective for solving the considered energy-saving scheduling problem.
Keywords
Introduction
For a manufacturing system, production scheduling plays a crucial role, and the scheduling scheme directly affects the enterprise’s benefits and competitiveness. There are many literature on production scheduling problems, but most of them only consider the economic indicators related to time, cost or quality, while ignoring the environmental indicators closely related to energy and environment, so that it is difficult to guide enterprises to obtain maximum profits [1].
With the promotion of the concept of green manufacturing, the energy-saving scheduling problem considering environmental factors has aroused the interest of scholars at home and abroad. Mouzon and Yildirim [2] constructed a multi-objective optimization framework and proposed a greedy random multi-objective adaptive search algorithm aiming at minimizing the total energy consumption and the total tardiness time in a single-machine system. Yildirim and Mouzon [3] studied a single machine scheduling problem and proposed a multi-objective genetic algorithm with the goal of minimizing the energy consumption and the makespan. Ding et al. [4] studied the scheduling problem in a flow shop with the objective of minimizing total carbon emissions and the maximum completion time of the jobs. Zheng and Wang [5] considered the green scheduling problem of the resource constrained unrelated parallel machine and proposed a collaborative multi-objective fruit fly optimization algorithm to optimize the makespan and the total carbon emissions. Mansouri and Aktas [6] developed a multi-objective genetic algorithm to solve the two-machine flow-shop scheduling problem by considering the total energy consumption and the makespan. Zhao et al. [7] established an energy-saving scheduling model of the process-assembly-type flow shop and proposed a hybrid differential evolutionary algorithm aiming at minimizing the energy consumption of machines. Liu et al. [8] designed a non-dominant sorting genetic algorithm by taking into account the minimization of the total electricity consumption and the total weighted tardiness time in job shops. May et al. [9] proposed a multi-objective genetic algorithm to minimize the makespan and the energy consumption in job shop. Mokhtari and Hasani [10] studied the energy-efficient flexible job shop problem aiming at minimize the total completion time, the total availability of the system and the total energy cost. An enhanced evolutionary algorithm was proposed to solve the problem. Wu and Sun [11] proposed a non-dominant sorting genetic algorithm for the green scheduling problem of the flexible job shop to optimize the makespan, the energy consumption and the numbers of turning-on/off machines simultaneously. Lei et al. [12] presented a two-stage meta-heuristic algorithm based on the imperial competition algorithm and the variable neighborhood search algorithm for multi-objective flexible job shop problem with energy consumption threshold. Jiang and Deng [13] considered the energy-saving flexible job shop scheduling problem with the energy consumption cost and earliness/tardiness time cost as optimization metrics. A bi-population based discrete cat swarm optimization algorithm was proposed to deal with the problem. Jiang et al. [14] formulated the energy-saving job shop scheduling problem with the goal of minimizing the energy consumption and the total tardiness cost, and proposed a grey wolf optimization algorithm based on a dual-mode search mechanism. It can be seen from the above literature that the research on energy-saving scheduling has achieved preliminary results at present, but due to its late appearance, its maturity is far less than that of the traditional production scheduling problem, especially the energy-saving scheduling problem close to the actual production needs to be further studied.
In the real-life production, some machines can work in different modes with different operating power and variable processing speeds. Normally, the higher the machine’s processing speed is, the greater the operating power of the machine is, the shorter the processing time of the job is, but the higher the energy consumption is consumed. On the contrary, if the machine’s processing speed is low, the operating power of the machine is small. Although the energy consumption is reduced, the processing time of the job increases [15]. Therefore, it is necessary to choose an appropriate processing speed for each machine to achieve the purpose of energy saving and consumption reduction. Jiang et al. [15] proposed an improved whale optimization algorithm for the job shop with multi-speed machines with the objective of minimizing the energy consumption cost and the completion time cost. Salido et al. [16] proposed a genetic algorithm to deal with the energy-efficient job shop scheduling problem with multi-speed machines aiming at minimizing the total energy consumption and the makespan. Zhang and Chiong [17] developed a multi-objective genetic algorithm to minimize the total energy consumption and the total weighted tardiness. Jiang et al. [18] presented a discrete whale optimization algorithm to optimize the total energy consumption cost and the completion time cost of the workshop for the energy-saving job shop scheduling problem. Yin et al. [19] investigated an energy-efficient job shop scheduling problem with flexible spindle speed and proposed a multi-objective genetic algorithm for optimizing productivity, energy efficiency, and noise reduction. It is obvious that the energy-saving job shop scheduling problem with variable processing speeds is closer to the actual production. For such a problem, there are two sub-problems, namely speed selection and operation permutation, need to be considered. By comparing with the conventional JSP, the consideration of speed selection and energy-related metrics greatly increases the complexity of the problem. However, as far as we know, there are relatively few literature on this aspect at present. Therefore, the incorporation of variable processing speeds into the energy-saving JSP is deserved to be studied.
The research on efficient optimization algorithm has strong theoretical significance and practical application value, which is helpful for enterprises to improve the production efficiency and reduce the energy consumption. In recent years, various intelligence optimization algorithms have become the main method for solving energy-saving scheduling problems. Water wave optimization (WWO) algorithm is a novel swarm intelligence optimization algorithm based on the shallow water wave theory, which solves optimization problems by simulating the motion phenomenon of water wave [20]. Compared with other intelligence optimization algorithms, WWO has the advantages of simple framework, easy implementation, and fewer control parameters, etc., which has been successfully applied to a variety of complex optimization problems [21–27]. However, since the basic WWO algorithm was originally proposed to solve the continuous single-objective optimization problem, it cannot be directly applied to the production scheduling problems [28–31]. The main contribution of this study is to obtain a multi-objective discrete water wave optimization algorithm (MODWWO) according to the characteristics of the problem under study. The three operators of the basic water wave optimization algorithm are redesigned, namely ranking based propagation, crossover based refraction and local search based breaking, to make the algorithm adaptive for the multi-objective discrete scheduling problem. A large number of simulations demonstrate that the proposed MODWWO is effective for the energy-saving JSP with variable processing speeds.
Problem description and modeling
For a job shop, it is equipped with m machines to process n jobs. Each job i contains m operation with a fixed and known processing route. For each machine k, it can work at different processing speeds selected from a finite and discrete speed set v
k
= { vk1, vk2, ·· · , v
kd
k
} , k = 1, 2, ⋯ , m, d
k
is the number of optional speeds in the speed set. When job i is processed on machine k, there is a basic processing time q
ik
. If the speed v
kl
(l = 1, 2, ⋯ , d
k
) is selected for machine k to process job i, the actual processing time can be represented by p
ikl
= q
ik
/ v
kl
, and the processing energy consumption coefficient is represented by E
kl
. If vkl′ > v
kl
, then Ekl′pikl′ > E
kl
p
ikl
is met. That is to say, the higher the machine speed is, the shorter the processing time of the job on it is, but this leads to the increase of the processing energy consumption. This paper only considers two types of energy consumption, named as processing energy consumption (PE) an idle energy consumption (IE). PE is consumed by machines for processing jobs, and IE is consumed by machines when waiting for process during the time intervals between any two adjacent operations. The idle energy consumption coefficient is measured by SE
k
. To simplify the problem, the following assumptions are considered for this problem. All machines and jobs are available at time zero. Each machine can process only one job at a time. Each job can only be processed by one machine at a time. The machining process of the job is not allowed to be interrupted. All jobs are independent of each other. Different operations in a job must follow a certain precedence constraint, and each operation cannot be processed until its immediate predecessor is finished. Breakdown and setup time of machines are not considered. The machine’s speed is not allowed to be adjusted during the processing process of any operation. Each machine can not be shut down completely until all jobs assigned to it are finished.
Compared with the traditional JSP, the problem under study not only considers the operation sequencing problem, but also increases the speed selection problem. Under the circumstances, machines can be operated at different speeds for different jobs (like the CNC machines in real-life production used for mechanical processing). When a machine is running at a higher speed, its processing time is decreased but the energy consumption increases. Therefore, there is a conflict between the traditional optimization objective (makespan) and the total energy consumption. In the previous work of Jiang et al. [15] and Salido et al. [16], the two performance metrics are integrated into a mono-objective. Here, the aim is to get the trade-off between the makespan and the total energy consumption. To formulate the mathematical model, some relevant symbols and variables are defined as follows:
F1, F2: The objective function;
E kl : The processing energy consumption coefficient of machine k with speed l;
SE k : The idle energy consumption coefficient of machine k;
C k : The final completion time of machine k;
W k : The workload of machine k, which equals to the sum of the processing time of all operations on machine k;
Cmax: The makespan of the workshop;
Q: A big positive constant;
C ik : The end time of O ik ;
q ik : The basic processing time of job i on machine k;
p ikl : The actual processing time of job i on machine k with speed l;
P (O ik ): The immediate predecessor operation of O ik in job i;
CP(O ik ): The completion time of P (O ik );
x ikl : 0-1 variable, if job i is processed by machine k with speed l, x ikl = 1; otherwise, x ikl = 0;
y ijk : 0-1 variable, if job i is prior to job j on machine k for processing, y ijk = 1; otherwise, y ijk = 0.
Equation (1) represents the minimum total energy consumption of the workshop. The first item represents the processing energy consumption, while the second item represents the idle energy consumption. Equation (2) means to minimize the makespan of jobs in the workshop; Constraint (3) indicates that no further adjustment is allowed after the processing speed of any job on each machine is determined; Constraint (4) represents the precedence constraints between operations in a job; Constraint (5) indicates that the machine can only process one job at a time; Constraint (6) represents the workload of the machine, which is equal to the sum of the processing times of all jobs on the machine; Constraint (7) represents the final completion time of the machine; Constraint (8) indicates that the end time of each operation is non-negative; Constraint (9) and (10) represent 0-1 variables.
Basic water wave optimization
In the water wave optimization algorithm, the search space of the problem corresponds to “seabed”, and each solution of the problem is analogous to a water wave with a wave height and a wave length. The fitness value of the water wave is inversely proportional to its vertical distance to the seabed. For a maximization optimization problem, the smaller the distance to the calm water level, the better the fitness of the wave, the shorter the wave length, and the higher the wave height [20].
The WWO algorithm includes three search operations: propagation, refraction and breaking. The propagation operator determines the generation way of new waves, which has a significant influence on the search ability of the algorithm. In the propagation process, the waves with small fitness values probably move to remote areas to realize the global exploration, while waves with large fitness values tend to move to nearby areas to implement the local exploitation. The refraction operation is performed to stationary waves whose wave heights decrease to zero. These waves will move to new positions by learning the information from the best wave. In addition, the breaking operation is conducted to improve the local search ability around a promising solution. The three operators are combined to implement the balance between global exploration and local exploitation. The promising optimization strategy of the WWO algorithm motivates us to employ it for solving the considered problem.
The steps of the basic WWO algorithm are as follows: Randomly generate the initial population. Evaluate the initial scheduling solution and obtain the current best solution xbest. Determine whether the termination condition is met. If yes, go to Step 10; Otherwise, perform Step 4. Perform the propagation operation on the water wave x
i
, and get a new wave If If Replace The wave height h
i
of the water wave x
i
is decreased by 1. If the wave height h
i
is 0, the refraction operation is performed and the wave height h
i
is updated to be hmax; Otherwise, go to Step 9. Determine whether all water waves of the current population have been propagated. If yes, update xbest and go to Step 3. Otherwise, go to Step 4. Terminate the algorithm and output the optimal solution.
The basic WWO algorithm is originally proposed for dealing with continuous optimization problems with single objective. Therefore, it can not be directly applied to the multi-objective discrete scheduling problem under study. In the following sections, the principle of the basic WWO algorithm is employed, and the three operators are redesigned following the characteristics of the considered problem.
Encoding and decoding
Like other intelligence optimization algorithms, the first primary task of the water wave optimization algorithm is to design an encoding method for the water wave. As mentioned before, the energy-saving scheduling problem in this paper contains two sub-problems, namely the speed selection and the operation sequencing. Therefore, a two-vector encoding method is adopted as shown in Fig. 1. The first half represents the speed selection scheme for processing each operation, and its element value is the speed level of the machine when processing the corresponding operation; the second half represents the operation sequencing scheme, and its element value is the code of each job. The same element values represent different operations of the same job, and the order of its occurrence represents the processing order of these operations.

The encoding scheme.
The decoding process traverses the operation sequencing vector from left to right, and determines the processing speed of each machine for the operations on it. The first operation in the operation sequencing vector is first scheduled, and the second operation is then scheduled, and so forth. Each operation is allocated in the best available time on its corresponding machine. The procedure is repeated until a scheduling scheme is obtained.
Population initialization is always viewed as an important factor for the swarm intelligence algorithm, which significantly affects the performance of the algorithm. Following the encoding scheme, the process of population initialization can be divided into two phases. In the first phase, the speed selection scheme is generated following a random rule, by which a speed is randomly selected from the discrete speed set of each machine for processing the corresponding operations. In the second phase, three dispatching rules are used to generate the operation sequencing, i.e., Most Work Remaining (MWR) [32], Most Operation Remaining (MOR) [32], and Random Rule (RR).
Ranking based propagation
During the iterative process of the WWO algorithm, each wave should perform the propagation operation to generate a new individual by conducting a perturbation operator. In addition, to cooperate global exploration and local exploitation, the algorithm make good waves conduct small-range search, while poor waves perform large-range search. According to the characteristics of the problem, a discrete propagation operation, namely ranking based propagation, is proposed based on individual rank and neighborhood structure.
In this paper, two types of neighborhood structures, corresponding to speed selection section and process sequencing section respectively, are adopted for the perturbation procedure, which can be described as follows: Select an operation at random,whose assigned machine has more than one speed level, then select a different speed level to replace the original value. Select two operations belonging to different jobs, and then the positions of the selected operation are exchanged.
By considering the multi-objective characteristics, the water waves in the current population are divided into several non-dominated layers following the fast non-dominated sorting approach [33], by which the waves located in the first layer have the lowest rank (Rank 1). For other waves in the population, their ranks increase with the increasing of the number of layers, for example, Rank 2, Rank 3, Rank 4, and so on. After assigning the ranks to all waves, the propagation operation is performed to all waves by executing different times of neighborhood operation [29]. The waves with a high rank correspond poorer solutions and move to remote areas to realize the global exploration, while the waves with a low rank correspond better solutions and move to nearby areas to implement the local exploitation, which can be represented by Equation (11):
where λ i is the executing time of neighborhood operation for wave i, λ i ∈ [λmin, λmax]; rank i represents the individual rank of wave i; TR is the total number of non-dominated layers.
In order to simulate the energy dissipation of the water wave during the propagation process, the wave height of the propagated water wave is decreased by 1. To avoid the stagnation of the search process, the refraction operation should be performed to the wave, whose wave height drops to 0. The main method is to absorb better information by learning from the current best wave. Here, a crossover-based refraction operator is presented. An non-dominated solution is randomly selected from the external archive, and then the crossover operation is carried out between the selected wave and the current wave. For the crossover operator, a two-point crossover is used for the speed selection in Fig. 2, and the precedence preserving order-based crossover (POX) is adopted for the operation sequencing in Fig. 3. It should be noted that two offspring individuals will be obtained after the crossover operation, and the non-dominated wave will be selected as the new one after the refraction operation. If two individuals do not dominated each other, either of them is chosen as the new individual.

Two-point crossover.

POX crossover.
In the WWO algorithm, if the wave is better than the current best wave after the propagation operation, the breaking operation will be performed to improve the local search capability of the algorithm around the new best solution. To implement the breaking operator, a local search algorithm is proposed. For the multi-objective optimization problem in this paper, the local search algorithm is performed to the new non-dominated solution after the propagation operation. The steps of the local search algorithm is shown as below. Determine the initial solution x, set q ← 1 and ϑ ← 1, determine the maximum iteration number qmax. If ϑ = 1, perform the neighborhood structure N1, x′ ← N1 (x); if ϑ = 0, perform the neighborhood structure N2, x′ ← N2 (x). If x′ dominates x, x ← x′; otherwise, ϑ ← |ϑ - 1|. Set q ← q + 1, and determine whether q > qmax is satisfied. If yes, go to Step 5; otherwise, go to Step 2. Terminate the local search.
Steps of the MODWWO
The detailed steps of the MODWWO algorithm proposed in this paper are listed as follows: Obtain the initial population according to the population initialization method in Section 3.3. Evaluate the initial scheduling solutions and fill the non-dominated solutions into the external archive. Determine whether the termination condition is met. If yes, go to Step 10; Otherwise, perform Step 4. Perform the ranking based propagation operation on water wave x
i
. If Compare Replace Decrease the wave height h
i
of the water wave x
i
by 1. If h
i
is 0, the crossover based refraction operation is performed and h
i
is updated to be hmax; Otherwise, go to Step 9. Determine whether all waves in the current population have been propagated. If yes, update the external archive and go to Step 3. Otherwise, go to Step 4. Terminate the algorithm and output the external archive.
Experimental analysis
In order to verify the effectiveness of the MODWWO algorithm in solving the multi-objective energy-saving scheduling job shop problem with variable processing speeds. All algorithms are coded in Fortran language and run on VMware Workstation with 2 G memory under WinXP operating system.
Experimental design
In this section, simulation experiments are carried out based on 40 benchmark instances (LA01~LA40) of the standard JSP designed by Lawrence [34]. The processing times in the standard JSP are taken as the basic processing times in the considered problem. Compared with the classical job shop scheduling problem, the information related to machine speed and energy consumption are added to the energy-saving scheduling problem in this paper. The machine speed is chosen from v
k
= { vk1, vk2, vk3, vk4, vk5 } = {1 . 0, 1 . 3, 1 . 5, 1 . 8, 2 . 0}. In addition, the processing energy consumption coefficient is measured by
Based on the generated instances, the following three indicators are used to evaluate the computational results of the algorithm.
(1) Ratio metric ζ: the ratio of the number of elements in {X ∈ §
r
|X ∈ § *} to | § *|, which can be expressed by Equation (12). §
r
is the non-dominated solution set obtained by the rth algorithm. §* is the reference set consisted by the non-dominant solutions in the merged set
(2) Distance metric GD: the distance of the non-dominated solution set §
r
to the reference set §*, which is represented by Equation (13).
(3) Dominance metric C: the dominance relationship between two non-dominated solution sets
For the two solution sets
In this paper, four parameters are considered in the MODWWO algorithm: the population size PS, the maximum wave height hmax, the maximum iteration times of the MODWWO algorithm itermax and the maximum iteration times of the local search algorithm qmax. Here, the Design of Experiment (DOE) is adopted for parameter setting. For each parameter, four levels are considered in Table 1. Then an orthogonal array of size L16 (44) is established, as shown in Table 2. For the instance LA27, the MODWWO algorithm was run independently for 10 times with each different parameter combination. The metric GD is adopted to verify the computational results. According to the computational data in Table 2, the response values and the significance rank of each parameter are calculated in Table 3, and then the influence curve of each parameter on computational performance was drawn in Fig. 4. Seen from Table 3, the value of the Dalta of hmax is the largest, which indicates that this parameter has the largest influence on the computational performance. It can be seen from Fig. 4 that the greater the PS and itermax are, the better the algorithm’s performance is. On the contrary, the bigger the hmax is, the worse the algorithm’s performance is. In addition, when qmax is set as 30, the algorithm has the best performance. According to the analysis results, the parameters of the MODWWO algorithm are set as follows: PS = 200, hmax = 5, itermax = 1500, and qmax = 30.
Parameter levels
Parameter levels
Orthogonal array and GD values
Response value and significance rank

Factor level trend of parameters.
To verify the effectiveness of our algorithm, we compare it with two algorithms, namely Multi-objective Improved Whale Optimization Algorithm (MOIWOA) and Multi-objective Genetic Algorithm (MOGA), which are modified from the algorithms proposed by Jiang et al. [15] and Salido et al. [16]. For the MOIWOA, the modified mutation rate is represented by
To be fair, the compared algorithm has the same population size and the maximum number of iteration number with those of the MODWWO, and then other parameters are set based on plenty of experiments to obtain the best combination of parameters. The parameters of MOGA and MOIWOA are set as follows: In the MOGA, the population size is 200, the maximum iteration number is 1500, the crossover rate is 0.8, the mutation rate is 0.2; In the MOIWOA, the population size is 200, the maximum iteration number is 1500. The comparison results of GD and ζ are shown in Table 4. The first column is the instance name and others are the performance indicators of the algorithm. Time is the average time (in seconds) for the algorithm in ten runs. It can be observed from Table 4 that: (1) For the value of GD, MODWWO outperforms other algorithms in all instances. (2) For the value of ζ, the MODWWO algorithm performs better than other algorithms. In 16 out of 40 instances, the value of ζ obtained by the MODWWO algorithm equal to 1, which indicates that the whole reference set element S* is generated by the non-dominated solutions obtained by the MODWWO algorithm. (3) For the Time value, the MOGA algorithm has the shortest running time, the MODWWO algorithm comes second, and the MOIWOA algorithm has the longest running time. In addition, the comparison results of metric C are given in Tables 5. It is clear that the results of metric C obtained by MODWWO are significantly better than those obtained by MOGA and MOIWOA on all test problems. Figure 5 shows the Pareto frontiers obtained by different algorithms in four instances (LA01, LA11, LA24 and LA38). Figures 6 and 7 give the convergence curves of different algorithms in instance LA11 and LA24. It can be seen from Figs. 5–7 that our MODWWO algorithm in this paper is superior to other algorithms.
Comparison results of GD and ζ
Comparison results of GD and ζ
Comparison results of metric C

The distribution of the solutions obtained by the algorithm.

The convergence curves of different algorithms in instance LA11.

The convergence curves of different algorithms in instance LA24.
In order to make the comparison results statistically more convincing, the paired-sample t-test is used to obtain the p-value of GD to test the performance of the three algorithms. For a specific paired-sample t-test (Ag1, Ag2), if the p-value is less than 0.05, the performance of the algorithm Ag1 is better than that of the algorithm Ag2. Tables 6 reports that all the p-values are smaller than 0.05 in terms of the metric GD. This means that the proposed MODWWO performs better than MOGA and MOIWOA, which is consistent with the previous analyses. In summary, the proposed MODWWO algorithm is effective in solving the multi-objective energy-saving job shop scheduling problem with variable processing speeds. Figures 8 and 9 give the Gantt chart obtained by the MODWWO algorithm for the instances LA25 and LA40.
Paired-sample t-test for three algorithms

The Gantt chart obtained by the MODWWO algorithm for instance LA25.

The Gantt chart obtained by the MODWWO algorithm for instance LA40.
In this paper, the multi-objective energy-saving job shop scheduling problem with variable processing speeds is studied. A mathematical model is established with the total energy consumption and the makespan as the optimization metrics, and a multi-objective discrete water wave optimization algorithm is proposed for solving the problem.
The scheduling solution is represented by a two-vector encoding method, and the population initialization is realized based on some dispatching rules. Then, according to the characteristics of the problem, three kinds of search operators in the water wave optimization algorithm, namely propagation, refraction and breaking, are specifically designed. Then 40 benchmark instances of the classical job shop scheduling problem are modified and used in the simulation experiments to test the algorithms’ performance. A large number of experimental data show that our MODWWO algorithm is effective in solving the multi-objective energy-saving job shop scheduling problem with variable processing speeds.
The next work will extend the energy-saving scheduling problem to more complex manufacturing systems and consider more realistic constraints, such as dynamic production environments, job deterioration effect, worker flexibility, time-of-use pricing policies, and renewable energy utilization. In addition, the combination of the WWO algorithm and other intelligence algorithms will be further studied to obtain a more efficient algorithm.
Footnotes
Acknowledgments
This research was supported by the Fundamental Research Funds for the Central Universities, JLU; the National Natural Science Foundation Project of China under Grant 51705260; the Natural Science Foundation Project of Shandong Province ZR2020QG005, ZR2019QF008.
