A goal programming approach to simple U-line balancing problem

Report 0 Downloads 11 Views
European Journal of Operational Research 171 (2006) 577–585 www.elsevier.com/locate/ejor

Production, Manufacturing and Logistics

A goal programming approach to simple U-line balancing problem Hadi Go¨kc¸en a

a,*

, Ku¨rsßad Agˇpak

b

Department of Industrial Engineering, Faculty of Engineering and Architecture, Gazi University, Maltepe, 06570 Ankara, Turkey b Department of Industrial Engineering, Faculty of Engineering, Gaziantep University, Gaziantep, Turkey Received 27 January 2003; accepted 8 September 2004 Available online 11 November 2004

Abstract In this paper, a goal programming model for the simple U-line balancing (ULB) problem is developed. The model is based on the integer programming formulation developed by Urban [Urban, Note: Optimal balancing of U-shaped assembly lines, Management Science 44(5) (1998) 738–741] for the ULB problem and the goal model of Deckro and Rangachari [Deckro, Rangachari, A goal approach to assembly line balancing, Computers and Operations Research 17 (1990) 509–521] developed for the traditional single model assembly line balancing (ALB) problem. The proposed model which is the first multi-criteria decision making approach to the U-line version provides increased flexibility to the decision maker since several conflicting goals can be simultaneously considered. Ó 2004 Elsevier B.V. All rights reserved. Keywords: Manufacturing systems; U-line balancing; Goal programming

1. Introduction Manufacturers generally use assembly lines to produce high volume product. In an assembly line is a sequence of workstations connected together by a material handling system. It is used to assemble components into a final product [3]. Products stay at each workstation for the cycle time (C), *

Corresponding author. Tel.: +90 312 231 74 00x2839; fax: +90 312 230 84 34. E-mail address: [email protected] (H. Go¨kc¸en).

which corresponds to the time interval between successively completed units. The assembly line balancing (ALB) problem has been a task of interest to the Industrial Engineers and the Operation Researchers for a number of years. The assembly line balancing problem can be explained as the requirement to assign task elements according to precedence relations and some other constraints (i.e., the compatibility between a workstation and some tasks) to each workstation on the production line in order to achieve specific

0377-2217/$ - see front matter Ó 2004 Elsevier B.V. All rights reserved. doi:10.1016/j.ejor.2004.09.021

578

H. G€ okc¸en, K. A gpak / European Journal of Operational Research 171 (2006) 577–585

objectives, such as maximizing the production rate and minimizing the number of workstations, cycle time, and slack time. Furthermore, line balancing will reduce the differences between assigned workloads so that one operator is not very busy while other operators are idle. This situation wastes valuable human resources [4]. The studies related to the assembly line can be classified as two general groups. These are traditional straight assembly lines (with single and multi/mixed products) and U-type assembly lines (with single and multi/mixed products). The literature on assembly line balancing is relatively extensive. For studies on traditional assembly line balancing, it can be seen the review papers of Baybars [5], Ghosh and Gagnon [6], Erel and Sarin [7]. Recently, U-shaped layouts have been utilized in many production lines instead of the traditional straight-line configuration due to the use of just-intime principles [1]. In traditional line balancing problems the assembly line is designed straightly, and in U-type balancing problems the line is designed as U shape. In U-type design the entrance and the exit of the line are on the same position. Fig. 1 illustrates a traditional straight assembly line and a U-type assembly line with a cycle time of 12 time units including nine tasks. Each node in Fig. 1 represents the tasks and the numbers next to the nodes define the task times. As can be seen from Fig. 1, the multi-skilled operators have been located inside of the U-type assembly line. Let us see the tasks 1, 2, 8 and 9.

