JOURNAL OF INDUSTRIAL AND MANAGEMENT OPTIMIZATION Volume 10, Number 2, April 2014

doi:10.3934/jimo.2014.10.591 pp. 591–611

A TIME-DEPENDENT SCHEDULING PROBLEM TO MINIMIZE THE SUM OF THE TOTAL WEIGHTED TARDINESS AMONG TWO AGENTS

Wen-Hung Wu Department of Business Administration Kang-Ning Junior College of Medical Care and Management Taipei, Taiwan

Yunqiang Yin College of Sciences, East China Institute of Technology Fuzhou, Jiangxi 344000, China

Wen-Hsiang Wu Department of Healthcare Management Yuanpei University, Hsinchu, Taiwan

Chin-Chia Wu Department of Statistics, Feng Chia University Taichung, Taiwan

Peng-Hsiang Hsu Department of Business Administration Kang-Ning Junior College of Medical Care and Management Taipei, Taiwan

(Communicated by T. C. Edwin Cheng)

2010 Mathematics Subject Classification. Primary: 90B35; Secondary: 68M20. Key words and phrases. Scheduling, two-agent, ant colony algorithm, simulated annealing algorithm, deterioration jobs. We would like to thank to the Editor and two anonymous referees for their constructive comments on the earlier version of our paper. This paper was supported in part by the NSC of Taiwan under grant number NSC 102-2221-035-057-070-MY3; in part by NSC of Taiwan under grant number NSC 102-2410-H-264-003; in part by National Natural Science Foundation of China (71301022); in part by the Natural Science Foundation of Jiangxi, China (20132BAB201010); and in part by the Science Foundation of Education Committee of Jiangxi, China (GJJ13458).

591

592

WEN-HUNG WU ET AL.

Abstract. The problem of scheduling with time-dependent processing times has been studied for more than two decades and significant advances have been made over the years. However, most work has paid more attention to the single-criterion models. Furthermore, most heuristics are constructed for the time-dependent scheduling problems in a step-by-step way. Motivated by the observations, this paper studies a two-agent scheduling model with increasing linear deterioration jobs in which the processing time of a job is modeled as an increasing linear function of its starting time. The objective function is to minimize the sum of the maximum weighted tardiness of the jobs of the first agent and the total weighted tardiness of the jobs of the second agent. This problem is known to be strongly NP-hard. Thus, as an alternative, the branch-and-bound, ant colony algorithm and simulated annealing algorithms are developed for the problem. Computational results are also presented to determine the performance of the proposed algorithms.

1. Introduction. Traditionally, most of the scheduling problems focus on that the processing times of jobs are assumed to be constant values. In fact, the processing times of jobs may change due to deterioration in many real-life situations. The examples can be seen in the control of queues and communication systems, shops with deteriorating machines, delay of maintenance or cleaning, fire fighting, hospital emergency wards, and scheduling steel production in rolling mills (Kunnathur and Gupta [25] and Mosheiov [35, 36]). In such a production situation, any delay in processing a job may cause an increasing effort to accomplish the job. This is also called as deterioration jobs or time-dependent processing times. The problem of scheduling with time-dependent processing times has been studied for more than two decades and the topic has received growing attention. To make the analysis simplified, most research models treat the actual processing time of a job as a linear or piecewise linear increasing function of its start time. For example, Browne and Yechiali [8] modeled the actual processing time of job Jj as pj (t) = pj + αj t, where αj is the normal deterioration rate of job Jj . The authors showed that the makespan can be minimized by sequencing the jobs in nondecreasing order of pj /αj . Following Browne and Yechialis [8] model, Mosheiov [35] investigated the total flow time minimization scheduling problem and showed that an optimal sequence (V -shaped schedule) exists if the normal processing times of all jobs are equal (i.e. pj (t) = p0 + αj t ). Mosheiov [36] further studied a simple model of pj (t) = αj t and showed some single-machine problems with polynomial times such as the makespan, total completion time, total weighted completion time, total lateness, number of tardy jobs, maximum lateness, and maximum tardiness. Bachman and Janiak [5] introduced a different linear deterioration model where for all jobs, the increasing rates are a (a > 0) times greater than the normal processing times pj , i.e., αj = apj . The model implies that the actual processing time of a job Jj is pj (t) = pj (1 + at), where a is a positive constant. Zhao et al. [54] formulated the actual processing time of job Jj as pj (t) = pj (a + bt) where a and b are positive constants. They proved that the single-machine scheduling problems of minimizing the makespan, total weighted completion time, maximum lateness and maximum cost are polynomially solvable. Yang and Wang [48] addressed a two-machine flowshop under simple linear deterioration to minimize total weighted completion time. As for the other recent works with different type of deterioration settings, the reader may refer to these comprehensive surveys by Alidaee and Womer [3], Cheng et al. [10], and Janiak et al. [23], Luo and Chen [33], Yin et al. [53]. In addition, some relevant papers involving with the mixed learning and deteriorating effect, the reader

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

593

may refer to Wang and Cheng [40], Wang and Kuo [41], Wang et al. [42], Yang and Kuo [46, 47], Yang and Yang [49], and Yin and Xu [50]. A common point can be found in the above literature that most researchers focused more attention on a single criterion to be optimized. In fact, many real applications released that jobs maybe be from several agents (customers) that need different conditions to follow. Meanwhile, the multiple-agent scheduling problems with deteriorating jobs are only few. For some relevant works, Liu and Tang [29] considered the actual processing time as a simple linear increasing function of its starting time and showed their complexity of the proposed multi-agent scheduling problems. Liu et al. [30] modeled an aging-and-learning effect model into the two-agent scheduling problem. They claimed that two proposed problems can be solved out with polynomial times. Cheng et al. [12] assumed the actual processing time of a job as a function of the sum-of-processing-times-based learning and a control parameter. They applied a branch-and-bound and three simulated annealing algorithms for their problem. Cheng et al. [13] considered a two-agent problem with a learning and deteriorating effect where the actual processing time of a job of the first agent is a function of position-based learning, meanwhile, the actual processing time of a job of the second agent is a function of the position-based deterioration. Wu et al. [44] investigated a two-agent single-machine scheduling problem where they considered the actual processing time of a job of the first (second) agent as a decreasing function of the sum-of-processing-times-based learning (or an increasing function of the sum-of-processing-times-based deteriorating effect). They proposed a branch-and-bound and some ant colony algorithms for the optimal and near-optimal solutions, respectively. Cheng [9] studied a two-agent problem with a truncation learning effect where the criterion is to minimize the total weighted completion time of jobs of the first agent under the circumstances that no tardy job is allowed for the second agent. Li and Hsu [31] addressed a two-agent scheduling problem with a learning effect. Their criterion is to minimize the total weighted completion time of both agents with the restriction that the makespan of either agent cannot exceed an upper bound. Wu et al. [45] modeled a learning effect into a single-machine two-agent scheduling problem. The goal is to minimize the total tardiness of jobs from the first agent given that no tardy job is allowed for the second agent. Cheng et al. [15] dealt with the objective of minimizing the total weighted completion time of the jobs of one agent with the constraint that the maximum lateness of the jobs of the other agent does not exceed a given limit. Yin et al. [51] considered a two-agent problem with a linear non-increasing deterioration having three different objective functions. They discussed some properties and the complexity results for the proposed problems. As shown in the above literature, the two-agent scheduling problems with due date based objective functions, such as total tardiness or total weighted tardiness are relatively unexplored. Another motivation is observed that most non-trivial time-dependent scheduling problems are at least NP-hard in the ordinary sense, only a few polynomial-time algorithms for such problems exists. However, the heuristics for solving the time-dependent scheduling problems by using the metaheuristics are only a few. Therefore, this paper attempts to integrate the two-agent and time-dependent processing times scheduling problem to minimize the sum of the maximum weighted tardiness of job of the first agent and the total weighted tardiness of the jobs of the second agent. In addition, an ant colony algorithm will be used for near-optimal solutions.

594

WEN-HUNG WU ET AL.

The remaining of the paper is organized as follows. In the next section, the problem statements are given. In Section 3, some dominance properties and a lower bound are derived for speeding up the search for the optimal solution. In Section 4, the descriptions of the ant colony algorithm and the simulated annealing algorithm are presented. In Section 5, the results of a computational experiment are provided. The conclusions and suggestions are given in the last section. 2. Model formulation. The single-machine two-agent scheduling problem with a linear increasing deterioration considered in this paper can be stated as follows. Suppose that there are two competing agents, each of them has a set of non-preemptive jobs to be processed on a common machine. The set of jobs of the first agent is J (1) = {J1 , J2 , . . . , Jn1 } and that of the second agent is J (2) = {Jn1 +1 , Jn1 +2 , . . . , Jn1 +n2 }. Associated with each job Jj are a normal processing time pj > 0, a weight wj > 0 and a due date dj ≥ 0. All data are supposed to be integers. A job cannot start before its release date, and only one job at a time can be scheduled on the machine. If each job Jj starts to be processed at time t in a given sequence, then its actual processing time is defined as pj (t) = pj (a + bt),

(1)

where a and b are positive constants. Let S indicate a feasible schedule of the n = n1 + n2 jobs, i.e., a feasible assignment of starting times to the jobs of both agents. The completion time of job Jj is denoted as Cj (S), and the tardiness is defined as Tj (S) = max 0, Cj (S) − dj . We shall write Cj and Tj for Cj (S) and Tj (S) , respectively, whenever this does not generate confusion. The objective of the first agent is to minimize maxJj ∈J (1) wj Tj P and that of the second agent is to minimize Jj ∈J (2) wj Tj . It is desired to find P a schedule that minimizes maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . Using the threefield notation of Graham P et al. [22], we denote this problem by 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . For more recent multi-agent scheduling without deterioration jobs, please refer to Agnetis et al. [1, 2], Baker and Smith [6], Cheng et al. [11, 12], Ng et al. [38], Lee et al. [26], Wan et al. [43], Mor and Mosheiov [37], Luo et al. [32], Nong et al. [39], and Yin et al. [52], etc. P 3. Branch-and-bound algorithm. The classical scheduling problem 1|| wj Tj is NP-Hard in the strong sense (Lenstra et al., [27]). Thus, our problem must be strongly NP-hard too. Though there are little efficient algorithms for the NP-hard scheduling problems in practice, it is still necessary to develop schedules for such problems in a fast and effective manner. In this section, we apply the branchand-bound technique to search for the optimal solution and develop an ant colony algorithm to derive the Pnear-optimal solutions for the problem 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . In order to speed up the search process, we will establish some dominance rules in this following subsection. 3.1. Dominance rules. Dominance rules are common in the scheduling literature (Chu [16] and Allahverdi and Al-Anzi [4]). They are mainly used in implicit enumeration technique such as branch-and-bound algorithms. In this section, some dominance rules are developed for our problem. Consider exchanging the positions of two adjacent jobs Ji and Jj in a schedule S = (π, Ji , Jj , π 0 ) in which π and π 0 denote partial sequences. Let S 0 = (π, Jj , Ji , π 0 ) be the new schedule obtained by

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

595

