Nature-Inspired Metaheuristics for Two-Agent Scheduling with Due Date and Release Time

Department of Supply Chain Management, I.H. Asper School of Business, University of Manitoba, Winnipeg R3T 5V4, Manitoba, Canada Department of Information System, Analytics and Supply Chain Management College of Business, Rider University, 2 083 Lawrenceville Rd, Lawrenceville 08648, NJ, USA School of Finance, Southwestern University of Finance and Economics, Chengdu 610000, Sichuan, China L.M. 2apar School of Management, 2apar Institute of Engineering & Technology, Dera Bassi Campus, Patiala, Punjab, India


Introduction
e scheduling problems have always been an intriguing topic for scholars because of their wide range of applications. e academic community has extensively explored scheduling problems as they are extensively utilized in manufacturing and service industries to optimize resource allocation. Often, scheduling is a critical process as it influences the productivity of an organization. e scheduling problem has a wide range of applications in different industries and different environments. For example, in the engineering discipline, the scheduling problem is used for disassembly sequence to maximize revenue (Feng et al. [1]; Feng et al. [2]), for scheduling multicluster tools for wafer fabrication in the process industry (Zhu et al. [3]). e machine-scheduling problem is mainly motivated by the manufacturing industry. e usual scheduling problem involves finding a sequence of jobs in a machine, flow of jobs through different machines, or assigning jobs to different machines. e machine-scheduling problem involves the allocation of resources to process different jobs under different machine settings such as single-machine setting [4], flowshop machine setting [5], job shop machine setting [6], and parallel machine setting [7]. e classical machine-scheduling involves the processing of different jobs for a single customer/agent. When the jobs belong to different customers, the resultant scheduling problem is a multiagent scheduling problem. e research on the multiagent scheduling models started approximately fourteen years ago. An application of multiple agents scheduling problem can be encountered in many industries such as aircraft landing problem [8], railroad track allowance problem [9], networks [10], and cloud computing services [7]. Two-agent scheduling problem is a special case of a multiagent scheduling problem.
Agnetis et al. [11] and Baker and Smith [4] started a new branch in scheduling problems in which two agents use the same resource for processing jobs. Each agent has its objective function to be optimized. Two-agent scheduling problems can have the special challenge of optimizing two different objective functions belonging to two different agents. Two measures were proposed by Suresh and Chaudhuri [12]. e first measure assigns a weight to each agent's objective function to convert the multiobjective problem to a single objective problem. e second measure minimizes the first agent's objective function but tries to keep the objective function of the second agent under some predefined limit. Cheng et al. [13] named these two types of multiagent scheduling problems as the "minimality model" and "feasibility model," respectively. In this paper, we follow the second research direction and study the feasibility model, where the objective function of the first agent is minimized, and the objective function of the second agent is kept under some limit.
is paper aims to provide a mathematical formulation of the model and develop a metaheuristic to find a good quality solution.
Although many two-agent scheduling models have been studied in recent years, the studies related to the release daterelated two-agent scheduling model are relatively limited [14]. e number of tardy jobs minimization is aimed at only a few papers. Informed about the two-agent scheduling with due date literature, we consider a series of two-agent scheduling problems with due date-related objective in this paper. We have defined the single-machine-scheduling problems with unequal job release date constraints to minimize the total completion time, the total weighted completion time, and the number of tardy job objectives.
We have considered the scheduling problems of a twoagent single machine which is donated as , and 1| U B ≤ Q| C A (Problem 4) with the following assumptions, where A and B represent two agents in the problem: (i) e jobs from the two agents have a real release time (ii) e jobs from agent A have positive weight (iii) e jobs from agent B have a positive due date for all four problems (iv) e job will not be released until the shared machine fully processes it (v) e jobs from the two agents have a nonzero processing time (vi) Preemption is not allowed e paper contributes to the scheduling literature in many ways. In our knowledge, this paper first time develops algorithms to solve the two-agent scheduling problem to minimize the weighted completion and number of tardy job objectives. A mathematical model based on MILP formulation is developed to find the optimal solution for the problem. Also, this paper investigates two nature-based metaheuristics to solve the problem. e novel features of the proposed metaheuristics are the hybridization of the algorithm with local search schemes. e proposed local search scheme not only improves the solution quality but also obtains a feasible solution. e remainder of the paper is organized as follows. Section 2 investigates the single machine-scheduling literature. Section 3 addresses the problem definition associated with the mathematical model. Section 4 introduces the proposed ant colony optimization (i.e., ACO) and intelligent water drop (IWD) algorithm. Section 5 provides the numerical experiment results, related analysis, and a comparison of the proposed ACO algorithm with the optimal solution generated by the AMPL software. Section 6 outlines the conclusion and suggests future research directions.