Although two of these tasks are at the starting point and the other two are at the end, they have been processed by the same operator (Operator #1). This means that the U-type lines have great assignment flexibility and balancing efficiency. There is a small and growing literature on ULB problem. SULB (simple U-line balancing) problem was first modeled by Miltenburg and Wijngaard [9]. Urban [1] proposed an integer programming formulation for determining the optimal balance. Like the traditional line balancing problem, ULB problem is also NP hard nature [10,11]. In this type of problems the computational time to obtain the optimal solution increases exponentially as the problem size increases. This complex mathematical nature of the problem makes it difficult to solve optimally. So, several techniques have been proposed for the solution of U-line balancing problems (see the paper of Scholl and Klein [12], Ohno and Nakade [13], Miltenburg [14,15], Sparling and Miltenburg [11], Guerriero and Miltenburg [16]). We can see that the SULB problems in the literature are formulized and solved for only single goal. Like in traditional single model ALB problems, these goals are the minimization of cycle time or the minimization of the numbers of workstations (minimization of cycle time will increase of the production rate and minimization of the numbers of workstations will decrease of the workforce level). But in real applications, the decision maker may have to deal with conflicting goals. In other words, the decision maker may request to realize more than one goal at the same time.

Fig. 1. Traditional and U-type assembly line with a cycle time of 12 [8]: (a) traditional straight assembly line, (b) U-type assembly line.

H. G€ okc¸en, K. A gpak / European Journal of Operational Research 171 (2006) 577–585

In the literature, a few published studies have used a multi-criteria decision making (MCDM) approach to the ALB problem (see the papers of Gunther et al. [17], Deckro [18], Malakooti [19,20], Deckro and Rangachari [2], Go¨kc¸en and Erel [21]). All the MCDM studies in the literature are concerned with the traditional line balancing problem and, to the best knowledge of the authors, there has not been any published study dealing with the multi-criteria aspects of the U-type line balancing problem so far. This paper presents a goal programming model for the simple ULB problem. A goal programming approach would seem to be a natural modeling tool and a more realistic approach for the line balancing problem, since goal programming attempts to achieve a ‘‘satisfactory’’ rather than ‘‘optimal’’ solution due to conflicting goals [21]. The proposed model in this paper provides a considerable amount of flexibility to the decision maker since several goals of which some may be conflicting with each other, can simultaneously be considered. The remainder of this paper is organized as follows. In Section 2, the UrbanÕs [1] integer programming formulation is presented. The goal programming formulation for ULB problem is developed in Section 3. In Section 4, an illustrative example is given and finally in Section 5, conclusions are provided.

tions, the problem is to assign the tasks to the workstations (j = 1, . . ., m), such that the precedence relations are satisfied and some performance measures such as minimization of the cycle time and the number of workstation, etc., are optimized. The distinguishing characteristic of the ULB problem is that it must allow for the forward and backward assignment of tasks to workstations; for example, the first and the last task of an assembly can be placed in the same workstation on a U-line, but not on a traditional line [1]. Urban [1] accomplished this by establishing a ‘‘Phantom’’ network and appending it to the original precedence network. To illustrate this concept, he considered the classical test problem from Jackson [22]. Fig. 2, denotes the precedence network of this 11 task problem with the phantom network (dotted lines) attached to it. By starting in the middle of this extended network, assignments to the workstations can be made forward through the original network, backward through the phantom network, or simultaneously in both directions [1]. The goal programming model developed here utilizes the integer programming formulation developed by Urban [1] for the U-line balancing (ULB) problem. The reason why we have chosen UrbanÕs [1] model as a baseline to our goal programming model is that UrbanÕs [1] model is the only one integer programming model in the literature. UrbanÕs [1] integer programming model is given as follows: mmax X Min zj ; ð1Þ

2. UrbanÕs integer programming formulation A simple ULB problem can be stated as follows: given a set of tasks, n, the performance time of tasks, ti (i = 1, . . ., n), and the set of precedence rela-

579

j¼rdmmin e

Constraints : m max X ðxij þ y ij Þ ¼ 1

for i ¼ 1; . . . ; n;

j¼1

Fig. 2. Precedence network with phantom network [1].

ð2Þ

580 n X

H. G€ okc¸en, K. A gpak / European Journal of Operational Research 171 (2006) 577–585

ti ðxij þ y ij Þ 6 C

for j ¼ 1; . . . ; dmmin e;

ð3Þ

i¼1 n X

ti ðxij þ y ij Þ 6 Czj

i¼1

for j ¼ dmmin e þ 1; . . . ; mmax ; mmax X ðmmax  j þ 1Þðxrj  xsj Þ P 0

ð4Þ

j¼1

for ðr; sÞ 2 P ; mmax X ðmmax  j þ 1Þðy sj  y rj Þ P 0

ð5Þ

j¼1

for ðr; sÞ 2 P ; xij ; y ij ; zj 2 f0; 1g

ð6Þ for all i; j:

The notation used in UrbanÕs [1] integer programming model will be given in Section 3. Constraint (2) ensures that all tasks are assigned to a station and each task is assigned only once. Constraints (3) and (4) ensure that the work content of any station does not exceed the cycle time. Constraints (5) and (6) ensure that the precedence constraints are not violated on the original network and phantom network. As a result of objective function, the number of workstations will be minimized.

In this paper, we utilized the preemptive approach because it is very difficult to determine the weights for the various goals. In a preemptive goal programming model, the upper level goals are first optimized before lower level goals are considered. In a non-preemptive model, the goals are given some weights and considered simultaneously [21]. The notation used in the formulation is as follows: n C ti OPi FPi mmin mmax

Wj FWj kWjk

3. Goal programming formulation Goal programming, introduced by Charnes and Cooper [23], deals with the problem of achieving a set of conflicting goals. The objective function searches to minimize deviations from the set of pre-assigned goals. A goal programming approach would seem to be a natural modeling tool and a more realistic approach for the ULB problem, since goal programming attempts to achieve a ‘‘satisfactory’’ rather than ‘‘optimal’’ solution is due to conflicting goals [21]. Goal programming can be solved in two ways: (i) using of the simplex algorithm directly if weights given for goals are precisely defined and (ii) using of the preemptive goal programming if weights given for goals are not precisely defined, but are ordered P1 o P2 o    o Pn.

xij

yij

Zj

total number of tasks cycle time performance time of task i, i = 1, . . ., n subset of all tasks that precedes task i in the original diagram, i = 1, . . ., n subset of all tasks that follows task i in the phantom diagram, i = 1, . . ., n theoretical minimum number of workstation maximum number of workstations which can be estimated from the operational setting or by utilizing U-line heuristics shown to perform well subset of all tasks in original diagram that can be assigned to workstation j subset of all tasks in phantom diagram that can be assigned to workstation j number of tasks in set Wj and FWj, j = 1, . . ., mmax 1, if task i in the original precedence diagram is assigned to workstation j; 0 otherwise, i = 1, . . ., n, j = 1, . . ., mmax 1, if task i in the phantom precedence diagram is assigned to workstation j; 0 otherwise, i = 1, . . ., n, j = 1, . . ., mmax 1, if there is any task assigned to workstation j; 0, otherwise, j = 1, . . ., mmax

The assumptions of the model are listed below: 1. Task times are known constant. 2. Precedence relations between the tasks are known. 3. No WIP inventory buffer is allowed between the workstations. 4. Parallel workstations are not allowed. 5. Walking times of the operators are ignored.

H. G€ okc¸en, K. A gpak / European Journal of Operational Research 171 (2006) 577–585

3.1. Assignment constraints We obviously can assign a task to only one workstation, either in the original network or in the phantom network, xij and yij are binary variables. The assignment constraints can be expressed as mmax X

ðxij Þ þ

mmax X

ðy ij Þ ¼ 1;

i ¼ 1; . . . ; n:

ð7Þ

j¼FEi

j¼OEi

Workstation lower bounds used in the assignment constraints are calculated as follows: " !, #þ X OEi ¼ ti þ tj C ; i ¼ 1; . . . ; n; ð8Þ j2OPi

" FEi ¼

ti þ

X

! , #þ tj

C

;

i ¼ n; n  1; . . . ; 1;

j2FPi

ð9Þ where [x]+ denotes the smallest integer greater than or equal to x. Note that, the starting point is the middle of the extended network. In general, the assignment constraints are hard constraints, not suitable for consideration as goals [18]. 3.2. Precedence constraints Precedence constraints enforce the precedence relationships between the tasks; these relationships are reversed for the phantom network. Urban [1] defined P = {1, . . ., p, . . ., jPj} to represent a set of ordered pairs of tasks reflecting the precedence relationship; for example, p = (a, b) is the ordered pair indicating task which immediately precedes task b. We can use the lower bounds here (OE and FE) in order to reduce the number of variables. mmax X

ðmmax  j þ 1Þxaj 

j¼OEa

m max X

for all ða; bÞ 2 P ; mmax X

ðmmax  j þ 1Þy bj 

j¼FEb

for all ða; bÞ 2 P :

ðmmax  j þ 1Þxbj P 0

j¼OEb

ð10Þ mmax X

ðmmax  j þ 1Þy aj P 0

j¼FEa

ð11Þ

581

Similar to the assignment constraints, precedence constraints are also not suitable for consideration as goal [18]. 3.3. Cycle time constraints The cycle time constraints assure that summation of task times within a single workstation is less than or equal to the cycle time. These can be expressed as follows: X X ti ðxij Þ þ ti ðy ij Þ 6 C; j ¼ 1; . . . ; mmax : i2W j

i2FWj

ð12Þ The goal constraints for the cycle time can be written as " # X X þ ti ðxij Þ þ ti ðy ij Þ þ d  j  d ¼ C; i2W j

i2FWj

j ¼ 1; . . . ; mmax :

ð13Þ

The single deviational variable d + is used for all j constraints to assure the same cycle time for each workstation. The minimization of d + will minimize the cycle time. The minimization of sum of the d  j deviational variables will minimize the total idle time. 3.4. Workstation constraints Workstation constraints developed by Deckro [18] for traditional ALB problems is modified for U-line version as follows: " # X X ðxij Þ þ ðy ij Þ  kW j kX j 6 0; i2W j

i2FWj

j ¼ 1; . . . ; mmax ;

ð14Þ

where Xj is zero–one variable. If workstation j is utilized, Xj will equal one (if any task is assigned to workstation j, Xj must be one); otherwise Xj will be zero. kWjk is the number of tasks in set Wj and FWj. If a specified number of workstation, IST, is imposed by the decision maker, we can write the following constraint:

582 m max X

H. G€ okc¸en, K. A gpak / European Journal of Operational Research 171 (2006) 577–585

X j 6 IST;

j ¼ 1; . . . ; mmax :

ð15Þ

j¼1

Table 1 Task times Task

Task times

Task

Task times

6 2 5 7 1 2

7 8 9 10 11

3 6 5 5 4

j¼1

1 2 3 4 5 6

If d þ IST can be minimized to zero, the number of workstations utilized will be IST or less. The maximization of d  IST will have the effect of minimizing the total number of workstation used.

Goal with priority level 1: number of workstations should not exceed 3.

This constraint can be expressed as a goal by adding deviational variables as follows: m max X

þ X j þ d IST  d IST ¼ IST:

ð16Þ

3.5. Task load constraints

Goal with priority level 2: cycle time should not exceed 15.

Task load constraint developed by Deckro and Rangachari [2] for traditional ALB problems is modified for U-line version as follows: X X ðxij Þ þ ðy ij Þ 6 TSK; j ¼ 1; . . . ; mmax :

Goal with priority level 3: number of tasks per workstations should not exceed 3.

i2W j

i2FWj

ð17Þ The task load constraints limit the number of individual tasks which can be assign to a workstation j to the same predetermined maximum, TSK. The most common situation is for TSK to be equal to the same value for all j. These constraints can be expressed as goal constraints by adding deviational variables as follows: " # X X þ ðxij Þ þ ðy ij Þ þ d  jTSK  d jTSK ¼ TSK; i2W j

i2FWj

j ¼ 1; . . . ; mmax :

ð18Þ

By minimizing d þ jTSK , the task count at each workstation will be forced to the target level, TSK.

4. Illustrative example To illustrate the goal programming model discussed here, several examples with different goals are solved. The precedence network of the problem was given in Fig. 2. The task performance times of the problem are also given in Table 1. Three goals with priority levels below are used in the formulation:

The trade-offs between the pair of goals described in the model are given in Fig. 3. The problem 1 is solved using the GAMS (General Algebraic Modeling System) mathematical programming package on a Pentium 4-2.0 GHz computer. Task assignments are shown in Table 2. As seen from Table 2, priority 2 and priority 3 are not satisfied while priority 1 is satisfied. In sequencing the priorities (goals) of a preemptive goal programming model with P priority levels, there will be P! different sequences for a model. Such an analysis is useful to decision maker since it serves as a sensitivity analysis tool [21]. The results of 3! = 6 different sequences of the goals are given in Table 3. Note that the priority 1 goal, priority 2 goal or the priority 3 goal is not simultaneously satisfied in each sequence in Table 3. Priority 1 and 2 goals, and priority 1 and 3 goals are conflicting goals. When the priority 2 goal is satisfied, priority 3 goal can also be simultaneously satisfied for all sequences. The above analysis suggests reconsidering the limits imposed by the priority 1 and 2 goals. In other words, the various sequences offer the decision maker a spectrum of solutions to choose from. The final selection will hinge upon the decision makers preference of a longer cycle time or more workstations.

H. G€ okc¸en, K. A gpak / European Journal of Operational Research 171 (2006) 577–585

583

Table 2 Task assignments of problem 1

Fig. 3. Trade offs among the goals: (a) number of tasks vs. cycle time, (b) cycle time vs. number of stations and (c) number of tasks vs. number of stations.

We have solved two example problems with 20 and 30 tasks, in addition to the above example. The results along illustrative example with 11 task above are given in Table 4. In the first row of

Workstation

Tasks

Workstation

1 2 3

1, 10, 11 2, 5, 6, 8, 9 3, 4, 7

15 16 15

each problem, only the priority 1 goal is considered, in the second row, priority 1 and 2 goals are considered, and in the third row, all of the goals are considered. For example, the third row of problem 1 and the third row of problem 2 correspond to the first and third sequence in Table 3, respectively. The review of Table 4 demonstrates that as the goal conditions and problem dimensions vary, both the computational performance and the ultimate solution vary. However some observations can be made on this limited number of example problems are as follows: the large iteration numbers are attributable to the relatively small number of workstation goal, cycle time goal and task load goal. For example, priority 2 and priority 3 of problem 1 took more iteration to solve than another priority goals of problems. When the goal 1 of problem 1 is satisfied, it is not possible to satisfy the cycle time goal and task load goal at the same time for this problem (if the number of workstation is satisfied as 3, cycle time cannot be 15, but it can be 16 for this problem. In the same way task load goal can be satisfied, if the cycle time is 16). Such a case exists in the second row of problem 2. If cycle time goal is satisfied first, task load goal can be satisfied, but number of workstation goal cannot be satisfied for the similar reason described above. Therefore, iteration numbers increase for these cases. In addition, if a goal of lower priority

Table 3 Sensitivity analysis on sequence of priorities for problem 1 Rotations

Priority 1

Priority 2

Priority 3

Unsatisfied goal(s)

Value of non-zero deviational variables

Cycle time

Number of workstation

Task load

1 2 3 4 5 6

P1 P1 P2 P2 P3 P3

P2 P3 P1 P3 P2 P1

P3 P2 P3 P1 P1 P2

P2, P3 P2, P3 P1 P1 P1 P1

CYC = 1, TSK = 1 CYC = 1, TSK = 1 IST = 1 IST = 1 IST = 1 IST = 1

16 16 15 15 15 15

3 3 4 4 4 4

4 4 3 3 3 3

584

H. G€ okc¸en, K. A gpak / European Journal of Operational Research 171 (2006) 577–585

Table 4 Problem solutions obtained by adding lower level goals Prob. no.

Number of tasks

Priorities

1

11

2

Goalsa

Iteration numbers

1

2

3

1. Number of workstation goal 2. Cycle time goal 3. Task load goal

S S S

U U U

U U U

101 >1000 >1000

11

1. Cycle time goal 2. Number of workstation goal 3. Task load goal

S S S

U U U

U S S

110 >1000 115

3

20

1. Number of workstation goal 2. Task load goal 3. Cycle time goal

S S S

S S S

U U S

144 264 417

4

20

1. Cycle time goal 2. Number of workstation goal 3. Task load goal

S S S

S S S

U S S

317 179 239

5

30

1. Number of workstation goal 2. Cycle time goal 3. Task load goal

S S S

U S S

U U S

296 448 369

6

30

1. Cycle time goal 2. Task load goal 3. Number of workstation goal

S S S

U S S

U U S

375 599 456

a

S: satisfied; U: unsatisfied.

is satisfied, then there is no need to consider the lower priority goal; such a case exists in the second row of problem 3 and third row in problem 4.

Acknowledgment This research was supported in part by the State Planning Organization (DPT) of Turkey Prime Ministry under grant number 2002K120250.

5. Conclusion References In this paper, a goal programming model for the simple U-line balancing (ULB) problem is suggested. The model is based on the integer programming formulation developed by Urban [1] for the U-line balancing (ULB) problem and the goal model of Deckro and Rangachari [2] developed for the traditional single model assembly line balancing (ALB) problem. The model developed here is the first multi-criteria decision making approach to the U-line version. A goal programming approach would seem to be a natural modeling tool and a more realistic approach for the ULB problem, since goal programming attempts to achieve a ‘‘satisfactory’’ rather than ‘‘optimal’’ solution due to conflicting goals. The suggested model provides increased flexibility to the decision maker in evaluating different alternatives.

[1] T.L. Urban, Note: Optimal balancing of U-shaped assembly lines, Management Science 44 (5) (1998) 738–741. [2] R.F. Deckro, S. Rangachari, A goal approach to assembly line balancing, Computers and Operations Research 17 (1990) 509–521. [3] S. Nahmias, Production and Operations Analysis, second ed., Irwin, 1993. [4] K. Oh, Expert Line Balancing System (ELBS), Computers and Industrial Engineering 33 (1997) 303–306. _ Baybars, A survey of exact algorithms for the simple [5] I. assembly line balancing problem, Management Science 32 (1986) 909–932. [6] S. Ghosh, J. Gagnon, A comprehensive literature review and analysis of the design, balancing and scheduling of assembly systems, International Journal of Production Research 27 (4) (1989) 637–670. [7] E. Erel, S.C. Sarin, A survey of the assembly line balancing procedures, Production Planning and Control 9 (1998) 414–434.

H. G€ okc¸en, K. A gpak / European Journal of Operational Research 171 (2006) 577–585 [8] D.A. Ajenblit, R.L. Wainwright, Applying genetic algorithms to the U-shaped assembly line balancing problem, IEEE World Congress on Computational Intelligence (1998) 96–101. [9] G.J. Miltenburg, J. Wijngaard, The U-line balancing problem, Management Science 40 (10) (1994) 1378–1388. [10] G.J. Miltenburg, D. Sparling, Optimal solution algorithms for the simple U-line balancing problem, Working paper, 1994. [11] D. Sparling, G.J. Miltenburg, The mixed-model U-line balancing problem, International Journal of Production Research 36 (2) (1998) 485–501. [12] A. Scholl, R. Klein, ULINO: Optimally balancing Ushaped JIT assembly lines, International Journal of Production Research 37 (4) (1999) 721–736. [13] K. Ohno, K. Nakade, Analysis and optimization of Ushaped production line, Journal of the Operations Research Society of Japan 40 (1) (1997) 90–104. [14] G.J. Miltenburg, Balancing U-lines in a multiple U-line facility, European Journal of Operational Research 109 (1998) 1–23. [15] G.J. Miltenburg, U-shaped production lines: A review of theory and practice, International Journal of Production Economics 70 (2001) 201–214.

585

[16] F. Guerriero, J. Miltenburg, The stochastic U-line balancing problem, Naval Research Logistics 50 (2003) 31–57. [17] R.E. Gunther, G.D. Johnson, R.S. Peterson, Currently practised formulations for the assembly line balancing problem, Journal of Operations Management 3 (1983) 209–221. [18] R.F. Deckro, Balancing cycle time and workstations, IIE Transactions 21 (1989) 106–111. [19] B. Malakooti, A multiple criteria decision making approach for the assembly line balancing problem, International Journal of Production Research 29 (1990) 1979– 2001. [20] B. Malakooti, Assembly line balancing with buffers by multiple criteria optimization, International Journal of Production Research 32 (1994) 2159–2178. [21] H. Go¨kc¸en, E. Erel, A goal programming approach to mixed model assembly line balancing problem, International Journal of Production Economics 48 (1997) 177– 185. [22] J.R. Jackson, A computing procedure for a line balancing problem, Management Science 2 (1956) 261–272. [23] A. Charnes, W.W. Cooper, Management Models and Industrial Applications of Linear Programming, John Wiley and Sons, New York, 1961.