Next Article in Journal
Reliability-Based Design Optimization of Structures Using the Second-Order Reliability Method and Complex-Step Derivative Approximation
Previous Article in Journal
Analyzing Precision and Efficiency of Global Navigation Satellite System-Derived Height Determination for Coastal and Island Areas
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Variable Neighborhood Strategy Adaptive Search to Solve Parallel-Machine Scheduling to Minimize Energy Consumption While Considering Job Priority and Control Makespan

by
Rujapa Nanthapodej
1,
Cheng-Hsiang Liu
2,*,
Krisanarach Nitisiri
3 and
Sirorat Pattanapairoj
3
1
Department of Tropical Agriculture and International Cooperation, National Pingtung University of Science and Technology, Pingtung 912, Taiwan
2
Department of Industrial Management, National Pingtung University of Science and Technology, Pingtung 912, Taiwan
3
Department of Industrial Engineering, Khon Kaen University, Khon Kaen 40002, Thailand
*
Author to whom correspondence should be addressed.
Submission received: 21 April 2021 / Revised: 2 June 2021 / Accepted: 2 June 2021 / Published: 7 June 2021
(This article belongs to the Section Applied Industrial Technologies)

Abstract

:
Environmental concerns and rising energy prices put great pressure on the manufacturing industry to reduce pollution and save energy. Electricity is one of the main machinery energy sources in a plant; thus, reducing energy consumption both saves energy costs and protects our planet. This paper proposes the novel method called variable neighborhood strategy adaptive search (VaNSAS) in order to minimize energy consumption while also considering job priority and makespan control for parallel-machine scheduling problems. The newly presented neighborhood strategies of (1) solution destroy and repair (SDR), (2) track-transition method (TTM), and (3) multiplier factor (MF) were proposed and tested against the original differential evaluation (DE), current practice procedure (CU), SDR, TTM, and MF for three groups of test instances, namely small, medium, and large. Experimental results revealed that VaNSAS outperformed DE, CU, SDR, TTM, and MF, as it could find the optimal solution and the mathematical model in the small test instance, while the DE could only find 25%, and the others could not. In the remaining test instances, VaNSAS performed 16.35–19.55% better than the best solution obtained from Lingo, followed by DE, CU, SDR, TTM, and MF, which performed 7.89–14.59% better. Unfortunately, the CU failed to improve the solution and had worse performance than that of Lingo, including all proposed methods.

1. Introduction

The manufacturing industry is facing a great deal of pressure with regard to saving energy and reducing emissions, since it is an energy-intensive industry. In 2020, its energy consumption reached 1443.1 trillion British thermal units (Btu), of which electricity consumption was 200.7 trillion Btu [1]. In the same year, energy-related carbon dioxide emissions by the manufacturing industry reached 1057 million metric tons [2]. Studying energy-efficiency scheduling under electricity cost is of great significance for manufacturing firms to improve their energy efficiency. In a factory, machinery is the main energy-consuming unit [3,4,5,6]. Reducing machine energy consumption economically and environmentally improves sustainable manufacturing. There are many potential energy-reduction approaches in a manufacturing plant, such as developing more energy-efficient machines and processes. In the production line, production planning and scheduling generally impact energy efficiency. Energy efficiency can also be increased by the suitable utilization of machines in the shop floor [6,7,8,9,10,11,12]. In the production process, the electricity consumption of each job is sometimes different, indicating that an operation with high electricity consumption is arranged for low processing time jobs, and an operation with low electricity consumption is arranged for high processing time jobs, so that the electricity cost can be decreased [5,6,13]. Paying too much attention to energy cost as an outstanding optimization objective may cause a long makespan and imbalanced workload on machines, as well as lead to bottlenecks, late deliveries, and even untimely machine failure [14,15,16,17].
Production scheduling is explicitly important in a modern manufactory, consisting of planning and sequencing jobs into machines, since mass production heavily relies on a large number of machines working in parallel. Parallel machines can process several jobs simultaneously without affecting each other. Parallel machine scheduling is defined as sequencing and assigning jobs into machines when similar types of machines are available and jobs can be scheduled in these machines. A variety of sequencing and/or processing restrictions often exist when decision makers try to minimize some related objective functions [14,15,16,17,18,19,20,21,22,23,24]; however, most enterprises still use advanced machines running alongside outdated ones. In contrast to the old ones, modern machines are usually adjusted to work at a high speed and save energy. Speeding up old machines to operate as fast as modern ones results in them consuming more electric power and releasing more pollutants [25]. Sequencing and assigning jobs to a particular machine that can process different jobs at different production rates is considered to be the parallel-machine-scheduling problem. Solutions or algorithms constructed to schedule parallel machines are important because, when implemented in all sorts of parallel-machine problems, they can obtain good solutions for the overall production-planning process in a factory [18,19].
Although most scheduling problems consider production efficiency, cost, and quality as optimization problems, considering the costs of energy and gas emissions—known as the green scheduling problem—has attracted the attention of researchers [9,10,11,14,25]. In addition, various constraints have been addressed in parallel-machine-scheduling problems, such as setup time, machine-available time, ready time, release date, due date, and delivery time [14,26]. In this study, the due-date constraint was considered with makespan control, since late-delivery cost and production-overhead cost per working hour may be a thorny issue for entrepreneurs. Therefore, job priority and makespan control should be seriously considered for production planning as well. On the basis of the above discussion, many scholars and manufacturing firms should be aware of the importance of energy-efficiency and job-priority concerns, on top of minimizing the makespan. There are a few studies on the parallel-machine-scheduling problem with a concept of energy consumption that consider job priority and makespan control. Therefore, this addressed scheduling is both an objective optimization problem and an NP-hard problem. The differential evolutionary (DE) algorithm is suitable to solve this kind of problem because it can obtain non-dominated solutions in a single run and has been successfully applied to optimization problems [17,20,24,27,28,29]. In addition, metaheuristics based on local search methods, such as the variable neighborhood strategies adaptive search (VaNSAS), have been successfully applied to solve many combinatorial optimizations problems [30,31,32,33,34,35,36,37,38,39,40], which inspired us to develop a parallel-machine-scheduling model, and to propose VaNSAS and new neighborhood strategies: (1) solution destroy and repair (SDR); (2) track-transition method (TTM); and (3) multiplier factor (MF).
Nowadays, the cost of energy consumption is key in terms of production efficiency and environmental sustainability for industrial firms. A significant amount of research has been done on parallel-machine-scheduling problems that are strongly NP-hard. We refer to Chen [41], Pinedo [42] and Behera [43] for the discussion on the complexity of parallel-machine scheduling. Therefore, this study investigates the parallel-machine-scheduling problem for minimizing energy consumption while considering job priority and makespan control. In order to obtain the near Pareto front, we developed VaNSAS: (1) solution destroy and repair (SDR); (2) the track-transition method (TTM); and (3) multiplier factor (MF). On the basis of the problem characteristic and evolutionary algorithm, the proposed VaNSAS uses a new encode scheme that can convert discrete optimization problems into continuous optimization problems, and applies VaNSAS with three different techniques to further improve quality.
The remainder of the study is organized as follows: Section 2 reviews the literature related to parallel scheduling, considering energy consumption, job priority, and makespan control, including DE and VaNSAS applications; Section 3 describes a formal definition of the addressed problem and a mathematical model for the proposed problem; Section 4 describes the proposed VaNSAS, SDR, TTM, and MF with multiple operators in order to handle the scheduling problem; Section 5 presents and analyzes the experiment results of our proposed VaNSAS, SDR, TTM, and MF; Section 6 provides the conclusion and suggestions for future studies.

2. Literature Review