Literature Review
Since the publication of Baker and Cole Smith [4] and Agnetis et al. [11], many scholars have explored a two-agent single-machine-scheduling problem. Two-agent scheduling problem considers two agents in which each agent has a set of jobs for processing in a single-machine. Generally speaking, the research of a single-machine and two-agent scheduling models could be classified into two main categories. e first category is called a minimality model, and the second category is called a feasibility model. Each research area has further research directions that can be classified based on their features. ese features include different objective functions of each agent, release date, weight, the nature of processing time, due date, and among other constraints.

Two-Agent Scheduling Problem with the Number of Tardy
Job Objectives. Agnetis et al. [11] investigated three due date criteria based on two-agent scheduling models to minimize the number of tardy jobs. ese problems are denoted by . ey have proven the computational complexity of the problems mentioned above. e first problem could be solved in O(n 3 ) time while the complexity of the second problem is proved to be a binary NP-hard. e complexity of the second problem is still unknown. Ng et al. [15] provided many lemmas for1| U B j ≤ Q | C A i problem: the scheduling of all A-type jobs is done in the shortest processing time (SPT) rule and the scheduling of all B-type jobs is done in the earliest due date first rule (EDD) following an optimal schedule. Furthermore, they developed a pseudopolynomial-time algorithm to solve the problem of searching for an optimal solution. Ng et al. [15] studied the complexity of several twoagent scheduling problems to minimize tardy jobs. ey also 2 Complexity pointed out that the problem is strongly NP-hard if the upper bound is equal to zero. Leung et al. [16] referred the Agnetics et al.'s [11] work and proved the complexity of a two-agent scheduling problem to minimize the total tardiness objective of the first agent while limiting the total number of tardy jobs of the second agent within a prespecified upper limit (i.e., 1| U B j ≤ Q | T A j ) is binary NP-hard. Lee et al. [17] extend Ng et al.'s [15] problem (i.e., 1| U B j � 0 | w A i C A i ), considering an actual processing time approach. ey proposed a branch-and-bound algorithm and heuristics to solve the problem. Yin et al. [18] studied the single-machine twoagent scheduling problem with release times and due date for minimizing the number of tardy jobs of first agent while keeping the maximum lateness of the jobs of the other agent within prespecified value. Yuan [19] studied the multiagent scheduling problem to minimize the weighted number of tardy jobs from each agent. Yin et al. [20] studied the twoagent scheduling problem for determining the due dates. e literature studies other variants of the two-agent scheduling problem. However, they differ from the problem considered in this paper in terms of either objective function (Wan et al. [21]; Mor and Mosheiov [22]) or machine settings (Mor and Mosheiov [23]; Lei [24]; Yu et al. [25]). A literature survey by Li et al. [26] and Yin et al. [27] can be referred to find different variants of the two-agent scheduling problem with due date-related objectives. e articles by Cheng et al. [14]; Yin et al. [28]; and Chen et al. [29] are closely related to the problem considered in our paper. Cheng et al. [14] considered the two-agent scheduling problem with total weighted completion time and number of tardy jobs minimization. Although Cheng et al. [14] used the same objective functions considered in this paper, they followed the minimality model and minimized the two objective functions' weighted sum. Yin et al. [28] proposed a two-agent scheduling model for unrelated parallel machinescheduling problem to minimize the number of total completion time and the number of tardy jobs criteria. ey proposed a column generation method embedded with branch-and-price algorithms to find the optimal solution. e complexity of the problem considered in this paper is proved to be NP-hard by Chen et al. [29]. eir research work was based on proving the complexity, and they did not provide an algorithm to solve the problem. Motivated by Chen et al.'s [29] complexity, this paper proposes a mixed linear integer programming (MILP) formulation and a metaheuristic algorithm to solve the problem.

