The Unrelated Parallel Machine Scheduling with a Dependent Time Setup using Ant Colony Optimization Algorithm

The unrelated parallel machine scheduling (PMS) problem is essential for the manufacturing industry. Scheduling will save company resources, especially time management. By solving scheduling problems quickly and precisely, the company can get more profit. On that note, this paper focused on unrelated PMS problems, which did not consider the inherent uncertainty in processing time and set up time by minimizing the makespan and tardiness. This paper aimed to minimize the makespan and tardiness using timing considerations. This paper described how to schedule unrelated parallel machines using the Ant Colony Optimization (ACO) Algorithm approach. The ACO is beneficial for inherent parallelism problems and can provide fast and reasonable solutions. This study revealed that the results of ACO Algorithm scheduling were obtained under a steady condition in iteration 30467. This condition can be interpreted that the makespan and tardiness value is close to 2.75%. By minimizing the makespan and tardiness, the delay of product delivery to consumers can be anticipated. Moreover, a company can maintain customer satisfaction and increase its profit.


Introduction
Economic growth has been skyrocketing as more countries are open to global trade. Nations race to innovate and develop their respective industries to compete for market domination. Indonesia joins the bandwagon and continuously improves its capabilities in the manufacturing industry and development. Many companies adopt a production optimization approach. There are important aspects to optimize production. Production scheduling is one of the most important aspects to seize market opportunities with the shortest production cycle and maximum profit [1]. Besides, production scheduling is the decision-making process associated with allocating resources to tasks on machines to optimize one or more scheduling purposes [2]. Scheduling problems have an important role in recent years due to the increased consumer demand for variety, reduced product life cycle, market changes with global competition, and rapid development of new technologies [3]. Production scheduling also has a vital role in supporting company activities. Scheduling functions to support continuous and smooth production in filling up market needs. Parallel machine scheduling (PMS) is a problem related to allocating a set of jobs to several machines to fulfill demands. PMS can generally be classified into identical, uniform, and unrelated parallel machine scheduling problems [4]. 1 Faculty of Engineering, Department of Industrial Engineering, Universitas Pembangunan Nasional "Veteran" Jawa Timur. Jl. Rya Rungkut Madya, Surabaya 60294 Indonesia. Email: farida.ti@upnjatim.ac.id, triyono.mdr@gmail.com * Corresponding author Scheduling unrelated parallel machines is a generalization of two other categories of which different machines perform similar functions but have different processing capabilities or capacities. In real life, the scheduling of unrelated parallel machines is a challenge for researchers and practitioners because the problem of NP-hard can minimize the makespan time for several jobs in unrelated parallel machines [5]. Several studies present the problem of unrelated PMS, which involves the makespan considerations [6,7,8,9]. The novelty of this paper focuses on the problem of scheduling the parallel machines that are not related by considering the inherent uncertainty in processing and setting uptime. The practical implication of this paper is how to minimize the makespan by scheduling the appropriate number of jobs and machines. On the other hand, another benefit is that a company can perform other work with a lower makespan to make it more profits. This research road map is presented in Table 1. PT. Asia Plastic is a company engaging in plastic packagings, such as plastic bags, plastic bottle caps, and other plastic materials. The company uses injection molding and blow molding machines and several machines using power jet technology in producing plastic packaging. The use of machines with new technology and modern equipment will support the production process. The company's operation is based on the Make to Order concept (products manufactured based on customer orders). Consequently, the company's production is highly dependent on the demand from other companies. Moreover, the company's productions and engine needs are not fixed. One of the frequent obstacles is unpredictable (non-deterministic) work, making the planned production schedule needs to be changed. These constraints also lead to a longer completion time. So far, the companies' scheduling tends to apply the First Come First Out (FCFO) and Earliest Due Date (EDD) rules. These types of scheduling are deemed ineffective because the length of order fulfillment time often results in late order fulfillment, frequently idle machines, and frequently sudden schedule changes that can disrupt the company's smooth production activities. The company typically purchases raw material and starts the production planning process only when a client's order is confirmed. Because the company does not make forecasts and initial preparation, the number of orders is beyond capacity. Consequently, many production processes are exceeding the due date. The researchers were encouraged to investigate scheduling unrelated parallel machines to time processing and time management based on the previous discussion. This study aimed to plan order-based production scheduling in the production process and to facilitate completion. The researchers employed the Ant Colony Optimization (ACO) Algorithm to solve parallel machine scheduling problems. In some cases, different ACOs, such as single machine scheduling [10,11,12,13], flow shop scheduling [14,15,16,17,18,19], and parallel machine scheduling identical [20,21] could provide best results. ACO Algorithm was used to plan the production schedule according to the standard time required by the machine of each order type. This scheduling was implemented to get the best implementation time. Client orders were adjusted by the machine types and the production target's required numbers.