Environmental and sustainable energy is a critical topic. CO2 emissions into the atmosphere are strongly related to energy consumption in human activities; they are generated by traditional fuels from natural resources which are becoming depleted [44]. Liu [39] studied scheduling problems that were related to an environment where the objective of minimizing CO2 emissions was investigated with total weighted tardiness (TWT). The non-dominated sorting-based genetic algorithm II (NSGA-II) and the ε-archived genetic algorithm (ε-AGA) were presented to solve two batch-scheduling problems. In their subsequent article, Liu and Huang [10] demonstrated both the effectiveness of an adaptive multi-objective genetic algorithm (AMGA) in finding the Pareto optimal set, and the efficiency of NSGA-II in bicriterion scheduling on a batch-processing machine with dynamic job arrivals. Regarding low carbon emissions in the parallel-machine-scheduling problem, Pan et al. [40] introduced the advantages of a novel imperialist competitive algorithm (ICA) to minimize total tardiness, total energy consumption, and CO2 emissions.
Various energy concerns (e.g., energy consumption, energy efficiency, carbon footprint, and energy cost) are investigated in production-scheduling problems. There are also several studies on energy-efficient production systems. For example, Mouzon et al. [45] improved product operation methods, such as several dispatching rules and mathematical programming, in order to minimize the total completion time and energy consumption of manufacturing equipment in production-scheduling problems. Angel et al. [46] introduced a randomized approximation algorithm for the problem of energy-consumption scheduling for unrelated parallel machines with the average weighted completion time. Sobottka et al. [47] demonstrated the development and evaluation of a digital method for multi-objective optimization problems considering traditional business aims and energy efficiency in a metal-casting manufactory. The improved method, including hybrid simulation-based multi-criterion optimization as a multi-stage hybrid heuristic and metaheuristic method, was employed in a heat-treatment process, which requires order batching and sequencing on parallel machines under complex restrictions.
In the context of energy cost, a number of works attempted to reduce it during production when energy and electricity prices vary with time of use. For example, Fang et al. [7] proposed a mixed integer programming model for optimizing the operating schedule of a flow shop considering both productivity- and energy-related criteria. Zeng [23] studied the uniform parallel-machine-scheduling problem with electricity cost and time-dependent or time-of-use electricity tariffs, where electricity price changes by the working hour within a day. Firstly, a bi-objective mixed-integer linear-programming model was constructed for this problem. Then, the proposed method (an insertion algorithm) was applied to minimize total electricity cost and the number of operated machines. Zhou et al. [19] presented a multi-objective differential evolution algorithm to solve the parallel-batch-processing machine-scheduling problem (BPM) in the presence of dynamic job arrivals and a time-of-use pricing scheme. The objective was to simultaneously minimize makespan and minimize total electricity cost (TEC). Recently, Nanthapodej et al. [48] introduced the hybrid differential devolution algorithm and adaptive large neighborhood search, and demonstrated a superior performance in finding high quality solutions within a short computation time of the proposed algorithm for solving the parallel-machine-scheduling problem, with minimizing total energy cost (TEC) as key for environmental sustainability, and controlling machine load balance as an indicator of production efficiency.
Although more attention is now paid to energy cost in parallel-machine-scheduling problems, some constraints for job priority and makespan control are also important, such as starting time, completion time, due date, and delivery time, since late-delivery cost and production-overhead cost per working hour impact manufacturers. Some studies attempted to avoid late- or express-delivery charges, such as lateness and tardiness issues. For instance, Chaudhry et al. [49] considered the minimization of total tardiness in identical parallel-machine-scheduling problems by using a genetic algorithm (GA), and compared it with branch-and-bound and particle-swarm-optimization methods. Then, Pei et al. [50] demonstrated minimizing maximal earliness and number of tardy jobs in parallel-machine-scheduling problems. That article proposed the hybrid variable neighborhood search (VNS)–gravitational search algorithm (GSA), which is a combination of VNS and GSA to find a solution. Solution-search efficiency is also an attractive goal for many studies. Maecker and Shen [51] also applied the VNS algorithm with the fast evaluation technique (FET) to improve the computational efficiency of solution finding in the identical parallel-machine problem with machine-dependent delivery times in order to minimize total weighted tardiness.
In a continuous search space for function optimization, differential evolution (DE) is a type of evolutionary algorithm that is widely implemented [27]. The DE algorithm has gained much attention from scholars since it was first presented by Storn and Price [28]. There are a variety of DE algorithms in industrial applications studied for optimization problems. For instance, the DE algorithm was implemented for solving production-scheduling problems. Wang et al. [29] demonstrated hybrid differential evolution (HDE) in scheduling problems with splitting jobs. The study proposed a global search method with block mutation and block crossover. Experiment results revealed that the proposed HDE performed better than the traditional DE did. Zhou et al. [52] showed the performance of the hybrid DE algorithm for the uniform parallel-machine-scheduling problem with arbitrary job sizes, non-identical capacities, and different speeds. The objective was to minimize makespan. The HDE algorithm was proposed for solving large-scale problems. In this algorithm, individuals were represented as a discrete job sequence. The proposed algorithm and novel mutation were designed on the basis of this representative. Wu and Che [53] proposed a memetic differential evolution algorithm for an energy-efficient bi-objective-unrelated parallel-machine-scheduling problem in order to minimize makespan and total energy consumption. Efficient speed adjusting and job machine swap heuristic were introduced and integrated into the algorithm as a local search method with an adaptive meta-Lamarckian learning strategy. Zhou et al. [19] presented a multi-objective DE algorithm for effectively solving the parallel-batch-processing machine-scheduling problem while considering energy cost on a large scale. In this algorithm, individuals were encoded into job permutations and discrete mutations; crossover operators were designed on the basis of the encoding structure, and a Pareto selection operator was proposed to select what the individuals for the next population are. Defining job permutation, a heuristic was employed to group jobs into batches and schedule them on BPMs.
In addition, a procedure to minimize the total energy cost of a schedule without compromising the makespan was proposed by Li et al. [54]. They investigated the parallel-machine-scheduling problem with different-colored families, sequence-dependent setup times, and machine-eligibility restriction of the dyeing process in textile manufacturing. Generally, the dyeing optimization problem is NP-hard, and the HDE algorithm was proposed to solve real-world data problems. The proposed HDE algorithm, a special encoding and decoding scheme, was constructed to deal with the machine-eligibility constraint, and chaos theory was applied to determine the parameter settings of the DE algorithm. Kusoncum et al. [17] presented the traditional DE with embedded heuristics to obtain near-optimal solutions in realistically sized machine scheduling, including capacitated machine restrictions and sequencing-independent setup-time considerations. Results revealed that the proposed method’s performance tended to find a new optimal solution during the simulation, while the local-search-based heuristics were trapped at some local optima, and the DE was insufficient for search intensification.
Variable neighborhood strategies adaptive search (VaNSAS) is a new type of metaheuristics that was first introduced by Theeraviriya et al. [36], with the concept of solving combinatorial optimization problems. The primary idea of the VaNSAS is to allow for algorithms to search in many different areas to obtain the best possible solution by using several searching methods. VaNSAS is very flexible to use in many optimization problems, such as the location and routing problem (LRP). Theeraviriya et al. [36] studied the LRP in the Thai rubber industry, and proposed VaNSAS to solve the problem with the objective function of fuel-cost minimization, including a realistic constraint that allowed for a vehicle to collect products by visiting rubber farms more than once in cases where they had more rubber than vehicle capacity. Computation results showed that VaNSAS could find solutions for all problem sizes in much less processing time than that needed by the exact method. After that, Pitakaso et al. [37] presented VaNSAS with another LRP, the green 2-echelon location-routing problem (G2ELRP), which is a variant of the capacitated location-routing problem (CLRP) and the 2-echelon location routing problem (2ELRP). The G2ELRP aims to reduce overall fuel consumption on the basis of distance and road conditions in both echelons. A new constraint considered in the G2ELRP is that a customer can be served more than once. The finding demonstrated that VaNSAS could solve this case and be applied to other industries.
Kusoncum et al. [17] introduced another application of VaNSAS in a sugar mill as a computational tool for scheduling sugarcane-vehicle-unloading systems. The objective was to minimize the makespan of parallel-machine-capacity scheduling with a cyclic sequence, and machine restriction included sequencing-independent setup time. Numerical results showed that, during the simulation, VaNSAS could find optimal solutions. In a manufacturing case study regarding the garment industry, the VaNSAS proposed by Jirasirilerd et al. [22] presented a better solution and less computation time in order to minimize cycle time for a simple assembly line, balancing the Type 2 problem while considering the number and types of machines operated in each workstation. Recently, Pitakaso et al. [38] applied VaNSAS to minimize the cycle time while considering the limited number of machine types in a particular workstation for the special case of the simple assembly line balancing Type 2 problems, where multi-skilled workers have a set of competencies that allow them to work on more than one machine in a workstation. Results showed that VaNSAS was able to reduce the cycle time and increase assembly line effectiveness.
The studies discussed above show that global search metaheuristics (e.g., VNS, GA, DE and VaNSAS) are effective in solving optimization problems such as parallel-machine scheduling. Due to the importance of the environmental and economic impact, studies on energy-cost concerns, job priority, and makespan control are obviously attractive and important in terms of theoretical and application value; however, no previous articles had investigated this kind of problem and employed the VaNSAS algorithm to find the solution. As a result, this paper’s objective is to minimize total energy consumption while considering job priority and makespan control for the parallel-machine-scheduling problem. In order to solve this problem, we developed a mathematical model, and introduced VaNSAS, SDR, TTM, and MF algorithms to further improve solution-search efficiency.

3. Mathematical-Model Formulation

