• 검색 결과가 없습니다.

Parallel Machine Scheduling with Identical Jobs and Sequence-Independent Setup Times

N/A
N/A
Protected

Academic year: 2021

Share "Parallel Machine Scheduling with Identical Jobs and Sequence-Independent Setup Times"

Copied!
9
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

논문접수일:2014년 06월 20일 논문게재확정일:2014년 08월 06일 논문수정일(1차:2014년 08월 05일)

* This study was financially supported by the research fund of Chungnam National University in 2014.

†교신저자 [email protected]

순서 독립적인 셋업타임을 가진 동일작업의 병렬기계 배치스케줄링*

최병천1․박명주2†

1충남대학교 경영학부, 2경희대학교 산업경영공학과

Parallel Machine Scheduling with Identical Jobs and Sequence-Independent Setup Times

Byung-Cheon Choi1․Myoung-Ju Park2

1Department of Business Administration, Chungnam National University

2Department of Industrial and Management Systems Engineering, Kyung Hee University

Abstract

We consider the problem of scheduling identical jobs with sequence-independent setup times on parallel machines.

The objective is to minimize total completion times. We present the pseudopolynomial-time algorithm for the case with a fixed number of machines and an efficient approximation algorithm for our problem with identical setup times, which is known to be NP-hard even for the two-machine case.

Keywords:Batch Scheduling, Setup Times, Parallel Machine

1. Problem Definition

Batch scheduling problems with setup times have been studied extensively [2, 3]. In this pa- per, we consider a particular batch scheduling

problem that can be stated as follows. Suppose we have a set of jobs to be scheduled on parallel machines, where each job belongs to some batch. Batch scheduling problems are cha- racterized by a setup time that is only required

(2)

between jobs from different batches. Each batch g has its own set of jobs,   ⋯



,     ⋯  Note that   ∑   . Let 

be the processing time of ,     ⋯ ,  

  ⋯ . In our problem, the processing time of each job is identical, that is,  ,     ⋯,

,     ⋯ . Let = (, , …, ) be the schedule such that is the subsequence of jobs assigned to machine ,     ⋯ . Let  be the -th job in  ,     ⋯ . Let  be the completion time of  in . Let be the setup time required to process a job in batch g follow- ing a job in a different batch. Note that if a job follows a member of the same batch, then a setup time is not required. The objective is to find a schedule to minimize total completion times,

  ∑      . Let this problem be re- ferred to as Problem P.

Cheng and Chen [5] showed that Problem P is NP-hard even for the two-machine case with unit length jobs, that is,  . Webster [7]

showed that Problem P is unary NP-hard even for the case in which each job of the same batch has the same processing time, that is,  . Liu et al. [6] considered the two-machine case of Problem P and presented a pseudopolyno- mial-time algorithm for the case with unit length jobs and an NP-hardness proof for the case with unit length jobs and identical setup times, that is,  . Webster and Azzioglu [8] presented two dynamic programming algorithms for Problem P with arbitrary processing times whose objective is to minimize the total weighted flow time. In this paper, we present a pseudopolynomial-time algorithm with better complexity than that in [8]

for Problem P with a fixed number of machines and an efficient approximation algorithm for Problem P with identical setup times.

2. Problem P

In this section, we introduce an optimality con- dition and present a pseudopolynomial-time al- gorithm for Problem P with a fixed number of machines.

2.1 Optimality Condition

In this subsection, we present an optimality condition that is used later to develop a pseudo- polynomial-time algorithm.

First, we introduce some terminology and the known result. Let batch g be referred to as a split batch if it has at least two setups and let the schedule with no split batches be referred to as a group technology (GT) schedule. Note that in the GT schedule, each batch has exactly one setup. Consider a schedule = (, , …, ) such that for     ⋯ :

• Let be the number of batches allocated to ;

• Let   ⋯  be the sequence of the batches allocated to ;

• Let     ⋯, where 

is the set of jobs in batch  in .

Proposition 1 [4] There exists an optimal sche- dule for the single-machine case of Problem P such that is a GT schedule and

 

 

≤  

 

≤ ⋯ ≤ 





,

where  is the cardinality of  . Note that since this is single-machine case, for simplicity, the subscripts of are deleted.

(3)

Following [4], henceforth, we consider only a schedule with no split job on each machine such that, for     ⋯ 

 

 

≤  

 

