Keywords

Introduction

Effective material distribution is a vital issue to maintain the operations of the assembly lines where many parts are assembled. So as to satisfy the customer expectations, parts of the products differentiated considerably, and the distribution of several types of parts at the right time and in the right quantities has become more difficult. Therefore, the coordination of the material supply to the assembly lines requires an advanced system design, so as to minimize both inventory holding and material handling costs at the same time, without causing any parts shortage. The design of such a milk-run system requires that the delivery quantities to each customer are determined, the routes are constructed and the timing of delivery to each customer is decided, simultaneously. However, the cycle time decision affects the delivery quantities, and this influences the route construction since the capacity of the vehicles is fixed (Satoglu and Sahin 2013). So, scheduling and routing problems are coupled to each other. In some former studies, in-plant milk-run systems are designed without considering the component variety of the products of the assembly lines (Satoglu and Sahin 2013). When the parts-feeding literature is reviewed (Kilic and Durmusoglu 2015), there are many papers that deal with kitting and Kanban-based part feeding. However, the design of a milk-run system comprised of routing and scheduling simultaneously is still a challenge.

So, in this study, a Single-Vehicle Milk-Run Mathematical Model is developed for periodic distribution of multiple parts (components) to the stations of the assembly lines. Besides, for designing a multi-vehicle milk-run system, a Matheuristic Algorithm is proposed that iteratively solves the single vehicle milk-run model and includes additional vehicles in the solution, until all nodes are assigned to a route. This Matheuristic Algorithm is a unique aspect of this study.

Another contribution of this study is that parts to be distributed by milk-run routes are distinguished from those to be directly delivered. Hence, direct delivery and route construction are considered, simultaneously, during the design. The proposed methodology is employed and validated by designing the material supply system of a real washing machine assembly system.

The paper is organized as follows: In Section “Literature Review”, the relevant literature is reviewed. Later, the single-vehicle mathematical model (SV-MM) of the multi-part milk-run system is explained. Section “The Solution Methodology”, the Solution Methodology and the proposed Matheuristic Algorithm that employs the multi-part SV-MM are explained. Then, the real application of the proposed Algorithm in a washing machine manufacturing plant is described. The results of the Matheuristic and its performance are discussed, in the fifth section. Finally, the Conclusion is presented.

Literature Review

In this section, the papers that especially deal with the Kanban-based in-plant milk-run systems are discussed. Other part feeding policies such as kitting and sequencing are beyond the scope of this study.

Vaidyanathan et al. (1999) are the pioneers of the parts Just-in Time (JIT) parts delivery problem for the assembly lines. They pointed out that the delivery quantities at each demand node are a function of the route taken. Battini et al. (2009) developed an integrated framework for parts feeding to the mixed-model assembly lines by considering central and decentralized storages, material packing and picking activities. Caputo and Pelagagge (2011) proposed a methodology for deciding the most effective feeding policy for each of the part type, namely, kitting, just in time kanban-based continuous supply and line storage, for the assembly lines. Similarly, Limère et al. (2012) and Sali and Sahin (2016) proposed a cost-based decision approach and a mathematical model for selecting the most suitable parts feeding policy for each part-type.

On the other hand, Kilic et al. (2012) classified the in-plant milk-run systems and proposed mathematical models of each case. Emde and Boysen (2012) have addressed the problem of JIT parts-feeding to mixed-model assembly lines with the help of in-house supermarkets. They developed a nested dynamic programming model and showed the trade-off between train capacity and line stock. Battini et al. (2013) described the terminology of the JIT-Supermarket in detail and emphasized ergonomic aspects of supermarket applications. Boysen et al. (2015) examined all of the design problems concerned with the parts logistics in the automotive industry. They expressed that the total line side buffer quantities and the number of vehicles might be minimized. Golz et al. (2012) proposed a two-stage heuristic for JIT part supply to the mixed-model automobile assembly lines minimizing the number of shuttle drivers. Volling et al. (2013) addressed the in-plant cyclic parts supply problem with multi-product, multi-vehicle and stochastic demand pattern, and developed an exact decomposition approach. Satoglu and Sahin (2013) proposed a mathematical model and a heuristic for the design of a material supply system serving the assembly lines, and an application of a TV assembly plant was explained. The heuristic algorithm assumes that all routes have an equal service period, and all parts requirements of each station are aggregated. Fathi et al. (2015) formulated a multi objective mixed integer linear programing model and a particle swarm optimization model, for the multi-product multi-vehicle milk-run design. Zammori et al. (2015) suggested that the assembly lines must be separated into segments and Kanban system must supply each segment from a decentralized depot, in constrained layouts. Satoglu and Ucan (2015) redesigned the in-plant part supply-system of an automotive supplier, based on lean principles. Besides, Alnahhal and Noche (2015) designed an electronic-kanban milk-run material supply system by considering the disruptive factors.