3.1. Problem Description

This paper considers the problem of energy consumption concerning scheduling, while considering job priority and makespan control for parallel machines, to improve energy consumption and production efficiency for environmental sustainability [9]. Production costs such as overhead and late delivery are also significant and should be mentioned. Therefore, the objective of this study is to minimize total energy cost, including considering due-date and lateness constraints. In this context, a set of I different jobs {j1, j2, ..., jI} were scheduled on M parallel machines {m1, m2, ..., mM}. We assumed that each job j had deterministic processing time pjm on each machine. The jobs could be assigned to any machine. Due to the job characteristics, each machine required different levels of energy consumption ejm to process each job. All jobs were available at time zero. The completion time of job j is denoted by Cjm, which is the time when the processing of the job was completed on machine m. Only after the machine starting the process could no idle time be inserted into the schedule with no preemption. Additionally, in each time period, only one job could be processed on machine m.
On the basis of these assumptions and the following notations, a mathematical model is proposed to formulate this problem in order to minimize energy consumption while considering job priority and makespan control. This is defined as the minimization of energy-consumption, late-delivery, and production-overhead costs.

3.2. Mathematical Formulation

On the basis of the characteristics of minimizing energy consumption with job priority and makespan control for a parallel-machine-scheduling problem, the mathematical model is formulated. The details of index, parameters, decision variables, objective function, and constraints are as follows:
Index
i, jJob indices; j, i = 1, 2,…, I when i or j = 0, 0 represents the dummy node, which is always produced first in each machine
m, nMachine indices; m, n = 1, 2,…, M
Parameters
ITotal number of jobs
MTotal number of machines
PjmProcessing time of job j on machine m
EjmEnergy consumption for producing job j on machine m
DjDue date of job j
ajPenalty cost of job j (priority of job)
BCost per time units of processing with all machines.
AjmJob-machine restriction; Ajm = 1 when job j can produce on machine m.
LMAXMaximal lateness that is allowed
TMAXMaximal number of tardy jobs that are allowed
KKKCost conversion for used energy
Decision Variable
Xijm 1 w h e n   j o b   i   i m m e d i a t e l y   p r o d u c e s   b e f o r e   j o b   j   i n   m a c h i n e   m 0 O t h e r w i s e                                                                                                                                                                                                        
Yjm 1 w h e n   j o b   j   i s   a s s i g n e d   t o   m a c h i n e   m 0 O t h e r w i s e                                                                                                          
SjmStart time of job j on machine m
CjmCompletion time of job j on machine m
LiLateness of job i
Ti 1 w h e n   j o b   i   d e l i v e r s   l a t e                                                     0 o t h e r w i s e                                                                                                          
Objective function
m i n   Z = m = 1 M j = 1 I E j m Y j m + j = 1 I a j T j + m = 1 M B × M a x j = 1 I C j m
Subject to
j = 1 I X 0 jm 1     m
m = 1 M i = 1 ,   i j I X i j m = 1     j
j = 1 , i j I X i j m Y i m     i ,   m
i = 1 , i j I X i j m = Y j m     j ,   m
m = 1 M Y i m = 1     i
S j m = i = 1 , i j I C i m X i j m     j ,   m
C j m S j m + P j m     j ,   m
S 0 m = 0     m
C 0 m = 0     m
L i =   M a x m = 1 M C i m D i     i f     M a x m = 1 M C i m D i 0                                                                   o t h e r w i s e                                       i
L i L M A X     i
T i =   1       i f   L i   > 0 0       o t h e r w i s e         i ,   j ;   i     j
i = 1 I T i T M A X     j ,   m
The objective function in Equation (1) attempts to minimize energy used to produce all jobs, the priority cost for jobs that deliver late, and the production-overhead cost per working hour. Equations (2) and (3) show that all jobs must be assigned to at most one machine, and the start of all assigned jobs must be Job 0 (dummy job). Equation (4) is the relationship constraint of Xijm and Yim. Equation (5) confirms that job i is processed before job j in machine m only when job j is assigned to machine m. Equation (6) ensures that a job can be assigned to at most one machine. Equation (7) calculates the starting time of job j in machine m, and Equation (8) is the calculation of the completion time of job j. Equations (9) and (10) define the starting and completion time of the dummy job. Equation (11) calculates the lateness of job i, while Equation (12) is used to ensure that the lateness of job i does not exceed the predefined value (LMAX). Equation (13) decides whether job i is late, and Equation (14) ensures that the number of tardy jobs does not exceed the predefined number (TMAX).
The mathematical model was formulated and tested on Lingo software. The optimal solution was obtained for a small problem, albeit with intolerable computation time. Solving medium or large problems desired more computation time, even for an incomplete solution. Therefore, in this study, we developed metaheuristics to solve a medium or large problem as a realistically sized problem.

4. Proposed Method

When a problem becomes larger and more complicated, solving it may not be possible by mathematical methods. Therefore, we introduced a variable neighborhood strategy adaptive search (VaNSAS), a new type of metaheuristics, which successfully improved solution-search efficiency in previous studies by adapting some VaNSAS mechanisms. This study aims to solve the parallel-machine-scheduling problem in order to minimize energy consumption with job priority and makespan control, and proposes VaNSAS for improving solution-search efficiency. The goal of VaNSAS is to allow algorithms to search for the best possible solution in different areas by using several searching methods. The solution-searching steps are to find more diversification and intensification at all times, depending on the black-box methods that were designed. The search method in VaNSAS can be a basic local search, well-known heuristics, modified metaheuristics, and a newly designed local search; therefore, VaNSAS is very flexible for applying new ideas to the algorithm and can be implemented to many optimization problems.
VaNSAS is composed of two main steps: (1) generating the initial solution (the set of tracks); and (2) performing the track-touring process. The track-touring process of VaNSAS comprises four steps: (1) the track selects the neighborhood strategy (NS); (2) the track performs the selected NS; (3) heuristic information is updated; and (4) Steps 1 to 3 are repeated until the algorithm reaches the termination condition. The overall VaNSAS processes are presented in Algorithm 1.
Algorithm 1. Variable neighborhood strategy adaptive search (VaNSAS).
  Input: number of jobs, number of machines, production time, energy consumption
  Output: consumed energy
  Begin
  Randomly generate predefined number of tracks (NT) Z i j t
  While t is less than the predefined number of iterations,
  Perform track-touring process
  1. Each track individually selects a black box
  2. Each track performs a black-box searching process
2.1 Solution decompose and repair method (SDR) (optional)
2.2 Track-transition method (TTM) (optional)
2.3 Multiplier factor (MF) (optional)
  3. t = t + 1;
  End

4.1. Generating an Initial Solution

Indirect encoding was used to solve the proposed problem while we randomly generated the set of tracks. Table 1 shows an example of five tracks to operate in VaNSAS.
The tracks shown in Table 1 were composed of 13 positions. The first 10 positions were the track elements that represented the jobs assigned to Machines A, B, and C. We used indirect encoding, so the decoding method is essential to let the tracks reflect the real solution. The decoding method is explained as follows:

4.1.1. Decoding Methods

  • Separately apply the rank order value (ROV) between job and machine vectors. The ROV of jobs is called the job sequence at position i (SJi), and machine sequence in position m is called SMm.
  • Assign the first job in Position 1 of SJi to Machine 1 of SMm, assign the second job in Position 2 of Sji to the machine in Position 2 of SMm, and continuously assign the remaining jobs in position i + 1 to machine m + 1 until m = M, where M is the total number of machines. In the context of job or machine restrictions, job j is assigned to machine m only when job j is allowed to be produced on machine m. If job j is not allowed to be produced on machine m, job j is assigned to the next order of machine.
  • Continue assigning jobs in position i + 1 to the machine that has minimal total processing time among all M machines until all jobs are assigned to a machine. While assigning a job to a machine, the maximal number of tardy jobs and maximal lateness must be controlled to be less than the maximal predefined number.
  • Calculate completion time and energy used in Step 3.

4.1.2. Decoding-Method Example

