An Enhanced MOPSO Algorithm for Energy-Efficient Single-Machine Production Scheduling

In recent years, the concerns on energy efficiency in manufacturing systems have been growing rapidly due to the pursuit of sustainable development. Production scheduling plays a vital role in saving energy and promoting profitability for the manufacturing industry. In this paper, we are concerned with a just-in-time (JIT) single machine scheduling problem which considers the deterioration effect and the energy consumption of job processing operations. The aim is to determine an optimal sequence for processing jobs under the objective of minimizing the total earliness/tardiness cost and the total energy consumption. Since the problem is NP-hard, an improved multi-objective particle swarm optimization algorithm enhanced by a local search strategy (MOPSO-LS) is proposed. We draw on the idea of k-opt neighborhoods and modify the neighborhood operations adaptively for the production scheduling problem. We consider two types of k-opt operations and implement the one without overlap in our local search. Three different values of k have been tested. We compare the performance of MOPSO-LS and MOPSO (excluding the local search function completely). Besides, we also compare MOPSO-LS with the well-known multi-objective optimization algorithm NSGA-II. The experimental results have verified the effectiveness of the proposed algorithm. The work of this paper will shed some light on the fast-growing research related to sustainable production scheduling.


Introduction
The manufacturing industry has been regarded as an intensive energy consumer. To achieve sustainable development goals, a number of regulations are urging the manufacturers to adopt energy-saving measures. In addition to an upgrade of production equipment, which is usually costly, the possibility of using soft techniques to achieve energy savings should be emphasized. In fact, production scheduling could play a significant role in reducing the energy consumption of manufacturing processes. However, the traditional production scheduling software, which is often embedded in the company's ERP or MES, has been designed solely for the productivity or profitability goal, without consideration of sustainability impacts. To take energy consumption and other environmental factors into consideration, the scheduling models and algorithms need to be significantly revised or even rewritten. In the redevelopment process, a major difficulty is that the energy model, which characterizes the power consumption of manufacturing activities, is highly industry-dependent and factory-dependent, and therefore, energy-efficient production scheduling algorithms are not universally applicable and have to be designed specifically for each company. Currently, some energy-intensive manufacturers (like steel companies) have adopted energy-saving production scheduling techniques, and the procedure is waiting to be extended and applied to other industries. Another issue that prevents the application of such scheduling technologies is the high computational complexity. The simultaneous consideration of energy-related aspects will complicate the scheduling model (leading to more constraints and variables), which requires more powerful optimization algorithms to solve. This poses a theoretical challenge to the operations research and management science community.
Energy-efficient production scheduling problems have been extensively studied by a number of researchers in recent years [1][2][3][4]. In the existing research, considerations for energy efficiency can be divided into two categories, i.e., energy-related objectives and energy-related constraints. Wang et al. [1] study a bi-objective single machine batch scheduling problem with non-identical job sizes. Zhang and Chiong [5] propose an enhanced multi-objective genetic algorithm to solve the job shop scheduling problem minimizing total energy consumption and total weighted tardiness. Wu et al. [6] investigate the flexible job-shop scheduling problem with the objective of minimizing total energy consumption and makespan. They consider the deterioration effect as well. Liao et al. [7] use MOPSO to address the bi-objective single machine scheduling problem with energy consumption constraints. Módos et al. [8] consider a production scheduling problem with large electricity consumption. The energy-related constraint requires that, in the specified time intervals, the total energy consumption should not exceed a given limit.
Just-in-time (JIT) objectives are commonly considered in production scheduling problems. Under the JIT logic, both earliness and tardiness (with respect to due dates) should be penalized [9,10]. The former can cause inventory holding costs such as storage cost and extra delivering cost (especially for perishable goods), while the latter can cause loss of reputation, sale and may even cause penalty.
In real-world manufacturing systems, the processing times of certain jobs can be longer than their nominal values because of the deterioration effect (deterioration effect refers to the phenomenon that a job requires longer processing time if its starting time is postponed or later than expected). There are varieties of factors that may cause deterioration such as high workload of machines, insertion of maintenance activities, and fatigue of human operators [11,12]. Deterioration can also be explained by industry-specific reasons, for example, a steel slab in the hot rolling production process has to be reheated (which takes extra processing time) if it has been kept waiting for a long time which brings a significant decline in temperature [13].
To the best of our knowledge, there are no results in the existing literature for production scheduling problems that integrate the JIT objective, the energy-saving requirement and explicit consideration of the deterioration effect. Production systems with the above characteristics are commonly observed in mechanical and metal manufacturing companies. Note that the single-machine JIT scheduling problem with a deterioration effect is N P-hard [14], which means the time required by an exact algorithm to solve the problem increases exponentially with the number of jobs. Hence, a multi-objective particle swarm optimization algorithm enhanced by local search (MOPSO-LS) is presented in this paper to obtain near-optimal solutions for the discussed problem.
The rest of this paper is organized as follows. Section 2 introduces the basic definitions and notations for the bi-objective single-machine scheduling problem with deterioration. Section 3 describes the proposed MOPSO-LS algorithm. Computational results are shown in Section 4. Conclusions and future work are presented in Section 5.