Nature-Inspired Algorithm.
is paper uses two natureinspired algorithms to solve the problem under consideration. e foraging behavior of real ants inspires the ACO while the flow of water drops inspires the IWD. Natureinspired algorithms have been used to solve a wide variety of scheduling problems. Feng et al. [1] used ACO to solve the disassembly problem for CNC machine tools. Decisionmaking involves finding the sequence of disassembly operations to maximize demand satisfaction and minimize disassembly cost simultaneously. Zhang et al. [30] used ACO for cross docks operations in which decision-making involves finding the assignment of receiving and shipping doors. Jia et al. [31] used a bee colony algorithm to solve bike repositioning in bike-sharing systems in which decisionmaking involves finding the routes of the repositioning vehicles and the number of parked bikes of the corresponding station. Yagmahan and Yenisey [5] used ACO to solve the flowshop scheduling problem for finding a sequence of jobs. Li et al. [32] used an ant colony algorithm to solve two agents' scheduling problems to minimize total weighted completion time and makespan objectives. Hosseini [33] implements the IWD algorithm to solve the traveling salesman problem. Alijla et al. [34] used IWD to solve three combinatorial optimization problems; (1) rough set for subset feature selection (RSFS), (2) multiple knapsack problem (MKP), and (3) traveling salesman problem (TSP). e successful application of algorithms inspired by natural phenomena to solve different problems motivated us to use them to solve the two agents' scheduling problems considered in this paper.

Problem Definition and Notation
is section first describes the terminologies and notations used in this paper and then provides the linear programming formulation for the problem.

Problem Definition.
In all four problems, we consider that we have n number of jobs from agent A and agent B that are to be scheduled at a single machine. Each of the A and the B jobs has a positive processing time and a positive release time. Additionally, A-type jobs also have a positive weight, and B-type jobs have a positive due date. e problems involve assigning jobs to the shared machine and then finding sequence for the assigned job so that the total weighted completion time or total completion time of A-type jobs is as minimum as possible while limiting the number of tardy jobs of B-type jobs within a prespecified limit. We use the following notations to describe and formulate the problems: X: set of agents, X � {A, B} n x : the number of jobs for the agent x ∈ X n: total number of jobs, n � n A + n B N: set of all n jobs, N � 1, 2, 3, . . . , n { } N B : set of B-type jobs, consisting of n B jobs, N B � n A + 1, n A + 2, . . . , n . J X : job set of the agent x ∈ X p x i : the processing time of i th job for the agent x ∈ X r x i : release date of i th job for the agent x ∈ X w x i : weight of i th job for the agent x ∈ X δ x i : the density of i th job for the agent x ∈ X, δ x i � w x i /p x i d x i : due date of i th job for the agent x ∈ X C x i : completion time of i th job for the agent x ∈ X σ: ordered set of jobs already scheduled Complexity f x (σ) for a given sequence σ, the value of the objective function for the agent x ∈ X Q: the upper bound, a constant number. bigM: a large number In this paper, we consider four problems, denoted as follows: Problem 1 is a single-machine two-agent scheduling problem.
is problem minimizes the total weighted completion time of A-type jobs subjected to an upper bound on the total number of tardy B-type jobs. It also has arbitrary release dates and arbitrary weights. Problem 2 minimizes the total completion time of A-type of jobs. Problem 3 and Problem 4 have the same objective functions as Problem 1 and Problem 2, respectively, but they do not consider release date. Problem 3 focuses on finding such a schedule that minimizes the total weighted completion time of A-type jobs and/or ensures that the maximum number of tardy B-type jobs does not exceed the upper bound Q. Problem 4 is an unweighted case of Problem 3. e objective of Problem 4 is to minimize the total completion time of A-type jobs.

NP-Hardness.
Agnetis et al. [11] have proved that the ey also reported that problem 1| U B j ≤ Q| C A j is still open. erefore, Problem 1 is also NP-hard. Recently, Chen et al. [29] proved that problem 1|