Methods
Scheduling is necessary to reduce the allocation of operator power, machinery, and production equipment and make other aspects more efficient. Scheduling is pivotal to make decisions in a sustainable production process. The scheduling problem refers to allocating work to the machine with limited capacity  [10] To minimize total tardiness GA, Simulated Annealing (SA), and Branch and Bound Song et al. [1] To minimize the makespan by employing SMS problem with sequence-dependent setup time EDD, SDST, and ACO Jia et al. [12] To minimize the makespan and the total rejection cost on BPMs ACO, LACO, and PACO Li et al. [13] To minimize the makespan Weighted Shortest Processing Time (WSPT) and ACO 2 Flow shop Huang and Yu [14] To create computational time and stability ACO Qin et al. [15] To reduce the rescheduling frequency Rolling Horizon Procedure (RHP) and ACO 3 Job shop Huang et al. [16] To minimize the makespan ACO and PSO Khan et al. [17] To minimize the makespan ACO El Khoukhi et al. [18] To minimize the makespan Dual-Ants Colony (DAC) Wang et al. [19] to optimize the makespan for FJSP Improved Ant Colony Optimization (IACO) 4 Identical parallel machine scheduling Tavares Neto et al. [20] To minimize the sum of outsources and delay costs ACO Öztürkoğlu, [21] To increasing processing times of jobs ACO and SA 5 Unrelated parallel machine Arnaout, et al. [22] To minimize the makespan Two-stage Ant Colony Optimization (ACO) and TS Jia et al. [23] To and amount on that condition. In general, scheduling problems can be explained as n jobs (J1, J2, …, Jn) to process on m machines (M1, M2, ..., Mn). The time needed to process J1 work on machine M is P. Each job must be processed without quitting during the processing time. The machine can only handle one job at the same time and is always available from zero time. Pinedo [2] classifies parallel scheduling into: single-engine scheduling and parallel scheduling of parallel machines.

Problem Formulation
In the case of PMS, a set of independent jobs must be scheduled on the machine without preemption. In this paper, the problem situation referred to each job with a processing time, release date, and due date. This paper also considered the order-dependent setup time related to the setup time when the machine switched production from one job to another. Without eliminating the general nature, this research employed mathematical modeling according to the ACO algorithm parameter. The difference between this study and Guniet [22] lay in the machines' performance, creating different processing times, release dates, and due dates. The goal of the previous studies was only a shorter total of work completion.
We assumed that if the work was scheduled on the machine, no adjustment time was required. However, there were some restrictions and assumptions. 1. During the process, there was no stoppage. 2. The machine was ready to operate and produce.
3. There were no damage and repair to the engine. 4. Each machine could only do one job at a time. 5. Each job could only be processed once.
Some notations are defined below. : Number of jobs to process : Number of machines : Index of jobs : Index of machines : The maximum completion time of jobs, i.e., the makespan : The completion time of job : The processing time of job on machine : The setup times of processing job right after job on machine : The setup times of processing job first on machine : A binary variable equal to 1 if job is processed right after job on machine k, 0 otherwise : A binary variable equal to 1 if job is processed at the first time on machine , 0 otherwise : A binary variable equal to 1 if job is processed at the last time on machine , 0 otherwise : A very large constant Based on the previous assumptions and notations mentioned, the problem in questions can be formulated as follows (see [24,25]): , , ∈ {0,1}, ∀ , = 0,1, … , ; ∀ = 1,2, … , , Equations (1), (2), (3) and (4) are objective functions. Equation (5) ensures that each job must be processed only once. Equation (6) implies that each work has a predecessor and successor. Note that, J0 job is used to present the first job on the machine. Equation (7) ensures that the processing of a job must begin after the completion of its predecessor. Equation (8) ensures that each machine only has one job during the process. Equation (9) defines binary variables. Equation (10) implies that the completion time for a job is zero. Equation (11) ensures that the completion time of regular work is not negative.