In addition, Caputo et al. (2015) suggested that the just-in-time (JIT) delivery is more suitable for mixed-model assembly lines than line stocking. Korytkowski and Karkoszka (2016) analyzed the throughput rate of the production system, utilization of the milk-run operators and work-in process quantities by the simulation. Recently, Zhou and Peng (2017) addressed the problem of material delivery from the decentralized depot to the assembly stations, on a just-in-time basis, and developed a neighborhood search algorithm. Emde and Gendreau (2017) recently developed a mixed-integer model of the tow-train scheduling problem and decomposition heuristic. Besides, Karadayi Usta et al. (2017) developed a methodology for parts-feeding mode selection. Satoglu and Sipahioglu (2018) proposed a two-stage assignment model for milk-run system design, to decide the cycle times and design the routes. Kilic and Durmusoglu (2015) present a part-feeding literature review.

According to this review, several studies that intend to select the most suitable part-feeding policy for the assembly lines were conducted. Only a few studies developed decomposition based heuristics or meta-heuristics for solving the problem. However, effective design of the milk-run systems, especially in multi-part multi-vehicle setting, still needs to be studied.

The Proposed Multi-part Single-Vehicle Milk-Run Model

Aghezzaf et al. (2012) developed a non-convex model for the single-part selective Single-Vehicle Milk-run Model, but the authors reported that they could not solve it, and performed a relaxation. In this study, the model is extended into the multi-part case. Besides, in order to enhance the solution, a set of feasible cycle time values is predetermined, and an exact solution of the model is intended to be reached for these discrete values. This is a novel aspect of the model. First, the notation and the proposed model for the multi-part SV-MM are presented below.

S :

Set of customers. S = {2, 3, … n}.

S+ =:

S ∪ {1}, where “1” represents the central depot.

P :

Set of commodities (parts)

C :

Set of possible cycle times

i :

Node index

j :

Node index

c :

Cycle time index

p :

Part index

  • Parameters:

Ψ :

The fixed cost of using each vehicle

Ct c :

The value of the cycle time—c (c∈C) (min)

t ij :

The distance between customers i and j (m)

ϑ :

Speed of the vehicle (m/min)

δ :

Cost of the vehicle per meter traveled

η p :

Unit inventory holding cost of part—p

φ i :

The fixed cost of a batch-order for node—i.

B p :

Weight of a full-box of part—p (kg)

V p :

Volume of a box of part—p (m3)

KV :

Maximum volume of boxes that a vehicle can carry (m3)

d ip :

Demand of node—i for part—p (per minute)

LU jp :

Load–unload time required per container for part—p at the node—j (min)

K :

The capacity of a vehicle (kg)

K i :

The capacity of the node—i (box)

λ j :

The benefit earned by visiting the node—j.

T min :

The minimum cycle time.

T max :

The largest cycle time.

  • The Decision Variables:

