Next Article in Journal
Mitigation of the Collision Risk of a Virtual Impactor Based on the 2011 AG5 Asteroid Using a Kinetic Impactor
Previous Article in Journal
Two Preconditioners for Time-Harmonic Eddy-Current Optimal Control Problems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Energy-Efficient Unrelated Parallel Machine Scheduling Problem with Batch Processing and Time-of-Use Electricity Prices

1
School of Automation, Central South University, Changsha 410083, China
2
Department of Industrial and Systems Engineering, University of Tennessee, Knoxville, TN 37996, USA
*
Author to whom correspondence should be addressed.
Mathematics 2024, 12(3), 376; https://doi.org/10.3390/math12030376
Submission received: 1 December 2023 / Revised: 9 January 2024 / Accepted: 22 January 2024 / Published: 24 January 2024
(This article belongs to the Section Computational and Applied Mathematics)

Abstract

:
The extensive consumption of energy in manufacturing has led to a large amount of greenhouse gas emissions that have caused an enormous effect on the environment. Therefore, investigating how to reduce energy consumption in manufacturing is of great significance to cleaner production. This paper considers an energy-conscious unrelated parallel batch processing machine scheduling problem under time-of-use (TOU) electricity prices. Under TOU, electricity prices vary for different periods of a day. This problem is grouping jobs into batches, assigning the batches to machines and allocating time to the batches so as to minimize the total electricity cost. A mixed-integer linear programming model and two groups of heuristics are proposed to solve this problem. The first group of heuristics first forms batches, assigns the batches to machines and finally allocates time to the batches, while the second group of heuristics first assigns jobs to machines, batches the jobs on each machine and finally allocates time to each batch. The computational results show that the SPT-FBLPT-P1 heuristic in the second group can provide high-quality solutions for large-scaled instances in a short time, in which the jobs are assigned to the machines based on the shortest processing time rule, the jobs on each machine are batched following the full-batch longest processing time algorithm, and the time is allocated to each batch following an integer programming approach. The MDEC-FBLPT-P1 heuristic that uses the minimum difference of the power consumption algorithm to assign the jobs also performed well.

1. Introduction

The batch scheduling problem is an important type of production scheduling problem. Batch scheduling problems have attracted the attention of researchers and manufacturers because batch processing machines (BPMs) are often used in many manufacturing enterprises. A BPM can process a batch of jobs simultaneously as long as the total size of the jobs does not exceed its capacity. A wide range of applications of BPMs can be found in the semiconductor manufacturing industry, ceramic and glass factories, steel mills and other applications [1,2,3,4,5]. Most batch scheduling problems turn out to be NP-hard, which makes them difficult to solve [6].
Many manufacturing companies are energy-intensive, and their energy consumption accounts for a large share of energy consumption in a country. In China, almost half of the total electricity energy is consumed by manufacturing. Globally, manufacturing accounts for 37 percent of global carbon emissions [7]. The huge power consumption has put enormous pressure on manufacturing enterprises and the environment, and thus it is of great significance for the manufacturing industry to save electricity costs and to reduce the greenhouse gas emissions.
Replacing power-hungry equipment with new equipment that saves energy is the easiest way, but the cost of buying new equipment is often too high to afford for small- and medium-sized enterprises. Another approach is to optimize production planning and scheduling. Planning and scheduling can effectively reduce the energy consumption of enterprises in a short time with little investment. Therefore, scheduling has become the primary choice of more and more enterprises to reduce electricity consumption.
In the existing research, Saberi-Aliabad et al. [8] studied an unrelated parallel machine scheduling problem under time-of-use electricity tariffs. But batch processing, which can be widely found in the manufacturing industry, is not considered by them in reality. In this paper, we consider an energy-conscious unrelated parallel BPM scheduling problem under time-of-use (TOU) tariffs with the objective of minimizing the total electricity cost (TEC). In this problem, the processing times of the jobs are different for different BPMs. The TOU pricing policy (i.e., different electricity prices for different periods) provides managers with an opportunity to save on energy costs and optimize their production activities by moving production from periods of high electricity prices to periods of low or average electricity prices. A mixed-integer linear programming model is developed for the problem, and a number of heuristics are proposed to solve this problem.
The rest of this paper is organized as follows. In Section 2, we present a literature review on unrelated parallel BPM scheduling and batch scheduling under TOU electricity tariffs. We describe the problem under study and present a mixed-integer linear programming model in Section 3. In Section 4, we describe the developed heuristics. In Section 5, we present the experimental results. In Section 6, we summarize this study and give some future research directions.

2. Literature Review

2.1. Unrelated Parallel Batch Processing Machine Scheduling

