Transcript
Page 1: Multicyclic hoist scheduling with constant processing times

IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 18, NO. 1, FEBRUARY 2002 69

Multicyclic Hoist Scheduling With ConstantProcessing Times

Ada Che, Chengbin Chu, Member, IEEE, and Feng Chu

Abstract—This paper proposes an exact algorithm for the mul-ticyclic schedules of hoist moves in a printed circuit board (PCB)electroplating facility, where exactly ( 1) parts enter and

parts leave the production line during each cycle, and the pro-cessing time at each production stage is a given constant. The mul-ticyclic scheduling problem is transformed into enumeration of in-tervals for linear functions of decision variables. This enumerationis accomplished with a branch and bound procedure. At each nodeof the search tree, by solving a linear programming problem (LPP),either the corresponding partial solution is proved to be unable tolead to a feasible solution, or a lower bound is computed. Due to itsparticular structure, this LPP is equivalent to a cycle time evalu-ation problem in a bivalued graph which can be solved efficiently.The proposed algorithm is polynomial in the number of tanks fora fixed , but exponential if is arbitrary. Computational experi-ence with both benchmark and randomly generated test instancesis presented.

Index Terms—Algorithms, production systems, scheduling.

I. INTRODUCTION

T HIS PAPER addresses cyclic scheduling problem in ano-wait production system involving material handling

facilities such as hoists or robots which are widely used inindustrial processes for material handling. In such systems,the hoist or robot is in charge of transporting parts from onemachine to another for the next operation. The productivityof these systems largely depends on the schedule of the robotactivities, especially when the intermediate storage area islimited in order to limit the work-in-process. Due to theimportance of the problem, the number of articles addressingproduction systems involving robots or hoists has increasedrapidly in recent years [1]–[6], [8]–[19] both in cyclic [1]–[3],[5], [8]–[19]) and noncyclic environments [4], [6].

The model considered in this paper is particularly relevant inprinted circuit board (PCB) electroplating processes and othergalvanization processes with a hoist for material handling. Sucha production line is composed of a sequence of chemical tanks.Each tank contains chemicals required for a specific electro-plating step in the processing of parts, such as acid cleaning,acid activating, copper plating, rinsing, etc. During the process,a part must be successively soaked in each chemical tank for a

Manuscript received March 19, 2000; revised November 20, 2000 and May23, 2000. This paper was receommended for publication by Associate EditorR. Kumar and Editor N. Viswanadham upon evaluation of the reviewers’ com-ments. This work was supported by the French–Israeli co-operation grant “Fac-tory of the Future.”

The authors are with the Laboratoire d’optimization des systèmes industriels(LOSI), Université de Technologie de Troyes, BP 2060, 10010 Troyes Cedex,France (e-mail: [email protected]; [email protected]; [email protected]).

Publisher Item Identifier S 1042-296X(02)01778-0.

specified period of time. This problem is commonly known ashoist scheduling problem [1], [3], [10]–[15], [17]–[19]. Whenthe time that parts can stay on machines is not limited, the sys-tems are called robotic cells [2], [5], [8], [9], [16].

This paper considers a cyclic production environment.A cyclic production system periodically repeats the samestate. The length of the period is calledcycle time. The cycletime measures the throughput rate of a production system.Therefore, the criterion considered in this paper is cycle timeminimization which is equivalent to maximizing the throughputrate, as in almost all works addressing cyclic schedules. Cyclicproduction is very important for its simplicity of implemen-tation and ease of management. It is particularly relevant inmass production, such as PCB electroplating and many othergalvanization processes. In such a system, production linesare specially configured for a quite long period to producevery few specific types of parts with very large lot size andtherefore can be approximated by cyclic production model.This explains why cyclic production environment has receivedvery much attention from researchers and practitioners [1]–[3],[5], [7]–[19].

Cyclic schedules can be distinguished between simplecycle schedules and multicyclic schedules. In a general cyclicschedule, parts of type 1, parts of type 2, etc. areintroduced into the system every period (cycle). Ifis thelargest common divider of these’s, this schedule is called-cyclic schedule or -degree cyclic schedule. In simple cycle

schedules, . In this paper, we consider a single part typemulticyclic schedule. In such a schedule,identical parts areintroduced during each cycle, that is,parts are introduced inand removed from each tank during a cycle. Themean cycletimeof an -cyclic schedule is defined as the whole cycle timedivided by . The throughput rate is the inverse of the meancycle time. As far as hoist scheduling is concerned, manyresearchers have studied simple cycle schedules [3], [10], [14],[15], [17], [19]; i.e., 1-cyclic schedules. In practice, however,simple cycle schedules are not necessarily optimal. In general,-cyclic schedules would have larger throughput. Lei and Wang

[13], Songet al. [18] have noticed that a 2-cyclic schedulemay be better than the optimal simple cycle schedule. Ourexperiments have also confirmed this fact. Little research workhas been done on multicyclic scheduling problems.

Due to the characteristics of chemical process in PCB elec-troplating or galvanization considered in this paper, we addressthe no-wait environment where as soon as the operation of apart is completed in a tank, it must be immediately removedfrom that tank and transported to the next one. In the litera-ture, some works [3], [13]–[15], [17], [19] deal with models

1042–296X/02$17.00 © 2002 IEEE

Page 2: Multicyclic hoist scheduling with constant processing times

70 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 18, NO. 1, FEBRUARY 2002