≤ ⋯ ≤ 





, (1)

where  is the cardinality of . Note that Proposition 1 does not imply that an optimal schedule is a GT schedule. Then,  can be ex- pressed as

   

  

   



 

  

  

   



(2)

It is observed from equation (2) that if the total number of jobs allocated to each machine is fixed,  is determined by the combination of the number of jobs processed after each setup time.

Lemma 1 Let   be the bipartite graph corresponding to a feasible schedule defined as follows :

  ⋯  is the set of machines and  

⋯  is the set of batches;

∈ if some job of batch is processed on machine v in .

Then, Problem P has an optimal schedule with no cycle in .

Proof Suppose that an optimal schedule has a cycle in . Without loss of generality, the cycle can be represented as

       ⋯     ,

where ∈ and ,    ⋯ . Let  be the set of jobs in  allocated to   

  ⋯ . For consistency of notation, let  . Let be a schedule identical to except that the last job in  is moved immediately after the last job in   ,     ⋯ . Let be a schedule identical to except that the last job in    is moved immediately after the last job in      ⋯ . Note that, for simplicity, let

   . Then, we can show that  ≤ . To do so, we introduce the following additional notation :

•Let be the set of batches between batches

   and in ,     ⋯ , respectively;

•Under , let  and  be the number of jobs after the last job in  and ,   

 ⋯ , respectively;

•For     ⋯ , let



 



 

      →   



        → 



and





 



 

         → 





       →   



where   →  means that batch    is proc- essed before batch . For     ⋯ ,

    → 

  →   

(4)

Then,

     and     , where

  

  ∈

 

    ∈

 



and

  

  ∈

 

    ∈

 



Since is an optimal schedule, the following inequalities should be satisfied :

≥  and ≥ . (3) Let   ∑  

  ∑∈ 

     ∑∈

. Then, by inequalities (3) and the defini- tions of  and ,

 ≤  

≤ ≤  

≤ 

Since   ,

     

≤ 

By repeatedly applying the argument used for , we can construct a new schedule such that

 ≤  and does not contain C. The proof is complete. ■

2.2 Pseudopolynomial-time Algorithm

In this subsection, we develop a pseudopoly- nomial-time algorithm for Problem P with a fixed

number of machines. First, we consider the pro- blem of finding an optimal schedule among GT schedules. Let this problem be referred to as Problem PGT.

Lemma 2 Problem PGT can be solved in time

.

Proof For simplicity, let the batches be indexed in non-decreasing order of

, that is,

≤ 

≤ ⋯ ≤ 

.

When jobs are processed on machine while the schedule is being constructed, let batch be pro- cessed before the first job on machine . Then, it is observed that

• The completion time of job  is  ;

• The total completion time of jobs in batch is  

 

• The total completion time of jobs after batch

is increased by  .

Based on these observations, we reduce Problem PGT into the shortest path problem in an acyclic graph. Let    ⋯  be the node that rep- resents the following :

• The machines on which the batches in   

⋯  are processed have been determined;

is the number of jobs allocated to machine ,

    ⋯ .

Let s :=  

 

  

 ⋯  and be the source and sink nodes, respectively. For    ⋯  and   

(5)

⋯  let     ⋯  be connected to 

 ⋯  with weight 

   

, if    and ′ ′ for each ′∈ 

⋯ ╲. This edge denotes that batch is processed before the first job on machine . Let

   ⋯  be connected to with weight 0.

It is clear that the    shortest path of the re- duced graph represents an optimal schedule for Problem PGT. Since the reduced graph is acyclic and the number of edges is , the    shortest path can be found in  by the al- gorithm in [1]. The proof is complete. ■

It is observed from Lemma 1 that, in Problem P, there exists an optimal schedule with at most

   split batches, each of which can be proce- ssed on at most machines. Let   ⋯   

be the combination such that      ⋯  

is the vector of sub-batches of batch . Let  

be the number of the jobs in sub-batch allo- cated to machine . Note that   can become zero for some . This implies that no jobs in batch

are allocated to machine . For each combina- tion (  ⋯ ), we can construct Problem PGT, where sub-batches are regarded as different bat- ches. Note that if ≠′, then sub-batches  and

′ are regarded as different batches in the Problem PGT. Let ′ be the number of batches in Problem PGT. Then, by Lemma 1,

′ ≤     ≤ . (4)