A lot of researchers have paid attention to the scheduling problem in the environment of unrelated parallel batch processing machines. Their studies deal with unrelated parallel BPM scheduling problems with different contexts. Some of them considered unrelated parallel BPMs with unit-sized jobs. Lu et al. [9] considered an unrelated parallel machine scheduling problem with deteriorating maintenance activities, parallel batch processing and deteriorating jobs. The objective was to minimize the makespan. Firstly, they formulated a mixed-integer programming model for the problem. Then, to solve the problem in a reasonable amount of time, they developed a hybrid ABC-TS algorithm by combing the artificial bee colony (ABC) and tabu search (TS) algorithms. A special case where all jobs have been assigned to machines was analyzed, and polynomial time-optimal algorithms were provided to solve it. Kong et al. [10] considered an unrelated parallel machine scheduling problem with job deterioration and proposed a hybrid SFLA-VNS algorithm combining the shuffle frog leap algorithm (SFLA) with the variable neighborhood search algorithm to solve the problem.
There are a few studies that considered unrelated parallel BPM scheduling problems with non-identical job sizes. Li et al. [11] investigated the unrelated parallel BPM problem with the objective of minimizing the makespan. A lower bound and several heuristics based on the best fit longest processing time in two groups were proposed for the problem.
Several studies consider unrelated BPM scheduling with unequal job ready times. Klemmt et al. [12] investigated an unrelated parallel BPM problem with incompatible job families and unequal ready times found in the diffusion and oxidation of semiconductor wafer fabrication facilities. To minimize the total weighted tardiness of the jobs, two solution approaches which were based on mixed-integer programming decomposition and variable neighborhood search were proposed. Shahvari and Logendran [13] developed an efficient tabu search meta-heuristic to address an unrelated parallel machine batch scheduling problem with sequence and machine-dependent set-up times, where the objective was to minimize a linear combination of the total weighted completion time and total weighted tardiness.
A number of researchers have investigated unrelated BPM scheduling problems with non-identical job sizes and ready times. Arroyo and Leung [14] proposed several heuristics based on first-fit and best-fit earliest job ready time rules to minimize the makespan. Later, Arroyo and Leung [15] provided a lower bound, a mixed-integer programming model and a meta-heuristic based on the iterated greedy algorithm for the case of different capacities. Zhou et al. [16] proposed a genetic algorithm based on random key encoding for the same problem as that addressed by Arroyo and Leung [15]. Arroyo et al. [17] also proposed a simple and effective iterated greedy algorithm to minimize the total flow time of the jobs. Shahvari and Logendran [18] presented a mathematical programming model in four layers and four bi-objective particle swarm optimization algorithms to minimize the production time and cost. Shahidi-Zadeh et al. [19] proposed a multi-objective harmony search algorithm to minimize the makespan, tardiness or earliness penalties and the purchasing cost of machines. Zarook et al. [20] proposed a mixed-integer linear programming model, two categories of the heuristic procedures and a meta-heuristic algorithm to solve the problem.

2.2. Batch Scheduling under TOU Electricity Tariffs

Many researchers have studied single-machine batch scheduling problems under TOU electricity tariffs with the objective of minimizing the makespan and TEC. Wang et al. [3] proposed an integer-programming model for a single-machine batch scheduling problem with energy cost consideration and used an exact ϵ constraint method and two heuristic methods to obtain the Pareto fronts. Zhang et al. [21] proposed a continuous-time mixed-integer linear programming model for speed-scaling single-machine batch scheduling and two improved heuristics based on the model. Cheng et al. [22] considered a single-machine batch scheduling problem with machine on and off switching under TOU tariffs and proposed a bi-objective mixed-integer linear programming formulation and a heuristic-based ϵ constraint method. Cheng et al. [23] proposed two mixed-integer linear programming models to minimize the TEC for single-machine batch scheduling under TOU tariffs, which were based on time index formulation and time interval formulation. Later, Wu et al. [24] developed two fast, new ϵ constraint-based constructive heuristic algorithms to simultaneously minimize the TEC and makespan. Zhou et al. [25] developed a mathematical formulation for a single-machine batch scheduling problem with dynamic job arrival times. Then a three-stage algorithm that used a particle swarm optimization algorithm to find a job sequence, two constructive heuristics to group a sequence of jobs into batches and the earliest ready time rule to obtain a schedule were presented to find the Pareto front.
A few studies investigated energy-oriented flow shop batch scheduling problems under TOU electricity tariffs. Liu et al. [26] studied a bi-objective three-stage hybrid flow shop scheduling problem, where the first two processing stages consisted of non-identical parallel machines and the last processing stage was made up of a batch processing machine. They proposed an integer programming model and then developed a model-based heuristic and a bi-objective differential evolution algorithm to solve the problem. Zheng et al. [27] presented a multi-objective hybrid ant colony optimization algorithm and a mixed-integer programming model to minimize the makespan and TEC.
A few papers addressed the energy-conscious scheduling problem of BPMs in parallel. Zhou et al. [7] proposed a mixed-integer nonlinear programming model and a multi-objective differential evolution algorithm to minimize the makespan and TEC. Qian et al. [28] extended the problem to the case of arbitrary job sizes and developed a multi-objective evolutionary algorithm based on adaptive clustering. To the best of our knowledge, there is no study that considers energy-efficient unrelated parallel BPM scheduling. This paper is the first to investigate the problem and proposes a mixed-integer linear programming model and a number of heuristic algorithms for the problem.

3. Problem Description and Model

In this section, the energy-efficient unrelated parallel BPM scheduling problem under TOU electricity tariffs is described, and then the notation and a mixed-integer linear programming model are presented.

3.1. Problem Description

  • There are n jobs to be processed on m unrelated parallel BPMs. The processing time of a job depends on the machine processing it, and let p j i denote the processing time of job j on machine i. All jobs have unit sizes, and the maximum capacity of the machines is B (i.e., a machine can process up to B jobs at a time). The power of machine i is denoted by ρ i .
  • Once a batch starts to be processed on a machine, it cannot be terminated, and no jobs can be added to the machine until processing is finished. The processing time of a batch on a machine is determined by the longest processing time of the jobs in the batch for the machine.
  • TOU electricity tariffs are used in this paper (i.e., the electricity price of each period is not the same). An allowable scheduling horizon T is considered, which consists of K periods. The duration and electricity price of period k are denoted by c k and T k , respectively. The scheduling problem is to group the jobs into batches, assign the batches to the machines and allocate time to the batches on each machine in order to minimize the total electricity cost within the scheduling horizon.

3.2. Mathematical Model