where the soak time of parts in each tank must fall into a timewindow. Models where the time that parts can stay on machinesis not bounded from above are relevant for mechanical man-ufacturing systems [2], [5], [8], [9], [16]. These models andtime-window models are less constrained than the one consid-ered in this paper, and therefore they can lead to better pro-ductivity with an optimal solution. The model considered inthis paper is also relevant in practice for three reasons. Firstof all, with no-wait model, the nominal soak times are strictlyrespected. Secondly, with no-wait model, all the finished partsare identical which is not true in multicyclic scheduling withtime window constraints since in this latter case some partsmay be soaked longer in some tanks and some others may besoaked longer in some other tanks. This nonuniformity betweenparts, although they are all of required quality, may cause esthet-ical problems especially in surface treatment processes. Thirdly,when time window is allowed, the problem has been proved tobe NP-hard, even with simple cycle assumption ([12]), while itsno-wait counterpart can be solved in polynomial time as shownin this paper. This makes the flexibility less attractive, particu-larly when optimal multicyclic schedules can be easily obtainedin polynomial time and significantly improves the productivitywith respect to simple cycle schedules. Therefore, no-wait en-vironment is a good approximation especially when the timewindows are narrow.

For hoist scheduling problem, Lei and Wang [13] presenteda branch-and-bound algorithm for generating optimal 2-cyclicschedules with time window constraints. Songet al. [18]developed a mixed linear programming model for scheduling achemical processing tank line with constant processing times,and proposed a heuristic algorithm which relaxes simple cycleassumption. But the algorithm cannot guarantee the optimalityof the obtained solutions for any instance. The only workaddressing the same model as in this paper was by Katsetal. [11]. In this latter work, an algorithm based on a sievemethod was proposed to generate multicyclic schedules withconstant processing times. Their method, however, can onlysolve scheduling problems with integer input data and seek foran integer cycle time solution. Therefore, it cannot guaranteethe optimality of the obtained solution, even for schedulingproblems with integer input data. In fact, as shown in ourexperiments, the optimal cycle time may not be integer and theinteger roundup of the optimal cycle time may be infeasible.Another drawback of this method is its complexity, since itenumerates all nonforbiddenvalues instead of nonforbiddenintervals for each function of decision variables and checks thefeasibility for each combination. It is understandable that thenumber of combinations may be very large, even if only integervalues are considered.

In this paper, we propose an algorithm for generating optimalmulticyclic schedules of hoist moves with constant processingtimes in a PCB electroplating line. After the problem is formu-lated, it is transformed into enumeration of intervals for func-tions of decision variables. This enumeration is accomplishedusing a branch and bound procedure. At each node of the searchtree, by solving a linear programming problem (LPP), either thecorresponding partial solution is proved to be unable to lead toa feasible solution, or a lower bound is computed. Due to its

particular structure, this LPP is equivalent to a cycle time evalu-ation problem in a bivalued graph ([3]) which can be efficientlysolved. The proposed algorithm is polynomial in the number oftanks in the production line for a fixed, but exponential if isarbitrary.

This paper is organized as follows. Section II describes andformulates the different constraints of multicyclic schedulingproblems over decision variables. The model is then analyzedin Section III. Based on this analysis, a branch and bound algo-rithm is proposed in Section IV. The complexity of the algorithmis analyzed in Section V. Section VI gives computational results,and Section VII concludes the paper.

II. PROBLEM DESCRIPTION ANDFORMULATION

In this section, we formally describe and formulate math-ematically the problem. This formulation is based on the no-tion of prohibited intervals largely used in cyclic scheduling ofno-wait systems (e.g., [10], [11]). Since the problem consideredhere is the same as in [11], its formulation can also be found in[11]. However, the formulation of Katset al.can be improved.For the sake of self-consistency, we give a complete formula-tion.

The production line considered in this paper is composed oftanks, . Two dummy tanks and rep-

resent the loading station and the unloading station, respectively.A single type of part is to be processed in this production line.The part flow can be described as follows. Each part is first re-moved from , and then processed successively through tanks

, and finally leaves the system from .Therefore, the problem considered in this paper is a flow-shop.A hoist is responsible for moving parts from one tank to an-other. For simplicity, the hoist move of transporting a part from

to is calledmove , . The time for thehoist to perform move is denoted as , , andthe time to travel from to without transporting parts(calledvoid moves) is denoted , , . Anytank , , can process at most one part at a time.The processing time of a part in each tank is denoted as ,

. We consider ano-waitsystem; that is, as soon asa part completes processing in a tank, it must be immediatelytransferred to the next tank.

The hoist is programmed to perform a fixed sequence ofmoves repeatedly. Each repetition of the sequence is called acycle. The duration of a cycle is thecycle time, denoted by .The hoist move sequence during each cycle is acyclic schedule.

As mentioned in the introduction, this paper deals with-cyclic scheduling problems ( ), that is, exactly

identical parts enter and leave the system during a cycle. Theseparts are introduced into the production line one after anotherrespectively at time instant 0, ,where . Without loss of generality,let and . For the sake of simplicity, the partintroduced at time ( and ) iscalled part and is said to be a part of class.

Throughout the paper, we assume, without loss of generality,that for any series , whenever .

Page 3: Multicyclic hoist scheduling with constant processing times

CHE et al.: MULTICYCLIC HOIST SCHEDULING WITH CONSTANT PROCESSING TIMES 71

Fig. 1. A 4-cylic schedule with four tanks.

We also make the following assumptions which correspond towhat happens in reality:

(1)

(2)

Relation (1) means that a move needs more time than a voidmove between the same pair of tanks. Relation (2) is commonlyknown as the triangle inequality.

As soon as are known, all starting times ofmoves are accordingly determined. To be more specific, letbe the completion time of theth operation ( ) ofpart 0, which is also the starting time of moveof part 0. Then

Furthermore, is the completion time of theth op-eration ( ) for part and the starting time of move