Problem Statement
The problem is described as follows. A set of jobs labeled as J = {j|j = 1, 2, . . . , n} are to be scheduled on a single machine. The aim is to obtain the best sequence for processing the set of jobs to minimize the total weighted earliness/tardiness (TWET) and the total energy consumption (TEC). Each job j is characterized by a basic processing time tbp j , a latest starting time tls j , a weight w j and a due date d j . For a given sequence of jobs, the completion time tc j of job j can be determined, and the earliness/tardiness of job j is defined as et j = tc j − d j . One objective is to minimize the total weighed earliness/tardiness TWET = ∑ n j=1 w j et j . Another objective is to minimize the total energy consumption TEC = ∑ n j=1 tp j e j , where e j is the power consumption for processing job j per unit time and tp j is the actual processing time of job j.
With the deterioration effect in consideration, the actual processing time of each job j is variable and determined by the basic processing time tbp j and the starting time ts j . For each job j, when the starting time ts j is earlier than or equal to its latest starting time tls j , the actual processing time tp j is equal to its basic processing time tbp j . Otherwise, the increment in actual processing time tp j is proportional to the delay of starting time, i.e., ts j − tls j . Therefore, tp j can be calculated as follows: where b j is the deterioration coefficient of job j. The other assumptions for the problem are stated as follows (these are standard assumptions for the modeling of scheduling problems and are normally satisfied in practical situations): • All jobs are available at time zero.

•
The machine can handle only one job at a time.

•
There are no precedence relations between the jobs.

•
Preemption is not allowed.

•
Setup times are not considered.

A Small Example
Consider a set of eight jobs labeled as j ∈ {1, 2, 3, 4, 5, 6, 7, 8}. The information about each job is shown in Table 1. Obviously, each possible sequence of the jobs corresponds to a feasible solution, so the number of feasible solutions for this instance is: 8! = 40, 320. Figure 1 shows the objective space of this instance and marks all the non-dominated solutions. In this case, there are eight non-dominated solutions in total, which constitute the Pareto front, i.e., the set of Pareto-optimal solutions (we say a solution is Pareto-optimal if neither objective can be improved without sacrificing the other objective).

The Basic PSO Algorithm
The proposed algorithm adopts MOPSO as the main framework and incorporates an enhanced local search method to promote efficiency. We first make a brief introduction to the basic principles of PSO. The PSO algorithm is a population-based stochastic optimization technique inspired by the social behavior of bird flocking or fish schooling. It is a well-known meta-heuristic algorithm for solving both continuous and combinatorial optimization problems.
Firstly, the algorithm generates a population of particles and the position of each particle represents a potential solution in the search space for the considered problem. According to the evaluation of the objective function to be optimized, each particle has a fitness value. Then, the fitness determines the flying direction and speed of the particles. In each iteration, two types of best positions are preserved. One is called the personal best position (p best ) which represents the best solution that each particle has achieved so far. The other is called the global best position (g best ) which represents the best position obtained so far by all the particles. Finally, the particles learn from these two best positions based on their current flying routes, and the positions of the particles get updated in each iteration. The iterations continue until the convergence criterion is satisfied.