e General Mathematical Model of Problems.
All four problems considered in this paper can be formulated in a common mathematical model. Problem 2 is an unweighted case of Problem 1. By putting weights of all jobs into one, Problem 1 is thereby reduced to Problem 2. By placing all jobs' release dates to zero, Problem 3 and Problem 4 can be reduced from Problem 1 and Problem 2, respectively. As a result, we can formulate a general mathematical model for all four problems. We use the following decision variables to formulate the problem: e mixed-integer linear programming (MILP) formulation for the problem can be described as follows: Equation (1) represents the minimization of the objective function of agent A. Constraint (2) and (3) make sure that every job is assigned to only one position of the machine. e completion time of the job at position j will be calculated using constraint (4) and constraint (5). In case a job is scheduled at the first position in the sequence, then constraint (4) is used to calculate the first job's completion time, while constraint (5) is used to calculate the rest of the jobs' completion times. Constraints (6)-(9) are used to determine 4 Complexity jobs' starting time. Constraint (6) ensures that any job will not be scheduled at any position before the previous job is completed. Constraint (7) states that any job will not be scheduled at any position before its release date. Constraints (8) and (9) ensure that the job's starting time is the same as the previous job's completion time. Constraint (10) and (11) calculates the completion time of job i. ese constraints also ensure that the job i is scheduled at position j then C 1 i � C 2 j . Constraint (12) is used to determine that if the processing of the job i is finished after its due date, then the job is marked as a tardy. Constraint (13) confirms that the total number of tardy B-type jobs is within the prespecified upper bound Q.

Proposed Algorithms
In a single agent scheduling problem, total weighted completion time is minimized by arranging the jobs in nonincreasing order of density. Simultaneously, the number of tardy jobs is minimized by arranging jobs in nondecreasing order of their due dates. ese properties are used in the proposed heuristic.

Heuristic Algorithm.
e heuristic first creates partial schedules σ A and σ B for A-and B-type of jobs. e jobs in the sequence σ A are arranged in nonincreasing order of density δ A i . e jobs in the sequence σ B are arranged in nonincreasing order of their due dates d B i . A complete solution σis then constructed by first sequencing A jobs followed by B jobs. e resultant solution can be infeasible. If the infeasibility is encountered, A jobs are moved towards the end of the sequence to make the solution feasible. e pseudocode of the heuristic is presented below (Algorithm 1).
To understand the heuristic algorithm, consider an instance with 3 A-type of jobs and 3 B jobs. e parameters associated with 6 jobs are provided in Table 1. Consider upper bound Q for the total number of tardy jobs for agent B to be 2. e heuristic starts with creating partial sequences }. e start time and completion time of each job for a sequence σare shown in Table 2.
us, the algorithm calls the feasibility phase for obtaining a feasible solution. When k � 3, job J3 is selected for moving towards the end of the schedule. Job J3 is first reinserted at positions l � 4, to create Since the number of tardy jobs remains greater than Q, the job is now inserted at position l � 5 and then finally at position l � 6 to create a sequence At the end of the l loop, the sequence σis replaced by σ temp to form the sequence When k � 2, job J1 is selected and inserted at positions l � 3, l � 4 and l � 5, and When k � 1, job J2 is selected and inserted at position l � 2 to form the sequence At this time, l loop breaks because the total number of tardy jobs is less than or equal to Q. After the exit of the l loop, the sequence σis replaced by σ temp . Finally, the sequence σ � } is reported as the solution of the heuristic algorithm.

Ant Colony Optimization (ACO)
Algorithm. Ant colony optimization (ACO) algorithm was designed by [35]. ey took their inspiration to develop the algorithm from the foraging behavior of ants. e ants always use the shortest path while seeking food from their nest. e max-min ant system (MMAS) is employed in the proposed algorithm. e fundamental procedures of the proposed ACO algorithm are listed below, followed by a detailed description.
Step 1: generate an initial solution using the heuristic algorithm described in Section 4.1 Step 2: set parameters, trail intensity matrix τ ip , trail intensities upper bound (τ max ) and the trail intensity lower bound (τ min ) Step 3: follow the below steps and terminate this step until the condition of termination is not met (i) Generate solutions using the trail intensities (ii) Carry out the local search to improve the solution (iii) Update the trail intensity (iv) Update the best solution found so far Step 4: report the best solution as a final solution of ACO