of part . In steady state, the starting time of moveof theuniquepart of class within [0, ) is given by

The number of ’s is . By ordering these ’s inincreasing order:

where is theunique robot schedule corresponding to ( ).The schedule is feasible if and only if, for anysuch that

, the robot has enough time to perform moveof the part of class and then go from tank to tank

in order to perform move of the part of classwhere , . From this analysis,an -cyclic schedule is uniquely defined by ( ).

TABLE IMOVE STARTING TIMES FOREXAMPLE 1

Therefore, we can consider as decision vari-ables of our problem. To illustrate this observation, considerthe following example.

Example 1: A system is composed of four tanks. The pro-cessing times are as follows: , , ,

. All the hoist move times , . Allthe empty hoist travelling times , , .We consider 4-cyclic schedules. When , ,

, , the corresponding and valuesare given in Table I.

The corresponding cyclic schedule is then (0,0);0(3,2);7(2,3);28 (1,0);34 (4,2);45 (0,1);55 (3,3);62

(2,0);76 (1,1);89 (4,3);100 (3,0);110 (0,2);122(2,1);131 (4,0);148 (1,2);156 (3,1);165 (0,3);177(2,2);198 (4,1);203 (1,3);211, where ; representsmove of part of class and its corresponding starting time.The corresponding schedule is depicted in Fig. 1.

For our problem, a schedule is feasible if and only if it satis-fies the following three families of constraints:

• Part processing time constraints. For any, the processing time of a part in

tank is exactly .• Tank capacity constraints. For any ,

tank must be empty when a part arrives.• Hoist capacity constraints. There must be sufficient

time for the hoist to travel between successive assignedtanks.

Page 4: Multicyclic hoist scheduling with constant processing times

72 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 18, NO. 1, FEBRUARY 2002

The following two subsections, respectively, formulate thetank capacity constraints and the hoist capacity constraints. Theprocessing time requirements are implicitly taken into accountin these two families of constraints.

A. Tank Capacity Constraints

The tank capacity constraints require that, when a part arrivesat a tank, the previous part should have been removed from thattank, since each tank can process at most one part at a time. Itmust be guaranteed that part has been moved outfrom a tank when part arrives.

Due to tank capacity constraints, for any ,and for any , move of part must bedone before moveof part . It is known that move ofpart and move of part begin at times and

, respectively. This requirement can be formulatedas:

(3)

By defining, in order to simplify the notation,

relation (3) can be rewritten as

This relation implies

(4)

By defining

relation (4) can be rewritten as

(5)

From this relation, we obtain

(6)

B. Hoist Capacity Constraints

The hoist capacity constraints ensure that the hoist is sched-uled to handle only one part at a time. If there is no conflict inthe use of hoist between any pair of moves, we say that the hoistcapacity constraints are satisfied. These constraints can be de-composed into three subsets.

1) For any , there is no conflict in the use ofhoist between the first part of class, and the successiveparts of class .

2) For any , there is no conflict in the use ofhoist between the first part of classand the successiveparts of class .

3) For any , there is no conflict in the use ofhoist between the first part of classand the successiveparts of class .

From the tank capacity constraints, for anysuch thatand for any , move of part must be done

before move of part which, in its own turn, mustbe done before move of part if any and before anymove of part such that . Thus, for any ,move of part must be done before any moveof partsuch that . In other words, as soon as tank capacityconstraints are taken into account, the hoist constraints betweenthese moves become redundant. We thus only need to considerthe hoist capacity constraints between remaining moves, namelymove of part and any move of part such that

.Therefore, constraints 1) require that for any

, for any such that ; i.e., for any suchthat , for anyand for any , move of part is doneeither before or after moveof part . Knowing that move

of part starts at , and ends at , andmove of part starts at and ends at

, we must have

or

That is

or

or equivalently, by considering (6)

(7)

Similarly, according to constraints 2), we obtain1

(8)

1Taking into account the tank capacity constraints, this subset of constraintscould have been written as

nT + T � T =2 (�f ; f ) ;

0 �n �(N �m +m� 1)

r;

m =m+ 1; . . . ; r � 1;m = 0; . . . ; r � 2:

We prefer formulating these constraints, as shown in (8), even though someconstraints are redundant, to simplify the subsequent analysis, since otherwisethere would be more threshold points and, therefore, higher complexity.

Page 5: Multicyclic hoist scheduling with constant processing times

CHE et al.: MULTICYCLIC HOIST SCHEDULING WITH CONSTANT PROCESSING TIMES 73

and, according to constraints 3) we have

(9)

C. Problem Formulation

To simplify the notation, we define

Without loss of generality, sets and can be considered tobe unions ofdisjoint intervals. Therefore, and can be writtenas

and

with

According to (5), (7)–(9), the -cyclic scheduling problemwith constant processing times can be formulated as follows,denoted as Problem P.

Problem P

subject to

Example 1 (continued):For this example, we have Table II.From Table II, we obtain , (71, 83)(104, 118) (141, 157) (71, 83) (108, 122) (67, 79)

(67, 83) (104, 122) (141, 157) and. In other words, , , ,

, , , , , ,, , .

TABLE IIDATA FOR COMPUTATION OF PROHIBITED INTERVALS FOREXAMPLE 1

III. PROBLEM ANALYSIS

In this section, we show that the problem can be solved bydetermining intervals for expressions of decision variables,which are . As soon as these intervals aredetermined, the values of decision variables can be obtainedby solving a linear programming problem (LPP). Due to itsspecial structure, this LPP can be transformed into a cycle timeevaluation problem in bivalued graphs ([3]). For this latterproblem, efficient graph-based algorithms are available ([3],[14]).