The parameters are as follows: n is the number of jobs, m, is the number of machines, K is the number of periods, p j i is the processing time of job j on machine i, ρ i is the power of machine i, c k is the electricity price of period k, T k is the duration of period k, B is the capacity of all machines, and M is a big enough positive number.
The decision variables are as follows: x j b is one if job j is assigned to batch b and is zero otherwise, t b i is the processing time of batch b on machine i, a b i k denotes the real amount of processing time of batch b for machine i in period k, y b i k is one if batch b is processed on machine i in period k and is zero otherwise, and w b i is one if batch b is processed for machine i and is zero otherwise.
The mixed-integer linear programming (MILP) model is formulated as follows.
The objective of Equation (1) is to minimize the total electricity cost:
M i n T E C = b = 1 n i = 1 m k = 1 K ρ i c k a b i k
The constraint in Equation (2) ensures that each job can be assigned to only one batch:
b = 1 n x j b = 1 j = 1 , , n .
The constraint in Equation (3) ensures that there are no more than B jobs in a batch:
j = 1 n x j b B b = 1 , , n .
The constraints in Equations (4) and (5) denote that the processing time of batch b for machine i is equal to the longest processing time of the jobs in the batch if batch b is processed on machine i (i.e., w b i = 1 ) and is equal to zero otherwise:
t b i p j i x j b M ( 1 w b i ) j = 1 , , n ; b = 1 , , n ; i = 1 , , m .
t b i M w b i b = 1 , , n ; i = 1 , , m .
The constraint in Equation (6) ensures that the total processing time of batch b in all periods on machine i is equal to its processing time for the machine:
k = 1 K a b i k = t b i b = 1 , , n ; i = 1 , , m .
The constraint in Equation (7) forces the processing time of batch b in period k for machine i to be zero if the batch is not processed in the period on the machine (i.e., y b i k = 0 ):
a b i k T k y b i k b = 1 , , n ; i = 1 , , m ; k = 1 , , K .
The constraint in Equation (8) ensures that the total processing time of all batches in period k on machine i is not more than the length of the period:
b = 1 n a b i k T k i = 1 , , m ; k = 1 , , K .
The constraint in Equation (9) means that if a batch is processed across more than one period, then these periods must be adjacent:
l = k + 2 K y b i l K ( 1 y b i k + y b i ( k + 1 ) ) b = 1 , , n ; i = 1 , , m ; k = 1 , , K 2 .
The constraint in Equation (10) means that batch b should occupy the whole period k for machine i if the batch is processed in both period k − 1 and period k + 1 on the machine:
a b i k T k ( y b i ( k 1 ) + y b i ( k + 1 ) 1 ) b = 1 , , n ; i = 1 , , m ; k = 2 , , K 1 .
The constraint in Equation (11) indicates that, at most, one batch can arbitrarily cross two adjacent periods on a machine:
y b i k + y b i ( k + 1 ) + y b i k + y b i ( k + 1 ) 3 1 b < b n ; i = 1 , , m ; k = 1 , , K 1 .
The constraint in Equation (12) means that if batch b is not processed on machine i, then it cannot be processed in any periods on the machine:
K w b i k = 1 K y b i k b = 1 , , n ; i = 1 , , m .
The constraint in Equation (13) denotes that each batch can be assigned to only one machine:
i = 1 m w b i = 1 b = 1 , , n .
The constraint in Equation (14) defines the ranges of the decision variables:
x j b , y b i k , w b i { 0 , 1 } , t b i 0 , a b i k 0 j = 1 , , n ; b = 1 , , n ; i = 1 , , m ; k = 1 , , K .

4. Heuristic Algorithms

The energy-efficient unrelated parallel BPM scheduling problem is strongly NP-hard, and thus it is necessary to develop heuristics to solve the problem in a reasonable computation time. The studied problem consists of several interdependent subproblems. There are two ways to solve the problem. The first way is batching jobs, assigning the batches to machines and allocating time to the batches for each machine, and the other is assigning jobs to machines, batching the jobs on each machine and allocating time to each batch for each machine. This paper develops a group of six heuristics with the first method and a group of three heuristics with the other method. The details of the two groups of heuristics are described below.

4.1. The First Group of Heuristics

In this group, three modified heuristics based on the full-batch longest processing time (FBLPT) algorithm [29] are presented to group the jobs into batches. Then, two heuristics, the shortest completion time (SCT) and minimum electricity cost (MEC), are developed to assign the batches to the machines, and finally an integer linear programming model is developed to allocate time to the batches for each machine.
The jobs are divided into batches (the last batch may have fewer than B jobs) as the heuristics FBLPT_max, FBLPT_avg and FBLPT_min:
  • Let t j m a x , t j a v g and t j m i n denote the longest, average and shortest processing time of job j on all machines, respectively. The jobs are arranged in non-increasing order of t j m a x in FBLPT_max, t j a v g in FBLPT_avg and t j m i n in FBLPT_min.
  • According to the order of the jobs obtained in Step 1, every B jobs are grouped into a batch starting from the first job. Note that the last batch may contain less than B jobs. Finally a list of batches is created.
We used a 10 job problem instance with two machines, as is shown in Table 1, to illustrate the FBLPT_max algorithm. The capacity of the machines was assumed to be two. According to Step 1, the job sequence was {8,1,4,6,3,7,9,5,2,10}. The batches generated according to Step 2 are then presented in Table 2.
After the jobs were batched, the SCT and MEC heuristics were used to assign the batches to the machines. The two heuristics are described in detail below.
The heuristic SCT was designed to assign a batch to the machine for which the completion time of the batch was the earliest. The heuristic is described below:
  • Select the batch at the head of the batch list.
  • Calculate the completion times of the batches for each machine and assign them to the machines that enable them to have the shortest completion time. Repeat Step 1 until all batches have been assigned to a machine.
The MEC heuristic was designed to assign a batch to the machine on which the electricity cost for processing the batch was the least under the preemptive circumstance. The MEC heuristic is described below:
  • Select the batch at the head of the batch list.
  • Preemptive processing is considered. Calculate the lowest electricity cost of the batch for each machine. Assign the batch to the machine for which the electricity cost of the batch is the lowest. Remove the periods occupied by the batch. Repeat Step 1 until all batches have been assigned to a machine.