An example value of a scheduling problem with 10 jobs and 3 machines is provided in Table 2.
Pim is the processing time of job i on machine m, and Eim is the energy consumed to produce job i on machine m. Di is the due date of job i and aj is penalty cost of job j.
Step 1:
Separately apply ROV to the job and machine tracks from the smallest to the largest value; results are shown in Table 3.
Step 2:
Apply Jobs 7, 3, and 10 to Machines B, C, and A, respectively.
Step 3:
Assign Job 8 to B, but it is not allowed to produce Job 8 on Machine B; thus, assign Job 8 to Machine C instead of Machine B. Since it has the lowest total processing time, Jobs 9, 8, 5, 6, 3, and 7 are assigned to Machines A, B, A, C, B, and B, respectively. The results of this assignment are shown in Table 4.
In this assignment, the job-production sequence of Machine B produces jobs {7, 4, 9, 6}, and Machines C and A produce jobs {3, 8, 2} and {10, 1, 5}, respectively. Then, the total energy consumption of this plan is THB 247. Table 5 shows the sequencing and scheduling of jobs and machines.
Table 5 illustrates that the makespan equals 98 m. The minimum labor cost was assumed to be THB 100 per m, production-overhead cost per working unit was THB 9800, and the number of tardy jobs was 5, so the penalty cost was THB 2094. Therefore, the total cost for this assignment was THB 247 + THB 9800 + THB 2094 = THB 12,141.

4.2. Performing the Track-Touring Process

The track selects one out of a certain number of neighborhood strategies with the probability function shown in Equations (15) and (17), proposed by Pitakaso et al. [39].
G b t = S b t c = 1 C S c t
S b t = F N b t 1 +   1 F A b t 1 + K I b t 1
P b t = G M a x     i f     G b t > G M a x                               G m i n     i f   G b t < G m i n                               G b t       o t h e r w i s e                                                          
where G b t is the probability of black box b selecting in iteration t before it is adjusted by the edge boundary. C is equal to the total number of black box c, and b is the index of black box b or c. S b t is the weight to select black box b in iteration t. N b t 1 is the number of tracks that select black box b in the previous iteration. A b t 1 is the average objective function of all tracks that select black box b in the previous iteration. I b t 1 is a binary decision variable. It is equal to 1 if the box contains the iterative best solution of the last iteration; otherwise, it is equal to 0. F is a predefined random variable that lies between 0 and 1. K is predefined factors that are located between 1 and 5. P b t is the probability to select black box b in iteration t after the edge boundary. G M a x and G m i n are the maximal and minimal probabilities that are allowed to select a black box, respectively.
The black boxes (neighborhood strategies) applied in this research were: (1) solution decompose and repair (SDR); (2) track-transition method (TTM); and (3) multiplier factor (MF).

4.2.1. Solution Decompose and Repair (SDR) Method

This neighborhood strategy comprises three steps: (1) destroy the current solution by using N-job-string removal algorithm; (2) select the repair methods; (3) perform the repair method; and (4) redo Steps 1–3 until it meets the termination condition.
a.
Destroy Method
In this section, the destroy method was employed to disassemble the initial solution so it would become an incomplete solution that made the solution move to other search areas, and a new solution was thereby obtained. This paper applied N-job-string removal as the destroy method, the value of the considered solution on the basis of a randomly generated job sequence before removing jobs from list I. The N-job-string removal algorithm is shown in Algorithm 2.
Algorithm 2. N-job-string removal
  • Randomly select a value of N that lies between 2 to I (number of jobs)
  • B = I; I = {Sequence of all jobs}
  • L = {}
  • Randomly select job position in sequence B and name it position e
  • Remove job in position e + N-1 from list B
  • Insert removed job into list L
b.
Repair Method
After the destroy procedure deconstructed the initial solution, the repair procedure was performed to reconstruct the solution by randomly using one of two repair methods: (1) best insertion and (2) random insertion.
b.1
Best Insertion
Best insertion was used to repair a solution by determining the processing time to move the job from list L into an empty machine for operating that job. The best-insertion algorithm is shown in Algorithm 3.
Algorithm 3. Best insertion.
  • B = L {a, b, c, d.., Z}
  • While |B| > 0, do
Insert job in position a into the machine that currently has the lowest energy consumption among all M machines except for the machine from which it was removed.
For instance, there was a list of jobs {2,10,8,5}. Producing Job 2 consumed 14, 41, and 39 energy units for Machines A, B, and C, respectively. Since Job 2 was removed from machine C, only two choices remained, namely machines A and B. Therefore, Job 2 was placed into Machine A due to it needing the least energy to produce Job 2. After that, Jobs 10, 8, and 5 were continuously executed with the same mechanism until all jobs in B had been reassigned.
b.2
Random Insertion
Random insertion is a method used to repair an incomplete solution by finding a random machine to operate the job under conditions to reconstruct the solution. Algorithm 4 shows the random insertion algorithm.
Algorithm 4. Random insertion.
  • B = L
  • While |B| > 0, do
 Insert the job in list B into randomly selected machines that are not the machine from which the job was removed.
For example, there was a list of jobs {2,10,8,5}, and Job 2 was removed from Machine C. Therefore, Machines A or B were the choices to operate Job 2. Algorithm 5 demonstrates the SDR procedure.
Algorithm 5. SDR.
  Begin
  Given current solution
  While termination condition is not met, do
  1. Perform destroy method (N-random jobs removal)
  2. Randomly select repair methods
  2.1 Best insertion method (optional)
  2.2 Ransom insertion method (optional)
End

4.2.2. Track-Transition Method (TTM)

The track-transition method (TTM) is composed of three steps: (1) randomly select the original track from the pool of the tracks that were not selected by the TTM as the black box; (2) randomly generate a new track; (3) find the average value of the track for each track, denote this number as lower boundary (LB), and denote the track to which this number belongs as TLB; (4) find the minimal number of values in the tracks of the maximal value of the track that is not a member of track TLB, denote this number as the upper boundary (UB), and let the track to which the UB belongs be TUB; (5) generate transition rates (TRs) for every element of the track; (6) transit the original track to a new track by using Equation (18), while the value in track i in position h of the new track ( V T i h N ) is constructed. A track that is neither TLB nor TUB is called an unplaced track (UT).
V T h N =   V T h T L B                     i f   T R     L B                                           V T h U T                           i f   L B < T R U B               V T h T U B                     i f     T R >   U B                              
where V T h is the type of track, and * can be a TLB, UP, or TUB track. For example, if we have Tracks 1 and 2, and a random track as shown in Figure 1a, then the average value in the positions of Track 1, Track 2, and TR is 0.34, 0.46, and 0.51, respectively, as shown in Figure 1b. Therefore, LB = 0.34, and TLB is Track 1. The maximal numbers of VT of Track 2 and the random track are 0.83 and 0.97; therefore, UP = 0.83 and TUB = Track 2. As a result, Equation (18) was modified as shown in Equation (19), and the result of the transition is shown in Figure 1b. The result of the new track is shown in Figure 1c.
V T h N =   V T h 1                 i f             T R     0.34                                               V T h R T           i f           0.34 < T R 0.83                         V T h 2               i f                 T R > 0.83                                            
After the track was generated, the decoding method shown in Section 4.1.1 was performed to find the answer for the proposed problem.

4.2.3. Multiplier Factor (MF)

MF is the neighborhood strategy of which the basic idea is to pull out the current solution from the local optimum by multiplying the current value in that position of the track by the learning multiplier factor. The new value in the track is obtained when multiplied by the multiplier using Equation (20):
V T i h L M F = R i h V T i h N ,
where R i h is the random number that corresponds to position h of track i, V T i h M F is the track after applying the MF strategy, and V T i h N is the track before applying the MF. An example of the MF method is shown in Table 6.
After the MF operation, V T i h M F uses the decoding method to obtain the solution for the proposed problem. The MF is iteratively applied to the track that selects this strategy. The predefined number of iterations was previously determined. In our method, 500 iterations were set as the stopping criterion. The MF algorithm is shown in Algorithm 6.
Algorithm 6. Multiplier factor.
  Input: The value in track ( V T i h N ) , number of jobs, number of machines
  Outputs: Track after MF ( V T i h M F ) ;
  Begin i = 1
  While i ≤ maximal number of iterations,
  Randomly generate the random track ( R i h )
  Multiply V T i h N by R i h and obtain V T i h M F
  Decode V T i h M F to obtain solution for the problem
  i = i + 1;
end while
  End
Let S be the set of all feasible solutions and consider a solution ZijtS. A neighborhood strategy associates each ZijtS with a neighborhood Nk (Zijt) ⊆ F of the solution Zijt. For this paper, the three neighborhood structures are SDR, TTM and MF. The time complexity of neighborhoods (N1(Zijt), N2(Zijt) and N3(Zijt), respectively) are determined both by its respective structure and by the solution it is being applied to. The size of neighborhood N1(Zijt) is O(m · n), neighborhood N2(Zijt) is O(m + n) and neighborhood N3(Zijt) is O(m + n).

4.3. Updating Track and Other Information