Parameter Initialization.
e trail intensity is denoted by τ ip , where τ ip depicts the trail intensity of the scheduling job i in the position p. In this paper, the initial trail intensity is set τ ip � 1/((1 − ρ) × IniObj). Here, IniObj represents the objective function value of the initial solution. e index ρ indicates the trail persistence.
In this paper, we take the max-min ant system (MMAS) into consideration. e MMAS is an improvement plan for the ACO algorithm, and it is designed for fast convergence [36]. In MMAS, the trail intensities are constrained by an upper limit and a lower limit (i.e., τ min ≤ τ ip ≤ τ max ). In our proposed ACO algorithm, the lower limit of trail intensity is set to (τ ip /200), and the upper limit of trail intensity is set to τ ip × 200.

Ant-Sequence Generation.
We use ten ants to generate ten different solutions in the ant-sequence generation step. An ant solution is generated in the following two phases: Trail intensities are used to determine the job, scheduled at position p, where p ∈ [1, n]. Jobs are selected from the first five unscheduled jobs in the set US from the best solution.
First, the cumulative trail intensity T ip � p q�1 τ ip ; ∀i ∈ US is calculated for each unscheduled Complexity 5 job. One of the following three rules is used to select a job randomly. e first rule selects the first unscheduled job from the best sequence found so far. e second rule selects the job with the highest value of cumulative trail intensity T ip . e third rule uses probability ψ ip � (T ip / k∈K T kp )to select jobs from the set US. e three rules are applied randomly with probabilities 0.4, 0.4, and 0.2, respectively.

Insertion Local Search.
e local search procedure is employed to improve the quality of the ant-schedules generated by the last step and improve the solution quality. e local search is evaluation using a modified objective function where BigM is a large number. e modified objective function penalizes the objective function for infeasibility, which forces the solution to move towards feasibility during the search process. We use a simple insertion local search to improve the solution quality. In the local search, a job is rescheduled at all other positions. e best solution is updated if a better schedule is encountered during the process. e procedure is repeated for all the jobs one by one. Once the rescheduling of all the jobs at all the positions is completed, the whole procedure is repeated. e procedure is repeated until the modified objective function f(σ) keeps on improving.

Updating Trail Intensities.
e trail intensities are updated based on the best sequence as well as the current sequence. Let Obj current and Obj best denote the objective function value for the current sequence and the best sequence, respectively. L is the trail intensity deposit L c ip from the current sequence and the trail intensity deposit L * ip from the best sequence can be calculated using the following equations: (1) / * Initial Solution * / (2) Create a partial sequence σ A and σ B (3) Create a solution σ ⟵ σ A ∪ σ B ) //combine sequences σ A and σ B to construct σ (4) Calculate U ⟵ f B (σ) //Calculate the weighted number of tardy job for sequence σ (5) / * Feasibility phase * / (6) for k � n 1 to 1 do (7) Select job J � σ(k) (8) for l � k+1 to n − (k − n 1 ) do (9) σ temp ⟵ Create new sequence from σ by reinserting job J at position l (10) U temp ⟵ f B (σ temp ) //Calculate the weighted number of tardy job for σ temp (11) if U temp ≤ Qthen (12) break l loop (13) end if (14) end for (15) σ ⟵ σ temp ; U ⟵ U temp (16) if U temp ≤ Q then (17) break k loop (18) end if (19) end for (20) return solution σ ALGORITHM 1: Heuristic algorithm.
, if job is in the p th position of best sequence, 0, otherwise.
Using the abovementioned expressions, the trail intensities are updated by the following equations: In this paper, ACO is stopped after 100 iterations. We use the values available in the literature to set different parameters for ACO. e trail persistence factor ρ is set to 0.95.

Intelligent Water Drop (IWD) Algorithm.
e intelligent water drop (IWD) algorithm is a swarm-based method used for solving combinatorial optimization problems [33,34]. In nature, we often observe that the water takes the path of least resistance, which translates into a water flow, such as a river, choosing the shortest path to their final destination, such as a lake or the sea. e IWD algorithm is based on this natural phenomenon of water flow in a river and its impact on the river bed's soil. e velocity of the water drops and the amount of the soil on the way mainly affect the river's flow. e IWD uses these two properties (soil and velocity) to find the combinatorial optimization problem. We consider that the water flows from the first position to the n th position through different jobs while solving a scheduling problem. is paper adopts the IWD algorithm used by Alijla et al. [34], which mainly uses the following variables: soil(i, j): amount of soil carried at position i, if water flows through job j soil k : amount of soil carried by water drop k vel k (t): the velocity of water drop k at time t iwd: number of water drops e fundamental procedures of the IWD algorithm are listed below, followed by a detailed description.
Step 1: initialize variables soil(i, j), soil k , and vel k (t) Step 2: follow the below steps and terminate this step until the termination condition is not met (i) Generate the solution using the principle of IWD for all iw dwater drops (ii) Carry out the local search to improve the solution for all iw dwater drops (iii) Update the best solution found so far (iv) Update the global soil Step 3: report the best solution as a final solution of ACO e IWD starts with the initialization of variables. We use the values proposed by Alijla et al. [34] to initialize the variables and to set the parameter values. e variables are initialized as follows:

Solution Construction.
A solution of a single-machinescheduling problem consists of finding the jobs for each position of the sequence. A water drop k starts with the first position and moves towards the n th position. e sequence of jobs determines the path of the water drop. e IWD algorithm selects the job j from the unscheduled job set V k usj for sequencing at position i using the following probability distribution formula: where f(soil(i, j)) � 1 0.01 + g (soil(i, j)) , , l)), else.
Complexity 7 After selecting the job j for sequencing at position i, the following variables are updated: , , Here, a v , b v , c v , a s , b s , c s , and ρ n are the parameters. We set the value of these parameters according to the value set by Alijla et al. [34] as 1, 0.01, 1, 1, 0.01, 1, and 0.9.
Once the complete solution of a water drop is built, the solution is improved using the local search method described in Subsection 4.2.3.

Updating the Global Soil.
e global soil updating step is referred to as a reinforcement phase. In this step, global soil is updated using the local best solution found among iwd solutions. Let q(T lB )represent the objective function of the local best solution. e global soil value is updated as follows: where ρ iwd is a parameter value set as 0.90 according to the value set by Alijla et al. [34].

Termination Phase.
In every iteration, iwd number of solutions are created and improved using local search schemes. After generating the solutions, global soil is updated. ese two processes are repeated until a prespecified number of iteration, and finally, the best solution found so far is reported. e structure of IWD is similar to the structure of ACO. To make the two algorithms comparable, we used the same local search schemes and ran the algorithm for the same number of prespecified iterations. us, the IWD algorithm is stopped after 100 iterations for both IWD and the ACO.

Numerical Results Analysis
e performance of the proposed algorithm is evaluated using both small and large size problem instances. e results obtained by the proposed ant colony optimization algorithm are compared with the solutions generated by using the CPLEX solver. e linear programming-based mathematical model is solved by AMPL software with CPLEX solver. e AMPL is running on an iMac desktop with 3.3 GHz with 8 GB of RAM. e coding of the proposed algorithms is done in the C++ programming language and is implemented on AMD Opteron 2.3 GHz with 16 GB RAM.
In this paper, we generated 116 problems (4 problems * 29 problem instances each). e smallest instance has 5 jobs for each agent, while the largest instance has 150 jobs. e jobs' processing time and weight are generated using a random number between [1,15] and [1,10], respectively. e upper bound value Q is generated as Q � α × n B , where α was assigned randomly between 0.4 and 0.6. e due date of each job is generated in the uniform distribution range of [0.1 × n i�1 p i , 0.9 × n i�1 p i ]. e value of the release date of each job is generated according to the formula, as r i � max (β × d i − p i ), 0 . e experiment uses the following two types of datasets: (1) Small and medium datasets are used to weigh the proposed algorithms' results and the CPLEX result (2) Large datasets are used to evaluate the scalability of the computation time of the proposed algorithms e small dataset represents those problem instances, which can be solved optimally by mathematical models within reasonable CPU time. Due to the complexity of the problems, the mathematical model was applied to solve only small-and medium-size problem instances in a specific time, and one hour was set as the time at which the mathematical model will obtain a solution. e developed mathematical model's optimal solution can be solved using the AMPL software with the CPLEX solver. e quality of results is evaluated by using relative percentage deviation (i.e., RPD). e formula to calculate RPD k of the proposed algorithm or CPLEX result for the k th problem instance is Here, H k represents the proposed metaheuristic solution in the k th problem instance, and B k represents the best algorithm solution in the k th problem instance. e following notations are used to report and evaluate the numerical results: CPLEX: mathematical model solved by CPLEX solver OBJ: absolute value of objective function generated by algorithms RPD: relative percentage of deviation CPU: running time of the proposed algorithm ACO: ant colony algorithm IWD: intelligent water drop algorithm

