2005_AutomaticGenerationofAssemblySystemSolutions

download 2005_AutomaticGenerationofAssemblySystemSolutions

of 8

Transcript of 2005_AutomaticGenerationofAssemblySystemSolutions

  • 7/30/2019 2005_AutomaticGenerationofAssemblySystemSolutions

    1/8

    32 IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING , VOL. 2, NO. 1, JANUARY 2005

    Automated Generation of AssemblySystem-Design Solutions

    Robert F. Webbink and S. Jack Hu

    Abstract Any assembly system-design problem which consistsof generating system congurations and assignment of tasks to thestations has a set of solutions. The number of feasible solutionsmay be staggering, even for products consisting of a relativelysmall number of parts assembled on a small number of stations.As the size of the product and the assembly system grow, it maybecome difcult to develop a complete set of design solutions forin-depth analysis. Here an automated method is described bywhich the complete sets of system congurations and assemblysequences may be generated, and feasible solutions, consisting of a matched element from each set, can be rapidly derived. Thesesolutions may then be tested for various performance metrics,

    some of which may not be expressed mathematically.

    Note to Practitioners In designing assembly systems, the layoutof stations and the assignment of assembly tasks to these stationsare important design problems. This paper proposes a set of al-gorithms to quickly generate the congurations of the assemblysystem and assign tasks to the congurations. Once the matchingof tasks to the congurations is complete, the performance of thesevarious design alternatives, such as productivity, can be evaluatedto allow selection of congurations with the best performance.

    Index Terms Assembly, conguration, sequence.

    I. INTRODUCTION

    T RADITIONALLY, most assembly lineshave been entirelyserial in nature, particularly in processes where the se-quence of the products is of importance. This is particularlycommon among products such as automobiles, where each in-dividual product is highly customized. A predictable, steady se-quence in part numbers is crucial over sections of the line inorder to assure that the customized jobs are produced correctly,e.g., that the correct type of engine meets the correct body typeof the correct color at the right time. If for any reason, the se-quence is disrupted and the wrong part or option is installed in avehicle, the products may no longer meet the customers spec-ications. This and other factors have historically led to the se-

    lection of long serial production lines as the primary type in use.Theserial congurationconsists of a single line of workstations,with exactly one part ow path through the system [Fig. 1(a)].

    Manuscript received October 24, 2002; revised July 14, 2003. This paperwas recommended for publication by Associate Editor C. Chu and EditorS. Hutchinson upon evaluation of the reviewers comments. This work wassupported by the National Science Foundation CAREER Award under Grant9625200.

    R. F. Webbink was with the Department of Mechanical Engineering, Uni-versity of Michigan, Ann Arbor, MI 48109 USA. He is now with Proctor andGamble, Cincinnati, OH 45202 USA (e-mail: [email protected]).

    S. J. Hu is with the Department of Mechanical Engineering, University of Michigan, Ann Arbor, MI 48109 USA (e-mail: [email protected]).

    Digital Object Identier 10.1109/TASE.2004.840072

    Fig. 1. Various sample system congurations.

    However, recent trends and technological advances have al-tered this approach. The introduction of resequencing buffersand the use of automated guided vehicles made it possible to re-arrange the sequence of the individual assemblies at almost anypoint in the assembly line. Thus, if one branch of the systemfails and goes ofine for a certain length of time, the sequencecould be restored further down the line to ensure that the partsare still in their expected sequence for later operations.

    As a result of these developments, system congurationsother than serial lines have begun to be implemented. Thesenew congurations include the parallel and hybrid congura-tions. In the parallel conguration [Fig. 1(b)], each workstationreceives unprocessed parts and completes all assembly tasks.Thus, if such a system consists of workstations, it has exactly

    possible ow paths.The hybrid congurations can be subdivided further into the

    simple hybrid and complex hybrid classications. The simple-hybrid congurations consist of two types: parallel lines and se-rial groups. The parallel-lines conguration [Fig. 1(c)] consistsof a group of independent serial lines operating in parallel. Theserial-groups conguration [Fig. 1(d)] is similar to that of a se-

    rial conguration. However, the difference is the implementa-tion of several stations working in parallel in the place of whatwould be a single station in the serial design. In this case, all theproduct streams are remixed before being sent to the next posi-tion on the overall line. These two simple-hybrid congurationsare among the most commonly used alternative congurationsin various industries.

    The last type of conguration is that of the complex-hybridclassication [Fig. 1(e)]. In the simple-hybrid congurations,or in simple blends of the two types of simple-hybrid cong-urations, a line of symmetry can be drawn down the center of the block diagram for the system conguration. In complex-hy-brid congurations, this line of symmetry does not exist. Of all

    1545-5955/$20.00 2005 IEEE

  • 7/30/2019 2005_AutomaticGenerationofAssemblySystemSolutions

    2/8

    WEBBINK AND HU: AUTOMATED GENERATION OF ASSEMBLY SYSTEM-DESIGN SOLUTIONS 33

    con guration types, this is probably the least implemented, butmay prove useful for multiproduct lines, as well as possibly pro-viding for useful backup systems and producing higher qualityor lower cost products.

    Despite the implementation of these alternative system con-gurations, their impact on system performance is not well un-

    derstood. Some work has been done in analyzing the impactof some simple-hybrid con gurations on some system perfor-mance parameters, such as throughput. Dallery and Stecke [ 2]and Hillier and So [ 5] examined the impact of workload allo-cation in simple-hybrid con gurations, while Iyama and Ito [ 9]examined the allocation of buffers in a prede ned serial-groupscon guration, all to optimize system throughput. Kim and Yano[10] extended this problem to include the number of worksta-tions as a variable. Furthermore, several works, including Mag-azine and Stecke [ 11 ] and Green and Guha [ 4], noted that delib-erate imbalance of the production system can lead to improvedperformance.

    However, these works focus primarily on a limited number

    of performance metrics which may be derived mathematically,which is not possible in all cases. One such example is thequality of a sheet-metal assembly as de ned by its six-sigmavariation, which can only be estimated using nite-elementmethods because of the compliance in the parts. As these fac-tors may have con icting trends with changing con guration,as demonstrated by Hu, et al. [8], it is important to considermultiple performance criteria, as a singular de nition of systemperformance can lead to the implementation of a system whichis not responsive to market uctuations, produces poor-qualityproducts, or suffers from other problems. Therefore, whatis desired is a method by which to derive a complete set of con gurations which may then be evaluated for all performancemetrics. In addition, different con gurations will require dif-ferent assembly sequence and task assignments to the stations.Thus, the assembly system-design solution will consist of asystem con guration and corresponding assembly sequenceand task assignment. Furthermore, it is desirable that thesesolutions include the option of complex-hybrid con gurations,in addition to the previously studied simple hybrids.

    Generations of these solutions can easily be divided into threesubtasks: generation of system con gurations, generation of as-sembly sequences, and matching of sequences with con gura-tions and appropriate task assignment.

    This paper presents a set of algorithms designed to rapidly

    derive the set of feasible solutions in these three steps. Thesesolutions may then be tested later to determine any performancemetric.

    II. SYSTEM -CONFIGURATION GENERATION

    The method developed for generating system con gurationswill be referred to as the distribution method. This approachrelies on the grouping corollary, which can be brie y stated asfollows.

    For any given system con guration of either serial, par-allel, or hybrid design which does not allow rework or thebypassing of workstations, the system con guration can beviewed as a set of combinations of stations or groups of sta-tions, all of which are of either parallel or serial design.

    Fig. 2. Grouping corollary example.

    Fig. 3. Example of the difference in parallel/serial distributions.

    This corollary can be demonstrated easily through the four-workstation example in Fig. 2. Through evaluation of thecon guration from its deepest level, it is clear that the groupingcorollary holds for the con gurations of interest. Therefore,the con gurations can be generated through a simple reversalof the grouping concept, which is, in effect, a distribution of workstations.

    Therefore, a basic algorithm for generating con gurationsis readily developed. Beginning with workstations, all pos-

    sible methods of distributing these stations in a serial manner,in clusters, and as single workstations are determined. These arerecorded, and then any con guration where clusters of work-stations still exist are reexamined. These clusters are then re-distributed in a parallel fashion, recording all possible permuta-tions. The process then switches back to distribution in a serialmanner, and alternates between serial and parallel until all con-gurations are fully distributed into single workstations and noclusters exist.

    An additional feature that is necessary to note is the differ-ence that occurs when dividing a group of workstations in se-rial fashion, as opposed to division in a parallel fashion. More

    speci cally, once a cluster of workstations has been dividedinto a number of subgroups, those subgroups have to be ar-ranged. For example, a three-workstation cluster can be subdi-vided into a cluster of two and a single station as one option. If the cluster is being divided in a serial fashion, the manners inwhich these groups can further be arranged must also be con-sidered. That is, (1 2) must be considered as well as (2 1). Forthe parallel distribution, these two arrangements are indistinct.This is clearly demonstrated in Fig. 3.

    One nal note is the difference in the serial distribution therst time the clusters are subdivided and any subsequent serialsubdivision. In any subsequent subdivision, the maximum sizeof any cluster resulting from the subdivision must be strictly lessthan the size of the cluster being subdivided. In the rst distribu-tion, this restriction does not hold. This is necessary to keep the

  • 7/30/2019 2005_AutomaticGenerationofAssemblySystemSolutions

    3/8

    34 IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING , VOL. 2, NO. 1, JANUARY 2005

    Fig. 4. Distribution method block diagram.

    Fig. 5. (((11) 1)((11) 1)) con guration.

    full set of workstations as a single cluster to be divided in aparallel fashion in the second subdivision, thus allowing for the

    generation of the parallel, parallel lines, and many complex-hy-brid con gurations.

    With these additional constraints on the generation algorithmdened, the entire algorithm may be fully developed. A block diagram for the algorithm appears in Fig. 4. The only task re-maining for implementation of the algorithm is to develop a no-tation for storing the con gurations. In the scheme developedfor this task, a full description of a con guration contains onlycharacters from the set {1,(,)}. A 1 is the simple representa-tion of a machine, while a parentheses, either open, or closed, isa tag identifying a switch between a parallel distribution and aserial distribution. On the highest level, all machines or groups

    of machines are in a serial con guration. Thus, the string 1 1 11 1 1 represents the serial con guration.. The rst set of paren-theses then represents a switch from a serial to a parallel distri-bution. Any machines or groups of machines within that set of parentheses are then distributed in a parallel fashion. Thus, thestring (1 1 1 1 1 1) represents the parallel con guration. Further-more, a second set of parentheses within the rst would mark aswitch back to a serial con guration. These parentheses sets canbe nested as deep as necessary to describe a given con guration.Thus, the string (1 1 1 1) (1 1) would be a serial-groups con gu-rationconsisting of four machines in parallel, connected in serialfashion to a group of two machines in parallel. For a slight vari-ation, the (((11) 1)((11) 1)) con guration (Fig. 5) of two groupsof three machines in parallel, each composed of two machinesin parallel feeding one machine in serial, can also be constructed

    Fig. 6. Demonstration of the distribution algorithm.

    Fig. 7. Increase in the number of con gurations with an increase in number of workstations.

    as a demonstration of the versatility of this notation. Using suchnotation, any con guration can be represented by such a string.

    For further clarity and to serve as a demonstration of the algo-rithm, the results for a three-machine con guration are given inFig. 6. Careful analysis con rms that every feasible con gura-

    tion is represented by exactly one string produced by the gener-ation algorithm, and all feasible con gurations without rework or bypassing are derived. It can further be veri ed that the algo-rithm produces the complete set for anynumber of workstations,not just for those demonstrated.

    Thus, using this simple algorithm, all possible con gurationsof workstations can be generated in no more than passesof the algorithm. While no formula exists to predict the exactnumber of con gurations, the true value lies somewhere be-tween and (seeFig. 7). Clearly, the number offeasiblesolutions is exceedingly large for even relatively small numbersof workstations.

    While this method clearly derives all con gurations, an al-ternative approach to storing these systems proves to be usefulin determining matched pairs of con gurations and sequences.In this form, an integer matrix is used (Fig. 8) with the rowsrepresenting the workstations receiving input, and the columnsrepresenting the workstations releasing their output. Therefore,in its most basic form, the element then represents whetheror not material ow exists from station to station . To buildthis representation, a value of 1 is inserted if this ow exists, andis 0, otherwise. Furthermore, there must be some representationfor the beginning of the line and the end of the line. Without this,there would be no way of determining the beginning or the endof the line, as workstation number is unrelated to its position inline. Therefore, extra rows and extra columns are needed to rep-resent the entry and exit points of the assembly line. One extra

  • 7/30/2019 2005_AutomaticGenerationofAssemblySystemSolutions

    4/8

    WEBBINK AND HU: AUTOMATED GENERATION OF ASSEMBLY SYSTEM-DESIGN SOLUTIONS 35

    Fig. 8. Base matrix for con guration storage.

    row and one extra column are necessary to accomplish this task.The row corresponds to the exit of the assembly line, and thecolumn corresponds to the entry point. However, to allow fora more logical ordering of the rows and columns while main-taining the setup described above, so an element correspondsto workstation sending output to itself (rework), a redundantcolumn and row are added for the exit and entry points, respec-tively. As these are redundant, the entries for these values arepreset, and this does not increase the complexity of the problemto any degree.

    III. A SSEMBLY -SEQUENCE GENERATION

    The second portion of any assembly system-design solutionis an appropriate assembly sequence for the product that will bebuilt using a system with an appropriate con guration. Methodsfor deriving these sequences have been well-developed and ex-tensively documented. Based on the algorithm of DeFazio andWhitney [ 3], assembly sequences can be generated and storedas a simple text string which can be read as the order in whichoperations are performed.

    What is needed, in addition, is an ability to store and track the sets of operations for which simultaneous or same-stationcompletion is either mandatory or optional. In the event thatsame-station or simultaneous completion is mandatory, this setof operations, say {A}, is effectively replaced by the set {A },which consists of a single operation. Alternatively, if this is onlyoptional, then both the sequences where they are performed sep-arately and together must be generated.

    To denote these options, a simple notation is used. If the setof operations {A,B,C} must be performed simultaneously or onthe same station, then the sequence is enclosed within brackets,or [ABC]. Note that in this case, any sequence which differsonly by the replacement of [ABC] by [BAC], or any similar re-arrangement of the operations which are bracketed, is redun-dant. Likewise, if this simultaneous or same-station completionis optional, then the set of operations is enclosed by a set of parentheses, or (ABC). Unlike the case where this is manda-tory, the replacement of (ABC) by (BAC) is not redundant, andall permutations of the set must be included in the nal set of sequences. This is a result of the fact that this same-station com-pletion is only optional. Therefore, the set (ABC) could be per-formed on the same station, or be broken into three stations, inwhich case, the sequence ABC differs from BAC. A summary

    TABLE IPRECEDENCE RULES

    of these constraints and previously existing constraints is givenin Table I.

    As a nal note, for the simpli cation of the generation task,and for a reduction in the size of the generated set, it is assumedthat for any sequence in which the case (AB) exists, if the op-erations are not performed simultaneously or on the same sta-tion, they must be strictly sequential. That is, if (AB) is givenas a rule, then no sequence is permitted containing the subse-quence ACB. This is of importance to the task of sequence and

    con guration matching, as the allowance of such intermediatesteps makes ensuring that streams of product merging from par-allel stations have reached the same level of completion (i.e.,have had the same tasks performed). Furthermore, such exclu-sion arguably does not eliminate any desired sequences, as inmost cases, any tasks that may be completed together should atleast be completed sequentially.

    IV. M ATCHING SYSTEM CONFIGURATIONAND ASSEMBLY SEQUENCE

    Given a set {C} of feasible system con gurations, and a set{S} of feasible assembly sequences, the set of feasible solutions{F} is given by{F}={C} {S}, where each {F} is de nedby some combination C S of a singlesystem con guration and some sequence which it is capable of performing. Clearly, this set {F} can range dramatically in size,from being empty to having as many possible solutions as theproduct of the number of con gurations and the number of as-sembly sequences.

    Determination these elements can be divided into two smallersteps. The rst of these is to select a con guration {C} anda sequence {S}, and determine if the con guration is ca-pable of performing the given sequence. Once this has been de-termined, the second phase of the task is to determine which

    tasks in the sequence are assigned to which workstation. Whilecompleteness would dictate that every possible solution{F} should be generated, it is not necessary to do so in

    the search for the optimal con guration. Certain feasible solu-tions can be shown to be inef cient, and can, therefore, be ne-glected. This approach is taken in the rst step of the matchingprocess, where it is determined whether a con guration can per-form a sequence, through a process which will be described asroute counting.

    The concept of route counts is simple. Any given con gura-tion has a set of ow paths along which the product ows. If thecon guration is serial in design, then there exists only a singleow path. However, if the con guration consists of worksta-tions in parallel, there are distinct ow paths. For each of theseow paths, the product will pass through a certain number of

  • 7/30/2019 2005_AutomaticGenerationofAssemblySystemSolutions

    5/8

    36 IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING , VOL. 2, NO. 1, JANUARY 2005

    Fig. 9. Example con guration for route counts.

    TABLE IIDERIVATION OF A ROUTE -COUNT SET

    stations. This number, in turn, is de ned to be the route count.Clearly, however, this number may vary from one ow path tothe next. As a result, for any given con guration, there is a set{Z}, whose elements consist of all the possible route counts fora given system con guration. For example, in Fig. 9, there arefour possible ow paths (1-2-4-5, 1-2-6, 3-4-5, 3-6). The rstof these ow paths, 1-2-4-5, passes through four stations, thesecond two paths pass through three stations each, and the nalpath passes through only two stations. Therefore, the set of routecounts for this con guration is given by {Z} = {2, 3, 4}.

    Computation of the set {Z} is straightforward and simple,given a con guration stored in the notation of the distributionmethod. Starting from the deepest nested section of the con g-uration, the string can be analyzed to determine if it representsa cluster of workstations in serial or in parallel. If the cluster

    is in parallel, then the material ows through no more than oneworkstation, and the entire cluster can be replaced by a count,offset from the remaining portion of the con guration by a no-tation, such as [1]. If the cluster is in serial, then material owsthrough a number of workstationsequal to that in thecluster (say

    ), so the cluster is replaced by [ ]. This examination processis then repeated at the next level, with a slight modi cation. If the next highest level shows a string such as ([2] [1]), where twoworkstations in series are in parallel with a third, then the wholegroup is replaced by a notation containing a list of all the pos-sible counts, or [1, 2]. In a serial cluster, such as [2] [1], thereis only one ow path available, so the result is the sum of the

    two counts, or [3]. Similarly, if the string would have shown [1,2] [1], the result would have been all the possible sums of theelements in the rst bracket with that in the second, or [2, 3].Repetition of this process until all the clusters are evaluated willresult in the set {Z}. This is clearly demonstrated in Table IIusing the con guration in Fig. 9, which is represented by thestring ((1 1) 1) ((1 1) 1).

    In addition to the set {Z}, it is necessary to have similar infor-mation on the candidate sequence , in order to determine if thecon guration is capable of performing the sequence. This setof sequence counts, {P}, consists of all the possible numbers of steps that the sequence may use, and is likewise simple to gen-erate from the string representing a given assembly sequence.

    In any given sequence, the only portion which needs any trueanalysis is that of the optionally simultaneous or same-station

    operations, such as (ABC). Such a sequence can clearly occupya range of numbers of workstations. One option is for all threetasks to be performed independently on three different stations.A second obvious option is to perform all three tasks on a singlestation. And a nal option is to perform two of the three taskson one station, and the third task on a second station. This ex-

    ists in two cases, AB on one station, C on the next, or A on onestation, BC on the next. The case of AC on one station and Bon the next is neglected, as it would be derived from a sequencesuch as (ACB). This split of the tasks into this nal option isnecessary, however, to guarantee the derivation of some feasiblesolutions. While it may result in the duplication of some solu-tions, those duplications can easily be eliminated. Therefore, anoption such as (ABC) gives possible counts of {1,2,3}. When allof these options are evaluated, and the remaining standalone orstrictly simultaneous/same-station operations are replaced with1s, a string such as (ABC)DE will now appear as {1,2,3}1 1.This string can then be evaluated just as in the case of the con-guration counts, computing all possible sums, and will resultin the set {P}, which in this example is {3,4,5}.

    With {P} and {Z} generated, it is clear that a con gurationis capable of performing a given sequence if there exists some

    Z {P} such that . That is to say, if there is amannerof performing a givensequencesuch that it requires owthrough stations, and there is some ow path through the con-guration that takes the material through a number of stationsgreater than or equal to this number, then the con guration iscapable of performing the sequence.

    However, the capability of a given con guration to perform agiven sequence is no guarantee of ef cient operation. It is clearthat if there exists some Z {P} such that , and

    furthermore, is the smallest element in {Z} and the largest in{P}, then the con guration will have idle workstations. For ex-ample, if the smallest is 4, then the product ows through fourworkstations at the minimum. However, if the maximum is 3,then the sequence can use at most three workstations, meaningat least one workstation, and possibly more, are guaranteed tobe idle at all times. These idle workstations could be sold orremoved from the system, as the capital investment in them isbeing wasted. As a result, this solution is inef cient and shouldbe dropped from consideration. The case where the same con-guration is analyzed with the idle workstations removed canstill be considered as part of the set of feasible con gurationsusing less than the maximum allowed number of workstations.

    This result can be broadened to include other cases than thatwhere is strictly less than . This expanded rule governing thefeasibility and ef ciency of a given con guration and sequencepair will be referred to as the matching subset rule.

    Matching Subset Rule: A given con guration {C} is ca-pable of performing a given sequence {S} if there existssome Z {P} corresponding to these selections, suchthat . However, the con guration is capable of ef cientlyperforming the given sequence only if {Z} {P}. Conversely, if {Z} {P}, then there exists some con guration , with an equalor fewer number of workstations, which may perform the se-quence with greater ef ciency. This may occur either throughan increase in productivity or a decrease in the capital cost of the system.

  • 7/30/2019 2005_AutomaticGenerationofAssemblySystemSolutions

    6/8

    WEBBINK AND HU: AUTOMATED GENERATION OF ASSEMBLY SYSTEM-DESIGN SOLUTIONS 37

    Fig. 10. Alternative con gurations with greater ef ciency.

    For example, if the system from Fig. 9 is selected along withthe sequence (AB)CD, then the matching subset rule comesinto effect. The route-count set for this con guration is givenby {Z}={2,3,4}. Similarly, the count for the given sequence isgiven by {P}={3,4}. Therefore, {Z} {P}, and the combina-tion of the two selections is an inef cient system. This can bedemonstrated by examining the obvious assignment of tasks tostations. In this example, station 1 is assigned task A, station 2task B, station 3 performs both A and B, station 4 task C, station5 task D, and station 6 is idle. The clear solution to improvingcapital expenditures in this case would be to remove worksta-tion 6 from the con guration. However, ef ciency gains can bemade through increased productivity using an alternate con g-uration, as well. When including station reliability, the expectedproductivity can be de ned as , where is thethroughput of the th state of the system, and is the proba-bility of being in that state. Each state of the system is de nedsimply by a unique combination of all or some of the stationsbeing operative or having failed. For the con guration given,assuming a station reliability of 0.9 and a processing rate in allstations of one task per minute, the con guration will have anexpected productivity of 0.8563 parts per minute. Quick exami-nation of several alternatives shows that multiple con gurationsexist which produce higher throughput with the same amount or

    even fewer workstations (see Fig. 10).Given a system con guration and an assembly sequence

    which satisfy the Matching Subset Rule, the nal phase of thematching process is to determine the exact allocation of tasksto workstations. In some cases, this is a trivial task. However,some con gurations offer multiple ways of applying a givenassembly sequence. If all elements of {F} are desired, then eachassignment of tasks must be generated. However, the majorityof the time, there is one particular assignment of tasks that willproduce the best throughput for the system. Instead of gener-ating all the possible solutions, only one assignment for each

    pair is derived, satisfying the requirement to maximize

    throughput. This can be done using an integer programmingmethod similar to what is used in a generalized assembly-linebalancing problem. It still is undetermined if the vertices of the polytope which will be de ned by the equations governingthe assignment will be integers. If this is the case, then simplelinear programming techniques can be applied.

    It is possible to use the basis of the work by U gurda g et al.[13] to derive a set of equations and relations to allow an integerprogramming technique to derive the optimum allocations of tasks to workstations. That is, 0 1 variables, may be de nedsuch that they are equal to one if workstation performs task . In order to allow this, each workstation must be assigned an

    index number, and each assembly task must likewise be givena representative number. Assigning a workstation an index issimple to do, as it is simply one less than the column number of

    the station in the matrix form of the con guration. Furthermore,as the sequence must proceed as given, indexes may be assignedto tasks simply by the order in which the sequence is given.Hence, the sequence (AB)CD results in A=1, B=2, C=3, D=4.Thus the variable corresponds to the whether or not station3 performs task B.

    Naturally, an objective function needs to be de ned. As thisneeds to be expressed mathematically, a logical choice is tomaximize the throughput of the system, which is slightly morechallenging when including complex-hybrid con gurationsthan in the case of the previously studied simple hybrids.

    The rst step in the calculation of throughput is to determinethe minimum theoretical cycle time for a given station, given acurrent allocation of tasks. If the are given in a matrix [X],and the individual task cycle times in a row vector of length, then the minimum cycle times for each station are given by

    . These cycle times correspond to the maximum rate of pro-duction, assuming that a workstation is never starved. This rateof production, however, will not be achieved in practice for allworkstations, as some station will most likely serve as a bot-tleneck, and subsequent stations will be blocked occasionally.Therefore, to calculate the total production rate, it is necessaryto calculate what the input rates are to each station, and take themaximum of the cycle time and this interarrival time as the ef-fective cycle time for the station, and proceed down the line tothe stations which send their output to the exit of the line.

    This task, however, is not entirely trivial. Analyzing serialgroups and complex-hybrid con gurations require a more in-tensive algorithm than the simple mathematical approach whichhas been used for simple-hybrid con gurations. The generalprocess is the same whether or not station reliability is consid-

    ered, the only difference being the number of times the systemneeds to be analyzed (this is equal to the number of possiblestates in the system, or if there are stations).

    The process is theoretically simple. Each state of the systemis essentially a problem that needs to be analyzed individually.Using the values given by the previous calculation of worksta-tion cycle times, , the production rate for a given system con-guration can be calculated relatively easily. If the string repre-senting thesystemcon guration is used, with thestation numberproceeding from the leftmost in the string increasing to the rightin sequence, then the inverse of the cycle times can besubstituted for the station number. Then, proceeding from thedeepest nested set, these values can be evaluated. If the set beingevaluated is parallel in nature, it can be replaced with the sum of the throughput rates. On the other hand, if it is serial in nature, itcan be replaced with the minimum of the throughput rates. Thisproceeds, working outwards until the system is fully evaluated.The resulting value is the net production rate for the given stateof the system. Other states of the system canbe evaluated simplyby replacing the throughput rate of any nonfunctional worksta-tions with a zero, and proceeding as before.

    As an example, the con guration given in Fig. 11, repre-sented by the string ((((1 1) 1) 1) 1) 1, can perform the sequence(ABC)D. If this sequence is assigned to give station 1 task A,station 2 task B, station 3 tasks A and B, station 4 task C, sta-tion 5 tasks A B and C, and station 6 task D, and the times tocomplete these tasks are 1 s for A, B, and C, and 0.2 s for task

  • 7/30/2019 2005_AutomaticGenerationofAssemblySystemSolutions

    7/8

    38 IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING , VOL. 2, NO. 1, JANUARY 2005

    Fig. 11. Example system con guration.

    TABLE IIIEXAMPLE THROUGHPUT CALCULATION

    D, then the station cycle time vector will be given as (1, 1, 2, 1,3, 0.2). Calculation of the net throughput for the state when allstations are operating then proceeds as in Table III. As can beseen, the throughput for this state is 1.33 parts per minute. Allother states for the system can be evaluated similarly to calcu-late the expected throughput of the system.

    The maximization of this throughput constitutes the objec-tive function, leaving the generation of constraints as the re-maining step before task assignment can proceed. In the pre-vious research, the only constraints were that each task is as-signed exactly once, and that precedence constraints are held.

    In this case, the precedence constraints need to be applied, asthe sequence of operations must adhere to the sequence in the

    solution pair being examined. However, the constraint thateach task is assigned only once does not hold. This would holdif the line is serial, or parallel lines, which can be modeled asa serial line. Similarly, if the line were serial groups or par-allel in design, and tasks were assigned to parallel groups, thisconstraint would hold. However, for complex-hybrid con gura-tions, this constraint does not hold, and is eliminated. The addi-tional constraints needed are as follows: no duplication of taskson any single ow path through the system, and what is calledthe source combination rule.

    The source combination rule constraint is fairly simple. Thatis, every product owing into any single station must have hadthe same tasks performed on it, regardless of its source. Despitethe simplicity of the rule, tracking the ow in a con guration toensure this constraint is met is not trivial. Using the distributionmethod s string-based representation of a system con guration,it is dif cult to track all the ow paths and therefore ensurethat the source combination rule holds for all stations. This issigni cantly easier to do based on the matrix representation of a con guration, however.

    If thematrix representation of a system con guration is taken,and all diagonal elements set to zero, constraints are relativelysimple to derive (note that this works only for cases without re-work, which is not a concern here). If,for each station , the sum

    is taken, the result is the number of tasks performed at

    the station. As the assembly sequence is not allowed to alter,if the number of tasks performed at all previous stations is thesame regardless of source, then the source combination rule issatis ed. Therefore, the ow matrix can be used to check thisrather easily. If the unit values in the matrix are taken and re-moved, leaving an empty value in the matrix, the matrix can

    be back lled using the data for the number of tasks performedin each station to check for compliance. The rst step in thisprocess is to take all columns that have blanks in the last, orexit, row, and ll those blanks with the total number of tasksthat have to be performed in the assembly process. All of thesecolumns should now be complete and have no remaining blanks.At this point, any complete column may be chosen for exam-ination. If column is chosen, the rst nonzero value in thiscolumn is taken as the number of tasks which are completedwhen the product leaves the station. Therefore, if the number of tasks completed in this station, , is subtracted from thisvalue, the result should be the number of tasks completed whenthe product enters the station. Therefore, any blank values in the

    th row should then be set to this number. The examined columnis then tagged as being evaluated, and a new completed columncan be chosen. If at any point, a completed column or row hasmultiple nonzero entries which are not equal, then the sourcecombination rule has been violated. Therefore, the process re-peats until either a violation is detected or all columns corre-sponding to workstations have been examined. Note that thesame process can be used examining rows, starting with any rowwhich has a blank entry in the rst, or entry, column, and pro-ceeding in the same fashion, only examining rows and applyingthe results to the columns.

    The bene t of this approach to developing a constraint for

    the source combination rule is that it also serves as an effectivemeans to ensure that all tasks are completed in the given assign-ment. When all the blank values have been lled in, complete-ness of the assembly can be determined simply by checking therst column in the matrix. If this column has any nonzero en-tries, then one of two things must be true. If any value is nega-tive, then that shows that at some point on the line, tasks wereduplicated. On the other hand, if any value is positive, then thatindicates that some tasks were not performed. Either case is aclear violation, and results in rejection of the given task assign-ment.

    The nal set of constraints needed is that of ensuring thatprecedence is maintained. Ensuring that theorder of tasks is keptis relatively simple. If task is assigned to station , then task

    must be assigned to either station , if this is allowed, orto all stations whose output ows into station . It can be shownrather trivially that this results in the following constraints:

    Therefore, if the ( )th task is performed at station , the rstleft-hand term is 1, and the second becomes 0, as the previouschecks prevent duplication. In this case, the second term on theright-hand side becomes 0, and therefore, we have ,and the constraint holds. If the task is not performed at station

  • 7/30/2019 2005_AutomaticGenerationofAssemblySystemSolutions

    8/8

    WEBBINK AND HU: AUTOMATED GENERATION OF ASSEMBLY SYSTEM-DESIGN SOLUTIONS 39

    , then all must be equal to one for all stations whoseoutput ows to station . Here represents the truncated owmatrix, with the rst and last columns and rows removed (theentry and exit references). Note that this holds only if rework and bypassing are not present. Thus, the second term on theleft-hand side tells how many of the stations owing into station

    perform task . The right-hand term then simpli es to thenumber of stations whose output ows into station . We knowthese must be equal, and hence, the constraint. This constraintsimpli es to

    Othernecessary constraintsneeded are for samestation/simulta-neous operations, and constraints on the values of the terms.The latter is simple, as 0,1 . The former is simpleto derive by hand from the given assembly sequence, as

    if operations and must be performed onthe same station, according to the given sequence. Similarly, if

    they must be performed on separate stations, .With these constraints, it is possible to get a task allocation

    that gives a maximum throughput for each pair. This com-pletes the generation of a complete set of assembly system-de-sign solutions. Each pair so derived is one element of the com-plete setof feasible solutions, which maythen be evaluated morein depth on an individual basis for other performance metrics,such as product quality, market responsiveness, and others, notall of which may be mathematically formulated and incorpo-rated into the traditional optimization framework.

    V. CONCLUSION

    Previous research has studied extensively the task of solvingassembly system-design problems, however, no attempts havebeen made at incorporating optimality criteria that cannot beexpressed mathematically, nor have any included the option of complex-hybrid con gurations. Here, we have presented a set of algorithms designed to generate a complete set of feasible solu-tions, including those of the complex-hybrid type, in order toallow for later testing for all possible optimality criteria. Thisshould allow for the inclusion of metrics not previously ad-dressed in assembly-line balancing problems, and thus lead to ahigher probability of selecting the optimal solution.

    REFERENCES[1] D. F. Baldwin, T. E. Abell, M. C. M. Lui, T. L. De Fazio, and D. E.

    Whitney, An integrated computer aid for generating and evaluating as-sembly sequences for mechanical products, IEEE Trans.Robot. Autom. ,vol. 7, pp. 78 93, Feb. 1991.

    [2] Y. Dallery and K. E. Stecke, On the optimal allocation of servers andworkloads in closed queueing networks, Oper. Res. , vol. 38, no. 4, pp.694 703, 1990.

    [3] T. L. De Fazio and D. E. Whitney, Simpli ed generation of all me-chanical assembly sequences, IEEE J. Robot. Autom. , vol. RA-3, pp.640 658, Dec. 1987.

    [4] L. V. Green and D. Guha, On the ef ciency of imbalance in multi-facility multi-server service systems, Manage. Sci. , vol. 41, no. 1, pp.179 187, 1995.

    [5] F. S. Hillier and K. So, On the simultaneous optimization of serverand work allocations in productionline systems with variableprocessing

    times, Oper. Res. , vol. 44, no. 3, pp. 435 443, 1996.[6] L. S. Homem de Mello and A. C. Sanderson, A correct and completealgorithm for the generation of mechanical assembly sequences, IEEE Trans. Robot. Autom. , vol. 7, pp. 228 240, Apr. 1991.

    [7] D. S. Hong and H. S. Cho, Generation of robotic assembly sequenceswith consideration of line balancing using simulated annealing, Robotica , vol. 15, pp. 663 673, 1997.

    [8] S. J. Hu, K. Stecke, and R. F. Webbink, Analysis of various assemblysystem con gurations with respect to quality and productivity, Univ.Michigan, Ann Arbor, Tauber Manuf. Inst. Tech. Rep., 2001.

    [9] T. Iyama and S. Ito, The maximum production rate for an unbalancedmulti-server ow line system with nite buffer storage, Int. J. Prod. Res. , vol. 25, no. 8, pp. 1157 1170, 1987.

    [10] Y.-D. Kim and C. A. Yano, Impact of throughput-based objectivesand machine grouping decisions on the short term performance of exible manufacturing systems, Int. J. Prod. Res. , vol. 35, no. 12, pp.3303 3322, 1997.

    [11] M. J. Magazine and K. E. Stecke, Throughput for production lines withserial work stations and parallel service facilities, Perform. Eval. , vol.25, pp. 211 232, 1996.

    [12] J. L. Nevins and D. E. Whitney, Assembly research, Automatica , vol.16, no. 6, pp. 39 57, 1980.

    [13] H. F. U gurda g, R. Rachamadugu, and C. A. Papachristou, Designingpaced assembly lines with xed number of stations, Eur. J. Oper. Res. ,vol. 102, pp. 488 501, 1997.

    [14] T. W. Weber, Theory of manufacturing system con gurations, Ph.D.dissertation, Univ. Michigan, Ann Arbor, 1997.

    Robert F. Webbink received the B.S. degree fromthe California Institute of Technology, Pasadena, in1997, and the M.S. and Ph.D. degrees from the Uni-versity of Michigan, Ann Arbor, in 1999 and 2003,respectively.

    His research interests are in assembly and man-ufacturing systems. He has published papers in as-sembly system design. He is currently with Proctorand Gamble, Cincinnati, OH.

    S. Jack Hu received the B.S. degree from TianjinUniversity, Tianjin, China, in 1983, and the M.S. andPh.D. degrees from the University of Michigan, AnnArbor, in 1986 and 2000, respectively.

    He is currently a Professor of Mechanical Engi-neering and the Director of the Program in Manu-facturing at the University of Michigan. He conductsresearch and teaches courses in assembly, manufac-turing systems, and statistical methods. He has pub-lished more than 100 papers in refereed journals of professional conferences.

    Dr. Hu is a Fellow of the American Society of Mechanical Engineers(ASME).