The track is updated by using Equation (21):
Z i j t + 1 = Z i j t + α ( Z i j t p b Z i j t ) + ( 1 α ) ( Z i j t g b Z i j t ) + β ( Z 2 j t Z 3 j t ) ,
where Z i j t + 1 is the value of track i, element j iteration t + 1. α and β are predefined parameters. In this research, we defined α and β as equal to 0.3. Z 2 j t is the first randomly selected track, and Z 3 j t is the second randomly selected track. We iteratively performed steps in Section 4.2; the number of iterations needed to simulate depends on the predefined parameter of number of iterations (IT).
The proposed methods were tested with the case study and randomly generated data. Results were compared with the current practice procedure. Details of the current practice procedure are below.

4.4. Current Practice Procedure

The current practice procedure (CU) in vegetable-farm case-study data assigns vegetables (jobs) to grow in all farms (machines), and it is composed of four steps, shown below.
Step 1.
Sort jobs according to energy used from least to most used, and name this list job list (JL).
Step 2.
Calculate average number of jobs per machine and call this number AM.
A M = T o t a l   n u m b e r   o f   j o b s T o t a l   n u m b e r   o f   m a c h i n e s
Step 3.
Assign jobs to machines according to JL. Job j is assigned to the machine that uses the least energy. If that machine has more jobs than AM, the next machine that uses the least energy is selected and continuously performs until all jobs are assigned.
Step 4.
Calculate the objective function of the assignment from Step 3.

4.5. Differential Evolution Algorithm

The differential evolution algorithm (DE) was used to compare it with the proposed method. DE was constructed by the following steps: (1) randomly select two other tracks that are not the track that selected DE as the black box; (2) randomly generate a new track; (3) perform the mutation process using Equation (23); (4) perform the recombination process using Equation (24); (5) perform the selection process using Equation (25) and repeat steps 1 to 5 until the termination condition is met. The DE algorithm is shown in Algorithm 7.
Algorithm 7. Differential evolution (DE) pseudocode.
Set NP, CR, F, NP (size of track)
Generate initial solution
Begin
For G = 1 to Gmax when G = iterations and Gmax = Maximum iteration
Randomly generates the set of initial solution (tracks)
For N = 1 to NP
Perform mutation process using
v i , j , G = x r 4 , j , G + F x r 2 , j , G x r 3 , j , G               (23)
Perform the recombination process using
u i , j , G =   v i , j , G       w h e n       C R r a n d x i , j , G       w h e n       C R > r a n d                 (24)
Perform selection process using formula
X i , j , G + 1 =   U i , j , G       if     f U i , j , G     f X i , j , G         X i , j , G       otherwise                                                          (25)
End

5. Computational Framework and Result

The proposed metaheuristics were coded in C++ and simulated on a computer with Intel (R) Core i7-3520M CPU @ 2.90 GHz Ram 8.00 GB. We tested our algorithms on four test instances: small, medium, large, and case study. The simulation was executed five times, and the best solution among all was selected. Details of the test instances are shown in Table 7.
Table 7 shows that we tested 37 sample data (12 small, 12 medium, and 12 large sample data, and 1 case study). For small test instances, the proposed methods were tested and compared with the optimal solution obtained from Lingo V.11 (mathematical method). For the medium and large samples, the proposed method was compared with the lower bound that was obtained by Lingo v.11 within 72 h of computation. Pjm is the processing time of job j of machine m (in minutes). Ejm is the energy used to produce job j on machine m and then converted into money units (THB). B is a constant number (THB), which is the production-overhead cost per hour of production in the factory. The proposed method was compared with the result of a traditional DE algorithm and the current practice method (CU). Details of the investigated algorithms are shown in Table 8.
Table 8 shows that six algorithms were tested in the provided sample datasets. The performance of VaNSAS and other proposed methods was compared with that of a traditional DE.
The first experiment was executed with the small and medium test instances. The stopping criterion for Lingo was the time period when it found the optimal solution; then, it collected the best solution and computation time. The stopping criteria for all proposed methods were set as 10% of the lowest computation time of Lingo. In this case, Lingo’s lowest computation time to find the optimal solution was 651 s; thus, the stopping criteria of all proposed methods were set to 65 s. The percentage difference of all proposed methods with the obtained result from Lingo was found using Equation (26). Five replications were executed for each proposed method, and the best solution among the five runs is shown in Table 9. The statistical test is shown in Table 10.
% d i f f = F o p t F H F O p t × 100 %
where F o p t is the solution obtained by Lingo during the predefined computation time, and F H is the solution obtained by the proposed methods. The solutions are shown in Table 9, Table 10, Table 11, Table 12, Table 13 and Table 14.
Computation results in Table 9, Table 10 and Table 11 show that VaNSAS performed much better than the other proposed and traditional methods did, and its performance was not significantly different from that of the exact method, while that of others significantly differed from that of the exact method. While DE, CU, SDR, TTM, and MF were different from the exact method by 4.52%, 29.05%, 14.43%, 15.01%, and 13.44%, respectively, VaNSAS was 0.00% different, which means that it could find an optimal solution for small problems 100% of the time. The maximum error is the difference between the best solution and the worst solution of each proposed algorithm. As shown in Table 9, the maximum error of VaNSAS was the lowest among others, indicating that VaNSAS had the highest solution stability.
The second experiment’s medium-sized random dataset was composed of 12 test instances. The number of jobs was randomly selected to be from 40 to 52 jobs, and the number of machines was set to be from 3 to 5. In this experiment, Lingo was executed for 48 h, and the computation time of all proposed methods was 30 min as the termination condition. After the simulation had been executed five times, the best solutions and the maximum error of medium-sized test instances were recorded in Table 11 and the statistical results are shown in Table 12.
The computation results in Table 11 and Table 12 illustrate that VaNSAS performed better than other proposed and traditional methods did. VaNSAS performed as well as the exact method did, and also showed the highest performance of solution stability over other algorithms as shown in Table 11. While others were significantly different from the exact method as seen in the statistical test result (Table 12), DE, CU, SDR, TTM, and MF were an improvement from the exact method by 14.59%, 4.37%, 11.19%, 11.04%, and 11.24%, respectively. However, VaNSAS was at 19.55%, which means that VaNSAS obtained the solution at 19.55% lower cost than that of the solution from Lingo. Lingo consumed 2880 min computation time, and VaNSAS used only 30 min.
The next experiment was tested with a large random dataset. This group of test instances was composed of 12 test instances, the number of jobs was randomly selected to be from 80 to 134, and the number of machines was set from 5 to 8 (L-1 to L-12). In this set of test instances, we included the case study, which had 201 jobs and 11 machines (C-1). In this case, Lingo was executed for 72 h to find the lower-bound solution; then, the termination condition as the computation time of all proposed heuristics was 45 min. The simulation was executed five times; the best solution and the maximum error of large instances are shown in Table 13 and the statistical results are shown in Table 14.
The computation results in Table 13 and Table 14 show that VaNSAS performed better than other proposed and traditional methods did. The performance of VaNSAS is similar to the exact method, while others were significantly different from the exact methods. DE, CU, SDR, TTM, and MF were 9.88%, 1.42%, 7.89%, 8.01%, and 9.33%, respectively, different from the exact method. In addition, VaNSAS was 16.35% different from the exact method, which means it could find 16.35% lower cost than how much Lingo could. The maximum error of each method indicates that VaNSAS outperformed other methods in terms of solution stability. In addition, Lingo required 2880 min of computation time while VaNSAS only required 45 min.

6. Conclusions and Outlook

Green machine-scheduling problems, such as optimization problem related to energy concerns, are paid more attention by a wide array of industries, since environmental awareness is part of industrial manufacturing sustainability. This paper presents a novel method called variable neighborhood strategy adaptive search (VaNSAS) to solve the parallel-machine-scheduling problem in order to minimize energy consumption while considering job priority and makespan control. Although VaNSAS successfully improved solution-search performance in previous studies [17,22,36,37,38], none had accounted for energy consumption, late delivery charge, and production overhead. The advantage of applying VaNSAS in this study was that its algorithms search for the best possible solution in many different areas by using several searching approaches, thereby moving to find more diversification and intensification at all times depending on the designed black-box methods. In addition, we improved the solution-search performance of VaNSAS by presenting new neighborhood search strategies: (1) solution destroy and repair (SDR); (2) track-transition method (TTM); and (3) multiplier factor (MF). The proposed methods were performed in three sets of test instances and one case study, and compared with the exact method.
Computation results show that the proposed VaNSAS outperformed all traditional and other proposed methods. It performed as well as the exact method did, illustrated in the small problem, while the traditional DE could find only 25%; CU, SDR, TTM, and MF could not find the optimal solution at all, while VaNSAS could find 100% of the optimal solution. Even by increasing the problem size, VaNSAS still gave promising results, as it could improve the solution quality by 16.35–19.55% of the solution obtained from the exact method with 30–45 min of computation time, while the exact method required 48–72 h. In the medium-sized and large samples, DE, SDR, TTM, and MF could also improve the solution quality by 7.89–14.59% more than the exact method. In addition, the current practice gave a worse solution than that of the exact method, including all proposed methods, by 1.42–4.37%.
The excellent solution-search efficiency of VaNSAS in this study and its advantage of a flexible neighborhood search scheme allow researchers to further develop and design new mechanisms for improving solution quality. Additionally, it would be interesting to implement the proposed VaNSAS in various problem areas, such as production planning in a real manufacturing environment, while considering other additional factors or constraints, e.g., the study of the capability of each type of machine, job restriction, and customer-order scheduling.