We used the generated batches in Table 2 to illuminate the SCT and MEC heuristics. The powers of machines 1 and 2 were three and two, respectively. According to the SCT heuristic, the completion times of batch B1 on machines 1 and 2 were nine and eight, respectively, and thus batch B1 was assigned to machine 2. Next, the completion times of batch B2 on machines 1 and 2 were 1 and 16, respectively, and thus batch B2 was assigned to machine 1. The other batches were assigned in a similar way, and the final batch assignments are shown in Figure 1. The durations and prices of the periods are shown at the bottom of the figure. According to the MEC heuristic, the lowest electricity costs of batch B1 on machines 1 and 2 were 63 and 36, respectively, and thus batch B1 was assigned to machine 2. Next, the lowest electricity costs of batch B2 on machines 1 and 2 were 6 and 74, respectively, and thus batch B2 was assigned to machine 1. The other batches were assigned in a similar way, and the final batch assignments are shown in Figure 2.
After the batches were assigned to the set of BPMs, the problem was to allocate time to the batches on each individual BPM. We could regard a batch as an independent job, and then the problem was transformed into a set of m individual machine scheduling problems under TOU electricity tariffs with the objective of minimizing the TEC. To solve the single machine versions, an integer programming model is proposed.
The parameters are as follows: v is the number of batches assigned to a machine, ρ is the machine power, and t b is the processing time of batch b.
The decision variables are as follows: w b k is one if batch b is processed in period k and is zero otherwise, and x b k is the real amount of processing time of batch b in period k.
The integer programming model (P1) for the single machine version is as follows.
The objective of Equation (15) is to minimize the total electricity cost of the machine:
M i n b = 1 v k = 1 K ρ c k x b k
The constraint in Equation (16) ensures that the total processing time of batch b in all periods for the machine is equal to its processing time:
k = 1 K x b k = t b b = 1 , v .
The constraint in Equation (17) forces the processing time of batch b in period k to be zero if the batch is not processed in the period (i.e., w b k = 0):
x b k T k w b k b = 1 , v ; k = 1 , , K .
The constraint in Equation (18) ensures that the total processing time of all batches in period k is not more than the length of the period:
b = 1 v x b k T k k = 1 , , K .
The constraint in Equation (19) means that if a batch is processed across more than one period, then these periods must be adjacent:
l = k + 2 K w b l K ( 1 w b k + w b ( k + 1 ) ) b = 1 , v ; k = 1 , , K 2 .
The constraint in Equation (20) means that batch b should occupy the whole period k if the batch is processed in both period k 1 and period k + 1:
x b k T k ( w b ( k 1 ) + w b ( k + 1 ) 1 ) b = 1 , v ; k = 2 , , K 1 .
The constraint in Equation (21) indicates that, at most, one batch can arbitrarily cross two adjacent periods for the machine:
w b k + w b ( k + 1 ) + w b k + w b ( k + 1 ) 3 1 b < b n ; k = 1 , , K 1 .
The constraint in Equation (22) defines the ranges of the decision variables:
x b k 0 , w b k { 0 , 1 } b = 1 , v ; k = 1 , , K .

4.2. The Second Group of Heuristics

In this group, three heuristics, the shortest processing time (SPT), minimum difference of power consumption (MDPC) and minimum difference of electricity cost (MDEC) are presented to assign the jobs to the machines. Then, the FBLPT rule is used to batch the jobs for each machine, and finally the P1 model proposed in Section 4.1 is used to solve a set of single-machine scheduling problems.
The SPT heuristic is found as detailed below:
  • Arrange the jobs in some arbitrary order.
  • Select the job at the head of the list and assign it to the machine with the shortest processing time. Repeat this step until all jobs are assigned to machines.
The MDPC heuristic is found as detailed below:
  • Calculate the power consumption e j i of job j for each machine i, and let φ j denote the difference between the two smallest values e j i and i = 1 , , m . Arrange the jobs in non-increasing order of φ j .
  • Preemptive processing is considered. Select the job at the head of the list, and calculate the lowest electricity cost of the job on each machine. Assign the job to the machine for which the electricity cost of the job is the lowest. Remove the periods occupied by the job. Repeat this step until all jobs have been assigned to machines.
The MDEC heuristic is found as detailed below:
  • Preemptive processing is considered. Calculate the lowest electricity cost E C j i of job j for each machine i, and let ψ j denote the difference between the two smallest values E C j i and i = 1 , , m . Select the job with the largest ψ j value.
  • Assign the job to the periods for the machine with the lowest electricity cost. Remove the job and the occupied time for this machine. Return to Step 1 until all jobs are assigned to machines.
We used the instance in Table 1 to illustrate the three heuristics. The powers of machines 1 and 2 were three and two, respectively. The durations and prices of the periods are shown in Table 3. The processing time of job 1 was the shortest when processed on machine 1, and thus job 1 was assigned to machine 1 according to the SPT. The other jobs were assigned in a similar way. According to the MDPC, we calculated the φ j of all 10 jobs, and { φ 1 , , φ 10 } were {13,0,11,13,8,13,7,25,9,5}. We sorted the jobs according to φ j , and the job order was {8,1,4,6,3,9,5,7,10,2}. Therefore, job 8 was selected first according to the job order. The lowest electricity costs of job 8 on machines 1 and 2 were 10.8 and 0.8, respectively, and thus job 8 was assigned to machine 2. Next, we removed the time occupied by job 8 on machine 2 and calculated the lowest electricity costs of job 1 on machines 1 and 2, which were 1.2 and 6.4, respectively. Therefore, job 1 was assigned to machine 1. The other jobs were assigned in a similar way. According to the MDEC, we calculated ψ j for all jobs, and { ψ 1 , , ψ 10 } were {5.2,0,4.4,5.2,3.2,5.2,2.8,10,3.6,2}. Here, ψ 8 was the largest one, and thus job 8 was selected first. The lowest electricity costs of job 8 on machines 1 and 2 were 10.8 and 0.8, respectively, and thus job 8 was assigned to machine 2. After job 8 was assigned, we removed the time occupied by it on machine 2. Next, we recalculated ψ j for the rest of the jobs, and { ψ 1 , , ψ 7 , ψ 9 , ψ 10 } were {5.2,0,4.4,5.2,3.2,5.2,2.8,3.6,2}. Here, ψ 1 was the largest one, and thus job 1 was selected. The lowest electricity costs of job 8 on machines 1 and 2 were 1.2 and 6.4, respectively, and thus job 1 was assigned to machine 1. The other jobs were assigned in a similar way. The job assignment results of the three heuristics are shown in Table 4.
After the jobs were assigned to the machines, we used the FBLPT rule to batch jobs for each machine. We arranged the jobs in non-increasing order of processing times, and then every B jobs were grouped into a batch starting from the first job. After the jobs were grouped into batches, the P1 model was used to allocate time to the batches for each machine.
The framework of the heuristics in group one is shown in Figure 3, and the framework of the heuristics in group two is shown in Figure 4.