Encoding and Decoding
We use the largest position value (LPV) rule as the decoding method, which transforms continuously encoded particles into discrete solutions. Simply speaking, the decoded solution records the relative order of the corresponding position values (from largest to smallest). For example, for a particle pt = (2.38, −0.55, −3.64, 3.98, 1.68, −1.26, 0.8, −2.33), its corresponding job sequence is S pt = (2, 5, 8, 1, 3, 6, 4, 7), because the fourth value in pt is the largest (rank 1) and the third value in pt is the smallest (rank 8).

Solution Initialization
Generally, the initial population is generated by specific heuristic rules combined with some random methods to get high-quality and distinct solutions. However, to encourage solution diversity and to facilitate the evaluation of the k-opt neighborhood operations, the individuals of the initial population are completely randomized in our proposed algorithm.

Sorting of Solutions
In multi-objective optimization settings, Pareto dominance is the main criterion for distinguishing the quality of different solutions. For our research, both objectives aim at finding the minimum. In this case, solution x 1 with objective values (TWET 1 , TEC 1 ) is said to dominate solution x 2 with objective values (TWET 2 , TEC 2 ) if either one of the following two conditions is satisfied: TWET 1 ≤ TWET 2 and TEC 1 < TEC 2 The relation will be denoted by x 1 ≺ x 2 . Two solutions are treated equally in the same Pareto rank if they are mutually non-dominated. All the non-dominated solutions are stored in an external archive.
In addition to Pareto dominance, the adaptive grid method proposed by Coello Coello [15] is used to sort solutions that are not mutually dominated. The aim is to avoid over-crowded solutions and obtain evenly distributed non-dominated solutions for the decision maker. Figure 2 shows the insertion of a new solution in the adaptive grid with grid size n d = 10.

External Repository and Updating Mechanisms
In standard PSO intended for single-objective optimization, either the personal best solution associated with each particle or the global best solution is an individual solution. However, it is necessary to preserve a number of equally optimal (non-dominated) solutions when addressing multi-objective optimization problems. For this purpose, we build an external repository (denoted by a set φ) to save all the historical non-dominated solutions found in the search process.
The maintenance rules are described as follows. In each iteration, if the newly produced solutions are all dominated by some existing solutions in φ, nothing happens. If there are any new non-dominated solutions, then insert all of them into the repository and the dominated solutions originally in the repository are eliminated.

The Mutation Operator
We apply a mutation operator to enhance the global searching capability of MOPSO (the concept of mutation is adapted from genetic algorithm, representing a perturbation technique which alters the current solutions slightly in the hope of finding better solutions). The mutation operator is applied to the particles of the swarm after the position updating process. Specifically, we use a mutation index (represented as mutIndex) to control the probability of mutation. When mutIndex is a positive real number, the mutation operator will be applied to each particle with a probability of mutIndex. In the selected particle, the mutation operator changes the value of a randomly identified position to a real number generated from the uniform distribution whose interval is centered at its original value with mutRadius as its radius. The mutIndex and mutRadius mentioned above can be calculated as follows: where iter and iterMax represents the current iteration number and the maximum iteration number of MOPSO, p m is the mutation rate defined in MOPSO, and rangeMax is set at 4 in our algorithm.