Author Contributions

Conceptualization, R.N. and C.-H.L.; methodology, R.N.; software, S.P.; validation, C.-H.L., S.P. and K.N.; formal analysis, R.N.; investigation, K.N.; writing—original-draft preparation, R.N.; writing—review and editing, K.N.; project administration, C.-H.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data sharing not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. EIA. Available online: https://www.eia.gov/outlooks/aeo/data/browser/#/?id=37-AEO2020&cases=ref2020&sourcekey=1 (accessed on 28 March 2021).
  2. EIA. Available online: https://www.eia.gov/outlooks/aeo/data/browser/#/?id=22-AEO2020&cases=ref2020&sourcekey=0 (accessed on 28 March 2021).
  3. Fang, K.T.; Lin, B.M. Parallel-machine scheduling to minimize tardiness penalty and power cost. Comput. Ind. Eng. 2013, 64, 224–234. [Google Scholar] [CrossRef]
  4. Che, A.; Zhang, S.; Wu, X. Energy-conscious unrelated parallel machine scheduling under time-of-use electricity tariffs. J. Clean. Prod. 2017, 156, 688–697. [Google Scholar] [CrossRef]
  5. Abikarram, J.B.; McConky, K.; Proano, R. Energy Cost Minimization for Unrelated Parallel Machine Scheduling under Real Time and Demand Charge Pricing. J. Clean. Prod. 2019, 208, 232–242. [Google Scholar] [CrossRef]
  6. Cui, W.; Lu, B. A Bi-Objective Approach to Minimize Makespan and Energy Consumption in Flow Shops with Peak Demand Constraint. Sustainability 2020, 12, 4110. [Google Scholar] [CrossRef]
  7. 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]
  8. Yin, L.; Li, X.; Lu, C.; Gao, L. Energy-Efficient Scheduling Problem Using an Effective Hybrid Multi-Objective Evolutionary Algorithm. Sustainability 2016, 8, 1268. [Google Scholar] [CrossRef] [Green Version]
  9. Mansouri, S.A.; Aktas, E.; Besikci, U. Green Scheduling of a Two-Machine Flowshop: Trade-off between Makespan and Energy Consumption. Eur. J. Oper. Res. 2016, 248, 772–788. [Google Scholar] [CrossRef] [Green Version]
  10. Liu, C.-H.; Huang, D.-H. Reduction of Power Consumption and Carbon Footprints by Applying Multi-Objective Optimisation via Genetic Algorithms. Int. J. Prod. Res. 2013, 52, 337–352. [Google Scholar] [CrossRef]
  11. Zhang, Z.; Wu, L.; Peng, T.; Jia, S. An Improved Scheduling Approach for Minimizing Total Energy Consumption and Makespan in a Flexible Job Shop Environment. Sustainability 2019, 11, 179. [Google Scholar] [CrossRef] [Green Version]
  12. Fysikopoulos, A.; Pastras, G.; Alexopoulos, T.; Chryssolouris, G. On a Generalized Approach to Manufacturing Energy Efficiency. Int. J. Adv. Manuf. Technol. 2014, 73, 1437–1452. [Google Scholar] [CrossRef] [Green Version]
  13. Zeng, Z.; Chen, X.; Wang, K. Energy Saving for Tissue Paper Mills by Energy-Efficiency Scheduling under Time-of-Use Electricity Tariffs. Processes 2021, 9, 274. [Google Scholar] [CrossRef]
  14. Liu, C.-H.; Nanthapodej, R.; Hsu, S.-Y. Scheduling Two Interfering Job Sets on Parallel Machines under Peak Power Constraint. Prod. Eng. 2018, 12, 611–619. [Google Scholar] [CrossRef]
  15. Lin, D.-Y.; Huang, T.-Y. A Hybrid Metaheuristic for the Unrelated Parallel Machine Scheduling Problem. Mathematics 2021, 9, 768. [Google Scholar] [CrossRef]
  16. Vakhania, N.; Werner, F. Branch Less, Cut More and Schedule Jobs with Release and Delivery Times on Uniform Machines. Mathematics 2021, 9, 633. [Google Scholar] [CrossRef]
  17. Kusoncum, C.; Sethanan, K.; Pitakaso, R.; Hartl, R.F. Heuristics with Novel Approaches for Cyclical Multiple Parallel Machine Scheduling in Sugarcane Unloading Systems. Int. J. Prod. Res. 2020, 1–19. [Google Scholar] [CrossRef]
  18. Lin, Y.K.; Pfund, M.E.; Fowler, J.W. Heuristics for Minimizing Regular Performance Measures in Unrelated Parallel Machine Scheduling Problems. Comput. Oper. Res. 2011, 38, 901–916. [Google Scholar] [CrossRef]
  19. Zhou, S.; Li, X.; Du, N.; Pang, Y.; Chen, H. A Multi-Objective Differential Evolution Algorithm for Parallel Batch Processing Machine Scheduling Considering Electricity Consumption Cost. Comput. Oper. Res. 2018, 96, 55–68. [Google Scholar] [CrossRef]
  20. Sethanan, K.; Jamrus, T. Hybrid Differential Evolution Algorithm and Genetic Operator for Multi-Trip Vehicle Routing Problem with Backhauls and Heterogeneous Fleet in the Beverage Logistics Industry. Comput. Ind. Eng. 2020, 146, 106571. [Google Scholar] [CrossRef]
  21. Theeraviriya, C.; Sirirak, W.; Praseeratasang, N. Location and Routing Planning Considering Electric Vehicles with Restricted Distance in Agriculture. World Electr. Veh. J. 2020, 11, 61. [Google Scholar] [CrossRef]
  22. Jirasirilerd, G.; Pitakaso, R.; Sethanan, K.; Kaewman, S.; Sirirak, W.; Kosacka-Olejnik, M. Simple Assembly Line Balancing Problem Type 2 by Variable Neighborhood Strategy Adaptive Search: A Case Study Garment Industry. J. Open Innov. Technol. Mark. Complex. 2020, 6, 21. [Google Scholar] [CrossRef] [Green Version]
  23. Zeng, Y.; Che, A.; Wu, X. Bi-Objective Scheduling on Uniform Parallel Machines Considering Electricity Cost. Eng. Optim. 2017, 50, 19–36. [Google Scholar] [CrossRef]
  24. Sethanan, K.; Wisittipanich, W.; Wisittipanit, N.; Nitisiri, K.; Moonsri, K. Integrating Scheduling with Optimal Sublot for Parallel Machine with Job Splitting and Dependent Setup Times. Comput. Ind. Eng. 2019, 137, 106095. [Google Scholar] [CrossRef]
  25. Li, K.; Zhang, X.; Leung, J.Y.-T.; Yang, S.-L. Parallel Machine Scheduling Problems in Green Manufacturing Industry. J. Manuf. Syst. 2016, 38, 98–106. [Google Scholar] [CrossRef]
  26. Al-Shayea, A.M.; Saleh, M.; Alatefi, M.; Ghaleb, M. Scheduling Two Identical Parallel Machines Subjected to Release Times, Delivery Times and Unavailability Constraints. Processes 2020, 8, 1025. [Google Scholar] [CrossRef]
  27. Eltaeib, T.; Mahmood, A. Differential Evolution: A Survey and Analysis. Appl. Sci. 2018, 8, 1945. [Google Scholar] [CrossRef] [Green Version]
  28. Storn, R.; Price, K. Differential Evolution—A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces. J. Glob. Optim. 1997, 11, 341–359. [Google Scholar] [CrossRef]
  29. Wang, W.-L.; Wang, H.-Y.; Zhao, Y.-W.; Zhang, L.-P.; Xu, X.-L. Parallel Machine Scheduling with Splitting Jobs by a Hybrid Differential Evolution Algorithm. Comput. Oper. Res. 2013, 40, 1196–1206. [Google Scholar] [CrossRef]
  30. Praseeratasang, N.; Pitakaso, R.; Sethanan, K.; Kosacka-Olejnik, M.; Theeraviriya, C. Adaptive Large Neighborhood Search to Solve Multi-Level Scheduling and Assignment Problems in Broiler Farms. J. Open Innov. Technol. Mark. Complex. 2019, 5, 37. [Google Scholar] [CrossRef] [Green Version]
  31. Praseeratasang, N.; Pitakaso, R.; Sethanan, K.; Kaewman, S.; Golinska-Dawson, P. Adaptive Large Neighborhood Search for a Production Planning Problem Arising in Pig Farming. J. Open Innov. Technol. Mark. Complex. 2019, 5, 26. [Google Scholar] [CrossRef] [Green Version]
  32. Pitakaso, R.; Sethanan, K. Adaptive Large Neighborhood Search for Scheduling Sugarcane Inbound Logistics Equipment and Machinery under a Sharing Infield Resource System. Comput. Electron. Agric. 2019, 158, 313–325. [Google Scholar] [CrossRef]
  33. Cota, L.P.; Guimarães, F.G.; de Oliveira, F.B.; Souza, M.J.F. An Adaptive Large Neighborhood Search with Learning Automata for the Unrelated Parallel Machine Scheduling Problem. Available online: https://0-ieeexplore-ieee-org.brum.beds.ac.uk/abstract/document/7969312 (accessed on 26 February 2021).
  34. Khamsing, N.; Chindaprasert, K.; Pitakaso, R.; Sirirak, W.; Theeraviriya, C. Modified ALNS Algorithm for a Processing Application of Family Tourist Route Planning: A Case Study of Buriram in Thailand. Computation 2021, 9, 23. [Google Scholar] [CrossRef]
  35. Cota, L.P.; Guimarães, F.G.; Ribeiro, R.G.; Meneghini, I.R.; de Oliveira, F.B.; Souza, M.J.F.; Siarry, P. An Adaptive Multi-Objective Algorithm Based on Decomposition and Large Neighborhood Search for a Green Machine Scheduling Problem. Swarm Evol. Comput. 2019, 51, 100601. [Google Scholar] [CrossRef]
  36. Theeraviriya, C.; Pitakaso, R.; Sethanan, K.; Kaewman, S.; Kosacka-Olejnik, M. A New Optimization Technique for the Location and Routing Management in Agricultural Logistics. J. Open Innov. Technol. Mark. Complex. 2020, 6, 11. [Google Scholar] [CrossRef] [Green Version]
  37. Pitakaso, R.; Sethanan, K.; Theeraviriya, C. Variable Neighborhood Strategy Adaptive Search for Solving Green 2-Echelon Location Routing Problem. Comput. Electron. Agric. 2020, 173, 105406. [Google Scholar] [CrossRef]
  38. Pitakaso, R.; Sethanan, K.; Jirasirilerd, G.; Golinska-Dawson, P. A Novel Variable Neighborhood Strategy Adaptive Search for SALBP-2 Problem with a Limit on the Number of Machine’s Types. Ann. Oper. Res. 2021. [Google Scholar] [CrossRef]
  39. Liu, C.-H. Approximate Trade-off between Minimisation of Total Weighted Tardiness and Minimisation of Carbon Dioxide (CO2) Emissions in Bi-Criteria Batch Scheduling Problem. Int. J. Comput. Integr. Manuf. 2013, 27, 759–771. [Google Scholar] [CrossRef]
  40. Pan, Z.; Lei, D.; Zhang, Q. A New Imperialist Competitive Algorithm for Multiobjective Low Carbon Parallel Machines Scheduling. Math. Probl. Eng. 2018, 2018, 1–13. [Google Scholar] [CrossRef] [Green Version]
  41. Chen, B.; Potts, C.N.; Woeginger, G.J. A Review of Machine Scheduling: Complexity, Algorithms and Approximability. Handb. Comb. Optim. 1998, 1493–1641. [Google Scholar] [CrossRef]
  42. Pinedo, M.L. Scheduling; Springer International Publishing: Cham, Swizerland, 2016. [Google Scholar] [CrossRef]
  43. Behera, D.K. Complexity on Parallel Machine Scheduling: A Review. Lect. Notes Mech. Eng. 2012, 373–381. [Google Scholar] [CrossRef]
  44. Theeraviriya, C.; Ruamboon, K.; Praseeratasang, N. Solving the Multi-Level Location Routing Problem Considering the Environmental Impact Using a Hybrid Metaheuristic. Int. J. Eng. Bus. Manag. 2021, 13, 184797902110173. [Google Scholar] [CrossRef]
  45. 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] [Green Version]
  46. Angel, E.; Bampis, E.; Kacem, F. Energy Aware Scheduling for Unrelated Parallel Machines. Available online: https://0-ieeexplore-ieee-org.brum.beds.ac.uk/abstract/document/6468361 (accessed on 27 February 2021).
  47. Sobottka, T.; Kamhuber, F.; Heinzl, B. Simulation-Based Multi-Criteria Optimization of Parallel Heat Treatment Furnaces at a Casting Manufacturer. J. Manuf. Mater. Process. 2020, 4, 94. [Google Scholar] [CrossRef]
  48. Nanthapodej, R.; Liu, C.-H.; Nitisiri, K.; Pattanapairoj, S. Hybrid Differential Evolution Algorithm and Adaptive Large Neighborhood Search to Solve Parallel Machine Scheduling to Minimize Energy Consumption in Consideration of Machine-Load Balance Problems. Sustainability 2021, 13, 5470. [Google Scholar] [CrossRef]
  49. Chaudhry, I.A.; Elbadawi, I.A. Minimisation of total tardiness for identical parallel machine scheduling using genetic algorithm. Sādhanā 2017, 42, 11–21. [Google Scholar] [CrossRef] [Green Version]
  50. Pei, J.; Cheng, B.; Liu, X.; Pardalos, P.M.; Kong, M. Single-Machine and Parallel-Machine Serial-Batching Scheduling Problems with Position-Based Learning Effect and Linear Setup Time. Ann. Oper. Res. 2017, 272, 217–241. [Google Scholar] [CrossRef]
  51. Maecker, S.; Shen, L. Solving Parallel Machine Problems with Delivery Times and Tardiness Objectives. Ann. Oper. Res. 2019, 285, 315–334. [Google Scholar] [CrossRef]
  52. Zhou, S.; Liu, M.; Chen, H.; Li, X. An Effective Discrete Differential Evolution Algorithm for Scheduling Uniform Parallel Batch Processing Machines with Non-Identical Capacities and Arbitrary Job Sizes. Int. J. Prod. Econ. 2016, 179, 1–11. [Google Scholar] [CrossRef]
  53. Wu, X.; Che, A. A Memetic Differential Evolution Algorithm for Energy-Efficient Parallel Machine Scheduling. Omega 2019, 82, 155–165. [Google Scholar] [CrossRef]
  54. Li, D.; Wang, J.; Qiang, R.; Chiong, R. A Hybrid Differential Evolution Algorithm for Parallel Machine Scheduling of Lace Dyeing Considering Colour Families, Sequence-Dependent Setup and Machine Eligibility. Int. J. Prod. Res. 2020, 1–17. [Google Scholar] [CrossRef]