5. Computational Experiments

5.1. Data Generation

The problem parameters included the job number, machine number, machine capacity, machine powers and processing times of the jobs. Five levels of the number of jobs and two levels of the number of machines were considered in our instances (i.e., n = 20, 50, 100, 200, 300 and m = 2, 3). The machine power ρ i was randomly generated in {2,3}, and the machine capacity B was fixed to three. The processing times p j i of the jobs on the machines were randomly generated from a discrete uniform distribution [1,10]. The production horizon T was set by Equation (23). The TOU electricity prices used in this study are described in Table 5.
T = n / B × m a x { p j i }
All the algorithms were coded in Python. A Windows 11 computer with an AMD Ryzen 7 4800U, 1.8 GHz processor and 16 GB of RAM was used to run the experiments.

5.2. Comparison between the MILP Model and the Heuristics

In this subsection, we use CPLEX 12.7 to solve the MILP model proposed in Section 3. The time limit for CPLEX was set to 3600 s, and one thread was used when solving this model. The MILP model was compared with the second group of three heuristics. In these heuristics, the P1 model was solved using CPLEX with a time limit of 600 s.
Table 6 shows the results obtained by the MILP model and the three heuristics for instances with 20, 50, or 100 jobs and 2 machines. Column one represents the number of jobs, and column two represents the instance number. Columns 3–6 give the T E C , C m a x , time (s) and gap (%) values obtained by the MILP, respectively, and columns 7–15 give the T E C , C m a x and time (s) values obtained by the three heuristics, while “-” denotes that CPLEX could not find a feasible solution within the time limit. The best value is shown in bold. It can be seen from Table 6 that all the 20 job instances could be solved to optimality by the MILP. The T E C obtained by the SPT-FBLPT-P1 heuristic for the 20 job instances was a bit worse than that of the optimal solution. For 4 out of the 5 instances with 50 jobs, the T E C obtained by the MILP was the best, and the MDEC-FBLPT-P1 heuristic performed nearly as well as the MILP. The MILP did not find a feasible solution for the other 50 job instance. The MILP could not solve the 50 job instances optimally within 3600 s. The MILP could not obtain feasible solutions for the 100 job instances, except for one. The computational time of all the heuristics was quite small (less than 2 s even for a 100 job instance).
Table 7 provides the results for the instances with three machines. It can be seen from the table that all the 20 job instances were optimally solved by the MILP. None of the 50 job instances were solved to optimality by the MILP within 3600 s. The MILP could find a feasible solution for only one out of the five instances when the number of jobs was 100. The T E C obtained by the three heuristics was worse than that obtained by the MILP for the instances with 20 and 50 jobs. However, the three heuristics performed better than the MILP as the number of jobs increased to 100. All the heuristics were quite quick compared with the MILP.

5.3. Comparison of the Heuristics

This subsection compares the nine heuristics proposed in this paper with each other. Table 8 shows the results obtained by the heuristics. For each combination of a machine number and job number, 10 instances were randomly generated, and the average results of the 10 instances obtained by a heuristic were reported. In Table 8, columns one and two denote the machine number and job number, respectively, and the other columns present the average T E C and C m a x values from the nine heuristics. It can be seen from Table 8 that the T E C from the second group of three heuristics was better than that of the first group of six heuristics. Among the first group of heuristics, the ones using the MEC algorithm to assign batches to machines were superior than the ones using the SCP algorithm for all the instances. Among the second group of heuristics, the SPT-FBLPT-P1 and MDEC-FBLPT-P1 heuristics were always the best two heuristics for all the instances. The difference between the performance of the SPT-FBLPT-P1 and MDEC-FBLPT-P1 was quite small.
Table 9 shows the average run times (s) of the nine heuristics. It can be seen from the table that the average run times of the second group of heuristics were lower than those of the first group of heuristics. Note that the number of machines has an impact on the run time of an algorithm that reduces as the number of machines increases.
For the second group of algorithms with better performance, we conducted experiments for five-machine instances. The results are shown in Table 10, and it can be seen that all three heuristics could solve the maximum scale instance with 5 machines and 300 jobs within about 80 s. It was proven that the second group of heuristics also had great potential for solving larger-scale problems. Among the three heuristics, the performance of SPT-FBLPT-P1 was always the best for almost all instances.

6. Conclusions

This paper addressed the scheduling problem of unrelated parallel batch processing machines under TOU electricity prices with the objective of minimizing the total electricity cost. We proposed a mixed-integer programming model and two groups of heuristics in different ways. The model and heuristics were evaluated through many computational experiments. The results show that the model was quite efficient for small-scaled instances, and several of the heuristics could provide high-quality solutions for large-scaled instances in a short amount of time. Among the first group of heuristics, the ones using the MEC algorithm to assign batches to machines were superior to the ones using the SCP algorithm for all instances. Among the second group of heuristics, the SPT-FBLPT-P1 and MDEC-FBLPT-P1 heuristics were always the best two heuristics for all the instances. The difference between the performance of SPT-FBLPT-P1 and MDEC-FBLPT-P1 was rather small.
There are several directions for future research to investigate. First, the job sizes in this study were equal, and future research can consider jobs with different sizes. Second, dynamic job arrivals can be considered as well. Third, this research could be extended to flow shop and other manufacturing environments. In addition, other performance measures can also be introduced into the problem.