It is more convenient to re-write Problem P as Problem P1defined as follows:

Problem P1 (10)

subject to

(11)

(12)

where

From now on, is union ofdisjoint intervals forbidden for, calledforbidden intervalsof . Similarly, is union of

(not necessarily disjoint) intervals prohibited to , forany ( ) such that , .These intervals are calledprohibited intervals.

By definition, intervals in are -parameterized. Whenincreases, bounds of intervals in decrease while those

of intervals in increase. The lengths of these intervals,however, are independent of. For each given , canbe considered as union ofdisjoint -parameterized intervals bymerging intersecting ones. The left-bound (resp. right-bound)of such a disjoint interval after merging is necessarily the left-bound (resp. right-bound) of one of the initial intervals beforemerging. When increases, some initially disjoint intervals fora value of may intersect (therefore become part of a samedisjoint interval after merging) while some initially intersectingintervals (therefore both being part of a same disjoint interval)may become disjoint. As a consequence, the number of disjoint

Page 6: Multicyclic hoist scheduling with constant processing times

74 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 18, NO. 1, FEBRUARY 2002

intervals in as well as their bounds depend on. To fa-cilitate the analysis, we need for intervals of, calledstable in-tervals, such that for any two values ofin an interval, there arealways the same number ofdisjoint intervals in and thelinear functions of defining the bounds of these disjoint inter-vals are the same. This can be done by identifying the values of

, calledthreshold points, such that the number of disjoint in-tervals defining or the linear functions of defining thebounds of these disjoint intervals change. These events occuronly for those values of such that either bound of an initialprohibited interval is equal to that of another initial prohibitedinterval. Therefore, we have the following theorem.

Theorem 1: The set of threshold points is {

} {} {

}.Proof: See Appendix A.

By definition, any interval of between two adjacentthreshold points is a stable interval. However, because of theforbidden intervals for ; i.e., , a stable interval defined bytwo adjacent threshold points may contain forbidden values of

. Therefore, it is appropriate to define critical points.Definition 1: A critical point is either one of the points

or , or a threshold point which is notforbidden for .

Theorem 2: The number of critical points is bounded fromabove by if , and by if .

Proof: See Appendix B.Example 1 (continued):The set of threshold points is {96,

67, 83, 113, 131, 104, 122, 152, 170, 141, 157, 189, 205, 134,166, 150, 171, 187, 208, 224, 240, 226, 244, 245, 261, 263,279, 282, 314, 298}. The critical points are, after eliminatingunfeasible points, {192, 205, 208, 224, 226, 240, 244, 245, 261,263, 279, 282, 298, 314}.

The potentially feasible domain of; i.e., , can be parti-tioned into stable intervals with critical points as bounds (notethat left-bounds of these intervals must not be). This is doneby ordering the critical points in increasing order. Two adjacentcritical points, if the smaller one is not an, form a stable in-terval. In the following, denotes the number of these stableintervals, and , respectively denote the left- and the right-bounds of theth stable interval, with

.Example 1 (continued):The potentially feasible domain of

cycle time [192, ) is split into stable intervals, [192,205], [205, 208], , [208, 224], [224, 226], [226, 240], [240, 244],[244, 245], [245, 261], [261 263], [263, 279], [279, 282], [282,298], [298, 314] and [314, ).

For any , and , is unionof disjoint intervals nonprohibited for . Recall thatthe bounds of each of these disjoint intervals are linear func-tion of . Furthermore, for any , there are al-ways the same number of disjoint intervals and the bounds ofthese intervals can be explicitly expressed as linear functionsof . Let be the number of these disjoint intervals. Let

be the th interval, .The bounds of the interval being linear functions of, we can

uniquely obtain , , and such that.

After these reorganizations of setsand , Problem P1defined by (10)–(12) is equivalent to Problem P2 which consistsof determining an interval numberfor such that ,and an interval number such that

for for each pair ( ) such that, . The equivalence can be

justified as follows. For each feasible solution to P1, one canfind a feasible solution to Problem P2. Inversely, as soon as asolution to Problem P2 is known; i.e., a stable interval number, , is known for and an interval number ,

, is known for , for any pair( ) such that , , thecorresponding values of, (i.e., a solution toproblem P1) can be determined by solving the following linearprogramming problem (LPP) :

Minimize (13)

subject to

(14)

(15)

Example 1 (continued):For , we have. For any ,

. Therefore,. If , ,, , the corresponding solution to problem

P1 can be obtained by solving the following linear programmingproblem (LPP):

Minimize (16)

subject to

(17)

(18)

(19)

(20)

(21)

(22)

(23)

Based on the analysis above, our problem reduces to enu-merating all possible stable interval numbersfor and all possible nonprohibited disjoint interval number

, , for and forany pair ( ) such that ,

. In other words, the vector of decision variables be-comes ( ).The constraints are and .For each given vector, an LPP such as the one described by(13) – (15) needs to be solved to find the corresponding solu-tion ( ). In the next section, we propose a branchand bound procedure to accomplish this enumeration.

Page 7: Multicyclic hoist scheduling with constant processing times

CHE et al.: MULTICYCLIC HOIST SCHEDULING WITH CONSTANT PROCESSING TIMES 75

Fig. 2. Bigraph corresponding to (16)–(23).

Because of its special structure, the LPP defined by (13) –(15) can be transformed into a cycle time evaluation problemin a bivalued graph ([3]). In a bivalued graph ( ), whereand are, respectively, the set of vertices and the set of edges.With each edge are associated not only a length butalso a weight . Let and be the head and the tail ofedge , respectively, (i.e., edgegoes from vertex tovertex ). Let denote the potential of vertex . In abivalued graph, edgerepresents a constraint