swapping jobs Ji and Jj , and leaving the other jobs unchanged in schedule S. In addition, it is assumed that t is the completion time of the last job in π. Lemma 3.1. If Ji , Jj ∈ J (1) , wj max{(t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , 0} ≤ wi max{(t + a/b)(1 + bpi )(1 + bpj ) − a/b − di , 0} or there exists a job Jk in π ∩ J (1) such that max wj max{(t+a/b)(1+bp i )(1+bpj )−a/b−dj , 0}, wi max{(t+a/b)(1+ bpi )(1 + bpj ) − a/b − di , 0} ≤ wk Tk , then S dominates S 0 . Proof. The completion time of jobs Ji and Jj in S and S 0 are, respectively, Ci (S) = t + pi (a + bt) = (t + a/b)(1 + bpi ) − a/b Cj (S) = (t + a/b)(1 + bpi ) − a/b + pj (t + a/b)(1 + bpi ) − a/b = (t + a/b)(1 + bpi )(1 + bpj ) − a/b Cj (S 0 ) = t + pj (a + bt) = (t + a/b)(1 + bpj ) − a/b and Ci (S 0 ) = (t + a/b)(1 + bpj ) − a/b + pi (t + a/b)(1 + bpj ) − a/b = (t + a/b)(1 + bpi )(1 + bpj ) − a/b. It follows that Ci (S) < Ci (S 0 ), Cj (S 0 ) < Cj (S) and Cj (S) = Ci (S 0 ). Hence, Ti (S) < Ti (S 0 ) and Tj (S 0 ) < Tj (S). Since Ji , Jj ∈ J (1) , to show that S dominates S 0 , it suffices to show that wj Tj (S 0 ) ≤ wi Ti (S) or there exists a job Jk in π ∩ J (1) such that max{wj Tj (S 0 ), wi Ti (S)} ≤ wk Tk as required. i) Lemma 3.2. If Ji , Jj ∈ J (2) , (a/b+d t+a/b < (1 + bpi )(1 + bpj ), and min (1 + bpi )(1 + (a/b+d ) i) bpj )− t+a/bj , bpi (1+bpj ) wi ≤ min (1+bpi )(1+bpj )− (a/b+d wj , t+a/b , bpj (1+bpi ) 0 then S dominates S . 0 Proof. By the proof of Lemma 1, we obtain Cj (S) = Ci (S ). Now to show that S 0 0 0 dominates S , it suffices to show that wj Tj (S )+wi Ti (S ) − wi Ti (S)+wj Tj (S) ≥ (a/b+dj ) i) 0. In fact, by (a/b+d t+a/b < (1+bpi )(1+bpj ), and min (1+bpi )(1+bpj )− t+a/b , bpi (1+ i) bpj ) wi ≤ min (1 + bpi )(1 + bpj ) − (a/b+d wj , we have t+a/b , bpj (1 + bpi ) wj Tj (S 0 ) + wi Ti (S 0 ) − wi Ti (S) + wj Tj (S) = wj max (t + a/b)(1 + bpj ) − a/b − dj , 0 + wi max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − di , 0 − wi max (t + a/b)(1 + bpi ) − a/b − di , 0 − wj max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , 0 = wi max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − di , 0 − max{(t + a/b)(1 + bpi ) − a/b − di , 0 − wj max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , 0 − max{(t + a/b)(1 + bpj ) − a/b − dj , 0 = wi min (t + a/b)(1 + bpi )(1 + bpj ) − a/b − di , bpj (t + a/b)(1 + bpi ) − wj max min{(t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , bpi (t + a/b)(1 + bpj )}, 0

≥ 0. The result follows.

596

WEN-HUNG WU ET AL.

Lemma 3.3. If Ji , Jj ∈ J (2) , pi ≤ pj , di ≤ max (t + a/b)(1 + bpj ) − a/b, dj and wi ≥ wj , then S dominates S 0 . Proof. By the proof of Lemma 1, we have Ci (S) < Ci (S 0 ), Cj (S 0 ) < Cj (S) and Cj (S) = Ci (S 0 ). Next we split the proof into two cases. Case 1. dj ≤ (t + a/b)(1 + bpj ) − a/b. Then by pi ≤ pj and di ≤ max (t + a/b)(1 + bpj ) − a/b, dj , we have Ci (S) ≤ Cj (S 0 ) and di ≤ (t + a/b)(1 + bpj ) − a/b. It follows that di ≤ Cj (S 0 ) < Ci (S 0 ) and dj ≤ Cj (S 0 ) < Cj (S). It can obtain from wi ≥ wj that wj Tj (S 0 ) + wi Ti (S 0 ) − wi Ti (S) + wj Tj (S) = wi Ti (S 0 ) − Ti (S) − wj Tj (S) − Tj (S 0 ) ≥ wj Ti (S 0 ) + Tj (S 0 ) − Ti (S) − Tj (S) ≥ wj Ci (S 0 ) − di + Cj (S 0 ) − dj − Ti (S) − Cj (S) + dj = wj − di + Cj (S 0 ) − Ti (S) ≥ 0. Case 2. dj > (t+a/b)(1+bpj )−a/b. Then by di ≤ max (t+a/b)(1+bpj )−a/b, dj , i) 0 we have di ≤ dj . Now, if (a/b+d t+a/b ≥ (1+bpi )(1+bpj ), then Ti (S) = Tj (S) = Ti (S ) = Tj (S 0 )=0; otherwise by Lemma 2, we have wj Tj (S 0 )+wi Ti (S 0 ) ≥ wi Ti (S)+wj Tj (S). In both cases, we have wj Tj (S 0 ) + wi Ti (S 0 ) ≥ wi Ti (S) + wj Tj (S). It follows that S dominates S 0 . Lemma 3.4. If Ji ∈ J (2) , Jj ∈ J (1) and there exists a job Jk in π ∩ J1 such that wj max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , 0 ≤ wk Tk , then S dominates S 0 . Proof. The proof is similar to that of Lemma 1. Next, we present some results to determine the feasibility of a partial sequence. Let (π, π 0 ) be a sequence of jobs where π is the scheduled part with k jobs and π 0 is the unscheduled part. Moreover, let C[k] be the completion time of the last job in π. Lemma 3.5. If all jobs in π 0 belong to the second agent and there is a job Jj ∈ π 0 such that pj ≤ minJi ∈π0 {pi }, dj ≤ minJi ∈π0 {di } and wj ≥ maxJi ∈π0 {wi }, then there is an optimal schedule such that Jj will be the first job of the remaining sequence. Lemma 3.6. If all jobs in π 0 belong to the second agent and there is a job Jj ∈ π 0 such that pj ≥ maxJi ∈π0 {pi }, dj ≥ maxJi ∈π0 {di } and wj ≤ minJi ∈π0 {wi }, then there is an optimal schedule such that Jj will be the last job of the remaining sequence. Q Lemma 3.7. If there is a job Jj ∈ π 0 such that dj ≥ C[k] + a/b Jl ∈π 0 1 + bpl − a/b, then there is an optimal schedule such that Jj will be the last job of the remaining sequence. Lemma 3.8. Let Ji , Jj ∈ J (1) be such that wi > wj and di < dj . Then there is an optimal schedule such that Ji is scheduled before Jj . Proof. Let S be an optimal schedule such that job Jj is processed before Ji . By right-shifting Jj to the position just after Ji , we obtain a new schedule S 0 . Then apart from Jj , each job in S 0 has a completion time not greater than that in S,

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

597

in particular, we have Ci (S 0 ) < Ci (S), and Cj (S) < Cj (S 0 ) = Ci (S). Now from wi ≥ wj and di ≤ dj , we have wj Ej (S 0 ) = wj max{Cj (S 0 ) − dj , 0} < wi max{Ci (S) − di , 0} = wi Ei (S) and wi Ei (S 0 ) = wi max{Ci (S 0 ) − di , 0} < wi max{Ci (S) − di , 0} = wi Ei (S). It follows that converting S into S 0 does not increase the objective value of the first agent. Hence S 0 is still an optimal schedule. Repeating the above procedure, we eventually obtain the required optimal schedule as required. Lemma 3.9. There is an optimal schedule such that the jobs belonging to the first agent with the same weight are processed in the EDD order and, furthermore, the jobs belonging to the first agent with the same weight and due date are consecutively processed. Proof. By Lemma 8, the jobs belonging to the first agent with the same weight should be processed in the EDD order. On the other hand, analogous to the proof of Lemma 8, we also know that the jobs belonging to the first agent with the same weight and due date should be consecutively processed. P 3.2. A lower bound for 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . The efficiency of the branch-and-bound algorithm largely depends on the lower bound of the partial sequence. In this Psubsection, we propose a lower bound for 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . Let AS be a partial sequence in which the order of the first k1 jobs and the last k2 jobs is determined and U S be the unscheduled part, P i.e., AS = (π1 , P −, −, π2 ). Clearly, a lower bound for w 1|pj (t) = pj (a + bt), pmpt| Jj ∈J (1) n1j Tj + Jj ∈J (2) wj Tj is also a lower bound for P 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . In what follows, we develop P P w a lower bound for 1|pj (t) = pj (a + bt), pmpt| Jj ∈J (1) n1j Tj + Jj ∈J (2) wj Tj . Set w ¯j = wj for j = n1 + 1, n1 + 2, . . . , n. Let the w ¯j = n1j for j = 1, 2, . . . , n1 , and w completion time of the last job in AS be T . Then, the procedure can be described as follows. Step 1. Sort the normal processing times, due dates and weights of the jobs in U S in the non-decreasing order, respectively, i.e., p(1) ≤ p(2) ≤ · · · ≤ p(n−k1 −k2 ) , d(1) ≤ d(2) ≤ · · · P ≤ d(n−k1 −k2 ) , and w ¯(1) ≤ w ¯(2) ≤ · · · ≤ w ¯(n−k1 −k2 ) ; let t = T , i = 1, X = T + pj and dmax = maxj∈U S,k2 {dj } Jj ∈U S

WT =

P

Jj ∈π1

w ¯j Tj +

k2 P j=1

j Q w ¯[n−k2 +j] max (X + a/b) (1 + bp[n−k2 +k] ) − dmax , 0 . k=1

Step 2. While i ≤ n − k1 − k2 do T(i) = max (t + a/b)(1 + bp(i) ) − a/b − d(n−k1 −k2 ) , 0 ; WT = WT + w ¯(n−k1 −k2 −i+1) T(i) ; t = (t + a/b)(1 + bp(i) ) − a/b; i = i + 1; Enddo Therefore, the lower bound for partial sequence PS is LB = W T .

598

WEN-HUNG WU ET AL.

4. Ant colony algorithm and simulated annealing algorithm. Providing a sharp, i.e., low initial upper bound is critically important for enhancing the exclusion rate of the branch-and-bound algorithm, i.e., the rate with which nodes are fathomed. Hence, it is worth expending some computational effort to achieve that end. In this subsection, we apply the ant colony algorithm and the simulated annealing algorithm to compute an upper bound for the objective value of the problem. The basics of the ant colony and simulated annealing algorithm are described as follows. 4.1. Ant colony algorithm. The ant colony algorithm (ACO) is one of the metaheuristics that are commonly seen to apply for solving many combinatorial optimization problems (Colorni et al. [18], Dorigo et al. [19], Dorigo and Gambardella [20], Lai and Tong [28], Wu et al. [44]). The ACO algorithm is proposed by Colorni et al. [17] and its idea is originated from the behavior of an ant to find the shortest path from its nest to food location. In the constructive procedure, there are n nodes to be visited and an ant visits from the current node to next node by using a probability distribution which corresponds to the pheromone trials in real ants. When the last node is visited, pheromone trials are updated according to the quality of the best solution built. Thus, cooperation between ants is performed by the common structure which is the shared pheromone matrix. The descriptions of the ACO algorithm (Wu et al.[44]) are summarized in the following. Step 1. Initialization. We randomly generate 50 ants. Each ant k is denoted as a k sequence Sk which indicates the position of the jobs in the sequence. Let τij be the k pheromone intensity of setting job i in position j and is given byτij = Q/Zk ,where Q is a given parameter and Zk is the value of the objective function of Sk . In our preliminary trial, we adopted three different values of Q set at 1, 10, and 100. They are recorded as AC1 , AC2 , and AC3 , respectively. Step 2. Node transition rule. During a visit, each ant moves on the graph from node to node through the edges, and no node can be visited twice. The nodes to be visited should be put in a tabu list and be marked as inaccessible list. For the k th ant on node i, the selection node j to visit is according the following ( of(τnext α ij ) P if j ∈ / tabuk ; (τiν )α , ν ∈tabu / k where τij is the transition probability pkij = 0, otherwise; current pheromone intensity on edge (i, j ), α is parameter controlling the relative importance of global for edge (i, j ), and tabuk indicates the current set of nodes inaccessible from ant k. The pheromone is a sort of long-term memory that records previous experiences of the ants about the global preference for edge (i, j ) according to the quality of the solutions found. This paper adopts a two-level probability policy to determine the next node to transit to. If q ≤ q0 , then choose the best edge with the largest value of pkij to move, otherwise generate another random number q from the interval U [0,1] to determine, in roulette wheels, which accessible node to visit next. In our trials, the values of (α, q0 ) are taken as (1.0, 0.2). Step 3. Pheromone updating rule. When all of the ants have completed their tours (which is called a cycle), intensity of pheromone on each edge is updating based m P k on the following expressionτij = (1 − ρ)τij + ∆τij , where ρ is the evaporation k=1 k rate of the previous pheromone intensity, m is the number of ants, and ∆τij is the pheromone currently laid by ant k . In step 1, the number of distributed ants m is

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

599

set at 50 and the evaporation rate of the previous pheromone intensity is adopted as 0.1. Step 4. Stopping rule. The quality of the schedule is quite stable after 50 iterations according to our preliminary trials. 4.2. Simulated annealing algorithm. The simulated annealing algorithm (SA) is population-based random search technique to find an optimum solution usually in large search spaces (Mokotoff [34]). The concept of this algorithm was introduced by Kirkpatrick et al. [24]. The SA procedure is described in the following steps. Step 1. Initialization. The initial job sequence S is in early due date order and the arrangement of all jobs of the first agent after any job of the second agent, that is S = {J (2) , J (1) }. Step 2. Generation rules. To construct a new sequence S 0 , the generation mechanism of the neighbor configurations is used by the pairwise interchange (PI) method. Step 3. Acceptance probability. Let ∆ = W T (S 0 ) − W T (S) be the change in objective value, where W T (S) and W T (S 0 ) are the objective functions of the sequences S and S 0 , respectively. If ∆ ≤ 0, then S = S 0 ; otherwise, S = S 0 is accepted with probability exp(− βk W T∆(S) ) > γ, where k is the k th iteration, β is the control variable and γ is a random number between 0 and 1 (see Ben-Arieh and Maimon [7]). The control parameter β is set at three values of 1, 10, and 100. They are recorded as SA1 , SA2 , and SA3 , respectively. Step 4. Stopping condition. The SA process is terminated after 200n iterations where n is number of jobs. 5. The computational results. In this section, we conducted the computational experiments to measure the effectiveness of the branch-and-bound algorithm and evaluate the performances of the ACO and SA algorithms. These algorithms were implemented using the Compaq Visual Fortran version 6.6 and performed the experiments on a personal computer powered by an Intel Pentium(R) Dual-Core CPU E6300 @ 2.80GHz with 2GB RAM operating under Windows XP. The job processing times were generated from a uniform distribution over the integers 1-100. The weights of all jobs were generated from another uniform distribution over the integers 1-100. In addition, following Fishers [21] design, the due dates of the jobs were generated from a uniform distribution over the integers between T (1 − τ − R/2) and T (1 − τ + R/2), where T is the sum of the normal processing times of the n jobs, n P i.e., T = pi . The values of τ was set as 0.25 and 0.5 while R took the values of i=1

0.25, 0.50, and 0.75. This yields a total of six combinations of (τ, R) values, i.e., (0.25, 0.25), (0.25, 0.5), (0.25, 0.75), (0.5, 0.25), (0.5, 0.5), and (0.5, 0.75). For the parameters a and b, we set a = 1 and b= (0.001, 0.01, 0.1). The proportion of the jobs of the first agent was fixed at pro = 0.5 in the experiments. Among the total 36 experimental conditions examined, 30 replications were tested for each case. In first part, the number of jobs was fixed at n = 12 and 14. We examined the mean and maximum number of nodes, the mean and maximum computation times (in seconds). Moreover, the branch-and-bound algorithm turned to the next instance when the current instance took the number of nodes exceeded 108 . It was denoted the FS instance with the number of nodes less than 108 as a feasible solution. The performances of the branch-and-bound algorithms were summarized in Table 1 and Figure 1-3. As shown in Table 1 and Figure 1 (n = 12), it can

600

WEN-HUNG WU ET AL.

be seen that the branch-and-bound algorithm took more nodes as the value of b becomes larger (say b= 0.1). This implied that the most difficult instance is located at b = 0.1. The trend became no different for all of the six combinations of when b is approaching to 0.1. The same performance was also shown in Table 1 and Figure 2 when n is fixed at 14. It could be observed from Figure 3 that the number of FS declines as b increases, and the most difficult case was located at b= 0.1. In such a case, the value of FS becomes 0. In the second part, the computational experiments were conducted under the same instances in the first part. For evaluating the performance of the ACO and SA algorithms, the mean and maximum error percentages with the error percentage is defined as (Vi − V ∗ )/V ∗ × 100%, where Vi is the value of the objective function obtained from the ACO or SA algorithms and V ∗ is the value of the objective function obtained from the branch-and-bound algorithm. The performance comparison is shown in Table 2 and Figures 4-5. In ACOs, the maximum value of the mean error percentage for the AC1 , AC2 , and AC3 is 11.849%, 17.613%, and 11.145%, respectively. When combined the three ACOs into AC ∗ , the maximum value of the mean error percentage can be further reduced to 5.529%. For the performance of the three SAs, the maximum value of the mean error percentage of the SA1 , SA2 , and SA3 is 93.429%, 2.848%, and 17.955%, respectively. When further combined the three SAs into SA∗ , it can be seen in Table 2 that the maximum value of the mean and maximum error percentage of SA∗ reduces to 1.437% and 14.806%, respectively. Figure 4 shows that the performance of the three SAs are better than those of the three ACOs, however, the gap becomes narrower between the AC ∗ and SA∗ . The accuracy of the SA∗ is relatively better than that of the AC ∗ when b becomes smaller. Conversely, AC ∗ performs well when b = 0.1. Figure 4 indicates that AC1 and AC3 perform better than AC2 especially, and the trend becomes clear when b = 0.001. It can be seen in Figure 4 that the SA2 performs better than the SA1 and SA3 . The same situation can be seen in Figure 5 that AC1 and AC3 perform better than AC2 at τ =0.25. From Figure 5, it also notes that SA∗ is more stable than AC ∗ . Table 3 shows the average and maximum CPU time comparisons of the ACOs and SAs and ACO takes more CPU time to solve the instance than SA. Nevertheless, ACO or SA takes less than one second CPU time to obtain a near-optimal solution. Overall, the general average of the error percentage for AC ∗ and SA∗ can be lowered to 1.242% and 0.197%, respectively. The third part was to further assess the performance of the proposed algorithms for treating large job-size problem instances at n = 40 and 80. The parameters were designed as those in the previously part. For the performance of each ACO and SA ∗ ) × 100%, algorithm, its relative deviation percentage is defined as RDP = (HA−HA HA∗ where HA is the sum of the maximum weighted tardiness of job of the first agent and the total weighted tardiness of all the jobs of the second agent obtained from each ACO or SA. HA∗ is the solution obtained from the smallest objective function value among the three ACO and three SA algorithms. The computational results are summarized in Table 4 and Figures 6-7. As shown in Table 4, it can be seen that the maximum mean of the RPD among AC1 , AC2 , AC3 , SA1 , SA2 and SA3 is 25.128%, 27.835%, 37.993%, 30.739%, 23.737%, and 29.046%, respectively. Figure 6 indicates that ACs are better than SAs in terms of the RDP when b becomes smaller, but not absolutely dominant. Moreover, no trend can be observed in Figure 7 when the parameters τ and R were changed. Overall, it can be seen in Table 4 that the general average of the RDP among AC1 , AC2 , AC3 , SA1 , SA2 and SA3 is 8.088%,

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

601

9.521%, 9.028%, 9.617%, 8.566%, and 15.439%, respectively. It implies that the performances of both algorithms are very close except SA3 . As shown in Table 5, for the comparison of the ACOs and SAs in CPU time, ACO takes more than that of SA. Therefore, in order to improve the efficiency and quality of the solution, it is recommended to combine all the proposed heuristic algorithms. 6. Conclusions. This paper studies a single-machine two-agent scheduling problem with a linear deteriorating effect. We propose several elimination rules and a lower bound to be used in the branch-and-bound algorithm. In addition, we also propose an ant colony and simulated annealing algorithm for near-optimal solutions. The results indicate that our proposed branch-and-bound algorithm can solve the tested problem instances up to 14 within a reasonable CPU times. In addition, the results also indicate that the proposed SA∗ performs slightly better than AC ∗ , but ACO performance is more stable than that of SA. In this paper we have proposed 9 more dominance rules to be used in the branch-and-bound method, but the proposed lower bound is a bit weak which caused the branch-and-bound algorithm in solving problem instances only to 14. Therefore, the consideration of developing a powerful lower bound or more dominance rules used in the branch-and-bound algorithm or other meta-heuristics such as a genetic algorithm or tabu search approach might be an interesting issue to be explored in the future . Acknowledgments. We would like to thank to the Editor and two anonymous referees for their constructive comments on the earlier version of our paper. This paper was supported in part by the NSC of Taiwan under grant number NSC 102-2221035-057-070-MY3; in part by NSC of Taiwan under grant number NSC 102-2410H-264-003; in part by National Natural Science Foundation of China (71301022); in part by the Natural Science Foundation of Jiangxi, China (20132BAB201010); and in part by the Science Foundation of Education Committee of Jiangxi, China (GJJ13458).

602

WEN-HUNG WU ET AL.

Table 1. The results of branch-and-bound algorithms (n=12 and 14). n

b

τ

R

12

0.001

0.25

0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75

0.5

0.01

0.25

0.5

0.1

0.25

0.5

14

0.001

0.25

0.5

0.01

0.25

0.5

0.1

0.25

0.5

n=12 average n=14 average All average

Nodes mean max 2241823 5761322 2171224 5144297 1751003 7124664 1420371 4972046 1353023 7030622 909980 5328717 2012827 12097541 1161022 5289918 1742531 10111527 708367 5652542 2163189 17327270 818887 5987813 12731079 31492481 13543075 31892125 14350654 31295517 11070149 28729578 11645284 30901588 12804911 28592542 45525547 85336071 49658412 99951736 43226156 93431437 27259061 86316738 27083138 92582218 20350368 69746677 28495311 98063230 29607623 95929582 26020525 71330438 24659863 82441762 20554474 94514469 21660753 72984286 71982222 71982222 58240189 58240189 5255522 15262895 30577298 86950062 14003045 40027553

CPU mean 29.73 30.18 23.45 21.00 20.16 13.81 28.21 18.76 25.10 11.35 29.96 13.03 160.34 166.53 172.09 142.29 144.98 158.36 833.04 910.63 747.83 522.98 543.25 413.27 565.16 597.64 548.75 505.15 438.20 464.51 1693.23 1377.79 67.18 596.50 250.04

times max 66.64 62.22 75.19 68.00 79.97 74.86 145.86 71.78 121.97 76.22 207.36 79.77 333.30 339.81 333.52 305.02 321.13 300.64 1503.22 1846.61 1477.64 1547.11 1775.39 1381.27 1828.50 1686.94 1378.69 1689.73 1816.52 1620.83 1693.23 1377.79 170.18 1632.86 675.47

FS 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 24 23 24 25 30 25 25 20 19 21 23 24 1 0 0 0 1 0 30 16 23

14

0.001

12

0.5

0.25

0.5

0.25

0.5

0.25

0.5

0.25

0.5

0.25

0.5

0.25

τ

n=12 average n=14 average All average

0.1

0.01

0.001

0.1

0.01

b

n

0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75

R

AC1 mean max 4.128 48.168 6.912 44.469 8.111 136.858 5.291 20.076 7.435 47.517 7.971 52.307 2.623 41.905 5.025 32.443 3.977 80.760 4.923 42.196 3.003 19.080 2.590 17.869 0.630 16.324 0.537 15.939 0.466 13.905 0.244 7.322 0.000 0.000 0.073 2.203 7.773 62.255 10.308 48.355 11.849 76.350 5.056 25.110 4.170 30.273 6.111 34.387 3.879 39.426 5.963 31.265 9.396 51.416 5.511 67.858 2.641 38.430 3.931 39.073 0.000 0.000 0.000 0.000 3.552 35.519 6.238 44.452 4.480 38.605

Ant Colony Algorithms (MEP) AC2 AC3 mean max mean max 9.403 73.229 4.298 30.600 13.869 84.011 11.145 92.449 17.613 136.858 8.576 136.858 5.290 43.780 4.260 38.224 6.463 35.589 7.692 52.865 9.026 54.668 5.719 25.302 3.957 33.282 4.137 41.164 3.326 22.730 3.268 21.370 4.801 80.760 2.862 28.892 5.640 31.315 7.429 43.322 3.213 19.080 2.855 14.324 4.885 45.329 2.412 16.761 0.786 16.324 0.732 16.324 0.006 0.168 0.000 0.000 0.495 13.905 0.170 3.195 0.244 7.322 0.000 0.000 0.013 0.377 0.013 0.377 0.000 0.000 0.016 0.493 7.001 40.928 7.262 71.624 13.508 54.995 8.962 67.616 7.785 43.579 10.166 42.463 5.899 37.498 4.986 41.578 5.186 39.797 8.149 69.428 5.118 41.571 3.326 25.167 9.204 43.875 5.310 27.284 7.350 39.306 6.956 25.558 5.174 37.807 4.779 37.807 5.235 38.331 9.204 67.858 4.520 53.999 5.250 24.071 3.577 30.736 2.950 40.934 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 4.946 38.818 3.644 31.251 6.567 41.578 6.401 45.324 5.506 39.771 4.596 36.113 AC ∗ mean max 1.423 17.207 3.017 17.740 5.529 136.858 1.744 17.452 1.565 14.578 2.364 22.322 0.449 7.395 0.198 4.936 0.103 1.032 0.804 11.882 0.582 7.661 0.374 9.682 0.546 16.324 0.000 0.000 0.003 0.086 0.000 0.000 0.000 0.000 0.000 0.000 1.028 10.301 3.929 46.637 3.803 31.565 0.894 17.013 0.668 14.001 0.977 10.345 1.953 27.284 1.303 12.246 1.020 8.639 2.879 38.331 0.831 8.556 0.691 9.087 0.000 0.000 0.000 0.000 1.039 15.842 1.626 19.272 1.242 17.027

Simulated Annealing SA1 SA2 mean max mean max 9.353 142.063 0.098 2.076 16.697 244.631 0.013 0.207 13.122 166.029 0.328 5.099 5.769 76.376 1.602 34.475 3.671 50.308 1.275 23.015 12.364 89.388 0.759 8.830 2.409 62.634 1.020 8.455 1.946 42.427 0.549 4.926 8.627 232.614 1.673 25.594 4.386 75.188 2.490 26.433 5.031 113.447 0.513 4.725 1.426 18.857 0.325 1.851 16.680 269.838 0.843 7.759 0.138 2.939 0.330 3.236 2.991 42.737 1.128 23.594 2.688 49.594 1.401 21.422 1.268 24.461 1.187 20.119 0.307 6.781 0.563 6.931 9.475 120.078 1.175 11.117 8.210 94.357 1.884 32.784 93.429 1908.180 2.848 30.056 4.224 63.906 0.429 5.094 10.014 164.499 0.434 2.969 47.383 530.019 0.498 6.125 4.656 109.242 1.268 16.058 3.405 37.350 0.693 6.940 0.691 5.279 0.635 8.085 0.774 15.325 2.336 15.673 8.562 152.015 2.142 13.824 1.252 14.502 0.651 4.445 0.055 0.055 0.961 0.961 0.010 0.010 0.436 0.436 6.048 95.017 0.894 12.708 16.456 275.004 1.225 12.494 9.644 157.194 1.008 12.634

Algorithms (MEP) SA3 SA∗ mean max mean max 4.890 33.117 0.069 2.076 4.721 21.129 0.007 0.207 12.526 136.858 0.148 3.111 10.792 38.697 0.170 3.883 10.024 35.589 0.131 2.642 8.151 35.304 0.106 1.884 8.568 26.763 0.114 2.168 10.014 33.514 0.027 0.617 10.354 32.483 0.127 1.613 8.596 33.151 0.562 8.004 10.669 39.920 0.098 1.697 12.396 48.872 0.099 1.522 4.856 20.124 0.285 6.880 5.374 17.267 0.032 0.132 3.651 13.579 0.032 0.275 6.451 37.925 0.062 0.403 4.378 19.848 0.086 0.931 4.489 15.011 0.219 5.269 4.159 16.536 0.298 4.301 4.008 20.737 0.159 3.411 5.872 36.139 0.506 7.592 9.464 25.861 0.006 0.139 8.744 30.604 0.147 2.969 7.274 28.307 0.241 4.655 13.631 54.352 0.158 3.810 13.686 56.887 0.079 0.929 12.699 50.464 0.033 0.618 11.436 33.000 0.750 14.806 17.955 44.276 1.437 13.432 12.591 32.218 0.123 2.903 1.105 1.105 0.055 0.055 3.512 3.512 0.010 0.010 7.828 35.508 0.132 2.406 9.928 34.940 0.321 4.870 8.553 35.312 0.197 3.257

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM 603

Table 2. The performance of ACO and SA algorithms (n=12 and 14)

0.5

0.25

0.5

0.25

0.5

0.25

0.5

0.25

n=40 average n=80 average All average

0.1

0.01

0.001

0.1

0.5

Simulated SA1 mean max 13.497 164.606 9.324 144.146 11.671 132.001 6.299 90.750 3.806 16.237 17.610 208.072 12.544 158.971 6.499 43.920 7.355 61.830 3.582 38.778 3.142 33.964 7.485 47.653 5.309 139.455 3.357 20.005 5.303 90.005 7.493 164.030 2.587 66.672 1.465 31.853 9.472 27.537 10.373 24.170 10.540 22.453 7.170 18.222 8.903 18.952 7.864 19.345 19.662 69.438 15.005 62.216 17.250 79.821 14.446 91.759 21.630 84.900 30.739 176.973 5.741 113.228 15.993 115.386 2.749 29.814 3.534 42.862 4.928 69.234 11.874 133.336 7.129 91.830 12.104 66.647 9.617 79.239

annealing algorithms (RDP) SA2 SA3 mean max mean max 4.744 25.685 13.346 32.857 4.419 12.626 10.026 29.503 3.668 27.191 10.881 20.986 2.881 11.294 17.278 30.823 4.048 17.516 15.351 26.391 3.653 11.869 16.555 35.666 5.142 21.689 10.797 38.993 6.497 44.156 11.975 40.095 5.346 25.046 14.983 60.213 4.020 48.677 11.423 46.390 5.488 42.469 12.881 36.795 7.754 48.873 15.061 54.976 2.740 51.262 4.413 51.509 4.170 62.889 3.024 19.258 2.050 49.564 4.678 50.771 7.520 164.103 7.203 78.439 0.320 6.915 4.483 73.456 0.392 6.413 2.815 34.556 10.572 30.330 25.936 38.819 10.264 22.614 27.110 49.310 12.950 26.457 28.870 52.147 7.520 18.089 22.308 48.499 10.013 31.042 29.751 68.086 9.965 19.994 27.620 48.515 23.737 64.913 25.294 86.919 22.501 75.007 29.046 163.929 19.865 80.324 19.564 54.792 16.394 51.659 24.427 63.536 18.707 72.208 25.537 144.697 20.193 115.652 27.970 114.465 1.468 11.119 13.882 219.617 8.752 100.131 9.113 62.011 7.928 50.427 4.605 37.834 14.013 200.602 3.721 38.511 5.803 50.058 14.352 202.408 12.895 110.225 9.537 75.521 4.158 37.680 10.398 42.315 12.974 62.825 20.480 87.201 8.566 50.252 15.439 64.758

12 14

0.25

0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75

Ant colony algorithms (RDP) AC1 AC2 AC3 mean max mean max mean max 2.724 17.632 1.169 8.216 4.096 21.400 3.303 21.553 3.673 18.763 2.984 24.719 5.248 87.835 2.907 21.211 2.732 20.112 4.921 34.160 3.675 12.684 4.624 36.679 4.052 17.519 4.891 31.670 2.790 17.519 4.318 41.890 4.558 23.617 1.917 16.726 7.259 48.079 9.159 75.808 15.837 145.950 7.218 138.906 11.899 102.598 12.424 138.906 19.318 187.659 18.034 187.659 18.206 146.076 11.765 118.520 5.835 34.693 7.717 64.755 18.469 138.474 15.031 175.462 6.557 34.940 18.103 98.278 16.174 93.735 13.316 73.717 0.233 4.577 4.369 70.000 4.069 70.000 1.464 12.346 2.805 20.202 2.352 18.497 19.608 480.000 22.656 600.000 21.067 480.000 4.200 74.989 18.073 207.317 7.753 88.250 8.368 109.897 9.303 109.897 31.954 589.995 11.682 260.000 9.882 260.000 0.387 3.807 3.454 12.899 3.600 47.980 3.367 33.353 4.058 32.786 2.234 23.894 1.704 8.471 2.066 18.163 2.805 11.197 2.658 19.585 3.485 17.811 2.971 26.282 1.897 14.252 1.446 16.433 2.152 22.939 2.338 12.204 2.140 7.567 2.111 19.862 2.550 14.829 16.872 174.879 9.981 130.429 10.961 101.999 7.822 61.280 8.822 79.503 8.988 51.515 6.545 45.779 16.078 154.491 3.532 41.450 6.213 81.364 7.497 65.333 6.773 65.333 6.093 52.238 6.684 49.586 18.913 325.949 10.596 105.777 27.835 183.163 10.828 62.252 19.296 400.000 19.442 400.000 20.181 213.239 10.620 133.333 13.201 137.500 9.051 100.000 2.771 22.706 8.652 193.388 15.410 200.000 5.115 44.444 13.622 124.176 3.841 79.488 25.128 314.433 12.591 314.433 3.260 38.008 5.186 100.000 18.406 250.000 37.993 593.477 8.458 105.129 9.116 114.085 8.932 110.669 7.717 91.216 9.927 124.120 9.125 109.745 8.088 98.172 9.521 119.102 9.028 110.207

n

0.5

0.25

R

12 14

AC1 mean max 0.0841 0.0953 0.1148 0.1300

80

0.001

40

τ

n

0.01

b

n

604 WEN-HUNG WU ET AL.

Table 3. The CPU times of ACO and SA algorithms (n=12 and 14). Ant colony algorithms (CPU times) AC2 AC3 AC ∗ mean max mean max mean max 0.0845 0.0936 0.0840 0.0945 0.2526 0.2808 0.1151 0.1274 0.1145 0.1274 0.3444 0.3744

Simulated annealing algorithms (CPU times) SA1 SA2 SA3 SA∗ mean max mean max mean max mean max 0.0036 0.0156 0.0031 0.0156 0.0031 0.0156 0.0099 0.0329 0.0046 0.0156 0.0042 0.0165 0.0042 0.0156 0.0129 0.0381

Table 4. The results of ACO and SA algorithms (n=40 and 80).

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

Table 5. The CPU times of ACO and SA algorithms (n=40 and 80).

n 40 80 n 40 80

Ant colony algorithms (CPU times) AC1 AC2 AC3 mean max mean max mean max 0.9919 1.0478 0.9919 1.0478 0.9910 1.0495 5.3689 7.5600 5.3508 7.6146 5.3765 7.6076 Simulated annealing algorithms SA1 SA2 mean max mean max 0.0304 0.0355 0.0301 0.0355 0.1181 0.1317 0.1185 0.1326

(CPU times) SA3 mean max 0.0297 0.0338 0.1189 0.1309

Figure 1. The performances of branch-and-bound algorithm when changing b (n=12).

605

606

WEN-HUNG WU ET AL.

Figure 2. The performances of branch-and-bound algorithm when changing b (n=14).

Figure 3. The performances of Feasible solutions solved out (n=14).

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

Figure 4. The performances of ACOs and SAs when changing b (n=12 and 14).

Figure 5. The performances of ACOs and SAs (n=12 and 14).

607

608

WEN-HUNG WU ET AL.

Figure 6. The behaviors of ACOs and SAs over changing b (n=40 and 80).

Figure 7. The behaviors of ACOs and SAs for the large-size jobs (n=40 and 80). REFERENCES [1] A. Agnetis, P. B. Mirchandani, D. Pacciarelli and A. Pacifici, Scheduling problems with two competing agents, Operations Research, 52 (2004), 229–242.

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

609

[2] A. Agnetis, D. Pacciarelli and A. Pacifici, Multi-agent single machine scheduling, Annals of Operations Research, 150 (2007), 3–15. [3] B. Alidaee and N. K. Womer, Scheduling with time dependent processing times: Review and extensions, Journal of the Operational Research Society, 50 (1999), 711–729. [4] A. Allahverdi and F. S. Al-Anzi, Using two-machine flowshop with maximum lateness objective to model multimedia data objects scheduling problem for WWW applications, Computers and Operations Research, 29 (2002), 971–994. [5] A. Bachman and A. Janiak, Scheduling Jobs with Special Type of Start Time Dependent Processing Times, Report No 34/97, Institute of Engineering Cybernetics, Wroclaw University of Technology, 1997. [6] K. R. Baker and J. C. Smith, A multiple-criterion model for machine scheduling, Journal of Scheduling, 6 (2003), 7–16. [7] D. Ben-Arieh and O. Maimon, Annealing method for PCB assembly scheduling on two sequential machines, International Journal of Computer Integrated Manufacturing, 5 (1992), 361–367. [8] S. Browne and U. Yechiali, Scheduling deteriorating jobs on a single processor , Operations Research, 38 (1990), 495–498. [9] S. R. Cheng, A single-machine two-agent scheduling problem by GA approach, Asia-Pacific Journal of Operational Research, 29 (2012), 1250013, 22 pp. [10] T. C. E. Cheng, Q. Ding and B. M. T. Lin, A concise survey of scheduling with time-dependent processing times, European Journal of Operational Research, 152 (2004), 1–13. [11] T. C. E. Cheng, C. T. Ng and J. J. Yuan, Multi-agent scheduling on a single machine to minimize total weighted number of tardy jobs, Theoretical Computer Science, 362 (2006), 273–281. [12] T. C. E. Cheng, C. T. Ng and J. J. Yuan, Multi-agent scheduling on a single machine with max-form criteria, European Journal of Operational Research, 188 (2008), 603–609. [13] T. C. E. Cheng, S. R. Cheng, W. H. Wu, P. H. Hsu and C. C. Wu, A two-agent singlemachine scheduling problem with truncated sum-of-processing-times-based learning considerations, Computers & Industrial Engineering, 60 (2011), 534–541. [14] T. C. E. Cheng, W. H. Wu, S. R. Cheng and C. C. Wu, Two-agent scheduling with positionbased deteriorating jobs and learning effects, Applied Mathematics and Computation, 217 (2011), 8804–8824. [15] T. C. E. Cheng, Y. H. Chung, S. C. Liao and W. C Lee, Two-agent singe-machine scheduling with release times to minimize the total weighted completion time, Computers & Operations Research, 40 (2013), 353–361. [16] C. Chu, A branch-and-bound algorithm to minimize total tardiness with different release dates, Naval Research Logistics, 39 (1992), 859–875. [17] A. Colorni, M. Dorigo, M. Maniezzo, I. F. J. Varela and P. Bourgine, Distributed Optimization by Ant Colonies, Proceedings of the first European Conference on Artificial Life, Pairs, 1991. [18] A. Colorni, M. Dorigo, V. Maniezzo and M. Trubian, Ant system for job-shop scheduling, Belgian Journal of Operations Research, 34 (1994), 39–53. [19] M. Dorigo, Di Caro G and L. M. Gambardella, Ant algorithms for discrete optimization, Artificial Life, 5 (1999), 137–172. [20] M. Dorigo and L. M. Gambardella, Ant colony system: A cooperative learning approach to travel salesman problem, IEEE Trans Evol Computing, 1 (1997), 53–66. [21] M. L. Fisher, A dual algorithm for the one-machine scheduling problem, Math Programming, 11 (1976/77), 229–251. [22] R. L. Graham, E. L. Lawler, J. K. Lenstra and A. H. G. Rinnooy Kan, Optimization and heuristic in deterministic sequencing and scheduling: A survey, Annals of Discrete Mathematics, 5 (1979), 287–326. [23] A. Janiak, T. Krysiak and R. Trela, Scheduling problems with learning and aging effects: A survey, Decision Making in Manufacturing and Services, 5 (2011), 19–36. [24] S. Kirkpatrick, C. Gelatt and M. Vecchi, Optimization by simulated annealing, Science, 220 (1983), 671–680. [25] A. S. Kunnathur and S. K. Gupta, Minimizing the makespan with late start penalties added to processing times in a single facility scheduling problem, European Journal of Operation Research, 47 (1990), 56–64.

610

WEN-HUNG WU ET AL.

[26] K. Lee, B. C. Choi, J. Y. T. Leung and M. L. Pinedo, Approximation algorithms for multiagent scheduling to minimize total weighted completion time, Information Processing Letters, 109 (2009), 913–917. [27] J. Lenstra, A. H. G. Rinnooy Kan and P. Brucker, Complexity of Machine Scheduling Problems, Annals of Discrete Mathematics, 1 (1977), 343–362. [28] M. Lai and X. Tong, A metaheuristic method for vehicle routing problem based on improved ant colony optimization and Tabu search, Journal of Industrial and Management Optimization, 8 (2012), 469–484. [29] P. Liu and L. Tang, Two-agent scheduling with linear deteriorating jobs on a single machine, Lecture Notes in Computer Science, 5092 (2008), 642–650. [30] P. Liu, X. Y. Zhou and L. X. Tang, Two-agent single-machine scheduling with positiondependent processing times, International Journal of Advanced Manufacturing Technology, 48 (2010), 325–331. [31] D. C. Li and P. H. Hsu, Solving a two-agent single-machine scheduling problem considering learning effect, Computers & Operations Research, 39 (2012), 1644–1651. [32] W. Luo, L. Chen and G. Zhang, Approximation schemes for two-machine flow shop scheduling with two agents, Journal of Combinatorial Optimization, 24 (2012), 229–239. [33] W. Luo and L. Chen, Approximation schemes for scheduling a maintenance and linear deteriorating jobs, Journal of Industrial and Management Optimization, 8 (2012), 271–283. [34] E. Mokotoff, Algorithms for bicriteria minimization in the permutation flow shop scheduling problem, Journal of Industrial and Management Optimization, 7 (2011), 253–282. [35] G. Mosheiov, V -shaped policies for scheduling deteriorating jobs, Operations Research, 39 (1991), 979–991. [36] G. Mosheiov, Scheduling jobs under simple linear deterioration, Computers & Operations Research, 21 (1994), 653–659. [37] B. Mor and G. Mosheiov, Scheduling problems with two competing agents to minimize minmax and minsum earliness measures, European Journal of Operational Research, 206 (2010), 540–546. [38] C. T. Ng, T. C. E. Cheng and J. J. Yuan, A note on the complexity of the problem of twoagent scheduling on a single machine, Journal of Combinatorial Optimization, 12 (2006), 387–394. [39] Q. Q. Nong, T. C. E. Cheng and C. T. Ng, Two-agent scheduling to minimize the total cost, European Journal of Operational Research, 215 (2011), 39–44. [40] J. B. Wang and T. C. E. Cheng, Scheduling problems with the effects of deterioration and learning, Asia-Pacific Journal of Operational Research, 24 (2007), 245–261. [41] J. B. Wang and Q. Guo, A due-date assignment problem with learning effect and deteriorating jobs, Applied Mathematical Modelling, 34 (2010), 309–313. [42] J. B. Wang, L. H. Sun and L. Y. Sun, Single-machine total completion time scheduling with a time-dependent deterioration, Applied Mathematical Modelling, 35 (2011), 1506–1511. [43] G. Wan, R. S. Vakati, J. Y. T. Leung and M. Pinedo, Scheduling two agents with controllable processing times, European Journal of Operational Research, 205 (2010), 528–539. [44] W. H. Wu, S. R. Cheng, C. C. Wu and Y. Yin, Ant colony algorithms for a two-agent scheduling with sum-of processing times-based learning and deteriorating considerations, Journal of Intelligent Manufacturing, 23 (2012), 1985–1993. [45] C. C. Wu, S. K. Huang and W. C. Lee, Two-agent scheduling with learning consideration, Computers & Industrial Engineering, 61 (2011), 1324–1335. [46] D. L. Yang and W. H. Kuo, Single-machine scheduling with both deterioration and learning effects, Annals of Operations Research, 172 (2009), 315–327. [47] D. L. Yang and W. H. Kuo, Scheduling with deteriorating jobs and learning effects, Applied Mathematics and Computation, 218 (2011), 2069–2073. [48] S. H. Yang and J. B. Wang, Minimizing total weighted completion time in a two-machine flow shop scheduling under simple linear deterioration, Applied Mathematics and Computation, 217 (2011), 4819–4826. [49] S. H. Yang and D. L. Yang, Minimizing the total completion time in single-machine scheduling with aging/deteriorating effects and deteriorating maintenance activities, Computers and Mathematics with Applications, 60 (2010), 2161–2169. [50] Y. Yin and D. Xu, Some single-machine scheduling problems with general effects of learning and deterioration, Computers and Mathematics with Applications, 61 (2011), 100–108.

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

611

[51] Y. Yin, S. R. Cheng and C. C. Wu, Scheduling problems with two agents and a linear nonincreasing deterioration to minimize earliness penalties, Information Sciences, 189 (2012), 282–292. [52] Y. Yin, S. R. Cheng, T. C. E. Cheng, W. H. Wu and C. C. Wu, Two-agent single-machine scheduling with release times and deadlines, International Journal of Shipping and Transport Logistics, 5 (2013), 75–94. [53] Y. Yin, T. C. E. Cheng, J. Xu, S. R. Cheng and C. C. Wu, Single-machine scheduling with past-sequence-dependent delivery times and a linear deterioration, Journal of Industrial and Management Optimization, 9 (2013), 323–339. [54] C. L. Zhao, Q. L. Zhang and H. Y. Tang, Scheduling problems under linear deterioration, Acta Automatica Sinica, 29 (2003), 531–535.

Received September 2012; 1st revision April 2013; 2nd revision April 2013. E-mail E-mail E-mail E-mail E-mail

address: address: address: address: address:

[email protected] [email protected] wenhsiang [email protected] [email protected] [email protected]

doi:10.3934/jimo.2014.10.591 pp. 591–611

A TIME-DEPENDENT SCHEDULING PROBLEM TO MINIMIZE THE SUM OF THE TOTAL WEIGHTED TARDINESS AMONG TWO AGENTS

Wen-Hung Wu Department of Business Administration Kang-Ning Junior College of Medical Care and Management Taipei, Taiwan

Yunqiang Yin College of Sciences, East China Institute of Technology Fuzhou, Jiangxi 344000, China

Wen-Hsiang Wu Department of Healthcare Management Yuanpei University, Hsinchu, Taiwan

Chin-Chia Wu Department of Statistics, Feng Chia University Taichung, Taiwan

Peng-Hsiang Hsu Department of Business Administration Kang-Ning Junior College of Medical Care and Management Taipei, Taiwan

(Communicated by T. C. Edwin Cheng)

2010 Mathematics Subject Classification. Primary: 90B35; Secondary: 68M20. Key words and phrases. Scheduling, two-agent, ant colony algorithm, simulated annealing algorithm, deterioration jobs. We would like to thank to the Editor and two anonymous referees for their constructive comments on the earlier version of our paper. This paper was supported in part by the NSC of Taiwan under grant number NSC 102-2221-035-057-070-MY3; in part by NSC of Taiwan under grant number NSC 102-2410-H-264-003; in part by National Natural Science Foundation of China (71301022); in part by the Natural Science Foundation of Jiangxi, China (20132BAB201010); and in part by the Science Foundation of Education Committee of Jiangxi, China (GJJ13458).

591

592

WEN-HUNG WU ET AL.

Abstract. The problem of scheduling with time-dependent processing times has been studied for more than two decades and significant advances have been made over the years. However, most work has paid more attention to the single-criterion models. Furthermore, most heuristics are constructed for the time-dependent scheduling problems in a step-by-step way. Motivated by the observations, this paper studies a two-agent scheduling model with increasing linear deterioration jobs in which the processing time of a job is modeled as an increasing linear function of its starting time. The objective function is to minimize the sum of the maximum weighted tardiness of the jobs of the first agent and the total weighted tardiness of the jobs of the second agent. This problem is known to be strongly NP-hard. Thus, as an alternative, the branch-and-bound, ant colony algorithm and simulated annealing algorithms are developed for the problem. Computational results are also presented to determine the performance of the proposed algorithms.

1. Introduction. Traditionally, most of the scheduling problems focus on that the processing times of jobs are assumed to be constant values. In fact, the processing times of jobs may change due to deterioration in many real-life situations. The examples can be seen in the control of queues and communication systems, shops with deteriorating machines, delay of maintenance or cleaning, fire fighting, hospital emergency wards, and scheduling steel production in rolling mills (Kunnathur and Gupta [25] and Mosheiov [35, 36]). In such a production situation, any delay in processing a job may cause an increasing effort to accomplish the job. This is also called as deterioration jobs or time-dependent processing times. The problem of scheduling with time-dependent processing times has been studied for more than two decades and the topic has received growing attention. To make the analysis simplified, most research models treat the actual processing time of a job as a linear or piecewise linear increasing function of its start time. For example, Browne and Yechiali [8] modeled the actual processing time of job Jj as pj (t) = pj + αj t, where αj is the normal deterioration rate of job Jj . The authors showed that the makespan can be minimized by sequencing the jobs in nondecreasing order of pj /αj . Following Browne and Yechialis [8] model, Mosheiov [35] investigated the total flow time minimization scheduling problem and showed that an optimal sequence (V -shaped schedule) exists if the normal processing times of all jobs are equal (i.e. pj (t) = p0 + αj t ). Mosheiov [36] further studied a simple model of pj (t) = αj t and showed some single-machine problems with polynomial times such as the makespan, total completion time, total weighted completion time, total lateness, number of tardy jobs, maximum lateness, and maximum tardiness. Bachman and Janiak [5] introduced a different linear deterioration model where for all jobs, the increasing rates are a (a > 0) times greater than the normal processing times pj , i.e., αj = apj . The model implies that the actual processing time of a job Jj is pj (t) = pj (1 + at), where a is a positive constant. Zhao et al. [54] formulated the actual processing time of job Jj as pj (t) = pj (a + bt) where a and b are positive constants. They proved that the single-machine scheduling problems of minimizing the makespan, total weighted completion time, maximum lateness and maximum cost are polynomially solvable. Yang and Wang [48] addressed a two-machine flowshop under simple linear deterioration to minimize total weighted completion time. As for the other recent works with different type of deterioration settings, the reader may refer to these comprehensive surveys by Alidaee and Womer [3], Cheng et al. [10], and Janiak et al. [23], Luo and Chen [33], Yin et al. [53]. In addition, some relevant papers involving with the mixed learning and deteriorating effect, the reader

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

593

may refer to Wang and Cheng [40], Wang and Kuo [41], Wang et al. [42], Yang and Kuo [46, 47], Yang and Yang [49], and Yin and Xu [50]. A common point can be found in the above literature that most researchers focused more attention on a single criterion to be optimized. In fact, many real applications released that jobs maybe be from several agents (customers) that need different conditions to follow. Meanwhile, the multiple-agent scheduling problems with deteriorating jobs are only few. For some relevant works, Liu and Tang [29] considered the actual processing time as a simple linear increasing function of its starting time and showed their complexity of the proposed multi-agent scheduling problems. Liu et al. [30] modeled an aging-and-learning effect model into the two-agent scheduling problem. They claimed that two proposed problems can be solved out with polynomial times. Cheng et al. [12] assumed the actual processing time of a job as a function of the sum-of-processing-times-based learning and a control parameter. They applied a branch-and-bound and three simulated annealing algorithms for their problem. Cheng et al. [13] considered a two-agent problem with a learning and deteriorating effect where the actual processing time of a job of the first agent is a function of position-based learning, meanwhile, the actual processing time of a job of the second agent is a function of the position-based deterioration. Wu et al. [44] investigated a two-agent single-machine scheduling problem where they considered the actual processing time of a job of the first (second) agent as a decreasing function of the sum-of-processing-times-based learning (or an increasing function of the sum-of-processing-times-based deteriorating effect). They proposed a branch-and-bound and some ant colony algorithms for the optimal and near-optimal solutions, respectively. Cheng [9] studied a two-agent problem with a truncation learning effect where the criterion is to minimize the total weighted completion time of jobs of the first agent under the circumstances that no tardy job is allowed for the second agent. Li and Hsu [31] addressed a two-agent scheduling problem with a learning effect. Their criterion is to minimize the total weighted completion time of both agents with the restriction that the makespan of either agent cannot exceed an upper bound. Wu et al. [45] modeled a learning effect into a single-machine two-agent scheduling problem. The goal is to minimize the total tardiness of jobs from the first agent given that no tardy job is allowed for the second agent. Cheng et al. [15] dealt with the objective of minimizing the total weighted completion time of the jobs of one agent with the constraint that the maximum lateness of the jobs of the other agent does not exceed a given limit. Yin et al. [51] considered a two-agent problem with a linear non-increasing deterioration having three different objective functions. They discussed some properties and the complexity results for the proposed problems. As shown in the above literature, the two-agent scheduling problems with due date based objective functions, such as total tardiness or total weighted tardiness are relatively unexplored. Another motivation is observed that most non-trivial time-dependent scheduling problems are at least NP-hard in the ordinary sense, only a few polynomial-time algorithms for such problems exists. However, the heuristics for solving the time-dependent scheduling problems by using the metaheuristics are only a few. Therefore, this paper attempts to integrate the two-agent and time-dependent processing times scheduling problem to minimize the sum of the maximum weighted tardiness of job of the first agent and the total weighted tardiness of the jobs of the second agent. In addition, an ant colony algorithm will be used for near-optimal solutions.

594

WEN-HUNG WU ET AL.

The remaining of the paper is organized as follows. In the next section, the problem statements are given. In Section 3, some dominance properties and a lower bound are derived for speeding up the search for the optimal solution. In Section 4, the descriptions of the ant colony algorithm and the simulated annealing algorithm are presented. In Section 5, the results of a computational experiment are provided. The conclusions and suggestions are given in the last section. 2. Model formulation. The single-machine two-agent scheduling problem with a linear increasing deterioration considered in this paper can be stated as follows. Suppose that there are two competing agents, each of them has a set of non-preemptive jobs to be processed on a common machine. The set of jobs of the first agent is J (1) = {J1 , J2 , . . . , Jn1 } and that of the second agent is J (2) = {Jn1 +1 , Jn1 +2 , . . . , Jn1 +n2 }. Associated with each job Jj are a normal processing time pj > 0, a weight wj > 0 and a due date dj ≥ 0. All data are supposed to be integers. A job cannot start before its release date, and only one job at a time can be scheduled on the machine. If each job Jj starts to be processed at time t in a given sequence, then its actual processing time is defined as pj (t) = pj (a + bt),

(1)

where a and b are positive constants. Let S indicate a feasible schedule of the n = n1 + n2 jobs, i.e., a feasible assignment of starting times to the jobs of both agents. The completion time of job Jj is denoted as Cj (S), and the tardiness is defined as Tj (S) = max 0, Cj (S) − dj . We shall write Cj and Tj for Cj (S) and Tj (S) , respectively, whenever this does not generate confusion. The objective of the first agent is to minimize maxJj ∈J (1) wj Tj P and that of the second agent is to minimize Jj ∈J (2) wj Tj . It is desired to find P a schedule that minimizes maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . Using the threefield notation of Graham P et al. [22], we denote this problem by 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . For more recent multi-agent scheduling without deterioration jobs, please refer to Agnetis et al. [1, 2], Baker and Smith [6], Cheng et al. [11, 12], Ng et al. [38], Lee et al. [26], Wan et al. [43], Mor and Mosheiov [37], Luo et al. [32], Nong et al. [39], and Yin et al. [52], etc. P 3. Branch-and-bound algorithm. The classical scheduling problem 1|| wj Tj is NP-Hard in the strong sense (Lenstra et al., [27]). Thus, our problem must be strongly NP-hard too. Though there are little efficient algorithms for the NP-hard scheduling problems in practice, it is still necessary to develop schedules for such problems in a fast and effective manner. In this section, we apply the branchand-bound technique to search for the optimal solution and develop an ant colony algorithm to derive the Pnear-optimal solutions for the problem 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . In order to speed up the search process, we will establish some dominance rules in this following subsection. 3.1. Dominance rules. Dominance rules are common in the scheduling literature (Chu [16] and Allahverdi and Al-Anzi [4]). They are mainly used in implicit enumeration technique such as branch-and-bound algorithms. In this section, some dominance rules are developed for our problem. Consider exchanging the positions of two adjacent jobs Ji and Jj in a schedule S = (π, Ji , Jj , π 0 ) in which π and π 0 denote partial sequences. Let S 0 = (π, Jj , Ji , π 0 ) be the new schedule obtained by

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

595

swapping jobs Ji and Jj , and leaving the other jobs unchanged in schedule S. In addition, it is assumed that t is the completion time of the last job in π. Lemma 3.1. If Ji , Jj ∈ J (1) , wj max{(t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , 0} ≤ wi max{(t + a/b)(1 + bpi )(1 + bpj ) − a/b − di , 0} or there exists a job Jk in π ∩ J (1) such that max wj max{(t+a/b)(1+bp i )(1+bpj )−a/b−dj , 0}, wi max{(t+a/b)(1+ bpi )(1 + bpj ) − a/b − di , 0} ≤ wk Tk , then S dominates S 0 . Proof. The completion time of jobs Ji and Jj in S and S 0 are, respectively, Ci (S) = t + pi (a + bt) = (t + a/b)(1 + bpi ) − a/b Cj (S) = (t + a/b)(1 + bpi ) − a/b + pj (t + a/b)(1 + bpi ) − a/b = (t + a/b)(1 + bpi )(1 + bpj ) − a/b Cj (S 0 ) = t + pj (a + bt) = (t + a/b)(1 + bpj ) − a/b and Ci (S 0 ) = (t + a/b)(1 + bpj ) − a/b + pi (t + a/b)(1 + bpj ) − a/b = (t + a/b)(1 + bpi )(1 + bpj ) − a/b. It follows that Ci (S) < Ci (S 0 ), Cj (S 0 ) < Cj (S) and Cj (S) = Ci (S 0 ). Hence, Ti (S) < Ti (S 0 ) and Tj (S 0 ) < Tj (S). Since Ji , Jj ∈ J (1) , to show that S dominates S 0 , it suffices to show that wj Tj (S 0 ) ≤ wi Ti (S) or there exists a job Jk in π ∩ J (1) such that max{wj Tj (S 0 ), wi Ti (S)} ≤ wk Tk as required. i) Lemma 3.2. If Ji , Jj ∈ J (2) , (a/b+d t+a/b < (1 + bpi )(1 + bpj ), and min (1 + bpi )(1 + (a/b+d ) i) bpj )− t+a/bj , bpi (1+bpj ) wi ≤ min (1+bpi )(1+bpj )− (a/b+d wj , t+a/b , bpj (1+bpi ) 0 then S dominates S . 0 Proof. By the proof of Lemma 1, we obtain Cj (S) = Ci (S ). Now to show that S 0 0 0 dominates S , it suffices to show that wj Tj (S )+wi Ti (S ) − wi Ti (S)+wj Tj (S) ≥ (a/b+dj ) i) 0. In fact, by (a/b+d t+a/b < (1+bpi )(1+bpj ), and min (1+bpi )(1+bpj )− t+a/b , bpi (1+ i) bpj ) wi ≤ min (1 + bpi )(1 + bpj ) − (a/b+d wj , we have t+a/b , bpj (1 + bpi ) wj Tj (S 0 ) + wi Ti (S 0 ) − wi Ti (S) + wj Tj (S) = wj max (t + a/b)(1 + bpj ) − a/b − dj , 0 + wi max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − di , 0 − wi max (t + a/b)(1 + bpi ) − a/b − di , 0 − wj max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , 0 = wi max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − di , 0 − max{(t + a/b)(1 + bpi ) − a/b − di , 0 − wj max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , 0 − max{(t + a/b)(1 + bpj ) − a/b − dj , 0 = wi min (t + a/b)(1 + bpi )(1 + bpj ) − a/b − di , bpj (t + a/b)(1 + bpi ) − wj max min{(t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , bpi (t + a/b)(1 + bpj )}, 0

≥ 0. The result follows.

596

WEN-HUNG WU ET AL.

Lemma 3.3. If Ji , Jj ∈ J (2) , pi ≤ pj , di ≤ max (t + a/b)(1 + bpj ) − a/b, dj and wi ≥ wj , then S dominates S 0 . Proof. By the proof of Lemma 1, we have Ci (S) < Ci (S 0 ), Cj (S 0 ) < Cj (S) and Cj (S) = Ci (S 0 ). Next we split the proof into two cases. Case 1. dj ≤ (t + a/b)(1 + bpj ) − a/b. Then by pi ≤ pj and di ≤ max (t + a/b)(1 + bpj ) − a/b, dj , we have Ci (S) ≤ Cj (S 0 ) and di ≤ (t + a/b)(1 + bpj ) − a/b. It follows that di ≤ Cj (S 0 ) < Ci (S 0 ) and dj ≤ Cj (S 0 ) < Cj (S). It can obtain from wi ≥ wj that wj Tj (S 0 ) + wi Ti (S 0 ) − wi Ti (S) + wj Tj (S) = wi Ti (S 0 ) − Ti (S) − wj Tj (S) − Tj (S 0 ) ≥ wj Ti (S 0 ) + Tj (S 0 ) − Ti (S) − Tj (S) ≥ wj Ci (S 0 ) − di + Cj (S 0 ) − dj − Ti (S) − Cj (S) + dj = wj − di + Cj (S 0 ) − Ti (S) ≥ 0. Case 2. dj > (t+a/b)(1+bpj )−a/b. Then by di ≤ max (t+a/b)(1+bpj )−a/b, dj , i) 0 we have di ≤ dj . Now, if (a/b+d t+a/b ≥ (1+bpi )(1+bpj ), then Ti (S) = Tj (S) = Ti (S ) = Tj (S 0 )=0; otherwise by Lemma 2, we have wj Tj (S 0 )+wi Ti (S 0 ) ≥ wi Ti (S)+wj Tj (S). In both cases, we have wj Tj (S 0 ) + wi Ti (S 0 ) ≥ wi Ti (S) + wj Tj (S). It follows that S dominates S 0 . Lemma 3.4. If Ji ∈ J (2) , Jj ∈ J (1) and there exists a job Jk in π ∩ J1 such that wj max (t + a/b)(1 + bpi )(1 + bpj ) − a/b − dj , 0 ≤ wk Tk , then S dominates S 0 . Proof. The proof is similar to that of Lemma 1. Next, we present some results to determine the feasibility of a partial sequence. Let (π, π 0 ) be a sequence of jobs where π is the scheduled part with k jobs and π 0 is the unscheduled part. Moreover, let C[k] be the completion time of the last job in π. Lemma 3.5. If all jobs in π 0 belong to the second agent and there is a job Jj ∈ π 0 such that pj ≤ minJi ∈π0 {pi }, dj ≤ minJi ∈π0 {di } and wj ≥ maxJi ∈π0 {wi }, then there is an optimal schedule such that Jj will be the first job of the remaining sequence. Lemma 3.6. If all jobs in π 0 belong to the second agent and there is a job Jj ∈ π 0 such that pj ≥ maxJi ∈π0 {pi }, dj ≥ maxJi ∈π0 {di } and wj ≤ minJi ∈π0 {wi }, then there is an optimal schedule such that Jj will be the last job of the remaining sequence. Q Lemma 3.7. If there is a job Jj ∈ π 0 such that dj ≥ C[k] + a/b Jl ∈π 0 1 + bpl − a/b, then there is an optimal schedule such that Jj will be the last job of the remaining sequence. Lemma 3.8. Let Ji , Jj ∈ J (1) be such that wi > wj and di < dj . Then there is an optimal schedule such that Ji is scheduled before Jj . Proof. Let S be an optimal schedule such that job Jj is processed before Ji . By right-shifting Jj to the position just after Ji , we obtain a new schedule S 0 . Then apart from Jj , each job in S 0 has a completion time not greater than that in S,

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

597

in particular, we have Ci (S 0 ) < Ci (S), and Cj (S) < Cj (S 0 ) = Ci (S). Now from wi ≥ wj and di ≤ dj , we have wj Ej (S 0 ) = wj max{Cj (S 0 ) − dj , 0} < wi max{Ci (S) − di , 0} = wi Ei (S) and wi Ei (S 0 ) = wi max{Ci (S 0 ) − di , 0} < wi max{Ci (S) − di , 0} = wi Ei (S). It follows that converting S into S 0 does not increase the objective value of the first agent. Hence S 0 is still an optimal schedule. Repeating the above procedure, we eventually obtain the required optimal schedule as required. Lemma 3.9. There is an optimal schedule such that the jobs belonging to the first agent with the same weight are processed in the EDD order and, furthermore, the jobs belonging to the first agent with the same weight and due date are consecutively processed. Proof. By Lemma 8, the jobs belonging to the first agent with the same weight should be processed in the EDD order. On the other hand, analogous to the proof of Lemma 8, we also know that the jobs belonging to the first agent with the same weight and due date should be consecutively processed. P 3.2. A lower bound for 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . The efficiency of the branch-and-bound algorithm largely depends on the lower bound of the partial sequence. In this Psubsection, we propose a lower bound for 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . Let AS be a partial sequence in which the order of the first k1 jobs and the last k2 jobs is determined and U S be the unscheduled part, P i.e., AS = (π1 , P −, −, π2 ). Clearly, a lower bound for w 1|pj (t) = pj (a + bt), pmpt| Jj ∈J (1) n1j Tj + Jj ∈J (2) wj Tj is also a lower bound for P 1|pj (t) = pj (a + bt)| maxJj ∈J (1) wj Tj + Jj ∈J (2) wj Tj . In what follows, we develop P P w a lower bound for 1|pj (t) = pj (a + bt), pmpt| Jj ∈J (1) n1j Tj + Jj ∈J (2) wj Tj . Set w ¯j = wj for j = n1 + 1, n1 + 2, . . . , n. Let the w ¯j = n1j for j = 1, 2, . . . , n1 , and w completion time of the last job in AS be T . Then, the procedure can be described as follows. Step 1. Sort the normal processing times, due dates and weights of the jobs in U S in the non-decreasing order, respectively, i.e., p(1) ≤ p(2) ≤ · · · ≤ p(n−k1 −k2 ) , d(1) ≤ d(2) ≤ · · · P ≤ d(n−k1 −k2 ) , and w ¯(1) ≤ w ¯(2) ≤ · · · ≤ w ¯(n−k1 −k2 ) ; let t = T , i = 1, X = T + pj and dmax = maxj∈U S,k2 {dj } Jj ∈U S

WT =

P

Jj ∈π1

w ¯j Tj +

k2 P j=1

j Q w ¯[n−k2 +j] max (X + a/b) (1 + bp[n−k2 +k] ) − dmax , 0 . k=1

Step 2. While i ≤ n − k1 − k2 do T(i) = max (t + a/b)(1 + bp(i) ) − a/b − d(n−k1 −k2 ) , 0 ; WT = WT + w ¯(n−k1 −k2 −i+1) T(i) ; t = (t + a/b)(1 + bp(i) ) − a/b; i = i + 1; Enddo Therefore, the lower bound for partial sequence PS is LB = W T .

598

WEN-HUNG WU ET AL.

4. Ant colony algorithm and simulated annealing algorithm. Providing a sharp, i.e., low initial upper bound is critically important for enhancing the exclusion rate of the branch-and-bound algorithm, i.e., the rate with which nodes are fathomed. Hence, it is worth expending some computational effort to achieve that end. In this subsection, we apply the ant colony algorithm and the simulated annealing algorithm to compute an upper bound for the objective value of the problem. The basics of the ant colony and simulated annealing algorithm are described as follows. 4.1. Ant colony algorithm. The ant colony algorithm (ACO) is one of the metaheuristics that are commonly seen to apply for solving many combinatorial optimization problems (Colorni et al. [18], Dorigo et al. [19], Dorigo and Gambardella [20], Lai and Tong [28], Wu et al. [44]). The ACO algorithm is proposed by Colorni et al. [17] and its idea is originated from the behavior of an ant to find the shortest path from its nest to food location. In the constructive procedure, there are n nodes to be visited and an ant visits from the current node to next node by using a probability distribution which corresponds to the pheromone trials in real ants. When the last node is visited, pheromone trials are updated according to the quality of the best solution built. Thus, cooperation between ants is performed by the common structure which is the shared pheromone matrix. The descriptions of the ACO algorithm (Wu et al.[44]) are summarized in the following. Step 1. Initialization. We randomly generate 50 ants. Each ant k is denoted as a k sequence Sk which indicates the position of the jobs in the sequence. Let τij be the k pheromone intensity of setting job i in position j and is given byτij = Q/Zk ,where Q is a given parameter and Zk is the value of the objective function of Sk . In our preliminary trial, we adopted three different values of Q set at 1, 10, and 100. They are recorded as AC1 , AC2 , and AC3 , respectively. Step 2. Node transition rule. During a visit, each ant moves on the graph from node to node through the edges, and no node can be visited twice. The nodes to be visited should be put in a tabu list and be marked as inaccessible list. For the k th ant on node i, the selection node j to visit is according the following ( of(τnext α ij ) P if j ∈ / tabuk ; (τiν )α , ν ∈tabu / k where τij is the transition probability pkij = 0, otherwise; current pheromone intensity on edge (i, j ), α is parameter controlling the relative importance of global for edge (i, j ), and tabuk indicates the current set of nodes inaccessible from ant k. The pheromone is a sort of long-term memory that records previous experiences of the ants about the global preference for edge (i, j ) according to the quality of the solutions found. This paper adopts a two-level probability policy to determine the next node to transit to. If q ≤ q0 , then choose the best edge with the largest value of pkij to move, otherwise generate another random number q from the interval U [0,1] to determine, in roulette wheels, which accessible node to visit next. In our trials, the values of (α, q0 ) are taken as (1.0, 0.2). Step 3. Pheromone updating rule. When all of the ants have completed their tours (which is called a cycle), intensity of pheromone on each edge is updating based m P k on the following expressionτij = (1 − ρ)τij + ∆τij , where ρ is the evaporation k=1 k rate of the previous pheromone intensity, m is the number of ants, and ∆τij is the pheromone currently laid by ant k . In step 1, the number of distributed ants m is

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

599

set at 50 and the evaporation rate of the previous pheromone intensity is adopted as 0.1. Step 4. Stopping rule. The quality of the schedule is quite stable after 50 iterations according to our preliminary trials. 4.2. Simulated annealing algorithm. The simulated annealing algorithm (SA) is population-based random search technique to find an optimum solution usually in large search spaces (Mokotoff [34]). The concept of this algorithm was introduced by Kirkpatrick et al. [24]. The SA procedure is described in the following steps. Step 1. Initialization. The initial job sequence S is in early due date order and the arrangement of all jobs of the first agent after any job of the second agent, that is S = {J (2) , J (1) }. Step 2. Generation rules. To construct a new sequence S 0 , the generation mechanism of the neighbor configurations is used by the pairwise interchange (PI) method. Step 3. Acceptance probability. Let ∆ = W T (S 0 ) − W T (S) be the change in objective value, where W T (S) and W T (S 0 ) are the objective functions of the sequences S and S 0 , respectively. If ∆ ≤ 0, then S = S 0 ; otherwise, S = S 0 is accepted with probability exp(− βk W T∆(S) ) > γ, where k is the k th iteration, β is the control variable and γ is a random number between 0 and 1 (see Ben-Arieh and Maimon [7]). The control parameter β is set at three values of 1, 10, and 100. They are recorded as SA1 , SA2 , and SA3 , respectively. Step 4. Stopping condition. The SA process is terminated after 200n iterations where n is number of jobs. 5. The computational results. In this section, we conducted the computational experiments to measure the effectiveness of the branch-and-bound algorithm and evaluate the performances of the ACO and SA algorithms. These algorithms were implemented using the Compaq Visual Fortran version 6.6 and performed the experiments on a personal computer powered by an Intel Pentium(R) Dual-Core CPU E6300 @ 2.80GHz with 2GB RAM operating under Windows XP. The job processing times were generated from a uniform distribution over the integers 1-100. The weights of all jobs were generated from another uniform distribution over the integers 1-100. In addition, following Fishers [21] design, the due dates of the jobs were generated from a uniform distribution over the integers between T (1 − τ − R/2) and T (1 − τ + R/2), where T is the sum of the normal processing times of the n jobs, n P i.e., T = pi . The values of τ was set as 0.25 and 0.5 while R took the values of i=1

0.25, 0.50, and 0.75. This yields a total of six combinations of (τ, R) values, i.e., (0.25, 0.25), (0.25, 0.5), (0.25, 0.75), (0.5, 0.25), (0.5, 0.5), and (0.5, 0.75). For the parameters a and b, we set a = 1 and b= (0.001, 0.01, 0.1). The proportion of the jobs of the first agent was fixed at pro = 0.5 in the experiments. Among the total 36 experimental conditions examined, 30 replications were tested for each case. In first part, the number of jobs was fixed at n = 12 and 14. We examined the mean and maximum number of nodes, the mean and maximum computation times (in seconds). Moreover, the branch-and-bound algorithm turned to the next instance when the current instance took the number of nodes exceeded 108 . It was denoted the FS instance with the number of nodes less than 108 as a feasible solution. The performances of the branch-and-bound algorithms were summarized in Table 1 and Figure 1-3. As shown in Table 1 and Figure 1 (n = 12), it can

600

WEN-HUNG WU ET AL.

be seen that the branch-and-bound algorithm took more nodes as the value of b becomes larger (say b= 0.1). This implied that the most difficult instance is located at b = 0.1. The trend became no different for all of the six combinations of when b is approaching to 0.1. The same performance was also shown in Table 1 and Figure 2 when n is fixed at 14. It could be observed from Figure 3 that the number of FS declines as b increases, and the most difficult case was located at b= 0.1. In such a case, the value of FS becomes 0. In the second part, the computational experiments were conducted under the same instances in the first part. For evaluating the performance of the ACO and SA algorithms, the mean and maximum error percentages with the error percentage is defined as (Vi − V ∗ )/V ∗ × 100%, where Vi is the value of the objective function obtained from the ACO or SA algorithms and V ∗ is the value of the objective function obtained from the branch-and-bound algorithm. The performance comparison is shown in Table 2 and Figures 4-5. In ACOs, the maximum value of the mean error percentage for the AC1 , AC2 , and AC3 is 11.849%, 17.613%, and 11.145%, respectively. When combined the three ACOs into AC ∗ , the maximum value of the mean error percentage can be further reduced to 5.529%. For the performance of the three SAs, the maximum value of the mean error percentage of the SA1 , SA2 , and SA3 is 93.429%, 2.848%, and 17.955%, respectively. When further combined the three SAs into SA∗ , it can be seen in Table 2 that the maximum value of the mean and maximum error percentage of SA∗ reduces to 1.437% and 14.806%, respectively. Figure 4 shows that the performance of the three SAs are better than those of the three ACOs, however, the gap becomes narrower between the AC ∗ and SA∗ . The accuracy of the SA∗ is relatively better than that of the AC ∗ when b becomes smaller. Conversely, AC ∗ performs well when b = 0.1. Figure 4 indicates that AC1 and AC3 perform better than AC2 especially, and the trend becomes clear when b = 0.001. It can be seen in Figure 4 that the SA2 performs better than the SA1 and SA3 . The same situation can be seen in Figure 5 that AC1 and AC3 perform better than AC2 at τ =0.25. From Figure 5, it also notes that SA∗ is more stable than AC ∗ . Table 3 shows the average and maximum CPU time comparisons of the ACOs and SAs and ACO takes more CPU time to solve the instance than SA. Nevertheless, ACO or SA takes less than one second CPU time to obtain a near-optimal solution. Overall, the general average of the error percentage for AC ∗ and SA∗ can be lowered to 1.242% and 0.197%, respectively. The third part was to further assess the performance of the proposed algorithms for treating large job-size problem instances at n = 40 and 80. The parameters were designed as those in the previously part. For the performance of each ACO and SA ∗ ) × 100%, algorithm, its relative deviation percentage is defined as RDP = (HA−HA HA∗ where HA is the sum of the maximum weighted tardiness of job of the first agent and the total weighted tardiness of all the jobs of the second agent obtained from each ACO or SA. HA∗ is the solution obtained from the smallest objective function value among the three ACO and three SA algorithms. The computational results are summarized in Table 4 and Figures 6-7. As shown in Table 4, it can be seen that the maximum mean of the RPD among AC1 , AC2 , AC3 , SA1 , SA2 and SA3 is 25.128%, 27.835%, 37.993%, 30.739%, 23.737%, and 29.046%, respectively. Figure 6 indicates that ACs are better than SAs in terms of the RDP when b becomes smaller, but not absolutely dominant. Moreover, no trend can be observed in Figure 7 when the parameters τ and R were changed. Overall, it can be seen in Table 4 that the general average of the RDP among AC1 , AC2 , AC3 , SA1 , SA2 and SA3 is 8.088%,

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

601

9.521%, 9.028%, 9.617%, 8.566%, and 15.439%, respectively. It implies that the performances of both algorithms are very close except SA3 . As shown in Table 5, for the comparison of the ACOs and SAs in CPU time, ACO takes more than that of SA. Therefore, in order to improve the efficiency and quality of the solution, it is recommended to combine all the proposed heuristic algorithms. 6. Conclusions. This paper studies a single-machine two-agent scheduling problem with a linear deteriorating effect. We propose several elimination rules and a lower bound to be used in the branch-and-bound algorithm. In addition, we also propose an ant colony and simulated annealing algorithm for near-optimal solutions. The results indicate that our proposed branch-and-bound algorithm can solve the tested problem instances up to 14 within a reasonable CPU times. In addition, the results also indicate that the proposed SA∗ performs slightly better than AC ∗ , but ACO performance is more stable than that of SA. In this paper we have proposed 9 more dominance rules to be used in the branch-and-bound method, but the proposed lower bound is a bit weak which caused the branch-and-bound algorithm in solving problem instances only to 14. Therefore, the consideration of developing a powerful lower bound or more dominance rules used in the branch-and-bound algorithm or other meta-heuristics such as a genetic algorithm or tabu search approach might be an interesting issue to be explored in the future . Acknowledgments. We would like to thank to the Editor and two anonymous referees for their constructive comments on the earlier version of our paper. This paper was supported in part by the NSC of Taiwan under grant number NSC 102-2221035-057-070-MY3; in part by NSC of Taiwan under grant number NSC 102-2410H-264-003; in part by National Natural Science Foundation of China (71301022); in part by the Natural Science Foundation of Jiangxi, China (20132BAB201010); and in part by the Science Foundation of Education Committee of Jiangxi, China (GJJ13458).

602

WEN-HUNG WU ET AL.

Table 1. The results of branch-and-bound algorithms (n=12 and 14). n

b

τ

R

12

0.001

0.25

0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75

0.5

0.01

0.25

0.5

0.1

0.25

0.5

14

0.001

0.25

0.5

0.01

0.25

0.5

0.1

0.25

0.5

n=12 average n=14 average All average

Nodes mean max 2241823 5761322 2171224 5144297 1751003 7124664 1420371 4972046 1353023 7030622 909980 5328717 2012827 12097541 1161022 5289918 1742531 10111527 708367 5652542 2163189 17327270 818887 5987813 12731079 31492481 13543075 31892125 14350654 31295517 11070149 28729578 11645284 30901588 12804911 28592542 45525547 85336071 49658412 99951736 43226156 93431437 27259061 86316738 27083138 92582218 20350368 69746677 28495311 98063230 29607623 95929582 26020525 71330438 24659863 82441762 20554474 94514469 21660753 72984286 71982222 71982222 58240189 58240189 5255522 15262895 30577298 86950062 14003045 40027553

CPU mean 29.73 30.18 23.45 21.00 20.16 13.81 28.21 18.76 25.10 11.35 29.96 13.03 160.34 166.53 172.09 142.29 144.98 158.36 833.04 910.63 747.83 522.98 543.25 413.27 565.16 597.64 548.75 505.15 438.20 464.51 1693.23 1377.79 67.18 596.50 250.04

times max 66.64 62.22 75.19 68.00 79.97 74.86 145.86 71.78 121.97 76.22 207.36 79.77 333.30 339.81 333.52 305.02 321.13 300.64 1503.22 1846.61 1477.64 1547.11 1775.39 1381.27 1828.50 1686.94 1378.69 1689.73 1816.52 1620.83 1693.23 1377.79 170.18 1632.86 675.47

FS 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 24 23 24 25 30 25 25 20 19 21 23 24 1 0 0 0 1 0 30 16 23

14

0.001

12

0.5

0.25

0.5

0.25

0.5

0.25

0.5

0.25

0.5

0.25

0.5

0.25

τ

n=12 average n=14 average All average

0.1

0.01

0.001

0.1

0.01

b

n

0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75

R

AC1 mean max 4.128 48.168 6.912 44.469 8.111 136.858 5.291 20.076 7.435 47.517 7.971 52.307 2.623 41.905 5.025 32.443 3.977 80.760 4.923 42.196 3.003 19.080 2.590 17.869 0.630 16.324 0.537 15.939 0.466 13.905 0.244 7.322 0.000 0.000 0.073 2.203 7.773 62.255 10.308 48.355 11.849 76.350 5.056 25.110 4.170 30.273 6.111 34.387 3.879 39.426 5.963 31.265 9.396 51.416 5.511 67.858 2.641 38.430 3.931 39.073 0.000 0.000 0.000 0.000 3.552 35.519 6.238 44.452 4.480 38.605

Ant Colony Algorithms (MEP) AC2 AC3 mean max mean max 9.403 73.229 4.298 30.600 13.869 84.011 11.145 92.449 17.613 136.858 8.576 136.858 5.290 43.780 4.260 38.224 6.463 35.589 7.692 52.865 9.026 54.668 5.719 25.302 3.957 33.282 4.137 41.164 3.326 22.730 3.268 21.370 4.801 80.760 2.862 28.892 5.640 31.315 7.429 43.322 3.213 19.080 2.855 14.324 4.885 45.329 2.412 16.761 0.786 16.324 0.732 16.324 0.006 0.168 0.000 0.000 0.495 13.905 0.170 3.195 0.244 7.322 0.000 0.000 0.013 0.377 0.013 0.377 0.000 0.000 0.016 0.493 7.001 40.928 7.262 71.624 13.508 54.995 8.962 67.616 7.785 43.579 10.166 42.463 5.899 37.498 4.986 41.578 5.186 39.797 8.149 69.428 5.118 41.571 3.326 25.167 9.204 43.875 5.310 27.284 7.350 39.306 6.956 25.558 5.174 37.807 4.779 37.807 5.235 38.331 9.204 67.858 4.520 53.999 5.250 24.071 3.577 30.736 2.950 40.934 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 4.946 38.818 3.644 31.251 6.567 41.578 6.401 45.324 5.506 39.771 4.596 36.113 AC ∗ mean max 1.423 17.207 3.017 17.740 5.529 136.858 1.744 17.452 1.565 14.578 2.364 22.322 0.449 7.395 0.198 4.936 0.103 1.032 0.804 11.882 0.582 7.661 0.374 9.682 0.546 16.324 0.000 0.000 0.003 0.086 0.000 0.000 0.000 0.000 0.000 0.000 1.028 10.301 3.929 46.637 3.803 31.565 0.894 17.013 0.668 14.001 0.977 10.345 1.953 27.284 1.303 12.246 1.020 8.639 2.879 38.331 0.831 8.556 0.691 9.087 0.000 0.000 0.000 0.000 1.039 15.842 1.626 19.272 1.242 17.027

Simulated Annealing SA1 SA2 mean max mean max 9.353 142.063 0.098 2.076 16.697 244.631 0.013 0.207 13.122 166.029 0.328 5.099 5.769 76.376 1.602 34.475 3.671 50.308 1.275 23.015 12.364 89.388 0.759 8.830 2.409 62.634 1.020 8.455 1.946 42.427 0.549 4.926 8.627 232.614 1.673 25.594 4.386 75.188 2.490 26.433 5.031 113.447 0.513 4.725 1.426 18.857 0.325 1.851 16.680 269.838 0.843 7.759 0.138 2.939 0.330 3.236 2.991 42.737 1.128 23.594 2.688 49.594 1.401 21.422 1.268 24.461 1.187 20.119 0.307 6.781 0.563 6.931 9.475 120.078 1.175 11.117 8.210 94.357 1.884 32.784 93.429 1908.180 2.848 30.056 4.224 63.906 0.429 5.094 10.014 164.499 0.434 2.969 47.383 530.019 0.498 6.125 4.656 109.242 1.268 16.058 3.405 37.350 0.693 6.940 0.691 5.279 0.635 8.085 0.774 15.325 2.336 15.673 8.562 152.015 2.142 13.824 1.252 14.502 0.651 4.445 0.055 0.055 0.961 0.961 0.010 0.010 0.436 0.436 6.048 95.017 0.894 12.708 16.456 275.004 1.225 12.494 9.644 157.194 1.008 12.634

Algorithms (MEP) SA3 SA∗ mean max mean max 4.890 33.117 0.069 2.076 4.721 21.129 0.007 0.207 12.526 136.858 0.148 3.111 10.792 38.697 0.170 3.883 10.024 35.589 0.131 2.642 8.151 35.304 0.106 1.884 8.568 26.763 0.114 2.168 10.014 33.514 0.027 0.617 10.354 32.483 0.127 1.613 8.596 33.151 0.562 8.004 10.669 39.920 0.098 1.697 12.396 48.872 0.099 1.522 4.856 20.124 0.285 6.880 5.374 17.267 0.032 0.132 3.651 13.579 0.032 0.275 6.451 37.925 0.062 0.403 4.378 19.848 0.086 0.931 4.489 15.011 0.219 5.269 4.159 16.536 0.298 4.301 4.008 20.737 0.159 3.411 5.872 36.139 0.506 7.592 9.464 25.861 0.006 0.139 8.744 30.604 0.147 2.969 7.274 28.307 0.241 4.655 13.631 54.352 0.158 3.810 13.686 56.887 0.079 0.929 12.699 50.464 0.033 0.618 11.436 33.000 0.750 14.806 17.955 44.276 1.437 13.432 12.591 32.218 0.123 2.903 1.105 1.105 0.055 0.055 3.512 3.512 0.010 0.010 7.828 35.508 0.132 2.406 9.928 34.940 0.321 4.870 8.553 35.312 0.197 3.257

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM 603

Table 2. The performance of ACO and SA algorithms (n=12 and 14)

0.5

0.25

0.5

0.25

0.5

0.25

0.5

0.25

n=40 average n=80 average All average

0.1

0.01

0.001

0.1

0.5

Simulated SA1 mean max 13.497 164.606 9.324 144.146 11.671 132.001 6.299 90.750 3.806 16.237 17.610 208.072 12.544 158.971 6.499 43.920 7.355 61.830 3.582 38.778 3.142 33.964 7.485 47.653 5.309 139.455 3.357 20.005 5.303 90.005 7.493 164.030 2.587 66.672 1.465 31.853 9.472 27.537 10.373 24.170 10.540 22.453 7.170 18.222 8.903 18.952 7.864 19.345 19.662 69.438 15.005 62.216 17.250 79.821 14.446 91.759 21.630 84.900 30.739 176.973 5.741 113.228 15.993 115.386 2.749 29.814 3.534 42.862 4.928 69.234 11.874 133.336 7.129 91.830 12.104 66.647 9.617 79.239

annealing algorithms (RDP) SA2 SA3 mean max mean max 4.744 25.685 13.346 32.857 4.419 12.626 10.026 29.503 3.668 27.191 10.881 20.986 2.881 11.294 17.278 30.823 4.048 17.516 15.351 26.391 3.653 11.869 16.555 35.666 5.142 21.689 10.797 38.993 6.497 44.156 11.975 40.095 5.346 25.046 14.983 60.213 4.020 48.677 11.423 46.390 5.488 42.469 12.881 36.795 7.754 48.873 15.061 54.976 2.740 51.262 4.413 51.509 4.170 62.889 3.024 19.258 2.050 49.564 4.678 50.771 7.520 164.103 7.203 78.439 0.320 6.915 4.483 73.456 0.392 6.413 2.815 34.556 10.572 30.330 25.936 38.819 10.264 22.614 27.110 49.310 12.950 26.457 28.870 52.147 7.520 18.089 22.308 48.499 10.013 31.042 29.751 68.086 9.965 19.994 27.620 48.515 23.737 64.913 25.294 86.919 22.501 75.007 29.046 163.929 19.865 80.324 19.564 54.792 16.394 51.659 24.427 63.536 18.707 72.208 25.537 144.697 20.193 115.652 27.970 114.465 1.468 11.119 13.882 219.617 8.752 100.131 9.113 62.011 7.928 50.427 4.605 37.834 14.013 200.602 3.721 38.511 5.803 50.058 14.352 202.408 12.895 110.225 9.537 75.521 4.158 37.680 10.398 42.315 12.974 62.825 20.480 87.201 8.566 50.252 15.439 64.758

12 14

0.25

0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75 0.25 0.5 0.75

Ant colony algorithms (RDP) AC1 AC2 AC3 mean max mean max mean max 2.724 17.632 1.169 8.216 4.096 21.400 3.303 21.553 3.673 18.763 2.984 24.719 5.248 87.835 2.907 21.211 2.732 20.112 4.921 34.160 3.675 12.684 4.624 36.679 4.052 17.519 4.891 31.670 2.790 17.519 4.318 41.890 4.558 23.617 1.917 16.726 7.259 48.079 9.159 75.808 15.837 145.950 7.218 138.906 11.899 102.598 12.424 138.906 19.318 187.659 18.034 187.659 18.206 146.076 11.765 118.520 5.835 34.693 7.717 64.755 18.469 138.474 15.031 175.462 6.557 34.940 18.103 98.278 16.174 93.735 13.316 73.717 0.233 4.577 4.369 70.000 4.069 70.000 1.464 12.346 2.805 20.202 2.352 18.497 19.608 480.000 22.656 600.000 21.067 480.000 4.200 74.989 18.073 207.317 7.753 88.250 8.368 109.897 9.303 109.897 31.954 589.995 11.682 260.000 9.882 260.000 0.387 3.807 3.454 12.899 3.600 47.980 3.367 33.353 4.058 32.786 2.234 23.894 1.704 8.471 2.066 18.163 2.805 11.197 2.658 19.585 3.485 17.811 2.971 26.282 1.897 14.252 1.446 16.433 2.152 22.939 2.338 12.204 2.140 7.567 2.111 19.862 2.550 14.829 16.872 174.879 9.981 130.429 10.961 101.999 7.822 61.280 8.822 79.503 8.988 51.515 6.545 45.779 16.078 154.491 3.532 41.450 6.213 81.364 7.497 65.333 6.773 65.333 6.093 52.238 6.684 49.586 18.913 325.949 10.596 105.777 27.835 183.163 10.828 62.252 19.296 400.000 19.442 400.000 20.181 213.239 10.620 133.333 13.201 137.500 9.051 100.000 2.771 22.706 8.652 193.388 15.410 200.000 5.115 44.444 13.622 124.176 3.841 79.488 25.128 314.433 12.591 314.433 3.260 38.008 5.186 100.000 18.406 250.000 37.993 593.477 8.458 105.129 9.116 114.085 8.932 110.669 7.717 91.216 9.927 124.120 9.125 109.745 8.088 98.172 9.521 119.102 9.028 110.207

n

0.5

0.25

R

12 14

AC1 mean max 0.0841 0.0953 0.1148 0.1300

80

0.001

40

τ

n

0.01

b

n

604 WEN-HUNG WU ET AL.

Table 3. The CPU times of ACO and SA algorithms (n=12 and 14). Ant colony algorithms (CPU times) AC2 AC3 AC ∗ mean max mean max mean max 0.0845 0.0936 0.0840 0.0945 0.2526 0.2808 0.1151 0.1274 0.1145 0.1274 0.3444 0.3744

Simulated annealing algorithms (CPU times) SA1 SA2 SA3 SA∗ mean max mean max mean max mean max 0.0036 0.0156 0.0031 0.0156 0.0031 0.0156 0.0099 0.0329 0.0046 0.0156 0.0042 0.0165 0.0042 0.0156 0.0129 0.0381

Table 4. The results of ACO and SA algorithms (n=40 and 80).

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

Table 5. The CPU times of ACO and SA algorithms (n=40 and 80).

n 40 80 n 40 80

Ant colony algorithms (CPU times) AC1 AC2 AC3 mean max mean max mean max 0.9919 1.0478 0.9919 1.0478 0.9910 1.0495 5.3689 7.5600 5.3508 7.6146 5.3765 7.6076 Simulated annealing algorithms SA1 SA2 mean max mean max 0.0304 0.0355 0.0301 0.0355 0.1181 0.1317 0.1185 0.1326

(CPU times) SA3 mean max 0.0297 0.0338 0.1189 0.1309

Figure 1. The performances of branch-and-bound algorithm when changing b (n=12).

605

606

WEN-HUNG WU ET AL.

Figure 2. The performances of branch-and-bound algorithm when changing b (n=14).

Figure 3. The performances of Feasible solutions solved out (n=14).

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

Figure 4. The performances of ACOs and SAs when changing b (n=12 and 14).

Figure 5. The performances of ACOs and SAs (n=12 and 14).

607

608

WEN-HUNG WU ET AL.

Figure 6. The behaviors of ACOs and SAs over changing b (n=40 and 80).

Figure 7. The behaviors of ACOs and SAs for the large-size jobs (n=40 and 80). REFERENCES [1] A. Agnetis, P. B. Mirchandani, D. Pacciarelli and A. Pacifici, Scheduling problems with two competing agents, Operations Research, 52 (2004), 229–242.

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

609

[2] A. Agnetis, D. Pacciarelli and A. Pacifici, Multi-agent single machine scheduling, Annals of Operations Research, 150 (2007), 3–15. [3] B. Alidaee and N. K. Womer, Scheduling with time dependent processing times: Review and extensions, Journal of the Operational Research Society, 50 (1999), 711–729. [4] A. Allahverdi and F. S. Al-Anzi, Using two-machine flowshop with maximum lateness objective to model multimedia data objects scheduling problem for WWW applications, Computers and Operations Research, 29 (2002), 971–994. [5] A. Bachman and A. Janiak, Scheduling Jobs with Special Type of Start Time Dependent Processing Times, Report No 34/97, Institute of Engineering Cybernetics, Wroclaw University of Technology, 1997. [6] K. R. Baker and J. C. Smith, A multiple-criterion model for machine scheduling, Journal of Scheduling, 6 (2003), 7–16. [7] D. Ben-Arieh and O. Maimon, Annealing method for PCB assembly scheduling on two sequential machines, International Journal of Computer Integrated Manufacturing, 5 (1992), 361–367. [8] S. Browne and U. Yechiali, Scheduling deteriorating jobs on a single processor , Operations Research, 38 (1990), 495–498. [9] S. R. Cheng, A single-machine two-agent scheduling problem by GA approach, Asia-Pacific Journal of Operational Research, 29 (2012), 1250013, 22 pp. [10] T. C. E. Cheng, Q. Ding and B. M. T. Lin, A concise survey of scheduling with time-dependent processing times, European Journal of Operational Research, 152 (2004), 1–13. [11] T. C. E. Cheng, C. T. Ng and J. J. Yuan, Multi-agent scheduling on a single machine to minimize total weighted number of tardy jobs, Theoretical Computer Science, 362 (2006), 273–281. [12] T. C. E. Cheng, C. T. Ng and J. J. Yuan, Multi-agent scheduling on a single machine with max-form criteria, European Journal of Operational Research, 188 (2008), 603–609. [13] T. C. E. Cheng, S. R. Cheng, W. H. Wu, P. H. Hsu and C. C. Wu, A two-agent singlemachine scheduling problem with truncated sum-of-processing-times-based learning considerations, Computers & Industrial Engineering, 60 (2011), 534–541. [14] T. C. E. Cheng, W. H. Wu, S. R. Cheng and C. C. Wu, Two-agent scheduling with positionbased deteriorating jobs and learning effects, Applied Mathematics and Computation, 217 (2011), 8804–8824. [15] T. C. E. Cheng, Y. H. Chung, S. C. Liao and W. C Lee, Two-agent singe-machine scheduling with release times to minimize the total weighted completion time, Computers & Operations Research, 40 (2013), 353–361. [16] C. Chu, A branch-and-bound algorithm to minimize total tardiness with different release dates, Naval Research Logistics, 39 (1992), 859–875. [17] A. Colorni, M. Dorigo, M. Maniezzo, I. F. J. Varela and P. Bourgine, Distributed Optimization by Ant Colonies, Proceedings of the first European Conference on Artificial Life, Pairs, 1991. [18] A. Colorni, M. Dorigo, V. Maniezzo and M. Trubian, Ant system for job-shop scheduling, Belgian Journal of Operations Research, 34 (1994), 39–53. [19] M. Dorigo, Di Caro G and L. M. Gambardella, Ant algorithms for discrete optimization, Artificial Life, 5 (1999), 137–172. [20] M. Dorigo and L. M. Gambardella, Ant colony system: A cooperative learning approach to travel salesman problem, IEEE Trans Evol Computing, 1 (1997), 53–66. [21] M. L. Fisher, A dual algorithm for the one-machine scheduling problem, Math Programming, 11 (1976/77), 229–251. [22] R. L. Graham, E. L. Lawler, J. K. Lenstra and A. H. G. Rinnooy Kan, Optimization and heuristic in deterministic sequencing and scheduling: A survey, Annals of Discrete Mathematics, 5 (1979), 287–326. [23] A. Janiak, T. Krysiak and R. Trela, Scheduling problems with learning and aging effects: A survey, Decision Making in Manufacturing and Services, 5 (2011), 19–36. [24] S. Kirkpatrick, C. Gelatt and M. Vecchi, Optimization by simulated annealing, Science, 220 (1983), 671–680. [25] A. S. Kunnathur and S. K. Gupta, Minimizing the makespan with late start penalties added to processing times in a single facility scheduling problem, European Journal of Operation Research, 47 (1990), 56–64.

610

WEN-HUNG WU ET AL.

[26] K. Lee, B. C. Choi, J. Y. T. Leung and M. L. Pinedo, Approximation algorithms for multiagent scheduling to minimize total weighted completion time, Information Processing Letters, 109 (2009), 913–917. [27] J. Lenstra, A. H. G. Rinnooy Kan and P. Brucker, Complexity of Machine Scheduling Problems, Annals of Discrete Mathematics, 1 (1977), 343–362. [28] M. Lai and X. Tong, A metaheuristic method for vehicle routing problem based on improved ant colony optimization and Tabu search, Journal of Industrial and Management Optimization, 8 (2012), 469–484. [29] P. Liu and L. Tang, Two-agent scheduling with linear deteriorating jobs on a single machine, Lecture Notes in Computer Science, 5092 (2008), 642–650. [30] P. Liu, X. Y. Zhou and L. X. Tang, Two-agent single-machine scheduling with positiondependent processing times, International Journal of Advanced Manufacturing Technology, 48 (2010), 325–331. [31] D. C. Li and P. H. Hsu, Solving a two-agent single-machine scheduling problem considering learning effect, Computers & Operations Research, 39 (2012), 1644–1651. [32] W. Luo, L. Chen and G. Zhang, Approximation schemes for two-machine flow shop scheduling with two agents, Journal of Combinatorial Optimization, 24 (2012), 229–239. [33] W. Luo and L. Chen, Approximation schemes for scheduling a maintenance and linear deteriorating jobs, Journal of Industrial and Management Optimization, 8 (2012), 271–283. [34] E. Mokotoff, Algorithms for bicriteria minimization in the permutation flow shop scheduling problem, Journal of Industrial and Management Optimization, 7 (2011), 253–282. [35] G. Mosheiov, V -shaped policies for scheduling deteriorating jobs, Operations Research, 39 (1991), 979–991. [36] G. Mosheiov, Scheduling jobs under simple linear deterioration, Computers & Operations Research, 21 (1994), 653–659. [37] B. Mor and G. Mosheiov, Scheduling problems with two competing agents to minimize minmax and minsum earliness measures, European Journal of Operational Research, 206 (2010), 540–546. [38] C. T. Ng, T. C. E. Cheng and J. J. Yuan, A note on the complexity of the problem of twoagent scheduling on a single machine, Journal of Combinatorial Optimization, 12 (2006), 387–394. [39] Q. Q. Nong, T. C. E. Cheng and C. T. Ng, Two-agent scheduling to minimize the total cost, European Journal of Operational Research, 215 (2011), 39–44. [40] J. B. Wang and T. C. E. Cheng, Scheduling problems with the effects of deterioration and learning, Asia-Pacific Journal of Operational Research, 24 (2007), 245–261. [41] J. B. Wang and Q. Guo, A due-date assignment problem with learning effect and deteriorating jobs, Applied Mathematical Modelling, 34 (2010), 309–313. [42] J. B. Wang, L. H. Sun and L. Y. Sun, Single-machine total completion time scheduling with a time-dependent deterioration, Applied Mathematical Modelling, 35 (2011), 1506–1511. [43] G. Wan, R. S. Vakati, J. Y. T. Leung and M. Pinedo, Scheduling two agents with controllable processing times, European Journal of Operational Research, 205 (2010), 528–539. [44] W. H. Wu, S. R. Cheng, C. C. Wu and Y. Yin, Ant colony algorithms for a two-agent scheduling with sum-of processing times-based learning and deteriorating considerations, Journal of Intelligent Manufacturing, 23 (2012), 1985–1993. [45] C. C. Wu, S. K. Huang and W. C. Lee, Two-agent scheduling with learning consideration, Computers & Industrial Engineering, 61 (2011), 1324–1335. [46] D. L. Yang and W. H. Kuo, Single-machine scheduling with both deterioration and learning effects, Annals of Operations Research, 172 (2009), 315–327. [47] D. L. Yang and W. H. Kuo, Scheduling with deteriorating jobs and learning effects, Applied Mathematics and Computation, 218 (2011), 2069–2073. [48] S. H. Yang and J. B. Wang, Minimizing total weighted completion time in a two-machine flow shop scheduling under simple linear deterioration, Applied Mathematics and Computation, 217 (2011), 4819–4826. [49] S. H. Yang and D. L. Yang, Minimizing the total completion time in single-machine scheduling with aging/deteriorating effects and deteriorating maintenance activities, Computers and Mathematics with Applications, 60 (2010), 2161–2169. [50] Y. Yin and D. Xu, Some single-machine scheduling problems with general effects of learning and deterioration, Computers and Mathematics with Applications, 61 (2011), 100–108.

A TIME-DEPENDENT TWO AGENTS SCHEDULING PROBLEM

611

[51] Y. Yin, S. R. Cheng and C. C. Wu, Scheduling problems with two agents and a linear nonincreasing deterioration to minimize earliness penalties, Information Sciences, 189 (2012), 282–292. [52] Y. Yin, S. R. Cheng, T. C. E. Cheng, W. H. Wu and C. C. Wu, Two-agent single-machine scheduling with release times and deadlines, International Journal of Shipping and Transport Logistics, 5 (2013), 75–94. [53] Y. Yin, T. C. E. Cheng, J. Xu, S. R. Cheng and C. C. Wu, Single-machine scheduling with past-sequence-dependent delivery times and a linear deterioration, Journal of Industrial and Management Optimization, 9 (2013), 323–339. [54] C. L. Zhao, Q. L. Zhang and H. Y. Tang, Scheduling problems under linear deterioration, Acta Automatica Sinica, 29 (2003), 531–535.

Received September 2012; 1st revision April 2013; 2nd revision April 2013. E-mail E-mail E-mail E-mail E-mail

address: address: address: address: address:

[email protected] [email protected] wenhsiang [email protected] [email protected] [email protected]