Author Contributions

Conceptualization, S.Z.; methodology, L.F., G.C., S.Z. and M.J.; project administration, X.Z.; resources, G.C. and X.Z.; software, L.F.; validation, G.C.; visualization, L.F.; writing—original draft, L.F.; writing—review and editing, S.Z., X.Z. and M.J. All authors have read and agreed to the published version of the manuscript.

Funding

This work was partially supported by the National Natural Science Foundation of China (Grant Nos. 72101272, 62073344 and 62273357) and the Natural Science Foundation of Hunan Province, China (Grant Nos. 2022JJ30761 and 2021JJ20082).

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Mathirajan, M.; Sivakumar, A.I. A literature review, classification and simple meta-analysis on scheduling of batch processors in semiconductor. Int. J. Adv. Manuf. Technol. 2006, 29, 990–1001. [Google Scholar] [CrossRef]
  2. Tang, L.; Yue, Z.; Liu, J. An Improved Differential Evolution Algorithm for Practical Dynamic Scheduling in Steelmaking-Continuous Casting Production. IEEE Trans. Evol. Comput. 2014, 18, 209–225. [Google Scholar] [CrossRef]
  3. Wang, S.; Liu, M.; Chu, F.; Chu, C. Bi-objective optimization of a single machine batch scheduling problem with energy cost consideration. J. Clean. Prod. 2016, 137, 1205–1215. [Google Scholar] [CrossRef]
  4. Wei, Q.; Kang, L.; Shan, E. Batching Scheduling in a Two-Level Supply Chain with Earliness and Tardiness Penalties. J. Syst. Sci. Complex. 2016, 29, 478–498. [Google Scholar] [CrossRef]
  5. Liang, X.; Zhou, S.; Chen, H.; Xu, R. Pseudo transformation mechanism between resource allocation and bin-packing in batching environments. Future Gener. Comput. Syst. 2019, 95, 79–88. [Google Scholar] [CrossRef]
  6. Fowler, J.W.; Mönch, L. A survey of scheduling with parallel batch (p-batch) processing. Eur. J. Oper. Res. 2022, 298, 1–24. [Google Scholar] [CrossRef]
  7. 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]
  8. Saberi-Aliabad, H.; Reisi-Nafchi, M.; Moslehi, G. Energy-efficient scheduling in an unrelated parallel-machine environment under time-of-use electricity tariffs. J. Clean. Prod. 2019, 249, 119393. [Google Scholar] [CrossRef]
  9. Lu, S.; Liu, X.; Pei, J.; Thai, M.T.; Pardalos, P.M. A hybrid ABC-TS algorithm for the unrelated parallel-batching machines scheduling problem with deteriorating jobs and maintenance activity. Appl. Soft Comput. 2018, 66, 168–182. [Google Scholar] [CrossRef]
  10. Kong, M.; Liu, X.; Pei, J.; Pardalos, P.M.; Mladenovic, N. Parallel-batching scheduling with nonlinear processing times on a single and unrelated parallel machines. J. Glob. Optim. 2020, 78, 693–715. [Google Scholar] [CrossRef]
  11. Li, X.L.; Huang, Y.L.; Tan, Q.; Chen, H.P. Scheduling unrelated parallel batch processing machines with non-identical job sizes. Comput. Oper. Res. 2013, 40, 2983–2990. [Google Scholar] [CrossRef]
  12. Klemmt, A.; Weigert, G.; Almeder, C.; Monch, L. A comparison of MIP-based decomposition techniques and VNS approaches for batch scheduling problems. In Proceedings of the 2009 Winter Simulation Conference (WSC), Austin, TX, USA, 13–16 December 2009. [Google Scholar]
  13. Shahvari, O.; Logendran, R. An Enhanced tabu search algorithm to minimize a bi-criteria objective in batching and scheduling problems on unrelated-parallel machines with desired lower bounds on batch sizes. Comput. Oper. Res. 2017, 77, 154–176. [Google Scholar] [CrossRef]
  14. Arroyo, J.; Leung, Y.T. Scheduling unrelated parallel batch processing machines with non-identical job sizes and unequal ready times. Comput. Oper. Res. 2017, 78, 117–128. [Google Scholar] [CrossRef]
  15. Arroyo, J.E.C.; Leung, Y.T. An effective iterated greedy algorithm for scheduling unrelated parallel batch machines with non-identical capacities and unequal ready times. Comput. Ind. Eng. 2017, 105, 84–100. [Google Scholar] [CrossRef]
  16. Zhou, S.; Xie, J.; Du, N.; Pang, Y. A random-keys genetic algorithm for scheduling unrelated parallel batch processing machines with different capacities and arbitrary job sizes. Appl. Math. Comput. 2018, 334, 254–268. [Google Scholar] [CrossRef]
  17. Arroyo, J.E.C.; Leung, Y.T.; Tavares, R.G. An iterated greedy algorithm for total flow time minimization in unrelated parallel batch machines with unequal job release times. Eng. Appl. Artif. Intell. 2019, 77, 239–254. [Google Scholar] [CrossRef]
  18. Shahvari, O.; Logendran, R. A bi-objective batch processing problem with dual-resources on unrelated-parallel machines. Appl. Soft Comput. 2017, 61, 174–192. [Google Scholar] [CrossRef]
  19. Shahidi-Zadeh, B.; Tavakkoli-Moghaddam, R.; Taheri-Moghadam, A.; Rastgar, I. Solving a bi-objective unrelated parallel batch processing machines scheduling problem: A comparison study. Comput. Oper. Res. 2017, 88, 71–90. [Google Scholar] [CrossRef]
  20. Zarook, Y.; Rezaeian, J.; Mahdavi, I.; Yaghini, M. Efficient algorithms to minimize makespan of the unrelated parallel batch-processing machines scheduling problem with unequal job ready times. Rairo-Oper. Res. 2021, 55, 1501–1522. [Google Scholar] [CrossRef]
  21. Zhang, S.; Che, A.; Wu, X.; Chu, C. Improved mixed-integer linear programming model and heuristics for bi-objective single-machine batch scheduling with energy cost consideration. Eng. Optim. 2018, 50, 1380–1394. [Google Scholar] [CrossRef]
  22. Cheng, J.; Chu, F.; Liu, M.; Wu, P.; Xia, W. Bi-criteria single-machine batch scheduling with machine on/off switching under time-of-use tariffs. Comput. Ind. Eng. 2017, 112, 721–734. [Google Scholar] [CrossRef]
  23. Cheng, J.; Chu, F.; Liu, M.; Xia, W. Single-machine batch scheduling under time-of-use tariffs: New mixed-integer programming approaches. In Proceedings of the 2016 IEEE International Conference on Systems, Man, and Cybernetics (SMC), Budapest, Hungary, 9–12 October 2016; pp. 3498–3503. [Google Scholar] [CrossRef]
  24. Wu, P.; Cheng, J.; Chu, F. Large-scale energy-conscious bi-objective single-machine batch scheduling under time-of-use electricity tariffs via effective iterative heuristics. Ann. Oper. Res. 2021, 296, 471–484. [Google Scholar] [CrossRef]
  25. Zhou, S.; Jin, M.; Du, N. Energy-efficient scheduling of a single batch processing machine with dynamic job arrival times. Energy 2020, 209, 118420. [Google Scholar] [CrossRef]
  26. Liu, M.; Yang, X.; Chu, F.; Zhang, J.; Chu, C. Energy-oriented bi-objective optimization for the tempered glass scheduling. Omega 2018, 90, 101995. [Google Scholar] [CrossRef]
  27. Zheng, X.; Zhou, S.; Xu, R.; Chen, H. Energy-efficient scheduling for multi-objective two-stage flow shop using a hybrid ant colony optimisation algorithm. Int. J. Prod. Res. 2019, 12, 1–18. [Google Scholar] [CrossRef]
  28. Qian, S.Y.; Jia, Z.H.; Li, K. A multi-objective evolutionary algorithm based on adaptive clustering for energy-aware batch scheduling problem. Future Gener. Comput. Syst. 2020, 113, 441–453. [Google Scholar] [CrossRef]
  29. Lee, C.Y. Minimizing makespan on a single batch processing machine with dynamic job arrivals. Int. J. Prod. Res. 1999, 37, 219–236. [Google Scholar] [CrossRef]