Figure 1. Example of the track-transition method (TTM) procedure: (a) Tracks 1 and 2, and new random track; (b) Transition rate (TR); (c) Result of new transition.
Figure 1. Example of the track-transition method (TTM) procedure: (a) Tracks 1 and 2, and new random track; (b) Transition rate (TR); (c) Result of new transition.
Applsci 11 05311 g001aApplsci 11 05311 g001b
Table 1. Example of a set of five tracks used in VaNSAS.
Table 1. Example of a set of five tracks used in VaNSAS.
TrackPositionJob ElementsMachine Elements
12345678910ABC
10.480.700.220.430.750.910.040.410.480.340.950.310.65
20.990.060.840.630.380.870.030.940.740.410.390.260.63
30.040.490.620.440.130.490.590.320.970.440.020.520.01
40.940.160.340.670.170.900.260.250.930.950.590.620.37
50.460.900.680.600.190.260.150.300.600.220.540.460.72
Table 2. Values of Pjm and Ejm for 10 jobs and 3 machines.
Table 2. Values of Pjm and Ejm for 10 jobs and 3 machines.
Job jm123456789 10
PjmA22153016292526182619
B24N/A2029252229N/A1616
C2416182218N/A17171827
EjmA26172919272526232229
B21N/A3018252330N/A2826
C2429193017N/A19182824
Dj30458085120451503050200
aj483421338449438480383321389418
Remarks: N/A is a job-machine restriction in which the job could not be produced on that machine.
Table 3. Track 1 before and after applying rank order value (ROV).
Table 3. Track 1 before and after applying rank order value (ROV).
Track before ROVJob/Machine12345678910ABC
Value in
position
0.480.70.220.430.750.910.040.410.480.340.950.310.65
Track after ROVJob/Machine73108419256BCA
Value in
position
0.040.220.340.410.430.480.480.70.750.910.310.650.95
Table 4. Results of the proposed decoding method in Step 3.
Table 4. Results of the proposed decoding method in Step 3.
Job73108419256
MachineBCACBABCAB
Energy used (THB)30192918182628292723
Table 5. Sequence and scheduling from Table 4.
Table 5. Sequence and scheduling from Table 4.
Job10 1 5
Machine AS10,AC10,AS1,AC1,AS5,AC5,A
Sjm/Cjm01919414170
Dj 200 30 120
Lj 0 11 0
Tj 0 1 0
Job7 4 9 6
Machine BS7,BC7,BS4,BC74BS9,BC9,BS6,BC6,B
Sjm/Cjm029295858767698
Dj 150 85 50 45
Lj 0 0 26 53
Tj 0 0 1 1
Job3 8 2
Machine CS3,CC3,CS8,CC8,CS2,CC2,C
Sjm/Cjm01818353551
Dj 80 30 45
Lj 0 5 6
Tj 0 1 1
Table 6. Example values of the MF method.
Table 6. Example values of the MF method.
TypeJob ElementMachine Element
Job123456789ABCD
V T i h N 0.580.490.520.50.60.980.240.720.260.090.180.880.26
R i h 0.200.310.120.670.120.350.750.950.660.180.560.700.03
V T i h M F 0.120.150.060.330.070.340.180.680.170.020.100.620.01
Table 7. Test-instance details.
Table 7. Test-instance details.
Group Test InstanceNumber of Test InstancesPjm
(m)
Number of JobsNumber of MachinesEjm
(THB)
TMAXBLMAX
Small124–305–302–530–7520–30%10–5010–100
Medium 124–2040–523–530–7520–30%10–5010–100
Large 124–2080–1345–830–7520–30%10–5010–100
Case study14–202011130–7520–30%10–5010–100
Table 8. Proposed-method details.
Table 8. Proposed-method details.
AlgorithmDetail
DETraditional DE
CUCurrent practice procedure
VaNSASVariable neighborhood strategy adaptive search
SDRSolution destroy and repair methods
TTMTrack-transition methods
MFMultiplier factor
Table 9. Computation results of small test instances.
Table 9. Computation results of small test instances.
NoJobmNTLingo v.11Traditional Method (THB)Proposed Methods
Obj.
(THB)
Com. Time
(sec)
DECUVaNSASSDRTTMMF
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
S-153251508725180155678247451500671826862121866237311
S-263268206516954139742837168200711935570232106988209
S-3104210,230205610,23010213,98169910,230012,23836713,14865713,119655
S-4153210,921184311,58911513,87955510,921012,23961112,18148712,033481
S-5153410,831456110,83110814,71358810,831012,81564012,21936612,172608
S-62033902085,625934728010,8955449020010,22951111,29656410,687534
S-72043890080,371949228411,3745688900011,81847210,72242810,381415
S-8254311,61276,81912,78425514,98174911,612013,20966013,34853312,987389
S-9254212,36078,37112,78825514,58258312,360013,37140113,79468912,984649
S-10254511,39067,62111,39011315,37846111,390012,87964312,04660212,288614
S-11284513,70584,00413,79413717,61988013,705014,01356014,23756914,886744
S-12304511,00689,12212,89125716,71683511,006013,31053214,01842013,873693
% different from Lingo4.5229.050.0014.4315.0113.44
% found optimal solution25%0%100%0%0%0%
Table 10. Statistical test of small test instances.
Table 10. Statistical test of small test instances.
DECUVaNSASSDRTTMMF
Lingo0.0220.0000.2070.0000.0000.000
DE 0.0000.0070.0010.0000.001
CU 0.0000.0000.0010.001
VaNSAS 0.0000.0000.000
SDR 0.9070.591
TTM 0.247
Table 11. Computation results of medium-sized test instances.
Table 11. Computation results of medium-sized test instances.
NoJobmNTExact MethodTraditional Method (THB)Proposed Methods
Lingo DECUVaNSASSDRTTMMF
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
M-1405318,22716,38116318,72893615,79415717,71970817,65352917,756532
M-2404418,38517,28851821,193211915,99215917,57870317,23386117,481874
M-3404219,37116,87233722,371111816,01432017,72288617,23568917,443697
M -4454419,18416,88050620,883167016,59849716,95784717,18268717,084512
M -5453221,82717,99817921,059126317,55052618,01872018,24291218,115905
M -6453521,28417,09417022,014176116,88150617,22568917,18868717,269518
M -7455421,18916,99533920,913209116,77433517,28151817,19251517,007680
M -8455221,08718,04718022,387223817,55935118,81756419,11076418,349733
M -9505424,87120,12240225,881232919,56319521,88365622,915114523,120924
M -10505324,48323,28723224,879223922,39722323,589117923,11792422,996689
M -11503525,59824,44873326,712240422,01422024,42173224,38873124,8171240
M-12524626,51524,48173426,818134022,45667325,817103225,985103925,6711026
% Improved from best objective found by Lingo14.594.3719.5511.1911.0411.24
Table 12. Statistical test of objective function for medium-sized problem.
Table 12. Statistical test of objective function for medium-sized problem.
DECUVaNSASSDRTTMMF
Lingo0.0000.0060.0000.0010.0000.001
DE 0.0000.0020.0060.0300.039
CU 0.0000.0000.0000.000
VaNSAS 0.0000.0010.001
SDR 0.7770.962
TTM 0.767
Table 13. Computation results of large test instances.
Table 13. Computation results of large test instances.
NoJobmNTExact MethodTraditional Method (THB)Proposed Methods
Lingo DECUVaNSASSDRTTMMF
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
Best Sol.Max.
Error
L-1805647,96845,871137652,297522939,917119746,617186446,521196045,5981823
L-2805549,35141,27882545,580410240,015120042,893171542,886129342,3611270
L-3804537,59933,19299838,817232931,10831134,918139634,118184734,2871028
L-4803541,62538,18538141,491290436,61436638,811116438,927182438,8911555
L-51004652,60447,46747453,158372144,58189148,819244048,984227548,8161464
L-61005656,49749,981149957,619518548,819146450,176150551,19748452,3481570
L-71006655,82350,187100358,281407947,71395451,810155452,184221652,1831565
L-81007654,89149,571148755,819334947,289141850,972254850,013248851,1972047
L-91206767,90562,995188968,913689159,98259963,395316964,512141853,8912155
L-101207767,06763,417126868,919413558,813176464,992194963,857438464,3873219
L-111208665,59660,87460865,817526558,716117459,816179460,128267860,0163000
L-121348772,16867,61767673,215512564,48064467,764271067,366310867,9522718
C-1201117128,704118,9172378129,81411,683110,1722203119,8595992119,3474107119,8465992
% Improved from best objective found by Lingo9.881.4216.357.898.019.33
Table 14. Statistical test of objective function for large test instances.
Table 14. Statistical test of objective function for large test instances.
DECUVaNSASSDRTTMMF
Lingo0.0000.0900.0000.0000.0000.000
DE 0.0000.0000.0020.0030.836
CU 0.0000.0000.0000.000
VaNSAS 0.0000.0000.005
SDR 0.7540.379
TTM 0.468
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Nanthapodej, R.; Liu, C.-H.; Nitisiri, K.; Pattanapairoj, S. Variable Neighborhood Strategy Adaptive Search to Solve Parallel-Machine Scheduling to Minimize Energy Consumption While Considering Job Priority and Control Makespan. Appl. Sci. 2021, 11, 5311. https://0-doi-org.brum.beds.ac.uk/10.3390/app11115311

AMA Style

Nanthapodej R, Liu C-H, Nitisiri K, Pattanapairoj S. Variable Neighborhood Strategy Adaptive Search to Solve Parallel-Machine Scheduling to Minimize Energy Consumption While Considering Job Priority and Control Makespan. Applied Sciences. 2021; 11(11):5311. https://0-doi-org.brum.beds.ac.uk/10.3390/app11115311

Chicago/Turabian Style

Nanthapodej, Rujapa, Cheng-Hsiang Liu, Krisanarach Nitisiri, and Sirorat Pattanapairoj. 2021. "Variable Neighborhood Strategy Adaptive Search to Solve Parallel-Machine Scheduling to Minimize Energy Consumption While Considering Job Priority and Control Makespan" Applied Sciences 11, no. 11: 5311. https://0-doi-org.brum.beds.ac.uk/10.3390/app11115311

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop