Next Article in Journal
A Multi-Objective Bayesian Approach with Dynamic Optimization (MOBADO). A Hybrid of Decision Theory and Machine Learning Applied to Customs Fraud Control in Spain
Next Article in Special Issue
An Imitation and Heuristic Method for Scheduling with Subcontracted Resources
Previous Article in Journal
A Class of Three-Qubit Contextual Configurations Located in Fano Pentads
Previous Article in Special Issue
A Kronecker Algebra Formulation for Markov Activity Networks with Phase-Type Distributions
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Relocation Scheduling in a Two-Machine Flow Shop with Resource Recycling Operations

Institute of Information Management, National Yang Ming Chiao Tung University, Hsinchu 300, Taiwan
*
Author to whom correspondence should be addressed.
Mathematics 2021, 9(13), 1527; https://doi.org/10.3390/math9131527
Submission received: 23 May 2021 / Revised: 18 June 2021 / Accepted: 23 June 2021 / Published: 29 June 2021
(This article belongs to the Special Issue Theoretical and Computational Research in Various Scheduling Models)

Abstract

:
This paper considers a variant of the relocation problem, which is formulated from an urban renewal project. There is a set of jobs to be processed in a two-machine flow shop subject to a given initial resource level. Each job consumes some units of the resource to start its processing on machine 1 and will return some amount of the resource when it is completed on machine 2. The amount of resource released by a job is not necessarily equal to the amount of resource acquired by the job for starting the process. Subject to the resource constraint, the problem is to find a feasible schedule whose makespan is minimum. In this paper, we first prove the NP-hardness of two special cases. Two heuristic algorithms with different processing characteristics, permutation and non-permutation, are designed to construct feasible schedules. Ant colony optimization (ACO) algorithms are also proposed to produce approximate solutions. We design and conduct computational experiments to appraise the performances of the proposed algorithms.

1. Introduction

Scheduling is a decision-making process that allocates limited resources to tasks in a given time period to optimize certain objectives in manufacturing as well as service industries [1]. Usually, resources are considered as machines that process the assigned tasks in manufacturing industries. In some scheduling contexts, there could be different extra resources, like capital, crews and technicians, storage space, energy, computer memory, and so on, that are required to support the execution of the tasks. Such scheduling problems are known as resource-constrained scheduling. Resource-constrained project scheduling problems (RCPSP) have received considerable attention for decades. Please refer to Brucker, Drexl, Möhring, Neumann, and Pesch [2], Habibi, Barzinpour, and Sadjadi [3] Herroelen, De Reyck, and Demeulemeester [4], Issa and Tu [5] for comprehensive reviews on RCPSP. The resource constraint featured in the relocation problem is different traditional ones in the sense that the amount of resource released by an activity is not necessarily the same as that acquired for commencing the activity. This study investigates the relocation problem in a two-machine flow shop with the specific feature of a resource recycling mechanism.
The construction industry have various optimization decisions to address in the project course [6,7]. The relocation problem originated from the public house redevelopment project in Boston [8,9]. The project had a set of buildings to be torn down and erected for redevelopment. During the redevelopment process, current tenants of the buildings under reconstruction needed to be relocated to temporary housing units. They could be assigned to new housing units. It was not mandatory for tenants to reside at the same place they lived before. Therefore, the authority had to determine a minimum budget of temporary housing units such that all tenants could be successfully relocated. Kaplan [8] first formulated the relocation problem of determining a feasible redevelopment sequence of the buildings with the initial budget. In the view of optimization, this problem can also be described as finding a feasible sequence of the redevelopment buildings that reflects the minimum initial budget. Kaplan and Amir [10] showed that the relocation problem is mathematically equivalent to the two-machine flow shop scheduling problem for minimizing makespan, implying that the basic relocation problem can be solved by the classical Johnson’s algorithm [11].
Lin and Huang [12] first introduced the recycling operations for yielding the resource into the study on the relocation problem. In previous studies on the relocation problem, the resource is consumed when a job starts to process and returns immediately when it is completed. However, the concept of the resource recycling is assumed that we need to have a mechanism or procedure to recycle the resource before the resource can be used for later jobs. Therefore, a job is divided into two separate parts on two dedicated machines: one processed on machine 1 and the other for recycling the resource on machine 2. The operations on machine 1 should have sufficient resource so that they can commence the processing, and the operations on machine 2 should wait for the completion of its corresponding counterpart operations jobs on machine 1. However, the job sequences on the two machines are not necessarily the same. Cheng, Lin and Huang [13] presented an integer linear program formulation for the permutation case, in which the job sequences on all machines are the same. They also investigated the non-permutation case. We continue to study this relocation problem and discuss more theoretical proofs. Then, we present heuristic algorithms and ant colony optimization (ACO) algorithms for both permutation and non-permutation sequences to find feasible schedules with resource constraints for minimum makespan.
The rest of this paper is organised as follows. In Section 2, we present problem statements and give a numerical example followed by a literature review. The complexity results of two special cases are discussed in Section 3. In Section 4 and Section 5, we present heuristic algorithms and ant colony optimization algorithms for constructing approximate schedules. Computational experiments and performance statics of the algorithms are given in Section 6. We conclude this search and suggest research directions for future study in Section 7.

2. Problem Definition

In this section, we first introduce the notation that will be used throughout our research. Then, a formal problem formulation follows. An integer programming model is also proposed. The notations are listed below:
Notation:
N = { 1 , 2 , n } set of jobs to be processed;
p1,jprocessing time of job j on machine 1;
p2,jprocessing time of job j on machine 2;
αjresource requirement of job j;
𝛽jamount of the resource returned by job j;
σ = ( σ 1 , σ 2 , σ n ) a particular sequence of the jobs
(assumed for the case of permutation schedules);
v0initial resource level;
vtresource level at time t ≥ 0;
Cm,jcompletion time of job j on machine m, m = 1, 2.
We formally state the problem as follows: From time zero onwards, a set of jobs N = { 1 , 2 , , n } is available to be processed in a two-stage flow shop consisting of machine 1 and machine 2. Initially, the common resource pool contains v 0 units of a single type of resource. Job j N can start processing only if machine 1 is not occupied and the resource level is larger than or equal to α j . When job j starts processing, it immediately consumes α j units of the resource and takes p 1 j units of time on machine 1. After the operation on machine 1 is completed, p 2 j units of time are required to complete its resource recycling operation on machine 2. When job j completes on machine 2, it produces and returns β j units of the resource back to the resource pool. No preemption on either machine is permitted. Note that there is no strict relation between α j and β j . That is, β j could be smaller than, equal to, or larger than α j . The goal is to minimize the makespan. In other words, we want to find a feasible schedule that completes all jobs in the shortest time.
To illustrate the problem definition, we consider an instance of four jobs with an initial resource level v 0 = 6 . The parameters are shown below in Table 1. We construct two example schedules.
Figure 1 shows an optimal permutation solution with C max = 22, and Figure 2 shows an optimal non-permutation solution with C max = 19. Both of them are feasible. In this example, it is clear that the non-permutation solution can attain a better makespan than the permutation one.

Literature Review

To describe our problem, we denote use the standard three-field notation F 2 | r p | C max , proposed by Graham et al. [14]. The first field indicates the machine environment of a two-machine flow shop, where the first machine is the operation of the building being torn down and the second machine is about re-constructing buildings corresponding to resource recycling operations. The second field indicates that the specific conditions for the job characteristics, i.e., the relocation problem. The last field specifies the objective function of makespan.
The study on the relocation problem was inaugurated by Kaplan [8] in 1986. The fundamental purpose of the basic relocation problem is to minimize the initial budget required for guaranteeing project feasibility. In Kaplan’s study, multiple working crews were considered that if resources were sufficient, i.e., a number of buildings could be simultaneously developed. Kaplan and Amir [10] formulated the application of relocation problem as an integer program. They also noted the relationship between the minimum budget in relocation feasibility and the minimum makespan of two-machine flow shop scheduling, which is solvable in O ( n log n ) time [11]. To reflect real situations of the housing redevelopment project in East Boston, Kaplan, and Berman [15] refined the integer programming model and scheduling heuristics. Applications like the financial constraints on single machine scheduling problems [16] which can be reduced to the two-machine flow shop scheduling problem as a special case of the relocation problem. The relocation problem is also related to the memory management issue in database system in practical term [17]. Amir and Kaplan [17] showed that minimizing the makespan on parallel machines is NP-hard. Kononov and Lin [18] proved that parallel-machine setting is strongly NP-hard even if there are only two working crews and all jobs have the same processing time. They also designed approximation algorithms with performance ratio analysis for two special cases.
Cheng and Lin [19] presented more proofs and proposed the concept of composite jobs that can reduce the computational time for handling the relocation problem. Cheng and Lin [20] also demonstrated the concept of relocation scheduling to give an economic interpretation of Johnson’s algorithm. The concept can also simplify proofs and reduce time complexity in some two-machine flow shop scheduling problems. There are other extensions from the relocation problem. Lin and Tseng [21] considered the problem with processing times and deadline constraints. Furthermore, they provided a complexity result and two polynomial algorithms to solve the restricted problems. Lin and Tseng [22] proposed a branch-and-bound algorithm to maximize the resource level under a specified due date and considered the precedence constraints [23] that is NP-hard even if the precedence constraints are specified by a bi-partite graph. Lin and Cheng [24] showed two relocation problems of minimizing the maximum tardiness is strongly NP-hard and of minimizing the number of tardy jobs under a due date is NP-hard even when all the jobs have an equal tardy weight and resource requirement. Based on the generalized due dates proposed by Hall [25], Lin and Liu [26] extended the scheduling problem and designed a branch-and-bound algorithm to reduce the computational time required. Sevastyanov, Lin and Huang [27] considered the relocation problem with arbitrary release dates. They developed a multi-parametric dynamic programming algorithm to solve the case with a fixed number if distinct due release dates and analyzed complexity of different problem settings. Kononov and Lin [28] considered minimizing the total weighted completion time and proved four special cases are strong NP-hardness. They established the equivalence between the UET (unit-execution-time) case and the unit-weighted case and presented a 2-approximation algorithm for the restricted special cases.
As per the feature of resource recycling in the relocation problem, there are some existing works. Lin and Huang [12] first introduced the concept of resource recycling. This operation can be processed on a secondary recycling machine that the whole procession can be described as a two-machine flow shop scheduling problem. In this paper, they showed that it is NP-hard and designed three heuristic algorithms to compose approximate schedules. Problem formulation and some complexity results were discussed in Cheng, Lin and Huang [13]. They presented integer linear programming models for finding the feasible permutation sequence and non-permutation sequence with minimum makespan. Lin [29] considered the setting where processing and recycling are carried out on the same single machine. The problem is a generalization of the knapsack problem. He designed a pseudo-polynomial time dynamic programming algorithm and formulated an integer program to solve this recycling problem that operations are processed on the same single machine.

3. Complexity Analysis

This section is dedicated to discussion of the complexity results of the problem of several special cases. First, let instance I contain n jobs with p 1 , j , p 2 , j , α j , and β j given for each job j and an initial resource level v 0 . We create another instance I ¯ having n jobs with p ¯ 1 , j = p 2 , j , p ¯ 2 , j = p 1 , j , α ¯ j = β j , a n d β ¯ j = α j that is symmetric to the instance I . Set the initial resource level v ¯ 0 = v 0 j = 1 4 q + 1 ( β j α j ) . We claim that the two instances have the optimal makespan. The concept follows the results of Kononov and Lin [28].
Theorem 1.
(Mirror Property) Instance I and instance I ¯ have the optimal makespan.
Proof. 
Let σ = ( σ ( 1 ) , σ ( 2 ) , , σ ( n ) ) be a feasible permutation of jobs in the given instance I case. We show that σ ¯ = ( σ ( n ) , σ ( n 1 ) , , σ ( 1 ) ) is feasible for I ¯ we created in the above. Assume V ¯ k is the resource level after the jobs σ ( n ) , , σ ( k + 1 ) in σ ¯ complete. We have V ¯ k α ¯ σ ( k ) = v ¯ 0 + j = k + 1 n ( β ¯ σ ( j ) α ¯ σ ( j ) ) α ¯ σ ( k ) = v 0 + j = 1 k ( β σ ( j ) α σ ( j ) ) β σ ( k ) = v 0 + j = 1 k 1 ( β σ ( j ) α σ ( j ) ) α σ ( k ) 0 . The last inequality is feasible with the schedule σ . Therefore, we can get V ¯ k α ¯ σ ( k ) , which shows the schedule σ ¯ is feasible. As we know the schedule σ ¯ and σ are two-stage flow shop, if their sequences are reversed, they have same processing time. Therefore, we can construct another optimal schedule if we get an optimal one.    □
For n jobs, there are ( n ! ) possible sequences when the permutation schedules are considered. If we consider the non-permutation variant, the number of schedules will become O ( n ! × n ! ) because the permutations on the two machines could be different. For technical constraints or dispatching fairness, say first comes first served, the processing sequence could be given and fixed [30,31]. In view of implementations, if an optimal schedule can be efficiently obtained from a given job sequence on either machine, we can then reduce the decision tree size from O ( n ! × n ! ) to O ( n ! ) . This section will explore the complexity status of the setting with a fixed job sequence.
First, we prove the problems that when the sequence of the jobs on machine 2 is given and fixed, finding the optimal schedule is strongly NP-hard, even if all jobs have the same processing time on machine 2. On the other hand, if the given and fixed sequence of the jobs is on machine 1, we can get the same result that finding optimal schedules is also strongly NP-hard. The proof is given in the following:
3-Partition: Given an integer B and a set A of 3 q elements { 1 , 2 , , 3 q } , each j A has a size x j , B / 4 < x j < B / 2 , such that j = 1 3 q x j = q B , is there a partition A 1 , A 2 , , A q of the set A such that x j A l x j = B , 1 l q ?
Theorem 2.
If a sequence of the jobs on machine 2 is given and fixed, then finding an optimal schedule is strongly NP-hard, even if all jobs have the same processing time on machine 2.
Proof. 
Given an instance of 3-Partition, we create a corresponding set of 4 q + 1 jobs as follows:
  • Enforcer jobs: p 1 , j = 0 , p 2 , j = B , α j = 2 B , a n d β j = 3 B , 1 j q ;
  • Ordinary jobs: p 1 , j = x i , p 2 , j = B , α j = x i , a n d β j = 0 , q + 1 j 4 q ;
  • Final job: p 1 , j = 3 q B , p 2 , j = B , α j = 0 , a n d β j = 0 , j = 4 q + 1 .
The the initial resource level v 0 = 3 B . The jobs on machine 2 are sequenced in increasing order of their indices. We claim that there is a 3-Partition if there is a feasible schedule whose makespan is no greater than ( 4 q + 1 ) B .
Assume that there exists a desired partition A 1 , A 2 , , A q of 3-Partition. Because the total actual processing length on machine 2 is ( 4 q + 1 ) B , we know that no idle time on machine 2 is permitted. Then, we schedule the enforcer job 1 on machine one first followed by the the ordinary jobs corresponding to the three elements of A 1 and the resource level is brought back to 3 B . Repeat the dispatching pattern and then schedule the last job. It is to see that the schedule is feasible and the makespan is exactly ( 4 q + 1 ) B .
Assume that there is a feasible schedule whose makespan is no larger than ( 4 q + 1 ) B . The total actual processing length on machine 2 of all jobs is ( 4 q + 1 ) B . There is no idle time on machine 2. On the other hand, the total actual processing length on machine 1 is 4 q B . Considering the subsequent operations on machine 2, no idle time is allowed on machine 1. In other words, machine 1 and machine 2 cannot have any idle time in order to attain the makespan ( 4 q + 1 ) B . As given, machine 2 processes the enforcer jobs 1 , 2 , , q as in their indices. Since all enforcer jobs have the same parameter values, without loss of generality we assume that the enforcer jobs also follow the same processing order on machine 1.
We first note that job 1 should start first on machine 1 for otherwise non-zero idle time will be incurred on machine 2. After completing job 1 on machine 1, the resource level drops from 3 B to B. To start the next enforcer job 2, machine 1 wait for the previous enforcer job 1 to be completed to accumulate sufficient resources. To avoid the idle time between the first and second enforcer jobs on machine 1, we assign ordinary jobs to fill up the idle period. Let A 1 be the set of elements defining these ordinary jobs. If x j A 1 x j < B , then there is an idle time before job 2 on machine 1. On the other hand, if x j A 1 x j > B , then the resource is insufficient and the completion time of some ordinary jobs are later than the second enforcer job, leading to the idle time on machine two. As the result, x j A 1 x j = B must hold. Continuing this process, we can find subsets A 2 , , A n with x j A l x j = B , 2 l q , satisfied for the 3-Partition problem. Figure 3 shows the sequence of the optimal schedule: the purple blocks are enforcer jobs, the red ones are ordinary jobs, and the blue ones are final job.    □
Theorems 1 and 2 together imply the following result.
Theorem 3.
If a sequence of the jobs on machine 1 is given and fixed, then finding an optimal schedule is strongly NP-hard, even if all jobs have the same processing time on machine 2.
Proof. 
Owing to Theorems 1 and 2, we can get the feasibility of a given and fixed sequence of the jobs on machine 1 whose optimal schedule is strongly NP-hard. On the other hand, the idle time before job 1 on machine 2 is inevitable and the total actual processing length is ( 4 q + 1 ) B . Furthermore, the sequence of Theorem 2 whose jobs on machine 2 is given and fixed, if we reverse this two-stage flow shop sequence, we can get the given and fixed sequence of the jobs on machine 1 which is equivalent to Theorem 3. It can seen that Figure 4 is derived form Figure 3 by reversing the Gantt chart from the right. As a result, the sequences of Theorem 2 and Theorem 3 have same total processing time. Then, we get the optimal schedule.    □
Theorem 4.
If sequences of the jobs on machine 1 and machine 2 are given and fixed, then the optimal schedule can be found in polynomial time.
Proof. 
Assume that there is a feasible schedule whose sequences of the jobs on machine 1 and machine 2 are given and fixed. We schedule the first job on machine 1 followed by the first job on machine 2. If the resource of second job on machine 1 is insufficient, it should wait for previous job which on machine 2 to return the resource. Otherwise, it can be processed immediately when the previous job finished. Then, the job on machine 2 starts when the job on machine 1 completed. Continuing this process, we can schedule all the jobs and the makespan is minimum. On the other hand, if the job on machine 2 return resource is not enough for the next job to be processed, we can know that this sequence is not feasible. As a result, we can get an optimal schedule if sequences of the jobs on machine 1 and machine 2 are given and fixed.    □
To simplify the problem, we consider the special case where processing sequences on both machines are given. By problem definition, the two sequences are not necessarily the same. For simplicity in presentation, we re-index the jobs to follow the natural sequence π 1 = ( π 1 , 1 , π 1 , 2 , , π 1 , n ) on machine 1. Let π 2 = ( π 2 , 1 , π 2 , 2 , , π 2 , n ) denote the sequence on machine 2 and v ( t ) the resource level at a specific time point t. Notations t 1 and t 2 represent the current time points on machines 1 and 2. Note that if an operation whichever finished on machine 1 or machine 2 and another operation starts on next machine simultaneously at time t, we define v ( t ) as the resource level after the finished operation on one machine and before the starting operation on the other machine. We will use this method, outlined in Algorithm 1, to calculate makespan for the problem.
Algorithm 1: Two Sequences
Mathematics 09 01527 i001
In Algorithm 1, the first job of the sequence on machine 1 is processed first and there should be sufficient resource for it to start. Therefore, the first time point t 1 , 1 is the processing time of job 1 on machine 1, which is also t 1 , and v ( t 1 ) is the resource level when job 1 finishes. In Line 6 we check the resource if we can process the job i on machine 1 or not. If resource is insufficient for job i on machine 1, we execute Line 11 to Line 19 for processing some job j on machine 2 to collect more resource. In Line 12, we need to check if job π 1 , j is scheduled first on machine 1 or not. Because we start to process jobs on machine 2 when the resource is not enough for machine 1, there may be several candidate jobs that can be processed on machine 2. Therefore, sometimes, t 2 is less than t 1 when the resource level is sufficient for the next job. In Lines 16 to 17, if t 2 is larger than t 1 , we need to set t 1 equal to t 2 , i.e., the next job on machine 1 should wait for the job on machine 2 to recycle its resource. When all the jobs on machine 1 finish, there are still some jobs on machine 2 not yet processed. As a result, we process the remaining jobs on machine 2 in the While loop of Line 20 to Line 22.

4. Heuristic Algorithms

Since the F 2 | r p | C max  problem is computationally hard, it is hard to find optimal solutions when the problem size is large. We therefore design heuristic algorithms to produce approximate solutions in an acceptable time.

4.1. Permutation

We design two heuristic algorithms, using different sequences to construct feasible schedules for F 2 | r p | C max  problem. If the job of the sequence does not violate the resource constraint, it must satisfy two conditions that the current resource level is sufficient for it, and that after its processing the resource level is sufficient for all remaining jobs. We denote the job sequence as σ and the remaining jobs sequenced by Johnson’s rule using resource parameters α and β as σ J R . Recall that v 0 is the initial resource requirement using Johnson’s rule, and V n e e d e d denotes the minimum resource requirement for the remaining jobs that the sequence is the same as σ J R excluding job j. If the job violates the constraints, we will remove it. Then, we can get a set of feasible jobs which are the candidates to be processed next. Algorithm 2 examines each of the remaining jobs to determine if they are feasible candidates for the next position.
Algorithm 2: Check Resource
Mathematics 09 01527 i002
The first heuristic algorithm, JR-time Permutation Heuristic, is outlined in Algorithm 3. We define σ t i m e as the remaining jobs sequenced by Johnson’s rule using p 1 , i and p 2 , i and σ J R using α i and β i . Before a job is processed, we need to run CheckResource function for checking whether the job can be processed or not. Then, we append the job to the partial schedule σ . Repeat the same step until all the jobs are processed.
Algorithm 3: JR-time Permutation Heuristic
Mathematics 09 01527 i003
The second heuristic, JR-resource Permutation Heuristic, is the same as the previous one except that the job sequence is ordered by Johnson’s rule using α i and β i .

4.2. Non-Permutation

We design two heuristic algorithms that construct non-permutation schedules for F 2 | r p | C max . Let σ 1 be the sequence of the jobs processed on machine 1, and σ 2 the job sequence on machine 2. Let σ 2 ^ contain the jobs eligible for processing on machine 2. Algorithm 4 processes the jobs on machine 1 first. If a job satisfies the two constraints, it will be appended to the schedule. Since we want to construct a non-permutation schedule, we create σ 2 ^ to collect the jobs which are finished on machine 1 but not yet on machine 2. When the resource level is insufficient for the candidate job, we need to process the jobs on machine 2 for acquiring more resource. Therefore, we choose the job that has the largest β in σ 2 ^ to be processed first. However, this strategy may lead to an idle time when we only process the selected job. To avoid this situation, we first find the arrival time of the selected job that can be processed and we call it L a r g e B e t a A r r i v a l T i m e here. Then, check if the completion time of any other job is earlier than L a r g e B e t a A r r i v a l T i m e . Furthermore, we change the f r a c t i o n such that 1 f r a c t i o n is the acceptable time range that exceeds L a r g e B e t a A r r i v a l T i m e .
In Line 14, if the acceptable completion time is earlier than L a r g e B e t a A r r i v a l T i m e , then it is appended to σ 2 and removed form σ 2 ^ . This process iterates until all the jobs of σ 2 ^ are checked. After that, the job having the largest β is appended to σ 2 and removed form σ 2 ^ . We repeat the above steps until all the jobs be processed and then we get a feasible non-permutation schedule.
The second heuristic, JR-time Non-Permutation Heuristic, is similar to the first one except for using p 1 , i and p 2 , i to arrange the job sequence.
Algorithm 4: JR-resource Non-Permutation Heuristic
Mathematics 09 01527 i004

5. Ant Colony Optimization

In this section, we design an ACO algorithm to solve our problem. We will explain the framework and strategies of the algorithm for producing the approximate sequence.
State transition rule: In the ACO search process, each ant selects the next node to visit by calculating the preference for each path according to the pheromone intensity and heuristic visibility. In the proposed ACO algorithm, the preference P i j of an ant, positioned at node i, for selecting node j is defined as:
P i j = τ i j w τ η i j w η j I τ i j w τ η i j w η , if j I ; 0 , otherwise ,
where τ i j is the pheromone intensity on the link from node i to node j, and η i j the visibility value from node i to node j, and I the set of remaining admissible jobs to be processed. Parameters w τ and w η control the relative importance of τ i j and η i j . The greater a parameter is, the more influence of it to the preference value. In our design, the visibility value η i j is based on a greedy strategy. We prefer less processing times on both machines, less resource requirement, and larger amount of the resource returned by job for priority selection. Visibility value is defined as:
η i j = β j α j + p 1 j + p 2 j .
We use preference values P i j for our exploration strategy. This method is just like the roulette wheel that every node, i.e., every job has their transition probability, based on which we select the next job randomly. Every node has a chance to be selected, even the probability is low.
Pheromone updating rule: After all the jobs are processed, we update the pheromone tails so that the ants can select their future paths according to previous experience. The trail intensity on link ( i , j ) is updated as below:
τ i j = ( 1 ρ ) × τ i j + Δ τ i j ,
where ρ represents the pheromone evaporation rate, and Δ τ i j the incremental pheromone between nodes i and j given as:
Δ τ i j = Q C k , if j I ; 0 , otherwise .
In the above definition, Q is an adjustable parameter and C k the completion time of the last job on machine 2. This strategy is based on policy that the less C k is, the more pheromone on the path enhanced.
Stopping criterion: The proposed ACO algorithm assigns a colony of ants to probe their own sequences and set a maximum number of iterations. When all the ants complete their routes in one iteration, we select the minimum makespan, i.e., the elite, to be our current best solution. Then, we iterate the process until reaching the maximum number of iterations. If there is a better solution in iterations, this new solution will replace the current best one.
Permutation: To take into account the resource constraints on two machines, we only choose the job that would return the sufficient resource for the remaining jobs to be successfully processed. Therefore, we use the function CheckResource before ants select the next job and then enter the ACO algorithm to get the permutation sequence. This method is similar to JR Permutation Heuristic except that we use ACO to choose the job sequence.
Non-Permutation: For non-permutation sequences, we divide the algorithm into two parts. In the first part, we use the ACO algorithm to obtain the sequence on machine 1, similar as in Permutation. In second part, the difference form Permutation is when the resource is insufficient for the next job, we use the same method L a r g e B e t a A r r i v a l T i m e in JR-resource Non-Permutation Heuristic to select jobs to process on machine 2. Then, we can get a complete sequence and we use it to update the ACO algorithm. As a result, we can get the non-permutation sequence by ACO combined with the heuristic method on machine 2.

6. Computational Experiments

In this section, we present computational experiments on the proposed methods through test data to compare and analyze the performance of these algorithms. The programs were coded in Python and executed on a personal computer with an Intel(R) Core(TM) i7-8700K CPU running at 3.70 GHz with 32.0 GB RAM. The operating system is Windows 10. We will describe how the test data sets were generated. Then, we present the related parameter settings and discuss the experimental results.
Data generation schemes: In our experiments, all parameters are integer. Processing times p 1 , j and p 2 , j of jobs on different machines were generated from the uniform distribution, [ 1 , 10 ] . Resource parameters α j and β j were generated from the uniform distribution [ 1 , 20 ] . The initial resource level was considered based on 1.1 and 1.4 times the minimum resource requirement that is at least how much the resource is needed for all the jobs of each data set. Test data sets are categorized into 8 different job numbers n { 10 , 20 , 30 , , 80 } . For each job number, 5 independent sets were generated. Each set also has different uniform distributions for processing times p 1 , j and p 2 , j , the resource parameters α j and β j , and the initial resource requirement. That means that we have 40 different data sets in all. On each data set, say 10 jobs, heuristic algorithms were run only once since they are deterministic. For a specific setting, the values were averaged over 5 independent sets of the same setting. The ACO algorithm, due to its randomness nature, was exercised 5 runs on each data set to get its average performance.

6.1. Results of Heuristic Algorithms

In this experiment, we apply the four heuristic algorithms on different data sets. We compare permutation solutions with non-permutation ones in two different methods, namely JR-resource and JR-time. The initial resource level in all experiment results set by multiplying the minimum resource requirement by 1.1. For each problem size, the average objective value of derived solution (minimum makespan) are reported. Since the elapsed execution times of four heuristic algorithms are almost negligible, we do not show the execution time in the following tables. All detail experiment results of different data sets are shown in Appendix A.
In Table 2, the makespan of permutation sequence of perm and non-permutation is max β . It can be seen that the JR-resource algorithm can get better makespan than the JR-time algorithm. Since the constraint is considered by resource, it is obviously that when the jobs sequenced by processing time, the resource would insufficient and the jobs should wait for the resource returned which lead to idle time. In most of the data sets, the makespans of permutation heuristics are less than non-permutation ones (max β in Table 2). However, sometimes, non-permutation can get a better solution that reported in JR-resource with 10 jobs. We speculate that some jobs on machine 2 can fill up the idle time and thus decrease the waiting time on machine 1.
In the experiment, there are different fractions of the bearable exceeding time, which is the acceptable time length that exceeds L a r g e B e t a A r r i v a l T i m e , used in JR-resource and JR-time Non-Permutation Heuristics. The fraction ranges from 5 / 10 to 10 / 10 . Table 3 is for JR-time Non-Permutation Heuristics focused on processing times, and Table 4 for the heuristics focused on α i and β i . If we do not consider the bearable exceeding time, the makespan would be more than others that bear the exceed time because there is longer idle time in the sequences. It is clear that with the 10/10 fraction we get a longer makespan. In most cases, the makespan is the same regardless of the fraction. However, sometimes it is shown that if we bear too much exceeded time, we may get worse makespan with a 5/10 fraction of 20 jobs in JR-time and 5/10 to 6/10 fractions of 10 jobs in JR-resource. The results of fractions are not better than permutation ones, so we do not have further test for different fractions with 1.4 times the initial resource level.

6.2. Results of ACO Algorithms

We discuss the results of ACO algorithms with permutation and non-permutation options. We tuned several parameter values in preliminary tests to determine the setting for further experiments. We observed differences in the results, although not significant. The parameter values leading to better results were adopted as the base setting for the final computational tests. We set the two parameters w τ = 2 and w η = 3 that could get better makespan in the experiment we tested before. The pheromone evaporation ρ is 0.95 to avoid early convergence. Parameter Q is defined as the number of jobs divided by 10 and multiplied by 50. Setting 100 epochs for a solution with the colony size the same as the number of jobs. Then, we have each data set run this process 5 times to get an average makespan and an average elapsed execution time. The time unit here is second and “-” means that no feasible solution was found. All complete experiment results are shown in Appendix A.
In Table 5, perm indicates the permutation method, and max β the non-permutation method presented in Section 5. M2-enum is also non-permutation sequence that is different from the method we used in max β . The difference between them is that when the resource is insufficient on machine 1, M2-enum will enumerate all the possible sequences of candidate jobs on machine 2 to find the minimum makespan and return resource. This procedure is time-consuming because the number of possible sequences we need to compare is a factorial of the number of candidate jobs on machine 2. Therefore, when the job number is larger than 30, we cannot get a solution in 3600 s. We also experiment on the integer programming method (IP) proposed by Cheng et al. [13] to solve the problem. The IP can get the optimal solutions for data sets. However, when the number of jobs is over 10, it cannot find any feasible solution in 3600 s for most data sets. Therefore, it is regarded as no solution found. With the initial resource is multiplied by 1.1, it is clear that perm can obtain a better makespan and the required run time of perm is also less than max β .
Table 6 indicates that with more initial resource a better makespan can be achieved, as comapred with those in Table 5. Similarly, M2-enum and IP cannot get any solution when job numbers are over 30 and 10, respectively, in 3600 s. It is also shown that when the initial resource level is larger, for like 30 jobs, M2-enum will waste more time so that it cannot find better solutions in 3600 s (Displayed in Table A18). Then, the permutation method can find an approximate solution with less time. However, results of 1.1 and 1.4 times are within spitting distance when the quantity of jobs increases. It is reckoned that the processing times of the subsequent jobs on machine 2 are larger and the resource is sufficient for them, so their starting times are later than their completion times on machine 1 and they keep processing continuous without idle time. Therefore, the makespan of larger data sets are not quite different when the initial resource increases.
Table 7 shows that different fractions of the bearable exceeding time used in ACO Non-Permutation algorithms with different times of the initial resource. In most cases, it would get less makespan with considering the bearable exceeding time. The makespan resulted from fractions between 5/10 and 9/10 are not quite different. It is clearly shown that the makespan of 10/10 fraction is longer than others. As a result, setting the bearable exceeding time can achieve a better performance.

6.3. Comparison between Heuristics and ACO Algorithms

We discuss the experiment results of the heuristic and the ACO algorithms with special focus on permutation results of JR-time and JR-resource because the makespan of permutation cases are less than other non-permutation heuristic algorithms. ACO-10/10 is the 10/10 fraction of exceeding time bearable in the non-permutation ACO algorithm. We also choose the 5/10 fraction (ACO-5/10) and the permutaion of ACO (ACO-perm) as the control groups.
In Figure 5 and Figure 6, both heuristic algorithms produced larger makespan no matter if the initial resource is multiplied by 1.1 or 1.4, especially for the JR-time. However, there is still some deviations in the ACO algorithms owing to the randomness nature. Except for the above situation, 1.4 times are still better than 1.1 times in most cases with permutation and non-permutation methods, especially JR-time. We reckon that with a higher initial resource level, more jobs on machine 1 can keep continuous processing, thus reducing the idle time waiting for resource return. Concerning the ACO algorithm, it is clear that that the 5/10 fraction is better than the 10/10 case.

7. Conclusions and Future Works

In this paper, we considered the relocation problem in a two-machine flow shop scheduling problem with the second machine introduced for recycling the resource returned by jobs completed on the first machine. For this problem, we proved that given a sequence of jobs on whichever machine, the problem is still strongly NP-hard. The case with two fixed sequences of jobs on both machines can be solved in polynomial time. For the computationally hard problem, we proposed two heuristic algorithms to construct feasible schedules with permutation and non-permutation sequences. ACO algorithms were designed to find processing sequences on the two machines. Computational experiments indicates that JR-resource produced better makespan than JR-time, and both of their permutation algorithms are better than the non-permutation ones. This result is similar as in ACO algorithm that the makespan of permutation solutions are better. However, when we considered the bearable exceeding time, non-permutation sequences can get better solutions. Between heuristics and ACO algorithms, it is shown that ACO algorithms yielded schedules with less makespan.
For further studies, there is room for further improvements of our proposed solution methods by developing effective methods to arrange the job sequence on machine 2 to mitigate the incurred idle time. Furthermore, we can also combine processing time and resources as a control factor in the heuristic algorithms. It would be also interesting to deploy machine learning and reinforcement learning approaches for finding better parameter settings and updating strategies. We also note that to optimally solve the problem is still limited to small-scale instances. For larger instances, we need tighter lower bounds to facilitate the development of exact methods and provide a tight comparison base for approximation methods. Another direction is identifying application contexts in which the unique type of resource constraints, the amount of consumed resource and the amount of returned resource could be different, is applicable.

Author Contributions

Conceptualization, T.-C.L. and B.M.T.L.; methodology, T.-C.L. and B.M.T.L.; software, T.-C.L.; formal analysis, T.-C.L. and B.M.T.L.; writing—Original draft preparation, T.-C.L. and B.M.T.L.; writing, T.-C.L. and B.M.T.L.; supervision, T.-C.L. and B.M.T.L.; project administration, B.M.T.L.; funding acquisition, B.M.T.L. All authors have read and agreed to the published version of the manuscript.

Funding

Lo and Lin were partially supported by the Ministry of Science and Technology of Taiwan under the grant MOST-109-2410-H-009-029.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Datasets analyzed in this study can be found at http://cpanel-199-19.nctu.edu.tw/~bmtlin/F2RP.zip (accessed on 29 June 2021).

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Detail Experiment Results

All of the experiment results mentioned in Section 6 are summarized from the detail information shown below. We show the makespan ( C max ) and execution time for each data set followed by the average over five data sets in different job numbers. In the tables, “perm” means permutation method, and “max β ” non-permutation with a 10/10 fraction. We also set the execution time to stop the program if it exceeds 3600 s. Therefore, if we cannot obtain any solution in 3600 s, we indicate the situation by an “-” entry. In ACO, owing to its randomness property, we run each data sets for five times which is “Run.” in the tables. In Table A18 and Table A19, when the numbers of jobs are over 30 and 10, we cannot obtain solutions for most cases so that we do not experiment on the cases with more jobs. It is clear that most results are associated with an “-”, indicating that no solutions were found within 3600 s.
Table A1. JR-resource with 1.1 × initial resource levels.
Table A1. JR-resource with 1.1 × initial resource levels.
Setspermmax β 9/108/107/106/105/10
C max Time C max Time C max Time C max Time C max Time C max Time C max Time
10
1780.00780.00780.00780.00780.00780.00780.00
2950.00900.00900.00900.00900.00950.00950.00
3820.00810.00810.00810.00820.00820.00820.00
4720.00720.00720.00720.00720.00720.00720.00
5710.00710.00710.00710.00710.00710.00710.00
Avg.800.00780.00780.00780.00790.00800.00800.00
20
11440.001540.001440.001440.001440.001440.001440.00
21480.001480.001480.001480.001480.001480.001480.00
31170.001260.001180.001170.001170.001170.001170.00
41600.001650.001650.001600.001600.001600.001600.00
51150.001150.001150.001150.001150.001150.001150.00
Avg.1370.001420.001380.001370.001370.001370.001370.00
30
11960.001960.001960.001960.001960.001960.001960.00
22090.002090.002090.002090.002090.002090.002090.00
31940.001940.001940.001940.001940.001940.001940.00
42010.002110.002010.002010.002010.002010.002010.00
51930.002000.001930.021930.001930.001930.001930.00
Avg.1990.002020.001990.001990.001990.001990.001990.00
40
12670.002700.002670.002670.002670.002670.002670.00
22290.002310.002290.002290.012290.002290.002290.00
32600.002680.002600.002600.002600.022600.002600.00
42780.002860.002780.002780.002780.002780.002780.00
52560.002560.022560.002560.002560.022560.002560.00
Avg.2580.002620.002580.002580.002580.012580.002580.00
50
13100.003110.003100.003100.003100.003100.003100.01
23240.003240.023240.003240.003240.023240.003240.00
32850.002880.002850.002850.002850.002850.002850.00
43070.003070.023070.003070.003070.023070.003070.00
53090.003090.003090.023090.003090.003090.013090.00
Avg.3070.003080.013070.003070.003070.013070.003070.00
60
13400.003500.023400.003400.003400.003400.013400.01
23590.003620.003590.023590.003590.023590.013590.01
33470.003530.003470.023470.023470.023470.013470.01
43480.003480.023480.003480.003480.003480.013480.01
53590.003700.003600.003590.003590.023590.013590.01
Avg.3510.003570.013510.013510.003510.013510.013510.01
C max Time C max Time C max Time C max Time C max Time C max Time C max Time
70
14410.004410.004410.024410.024410.024410.014410.01
23920.003920.003920.023920.023920.023920.013920.01
34480.004590.024480.024480.024480.024480.014480.01
44550.004550.024550.024550.024550.024550.014550.01
53950.004070.024020.023950.003950.003950.013950.01
Avg.4260.004310.014280.024260.014260.014260.014260.01
80
15050.005050.025050.025050.025050.025050.015050.01
24660.004730.024660.024660.024660.024660.014660.01
34790.004830.024790.024790.024790.024790.014790.01
44380.004410.024380.024380.024380.024380.014380.01
54490.004570.024490.024490.024490.024490.014490.01
Avg.4670.004720.024670.024670.024670.024670.014670.01
Table A2. JR-time with 1.1 × initial resource levels.
Table A2. JR-time with 1.1 × initial resource levels.
Setspermmax β 9/108/107/106/105/10
C max Time C max Time C max Time C max Time C max Time C max Time C max Time
10
1890.00890.00890.00890.00890.00890.00890.00
21010.001090.001010.001010.001010.001010.001010.00
3770.00860.00840.00770.00770.00770.00770.00
4780.00840.00780.00780.00790.00740.00740.00
5900.00900.00900.00900.00900.00900.00900.00
Avg.870.00920.00880.00870.00870.00860.00860.00
20
11510.001540.001570.001520.001520.001520.001520.00
22110.002360.002160.002120.002120.002120.002120.00
31580.001630.021580.001580.021580.021580.001580.00
41970.002190.002030.001970.001970.001970.001970.00
51150.001130.001100.001100.001110.001110.001150.00
Avg.1660.001770.001690.001660.001660.001660.001670.00
30
13170.023160.003170.003170.003170.003170.013170.00
22390.002310.022340.002400.002400.002400.002400.00
32200.002290.002220.002220.002220.002220.002220.00
42720.002890.022780.002720.022720.022720.002720.00
52080.002130.002090.002080.002080.002080.002080.00
Avg.2510.002560.012520.002520.002520.002520.002520.00
C max Time C max Time C max Time C max Time C max Time C max Time C max Time
40
13180.023340.003170.003180.003180.023180.013180.01
22720.022760.002710.002720.002720.022720.012720.01
33330.023560.003330.003330.003360.023360.013330.01
44010.024150.004030.004010.014010.024010.014010.01
53370.023430.003340.003370.013370.023370.013370.01
Avg.3320.023450.003320.003320.003330.023330.013320.01
50
14430.004460.024420.024430.024430.024430.024430.02
24000.024040.023980.004000.024000.024000.014000.01
34160.004410.024170.024140.024180.024180.024180.01
44640.004750.024620.024650.024640.024640.024640.02
54020.004310.024020.024000.024000.024020.024020.02
Avg.4250.004390.024240.014240.024250.024250.024250.02
60
15830.025960.035880.035850.035850.025830.035830.03
25100.025640.035140.035120.035120.035120.035120.02
34480.024550.024500.044480.024480.034480.034480.03
43910.003850.033820.023920.023920.033920.023910.02
54400.024710.034400.024400.034400.024400.024400.03
Avg.4740.014940.034750.034750.024750.024750.034750.03
70
14900.025010.054900.034900.034900.034900.034900.03
26140.026250.036150.046150.036150.056150.036150.04
37410.037480.057410.057410.057410.037410.047410.04
45060.034980.054950.035050.035060.025060.035060.03
56310.026540.066340.036340.056330.056320.046310.04
Avg.5960.026050.055950.045970.045970.035970.045970.04
80
15780.025830.065780.055780.065790.055780.055780.05
26150.036390.066150.066150.066150.066150.066150.06
38240.038310.068270.088270.068240.058240.068240.06
45140.034960.055170.035170.065170.035170.045170.04
56490.026590.066520.066510.056510.056510.056490.05
Avg.6360.026420.066380.066380.066370.056370.056370.05
Table A3. JR-resource and JR-time with 1.4 × initial resource levels.
Table A3. JR-resource and JR-time with 1.4 × initial resource levels.
SetsJR-ResourceJR-Time
permmax β permmax β
C max Time C max Time C max Time C max Time
10
1690.00690.00910.00910.00
2950.00900.001010.001090.00
3730.00750.00770.00850.00
4700.00700.00630.00640.00
5710.00710.00900.00900.00
Avg.760.00750.00840.00880.00
20
11360.001450.001410.001490.00
21410.001410.001890.001890.00
31170.001260.001580.001630.00
41600.001650.001970.002190.00
51110.001110.001070.001070.00
Avg.1330.00137.60.001580.001650.00
30
11910.001910.003160.003210.01
22090.002090.002160.002130.00
31940.001940.001970.002070.01
42010.002110.002720.002890.00
51870.001940.001880.001860.00
Avg.1960.00199.80.002380.002430.00
40
12670.002700.003180.003340.01
22290.002310.002380.002400.01
32600.002680.002990.003070.01
42780.002860.004010.004150.01
52560.002560.003270.003320.01
average2580.00262.20.003170.003260.01
50
13100.003110.004430.014460.02
23240.003240.003440.013370.01
32850.002880.003580.013710.01
43070.003070.004620.014640.02
53090.003090.004020.014310.02
Avg.3070.00307.80.004020.014100.02
60
13400.003500.015890.016040.03
23590.003620.015020.015240.03
33470.003530.014480.014550.03
43480.003480.013470.013520.02
53590.003700.014400.014710.03
Avg.3510.00356.60.014650.014810.03
permmax β permmax β
C max Time C max Time C max Time C max Time
70
14410.004410.014900.025010.03
23920.003920.015690.025870.04
34480.004590.016800.026990.04
44550.004550.014790.024590.03
53950.004070.016030.026210.04
Avg.4260.00430.80.015640.025730.04
80
15050.005050.015500.035210.05
24660.004730.016150.026390.06
34780.004820.018170.028240.06
44380.004410.014810.034460.04
54490.004570.015910.036100.05
Avg.4670.00471.60.016110.036080.05
Table A4. ACO Permutation with 1.1 × initial resource levels.
Table A4. ACO Permutation with 1.1 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1660.41820.41730.41610.39640.4030348.8632150.8227749.2029451.3530050.37
2660.41820.41730.41610.41640.4130349.3132150.2727749.0929450.7730050.55
3680.41830.41730.41610.41640.4130349.1832150.9127950.1729450.9930050.57
4660.41820.41730.41600.41640.4130348.7632149.9427750.6729450.6329851.03
5660.41820.42730.39610.41640.3930348.9132049.7527850.3629450.9030150.48
Avg.660.41820.41730.40610.40640.4030349.0032150.3427849.9029450.9330050.60
2060
11222.371342.321092.311552.341082.3132591.7533792.80339103.4734697.9334997.29
21232.341342.321092.321532.391082.3332592.2533793.09339100.06346101.7434998.19
31222.311342.301112.311542.361082.3132592.80337101.4033995.9234398.3634999.48
41222.301342.321092.311532.381082.3132493.05337102.1133996.9734695.8734998.85
51222.301342.331082.331552.381082.3132593.06337101.4833998.0834695.8834999.10
Avg.1222.331342.321092.321542.371082.3232592.5833798.1833998.9034597.9634998.58
3070
11818.221998.241878.081838.261728.28427237.11382232.36437243.98446232.11396244.93
21788.321998.231858.301878.191728.33426231.01383231.93436240.15446233.42396236.99
31798.341998.021878.151868.341728.19426231.26383232.20437242.17446235.37397240.01
41788.271998.311878.161868.191728.19428233.16384235.12438243.92446228.57396235.52
51808.351998.071878.261858.351728.24426231.87382234.44437242.01446235.86395244.66
Avg.1798.301998.181878.191858.271728.25427232.88383233.21437242.45446233.06396240.42
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
4080
123422.9422622.2623722.2124421.8825521.37493262.88459272.06474280.10429286.30426290.69
223422.3422522.1523722.1724422.1825521.70494264.76457268.81476301.40429282.64426279.41
323422.3922522.1223722.2224421.9725521.79491269.19459274.39476289.93429286.31427279.23
423422.2322622.4223723.4924421.4625521.92491267.44459274.37476290.52429286.06426283.96
523422.2022622.3723721.2724421.6625521.58491261.35460274.82476287.02429292.30428288.61
Avg.23422.4222622.2623722.2724421.8325521.67492265.12459272.89476289.80429286.72427284.38
Table A5. 10/10 fraction in max β of ACO with 1.1 × initial resource levels.
Table A5. 10/10 fraction in max β of ACO with 1.1 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1660.80830.82760.80610.77640.7830473.5932272.1128174.4629576.7529875.98
2660.81830.84760.81610.77640.7830473.2032371.6128474.4029576.5930074.93
3660.80830.82760.81610.77640.7730572.0332072.1828174.0829476.5430173.19
4660.80830.81760.81610.77640.7730570.0932172.0528173.9329475.7430071.40
5660.81820.83760.81620.78640.7730372.6432172.1228273.6029476.0230071.38
Avg.660.80830.82760.81610.77640.7730472.3132172.0228274.0929476.3330073.38
2060
11254.451344.351094.521654.841084.34335133.58342139.84345137.31346137.39353138.52
21254.471374.331104.501594.921084.36335141.68343140.46343137.01346140.27353140.43
31244.561374.481114.581624.951084.38334139.79341138.67343140.84346136.81353142.69
41254.581354.491104.511624.841084.35333141.93341138.21345140.37346136.16352138.97
51244.441374.591104.561634.861084.34332143.57341134.99344139.70346136.96354139.60
Avg.1254.501364.451104.531624.881084.36334140.11342138.43344139.05346137.52353140.04
3070
118313.8619912.8418713.3118913.4717313.65427237.11382232.36437243.98446232.11396244.93
218413.7219912.8018813.2819013.2017213.71426231.01383231.93436240.15446233.42396236.99
318513.7719912.8018713.6418913.3917313.54426231.26383232.20437242.17446235.37397240.01
418413.7119912.8518713.7919013.7017413.81428233.16384235.12438243.92446228.57396235.52
518413.8219912.8418713.6318913.8017413.64426231.87382234.44437242.01446235.86395244.66
Avg.18413.7719912.8318713.5318913.5117313.67427232.88383233.21437242.45446233.06396240.42
4080
124038.5222638.3224236.4224935.6125536.54492375.78462349.85477360.96431352.80432347.36
223838.5222638.4924136.8925135.4925536.70491370.97461351.44476354.39432341.28432343.65
323937.9622639.2524337.0625035.5725536.49491346.62461353.05476371.67432346.74432346.67
423738.0322738.2924135.9725335.5025536.04491346.77462370.16476355.03432347.73433343.81
523839.1222636.2224235.7924935.5725536.28492338.27462349.98477352.28432350.91432345.74
Avg.23838.4322638.1124236.4325035.5525536.41491355.68462354.90476358.87432347.89432345.45
Table A6. 9/10 fraction in max β of ACO with 1.1 × initial resource levels.
Table A6. 9/10 fraction in max β of ACO with 1.1 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1660.86820.90750.88610.83640.8530377.8232174.8227880.5429481.3430075.74
2660.91820.91750.88610.83640.8530377.5632071.9527982.3729480.5730074.94
3640.89820.90760.88610.85640.8530376.5732074.9727780.3029480.3429675.27
4670.91820.91750.89620.83640.8630376.9932177.1927979.9029480.8530075.89
5640.89820.91740.89610.84640.8530377.5332178.5927876.8529483.6630075.41
Avg.650.89820.91750.88610.84640.8530377.3032175.5027879.9929481.3529975.45
2060
11234.711344.641094.681534.951084.51327141.19337136.65339138.21346138.00349141.32
21224.721344.631084.661545.011084.50328139.83337137.01339138.86346141.57349140.31
31224.701344.651074.671524.961084.54325135.63337136.45339138.58346141.70349143.52
41234.721344.651104.701554.981084.53326133.17337137.07339142.03346140.06349145.28
51224.721344.641104.701534.951084.52328138.14338138.98339143.39346140.57349145.65
Avg.1224.711344.641094.681534.971084.52327137.59337137.23339140.21346140.38349143.21
3070
118014.6519913.8218714.5518314.1017214.36426226.28382221.02435219.65445221.61394223.12
217914.6619914.1718714.4518514.6217214.47426222.66382212.25435220.95446215.60394217.91
317914.9119914.1418714.3018514.2517214.38426217.61382213.16435220.95446217.37394218.23
417814.6919913.9918714.7018514.1317214.42426218.11382215.98435219.74445218.73394218.14
517815.5219914.0818714.1718414.4717214.43426221.69382215.92435219.88445215.06394218.20
Avg.17914.8919914.0418714.4318414.3117214.41426221.27382215.66435220.23445217.67394219.12
4080
123435.6122634.9723737.9324538.0225536.98492375.78462349.85477360.96431352.80432347.36
223435.8322635.4023737.8224538.4425337.02491370.97461351.44476354.39432341.28432343.65
323435.4422534.8523737.9024638.1025336.78491346.62461353.05476371.67432346.74432346.67
423436.3922635.3823738.3024538.0725536.94491346.77462370.16476355.03432347.73433343.81
523436.1422636.8923738.1624438.3825437.28492338.27462349.98477352.28432350.91432345.74
Avg.23435.8822635.5023738.0224538.2025437.00491355.68462354.90476358.87432347.89432345.45
Table A7. 8/10 fraction in max β of ACO with 1.1 × initial resource levels.
Table A7. 8/10 fraction in max β of ACO with 1.1 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1660.83820.80740.78600.74640.7730375.9132068.7127871.7129473.9030072.48
2640.81820.80750.78610.73640.7530371.7932070.2027871.9729473.3030071.27
3660.80820.80730.77610.73640.7730371.8932071.2327771.1629475.1030071.72
4660.81820.80740.78610.75640.7530373.0332069.7327771.8629473.6130071.68
5640.80820.80750.78610.73640.7530371.4732069.8627772.0929473.9230071.85
Avg.650.81820.8074.20.78610.74640.7630372.8232069.9527771.7629473.9730071.80
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
2060
11214.431344.241104.311514.611084.14326139.02337135.00339135.43346133.79349130.65
21214.341344.301094.441534.591084.14325138.47337136.73339129.84346130.84349128.93
31214.391344.331094.301544.581084.14327138.06337137.37339129.56343130.46349127.88
41224.361344.271094.381544.561084.09325139.67337134.98339131.12346133.02349128.04
51234.391344.281094.371554.531084.17327135.08337134.00339138.65343130.87349127.35
Avg.1224.381344.281094.361534.571084.14326138.06337135.62339132.92345131.80349128.57
3070
118014.0419913.4118713.7018413.4517213.86426241.06382221.76435234.29446231.74394231.07
217813.8919913.3118713.6418413.4317214.02426250.99382228.99435238.28446231.08394246.31
317914.0519813.3018713.7318413.7117214.00426252.71382230.86435239.93445221.51394238.70
418014.1119913.3618713.5618613.8617213.94426232.75381228.95435239.59445226.95394239.24
517914.1019912.9818713.5818413.5117213.93426225.05382248.09435240.17445235.00394236.33
Avg.17914.0419913.2718713.6418413.5917213.95426240.51382231.73435238.45445229.25394238.33
4080
123433.5722633.1123733.3424433.8325534.57492390.40456392.66476397.85429389.19428388.73
223433.6422633.1323733.6624434.4725534.15491401.52459392.01476410.50429395.19427395.45
323433.2722633.0023733.7324434.1825334.07492386.09459403.42476408.59429386.62426391.20
423433.9222632.9023733.5124434.0425534.22491392.32461393.11476406.42429388.55426390.01
523433.5522632.6623733.8324434.1725334.72491394.83459398.15476406.28429383.86425400.62
Avg.23433.5922632.9623733.6124434.14254.234.35491393.03459395.87476405.93429388.68426393.20
Table A8. 7/10 fraction in max β of ACO with 1.1 × initial resource levels.
Table A8. 7/10 fraction in max β of ACO with 1.1 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1660.80820.81760.78610.75640.7830381.1332076.2927978.4529480.3830078.42
2640.82820.81730.80610.75640.7730381.7231977.5327876.2629481.0230078.29
3640.80820.83740.78610.78640.7730382.7832075.9527876.1929481.2730077.83
4660.81820.83740.80610.77640.7730380.4731975.5127876.1629481.5130077.96
5660.80820.80740.78600.77640.7830379.4932074.8027776.1129481.5730078.58
Avg.650.81820.8274.20.79610.76640.7730381.1232076.0227876.6429481.1530078.22
2060
11224.751344.781094.941555.001084.66325145.04337144.45339145.83346144.10349146.28
21224.761344.731104.941534.981084.58326147.64337142.39339144.15346140.60349144.70
31234.751344.701104.941525.111084.58325151.54337144.42339146.35346140.53349145.21
41234.671344.841104.891535.201084.64325149.09337145.36339145.84344140.23349144.35
51214.721344.881104.751525.001084.59324148.09337145.79339146.22346141.77349144.56
Avg.1224.731344.781104.891535.061084.61325148.28337144.48339145.68346141.44349145.02
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
3070
117815.6919914.8818715.3018415.2817215.81427239.67382226.74435240.19446243.32394253.61
217915.7019914.6618715.3018515.4917215.47426243.98382231.35435247.64445261.67394252.07
317815.6319914.6618715.2018315.2817215.72426241.49382232.59435250.78446256.78394249.48
417815.5419914.8218715.1518515.3617215.56426234.57381234.01435241.50446250.07394254.81
517715.8619914.8718715.1118515.1117215.59427226.02382238.63435229.16445246.84394253.42
Avg.17815.6819914.7818715.2118415.3017215.63426237.15382232.66435241.85446251.74394252.68
4080
123436.1322640.4823741.0724440.7725539.08491352.66457372.15476364.67429347.80425350.14
223441.4222640.4323741.1524440.5825339.08491362.31460359.62476356.04429353.10426350.78
323441.5922640.4323740.6624440.6125540.77491357.62457356.03476362.06429340.50427352.36
423441.0722641.0423740.0424440.4825441.65492349.59460355.83476362.85429341.16426351.01
523441.3522640.9523740.0724438.9525541.56491350.00459363.36476358.65429340.25428352.00
Avg.23440.3222640.6723740.6024440.28254.440.43491354.44459361.40476360.85429344.56426351.26
Table A9. 6/10 fraction in max β of ACO with 1.1 × initial resource levels.
Table A9. 6/10 fraction in max β of ACO with 1.1 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1660.82820.87750.84610.77640.8030384.1032071.4027776.1329479.0230075.71
2640.82820.85740.80600.77640.7930378.0032173.8127775.5429480.1929976.62
3660.80820.87740.82610.78640.8030374.5632176.0927777.7229478.7230076.84
4660.81820.86740.83610.80640.7830373.7031974.1127876.3029479.3730077.50
5660.82820.86750.85610.78640.7930373.2732174.2827874.5529479.7030077.19
Avg.660.82820.8674.40.83610.78640.7930376.7332073.9427776.0529479.4030076.77
2060
11214.601344.501094.501534.851084.56327141.96337142.32339142.07346138.16349141.01
21214.661344.481074.601534.881084.56326141.70337140.15339145.36346138.41349138.29
31234.651344.551104.621534.831084.46326144.69337137.77339144.49342138.68349140.56
41224.591344.561074.601544.821084.47326148.28337138.50339144.32346139.33349141.35
51224.631344.501094.571544.871084.38326144.58337138.47339144.73346137.57349140.42
Avg.1224.631344.521084.581534.851084.49326144.24337139.44339144.20345138.43349140.33
3070
117914.7919915.1318715.9318515.8917216.42426250.03382255.22435253.63446249.17394263.45
217814.6619914.9518715.7518515.9017216.94427248.29382252.99435264.60445248.31394258.80
317914.7419914.9118715.7818516.6617214.83426260.56382253.93435266.52445244.39394255.52
417815.4719915.0218715.8818516.3317215.14426257.73382259.06435258.85446250.25394262.16
517816.2219915.0118715.7518316.5517215.51426261.93382251.41435260.53446248.11394262.06
Avg.17815.1819915.0118715.8218516.2617215.77426255.71382254.52435260.82446248.05394260.40
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
4080
123440.6222639.7023742.4724442.9125443.84491345.15459363.19476405.04429371.25427395.82
223440.8322640.2523741.8124443.0025542.47491349.86459362.35476401.10429408.69427400.23
323540.7022440.6723742.3624442.4625343.08491363.31459380.68476406.06429396.13427398.01
423440.8122640.6223742.1924442.8125441.81491355.77459410.13476407.89429399.04426400.03
523440.6422641.4023742.9724543.1325439.00491353.87460400.75476409.60429396.60426396.07
Avg.23440.7222640.5323742.3624442.8625442.04491353.59459383.42476405.94429394.34427398.03
Table A10. 5/10 fraction in max β of ACO with 1.1 × initial resource levels.
Table A10. 5/10 fraction in max β of ACO with 1.1 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1660.81820.87730.80610.80640.8930372.0732069.8227770.5929473.9330070.89
2660.80820.84740.84600.80640.9730371.2632168.6827969.9829473.5030070.51
3660.81820.84730.84600.86640.8530371.8432168.0027770.0029473.5730071.20
4660.82820.83730.83600.80640.8930371.9632169.4327770.3029473.2230070.50
5660.81820.83740.82600.84640.8430371.8232069.1227970.7829473.7330071.41
Avg.660.81820.8573.40.83600.82640.8930371.7932169.0127870.3329473.5930070.90
2060
11224.501344.481094.711544.921084.42326129.69337134.31339128.27346125.95349127.23
21224.551344.511114.761534.941084.43326128.17337128.05339128.40346125.94349130.87
31224.511344.551084.861554.941084.52326131.61337127.31339128.30346125.48349130.67
41214.471344.571104.701535.121084.45325133.03337126.95339128.40346125.64349131.79
51224.491344.661084.561534.901084.66325132.79337127.01339128.45346125.79349132.32
Avg.1224.501344.551094.721544.971084.49326131.06337128.73339128.36346125.76349130.58
3070
117914.9319914.2018714.4418514.9317214.59426238.87382257.53435271.36445269.61394276.76
217914.5719913.8618714.3818514.7017214.62426223.68382270.23435279.23445267.17394254.83
317814.5819813.9818714.7218514.6517214.50426244.73382277.17435269.71446268.80394267.50
417914.6819913.8718714.3218514.6917214.59426242.79382270.89435270.17445268.87394276.46
517914.6119914.0118714.8718514.5217214.56426234.45382269.20435274.05446267.15394256.08
Avg.17914.6819913.9818714.5518514.7017214.57426236.90382269.00435272.90445268.32394266.33
4080
123435.8122435.4123735.2524435.7625336.26491349.43458347.66476355.28429336.65427345.07
223435.1022635.3623735.2924435.6325337.32492348.48460346.87476356.84429340.46426347.93
323435.5022634.4723735.3624435.6125535.52493360.13460345.98476358.21429341.88426344.11
423435.0122634.3823735.3324435.1625535.23491348.64459350.96474352.55429340.05425344.19
523436.1822635.0723735.3124435.8225436.18491346.19460346.46476353.20429342.86427345.99
Avg.23435.5222634.9423735.3124435.6025436.10492350.57459347.59476355.22429340.38426345.46
Table A11. ACO Permutation with 1.4 × initial resource levels.
Table A11. ACO Permutation with 1.4 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1600.40820.42650.43590.42640.4730344.1231952.1427751.6929348.3529949.90
2600.41820.41650.42590.40640.4330344.1932151.9827851.8229349.5130050.13
3600.41820.42650.41590.41640.4330346.8032151.3227751.8629348.4130047.95
4590.41820.42650.42590.45640.4430348.6232154.7727751.9529348.4230048.78
5590.42830.41650.41590.46640.4430350.6932153.7427950.9429248.9230049.98
Avg.600.41820.42650.42590.43640.4430346.8832152.7927851.6529348.7230049.35
2060
11192.361322.371112.751542.431082.3832594.5633794.7033996.2734698.5934996.67
21192.441322.351112.381562.431082.3932693.7933794.6933995.27346101.8034996.86
31192.401322.331082.391522.441082.3732594.1033795.0033990.3034499.10349102.86
41192.701322.411102.421542.451082.3732594.1133795.3233997.2034696.5234996.35
51192.641322.621102.381542.441082.4132495.2333795.1133998.5534198.1334987.34
Avg.1192.511322.411102.461542.441082.3832594.3633794.9633995.5234598.8334996.02
3070
11758.191998.521878.521868.181718.23426151.96382155.61435161.65445164.42394166.58
21748.661998.361878.571878.111718.22427153.84382158.69435161.05446160.26394159.41
31768.291998.241878.201858.371718.09427161.72382160.61435162.51446158.98394165.49
41748.061998.621878.381848.421718.04426156.67381156.82435161.68445166.21394165.23
51738.331998.251878.481878.201718.10426155.25380154.27435159.76446167.91394161.85
Avg.1748.311998.401878.431868.261718.14426155.89381157.20435161.33446163.56394163.72
4080
123422.1122621.0423721.1924421.4025221.31491267.29459262.07475257.31429264.95425257.91
223422.6722622.5623721.9224421.5125221.08491271.28458261.66474260.63429271.69425251.82
323421.5922622.2023721.2624421.3625221.49491266.73459259.88474262.55429267.61425269.71
423421.4622621.5523721.9324422.1925220.70491261.10459258.10474264.23429269.63425255.35
523421.8722621.4123721.4924421.7025220.79491267.99458255.27474270.05429263.06425259.92
Avg.23421.9422621.7523721.5624421.6325221.07491266.88459259.39474262.96429267.39425258.94
Table A12. 10/10 fraction in max β of ACO with 1.4 × initial resource levels.
Table A12. 10/10 fraction in max β of ACO with 1.4 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1600.82830.83690.79590.75640.8030470.1032169.3828168.8329471.0030071.04
2610.81830.81650.79590.74640.8030570.5732166.7128167.8429470.7530071.30
3590.80830.83680.78590.72640.8130470.1432166.1928067.4729370.7030071.48
4600.78830.85680.78590.74640.7830370.1032167.3928168.1629271.2930070.54
5590.80830.82680.79590.73640.8130670.2532166.7228168.4929370.7530070.94
Avg.600.80830.83680.79590.74640.8030470.2332167.2828168.1629370.9030071.06
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
2060
11194.381344.401114.491604.711084.12331132.65341133.61343130.06346125.04351131.37
21194.531334.511114.481574.761084.01333132.66339126.78340127.96346130.12353130.25
31194.511344.341114.461624.721084.13333129.97339127.06345127.95346128.06354130.49
41194.621334.291114.451634.781084.05334128.33338126.99344127.21346127.61353131.08
51194.391344.381124.471624.781084.22335128.70341127.05342127.76346126.90351131.90
Avg.1194.491344.381114.471614.751084.11333130.46340128.30343128.19346127.54352.4131.02
3070
118014.5319913.4518713.6319014.1817213.97426223.65383224.15438224.10446225.36396228.87
218114.3919913.3318713.9518914.1917213.97427221.73383225.46437224.98446218.05395234.39
318014.4819913.2018713.8418914.3517114.08427221.17382220.01437235.77445219.83394240.44
418014.6519913.1018713.7719014.2217214.04427222.83383219.55438235.66446219.19396234.23
517914.5819912.9918713.6218814.2417214.06428230.13383218.47436242.94446212.65395232.63
Avg.18014.5219913.2118713.7618914.23171.814.02427223.90383221.53437232.69446219.01395.2234.11
4080
123834.7922632.2924133.8524834.1325234.58491361.10461365.65476367.03432356.03432374.91
223733.8022632.3024034.0225034.7125235.05491351.14460379.02476384.25432358.12432361.36
323834.3622633.1024133.9625034.7925235.29492351.12461365.51476389.75431361.65431364.59
423933.4022632.4624133.9824834.4425235.94493352.39461365.27476375.20430354.07432362.76
524133.5822632.4124233.9324934.4725235.30492349.35461358.78476370.01430359.80428366.10
Avg.23933.9922632.5124133.9524934.5125235.23492353.02461366.84476377.25431357.93431365.94
Table A13. 9/10 fraction in max β of ACO with 1.4 × initial resource levels.
Table A13. 9/10 fraction in max β of ACO with 1.4 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1590.79820.83650.78590.74640.8030370.9832067.0927970.0029372.8329970.42
2600.79820.88680.77590.73640.8130371.2532067.3427769.3529272.5230070.00
3600.78820.84680.81590.76640.8030370.8532167.2027770.0829372.7830068.74
4600.76820.85680.80590.79640.8030370.9432067.3327769.8229272.5830068.60
5590.78820.82680.81590.77640.7930370.4932167.6927869.7429272.7330069.49
Avg.600.78820.85670.79590.76640.8030370.9032067.3327869.8029272.6930069.45
2060
11194.431324.531094.581524.811084.27327129.64337130.01339132.17346125.70349129.38
21194.601324.571104.571524.881084.42325129.85337127.65339131.66346125.47349130.15
31194.581324.581074.581554.851084.23328131.25337130.42339131.22346127.41349131.58
41194.471324.511104.621554.801084.16326130.20337128.24339130.18346126.64349130.51
51194.631324.481084.541554.841084.06327130.41337129.65339131.22346125.51349130.05
Avg.1194.541324.531094.581544.841084.23327130.27337129.19339131.29346126.15349130.33
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
3070
117514.4319913.1918713.8918514.4517113.45427244.28382224.02435226.72445227.96394226.79
217514.1619912.8718713.8018414.6517113.96427228.50382223.32435225.61445227.60394222.79
317714.1319912.9018713.9718414.1917114.14428223.29382222.66435227.02445216.39394221.29
417514.9819912.9618714.0818513.9117113.99426222.01382219.02435228.56446215.56394221.98
517314.6919913.3618713.8718514.2417114.31427222.75382223.12435236.94445218.18394223.71
Avg.17514.4819913.0518713.9218514.2917113.97427228.17382222.43435228.97445221.14394223.31
4080
123433.5522532.8123733.7624635.0325237.16491349.76459351.18474359.25429339.20425361.69
223433.7722632.8723733.9024635.6725234.21491351.63460349.46476368.82429348.57425361.43
323434.0722632.9823733.9924534.8525234.40491352.73458358.00476368.09429337.87426372.25
423433.9522632.4223733.8124435.0125034.63491351.55458364.62476362.86429345.34426363.50
523533.8722632.3823734.3224436.2125234.89491348.60460362.70476367.12429353.93427438.14
Avg.23433.8422632.6923733.9524535.3625235.06491350.85459357.19476365.23429344.98426379.40
Table A14. 8/10 fraction in max β of ACO with 1.4 × initial resource levels.
Table A14. 8/10 fraction in max β of ACO with 1.4 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1600.80820.92650.81590.75640.8230369.4432165.6427767.9429373.1230070.41
2580.79820.92650.83590.78640.8030369.4432166.3027769.9929373.2730070.45
3590.80820.91670.84590.76640.7930368.7232165.9327969.7829373.3030071.13
4600.87820.93660.82590.75640.7930369.3132165.6727969.4829273.2229872.03
5600.85820.88650.80590.74640.7930368.9532165.6427869.6029373.2130070.32
Avg.590.82820.91660.82590.76640.8030369.1732165.8427869.3629373.2230070.87
2060
11194.371324.361094.371544.971084.06326129.48337128.02339132.21346127.52349131.45
21194.391324.561114.391555.051084.08326130.63337132.50339135.24346132.26349131.68
31194.401324.601104.601564.961084.23328128.73337131.23339133.96346128.72349131.43
41194.271324.541104.641534.821084.24326130.76337130.80339132.43346127.90349131.03
51194.331324.451104.701534.721084.21326130.31337127.97339131.18343127.68349132.76
Avg.1194.351324.501104.541544.901084.16326129.98337130.10339133.01345128.82349131.67
3070
117414.5319813.4618713.7018414.1117113.83426231.32382229.68435237.95445225.90394235.27
217414.4419913.2118714.4118514.1517113.76426232.78382226.54435237.43445231.07394235.68
317414.6919913.2918513.8418514.2917114.22427226.33382231.25435228.80446224.58394233.44
417514.5519812.9618714.0118414.2417114.79426228.31381228.21435235.13445224.31394233.68
517514.1019913.0318713.7518514.1017114.16427229.95382230.07435232.42445222.44394240.95
Avg.17414.4619913.1918713.9418514.1817114.15426229.74382229.15435234.35445225.66394235.81
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
4080
123433.7422632.7523734.0024434.7925235.40491372.89459371.61476378.11429431.14427367.77
223435.3922633.7923734.3324434.5625235.25491385.00457376.62476386.75429437.42425355.19
323434.7622632.9423733.7824435.1125235.64491367.65459379.97476380.16429433.80425366.88
423434.0022632.5123733.5024435.0725235.27491369.67459371.16474378.50429375.88424375.39
523434.4722632.7723733.6224435.2925234.29491366.16458369.34476373.08429365.21425364.34
Avg.23434.4722632.9523733.8524434.9625235.17491372.27458373.74476379.32429408.69425365.92
Table A15. 7/10 fraction in max β of ACO with 1.4 × initial resource levels.
Table A15. 7/10 fraction in max β of ACO with 1.4 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1600.76820.84650.76590.72640.7930380.1632169.2427770.2429274.0230071.51
2600.78820.81650.77590.74640.8230373.0532165.9927770.6229373.8030071.51
3600.80820.81650.84590.75640.8330372.4132166.7227970.2629274.3430072.53
4610.79820.81650.83590.75640.8730273.0432167.5527770.3029374.2230071.41
5600.77820.86650.78590.73640.8330371.7732167.5327771.0229273.7530071.42
Avg.600.78820.83650.80590.74640.8330374.0932167.4127770.4929274.0330071.68
2060
11194.391324.461084.781534.891084.26326128.65337129.66339134.27346130.59349128.63
21194.261324.511104.651524.761084.38326128.75337127.03339133.06346127.68349129.51
31194.321324.591094.711534.801084.29325128.42337128.60339135.36346127.38349130.51
41194.271324.481095.001544.791084.48324129.78337128.45339136.13346128.11349132.49
51194.671324.491094.831564.761084.26326129.25337132.78339133.66346126.74349132.60
Avg.1194.381324.511094.791544.801084.33325128.97337129.30339134.50346128.10349130.75
3070
117414.3019913.0618713.6418613.7317113.66427239.39382235.44435246.05445236.55394255.11
217714.7119913.0418713.6318413.8817114.31426242.99382234.77435238.37445243.76394245.57
317414.4519912.9718713.7218513.9317113.86426240.07382232.38435253.19446241.68394244.85
417414.6919913.1218713.5518314.0817113.99428236.13382238.29435251.76445237.30394248.74
517414.4219913.0718513.6018513.9717113.73427237.71382239.42435256.39445243.75394243.09
Avg.17514.5219913.0518713.6318513.9217113.91427239.26382236.06435249.15445240.61394247.47
4080
123434.1822632.3423733.4724434.3925234.75491355.44459387.20476367.73429348.69425361.64
223434.2122632.2723733.8424434.2225234.78491358.90458452.33476357.15429352.06425364.45
323433.9722532.3723733.5124434.4725234.77491352.64460446.64476365.63429341.14425367.49
423434.1022632.3923733.5324434.4625234.69491354.75460411.01473375.85429343.29425358.24
523434.0022532.4823733.6124434.2125234.71491350.60459371.80475370.45429349.52425366.38
Avg.23434.0922632.3723733.5924434.3525234.74491354.47459413.79475367.36429346.94425363.64
Table A16. 6/10 fraction in max β of ACO with 1.4 × initial resource levels.
Table A16. 6/10 fraction in max β of ACO with 1.4 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1590.77820.84650.77590.71640.7630370.7832067.8627869.2129388.1130077.73
2600.75820.85650.76590.73640.8030370.2832169.5127769.3029287.9629877.74
3600.75820.85650.77590.74640.7930370.4832068.2027769.8529292.5430075.20
4590.78820.85650.76590.80640.7830371.0631967.4027769.7529390.9930074.56
5600.77820.85650.78590.78640.8030371.9932069.4227775.9429383.3330077.39
Avg.600.77820.85650.77590.75640.7930370.9232068.4827770.8129388.5930076.52
2060
11194.491324.561094.531534.751084.29327129.50337129.90339131.28346128.13349132.61
21194.461324.451084.541545.021084.33326131.09337129.46339130.31346127.91349133.17
31194.331324.511094.441524.721084.27326131.82337131.52339132.01346128.22349132.52
41194.331324.501094.401554.671084.28324131.20337128.93339132.86346129.25349132.61
51194.521324.611104.441525.051084.31325129.73337129.75339133.50346130.48349133.23
Avg.1194.431324.531094.471534.841084.29326130.67337129.91339131.99346128.80349132.83
3070
117314.0819912.8618713.6418513.9617114.39426215.26381218.51435216.39446198.86394206.93
217614.1119912.9018713.6418514.3217114.08426215.64382207.97435208.71445197.88394207.29
317514.2319912.9818713.7218514.3317113.91427208.16382212.68435212.47446197.33394206.72
417314.3519913.0218713.6818514.7017114.08426226.05382202.80435209.57445197.59394207.20
517414.3819912.8818713.6418514.4317113.96426230.31382216.97435205.56445198.29394208.30
Avg.17414.2319912.9318713.6618514.3517114.08426219.08382211.79435210.54445197.99394207.29
4080
123434.2122632.5423733.7624434.3225234.62491348.91460365.14474376.18429345.95425366.90
223434.1522632.6023733.5724434.4725234.72491356.95460366.77475368.62429343.70425364.87
323434.2622632.6623733.5724434.5825234.80493355.42459357.71476362.79429345.14426360.93
423433.8522632.4523733.8724434.2325234.14491361.16458365.88476375.33429344.93425358.11
523434.1022632.5723733.7224434.4925233.89491355.63456366.90475369.19429346.99425357.00
Avg.23434.1122632.5723733.7024434.4225234.43491355.61459364.48475370.42429345.34425361.56
Table A17. 5/10 fraction in max β of ACO with 1.4 × initial resource levels.
Table A17. 5/10 fraction in max β of ACO with 1.4 × initial resource levels.
RunSets of Job
1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
1050
1580.80820.80650.75590.72640.7730370.5031968.0127969.6829274.7730071.71
2600.79820.82650.74590.71640.7830370.9232166.3827769.6329274.2730072.12
3600.79820.83650.76590.70640.7730370.8032065.3027869.1529374.1830071.46
4600.79820.82650.76590.70640.7830370.8232065.5827770.8029273.6029870.41
5600.76820.82650.76590.70640.7730271.1032065.6627970.2729274.8430070.52
Avg.600.79820.82650.75590.70640.7730370.8332066.1927869.9129274.3330071.24
2060
11194.271324.401104.681554.871084.26324134.13337131.51339134.55346129.39349135.28
21194.531324.631104.621544.901084.19325132.49337130.62339134.62346128.56349133.57
31194.481324.511104.621524.841084.23326133.00337131.47339130.36346127.61349134.02
41194.441324.491094.631544.861084.12325136.22337131.36339129.65344128.76349134.32
51194.341324.471114.671554.861084.15325138.10337130.66339131.27346132.26349131.01
Avg.1194.411324.501104.641544.871084.19325134.79337131.12339132.09346129.31349133.64
3070
117614.5719913.3618713.9618514.0617113.99426213.89382210.60435212.37446203.49394219.23
217514.6919913.0918713.8118514.1017114.01426212.78382211.25435213.80446204.17394228.61
317514.9519913.2918713.7218614.2617114.13427212.19382211.88435214.04446208.09394239.13
417314.5019913.3318713.8418514.1217113.87426211.30382208.96435212.23446208.38394230.80
517414.7019913.2118714.1018514.2517113.75427215.19382209.14435212.17445208.73394222.70
Avg.17514.6819913.2618713.8918514.1617113.95426213.07382210.37435212.92446206.57394228.09
4080
123434.4222532.7223733.0524434.0825234.27492353.73458366.59476367.47429341.96425354.92
223434.9222631.7123732.8824433.9625234.55491353.13460361.57474371.96429345.05425356.15
323434.7622631.7623732.9324434.0925134.17491352.95459362.61476366.73429349.67425359.46
423434.3022632.0223733.5224433.7125233.99491373.47459353.15476376.03429347.99425370.89
523434.1122631.7623733.0124434.1225234.05491370.20459355.60476368.67429343.99425365.23
Avg.23434.5022631.9923733.0824433.9925234.21491360.70459359.90476370.17429345.73425361.33
Table A18. Experiment results of ACO M2-enum.
Table A18. Experiment results of ACO M2-enum.
Sets of Job
Run1234512345
C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time C max Time
10 jobs with 1.1 × initial resource10 jobs with 1.4 × initial resource
1640.86820.84730.83610.84640.83590.87820.87650.86591.12640.86
2660.84820.83730.83600.86640.84590.85820.87650.87591.22640.87
3660.84820.84730.83600.86640.83600.88820.87650.86591.16640.86
4660.81820.86730.84610.86640.83600.92820.87650.88591.17640.86
5640.83820.86740.84600.86640.83590.86820.86650.85591.20640.86
Avg.650.84820.85730.83600.86640.83590.87820.87650.86591.17640.86
20 jobs with 1.1 × initial resource20 jobs with 1.4 × initial resource
11228.2713417.431097.011545.14108106.8911914.5913235.621096.651535.091081864.11
21218.0013417.741106.981535.19108105.9511913.1313237.491076.651535.031082062.52
31218.3313418.441086.851555.3410896.2811915.0113239.951086.691545.081082313.29
41228.3913418.191106.911535.2210892.6911914.4613241.771076.701535.031082376.40
51218.4213418.191096.961555.2610892.6711914.2213240.311106.661535.051082820.85
Avg.1218.2813418.001096.941545.2310898.9011914.2813239.031086.671535.051082287.43
30 jobs with 1.1 × initial resource30 jobs with 1.4 × initial resource
11791363.26200-187-1832379.65172-1741450.22200-187-1852586.26172-
21771350.69200-187-1843020.92172-1741056.23200-187-1852700.09172-
31781649.96200-187-1842696.27172-1731699.81200-187-1842049.86172-
41771282.78200-187-184-172-1751441.64200-187-1852385.19172-
51801084.22200-187-184-172-1751218.19200-187-1853604.12172-
Avg.1781346.182003600.001873600.001843059.371723600.001741373.222003600.001873600.001852665.101723600.00
Table A19. Experiment results of IP.
Table A19. Experiment results of IP.
IPTimes of Initial Resource
Sets1.11.4
C max Time C max Time
10
1641518.7156344.81
28159.938162.71
373110.966523.72
45974.425915.25
564470.0264492.10
Avg.68446.8165187.72
20
11233600.111192864.56
2-3600.001321233.87
3-3600.27-3600.20
4-3600.32x3600.61
5-3600.47107366.97
Avg.----

References

  1. Pinedo, M. Scheduling; Springer: New York, NY, USA, 2016; Volume 29. [Google Scholar]
  2. Brucker, P.; Drexl, A.; Möhring, R.; Neumann, K.; Pesch, E. Resource-constrained project scheduling: Notation, classification, models, and methods. Eur. J. Oper. Res. 1999, 112, 3–41. [Google Scholar] [CrossRef]
  3. Habibi, F.; Barzinpour, F.; Sadjadi, S. Resource-constrained project scheduling problem: Review of past and recent developments. J. Proj. Manag. 2018, 3, 55–88. [Google Scholar] [CrossRef]
  4. Herroelen, W.; Reyck, B.D.; Demeulemeester, E. Resource-constrained project scheduling: A survey of recent developments. Comput. Oper. Res. 1998, 25, 279–302. [Google Scholar] [CrossRef]
  5. Issa, S.; Tu, Y. A survey in the resource-constrained project and multi-project scheduling problems. J. Proj. Manag. 2020, 5, 117–138. [Google Scholar] [CrossRef]
  6. Ibadov, N.; Kulejewski, J.; Krzemiński, M. Fuzzy ordering of the factors affecting the implementation of construction projects in Poland. AIP Conf. Proc. 2013, 1558, 1298–1301. [Google Scholar]
  7. Krzemiński, M. KASS v. 2.2. scheduling software for construction with optimization criteria description. Acta Phys. Pol. A 2016, 130, 1439–1442. [Google Scholar] [CrossRef]
  8. Kaplan, E.H. Relocation models for public housing redevelopment programs. Environ. Plan. B Plan. Des. 1986, 13, 5–19. [Google Scholar] [CrossRef]
  9. PHRG. New Lives for Old Buildings: Revitalizing Public Housing Project; Public Housing Group, Department of Urban Studies and Planning, MIT: Cambridge, MA, USA, 1986. [Google Scholar]
  10. Kaplan, E.H.; Amir, A. A fast feasibility test for relocation problems. Eur. J. Oper. Res. 1988, 35, 201–206. [Google Scholar] [CrossRef]
  11. Johnson, S.M. Optimal two- and three-stage production schedules with setup times included. Nav. Res. Logist. Q. 1954, 1, 61–68. [Google Scholar] [CrossRef]
  12. Lin, B.M.T.; Huang, H.L. On the relocation problem with a second working crew for resource recycling. Int. J. Syst. Sci. 2006, 37, 27–34. [Google Scholar] [CrossRef]
  13. Cheng, T.C.E.; Lin, B.M.T.; Huang, H.L. Resource-constrained flowshop scheduling with separate resource recycling operations. Comput. Oper. Res. 2012, 39, 1206–1212. [Google Scholar] [CrossRef]
  14. Graham, R.L.; Lawler, E.L.; Lenstra, J.K.; Kan, A.R. Optimization and approximation in deterministic sequencing and scheduling: A survey. Ann. Discret. Math. 1979, 5, 287–326. [Google Scholar]
  15. Kaplan, E.H.; Berman, O. OR hits the heights: Relocation planning at the orient heights housing project. Interfaces 1988, 18, 14–22. [Google Scholar] [CrossRef]
  16. Xie, J. Polynomial algorithms for single machine scheduling problems with financial constraints. Oper. Res. Lett. 1997, 21, 39–42. [Google Scholar] [CrossRef]
  17. Amir, A.; Kaplan, E.H. Relocation problems are hard. Int. J. Comput. Math. 1988, 25, 101–110. [Google Scholar] [CrossRef]
  18. Kononov, A.V.; Lin, B.M.T. On relocation problems with multiple identical working crews. Discret. Optim. 2006, 3, 366–381. [Google Scholar] [CrossRef] [Green Version]
  19. Cheng, T.C.E.; Lin, B.M.T. Johnson’s rule, composite jobs and the relocation problem. Eur. J. Oper. Res. 2009, 192, 1008–1013. [Google Scholar] [CrossRef] [Green Version]
  20. Cheng, T.C.E.; Lin, B.M.T. Demonstrating Johnson’s algorithm via resource-constrained scheduling. Int. J. Prod. Res. 2017, 55, 3326–3330. [Google Scholar] [CrossRef]
  21. Lin, B.M.T.; Tseng, S.S. Some results of the relocation problems with processing times and deadlines. Int. J. Comput. Math. 1991, 40, 1–15. [Google Scholar] [CrossRef]
  22. Lin, B.M.T.; Tseng, S.S. Relocation problems of maximizing new capacities under a common due date. Int. J. Syst. Sci. 1992, 23, 1433–1448. [Google Scholar] [CrossRef]
  23. Lin, B.M.T.; Tseng, S.S. Resource-requirement minimization in relocation problems with precedence constraints. In Proceedings of the ICCI `92: Fourth International Conference on Computing and Information, Toronto, ON, Canada, 28–30 May 1992; pp. 26–29. [Google Scholar]
  24. Lin, B.M.T.; Cheng, T.C.E. Minimizing the weighted number of tardy jobs and maximum tardiness in relocation problem. Eur. J. Oper. Res. 1999, 116, 183–193. [Google Scholar] [CrossRef]
  25. Hall, N.G. Scheduling problems with generalized due dates. IIE Trans. 1986, 18, 220–222. [Google Scholar] [CrossRef]
  26. Lin, B.M.T.; Liu, S.T. Maximizing the reward in relocation problems with generalized due dates. Int. J. Prod. Econ. 2008, 115, 55–63. [Google Scholar] [CrossRef]
  27. Sevastyanov, S.V.; Lin, B.M.T.; Huang, H.-L. Tight complexity analysis of the relocation problem with arbitrary release dates. Theor. Comput. Sci. 2011, 412, 4536–4544. [Google Scholar] [CrossRef] [Green Version]
  28. Kononov, A.V.; Lin, B.M.T. Minimizing the total weighted completion time in the relocation problem. J. Sched. 2010, 13, 123–129. [Google Scholar] [CrossRef]
  29. Lin, B.M.T. Resource-constrained scheduling with optional recycling operations. Comput. Ind. Eng. 2015, 90, 39–45. [Google Scholar] [CrossRef]
  30. Shafransky, Y.M.; Strusevich, V.A. The open shop scheduling problem with a given sequence of jobs on one machine. Nav. Res. Logist. 1998, 45, 705–773. [Google Scholar] [CrossRef]
  31. Lin, B.M.T.; Hwang, F.J.; Kononov, A.V. Relocation scheduling subject to fixed processing sequences. J. Sched. 2016, 19, 153–163. [Google Scholar] [CrossRef]
Figure 1. Permutation solution.
Figure 1. Permutation solution.
Mathematics 09 01527 g001
Figure 2. Non-permutation solution.
Figure 2. Non-permutation solution.
Mathematics 09 01527 g002
Figure 3. Given and fixed sequence on machine 2.
Figure 3. Given and fixed sequence on machine 2.
Mathematics 09 01527 g003
Figure 4. Given and fixed sequence on machine 1.
Figure 4. Given and fixed sequence on machine 1.
Mathematics 09 01527 g004
Figure 5. Bar chart of comparison with 1.1 × initial resource levels.
Figure 5. Bar chart of comparison with 1.1 × initial resource levels.
Mathematics 09 01527 g005
Figure 6. Bar chart of comparison with 1.4 × initial resource levels.
Figure 6. Bar chart of comparison with 1.4 × initial resource levels.
Mathematics 09 01527 g006
Table 1. An example of four jobs.
Table 1. An example of four jobs.
p 1 , j p 2 , j α j β j
job 13389
job 215310
job 35638
job 461114
Table 2. JR-resource and JR-time heuristics.
Table 2. JR-resource and JR-time heuristics.
JR-ResourceJR-Time
#permmax β permmax β
C max
1080788792
20137142166177
30199202251256
40258262332345
50307308425439
60351357474494
70426431596605
80467472636642
Table 3. Different fractions in JR-time Non-Permutation Heuristics.
Table 3. Different fractions in JR-time Non-Permutation Heuristics.
Fraction of Exceeding Time
#10/109/108/107/106/105/10
C max
10928887878686
20177169166166166167
30256252252252252252
40345332332333333332
50439424424425425425
60494475475475475475
70605595597597597597
80642638638637637637
Table 4. Different fraction in JR-resource Non-Permutation Heuristics.
Table 4. Different fraction in JR-resource Non-Permutation Heuristics.
Fraction of Exceeding Time
#10/109/108/107/106/105/10
C max
10787878798080
20142138137137137137
30202199199199199199
40262258258258258258
50308307307307307307
60357351351351351351
70431428426426426426
80472467467467467467
Table 5. Results of ACO algorithms and IP with 1.1 × initial resource levels.
Table 5. Results of ACO algorithms and IP with 1.1 × initial resource levels.
#permmax β M2-enumIP
C max Time C max Time C max Time C max Time
10690.41700.80690.8468446.81
201252.331284.5412327.47--
301848.2418713.461843396.50--
4023922.0924236.99----
5029950.1530073.62----
6033997.24344139.03----
70416172.08418236.40----
80456279.78459352.56----
Table 6. Results of ACO algorithms and IP with 1.4 × initial resource levels.
Table 6. Results of ACO algorithms and IP with 1.4 × initial resource levels.
#permmax β M2-enumIP
C max Time C max Time C max Time C max Time
10660.42670.79690.8465187.72
201252.441274.44124470.49--
301838.3118513.951842967.66--
4023921.5924134.04----
5029949.8830069.53----
6033995.94343129.10----
70416160.34418226.25----
80456263.11458364.20----
Table 7. Results of different fraction in max β of ACO with different initial resource levels.
Table 7. Results of different fraction in max β of ACO with different initial resource levels.
Fraction of Exceeding Time with 1.1 × Initial Resource Levels
#5/106/107/108/109/1010/10
C max Time C max Time C max Time C max Time C max Time C max Time
10690.84690.82690.79690.78700.87700.80
201254.651254.611254.811254.351254.711284.54
3018414.5018415.6118415.3218413.7018414.4218713.46
4023935.4923941.7023940.4623933.7323936.9224236.99
5029971.1229976.5829978.6329972.0629977.9230073.62
60339128.90339141.33339144.98339133.39340139.73344139.03
70416262.69417255.90417243.21416235.66416218.79418236.40
80456347.84456368.73456354.50456395.34456358.64459352.56
Fraction of Exceeding Time with 1.4 × Initial Resource Levels
#5/106/107/108/109/1010/10
C max Time C max Time C max Time C max Time C max Time C max Time
10660.77660.78660.79660.82660.79670.79
201254.521244.511244.561254.491244.541274.44
3018313.9918313.8518313.8018313.9818313.9418513.95
4023933.5523933.8523933.8323934.2823934.1824134.04
5029970.5029875.0629971.5429969.6929970.0330069.53
60339132.19339130.84339130.32339130.71340129.45343129.10
70417214.20416209.34417242.51416230.94417224.80418226.25
80456359.57456359.48456369.24456379.99456359.53458364.20
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Lo, T.-C.; Lin, B.M.T. Relocation Scheduling in a Two-Machine Flow Shop with Resource Recycling Operations. Mathematics 2021, 9, 1527. https://doi.org/10.3390/math9131527

AMA Style

Lo T-C, Lin BMT. Relocation Scheduling in a Two-Machine Flow Shop with Resource Recycling Operations. Mathematics. 2021; 9(13):1527. https://doi.org/10.3390/math9131527

Chicago/Turabian Style

Lo, Ting-Chun, and Bertrand M. T. Lin. 2021. "Relocation Scheduling in a Two-Machine Flow Shop with Resource Recycling Operations" Mathematics 9, no. 13: 1527. https://doi.org/10.3390/math9131527

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