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
Abstract
:1. Introduction
2. Literature Review
3. Mathematical Model Formulation
Mathematical Formulation
i, j | Number of jobs; i = 1, 2, …, I when i or j = 0, 0 represents the dummy node, which is always produced first in each machine |
n, m | Number of machines; m = 1, 2, …, M |
I | Total number of jobs |
M | Total number of machines |
Pjm | Processing time of job j on machine m (min) |
Ejm | Energy consumption for producing job j on machine m (THB); Thai baht; 1 THB: 0.032 USD |
B | Cost per hour of processing or all machines |
U | Allowed load difference between machines |
Ajm | Job‒machine restriction; Ajm = 1 when job j can produce on machine m |
Xijm | |
Yjm | |
Sjm | Start time of job j on machine m |
Cjm | Completion time of job j on machine m |
Dmn | Percentage of different completion time between machine m and n |
Lm | Workload of machine M |
4. The Proposed Methods
4.1. Generate an Initial Solution
4.1.1. The Decoding Methods
- Apply the rank order value (ROV) separately between job and machine vectors. The ROV of jobs is called the sequence of jobs in position i (SJi), and the sequence of machines 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 machine in position 2 of SMm, and so on (i + 1 to machine m + 1) until m = M. In the context of job machine restriction, job j is assigned to machine m only when job j is allowed to be produced in machine m. If job j is not allowed to be produced in machine m, job j is assigned to the next machine in the line.
- Continue assigning jobs in position I + 1 to the machine with the minimum total processing time among all M machines until all jobs are assigned to a machine.
- Calculate the completion time and energy consumption of the result in step 3.
4.1.2. An Example of the Decoding Method
- Step 1.
- Apply ROV to the job vector and machine vector separately from the smallest value to the largest value; the result of ROV is shown in Table 3.
- Step 2.
- Assign jobs 2, 1, and 10 to machines C, B, and A, respectively, then calculate the total processing time of each machine.
- Step 3.
- Assign job 4 to machine C, since it has the lowest total processing time; afterwards, jobs 9, 8, 5, 6, 3, and 7 are assigned to machines A, B, A, C, B, and B, respectively, with the same conditions.
4.2. Perform a Mutation Process
4.3. Perform a Recombination Process
4.4. Apply ALNS to Improve the Solution
4.4.1. Destruction Procedures
N-Random Removal
Algorithm 1 N-random removal |
1. Randomly select a value of N that lies between 2 and I (the number of jobs) 2. B = I; I = {Sequence of all jobs} 3. L = {} 4. While |L| < N do 4.1. Random i from B 4.2. I I {i} 4.3. L L {i} 5. Return L |
N-Shortest Greedy Removal
Algorithm 2 N-shortest greedy removal |
1. Randomly select a value of N that lies between 2 and I (the number of jobs) 2. B = I; I = {Sequence of all jobs} 3. L = {} 4. While |L| < N do 4.1. Calculate the attractiveness of selection to remove job i by using the formula below (Equation (19)) 4.2.Randomly select job i from set B using the roulette wheel selection method 4.3. L = L {i} 4.4. B = B {i} 5. Return L |
N-Longest Greedy Removal
Algorithm 3 N-longest greedy removal |
1. Randomly select a value of N that lies between 2 and I (the number of jobs) 2. B = I; I = {Sequence of all jobs} 3. L = {} 4. While |L| < N do 4.1. Calculate the attractiveness of selection to remove job i by using the formula that follows (Equation (20)) 4.2. Randomly select job i from set B using the roulette wheel selection method 4.3. L = L {i} 4.4. B = B {i} 5. Return L |
N-Two-Tails Removal
Algorithm 4 N-two-tails removal |
1. Randomly select a value of N that lies between 2 and I (the number of jobs) 2. B = I; I = {Sequence of all jobs} 3. L = {1, 2, …, N−1, N} 4. While |L| < N do 4.1. Calculate the attractiveness of selection to remove jobs j by using Equation (19) 4.2. Randomly select job i from set B using the roulette wheel selection method 4.3. Put in the selected job in 4.2 according to this sequence of L {1, N, 2, N−1,…) 4.4. B = B {i} 5. Return L |
N-Jobs-String Removal
Algorithm 5 N-jobs-string removal |
1. Randomly select a value of N that lies between 2 and I (the number of jobs) 2. B = I; I = {Sequence of all jobs} 3. L = {} 4. Randomly select the position of job in sequence B and name it position e 5. Remove the job in position e + N − 1 from list B 6. Insert the removed job into list L |
4.4.2. Repairing Procedure
Best Insertion
Algorithm 6 Best insertion |
1. B = L {a, b, c, d, …, Z } 2. While |B| > 0 do Insert job in position a into the machine that currently has the lowest energy consumption among all M machines (except the machine that it has been removed from). |
Random Insertion
Algorithm 7 Random insertion |
1. B = L 2. While |B| > 0 do Insert the job in B list into a randomly selected machine that is not the machine that the job has been removed from. |
Cyclic Insertion
Algorithm 8 Cyclic insertion |
|
4.5. Perform Solution Acceptance
4.6. Perform the Selection Procedure
5. Computational Framework and Results
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- 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]
- 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]
- 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]
- 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]
- 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]
- 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]
- 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]
- 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]
- 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]
- Keskinturk, T.; Yildirim, M.B.; Barut, M. An Ant Colony Optimization Algorithm for Load Balancing in Parallel Machines with Sequence-Dependent Setup Times. Comput. Oper. Res. 2012, 39, 1225–1235. [Google Scholar] [CrossRef] [Green Version]
- Kones, I.; Levin, A. A Unified Framework for Designing EPTAS for Load Balancing on Parallel Machines. Algorithmica 2019, 81, 3025–3046. [Google Scholar] [CrossRef]
- 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]
- 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]
- 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]
- 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]
- 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, 58, 1–19. [Google Scholar] [CrossRef]
- 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]
- 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]
- Aubry, A.; Rossi, A.; Espinouse, M.-L.; Jacomino, M. Minimizing Setup Costs for Parallel Multi-Purpose Machines under Load-Balancing Constraint. Eur. J. Oper. Res. 2008, 187, 1115–1125. [Google Scholar] [CrossRef]
- Eltaeib, T.; Mahmood, A. Differential Evolution: A Survey and Analysis. Appl. Sci. 2018, 8, 1945. [Google Scholar] [CrossRef] [Green Version]
- 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]
- 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]
- 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]
- Wu, X.; Che, A. A Memetic Differential Evolution Algorithm for Energy-Efficient Parallel Machine Scheduling. Omega 2019, 82, 155–165. [Google Scholar] [CrossRef]
- 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, 58, 1–17. [Google Scholar] [CrossRef]
- Qin, A.K.; Huang, V.L.; Suganthan, P.N. Differential Evolution Algorithm with Strategy Adaptation for Global Numerical Optimization. IEEE Trans. Evol. Comput. 2009, 13, 398–417. [Google Scholar] [CrossRef]
- Praseeratasang, N.; Pitakaso, R.; Sethanan, K.; Kosacka-Olejnik, M.; kaewman, S.; 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]
- Rajakumar, S.; Arunachalam, V.P.; Selladurai, V. Workflow Balancing in Parallel Machines through Genetic Algorithm. Int. J. Adv. Manuf. Technol. 2006, 33, 1212–1221. [Google Scholar] [CrossRef]
- Miwa, T.; Nishihara, N.; Yamamoto, K. Automated Stepper Load Balance Allocation System. IEEE Trans. Semicond. Manuf. 2005, 18, 510–516. [Google Scholar] [CrossRef]
- Zhang, Y.; Hou, S.; Chang, L. Optimization of Particle Genetic Algorithm Based on Time Load Balancing for Cloud Task Scheduling in Cloud Task Planning. Int. J. Perform. Eng. 2018. [Google Scholar] [CrossRef]
- Jouhari, H.; Lei, D.; Al-qaness, M.A.A.; Elaziz, M.A.; Ewees, A.A.; Farouk, O. Sine-Cosine Algorithm to Enhance Simulated Annealing for Unrelated Parallel Machine Scheduling with Setup Times. Mathematics 2019, 7, 1120. [Google Scholar] [CrossRef] [Green Version]
- Lee, J.-H.; Jang, H. Uniform Parallel Machine Scheduling with Dedicated Machines, Job Splitting and Setup Resources. Sustainability 2019, 11, 7137. [Google Scholar] [CrossRef] [Green Version]
- Zhang, B.; Wu, D.; Song, Y.; Liu, K.; Xiong, J. A Novel Fast Parallel Batch Scheduling Algorithm for Solving the Independent Job Problem. Appl. Sci. 2020, 10, 460. [Google Scholar] [CrossRef] [Green Version]
- Jouhari, H.; Lei, D.; Al-qaness, M.A.A.; Elaziz, M.A.; Damaševičius, R.; Korytkowski, M.; Ewees, A.A. Modified Harris Hawks Optimizer for Solving Machine Scheduling Problems. Symmetry 2020, 12, 1460. [Google Scholar] [CrossRef]
- 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]
- Shim, S.-O.; Park, K. Technology for Production Scheduling of Jobs for Open Innovation and Sustainability with Fixed Processing Property on Parallel Machines. Sustainability 2016, 8, 904. [Google Scholar] [CrossRef] [Green Version]
- Arnaout, J.-P. A Worm Optimization Algorithm to Minimize the Makespan on Unrelated Parallel Machines with Sequence-Dependent Setup Times. Ann. Oper. Res. 2019, 285, 273–293. [Google Scholar] [CrossRef] [Green Version]
- Ouazene, Y.; Hnaien, F.; Yalaoui, F.; Amodeo, L. The Joint Load Balancing and Parallel Machine Scheduling Problem. Oper. Res. Proc. 2011, 497–502. [Google Scholar] [CrossRef]
- Mouzon, G.; Yildirim, M.B.; Twomey, J. Operational Methods for Minimization of Energy Consumption of Manufacturing Equipment. Int. J. Prod. Res. 2007, 45, 4247–4271. [Google Scholar] [CrossRef] [Green Version]
- Angel, E.; Bampis, E.; Kacem, F. Energy Aware Scheduling for Unrelated Parallel Machines. Available online: https://ieeexplore.ieee.org/abstract/document/6468361 (accessed on 27 February 2021). [CrossRef]
- 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]
- 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]
- 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]
- 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]
- 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]
- 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]
- 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://ieeexplore.ieee.org/abstract/document/7969312 (accessed on 26 February 2021).
Vector | Job’s Vector | Machine’s Vector | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Position | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | A | B | C |
1 | 0.19 | 0.11 | 0.74 | 0.27 | 0.51 | 0.51 | 0.79 | 0.39 | 0.29 | 0.25 | 0.75 | 0.33 | 0.26 |
2 | 0.62 | 0.03 | 0.14 | 0.02 | 0.11 | 0.71 | 0.37 | 0.01 | 0.43 | 0.88 | 0.52 | 0.39 | 0.62 |
3 | 0.74 | 0.75 | 0.77 | 0.91 | 0.84 | 0.24 | 0.90 | 0.74 | 0.21 | 0.18 | 0.93 | 0.26 | 0.06 |
4 | 0.50 | 0.20 | 0.61 | 0.76 | 0.41 | 0.31 | 0.27 | 0.03 | 0.03 | 0.50 | 0.49 | 0.12 | 0.82 |
5 | 0.66 | 0.33 | 0.36 | 0.34 | 0.67 | 0.95 | 0.05 | 0.72 | 0.47 | 0.65 | 0.00 | 0.31 | 0.07 |
Job i | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Pjm | M/C m | A | 20 | 29 | 17 | 21 | 27 | 21 | 16 | 24 | 19 | 21 |
B | 30 | 23 | 20 | 21 | 19 | 20 | 27 | 16 | 17 | 22 | ||
C | 19 | 20 | 30 | 21 | 24 | 18 | 30 | 29 | 22 | 28 | ||
Ejm | M/C m | A | 43 | 14 | 35 | 41 | 17 | 10 | 31 | 12 | 45 | 19 |
B | 20 | 41 | 38 | 49 | 17 | 36 | 34 | 10 | 13 | 40 | ||
C | 10 | 39 | 33 | 25 | 11 | 17 | 16 | 33 | 37 | 42 |
Vector | Job | Machine | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Vector before ROV | Job‒Machine | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | A | B | C |
Value in position | 0.19 | 0.11 | 0.74 | 0.27 | 0.51 | 0.51 | 0.79 | 0.39 | 0.29 | 0.25 | 0.75 | 0.33 | 0.26 | |
Vector after ROV | Job‒Machine | 2 | 1 | 10 | 4 | 9 | 8 | 5 | 6 | 3 | 7 | C | B | A |
Value in Position | 0.11 | 0.19 | 0.25 | 0.27 | 0.29 | 0.39 | 0.51 | 0.51 | 0.74 | 0.79 | 0.26 | 0.33 | 0.75 |
Job | 2 | 1 | 10 | 4 | 9 | 8 | 5 | 6 | 3 | 7 |
---|---|---|---|---|---|---|---|---|---|---|
Machine | C | B | A | C | A | B | A | C | B | B |
Energy used (THB) | 39 | 20 | 19 | 25 | 45 | 10 | 17 | 17 | 38 | 34 |
Group Test Instance | Number of Test Instances | Pjm (min) | Number of Job | Number of Machine | Ejm (THB) | U | B (THB) |
---|---|---|---|---|---|---|---|
Small | 12 | 4–20 | 5–15 | 3–5 | 30–75 | 5–20 | 10–100 |
Medium | 12 | 4–20 | 20–28 | 5–7 | 30–75 | 5–20 | 10–100 |
Large | 12 | 4–20 | 70–130 | 5–7 | 30–75 | 5–20 | 10–100 |
Case study | 1 | 4–20 | 187 | 8 | 30–75 | 5–20 | 10–100 |
Algorithm | Detail | Mutation Formula | Recombination Formula | Selection Formula |
---|---|---|---|---|
DE | Traditional DE | 14 | 16 | 19 |
MDE-1 | Modified DE-1 | 14 | 17 | 19 |
MDE-2 | Modified DE-2 | 15 | 16 | 19 |
MDE-3 | Modified DE-3 | 15 | 17 | 19 |
ALNS | Adaptive large neighborhood search | - | - | - |
HyDE-ALNS-1 | Hybrid DE and ALNS-1 | 14 | 17 | 19 |
HyDE-ALNS-2 | Hybrid DE and ALNS-2 | 15 | 16 | 19 |
HyDE-ALNS-3 | Hybrid DE and ALNS-3 | 15 | 17 | 19 |
Exact Method | Original Method (THB) | Proposed Methods (THB) | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
No | Job | m | Obj. (THB) | Com. Time (s) | DE | ALNS | MDE-1 | MDE-2 | MDE-3 | HyDE-ALNS-1 | HyDE-ALNS-3 | HyDE-ALNS-3 |
S-1 | 5 | 3 | 472 | 872 | 472 | 472 | 472 | 472 | 472 | 472 | 472 | 472 |
S-2 | 6 | 3 | 528 | 651 | 528 | 528 | 528 | 528 | 528 | 528 | 528 | 528 |
S-3 | 7 | 3 | 635 | 2056 | 635 | 635 | 635 | 635 | 635 | 635 | 635 | 635 |
S-4 | 8 | 3 | 735 | 1843 | 735 | 735 | 735 | 735 | 735 | 735 | 735 | 735 |
S-5 | 8 | 4 | 649 | 4561 | 649 | 649 | 649 | 649 | 649 | 649 | 649 | 649 |
S-6 | 10 | 4 | 834 | 86,400 | 878 | 834 | 834 | 834 | 834 | 834 | 834 | 834 |
S-7 | 11 | 4 | 840 | 86,400 | 858 | 848 | 840 | 851 | 851 | 840 | 840 | 840 |
S-8 | 12 | 4 | 826 | 86,400 | 826 | 840 | 834 | 843 | 826 | 826 | 826 | 826 |
S-9 | 12 | 5 | 842 | 20,787 | 842 | 842 | 842 | 842 | 842 | 842 | 842 | 842 |
S-10 | 12 | 5 | 631 | 21,894 | 651 | 631 | 640 | 647 | 640 | 631 | 631 | 631 |
S-11 | 14 | 5 | 845 | 86,400 | 845 | 889 | 845 | 845 | 845 | 845 | 845 | 845 |
S-12 | 15 | 5 | 921 | 48,890 | 949 | 934 | 934 | 921 | 921 | 921 | 921 | 921 |
Number of times that the proposed method can find the optimal solution (NTO) | 8 | 8 | 9 | 9 | 10 | 12 | 12 | 12 | ||||
%NTO | 66.7% | 66.7% | 75% | 75% | 83.3% | 100% | 100% | 100% |
DE | ALNS | MDE-1 | MDE-2 | MDE-3 | HyDE-ALNS-1 | HyDE-ALNS-2 | HyDE-ALNS-3 | |
---|---|---|---|---|---|---|---|---|
Lingo | 0.056 | 0.106 | 0.090 | 0.088 | 0.168 | 0.000 | 0.000 | 0.000 |
DE | 0.674 | 0.126 | 0.250 | 0.094 | 0.056 | 0.056 | 0.056 | |
ALNS | 0.307 | 0.497 | 0.243 | 0.106 | 0.106 | 0.106 | ||
MDE-1 | 0.518 | 0.617 | 0.090 | 0.090 | 0.090 | |||
MDE-2 | 0.204 | 0.088 | 0.088 | 0.088 | ||||
MDE-3 | 0.168 | 0.168 | 0.168 | |||||
HyDE-ALNS-1 | 0.000 | 0.000 | ||||||
HyDE-ALNS-2 | 0.000 |
Lingo | Original Method (s) | Proposed Methods (s) | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
No | Optimal Solution | Com. Time (s) | DE | ALNS | MDE-1 | MDE-2 | MDE-3 | HyDE-ALNS-1 | HyDE-ALNS-3 | HyDE-ALNS-3 |
S-1 | 472 | 872 | 62.8 | 61.4 | 64.3 | 56.7 | 54.8 | 57.5 | 57.1 | 55.9 |
S-2 | 528 | 651 | 68.9 | 70.7 | 75 | 65.5 | 62.5 | 69.3 | 69.9 | 64.5 |
S-3 | 635 | 2056 | 78.4 | 79.1 | 74.9 | 75.1 | 72.3 | 65 | 64.5 | 62.9 |
S-4 | 735 | 1843 | 85.8 | 82.5 | 104.4 | 75.2 | 72.8 | 95.5 | 95.8 | 90.3 |
S-5 | 649 | 4561 | 112.8 | 120.6 | 130.6 | 105.5 | 102.3 | 112.9 | 114.3 | 105.8 |
S-6 | 834 | 86,400 | N/A | 133.9 | 145.9 | 128.3 | 120.5 | 122.6 | 124.5 | 120.7 |
S-7 | 840 | 86,400 | N/A | N/A | 64.3 | N/A | N/A | 131.3 | 131.1 | 128.6 |
S-8 | 826 | 86,400 | 150.8 | N/A | N/A | N/A | 139.4 | 141.4 | 143.3 | 135 |
S-9 | 842 | 20,787 | 152.3 | 155.7 | 147.1 | 148.9 | 145.6 | 140.8 | 140.9 | 132.8 |
S-10 | 631 | 21,894 | N/A | 161.3 | N/A | N/A | N/A | 142.3 | 142.2 | 141.3 |
S-11 | 845 | 86,400 | 160.1 | N/A | 154.4 | 152.8 | 150.7 | 139.9 | 140.8 | 138.7 |
S-12 | 921 | 86,400 | N/A | N/A | N/A | 154.3 | 150.8 | 57.5 | 57.1 | 55.9 |
Average computational time (s) | 43,981.09 | 115.59 | 114.83 | 112.08 | 113.20 | 112.99 | 110.77 | 108.22 | 106.95 |
DE | ALNS | MDE-1 | MDE-2 | MDE-3 | HyDE-ALNS-1 | HyDE-ALNS-2 | HyDE-ALNS-3 | |
---|---|---|---|---|---|---|---|---|
Lingo | 0.006 | 0.006 | 0.006 | 0.006 | 0.006 | 0.006 | 0.006 | 0.006 |
DE | 0.146 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | |
ALNS | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | ||
MDE-1 | 0.638 | 0.000 | 0.000 | 0.000 | 0.000 | |||
MDE-2 | 0.000 | 0.000 | 0.000 | 0.000 | ||||
MDE-3 | 0.000 | 0.000 | 0.000 | |||||
HyDE-ALNS-1 | 0.037 | 0.000 | ||||||
HyDE-ALNS-2 | 0.000 |
No | Job | m | Exct Method | Traditional Methods | Proposed Methods | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Lingo v.11 | DE | ALNS | MDE-1 | MDE-2 | MDE-3 | HyDE-ALNS-1 | HyDE-ALNS-2 | HyDE-ALNS-3 | |||
M-1 | 20 | 5 | 1682 | 1411 | 1402 | 1368 | 1377 | 1302 | 1269 | 1258 | 1180 |
M-2 | 20 | 6 | 1559 | 1428 | 1411 | 1357 | 1365 | 1349 | 1295 | 1289 | 1268 |
M-3 | 22 | 5 | 1572 | 1597 | 1602 | 1569 | 1551 | 1523 | 1466 | 1452 | 1410 |
M-4 | 22 | 6 | 1648 | 1633 | 1604 | 1578 | 1564 | 1550 | 1503 | 1494 | 1460 |
M-5 | 23 | 5 | 1694 | 1792 | 1811 | 1786 | 1767 | 1733 | 1692 | 1673 | 1628 |
M-6 | 23 | 6 | 1780 | 1698 | 1702 | 1665 | 1653 | 1602 | 1564 | 1538 | 1497 |
M-7 | 25 | 5 | 1951 | 1867 | 1836 | 1783 | 1774 | 1746 | 1670 | 1649 | 1577 |
M-8 | 25 | 6 | 1997 | 1883 | 1845 | 1794 | 1683 | 1679 | 1604 | 1610 | 1564 |
M-9 | 26 | 6 | 1965 | 1817 | 1840 | 1788 | 1791 | 1784 | 1659 | 1655 | 1618 |
M-10 | 28 | 5 | 1963 | 1872 | 1889 | 1806 | 1796 | 1788 | 1748 | 1752 | 1713 |
M-11 | 28 | 6 | 2074 | 1898 | 1894 | 1887 | 1873 | 1845 | 1785 | 1794 | 1756 |
M-12 | 28 | 7 | 1985 | 1953 | 1904 | 1881 | 1889 | 1867 | 1844 | 1813 | 1788 |
DE | ALNS | MDE-1 | MDE-2 | MDE-3 | HyDE-ALNS-1 | HyDE-ALNS-2 | HyDE-ALNS-3 | |
---|---|---|---|---|---|---|---|---|
Lingo | 0.011 | 0.008 | 0.001 | 0.001 | 0.000 | 0.000 | 0.000 | 0.000 |
DE | 0.242 | 0.001 | 0.001 | 0.000 | 0.000 | 0.000 | 0.000 | |
ALNS | 0.000 | 0.001 | 0.000 | 0.000 | 0.000 | 0.000 | ||
MDE-1 | 0.135 | 0.001 | 0.000 | 0.000 | 0.000 | |||
MDE-2 | 0.001 | 0.000 | 0.000 | 0.000 | ||||
MDE-3 | 0.000 | 0.000 | 0.000 | |||||
HyDE-ALNS-1 | 0.018 | 0.000 | ||||||
HyDE-ALNS-2 | 0.000 |
Exact Method | Traditional Method | Proposed Methods | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
No | Job | m | Lingo v.11 | DE | ALNS | MDE-1 | MDE-2 | MDE-3 | HyDE-ALNS-1 | HyDE-ALNS-2 | HyDE-ALNS-3 |
L-1 | 70 | 5 | 6073 | 5923 | 5976 | 5892 | 5883 | 5749 | 5650 | 5590 | 5583 |
L-2 | 75 | 6 | 7045 | 6905 | 6891 | 6567 | 6459 | 6415 | 6231 | 6140 | 6018 |
L-3 | 75 | 7 | 7546 | 7157 | 7024 | 6981 | 6878 | 6894 | 6754 | 6765 | 6441 |
L-4 | 80 | 5 | 14,092 | 13,454 | 13,569 | 13,268 | 13,226 | 13,128 | 12,557 | 12,446 | 12,374 |
L-5 | 80 | 6 | 12,696 | 12,549 | 12,344 | 12,381 | 12,343 | 12,271 | 11,867 | 11,374 | 10,578 |
L-6 | 86 | 6 | 14,568 | 14,295 | 14,101 | 13,619 | 13,781 | 13,789 | 12,572 | 12,994 | 12,853 |
L-7 | 90 | 5 | 14,718 | 14,024 | 14,018 | 13,784 | 13,689 | 13,761 | 12,358 | 12,254 | 12,018 |
L-8 | 90 | 6 | 13,893 | 13,456 | 13,568 | 13,287 | 13,131 | 13,012 | 12,476 | 12,178 | 11,081 |
L-9 | 94 | 7 | 14,012 | 13,567 | 13,582 | 13,310 | 13,289 | 13,238 | 12,074 | 11,842 | 11,384 |
L-10 | 123 | 5 | 17,899 | 16,448 | 16,454 | 16,128 | 16,024 | 15,992 | 15,198 | 15,128 | 14,485 |
L-11 | 123 | 6 | 16,983 | 15,410 | 15,429 | 15,328 | 15,227 | 15,198 | 14,023 | 13,987 | 13,208 |
L-12 | 130 | 7 | 17,589 | 16,982 | 16,884 | 16,348 | 16,245 | 16,124 | 14,539 | 14,483 | 14,192 |
C-1 | 187 | 8 | 32,819 | 31,348 | 30,120 | 29,627 | 29,985 | 29,322 | 25,356 | 26,450 | 25,783 |
DE | ALNS | MDE-1 | MDE-2 | MDE-3 | HyDE-ALNS-1 | HyDE-ALNS-2 | HyDE-ALNS-3 | |
---|---|---|---|---|---|---|---|---|
Lingo | 0.001 | 0.002 | 0.001 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
DE | 0.239 | 0.009 | 0.001 | 0.003 | 0.001 | 0.000 | 0.000 | |
ALNS | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | ||
MDE-1 | 0.490 | 0.002 | 0.000 | 0.000 | 0.000 | |||
MDE-2 | 0.075 | 0.001 | 0.001 | 0.000 | ||||
MDE-3 | 0.002 | 0.001 | 0.000 | |||||
HyDE-ALNS-1 | 0.987 | 0.013 | ||||||
HyDE-ALNS-2 | 0.001 |
Instance | Objective Function (THB) | ||||||
---|---|---|---|---|---|---|---|
HyDE-ALNS-2.0 | HyDE-ALNS-2.5 | HyDE-ALNS-5 | HyDE-ALNS-10 | HyDE-ALNS-15 | HyDE-ALNS- 20 | HyDE-ALNS-25 | |
M-1 | 1342 | 1342 | 1248 | 1180 | 1180 | 1180 | 1180 |
M-2 | 1440 | 1440 | 1362 | 1268 | 1268 | 1190 | 1190 |
M-3 | 1539 | 1539 | 1539 | 1410 | 1410 | 1410 | 1375 |
M-4 | 1553 | 1553 | 1553 | 1460 | 1460 | 1386 | 1386 |
M-5 | 1756 | 1756 | 1756 | 1628 | 1628 | 1573 | 1573 |
M-6 | 1559 | 1559 | 1559 | 1559 | 1497 | 1497 | 1497 |
M-7 | 1676 | 1676 | 1676 | 1577 | 1577 | 1510 | 1510 |
M-8 | 1679 | 1679 | 1602 | 1602 | 1564 | 1564 | 1564 |
M-9 | 1717 | 1717 | 1694 | 1618 | 1618 | 1594 | 1594 |
M-10 | 1803 | 1803 | 1713 | 1713 | 1713 | 1688 | 1688 |
M-11 | 1859 | 1859 | 1756 | 1756 | 1756 | 1756 | 1675 |
M-12 | 1890 | 1890 | 1853 | 1788 | 1788 | 1788 | 1788 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
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. https://doi.org/10.3390/su13105470
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(10):5470. https://doi.org/10.3390/su13105470
Chicago/Turabian StyleNanthapodej, Rujapa, Cheng-Hsiang Liu, Krisanarach Nitisiri, and Sirorat Pattanapairoj. 2021. "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 13, no. 10: 5470. https://doi.org/10.3390/su13105470
APA StyleNanthapodej, R., Liu, C. -H., Nitisiri, K., & Pattanapairoj, S. (2021). 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, 13(10), 5470. https://doi.org/10.3390/su13105470