. The bivalued graph corresponding to the LPPdefined by (13) – (15) contains vertices , thepotentials of which are, respectively, . For eachpair ( ) such that , ,there are two edges. One of them is from vertexto vertex

with length and weight and theother from vertex to vertex with length – andweight – .

Example 1 (continued):The bigraph corresponding to theLPP defined by (16) to (23) can be transformed into a bivaluedgraph presented in Fig. 2, where the numbers on each edge arethe length and the weight of the edge, respectively.

For the cycle time evaluation problem, Chen, Chu and Proth[3], Levner and Kats [14] independently proposed algorithmscalled respectively CCP and LK for short. The complexitiesof these algorithms are respectively and

, where is the maximum absolute valueof weights. Algorithm LK has a lower worst-case complexitybut algorithm CCP needs less computation time in practice. Forour problem, , , , Therefore,the complexity is if and if if CCPis used or if and if if LK is used.

Note that the number of intervals inis . The numberof prohibited intervals in is if ,and if . Consequently, is if

, and if . Since there are pos-sible ( ), and for each , may takedifferent values, for an interval [ ], we have to solve atmost (if ) or (if )LPP’s to obtain the corresponding optimal cycle time if it exists.In order to reduce the computational effort, a branch-and-boundprocedure is proposed. The branch and bound procedure im-plicitly enumerates all possible values ofand for all( ) such that and .

IV. A B RANCH AND BOUND ALGORITHM

From the analysis of the previous section, our problem be-comes enumerating all possible stable interval numbers

for and all possible nonprohibited interval number, , for and for any

pair ( ) such that , .We propose a branch and bound algorithm to enumerate thesevalues, by describing the branching rule, the lower bound com-putation and the search strategy.

A. Branching Rule

Note that the choice of values for ,, , depends on the choice of

. That is why the value of must be determined first. The’s are independent, their values can be determined in

any order. However, the values of some ’s may haveinfluence on the choice for other ’s. For instance, ifthe values of and lead toand , then we must have

. It is therefore unnecessaryto choose an interval number for such that the corre-sponding interval is included in ( ) or ( ). As aconsequence, the order in which the ’s are enumeratedmay allow to eliminate some nodes in the search tree. We empir-ically choose the following enumeration order: , ,

, , , ,, . In other

words, when branching from a node, where the last chosenvalue is for , the branching consists of enumeratingall possible values of , where

if andif orotherwise.

To summarize, the search tree for the branch and bound pro-cedure is depicted in Fig. 3.

With this scheme, when enumerating ,is known for any such that . Thus compati-bility properties can be used to eliminate some infeasible nodes.To be more specific, as soon as an interval numberis deter-mined for , then for each nonprohibited intervalin ,

, the left-bound is bounded from below byand the right-bound is bounded from above by, with

ifif

ifif

Since is known, which implies, for any such that ,

we must have

Page 8: Multicyclic hoist scheduling with constant processing times

76 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 18, NO. 1, FEBRUARY 2002

Fig. 3. The enumeration tree for the branch and bound algorithm.

Furthermore, from (5), we obtain

or equivalently,

As a consequence, any intervalsuch that

or

can be discarded for .Example 1 (continued):Consider the branching from the

node corresponding to , . Thebranching consists of enumerating values of ; i.e.,

, . From , we deduce that .Therefore , ,

, . As a conse-quence

and

Therefore, must not be 1 or 4.

B. Lower Bound Computation

Each node in the search tree corresponds to a partial solu-tion where the values of some ’s are determined. Let

be these ( )’s. A lower bound of the cycle time cor-responding to node can be obtained by relaxing part of (15).In other words, the lower bound can be obtained by solving thefollowing linear programming problem:

Problem LB(o). Minimize

subject to

where are those values determined in node.If there is no solution to Problem LB (), then node cannot

lead to a feasible solution, and thus can be eliminated. Other-wise the optimal objective value provides a lower bound corre-sponding to node. The node can also be eliminated if thelower bound is greater than a known upper bound.

C. Search Strategy

In the branch and bound algorithm, we use a depth-first searchstrategy plus backtracking rule or the depth-first plus best lowerbound rule to select the node for the next branching. It must benoted that if a feasible solution to Problem P1 is found for some, then it is not necessary to consider larger value of, since the

cycle time can only be greater. It must also be noted that there isalways a feasible solution to Problem P1, since

for any such that is a feasible solution,where is the right-bound of the last disjoint interval in set(see Section II.C).

D. Summary

The process to solve the multicyclic scheduling problem canbe summarized as follows.

Step 1) Compute for any and forany , and .

Step 2) Construct set and compute , , .This step is done by ordering intervals( ) such that ,

, ,in increasing order of the

left-bounds and by merging intersecting intervals.Step 3) Compute set, and , . This step

can be done in a similar way as in Step 2.Step 4) Compute threshold points and eliminate those

falling into to obtain critical points.Step 5) Decompose into disjoint stable intervals

, , with critical points asbounds.

Step 6) .Step 7) Decompose into disjoint -param-

eterized intervals,

.

Page 9: Multicyclic hoist scheduling with constant processing times

CHE et al.: MULTICYCLIC HOIST SCHEDULING WITH CONSTANT PROCESSING TIMES 77

TABLE IIICOMPUTATIONAL RESULTS FOR THEBENCHMARK PROBLEMS

Step 8) Use branch and bound method to enumeratefor each pair ( ) such that

, .If an optimal solution corresponding to stableinterval is found, go to Step 10; otherwise, go toStep 9.

Step 9) . Go to Step 7.Step 10) An optimal solution to Problem P1 thus to Problem

P has been found. Compute the correspondingcyclic schedule and STOP.