Local Search
The two-opt neighborhood operator, which reverses one segment of the sequence, is the most commonly used operator to generate neighboring solutions for routing problems. The idea can be extended to k − 1 segments (k-opt). However, the operator needs to be modified in our research since a scheduling problem is different from a routing problem.
We define the k-opt neighborhood operations as follows. For a given sequence, we select k − 1 segments randomly, and then we reverse some of these segments. Since each of the segments may or may not be reversed, there are a number of possible combinations. If the number of selected segments is k − 1, there are ∑ k−1 i=1 C i k−1 ways to rearrange a schedule. For example, when considering 2 segments (3-opt), there are three possible outcome solutions (Figure 3). Similarly, for the case of three segments (four-opt), there are seven possible outcome solutions.
It is supposed that the selected segments do not have any overlap, because in the case of overlap, the order of reversing the segments will affect the final solutions. For example, consider two segments with an overlap (shown in Figure 4). For the original sequence S 0 = (1, 2,3,4,5,6,7,8), the first segment is from the second job to the sixth job and the second segment is from the fifth job to the seventh job. If we reverse the first segment first, we get the sequence S 1 = (1, 6,5,4,3,2,7,8), and then we reverse the second segment which is currently filled with jobs (3, 2, 7). However, if we reverse the second segment first, we get the sequence S 2 = (1, 2, 3, 4, 7, 6, 5, 8), and then we reverse the first segment which is currently filled with jobs (2, 3, 4, 7, 6). The resulting solutions will certainly be different in these two cases. To avoid confusion, we assume the selected segments for k-opt operations are overlap-free.  After the solution set φ in external repository has been updated in each iteration, the k-opt operator is performed on one of the solutions in φ. All solutions have equal probabilities of being selected. The new solutions produced by this operation will be added to φ. Then all the solutions will be evaluated and saved according to the updating mechanisms introduced before.

MOPSO-LS Framework
The entire algorithm structure of the MOPSO-LS is shown in Figure 5. Compared with the standard PSO workflow, our algorithm features a novel mutation operator and local search module, which greatly enhances the exploitation ability for coping with large-scale search space. In addition, the mechanisms for handling multi-objective optimization are also important contributors to the overall algorithm but not directly reflected in the flowchart.

Experimental Settings
Because there is no standard data set for the studied problem, we followed the data generation rules in literature for scheduling problems with deteriorating jobs and scheduling problems with energy consumption considerations. The parameters generated for the studied scheduling problem are described as follows and summarized in Table 2.

•
The basic processing time tbp j of each job is generated uniformly from uni f (1, 100).

•
The deterioration factor of each job b j is generated from the uniform distribution uni f (0, 1).

•
The latest starting time of each job tls j = 30 × n × uni f (0, 1) where n is the number of jobs. Table 2. Data generation rules.

Item Distribution
The true Pareto front of each instance was not known, but for comparison purpose, we generated an approximate Pareto front for each instance by the following steps. First, all algorithms including MOPSO-LS (2-opt), MOPSO-LS (3-opt), MOPSO-LS (4-opt), MOPSO (excluding local search) and NSGA-II were repeated 20 times. Then, we identified all the non-dominated solutions from the solutions found by the above algorithms and these non-dominated solutions constitute the approximate Pareto front.

The Performance Measures
Convergence to the Pareto front and evenness of solution distribution were two main criteria for assessing multi-objective optimization algorithms. In accordance with these requirements, we adopt the generational distance (GD) measure [16] and the spacing (SP) measure [17] to evaluate the performance of algorithms.
GD measures the distance between the set of non-dominated solutions found by the algorithm and the (approximate) Pareto front [16]. GD is defined as follows: where m is the number of non-dominated solutions found and d i is the Euclidean distance between solution i and its nearest counterpart solution from the Pareto front. SP measures the spread (distribution evenness) of the solutions found [17]. SP is defined as follows: whered = ∑ m i=1d i m andd i is the Manhattan distance between solution i and its nearest neighbor solution in the set of non-dominated solutions found, formally defined as follows:

Parameter Tuning Experiments
The setting of parameters can have a vital impact on the performance of algorithms. In the proposed MOPSO-LS, the weight ω, learning factors c 1 , c 2 , mutation probability p m , maximum velocity V max and the grid size n d [15] are important parameters. To find the best settings, we applied a design of experiments (DOE) approach to study the influence of these six parameters. The adopted DOE approach was based on the Taguchi method [18]. All the parameter settings for MOPSO and MOPSO-LS were the same. The details of parameters are shown in Table 3. We also performed the DOE for the NSGA-II to ensure a fair comparison. For the NSGA-II, we focused on the crossover probability p c , mutation probability p m2 , crossover distribution index di c and mutation distribution index di m . The details are shown in Table 4.
A randomly generated instance with 50 jobs was used in the experiments. For each combination of parameter values, we ran the corresponding algorithm for 10 times and record the average values of GD and SP. The results are shown in Figures 6 and 7. In conclusion, the optimal settings of parameters for MOPSO and MOPSO-LS are as follows: ω = 0.7, c 1 = 0.1, c 2 = 0.8, p m = 0.2, V max = 3, n d = 10. The optimal settings of parameters for NSGA-II are as follows: p c = 0.9, p m2 = 0.1, di c = 25, di m = 20.