Scheduling-Based Ant Colony Optimization
Marco Dorigo first introduced the ant colony algorithm. It is a probability technique for solving computational problems by finding the best path through graphs. The behavior of ants inspired this algorithm in finding pathways from their colonies from looking for food.
In the real world, ants travel around randomly. When finding food, they return to their colonies while giving signals with pheromone traces. If other ants find the path, they will not travel randomly anymore but will follow the trail, return and strengthen the pheromone if they have found food in the end.
When an ant leaves its nest, it begins to schedule production orders until it finds food (which means that the required work has been scheduled). Ants' order scheduling means that the given node is selected and put on the path to food.
An ant randomly chooses the next operation (or the next node to go) based on the processing time of the operation and on the number of pheromones available at the edge to connect the node of the ant's current position and other possible nodes. The more pheromones in the bow (tip) are the more likely the ant will choose it.
An ant's scheduling of all possible operations indicates that it has reached a food source, and one trip is completed. The solution found by each ant is analyzed and depends on the quality of the responses. Each ant pathway created will get a certain amount of pheromone according to the quality criteria previously set (the better the schedule is, the more pheromones will be stored in each arch on the track).
Since the probability of selecting a node also depends on the number of pheromones in the arc, better solutions tend to influence other ants to choose the same path in the future. When all ants complete the required number of trips, the scheduling process ends, and the best responses are presented [26]. Dorigo et al., [27] revealed the ant algorithm steps, which were then adjusted to the parallel machine production scheduling application. These steps are presented as follows.

Initializing the parameters of algorithms
In the ant algorithm, several parameters entered as an initial initialization to perform the optimization process. Some of these parameters are: = Pheromone intensity on the path between node (job) and node (job) = Probability of path from a node (job) to node (job) by machine k 4. Job sequence search with the optimal makespan and total tardiness The objective function can be calculated using eq: Minimize: where is completion time job on machine .
Minimize: 6. If the stop is fulfilled (convergent conditions on the route is produced by the previous route) or the max number of iterations has been completed, take the job/operation sequence with the smallest makespan and tardiness; if not, return to step two. If iteration > maximum iteration, go to step seven. 7. Terminating the ACO algorithm.

