Department of Distribution Management, National Taichung University of Science and Technology, No. 129, Section 3, Sanmin Road, Taichung 404, Taiwan
Received 31 January 2014; Revised 15 April 2014; Accepted 18 April 2014; Published 1 June 2014
Copyright © 2014 Rong-Chang Chen and Pei-Hsuan Hung. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
In response to radically increasing competition, many manufacturers who produce time-sensitive products have expanded their production plants to worldwide sites. Given this environment, how to aggregate customer orders from around the globe and assign them quickly to the most appropriate plants is currently a crucial issue. This study proposes an effective method to solve the order assignment problem of companies with multiple plants distributed worldwide. A multiobjective genetic algorithm (MOGA) is used to find solutions. To validate the effectiveness of the proposed approach, this study employs some real data, provided by a famous garment company in Taiwan, as a base to perform some experiments. In addition, the influences of orders with a wide range of quantities demanded are discussed. The results show that feasible solutions can be obtained effectively and efficiently. Moreover, if managers aim at lower total costs, they can divide a big customer order into more small manufacturing ones.
To best satisfy the requirements of customers and quickly respond to changes in the market environment, some manufacturers who produce time-sensitive products, such as fashion garments or high-tech goods, have established many manufacturing sites in other countries. Global manufacturing has become a competitive strategy for many manufacturers due to the cheaper labor and raw material costs overseas. The reduction of these costs, however, is generally accompanied by longer production times. How to assign customer orders rapidly to the most suitable sites while lowering costs and shortening production times has thus become an urgent issue for global companies.
The issue mentioned above is concerned with order assignment [1, 2] of companies with factories spreading over the globe. Companies have to consider a number of influencing factors . The first factor is related to customers’ requirements, which are generally diverse in quantity. Some customers have significant changes in the order quantities which range from tens of sample products to hundreds of thousands . If companies can respond to a wide range of quantities demanded, then their responsiveness  can be enhanced. Next, the production capacity of each plant should be considered. Due to the variation in production capacity at different plants, the processing time of an order is dependent on the plant to which it is assigned. The production capability of each site should also be considered. Production capability at each site significantly influences the fulfillment of orders. For instance, in some African countries, product quantities are limited by lower skill levels, whereas plants in some Asian countries have high-level skills to produce a variety of products. Some products requiring higher skill levels have to be produced at specific sites . Therefore, using a good scheme to select proper sites is very important for global companies. The last issue that a company should consider is its objectives. What a company pursues today has become multiple objectives instead of single ones. For manufacturers who produce time-sensitive products such as fashion apparel or high-tech products that typically have a short life cycle, the shortest total production time undoubtedly is the most important objective. The main objectives for a company are to pursue the lowest cost and the shortest total production time, in order to achieve the global optimization of their supply chain. Multiple objectives make the order assignment problem more difficult to deal with.
Multiobjective order assignment for companies with multiple plants worldwide is very complex. It belongs to the combinatorial optimization problem, which is known to be NP-hard . One effective scheme is required. A company expects to obtain practical plans soon to respond to fast changing business environment. Therefore, a heuristic algorithm such as genetic algorithm (GA) [7–11] which can provide feasible solutions in a short time is more suitable than an exact algorithm that can get optimal solutions but that also requires more computation time.
There have been a number of studies related to this issue [12–19]. However, some [13–16] focus little concern on globalized industry. On the other hand, some studies focus on single objective problems [12, 17, 18]. As mentioned before, in a now extremely competitive environment, the capability to achieve multiple objectives is a necessity for a company. To address the described issue, Chen et al.  considered a two-objective optimization in a global multiple-factory environment, but they did not take production time into consideration. This paper proposes an effective mechanism and uses genetic algorithm to find a solution. To prove the validity of the proposed method, real data from a famous company in Taiwan are used as the basis for some experiments. Plant-related factors such as production capacity, manufacturing costs, material costs, and transportation costs are considered. Subsequently, MOGA (multiobjective genetic algorithm) is employed to assign orders to optimally satisfy the objectives of a company, that is, the lowest total cost and the shortest production time. Some possible solutions are generated by using the genetic algorithm. One clear advantage of the genetic algorithm is that, by its very nature, we are able to produce a number of feasible solutions, thus facilitating discussion on the merits of various decisions and supporting multiobjective decision making . Therefore, the decision maker can choose the solution that best satisfies customers’ requirements and also achieves the company’s objectives.
The rest of this paper is organized as follows. Section 2 describes the problem. Section 3 contains the model and the method of solution. In Section 4, results and discussion are presented. Section 5 presents concluding remarks and suggestions for further studies.
2. The Problem
2.1. Problem Description
The order assignment issue can be briefly described as below. A company has a logistics center and many sites for production, as illustrated in Figure 1. Here, the number of production sites is represented as m. The logistics center aggregates customer orders demanded from anywhere in the world and divide them into several manufacturing orders (MO), the total number of which is expressed as n. Next, the company intends to assign n MOs to m production sites and once production is completed, the plant will deliver it to the place designated by customers. Main factors that a company in pursuit of “the lowest total cost” and “the shortest production time” should consider are customer demands, production capacity, production skill level, due date, manufacturing cost, material cost, and delivery cost. At the same time, companies would like to respond to a wide range of order quantities demanded, in order to gain the largest advantage under a competitive environment.
Figure 1: A schematic diagram of the deployment of a global garment company .
To simplify the problem, some assumptions are made.(1)A customer order can be divided into several MOs. Each MO produces only one product and can be fulfilled only at a manufacturing site.(2)Each product is composed of some kinds of raw materials. The related information on raw material is known.(3)Each kind of raw material is provided by only one supplier.(4)The production capacity of a manufacturing site is stable and constant. That is, the production capacity is known and fixed, but different manufacturing sites may have different capacities.(5)The production type is MTO (make to order). Thus, there is no inventory. The quantity demanded for each product is known; there is no stock and no production in advance.(6)Due dates of orders are known and fixed.(7)The material cost, manufacturing cost, delivery cost, and order delay cost are known. The mode of transportation is by sea or by land, so the transportation cost can be estimated. The inbound tax on raw material and inbound transportation cost are included in the material cost. Similarly, the manufacturing cost includes the labor cost and the manufacturing overhead. The delivery cost includes the outbound transportation cost and tariff.(8)The transportation modes from a raw material supplier to a manufacturing site and from a manufacturing site to the destination are known. Therefore, the transportation cost is known if the origin and the destination are given.(9)Lack of material is negligible.
For easy description, some symbols are defined as shown in abbreviation section.
The first objective that global companies take into account is the total cost, which can be expressed as follows:
Total cost = material cost (includes direct material cost, inbound tax, and inbound transportation cost) + manufacturing cost (includes labor cost and manufacturing overhead) + delivery cost (includes outbound transportation cost and tariff) + order delay cost:
Note that in (1), the final term is the cost caused by order delay. This cost arises in some industries such as the garment sector. In practice, some companies will be asked to pay a penalty if an order is delayed. For example, the penalty rate is about 3%–5% of the transaction amount for some garment companies. This term is related to due dates. Some might argue: why not using due dates (such as on-time delivery rate) as an objective? One advantage of using the delay cost over using the due date as an objective is that the former provides a more accurate calculation on delayed days. As an example shown in Table 1 and Figure 2, suppose that the number of MOs is 10 and the due date for each MO is 5 days. Two different solutions (E and F) are obtained. The on-time delivery rates for solutions E and F are 0.9 and 0.8, respectively, indicating that solution E is better than solution F. However, the total delayed days for solution E is 5 and for solution F is 3, conversely showing that solution F is better than solution E. For manufacturers who produce time-sensitive products such as fashion garments or high-tech goods, an objective based on the number of delayed days might be more suitable than one based on due dates.
Table 1: The comparison between due dates and delayed days based objectives.
Figure 2: Illustration of two different solutions for comparison. The dashed line indicates the due date.
Another important objective for global companies to consider is total production time. If an order can be finished within a shorter time, then the lead time can be reduced and the company has more time to deliver the products. For time-sensitive products, the achievement of this objective is a necessity:
The constraints to be considered are
Equation (3) requires each MO to be assigned to only one manufacturing site, while (4) requires that the necessary capacity to finish products must not be greater than the capacity of each manufacturing site. is the decision variable. As indicated in (5), is either 0 or 1.
3. The GA Structure
This paper employs MOGA as a tool to find solutions. Detailed description of the GA structure is introduced in the following.
(1) Encoding. Each chromosome represents a solution, which is comprised by some genes. To implement GA, chromosomes must be encoded first. A simple and efficient encoding method is used in this paper. The sequence of genes from left to right indicates the index number of MO. The value of a gene (alleles) stands for the index number of a manufacturing site. For example, MO “1” is assigned to site “2” and MO “2” is assigned to site “5,” as illustrated in Figure 3.
Figure 3: Representation of a chromosome.
(2) Initial Solutions and Calculation of Fitness Values. The initial population is generated at random. In general, the larger the population is, the wider the search range will be. A larger population is likely to obtain better fitness values. However, the computation time for a larger population is increased.
The evaluation of a solution is performed by calculation of the fitness value of a chromosome. In this paper, the calculation is based on the total cost and the total production time. Better fitness values are retained and the best ones are chosen as the Pareto solutions, which are nondominated by other chromosomes. An efficient scheme proposed by Fonseca and Fleming is called FFGA , as indicated in Figure 4. By this scheme, the evolutionary time can be reduced. Let Gi represent a chromosome at generation t which is dominated by individuals in the current generation. Then the rank of the individual at generation t can be expressed as 
Figure 4: Illustration of the FFGA algorithm.
FFGA sorts the fitness values of chromosomes in the population. Each chromosome is ranked by the number of chromosomes which dominate it according to the fitness values. The number plus one is set to be the rank of a chromosome. The more a chromosome is dominated by others, the larger value its rank is. In contrast, if a chromosome does not have others which dominate it, according to (6), it is assigned rank 1. The one which is not dominated by anyone is designated as rank “1” and is collected into the Pareto set; the one dominated by two chromosomes is designated as rank “3” (see chromosome A in Figure 4). This makes the ranking process of chromosomes more efficient and shortens the evolutionary time.
(3) Selection and Reproduction. The modified Roulette wheel selection method is applied to select chromosomes. First, all the chromosomes’ fitness values are calculated and then sorted. The larger the fitness value is, the lower the priority is. For example, if there are 20 chromosomes and their fitness values are 1 to 20, respectively, then the chromosome with a fitness value of 1 will have the probability of 20/(), the chromosome with a fitness value of 2 will have the probability of 19/(), and the like. In other words, superior parent chromosomes have more opportunities to be selected into next generation.
(4) Crossover. This study employs partially matched crossover to avoid repeating. As Figure 5 shows, two points of crossover are chosen at random, which will divide parent generations into three parts, respectively. The child chromosome will grab the first and third parts of parent chromosome 1 and the second part of parent chromosome 2. At the same time, the program checks whether the values of genes from parent chromosomes are repeated or not. If they are repeated, skip the repeated gene value and fill in a new value. This step will not end until all crossovers have been done.
Figure 5: Illustration of partially matched crossover.
(5) Mutation. This study adopts the insertion mutation method to mutate. A point is randomly chosen as an insertion point and a gene is chosen to insert. As Figure 6 shows, the sixth gene is chosen and the second position is an insertion point. The rest of the genes from and after the second gene are moved to the right. The insertion mutation method can avoid the repetition of a number, which represents an unfeasible solution.
Figure 6: Illustration of insertion mutation.
(6) Creating Next Generation. To create the next generation, the tournament selection method is used. A gene pool is set up to store chromosomes. Two chromosomes are then chosen at random and compared with each other. If the fitness value of a chromosome is superior to that of a counterpart chromosome, then the chromosome is stored into the pool and used to generate the child chromosome.
(7) Termination. A number of ways can be used to terminate the program. The termination condition in this study is the achievement of a preassigned number of evolution generations set by the user. If the generation number is reached, the program will stop running and the solutions will be output. To obtain better solutions, multiple trials are suggested if the initial population is generated randomly.
4. Results and Discussion
This paper employs MOGA to find solutions. In addition, the Brutal-force method (BFM, or exhaustion method), which can obtain the optimal solution, is used to evaluate the performance of the MOGA program. The comparison of these two methods is shown in Section 4.1. Influences of genetic parameters are discussed in Section 4.2. Next, the influences of plant amount and order amount on the order assignment are introduced. Section 4.3 discusses the results concerning orders with wide ranges of quantities demanded. Finally, the reassignment of orders is addressed.
The program was run in a PC with an operating system of Windows XP Professional SP2. The CPU is Intel Core 2 at 2.6 GHz and the RAM is 1 GB.
4.1. Data Input and Validation of MOGA
To evaluate the effectiveness of the proposed approach, real data from a famous garment company in Taiwan are used as a base to perform some experiments. The base case is set as follows: five garment plants and eight end products. The plants are in Taiwan (A and B plants), China, Vietnam, and the USA. Products are classified into four types: shirt, skirt, pants, and overcoat. Each one has two styles. Therefore, there are eight types of finished products, which are assigned numbers from one to eight, respectively. Input data of the numerical examples for the base case are shown in Tables 2, 3 and 4.
Table 2: Input data related to manufacturing orders for the base case.
Table 3: Input data related to manufacturing sites for the base case.
Table 4: Sites eliminated because of unsuitable production skill levels.
The data concerning MOs include its number, quantity demanded, due date, daily cost for delay, the arrival destination, and the index number of finished products. The plant-related data include production capacities and manufacturing costs. Each plant has a monthly capacity and a daily capacity.
For easy description, we designate the number of generation as , the population size as Pop, the crossover rate as , the mutation rate as Rm, and the coefficient of variation as . Each case was run 30 times to evaluate the GA program.
BFM is an exact algorithm that can obtain optimal solutions. If the result from MOGA is near or equal to that from BFM, then the correctness of MOGA developed in this study can be supported. On the other hand, computation time is one of the performance indices that can evaluate the efficiency of the approach. The shorter the computation time is, the faster a decision can be made.
As for genetic parameters, the generation numbers are changed from 50 to 500; the population sizes Pop are set to be 200 and 500. The crossover rate is set to be 0.5 and the mutation rate Rm is 0.05 at the base case. The results are summarized in Table 5. From experimental results we may find that MOGA can get good workable solutions. The accuracy for each case is over 96%, even to 100%. The accuracy is defined as (based on total cost):
Table 5: Comparison of MOGA results with those by BFM.
The comparison of the computation time between MOGA and BFM is shown in Figure 7. As the number of MO increases from 8 to 13, the computation times of MOGA and BFM differ increasingly. When the number of MOs is over 11, the difference rapidly increases. Though BFM can get optimal results, the required computation time exceeds 10 hours, as the MO number is over 13. When the number of MOs becomes larger, the computation time may be over a hundred days. In practice, managers hope to get a reasonable result in a short time. BFM cannot satisfy their needs. On the contrary, by using MOGA as an analytical tool, they can get good results within seconds. It is very efficient, making the order assignment mechanism more practical.
Figure 7: Comparison of the computation times between MOGA and BFM.
4.2. Influences of Genetic Parameters
There are four important genetic parameters when using MOGA: generation number, population size, crossover rate, and mutation rate. At the base case, there are ten MOs, eight types of products, and five plants. The crossover rate and the mutation rate are set to be 0.9 and 0.01, respectively. The number of generation is set to be 50, 100, 200, 300, and 500. The number of population is set to be 200 and 500. The MOGA program randomly creates an initial population. The results, therefore, are different by random nature. To investigate the performance of the MOGA program, each case was run with 30 trials.
When the generation number and population size equal and , it is easier to obtain good results by MOGA, as shown in Table 6. Generally, the coefficient of variation falls between 0.01 and 0.04, indicating that the MOGA program is stable. However, from Figure 8 we may see that the computation time for the latter is about triple that of the former. Thus, this study uses to perform the following tests.
Table 6: Variations of solutions with different crossover rates and different mutation rates.
Figure 8: Variations of computation times with different generation numbers and population numbers.
To understand the influences of the crossover rate and mutation rate, the generation number is fixed at 500 and the population size is fixed at 200. Crossover rates are then changed from 0.5 to 0.9 with an increase of 0.1 each time; mutation rates are changed from 0.01 to 0.05. When the mutation rate is 0.05, the results are quite stable; when the crossover rate is 0.5 and the mutation rate is 0.05, coefficients of variation are between 0.006 and 0.028. As compared to the result from BFM, the accuracy is 98.07% to 99.98%, showing that these parameter values can give quite good results.
4.3. Influences of Changes in Plant Number and Order Quantity
As Figure 9 illustrates, the total cost increases when the total production time decreases. However, the average cost per plant decreases as the total production time decreases. When the plant number is changed, there is no great change in the coefficient of variation, which falls between 0.0018 and 0.0146. This indicates that changes in plant number do not affect the stability of the GA program.
Figure 9: Variations of the optimal total costs and total production times with the number of plants.
Mathematical Reviews (MathSciNet): MR2194325
Digital Object Identifier: doi:10.1111/j.1468-0262.2006.00655.x
Mathematical Reviews (MathSciNet): MR2468559
Digital Object Identifier: doi:10.3982/ECTA6474
Mathematical Reviews (MathSciNet): MR2796550
Digital Object Identifier: doi:10.1198/jasa.2010.ap09490
Mathematical Reviews (MathSciNet): MR1440056
Zentralblatt MATH: 0883.62033
Digital Object Identifier: doi:10.1093/biomet/83.4.934
Mathematical Reviews (MathSciNet): MR623835
Zentralblatt MATH: 0461.90069
Digital Object Identifier: doi:10.1007/BF01584237
Mathematical Reviews (MathSciNet): MR950993
Digital Object Identifier: doi:10.1007/BF02288324
Mathematical Reviews (MathSciNet): MR183532
Zentralblatt MATH: 0141.21802
Mathematical Reviews (MathSciNet): MR2751473
Digital Object Identifier: doi:10.1111/j.1541-0420.2008.01111.x
Mathematical Reviews (MathSciNet): MR1939365
Digital Object Identifier: doi:10.1198/000313001753272268
Mathematical Reviews (MathSciNet): MR2758424
Zentralblatt MATH: 1194.62089
Digital Object Identifier: doi:10.1214/09-AOAS315
Project Euclid: euclid.aoas/1280842143
Mathematical Reviews (MathSciNet): MR2369759
Mathematical Reviews (MathSciNet): MR2196160
Digital Object Identifier: doi:10.1111/j.1541-0420.2005.00356.x
Mathematical Reviews (MathSciNet): MR2899649
Digital Object Identifier: doi:10.1198/tast.2011.08294
Mathematical Reviews (MathSciNet): MR2368419
Digital Object Identifier: doi:10.1002/sim.2711
Mathematical Reviews (MathSciNet): MR1092986
Project Euclid: euclid.ss/1177012031
Mathematical Reviews (MathSciNet): MR1329181
Zentralblatt MATH: 0828.62044
Digital Object Identifier: doi:10.1214/aos/1176325770
Project Euclid: euclid.aos/1176325770
Mathematical Reviews (MathSciNet): MR1543589
Digital Object Identifier: doi:10.2307/2589374
Mathematical Reviews (MathSciNet): MR1899138
Mathematical Reviews (MathSciNet): MR1963391
Zentralblatt MATH: 1073.62586
Digital Object Identifier: doi:10.1198/016214502753479329
Mathematical Reviews (MathSciNet): MR2561612
Zentralblatt MATH: 05639441
Mathematical Reviews (MathSciNet): MR2913356
Digital Object Identifier: doi:10.1198/jcgs.2011.09219
Mathematical Reviews (MathSciNet): MR2345534
Zentralblatt MATH: 05191550
Digital Object Identifier: doi:10.1198/016214506000001059
Mathematical Reviews (MathSciNet): MR2751434
Digital Object Identifier: doi:10.1198/jasa.2009.0016
Mathematical Reviews (MathSciNet): MR2750570
Zentralblatt MATH: 1205.62180
Digital Object Identifier: doi:10.1198/jasa.2009.tm08470
Mathematical Reviews (MathSciNet): MR874114
Mathematical Reviews (MathSciNet): MR2528819
Digital Object Identifier: doi:10.1198/016214507000001247
Mathematical Reviews (MathSciNet): MR2741812
Digital Object Identifier: doi:10.1214/09-STS313
Project Euclid: euclid.ss/1280841730
Mathematical Reviews (MathSciNet): MR2240099
Digital Object Identifier: doi:10.1002/sim.2344
Mathematical Reviews (MathSciNet): MR1641246
Mathematical Reviews (MathSciNet): MR738341
Zentralblatt MATH: 0532.62087
Digital Object Identifier: doi:10.1093/biomet/71.1.191
Mathematical Reviews (MathSciNet): MR2959630
Digital Object Identifier: doi:10.1111/j.1541-0420.2011.01691.x
Mathematical Reviews (MathSciNet): MR2867507
Digital Object Identifier: doi:10.1198/tas.2011.11072