G Model
CIRP-1527; No. of Pages 4 CIRP Annals - Manufacturing Technology xxx (2016) xxx–xxx
Contents lists available at ScienceDirect
CIRP Annals - Manufacturing Technology jou rnal homep age : ht t p: // ees .e lse vi er . com /ci r p/ def a ult . asp
Multi-objective allocation of customized orders to production-line networks Robert H. Schmitt (2)*, Max Ellerich, Sean Humphrey Laboratory for Machine Tools and Production Engineering WZL, RWTH Aachen University, Aachen, Germany
A R T I C L E I N F O
A B S T R A C T
Keywords: Production planning Algorithm Multi-objective optimization
Introducing a synchronized flow by batching customized orders has proven an approach well-suited to enhancing the performance of individual production. Thus a new class of companies can benefit from concepts, such as the pull-principle, which as of yet has been exclusive to series-production. A critical step in this context is the allocation of orders with varying processing-sequences to a given network of production-lines. In this paper a multi-objective branch-and-bound approach is presented, which provides a set of Pareto-optimal allocations per order, taking logistic-effort and throughput-time into consideration. The presented optimization is validated and its effect on real-world productionperformance is evaluated. ß 2016 CIRP.
1. Introduction In order to meet and exceed changing individual customer expectations regarding product features companies need flexible production systems [1]. Furthermore increasing a production system’s flexibility can lead to higher product quality [2]. Thus companies must combine customer centricity with efficiency by striving for simultaneously low production costs, high quality, short lead-times and easy customizability in their production system. Since the introduction of Ford’s Model T the principle of synchronized production has proven to allow for highly efficient large scale production. Thus a common approach is the attempt to increase the flexibility of such synchronized mass-productionsystems. An example of this is mass customization, which enables large-volume production of customized products that serve individual customer needs with near mass production efficiency [3]. The disadvantage is however, that generally customers must still operate within a company-defined solution space. Synchronized make-to-order production tackles the issue from a different direction by enhancing the efficiency of already highly flexible production systems. Furthermore, this principle enhances a production system’s process-quality, as the flows of material become more transparent, deterministic and thus controllable. However, prior to a successful practical implementation of this concept on the factory floor several preparatory steps must be performed. One of these is the periodic allocation of customized orders to a given set of static but modular production-lines, which will be the focus of this paper. This paper first gives a brief overview of the state of the art in make-to-order production synchronization (Section 2). Afterwards
* Corresponding author. E-mail address:
[email protected] (R.H. Schmitt).
the specific research gap regarding order allocation is derived (Section 3). Section 4 presents a Branch-and-Bound based algorithm to solve the problem of finding the optimal allocation of orders to synchronized production lines. The algorithm’s validation in a tool manufacturing process is the focus of Section 5. Finally Section 6 provides a brief summary and conclusion. 2. Synchronized make-to-order production The concept of a synchronized make-to-order production was pioneered by Gruss [4] and expanded upon by the WZL of RWTH Aachen [5,6]. Today the concept has already been successfully applied by several German tool manufacturing companies. Current work seeks to transfer the underlying principle to other industries with a strong focus on product customizability. To date there are however surprisingly few publications on the topic aside from the work published by the pioneers. In synchronized make-to-order production orders with similar processing steps are scheduled and transported together along predetermined production-lines. In practice the consolidated transport of orders is mostly realized using wooden pallets. This leads to minimized logistics effort, as orders are transported in groups from one machine to another. A global takt – in practice a duration of one day has proven suitable – drives the simultaneous transport of all pallets to their next respective stations. This has the advantage of deterministic order-processing and therefore easier order-scheduling, which is discussed in depth in [6]. The predetermined production-lines, which are driven by the global takt are henceforth referred to as takt-lines. Aside from deterministic order-processing, products produced on takt-lines also possess a deterministic throughput-time. With an exemplary global takt-duration of one day an order with eight processing steps manufactured on a takt-line has a throughput-time of eight days.
http://dx.doi.org/10.1016/j.cirp.2016.04.118 0007-8506/ß 2016 CIRP.
Please cite this article in press as: Schmitt RH, et al. Multi-objective allocation of customized orders to production-line networks. CIRP Annals - Manufacturing Technology (2016), http://dx.doi.org/10.1016/j.cirp.2016.04.118
G Model
CIRP-1527; No. of Pages 4 2
R.H. Schmitt et al. / CIRP Annals - Manufacturing Technology xxx (2016) xxx–xxx
Thus the combination of a pull-triggered scheduling with the system-inherent deterministic throughput-time per order allows for high process-quality and thus improved adherence to duedates and achievement of high machine utilization. Both the synchronized make-to-order production system and a tailored production-scheduling have been in focus of research in recent years [6]. Preparatory steps in synchronized production which precede the production scheduling have however received little attention to-date. These comprise the derivation of process-steps from component-drawings, the company-specific layout of the takt-lines and an allocation of these process-steps to a given takt-line setup. With computer-aided process planning (CAPP), a concept to derive technological operations in their chronologically required order from a product model and a list of available machines is described e.g. in [7]. However, there are no papers published regarding the definition of takt-line networks in a synchronized make-to-order production system, neither have any approaches to automatically allocate orders to takt-lines been published as of yet. Thus, in practice these steps are carried out manually. As the takt-line-layout is revised on a long-term-basis, a manual analytical approach as presented by [6] has proven acceptable in practice. The orders’ process-step-derivation and the takt-line allocation are however executed on a short-term basis by employees working in production-planning. The high frequency of task execution in industrial practice thus necessitates an automated solution. The focus of this paper will be on the allocation of orders to a given network of takt-lines. 3. Problem description of order allocation With the automation of the allocation of orders to a given network of takt-lines, this paper focusses on one of the main problems when implementing the takt-line based synchronization principle to a make-to-order production. The results will enable additional companies to utilize the synchronization principle and extend the concept’s scope of application by reducing the daily effort of manually allocating orders to process-lines. Furthermore it will lay the foundation for research into the automated definition of takt-line. The allocation of an order to takt-lines seeks to find a sequence of takt-lines in the given network which covers the order’s required process steps. To this end, the order’s process steps for manufacturing need to be known. In practice these are often provided by production engineering. Furthermore, the chosen layout of taktlines, which is usually first designed when the production system is installed, is required. This includes the number and composition of takt-lines. Generally speaking, a takt-line consists of several taktstations, which are passed through by a takt-pallet sequentially. Each takt-station is able to perform certain manufacturing steps. Figuratively speaking, machines’ takt-stations contain and thus represent machines on the factory floor. While choosing only a small number of takt-lines promotes lean logistics processes, a large number of shorter takt-lines is able to cover a larger percentage of the order spectrum. The latter thus leverages the production-principle to a greater extent. To resolve this trade-off, Ziskoven suggests the introduction of modular lines, which are connected to a production-line network via interfaces [6]. The concept allows for parallel takt-stations, i.e. one taktstation consists of several takt-substations. The chaining of lines to allow for order’s processing is possible and furthermore orders are allowed to skip lines’ takt-stations when not required (blankspaces). Practice has shown that to increase the system’s flexibility even further, it is advisable to allow orders to receive selective processing in individual takt-stations without requiring takt-lines. This can be realized by making use of so-called individualprocessing-steps. Although advantageous, the application of individual-processing steps should rather be the exception than the norm, since it contradicts the principle of a transparent organization and grouped transport of orders.
Given an appropriate takt-line layout and the orders’ required process steps, a formal definition of the allocation problem is now presented: Let an order O consist of m sequential process-steps SO,i with i 2 {1, . . ., m}. Furthermore, a takt-line Tk consists of n sequential or parallel takt-stations representing the line’s process-steps ST,j with i 2 {1, . . ., m}. All p takt-lines in the given network of takt-lines are contained in the takt-line-container CT so that O ¼ fSO;1 ; SO;2 ; . . .; SO;m g T k ¼ fST k; 1 ; ST k; 2 ; . . .; ST k; nk g; C T ¼ fT 1 ; T 2 ; . . .; T p g
8 k 2 f1; . . .; pg
The possibility of orders to pass stations during individualprocessing-steps can be understood as a takt-line with only one takt-station. Therefore this case is not considered separately. For an order O, a set CA of allocations A needs to be identified, where C A ¼ fA1 ; A2 ; . . .; Aq g: Each allocation A consists of a sequence of takt-lines, which are contained within CT. Concatenated, these lines’ stations must cover all the order’s required process steps in the correct sequence. Since in the worst case, one takt-line could be used to represent each process step, this would then result in a theoretical maximal number of pm allocations in CA. An example of the application of modular takt-lines is presented in Fig. 1, where one order is allocated to a given modular takt-line-setup. Two possible allocations are derived as examples: in the first allocation, the order passes two lines, accepting three blank spaces (S5 on line A, S1 and S3 on line B); the second allocation features only one blank space (S5 on line A), and two individual processing steps. Both allocations have advantages and disadvantages. The first allocation only requires two logistical loading operations (one for loading the order onto the first line, the second one for changing from line A to line B) but receives processing for eight takts. However, the second allocation needs three loading operations, occupies two single processing steps (which usually require higher logistical effort) but completes processing within only 6 takts. Evidently, finding an optimal allocation is not a unidimensional optimization problem. Thus a means of describing an allocation’s ‘‘goodness’’ is presented, which consists of three dimensions: the number of logistical loading operations, the number of individualprocessing-steps and the number of blank spaces. Defining these dimensions renders allocations comparable. To ease the calculation for a multidimensional optimum, the search can be limited to Pareto-optimal solutions. This set of solutions must then contain the best-suitable allocation per order. The introduction of Pareto-fronts to describe and present a set of optimal solutions has proven to be suitable for multi-objective optimization problems. The first reference of a Pareto-frontier can be traced back to 1980 (see [9]). Today it is broadly used within multi-objective optimization, e.g. in production scheduling (see [10]) and in production-technology related research (see e.g. [11] or [12]). Applying this principle to the problem at hand results in a
Fig. 1. Example setup with order-allocation.
Please cite this article in press as: Schmitt RH, et al. Multi-objective allocation of customized orders to production-line networks. CIRP Annals - Manufacturing Technology (2016), http://dx.doi.org/10.1016/j.cirp.2016.04.118
G Model
CIRP-1527; No. of Pages 4 R.H. Schmitt et al. / CIRP Annals - Manufacturing Technology xxx (2016) xxx–xxx
three-dimensional Pareto-front per order. Since the elements comprising this front must by definition contain the best result, the optimal allocation can be picked from this set in accordance with predefined company preferences. A two dimensional simplification of such a front can be seen in this concept’s validation in Section 5 (Fig. 2). 4. Branch and Bound The presented allocation problem’s solution space grows exponentially with the number of process steps required by an order. To allow for efficient use of computational resources – bearing in mind that in practice, manufacturers can sometimes handle hundreds of orders simultaneously – a structured method to solving the allocation-problem is necessary. Thus, an appropriate approach to solving this discrete linear optimization problem needs to be chosen. Literature research reveals a plethora of optimization algorithms, which can be classified as either heuristic or non-heuristic. Most common representatives of heuristic algorithms are simulated annealing, derived from Boltzmann equations [13], genetic and evolutionary algorithms, broadly found in multi-objective optimizations in combination with Paretofronts and gradient decent, applicable for finding global minima of convex functions. A non-heuristic meta-algorithm for finding the exact solution of an optimization problem is Branch and Bound. In combination with a Pareto-based comparison of solution-candidates, this method is a good fit for the presented optimization problem both in terms of solution goodness and computational complexity. The basic idea underlying Branch and Bound is to split a problem into sub-problems (Branch) and consider in the search for the optimal solution only those sub-problems that are able to yield a solution that is better than a current lower-bound solution (Bound). Thus in the Branch step the takt-line allocation problem is split into sub-problems or branches. In the next step, solutions for the newly spawned sub-problems are evaluated by comparing them to all previously calculated sub-problem solutions. If a new solution Pareto-succeeds an established solution, the pre-existing solution and thus branch is eliminated. If the new sub-solutions are inferior to an established solution, they are eliminated for future algorithm iterations (Bound). This serves to continuously trim the solution-space size. The application of the Branch and the Bound steps is repeated until the newly spawned sub-problems are sufficiently simple to allow for direct solution. When the algorithm terminates the Pareto-front contains candidate allocations (refer to the right side of Fig. 1). Finally the optimal allocation-solution is chosen from this set. 4.1. Branch First, the decomposition of the allocation-problem into subproblems needs to be defined. The allocation of an order’s full complement of process steps to process steps represented by taktlines reflects the initial allocation-problem. The allocation of one takt-line to the order is hereby defined as a sub-problem or branch within the decision tree. The allocation starts commencing from an order’s first process step and – depending on the case – zero, one or multiple takt-lines are able to execute this step. Thus zero, one or multiple sub-problems are created. If one or more takt-lines represent a match, the comparison is repeated with a growing subset of process steps. With each extension a comparison with all takt-lines is performed. If an extension yields no additional subproblems or the subset of process steps is equal to the superset, the extension terminates. While this describes the branch step on a macroscopic level an important task on the microscopic level lies in the determination of whether or not a takt-line is capable of executing a subset of process steps (as was the case in Fig. 1). Prior to focusing on the mechanisms underlying this procedure the requirements are first defined: (1) the procedure must be tolerant regarding differing lengths of process step subsets and
3
takt-lines, (2) when evaluating assignability, the procedure must take the chronological order of both takt-stations in a takt-line and process-steps in an order into account, (3) the procedure must unidirectionally allow consecutive order process-steps to be represented by non-contiguous takt-station sequences and (4) the procedure must consider that both, takt-station and order processsteps may consist of several alternative elements (for an example see the second station of Line A in Fig. 1). Literature research yielded suitable results in the field of string alignment methods, where a character-wise comparison of strings is performed. By formulating an order’s process step sequence and a takt-line’s takt-stations as string characters, established string similarity metrics can by applied. Determining two strings’ Hamming Distance is one such measure to determine the similarity of two strings. An issue however lies in the requirement of strings to be of equal lengths. As this is contradictory to the first requirement, calculating the Hamming Distance does not lead to the desired results. Another related and widely described problem is the Longest Common Substring Problem, where the longest common substrings of several strings are identified. Here strings being compared do not have to be of the same length. However, this approach does not consider blank spaces within the strings. Thus the contained substrings have to be identical. This however conflicts with the second requirement. This leads to the Longest Common Subsequence Problem (LCS), which loosens the restrictions of the Longest Common Substring Problem and allows for the identification of subsequences i.e. non-consecutive characters within the original sequences. In other words, the problem allows for the insertion or deletion of characters in both of the compared sequences at unit costs. Thus the LCS is inherently symmetric [14] which does not conform to the requirement of unidirectionality articulated in the third requirement. A more detailed overview on string-comparing methods can be found in [14]. This finally leads to the Edit Distance, which extends the concept of LCS by adding a substitution operation and much more importantly, allows operations to be weighted. When searching for string similarity it is thus possible to exercise control, over which operations are permissible by applying infinite costs to those, which are not. This modification is also described in detail by [14]. To calculate Edit Distance of two process-station sequences, the Wagner–Fischer algorithm based on the dynamic programming paradigm was chosen [15]. While the Edit Distance fulfils the first three requirements, it does not by design allow for the possibility to considering parallel process steps (see requirement four). One possibility to remedy this situation is to adjust the method of determining equality. Thus, a process step and a takt-station are considered compatible, if at least one taktsubstation is capable of performing the process step. With this extension, the Wagner–Fischer as a well-established solution can be chosen and applied to the allocation problem. 4.2. Bound After new branches have been generated, the bound step limits the decision tree’s size and therefore allows the algorithm to run with acceptable performance. Thus this step serves to dampen the exponential growth in complexity with increasing process step count. To achieve this effect, candidate branches which cannot possibly lead to an optimal result by being expanded are terminated. Therefore branches which are Pareto-succeeded by any other branch are removed since these cannot possibly contribute to finding the best possible solution. The problem when comparing solutions is that even if a solution succeeds another with respect to one or even all Pareto-criteria, this does not necessarily have to apply to potential future childbranches. This issue can however be ameliorated by limiting comparison of branches to those, which have identical unallocated process-step counts. The reason for this lies in the fact, that the chosen takt-line allocation of e.g. the first k process steps does not
Please cite this article in press as: Schmitt RH, et al. Multi-objective allocation of customized orders to production-line networks. CIRP Annals - Manufacturing Technology (2016), http://dx.doi.org/10.1016/j.cirp.2016.04.118
G Model
CIRP-1527; No. of Pages 4 R.H. Schmitt et al. / CIRP Annals - Manufacturing Technology xxx (2016) xxx–xxx Comparison of allocaon results at differing company-requirements
4.3. Allocation selection Based on the three objectives for the Pareto-optimum definition, the optimal solution can be identified by choosing the best allocation candidate from the Pareto-front in light of companies’ individual requirements. One way of rendering candidates comparable is by weighting the individual objectives and calculating a weighted distance from each point along an order’s sphere-shaped Pareto-front to the coordinate system’s origin. 5. Case study The allocation algorithm was applied to the production planning of a German tool-manufacturing company, which had already completed the implementation of a synchronized maketo-order production. The allocation of orders to the given set of takt-lines had to date been performed manually. The company operated a total of six conventional takt-lines, each containing three to 32 process steps (takt-substations) clustered to between three and 18 takt-stations. There were a total of 51 stations on the factory floor, all of which are covered by the set of lines. For the algorithm’s validation, 243 already manually allocated orders were taken into account. Up to 35 process-steps were required per order with an average and median of 17.3 and 16 steps respectively. The algorithm was implemented in a C# application and was executed on an Intel i7 processor with 8GB of memory and running Windows 7. With this setup, the complete allocation took 1.34 s with all jobs being allocated. A two-dimensional simplification of the three-dimensional Pareto-front of allocated orders as well as the number of Paretooptimum solutions per order is shown in Fig. 2. In the left diagram, various order’s allocations are represented by points connected by a curve. For the order represented by the green curve red circles mark the Pareto-front consisting of four allocation candidates. Results range from an allocation without blank-spaces and 19 queued lines up to an allocation with seven blank spaces and only two required processing lines. The right histogram shows the distribution of the number of Pareto-optimal allocations per order. Examination shows that most orders have three allocation candidates, whereas there are also albeit few orders with up to 35 allocation candidates. In order to illustrate varying parameterization’s effect on the selection of allocations, Fig. 3 shows its impact on an allocation’s three aforementioned dimensions of ‘‘goodness’’. The four presented allocations differ in the maximum number of blank spaces allowed per order – increasing from three to infinity. As a result, the numbers of occupied lines per order simultaneously decrease significantly, while the number of blank-spaces and the throughput time increase.
Fig. 2. Allocation results of use-case data.
20 18 16 14 12 10 8 6 4 2 0
Average number of lines per order
30 25 20 15 10 5
Throughput me per order in takts
affect the allocation of the remaining steps. Thus restricting comparison of branches to the case described above will ensure branches which might lead to the overall best solution will never cut.
Number of Lines occupied per order
4
0
max. 3 blank spaces
max. 5 blank spaces
max. 10 blank spaces
inf. blank spaces
9.86
6.21
5.11
4.63
Average number of Isolated lines per order
8.84
5.02
3.69
2.65
Average throughput me per order
19.01
20.20
21.46
27.51
Fig. 3. Allocation results at changing parameterization.
Compared to the prior manual allocation, the algorithmic allocation’s results are almost identical regarding the indicators. For the parameterization of ten accepted blank-spaces, manual allocations came with on average 5.18 lines occupied, 3.73 isolated lines per order at an order’s average throughput time of 21.44 takts. 6. Conclusion and outlook This research focuses on the optimization of a synchronized make-to-order production planning. The approach proposes a new way of allocating customized orders to a given set of takt-lines by presenting an order-allocation algorithm. This algorithm is based on a multi-criteria Branch and Bound, using a Pareto-front in order to determine the best suitable solution. To determine the compatibility of takt-lines and orders’ process-steps, the Wagner–Fischer algorithm to determine the Edit-Distance was used as a baseline and modified. The results from this research have been validated in a case study to illustrate the allocation’s applicability to industrial practice. It has been shown that the algorithm can replace the manual allocation of orders to takt-lines. Future research will focus on the integration of CAPP, to allow for a seamless and dynamic integration from component-drawing to production-scheduling for synchronized make-to-order production systems.
References [1] Wiendahl H-P, ElMaraghy HA, Nyhuis P, Za¨h MF, Wiendahl H-H, Duffie N, Brieke M (2007) Changeable Manufacturing – Classification, Design and Operation. Annals of the CIRP 56(2):783–809. [2] Colledani M, Tolio T, Fischer A, Iung B, Lanza G, Schmitt R, Va´ncza J (2014) Design and Management of Manufacturing Systems for Production Quality. Annals of the CIRP 63(2):773–796. [3] ElMaraghy H, Azab A, Schuh G, Pulz C (2009) Managing Variations in Products, Processes and Manufacturing Systems. Annals of the CIRP 58(1):441–446. [4] Gruß R (2010) Zweistufiges Taktphasenmodell zur Steigerung der Prozesseffizienz in der Unikatfertigung auf Basis der Lean Production, Dissertation, Cottbus. [5] Zwanzig F (2010) Taktung der Unikatfertigung am Beispiel des Werkzeugbaus, Dissertation, Aachen. [6] Ziskoven H (2013) Methodik zur Gestaltung und Auftragseinplanung einer getakteten Fertigung im Werkzeugbau, Dissertation, Aachen. [7] Nonaka Y, Erdo¨s G, Kis T, Kova´cs A, Monostori L, Nakano T, Va´ncza J (2013) Generating Alternative Process Plans for Complex Parts. Annals of the CIRP 62(1):453–458. [9] Harstad RM, Marrese M (1981) Implementation of Mechanism by Processes. Journal of Economic Behavior and Organization 2(2):129–151. [10] Murata T, Ishibuchi H, Tanaka H (1996) Multi-objective Genetic Algorithm and its Applications to Flowshop Scheduling. Journal of Computers and Industrial Engineering 30(4):957–968. [11] Roy R, Azene YT, Farrugia D, Onisa C, Mehnen J (2009) Evolutionary Multiobjective Design Optimisation with Real Life Uncertainty and Constraints. Annals of the CIRP 58(1):169–172. [12] Roy R, Tiwari A, Corbett J (2003) Designing a Turbine Blade Cooling System Using a Generalised Regression Genetic Algorithm. Annals of the CIRP 52(1):415–418. [13] Johnson DS (1983) The NP-completeness Column: An Ongoing Guide. Journal of Algorithms 13(3):502–524. [14] Navarro G (2001) A Guided Tour to Approximate String Matching. ACM Computing Surveys 33(1):31–88. [15] Wagner RA, Fischer MJ (1974) The String to String Correction Problem. ACM 21:168–178.
Please cite this article in press as: Schmitt RH, et al. Multi-objective allocation of customized orders to production-line networks. CIRP Annals - Manufacturing Technology (2016), http://dx.doi.org/10.1016/j.cirp.2016.04.118