Results and Discussions
This paper employed the ACO algorithm because it is exact and can quickly resolve unrelated parallel problems. Here is a set of instances for the numerical experiments. For preliminary investigation, the researcher compared the ACO with other methods to    Table 2. Comparing between the five methods (Table 3) showed that the ACO Algorithm has the smallest makespan and tardiness. We compare five heuristics methods to test whether ACO can produce the smallest makespan and tardiness (Tables 4 and 5). We use three parameters, i.e., number of jobs, processing time, and due date. Moreover, we test the setting ten times.
Data were collected through three techniques. First, the observation technique was conducted to collect data by directing observation on the studied object. Second, the interview technique focused on the employees by holding a question and answer about the object to help or provide an explanation about the research problem. Third, documentation was conducted by recording and reviewing the company's documents related to the research object.
In this research, the production process began on 19 July 2019. First, the raw materials were collected from the warehouse; then, they were taken to the mixer machine to mix with dyes if color specifications had been on demand. If no color specifications had been required, the raw materials were sent directly to the molding machine. The prepared raw materials  No  GA  PSO  SA  ACO  TS  1  216  201  215  182  242  2  209  211  215  183  187  3  209  194  231  187  187  4  206  218  207  181  215  5  206  198  198  178  214  6  206  192  236  188  214  7  194  197  195  186  187  8  194  192  223  183  215  9  194  215  186  186  219  10  194  203  193  187  had been put in the machine, and the production process started. The product that came out of the machine was checked and tidied first and then packed. The packaged product was taken to the warehouse. It waited for the release schedule before being sent to the consumer. The required time was the cumulative time starting from the raw material collection, product specification setting, production process to finished goods. The first work on each machine was considered ready and did not count the setup time. Production time was only calculated until all product requests were made.
The data for the case study, which was collected from PT. Asia Plastic are presented in Table 6.
We need to determine how many product types should be scheduled and how long the product could be completely produced using the dataset presented in Table 6. Additionally, we also need to discover how many machines need to complete product orders. The processing time of each product was obtained from calculations using the processing time of each job on each machine is depicted in Table 7.  Figure 1 and Figure 2 in the form of a Gantt chart. In addition to the Gantt chart, the comparison of scheduling sequences is also presented in Table 9.   From Figure 1 and 2, it can be concluded that company scheduling using FCFO and EDD rules are quite different. The two figures have several differences. For example, the FCFO scheduling method in job 1 is done on machine 3 while the EDD scheduling method is done on machine 1. The comparison of the job execution sequence reveals that the EDD rules provide a more even machine loading compared to the FCFO scheduling method. Table 9 shows the results of the company's scheduling performance of FCFO and EDD methods. The scheduling results obtained four criteria of scheduling with the FCFO method. First, the maximum tardiness was 175 hours. This condition indicates that the total number of late jobs, the longest time, and work increased to 175 hours from the agreed limit. Second, the total of the makespan was 559 hours.
This condition indicates that the last work done on the injection molding machine was completed for 559 hours counted from the 0th time. Third, the number of jobs was more than four jobs. This condition means that the work on injection molding machines from the four jobs exceeded the predetermined time limit. Fourth, the average tardiness was 28.07 hours/work. This condition indicated that the average number of jobs to complete on a molding machine between July   In this study, the company's initial machine scheduling applied the Ant Colony Algorithm method to produce more significant solutions than the company's current initial machine scheduling.
Pheromone is the weight on each trajectory and was used to place job i in the ant position k. The pheromone update calculation (τ) on the Ant Colony algorithm was employed to determine how the machines were used in the company. Then, the pheromone calculation was updated with several iterations until a pheromone value converged to the next iteration. When the stops were fulfilled (the value was converging) or the maximum iteration was completed, then the next sequence of production processes was taken with the smallest makespan. The scheduling based on ACO is presented in Figure 3.
The scheduling using the running program trial discovered that the makespan value was 473 hours. This result was better than that of the company's scheduling using FCFO and EDD, of which the makespan value was 559 and 511 hours. The ACO method scheduling sequence is different from the FCFO and EDD methods. The use of Gantt chart as output was more easily understood and looked more attractive. Job 1 ACO method was done on machine 2, FCFO is done on machine 3, and EDD job 1 was done on machine 2. In addition, Figure 4 describes the output graph to find out that the ACO iteration is already in a stable condition. Table 10 was obtained from the program memory. It is known that the makespan value in the first iteration is 784 hours. The score changes in the second iteration for 590 hours and so on until the optimum value is obtained under steady conditions for 473 hours in iteration 30,467. Table 11 describes the consistency of the algorithm by running the algorithm multiple times and shows the mean and standard deviation of the ACO's performance.    four performance criteria for the company scheduling by EDD method. First, the maximum tardiness was 85 hours. This condition indicated that the completion of some jobs was late, and the longest time of a job exceeded the time limit for 85 hours from a predetermined limit. Second, the makespan was 511 hours. This condition indicated that the last job done on the injection molding machine was completed for 511 hours counted from the 0th time. Third, the completion of five jobs was late. This condition indicated that the completion of five jobs using the injection molding machines exceeded the determined time limit. Fourth, the average tardiness was 17.87 hours/job. This condition indicated that because the average number of jobs had been done on the injection molding machine from July to August 2019, the tardiness was 17.87 hours/job. The scheduling performance of the ACO method had four criteria. First, the maximum tardiness was 83 hours. Second, the makespan was 473 hours. Third, the number of late jobs was five jobs. Fifth, the average tardiness was 16.33 hours/job. The next step was to compare the ACO method with the best scheduling method of the company (EDD) to find out the savings that the ACO method could offer.
The comparison results are presented in Table 6. The

Conclusions
This paper discussed the scheduling problems for parallel machines. A case study was conducted in PT. Asia Plastic. The company is currently applying FCFA and EDD. This study introduced the ACO to the company to improve its scheduling performance. The ACO had the makespan 38 hours fewer than EDD. Moreover, the ACO could reduce maximum tardiness up to two hours compared to EDD. Scheduling fair and equitable jobs on each machine could save the company's resources, such as time, energy, labor, and production costs. This condition indicated that the ACO algorithm could solve problems in unrelated parallel machine scheduling to non-identical.
This study has signified the practical implication in which the company could plan jobs and the appropriate machines. Thus, each job will not exceed the due date agreed by the company and consumers. On the other hand, the theoretical implication showed that many studies reported that ACO could be combined and compared with other methods according to the conditions and objectives. This study suggests that future researchers interested in investigating the same issue can transfer each job to another machine because the company's machines have the same function. The problem is that the company must continuously reset the machine setting if it produces high variance. The machine setup time is an essential factor in calculating the makespan and tardiness.