Example 1 (continued):Using the branch and bound ap-proach, the optimal solution is ,

, , . Therefore,the optimal solution to problem P is obtained by solving theLPP defined by (16)– (23), which gives , ,

, . The schedule in Fig. 1 is optimal.

V. COMPLEXITY ANALYSIS OF THE ALGORITHM

Theorem 3: The multicyclic scheduling problem with con-stant processing times is solvable intime complexity if , and in if ,using LK algorithm to solve the LPP’s.

Proof: It is known that the time required to mergeinitially non disjoint intervals to obtain disjoint intervals is

. This results in disjoint intervals. The num-bers of initial intervals in and are and ,respectively. The times required to accomplish Steps 2 and 3are respectively and . Accordingto Theorem 2, is at most if and if

, thus, in Steps 4 and 5, sorting all these critical pointsneeds at most if or if

to decompose into stable intervals.At Step 7 and 8, for each, , is at most

if , and if . Since there are to-tally elements ( , ) and for each element (,

), may be any of the intervals. Therefore,for each , we have to solve at most LPP’sif , or LPP’s if . Each of theseLPP’s can be transformed into a cycle time evaluation problemin a bivalued graph with vertices and arcs. Using LK algo-rithm, such a problem can be solved in ; i.e., in

time complexity if , or in if . To sumup, the time needed to obtain an optimal solution to ProblemP is if andif .

After an optimal solution to Problem P is obtained, Step 10constructs an corresponding optimal schedule. For this purpose,all ’s must be sorted. Since the number of’s is , thisstep can be completed in .

The overall time complexity of the proposed algorithmin the worst-case is if , or

if , using LK algorithm to solve theLPP’s equivalent to cycle time evaluation problems in bivaluedgraphs.

Similarly, The multicyclic scheduling problem with constantprocessing times can be solved in timecomplexity if , and in if , usingCCP algorithm to solve the LPP’s.

Therefore, we know that the algorithm proposed in this paperis polynomial in for a fixed , but becomes exponential foran arbitrary .

VI. COMPUTATIONAL RESULTS

The algorithm presented in Section IV was implemented inC on a Gateway PC with a Pentium III 450-MHz processor. Toevaluate the performance of the algorithm, we used four bench-mark problems, denoted by SZS, LKS, SSZ, and PhU in the lit-erature [11], and also solved 5600 test problems with the numberof tanks ranging from 8 to 22.

The basic data for the benchmark problems can be found in[11], including , , , and where , .Table III gives the optimal cycle times using the proposed al-gorithm. It can be found from Table III that the four bench-mark problems fall into two groups. 1) Benchmark problemSZS, LKS, and PhU, for which the optimal mean cycle times in-cyclic schedules are better than the optimal simple cycle time.

The maximal improvements in the mean cycle times achievedby multicyclic schedules are 23.08%, 16.47%, and 23.96%, re-spectively. 2) Benchmark problem SSZ, for which the optimalmultiple-degree mean cycle time was found to be equal to theoptimal simple cycle time.

Page 10: Multicyclic hoist scheduling with constant processing times

78 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 18, NO. 1, FEBRUARY 2002

TABLE IVCOMPUTATIONAL RESULTS FOR THEBENCHMARK PROBLEMS USING KLM A LGORITHM

TABLE VAVERAGE IMPROVEMENT (%) IN MEAN CYCLE TIMES FORTEST PROBLEMS

In the first group of benchmark problems, the optimal meancycle time is nonmonotonic in. However, we can find that theoptimal -degree mean cycle time will be necessarily less thanor equal to both the -cyclic one and the -cyclic one if is acommon multiple of and . In fact an -cyclic schedule canalways be obtained by repeating times the optimal -cylicsolution, or by repeating times the optimal -cylic solution.For example, for the same benchmark problem in Table III, theoptimal mean cycle time for is always less than or equalto both the 2-cyclic one and the 3-cyclic one.

Kats et al.. [11] also developed an algorithm, here calledKLM for short, for multicyclic scheduling with constant pro-cessing times. But their method is restricted to solving sched-uling problems withintegerinput data and to seeking for anin-tegercycle time. Table IV gives the optimal integer cycle timesfor benchmark problem SZS, LKS, SSZ, and PhU. As shownin Table III, the optimal cycle time may not be an integer evenwith integer input data. Therefore, the KLM algorithm cannotguarantee the optimality of the obtained solution even for sched-uling problems with integer input data. For example, the optimal2-degree and 4-degree cycle times for benchmark problem LKSusing our algorithm are 59.75 and 119.5, respectively, whilethey are 60 and 120 using KLM algorithm, respectively. Notethat it was shown in our experiments that the optimal integercycle time found by KLM algorithm is not necessarily the in-teger roundup of the optimal cycle time obtained, due to the factthat the feasible domain of cycle time is union of disjoint in-tervals with not-necessarily-integer bounds. Although this dif-ference in the optimal value can be made arbitrarily small byscaling on input data if the optimal integer solution is the integerroundup of the optimal solution, this will greatly slow down theKLM algorithm, since it finds the optimal integer cycle timethrough an exhaustive search over a set of all possible integersolutions.

In addition, 5600 test problems were used to evaluate theperformance of the algorithm. Each test problem was gener-ated using a different random number stream. Let with

be a positive integer randomly drawn from a uni-form distribution with lower and upper boundsand , re-spectively. Parameters used to generate the test problems were

, , ,, , ,

, . Foreach set of parameters of test problems, 100 tests were run.