Numerical Experiment with a Small and Medium Dataset.
We compare the projected ant colony optimization-based metaheuristic results with the result of CPLEX. Tables 3-6 show the solution and CPU time of the proposed algorithms and CPLEX result for Problem 1, Problem 2, Problem 3, and Problem 4, respectively.
e results with * represent the optimal solution. e proposed ACO and IWD algorithm can efficiently solve small problem instances and balance CPU time with result quality. It is clear from Tables 3-6 that the proposed ACO algorithm and the IWD algorithm can solve all small problem instances in minutes. e average RPD of the two algorithms is summarized and showed in Table 7. 8 Complexity e average RPD of IWD is less than 0.4%, which indicates that the solution of IWD is not more than 0.4% of the optimal solution. e RPD of ACO is also less than 2%. It means that our proposed ACO and IWD algorithm has an excellent performance in solving small problem instances. e experiment's purpose with small-sized instances is to check the proposed algorithms' effectiveness by comparing them with the optimal solution. Results indicate that the performance of the proposed metaheuristics is close to the optimal solution. However, the CPU time of proposed metaheuristics does not increase exponentially, unlike with the CPLEX solver used to obtain an optimal solution. Overall, the IWD metaheuristic performance is better than ACO's performance in terms of both solution quality and the CPU time.

Numerical Experiment with Large Dataset.
e large dataset is used to compare the performance of proposed algorithms with each other. e numerical results of four problems for large datasets are reported in Tables 8-11. e results reported in Tables 8-11 exhibit that the performance of IWD is the best followed by the ACO and heuristic algorithm. e IWD produced the best results for almost all instances (55 out of 55 instances). On average, the proposed IWD algorithm's solutions are 4.70%, 4.85%, 4.05%, and 3.75% better than the solutions of the ACO algorithm for four problems, respectively. At the same time, the CPU time of the IWD algorithm is less than the CPU of ACO. e results indicate the better performance of IWD over ACO. e proposed heuristic algorithm can solve all problems within 0.2 seconds, but the heuristic algorithm's performance is worst, with on average RPD of 135.95%.  If there is a need for an accurate solution and the CPU time is not the priority consideration, the IWD algorithm can be adopted as a solution method. IWD can be imbedded with entrepreneur resource planning (ERP) software for creating a master production schedule. e results indicate that the IWD algorithm has the edge over ACO algorithms for embedding with any ERP software since it provides a better quality solution in shorter CPU time. One of the drawbacks of the metaheuristic algorithm is the excessive CPU time compared to the heuristic algorithm. erefore, if the solution is quickly required, the heuristic algorithm can be adopted as a solution.

Conclusions
is paper evaluates a set of single-machine with twoagent scheduling problem to minimize the total weighted completion time and total completion time of the first agent while keeping the number of tardy jobs of the second agent under a prespecified limit. e service and manufacturing industries find many applications in the problems. In this paper, we proposed a general mathematical model for all four problems and an ACO-based metaheuristic to solve the problems. e proposed mathematical model is solved by using AMPL software with the CPLEX solver.
It can be deduced from the results that the proposed metaheuristic has obtained near-optimal solutions, as the reported variation between the proposed metaheuristic and mathematical model's outcomes are extremely low among four problems. More importantly, the proposed metaheuristic can reach a better solution than the CPLEX solver, and it consumes much less computation time than the CPLEX solver. Subsequent future research directions include developing other metaheuristics to provide even better results for larger sized problem instances in a shorter time.
In the future, the algorithm used in this paper can be extended to solve different scheduling problems such as flow shop scheduling problems, job shop scheduling problems, parallel scheduling problem, and disassembly sequencing problems. e results exhibit the excellent performance of the IWD algorithm over the ACO algorithm. e results indicate the call for the application of the IWD algorithm on solving other scheduling problems.

Data Availability
Data used in this research work are available from Yuvraj Gajpal (yuvraj.gajpal@umanitoba.ca).

Conflicts of Interest
e authors declare that they have no conflicts of interest.