$$X_{ij} = \left\{ {\begin{array}{*{20}c} {1,} & {if\,node - j\,is\,visited\,immeadiately\,after\,node - i\,on\,the\,route; } \\ {0,} & {otherwise} \\ \end{array} } \right.$$
$$T_{c} = \left\{ {\begin{array}{*{20}c} {1,} & {if\,the\,route\,of\,the\,vehicle\,is\,repeted\,once\,in\,every\,cycle - time\,of\,Ct_{c} ;} \\ {0,} & {otherwise} \\ \end{array} } \right.$$
$$Q_{ijp} = {\text{Load on the Vehicle for part}} - p\,{\text{after visiting the customer}} - i\,{\text{before arriving node}} - j;$$
$$\begin{aligned} Z = Min\,\varPsi & + \left( {\mathop \sum \limits_{c \in C} \mathop \sum \limits_{{i \in S^{ + } }} \mathop \sum \limits_{{j \in S^{ + } }} t_{ij} \delta X_{ij} \frac{{T_{c} }}{{Ct_{c} }} + \varphi_{i} \frac{{T_{c} }}{{Ct_{c} }}} \right) \\ & \quad + \left( {\mathop \sum \limits_{c \in C} \mathop \sum \limits_{i \in S} \mathop \sum \limits_{p \in P} \mathop \sum \limits_{{j \in S^{ + } }} \frac{1}{2}\eta_{p} d_{ip} Ct_{c} T_{c} X_{ij} } \right) - \mathop \sum \limits_{{j \in S^{ + } }} \mathop \sum \limits_{{i \in S^{ + } }} X_{ij} \lambda_{j} \\ \end{aligned}$$

S.t.

$$X_{ii} = 0;\left( {i \in S^{ + } } \right)$$
(1)
$$\sum\nolimits_{{i \in S^{ + } }} {X_{ij} \le 1;(j \in S)}$$
(2)
$$\sum\nolimits_{{j \in S^{ + } }} {X_{1j} \ge 1}$$
(3)
$$\sum\nolimits_{{i \in S^{ + } }} {X_{ij} } - \sum\nolimits_{{k \in S^{ + } }} {X_{jk} = 0;(j \in S^{ + } )}$$
(4)
$$\begin{aligned} \sum\nolimits_{{i \in S^{ + } }} {\sum\nolimits_{\begin{subarray}{l} j \in S^{ + } \\ j \ne i \end{subarray} } {t_{ij} X_{ij} /\vartheta } } + \sum\nolimits_{{j \in S^{ + } }} {\sum\nolimits_{p \in P} {Q_{1jp} LU_{1p} } } \hfill \\ + \sum\nolimits_{\begin{subarray}{l} i \in S \\ i \ne j \end{subarray} } {\sum\nolimits_{{j \in S^{ + } }} {\sum\nolimits_{p \in P} {\sum\nolimits_{c \in C} {LU_{jp} d_{jp} Ct_{c} T_{c} X_{ij} } } } } \le \sum\nolimits_{c \in C} {Ct_{c} T_{c} } \hfill \\ \end{aligned}$$
(5)
$$\sum\nolimits_{{i \in S^{ + } }} {Q_{ijp} } - \sum\nolimits_{{k \in S^{ + } }} {Q_{jkp} } = d_{jp} \sum\nolimits_{{i \in S^{ + } }} {\sum\nolimits_{c \in C} {X_{ij} Ct_{c} T_{c} ;\left( {j \in S} \right),\left( {p \in P} \right)} }$$
(6)
$$\sum\nolimits_{p \in P} {Q_{ijp} B_{p} } \le KX_{ij} ;\left( {i \in S^{ + } } \right)\left( {j \in S^{ + } } \right)$$
(7)
$$\sum\nolimits_{p \in P} {Q_{ijp} V_{p} } \le KV.X_{ij} ;\left( {i \in S^{ + } } \right)\left( {j \in S^{ + } } \right)$$
(8)
$$\sum\nolimits_{p} {\sum\nolimits_{{i \in S^{ + } }} {d_{jp} X_{ij} T_{c} Ct_{c} } } \le K_{j} ;\left( {j \in S} \right)\left( {c \in C} \right)$$
(9)
$$\begin{aligned} & X_{ij} \in \left\{ {0,1} \right\} \left( {j \in S^{ + } } \right)\left( {i \in S^{ + } } \right) \\ & T_{c} \in \left\{ {0,1} \right\} \left( {c \in C} \right) \\ & Q_{ijp} \ge 0; \left( {j \in S^{ + } } \right)\left( {i \in S^{ + } } \right)\left( {p \in P} \right) \\ \end{aligned}$$

The objective function minimizes the total fixed vehicle usage cost, total material handling, and inventory holding costs minus the benefit earned by visiting the selected customer(s). Constraints (1) stipulate that a node cannot be connected to itself. Constraints (2) imply that a node (except the depot) can be connected to at most one node. Constraint (3) stipulates that the depot should be connected to at least one node. Constraints (4) are the flow balance constraints, and the number of entering arcs must be equal to the leaving arcs for each node, including the depot. Constraints (5) stipulate that the total traveling time between the selected nodes and loading–unloading time at those nodes and at the depot must be smaller than or equal to the cycle time selected. The constraints (6) imply that the quantity of a part delivered to a node must be equal to its demand rate for that product times the selected cycle time, given that this node is included in the route. In other words, if a node is visited, the delivery quantity to it must be equal to its requirement for each part. These constraints serve as sub-tour elimination constraints, as well. The Constraints (7) force that the total amount of load handled between any pair of nodes cannot be greater than the capacity of the vehicle. Constraints (8) imply that the total volume of the boxes handled by the vehicle cannot be greater than the volume capacity of that vehicle. The last constraints (9) imply that the total amount of commodities delivered to a node cannot be greater than the (buffer) capacity of that node. Finally, the (sign) restrictions of the variables are presented.

This is a non-linear mathematical model due to the objective function and the Constraints (5), (6), (9). The non-linearity stems from the product of the two types of binary variables. In order to solve the problem more effectively, it is linearized by defining a new variable Wijc that will replace the term of Xij*Tc. The following two sets of constraints are appended into the model due to this linearization:

$$\begin{aligned} & X_{ij} + T_{c} \le 1 + W_{ijc} ; \left( {j \in S^{ + } } \right)\left( {i \in S^{ + } } \right)\left( {c \in C} \right) \\ & X_{ij} + T_{c} \ge 2W_{ijc} ; \left( {j \in S^{ + } } \right)\left( {i \in S^{ + } } \right)\left( {c \in C} \right) \\ & W_{ijc} \in \left\{ {0,1} \right\} ; \left( {j \in S^{ + } } \right)\left( {i \in S^{ + } } \right)\left( {c \in C} \right). \\ \end{aligned}$$

Hence, the linearized mathematical model is proposed as follows:

$$\left( {\mathop \sum \limits_{c \in C} \mathop \sum \limits_{{i \in S^{ + } }} \mathop \sum \limits_{{j \in S^{ + } }} t_{ij} \delta \frac{{W_{ijc} }}{{Ct_{c} }} + \varphi_{i} \frac{{T_{c} }}{{Ct_{c} }}} \right) + \left( {\mathop \sum \limits_{c \in C} \mathop \sum \limits_{i \in S} \mathop \sum \limits_{p \in P} \mathop \sum \limits_{{j \in S^{ + } }} \frac{1}{2}\eta_{p} d_{ip} Ct_{c} W_{ijc} } \right) - \mathop \sum \limits_{{j \in S^{ + } }} \mathop \sum \limits_{{i \in S^{ + } }} X_{ij} \lambda_{j}$$

S.t.

(1), (2), (3), (4), (7), (8)

$$\begin{aligned} \sum\nolimits_{{i \in S^{ + } }} {\sum\nolimits_{\begin{subarray}{l} j \in S^{ + } \\ j \ne i \end{subarray} } {t_{ij} X_{ij} /\vartheta } } + \sum\nolimits_{{j \in S^{ + } }} {\sum\nolimits_{p \in P} {Q_{1jp} LU_{1p} } } \hfill \\ + \sum\nolimits_{\begin{subarray}{l} i \in S \\ i \ne j \end{subarray} } {\sum\nolimits_{{j \in S^{ + } }} {\sum\nolimits_{p \in P} {\sum\nolimits_{c \in C} {LU_{jp} d_{jp} Ct_{c} W_{ijc} } } } } \le \sum\nolimits_{c \in C} {Ct_{c} T_{c} } ;\left( {c \in C} \right) \hfill \\ \end{aligned}$$
(5’)
$$\sum\nolimits_{{i \in S^{ + } }} {Q_{ijp} } - \sum\nolimits_{{k \in S^{ + } }} {Q_{jkp} } = d_{jp} \sum\nolimits_{{i \in S^{ + } }} {\sum\nolimits_{c \in C} {W_{ijc} CT_{c} } } ;\left( {j \in S} \right),\left( {p \in P} \right)$$
(6’)
$$\sum\nolimits_{p} {\sum\nolimits_{{i \in S^{ + } }} {d_{jp} W_{ijc} CT_{c} \le K_{j} } } ;\left( {j \in S} \right)\left( {c \in C} \right)$$
(9’)
$$X_{ij} + T_{c} \le 1 + W_{ijc} ;\left( {i \in S^{ + } } \right)\left( {j \in S^{ + } } \right)\left( {c \in C} \right)$$
(10)
$$X_{ij} + T_{c} \ge 2W_{ijc} ;\left( {i \in S^{ + } } \right)\left( {j \in S^{ + } } \right)\left( {c \in C} \right)$$
(11)
$$\begin{aligned} & X_{ij} \in \left\{ {0,1} \right\} \left( {j \in S^{ + } } \right)\left( {i \in S^{ + } } \right) \\ & T_{c} \in \left\{ {0,1} \right\} \left( {c \in CT} \right)\quad Q_{ijp} \ge 0; \left( {j \in S^{ + } } \right)\left( {i \in S^{ + } } \right)\left( {p \in P} \right) \\ & W_{ijc} \in \left\{ {0,1} \right\} \left( {j \in S^{ + } } \right)\left( {i \in S^{ + } } \right)\left( {c \in C} \right) \\ \end{aligned}$$

The Solution Methodology

First, the transportation mode of each component is decided. The run-out time of each container of a component is computed based on the takt-time of the line, # of pieces in each container of each component, and the number of pieces used of each component in the product (based on the bill-of-materials). The parts that have a very short run-out time may not be eligible for milk-run distribution, but direct-delivery is suitable for them. This is due to the fact that their delivery quantities are usually close to the vehicle capacity, and a vehicle must continuously deliver these parts to the associated stations (nodes) (Gallego and Simchi-Levi 1990). In this study, the proposed solution methodology distinguishes the parts that are to be distributed by a milk-run route and those to be delivered directly by using the given equation below. The parameters of this equation are explained above, in notations part of the mathematical model.

$$Transportation\,Type\,\left( i \right) = \left\{ {\begin{array}{*{20}c} {Direct\,Delivery,} & {if\frac{{t_{ij} }}{\vartheta } + LUjp > \frac{{K_{i} }}{{d_{ip} }}} \\ {Milk - run\,route,} & {otherwise} \\ \end{array} } \right.$$

For those parts to be directly distributed, the delivery frequency and quantity are determined based on the buffer capacity of the associated node. For those parts to be distributed by milk-run routes, separate buffer areas are used. For milk-run distribution of the suitable parts, the routes are constructed and the delivery cycle times are decided by using the proposed Matheuristic.

The Proposed Matheuristic for the Multi-vehicle Milk-Run System Design

The pseudocode of the proposed Matheuristic is shown in Fig. 1. Initially, all demand nodes and the depot are included in the Node_Set_1. Then, the minimum cycle time (Tmin) and the maximum cycle time (Tmax) are determined. Here, Tmin is considered as the trip time for direct delivery to the nearest node. So as to consider a wide range of cycle time values, Tmax is computed by considering the minimum of all node capacities divided by the total demand rate for all parts of that node. It is mathematically formulated below. The range of the cycle times start from Tmin and it is incremented by 15 min intervals up to the Tmax.

Fig. 1
figure 1

The pseudocode of the proposed Matheuristic

$$T_{max} = Min_{j \in S} \left( {\frac{{K_{j} }}{{\mathop \sum \nolimits_{p \in P} d_{jp} }}} \right)$$

The proposed Matheuristic algorithm aims to solve a multi-vehicle milk-run design problem, on the basis of the selective multi-part SV-MM. In each iteration, the selective SV-MM is solved, and some or all of the nodes are assigned to a vehicle. If there are remaining nodes unassigned to a route, the same problem is solved only for these nodes again. At each iteration, while solving the SV-MM, the same set of possible cycle time values are considered that vary between Tmin and Tmax. This procedure is repeated until all nodes are assigned to a vehicle route. It should be noted that the model makes it possible for a single vehicle to make more than one tour at the same cycle time, and also because of the benefit (λ) coefficient in the objective function, the model may try to serve as many stations as possible in each iteration. However, it is noted that the trade-off between the benefit obtained by serving that node and the cost that incurs (by serving it) affects the decision. When the additional cost of serving a node is higher than the benefit of that node, the model will not include that node in a route. Hence, the proposed Matheuristic constructs the routes determine the cycle time of each route and decide the number of vehicles required, simultaneously. The number of the vehicle is equal to the number of times that the selective SV-MM is run until all nodes are assigned to a route. Hence, the routes are assigned to the vehicles, and the number of vehicles is determined, as well.

A Real Application in the White Goods Industry

In-plant distribution of various commodities or parts of white (durable) goods is considered in this study. There are usually several variants of a specific type of component that complicates the distribution service to the assembly lines. In order to satisfy the requirements of the stations on time, and to decrease the transportation and inventory holding costs, cyclic replenishment of goods is required. Currently, the factory employs twelve forklifts to manage the part feeding, based on direct delivery. This caused an intensive vehicle traffic inside the plant, and occupational safety problems started to arise. Besides, limited buffer capacities and tight layout constraints forced the plant managers to redesign the in-plant material supply system. Therefore, an in-plant milk-run system was intended to be designed to serve the single-model assembly lines.

There are four assembly lines, each comprised of 25 stations. At each station, a specific component type is assembled to the work-piece. In this study, to make an initial pilot design, only seven stations of each assembly line are considered. Therefore, 28 stations and the depot that comprises 29 nodes included in the problem. The facility layout is given in Fig. 2. The vehicle delivers goods to a single point (buffer area) from which the goods are sent manually to the relevant stations. The load–unload times that change according to the specific station and the commodity type (LUjp) is predetermined. To design the milk-run system, the cycle time of distribution must be decided, the delivery quantities of all parts must be determined according to the leveled (smooth) weekly production plan, and the service routes must be constructed.

Fig. 2
figure 2

The layout of the plant and designed milk-run routes

The proposed Matheuristic algorithm aims to solve a multi-vehicle milk-run design problem, on the basis of the selective multi-part SV-MM. In each iteration, the selective SV-MM is solved, and some or all of the nodes are assigned to a vehicle. If there are remaining nodes unassigned to a route, the same problem is solved only for these nodes again. At each iteration, while solving the SV-MM, the same set of possible cycle time values are considered that vary between Tmin and Tmax. This procedure is repeated until all nodes are assigned to a vehicle route. It should be noted that the model makes it possible for a single vehicle to make more than one tour at the same cycle time, and also because of the benefit (λ) coefficient in the objective function, the model may try to serve as many stations as possible in each iteration. However, it is noted that the trade-off between the benefit obtained by serving that node and the cost that incurs (by serving it) affects the decision. When the additional cost of serving a node is higher than the benefit of that node, the model will not include that node in a route. Hence, the proposed Matheuristic constructs the routes determine the cycle time of each route and decide the number of vehicles required, simultaneously. The number of the vehicle is equal to the number of times that the selective SV-MM is run until all nodes are assigned to a route. Hence, the routes are assigned to the vehicles, and the number of vehicles is determined, as well.

First, the requirements of the four single-model assembly lines associated with the seven parts are computed based on the pace of production of each line and the number of parts in a box. The plant’s net available production time in a shift is seven hours. The paces of production of the lines (from the first to the fourth one) are 1550, 1300, 1250 and 600 products/shift, respectively. These target production quantities are multiplied by the number of required parts per product according to the bill-of material and divided by the available production time (430 min). Hence, the required number of parts per minute by each assembly line is computed. These required quantities are divided by the number of parts per box for each component type. As a result, the numbers of boxes required per minute (dip) are found.

After the demand quantities have been calculated, the next step is to determine the Tmin and Tmax values. The value of Tmin is 0.3 min because the nearest station is 49.4 m away and the vehicle speed is 160 m/min. However, in order to reach an applicable design, the minimum cycle time value Tmin was assumed as 15 min, based on the opinions of the factory managers. Tmax was found as 900 min, approximately. In order to decrease the solution space, Tmax was limited to the 150 min.

This real problem was solved by means of the proposed Matheuristic. The Matheuristic solved the SV-MM model by using GAMS Cplex solver on i5-M430 CPU 2.27 GHz computer. The Matheuristic reached the solution in two iterations. The first iteration took 276 s while the second one was completed in 4.87 s. According to the two iterations of the Matheuristic, two vehicles are required and three routes are constructed, as shown in Table 1. The first vehicle has two different routes while the second has only one route. As shown in Table 1, the first vehicle’s cycle time is 60 min and the second vehicle’s cycle time is 30 min. The first route of the vehicle-1 consists of 17 stations while the second route of the same vehicle includes seven stations. The total weight of the material carried by the first vehicle in two routes is 520.36 kg (Note that the vehicle capacity per route is 500 kg). In addition, the total loading–unloading and transportation times of the first two route is 53.42 min that is less than the cycle time of 60 min. The second vehicle has only one route that consists of four stations. The weight of the material carried by this vehicle is 51.69 kg, while the total loading–unloading and transportation time is 25.87 min.

Table 1 The solution of the proposed Matheuristic for the real problem

The proposed Matheuristic can be employed by all manufacturing systems that have a high variation of parts and require repetitive and continuous parts supply to their assembly lines. This real application can be exploited by almost all of the white goods manufacturing facilities, automotive and electronics factories that perform an assembly type production.

Results and Discussion

As the proposed model for the SV-MM and the Matheuristic that employs it are based on the multi-commodity case, and the model considers vehicle’s volume capacity constraints, the results of them cannot be compared to those of the past studies that merely consider a single commodity. Besides, in real life settings, the in-plant milk-run systems may require multi-vehicles. So, the solution of the proposed Single Vehicle Milk-Run Model by means of the Matheuristic until all nodes are assigned to a route may enhance the solution of especially large size problems. However, the optimality is not guaranteed. In the real problem, the assembly plant used to employ forklifts. However, by means of the in-plant milk-run application, and by eliminating parts distribution by forklifts, the company reduced its total material handling and line side inventories. However, material preparation time in the central warehouse increased, since more frequent deliveries are made and smaller quantities are delivered.

Conclusion

As a result of the component variety of the products, parts distribution to the assembly lines has become a more difficult problem. In this paper, first, the parts that must be directly distributed are distinguished from those that can be delivered in a cyclic manner by milk-run tours. This is called the In-plant Milk-Run System Design, and optimization of this design is intended. A mathematical model for the single-vehicle milk-run model (SV-MM) is developed for the multi-commodity case, for the first time in the literature. Besides, a Matheuristic that iteratively employs the proposed SV-MM is developed to solve the multi-vehicle problem. As a result, the required number of vehicles, the routes and the delivery schedule of the vehicles are determined. However, the optimal solution is not guaranteed.

Besides, the real parts distribution problem of a washing machine assembly line was solved by means of the proposed Matheuristic in short computational times. The routes are constructed, the cycle times are decided and the routes are also assigned to the vehicles. It was found that two vehicles are enough to serve the assembly line. The results of the Matheuristic or the SV-MM could not be compared to those of other studies that exist in the literature, since to the best of authors’ knowledge; there is no data set for the multi-commodity (multi-part) case of the SV-MM. In future studies, the results of the Matheuristic can be better assessed based on the new cases of different assembly plants. Besides, a meta-heuristic can be developed to solve the SV-MM of this problem, since it is still hard to solve. Simulation models can be also constructed to analyze the milk-run system in varying demand and dynamic factory conditions, in future studies.