It was found in our tests that in about 75%-95% of the testproblems the optimal-cyclic schedules ( ) are superiorto the optimal simple schedule; i.e., the mean cycle times of theformer are less than those of the latter. A summary of averageimprovement in the mean cycle times achieved by multicyclicschedules with respect to simple cycle schedules for the testproblems is listed in Table V. The optimal simple cycle sched-ules can be calculated using the method proposed in [10]. Thecomputational results indicate that the average improvement inthe mean cycle time, ranging from 7.04% to 46.96%, increaseswhen the number of tanks increases. This may be due tothe fact that the larger the size of the scheduling problem (i.e.,

), the more flexible the production line, thus the more im-provement multicyclic schedules can offer. On the other hand,as shown in Table V, the average improvement in the mean cycletimes is not monotonic in. This phenomenon is similar to thatshown in the first group of benchmark problems in Table III.

A summary of computation times for the test problems is pre-sented in Table VI. As can be seen from Table VI, the compu-tation times for the test problems increase very rapidly with,since the algorithm is exponential in. On the other hand, asthe number of tanks (i.e., ) in the production line increases,the computation times for generally show an increasingtrend while those for othervalues generally show a decreasing

Page 11: Multicyclic hoist scheduling with constant processing times

CHE et al.: MULTICYCLIC HOIST SCHEDULING WITH CONSTANT PROCESSING TIMES 79

TABLE VICOMPUTATION TIMES FOR THETEST PROBLEMS

trend. It seems that this is in contradiction with the fact that thecomplexity is increasing with .

Based on the algorithm presented in Section IV, for a fixed, the computation time required for an-cyclic scheduling

problem mainly depends on two major factors: number ofdisjoint intervals in ; i.e., , and number ofdisjoint intervalsin ; i.e., , after emerging of intervals, since not only thenumber of critical points increases with and , but alsohas heavy impact on the scale of the enumeration tree of thebranch and bound procedure. The number of intervals in(resp. ) before emerging of intervals is (if )or 1 (if ) (resp. ). This is also the number ofdisjoint intervals in (resp. ) after emerging of intervals onlyin the worst-case. In other words, theworst-casenumbers ofdisjoint intervals in and increase with . However, inpractice, the greater the number of tanks in the line, the moreintervals in and before emerging of intervals, and thegreater thepossibilityof interval overlapping, which will resultin fewerdisjoint intervals in and . Therefore, although theworst-casenumber ofdisjoint intervals in and increaseswith , in practice, the possibility of obtaining moredisjointintervals in and decreases with . In other words, fora fixed , the worst-casecomputation time for an -cyclicscheduling problem increases with while in practice thepossibilityof requiring more computation time decreases with

. As a consequence, the computation times for the-cyclic( ) test problems generally show a decreasing trendwith increasing . This means that the proposed algorithmwould be very efficient in solving scheduling problems withlarge size. When , no branch and bound procedure isneeded. For a given interval [ ], whenever there existsat least one feasible satisfying constraints (12), is theoptimal cycle time. In this case, the computation time for thescheduling problem depends on and the number of criticalpoints. The actual computation time will depend on whichone has greater influence. This may result in the phenomenonthat the computation times for 2-cyclic scheduling problemsgenerally show an increasing trend with.

VII. CONCLUSION

In this paper, we proposed an exact algorithm for multicyclicscheduling problem in a printed circuit board electroplating fa-cility. The multicyclic scheduling problem can be transformedinto enumeration of intervals for expressions of decision vari-

ables. This enumeration is done with a branch and bound tech-nique. At each node of the search tree, a linear programmingproblem (LPP) needs to be solved to check the feasibility ofthe corresponding partial solution or to compute a lower bound.These LPP’s are equivalent to cycle time evaluation problems inbivalued graphs, and can be solved by a graph-based algorithm.The proposed algorithm is polynomial in the number of tanksfor a fixed , but becomes exponential ifis arbitrary. The per-formance of the algorithm has been evaluated using four bench-mark problems and 5600 test problems. The computational re-sults indicate that the throughput of the multicyclic schedule isusually better than that in the optimal simple cycle schedule.The proposed algorithm is very efficient in solving multicyclicscheduling problems with large size. The approach developedin this paper can also be extended to problem with multiple parttypes.

APPENDIX APROOF OFTHEOREM 1

By definition, there are four threshold points for each pair ofprohibited intervals in .

For a pair of intervals in , ( , ) and (, ) such that , ,

, , the threshold points are those values ofsuchthat

or

or or

The threshold points for a given (, , ) are

Due to the fact that and ,, it is sufficient to consider strictly positive values. The

threshold points obtained above are negative or zero when,except . As a result, the set of threshold points is{ ,

} { } for all pairs ofprohibited intervals in .

For a pair of intervals in , ( ), and (), , , ,

, the threshold points are those values ofsuch that:

or

or or

Page 12: Multicyclic hoist scheduling with constant processing times

80 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 18, NO. 1, FEBRUARY 2002

or equivalently,

or or

or

These threshold points are exactly the same as for pairs ofprohibited intervals in .

For a pair of intervals, one in , ( , ),, , the other in , ( ,

), , , thethreshold points can be obtained such that:

or

or or

Therefore, the set of threshold points due to pairs of intervalssuch that one in and the other in is given by

As a consequence, we have Theorem 1.

APPENDIX BPROOF OFTHEOREM 2

The total number of intervals in is bounded from above byif . Note that if . There-

fore, is at most if , and if .From Theorem 1, the number of threshold points is if

and otherwise. To sum up, the number of crit-ical points of cycle time is if , and if

.

ACKNOWLEDGMENT

The authors are grateful to anonymous reviewers for theirconstructive remarks.

REFERENCES

[1] A. Che, C. Chu, and E. Levner, “A polynomial algorithm for 2-degreecyclic robotic scheduling,”Eur. J. Oper. Res., to be published.