Figure 1. The final batch assignments obtained by the SCT heuristic.
Figure 1. The final batch assignments obtained by the SCT heuristic.
Mathematics 12 00376 g001
Figure 2. The final batch assignments obtained by the MEC heuristic.
Figure 2. The final batch assignments obtained by the MEC heuristic.
Mathematics 12 00376 g002
Figure 3. The framework of the six heuristics in group one.
Figure 3. The framework of the six heuristics in group one.
Mathematics 12 00376 g003
Figure 4. The framework of the three heuristics in group two.
Figure 4. The framework of the three heuristics in group two.
Mathematics 12 00376 g004
Table 1. A 10 job problem instance with two machines.
Table 1. A 10 job problem instance with two machines.
Job j12345678910
t j 1 1271417973
t j 2 8358287162
t j m a x 8378487973
Table 2. The batches generated by heuristic FBLPT_max.
Table 2. The batches generated by heuristic FBLPT_max.
BatchB1B2B3B4B5
Job1,84,63,75,92,10
t b 1 91773
t b 2 88763
Table 3. The durations and prices of periods.
Table 3. The durations and prices of periods.
Periods12345678910
Duration7353328351
Price0.40.81.30.81.30.80.40.81.30.8
Table 4. The final job assignments by the three heuristics.
Table 4. The final job assignments by the three heuristics.
HeuristicsSPTMDPCMDEC
Machine 11,2,4,6,71,2,4,6,91,2,4,6,7
Machine 23,5,8,9,103,5,7,8,103,5,8,9,10
Table 5. TOU electricity prices.
Table 5. TOU electricity prices.
Period TypeElectricity PriceTime Periods
On-peak1.3 CNY/kWh10:00 a.m.–3:00 p.m.
6:00 p.m.–9:00 p.m.
Mid-peak0.8 CNY/kWh7:00 a.m.–10:00 a.m.
3:00 p.m.–6:00 p.m.
9:00 p.m.–11:00 p.m.
Off-peak0.4 CNY/kWh11:00 p.m.–7:00 a.m.
Table 6. Results obtained by the MILP and the second group of three heuristics for two machine instances.
Table 6. Results obtained by the MILP and the second group of three heuristics for two machine instances.
nNo.MILP SPT MDPC MDEC
FBLPT
P1
TEC C max Time (s)Gap (%)TEC C max Time (s)TEC C max Time (s)TEC C max Time (s)
20128.453412.160.0029.6540.0429.2530.0329.2530.03
229.65379.750.0031.2540.0334.0560.0332.0530.03
325.655123.280.0028.8560.0331.2560.0328.0570.03
433.254175.430.0040.0570.0444.8570.0340.8570.03
525.254174.880.0028.0570.0334.4570.0332.4570.03
50166.41513600.0650.0070.01700.2074.01700.2067.21700.20
272.01533600.0677.7978.81700.2380.81680.2074.41700.21
372.41513600.0176.2074.41470.2079.61700.2075.61470.21
4----66.01700.2272.01700.2263.21700.21
570.01683600.0778.2973.21700.2074.41700.1971.61700.21
1001286.83403600.1997.77148.43401.68156.83381.74145.63401.58
2----144.03381.52152.83171.56140.83401.51
3----138.03391.53146.43391.75136.43381.58
4----130.03401.47141.63381.75128.43391.57
5----114.83391.42127.63401.65116.03391.47
Table 7. Results obtained by the MILP and the second group of three heuristics for three-machine instances.
Table 7. Results obtained by the MILP and the second group of three heuristics for three-machine instances.
nNo.MILP SPT MDPC MDEC
FBLPT
P1
TEC C max Time (s)Gap (%)TEC C max Time (s)TEC C max Time (s)TEC C max Time (s)
20128.053160.520.0030.0300.0433.2310.0533.2310.04
226.855256.050.0032.0560.0332.0570.0534.4560.04
324.455184.980.0028.8560.0430.0560.0430.0560.04
425.649156.010.0032.8560.0329.6570.0432.8570.04
529.657235.000.0035.6560.0540.4560.0532.8560.04
50160.41683600.0366.9164.01700.2363.21700.2065.21700.24
254.01493600.0659.1155.61700.2361.6550.2158.0550.25
349.21683600.0469.6954.8550.2152.41690.2151.61690.21
460.01693600.0672.0268.4790.2468.81520.2465.61700.23
563.21473600.0566.9965.21700.2174.01700.2370.81700.22
1001----101.23401.46102.03401.44102.03402.28
2339.53403602.1198.0093.23401.5595.63391.5493.23402.12
3----111.63401.52113.63401.70112.43362.37
4----108.03401.62110.03391.39108.83402.06
5----102.03401.47104.03401.37105.63392.29
Table 8. The average T E C and C m a x obtained by the nine heuristics.
Table 8. The average T E C and C m a x obtained by the nine heuristics.
mnFBLPT_max FBLPT_avg FBLPT_min SPT MDPC MDEC
SCT MEC SCT MEC SCT MEC FBLPT
P1 P1 P1 P1
TEC C max TEC C max TEC C max TEC C max TEC C max TEC C max TEC C max TEC C max TEC C max
22046.556.243.656.244.756.439.857.144.456.739.456.629.554.532.153.130.454.4
50122.8166.4119.4168.0121.9169.6118.4169.8117.0167.9108.9169.772.2165.976.7166.270.6165.9
100247.8339.9240.1339.9248.4339.6232.0339.9234.3339.7221.8340.0136.2337.8337.0329.8137.0339.6
200482.7655.1472.1656.1469.4655.1442.4656.1437.2655.4403.7657.0260.2654.3275.6652.7260.0652.6
300728.8992.0696.5992.0700.0991.1664.3991.8667.2991.4635.7992.4387.6990.6415.0989.4378.8987.3
32055.055.651.056.551.455.147.857.553.756.444.856.930.045.831.346.431.148.5
50137.5157.7120.6166.4125.4161.1109.7168.0129.1162.5111.3166.263.8140.266.2154.765.3152.8
100262.2339.6225.6339.6242.1339.5199.3339.8230.4339.6193.8339.8107.0339.3108.6339.4107.6339.1
200526.2655.6448.6655.4489.4650.6400.9655.8476.7655.3397.8655.2222.4652.7225.2627.6224.9652.3
300796.9991.6690.2991.3739.4991.4611.0991.6715.0991.2608.0991.7334.2990.4338.3990.2337.7989.5
Table 9. The average run times of the heuristics.
Table 9. The average run times of the heuristics.
mnFBLPT_max FBLPT_avg FBLPT_min SPTMDPCMDEC
SCTMECSCTMECSCTMECFBLPT
P1 P1 P1 P1
2200.10.10.10.10.10.00.00.00.0
500.51.60.40.60.30.70.20.20.2
1004.520.382.940.12.6413.61.61.71.6
200307.6319.4244.0177.084.9376.417.117.917.1
300659.6437.9265.3556.1183.3572.177.494.089.1
3200.10.10.10.10.10.10.00.00.0
500.30.30.411.70.40.60.20.20.2
1001.661.91.618.41.767.021.51.52.2
20018.2139.616.1190.418.5370.915.115.015.2
30086.0256.777.7388.684.0504.664.052.252.3
Table 10. Results obtained by the second group of heuristics for five-machine instances.
Table 10. Results obtained by the second group of heuristics for five-machine instances.
nSPT MDPC MDEC
FBLPT
P1
TECCmaxTime (s)TECCmaxTime (s)TECCmaxTime (s)
2022.811.70.0525.122.00.0424.522.00.04
5045.535.00.2347.2105.50.2247.580.30.28
10073.254.51.4074.4207.51.4174.8207.41.58
200155.2446.014.35158.1520.418.86155.0496.718.71
300218.0804.176.49219.6989.177.93219.6987.680.32
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Feng, L.; Chen, G.; Zhou, S.; Zhou, X.; Jin, M. An Energy-Efficient Unrelated Parallel Machine Scheduling Problem with Batch Processing and Time-of-Use Electricity Prices. Mathematics 2024, 12, 376. https://doi.org/10.3390/math12030376

AMA Style

Feng L, Chen G, Zhou S, Zhou X, Jin M. An Energy-Efficient Unrelated Parallel Machine Scheduling Problem with Batch Processing and Time-of-Use Electricity Prices. Mathematics. 2024; 12(3):376. https://doi.org/10.3390/math12030376

Chicago/Turabian Style

Feng, Liman, Guo Chen, Shengchao Zhou, Xiaojun Zhou, and Mingzhou Jin. 2024. "An Energy-Efficient Unrelated Parallel Machine Scheduling Problem with Batch Processing and Time-of-Use Electricity Prices" Mathematics 12, no. 3: 376. https://doi.org/10.3390/math12030376

APA Style

Feng, L., Chen, G., Zhou, S., Zhou, X., & Jin, M. (2024). An Energy-Efficient Unrelated Parallel Machine Scheduling Problem with Batch Processing and Time-of-Use Electricity Prices. Mathematics, 12(3), 376. https://doi.org/10.3390/math12030376

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