It is observed that the optimal schedule of Problem IP is identical to the schedule with the minimum total completion times among the opti- mal schedules of each combination. Based on this observation, we can construct the following al- gorithm.

Algorithm ALG

Step 1 For each combination   ⋯   , construct the corresponding Problem PGT.

Step 2 For each Problem PGT, obtain an optimal schedule by using the approach in Lem- ma 2.

Step 3 Select the schedule with the minimum to- tal completion time.

Note that since the number of combinations 

 ⋯    is

  

   and the number of combinations    ⋯   is 

   for each batch      ⋯  , the total number of combinations can be calculated as follows :

      

            

Furthermore, by Lemma 2 and inequality (4), each Problem PGT can be solved in ′. Thus, Algorithm ALG terminates in     

     

Theorem 1 Problem P can be solved in pseudo- polynomial-time when the number of machines is fixed.

Proof To encode Problem P, we just need the setup time of each batch, the number of jobs be- longing to each batch and the processing time.

Thus, the order of the input size is    

      where    ⋯  and

    ⋯ . The complexity of Algori- thm ALG is pseudopolynomial when the number of machines is fixed. ■

(6)

Remark 1 When we apply dynamic program- ming algorithms [8] for Problem P, their com- plexities are          and     

, respectively, where   and

   . Since they are pseudopolynomial-times only if the numbers of machines and batches are fixed, Algorithm ALG is more efficient.

3. Problem P with Identical Setup Times

In this section, we consider Problem P with identical setup times, that is,  ,     ⋯ . Since Problem P is NP-hard even for the two- machine case with identical setup times and unit processing times [6], we propose an approx- imation algorithm for Problem P with identical setup times. Without loss of generality, assume that the batches are indexed in non-increasing order of , that is,

≥ ≥ ⋯ ≥ 

Since the setup times are identical, equation (2) can be rewritten as

    

  

  

    

 ,

where ∑    Since  

      

 ∑      , however,  can be rewritten as

    

  

    

  (5)

Note that the objective function (5) consists of two parts. Let

    

  

 and     

 

To develop an approximation algorithm, we introduce additional notation. Let and be the quotient and remainder, respectively, when is divided by , that is,      Consider a GT schedule    ⋯  as follows :

   ⋯       ⋯ 

   ⋯            ⋯  (6) Let and be the quotient and remainder, re- spectively, when is divided by , that is,  

  . Let

       ⋯ 

         ⋯ 

We present an approximation algorithm for Pro- blem P with identical setup times. The under- lying idea is to modify into a schedule such that the number of jobs processed on machine

is exactly      ⋯ 

Algorithm APP

Step 1 Sort the batches by the decreasing order of the number of jobs and let  ∅. Step 2 Construct a schedule    ⋯ , de-

fined in (6).

•Let  be the number of jobs on machine in

     ⋯ .

•Let  be the index such that     ⋯

 and        ⋯ .

Step 3 For     ⋯ , move the first 

jobs from into and sort the jobs by

(7)

increasing batch index.

Step 4 For        ⋯ , sequence the first   jobs from before the first job in .

Step 5 Output a new schedule.

Note that since sorting batches in Step 1 and Steps 2~4 requires    and   times, respec- tively, Algorithm APP terminates in    

time.

Lemma 3  ≤ 

Proof Consider two cases.

 is a GT schedule

Suppose that ≠. Let    be the smallest index in such that batch    is not processed on machine . Without loss of generality, assume that batch    is processed on machine ′ in . Note that ′ ≠. It is observed from relation (1) that batch    is processed at the   -th po- sition or later on machine ′ in . Let batch be the   -th batch on machine in . We can make a new schedule by exchanging the posi- tions of batches    and . Since   ≥ , it is observed that  ≤ . By repeatedly ap- plying the argument above, we can attain a schedule and thus  ≤ .

 is not a GT schedule

Suppose batch is processed on machines and ′ in . Let batch be the -th and ′-th batches in and , respectively. Without loss of generality, assume that ≥ ′. Then, we con- struct a new schedule by moving all the jobs of batch on machine immediately after batch g on machine ′. Then,

     ′   

 

 ≤ .

By repeatedly applying the argument above, we can attain a GT schedule and thus  ≤

 ≤ by case .

By cases  and , the proof is complete. ■

Theorem 2 Let be the schedule obtained by Algorithm APP. Then,



 ≤       

  