[2] H. Chen, C. Chu, and J.-M. Proth, “Sequencing of parts in robotic cells,”Int. J. Flexible Manufact. Syst., vol. 9, pp. 81–103, 1997.

[3] , “Cyclic scheduling of a hoist with time window constraints,”IEEETrans. Robot. Automat., vol. 14, pp. 144–152, Feb. 1998.

[4] C. Chu and J.-M. Proth, “Single machine scheduling with chain struc-tured constraints and windows on separation times,”IEEE Trans. Robot.Automat., vol. 12, pp. 835–844, Dec. 1996.

[5] Y. Crama and J. van de Klundert, “Cyclic scheduling of identical partsin a robotic cell,”Oper. Res., vol. 45, pp. 952–965, Nov. 1997.

[6] A. Hertz, Y. Mottet, and Y. Rochat, “On a scheduling problem in a robo-tized analytical system,”Discrete Appl. Math., vol. 65, pp. 285–318,month??? 1996.

[7] H. P. Hilion and J.-M. Proth, “Performance evaluation of job-shop sys-tems using timed event graphs,”IEEE Trans. Automatic Contr., vol. 34,pp. 3–9, 1989.

[8] I. N. Kamal Abadi, N. G. Hall, and C. Sriskandarajah, “Minimizing cycletime in a blocking flow-shop,”Oper. Res., vol. 48, pp. 177–180, 2000.

[9] H. Kamoun, N. G. Hall, and C. Sriskandarajah, “Scheduling in roboticcells: Heuristic and cell design,”Oper. Res., vol. 47, pp. 821–835, 1999.

[10] V. Kats and E. Levner, “A strongly polynomial algorithm for no-waitcyclic robotic flowshop scheduling,”Oper. Res.Lett., vol. 21, pp.171–179, Apr. 1997.

[11] V. Kats, E. Levner, and L. Meyzin, “Multiple-part cyclic hoist sched-uling using a sieve method,”IEEE Trans. Robot. Automat., vol. 15, pp.704–713, Aug. 1999.

[12] L. Lei and T. J. Wang, “A proof: The Cyclic Hoist Scheduling Problemis NP-hard,” Rutgers Univ., Working Paper #89-0016, 1989.

[13] , “Determining optimal cyclic hoist schedules in a single-hoist elec-troplating line,”IIE Trans., vol. 26, pp. 25–33, Mar. 1994.

[14] E. Levner and V. Kats, “A parametric critical path problem and anapplication for cyclic scheduling,”Discrete Appl. Math., vol. 87, pp.149–158, month??? 1998.

[15] L. W. Phillips and P. S. Unger, “Mathematical programming solutionof a hoist scheduling program,”AIIE Trans., vol. 8, pp. 219–225, June1976.

[16] S. P. Sethi, C. Sriskandarajah, G. Sorger, J. Blazewicz, and W. Kubiak,“Sequencing of parts and robot moves in a robotic cell,”Int. J. FlexibleManufact. Syst., vol. 4, pp. 331–358, 1992.

[17] G. W. Shapiro and H. W. Nuttle, “Hoist scheduling for a part electro-plating facility,” IIE Trans., vol. 20, pp. 157–167, Feb. 1988.

[18] W. Song, Z. B. Zabinsky, and R. L. Storch, “An algorithm for schedulinga chemical processing tank line,”Production Planning & Contr., vol. 4,pp. 323–332, 1993.

[19] C. Varnier, A. Bachelu, and P. Baptiste, “Resolution of the cyclic multi-hoists scheduling problem with overlapping partitions,”INFOR (Inform.Syst. Oper. Res.), vol. 35, pp. 277–284, July 1997.

Ada Che received the B.S. and Ph.D. degrees in me-chanical engineering from Xi’an Jiaotong University,Xi’an, China, in 1994 and 1999, respectively.

He is currently a post-doctoral fellow at theIndustrial Systems Optimization Laboratory, TroyesUniversity of Technology, Troyes, France. Hismain areas of interest include cyclic schedulingof computer-controlled robots or hoists, computerintegrated manufacturing, and quality functiondeployment.

Chengbin Chu (M’01) received the B.Sc. degreefrom Hefei University of Technology, China, inelectrical engineering in 1985 and the Ph.D. degreefrom Metz University, France, in Computer Sciencein 1990.

He worked at INRIA (National Research Institutein Computer Science and Automation), France, fornine years. He is currently a Professor at Troyes Uni-versity of Technology, Troyes, France, where he isalso Director of the Industrial Systems OptimizationLaboratory. He is interested in research areas related

to operations research and modeling, analysis and optimization of supply chainand production systems. He is author or co-author of one book and more than 30articles in journals such asOperations Research, SIAM Journal on Computing,IEEE TRANSACTIONS ONROBOTICS ANDAUTOMATION, International Journal ofProduction Research, Naval Research Logistics and European Journal of Op-erational Research, etc. He also published more than 50 papers in conferenceproceedings.

Dr. Chu received the First Prize of Robert Faure Award in 1996 for hisresearch and application activities. He also received the “1998 Best Trans-actions Paper Award” from the IEEE Robotics and Automation Society. Healso serves as an Associate Editor of IEEE TRANSACTIONS ONROBOTICS AND

AUTOMATION.

Feng Chureceived the B.S. degree in electrical engi-neering from Heifei University of Technology, China,in 1986 and the Ph.D. degree in computer sciencefrom University of Metz, France, in 1995.

She is currently an Associate Professor at TroyesUniversity of Technology, Troyes, France. She ismainly interested in modeling, analysis and controlof production and logistics systems.


Recommended