Performance Comparison
We compared our proposed algorithm MOPSO-LS with MOPSO which excluded the local search function completely. We implemented two-opt, three-opt and four-opt in three versions of MOPSO-LS. Besides, we also compare our algorithm with the well-known multi-objective optimization algorithm NSGA-II [19]. We used the optimal parameter values obtained from the DOE for both algorithms. We have generated instances with 15, 30, 50, 75 and 100 jobs randomly. For each size, 10 different instances have been generated, resulting in 50 test instances in total.
To achieve a fair comparison, we imposed the same computational time limit on all algorithms. The time limits were set as follows: 1 s for 15-job instances, 5 s for 30-job instances, 20 s for 50-job instances, 40 s for 75-job instances and 60 s for 100-job instances. To reduce the impact of randomness, each algorithm was run for 20 independent times on each instance and we record the average result. Tables 5 and 6 show the results of average GD and SP for each instance.
From the presented results, the following observations and comments can be made: 1. MOPSO-LS shows excellent performance for almost all instances in terms of GD, which suggests that the solutions obtained by MOPSO-LS are closer to the approximate Pareto front. Since all the computational tests are conducted in limited time, we can judge from the table that the convergence speed of MOPSO-LS is much faster than that of MOPSO and NSGA-II, especially for large-scale instances. 2. For some instances, the NSGA-II achieved better results in terms of SP, meaning that the solutions of NSGA-II are distributed more evenly. However, it should be noted that the NSGA-II solutions were located far from the approximate Pareto front, and in this case, the number of non-dominated solutions tends to be much larger and thus it is easier to find evenly spread solutions. Therefore, even though NSGA-II sometimes obtains a better SP, the inferior GD performance indicates worse solution quality. 3. From the table, we can see that the k-opt operator has improved the performance of MOPSO significantly. It is found that three-opt and four-opt are often more powerful than two-opt. However, there is no definite conclusion regarding which one of three-opt and four-opt is more effective (the result appears to be instance-dependent).
To show the results intuitively, we plot the Pareto fronts found by the MOPSO-LS, MOPSO and NSGA-II for an instance with 50 jobs in Figure 8. This figure clearly reveals that our algorithm has obtained much better Pareto fronts than the compared algorithms. It has found solutions with significantly improved total weighted earliness/tardiness and total energy consumption. Noting that earliness/tardiness is an indicator of the manufacturer's profitability, it is safe to conclude that our algorithm has great potential in improving both profitability and energy efficiency for the manufacturing industry.

Conclusions
This paper investigates the single-machine scheduling problem with deterioration to minimize two objectives simultaneously, i.e., the total weighed earliness/tardiness and the total energy consumption. The first objective reflects the just-in-time management philosophy and the second objective reflects the motivation to pursue sustainable and green manufacturing.
We propose a hybrid meta-heuristic algorithm called MOPSO-LS which enhances MOPSO by a dedicated local search procedure to solve the problem. The local search strategy is built on the idea of k-opt neighborhood operators and has been adapted for the scheduling problem. To evaluate the effectiveness and efficiency of the proposed algorithm, computational experiments are conducted and comparisons are made between MOPSO-LS, MOPSO and NSGA-II. The results show that the MOPSO-LS has faster convergence speed and better solution quality compared to the other two algorithms. Besides, it is shown that the local search procedure based on 2-opt, 3-opt and 4-opt have improved the search ability of MOPSO significantly.
In future research, we will focus on more advanced energy models and more sophisticated local search strategies. The energy consumption of machines in different states and the different power rates under adjustable processing speeds will be taken into consideration. This will result in a more complicated scheduling problem with additional decision variables, which makes it necessary to devise an enhanced local search scheme to promote the search efficiency of meta-heuristic algorithms. The k-opt neighborhood operators could be combined with more complex moves to construct an adaptive large neighborhood search policy.