Proof For in  ∈     ⋯ , let  ⋯

 be the subsequence of the batches moved to machine by Step 4 of Algorithm APP.

Claim        ≤   

Proof It is observed from the construction of that ≥ ≥ ⋯ ≥  and

≥ ≥      ⋯ . (7)

Inequality (7) implies the following :

•Since the first jobs of belong to batch

,     ⋯ , the set of batches in after Step 3 is   ⋯ ;

•Since batch 1 is always sequenced at the first position, it does not belong to  ⋯ 

for     ⋯ .

Furthermore, it is observed from the way to se- quence jobs in Step 4 that if ≠′, then 

⋯  and ′ ⋯ ′′ are disjoint. By

(8)

the implications above and this observation,

  

  

  

    

 ⋯ 

 

    

 ⋯  ≤  

The proof is complete. □

By Claim,

  

  

 

    

   

≤      

(8)

We, henceforth, introduce four relations to derive the bound.

 When is transformed into by Algorithm APP,  is increased by at most ∑     . Thus, by inequality (8),

   ≤ 

    

 

  

  

    

 

≤ 

  

  

  

  ≤    . (9)

 By Lemma 3,  ≥

     and the way to construct ,

      ≥   

  

 

   

(10)

 Since   

   ≥ ∑    ,

  

  

  ≥   

 

 

  

(11)

 Let ′ be the number of batches allocated to

and let ′′ ′ ⋯ ′′ be the sequence of batches allocated to ,    

⋯ . Then,

    

  

′ ′ ≥   

  

′ ′  . (12)

Then, by inequalities (9)~(12),



 ≤   

   

  

 

     



  

≤   

  

  

 

  

       

  

The proof is complete. ■

References

[1] Ahuja, R.A., K. Mehlhorn, and J.B. Orlin,

“Faster algorithm for the shortest path pro- blem,” Journal of the Association for Com- puting Machinery, Vol.37(1990), pp.213-223.

[2] Allahverdi, A., J.N.D. Gupta, and T. Aldowaisan,

“A review of scheduling research involving setup considerations,” Omega, Vol.27(1999), pp.219-239.

[3] Allahverdi, A., C.T. Ng, T.C.E. Cheng, and M.Y. Kovalyov, “A survey of scheduling pro- blems with setup times or costs,” European Journal of Operational Research, Vol.187(2008), pp.985-1032.

[4] Baker, K.R. and D. Trietsch, Principles of Scheduling and Sequencing, John Wiley and

(9)

Sons, Inc, 2009.

[5] Cheng, T.C.E. and Z.L. Chen, “Parallel ma- chine scheduling with batch setup times,”

Operations Research, Vol.42(1994), pp.1171- 1174.

[6] Liu, Z., W. Yu, and T.C.E. Cheng, “Scheduling groups of unit length jobs on two identical parallel machines,” Information Processing Letters, Vol.69(1999), pp.275-281.

[7] Webster, S.T., “The complexity of scheduling job families about a common due date,” Ope- rations Research Letters, Vol.20(1997), pp.

65-74.

[8] Webster, S.T. and M. Azzioglu, “Dynamic pro- gramming algorithms for scheduling parallel machines with family setup times,” Compu- ters and Operations Research, Vol.28(2001), pp.127-137.

참조

관련 문서

introspective personality and an impulse personality, for a ego problem smoking and drinking, for a internet problem internet addiction, for a sex problem

- 각종 지능정보기술은 그 자체로 의미가 있는 것이 아니라, 교육에 대한 방향성과 기술에 대한 이해를 바탕으로 학습자 요구와 수업 맥락 등 학습 환경에 맞게

On the basis of the detailed professional studies on the topic of reconciliation for all times and places, I will vision the unified Korea in peace with

An efficient algorithm for mining association rules in large databases. An effective hash-based algorithm for

generalized least square algorithm using variograms as weighting functions. With the least square algorithm, the estimate becomes unbiased and its variance becomes

Common Techniques for Reducing Common Techniques for Reducing Setup Time (cont.).

 Part E: Numerical methods provide the transition from the mathematical model to an algorithm, which is a detailed stepwise recipe for solving a problem of the indicated kind

◼ Therefore, a 1-approximation algorithm produces an optimal solution, and an approximation algorithm with a large approximation ratio may return a solution that is much