Keywords

1 Introduction

With the rise of mass customization, various manufacturing companies have transformed their dedicated manufacturing systems into mixed-model assembly lines (MMAL)  [14]. Such lines can assemble different items in any sequence, and the manufactured items can be significantly different from one another. Lines with moving workers are superior in such circumstances since the workers can move from a station to another to adjust the station’s capacity to the set of items on the line  [2]. As a result, mixed-model assembly lines with moving workers are common in practice, for instance in the automotive industry  [1].

In this work, we investigate the impact of dynamic task reassignment on the design of the MMAL with moving workers. In the dynamic task assignment strategy, the assignment of tasks to stations changes depending on the item sequence. In practice, this dynamic task assignment requires the flexible assembly equipment  [3], and the equipment selection is a complex decision since the most flexible pieces of equipment are often the most expensive. In other words, the objective is to select the equipment with the right level of flexibility (flexible enough to reassign the tasks for each predefined item sequence, but not too flexible to reduce the costs).

Task reassignments along with worker movements adjust the line to the production requirements. Consequently, these strategies increase the reconfigurability of the assembly line. Note that we use the term reconfigurability rather than flexibility since worker movements modify the line’s characteristics by a physical change of the system  [8]. This definition is in line with the literature on Reconfigurable Manufacturing System  [13], where a system is said reconfigurable if its components can be added, removed, or moved. The reconfiguration takes place to create the capacity and functionality that is needed, when it is needed.

The present paper proposes a scenario-based integer linear program (ILP) for the design of a MMAL with moving workers and task reassignments. Such a problem integrates operational decisions in the design of the MMAL. The design stage assigns the equipment to the work stations. At the operational level, the production sequence is revealed, and the tasks and workers are assigned to the stations. The objective is to design a line that respects the takt time for all given item sequences, and that minimizes the cost related to the workers and equipment. We conduct a numerical comparison between the fixed and dynamic task assignment strategies. Our results suggest that the dynamic task reassignment allows to significantly reduce the number of required workers when the equipment cost is low.

The paper is organized as follows. A short literature review is given in Sect. 2. Section 3 gives the problem description, a simple example, and an integer linear program. Section 4 presents some numerical experiments. Finally, the paper ends with the conclusion and some future research directions in Sect. 5.

2 Literature Review

In the literature on MMAL balancing, each task is usually assigned to a single station  [10]. A few works exist on the dynamic task assignment in MMAL balancing for different production environments, such as parallel two-sided MMAL with fixed workers (working at both sides) [e.g., 14], or MMAL with fixed workers [e.g., 4]. For instance, in  [14], the assignment of tasks to the stations depends on the production cycle, where a production cycle corresponds to different combinations of models. However, to the best of our knowledge, there exists no work on the design of the MMAL with moving workers and task reassignment. In the literature on the MMAL balancing with moving workers, the tasks assigned to the stations are either fixed or given [e.g., 1, 6, 9, 12]. The present work aims to fill this gap in the literature. Indeed, the decisions on task and workforce assignment must be made simultaneously, since any change in task assignment may imply changes in workforce assignment  [5].

3 Problem Description

To describe the problem, the general characteristics of the MMAL is presented below, before stating the assumptions related to the equipment and workers.

We consider a MMAL with a set \(\mathcal{S} = \{1 \ldots S\}\) of stations. The line produces a set \(\mathcal{I} = \{1 \ldots I\}\) of models, which flow in any order through the line. These models flow from one station to the next at regular time intervals C, called takt time. Each model i requires a set \(\mathcal{O}_i\) of tasks. We denote \(\mathcal{O}\) the set of all tasks. Moreover, we consider the precedence relationship between the tasks, and \((o, o')\) is in the set of precedence A if task o must be performed before task \(o'\).

To process a task, the required equipment must be available at the station. More precisely, each task o requires exactly one equipment that must be fixed to the station, and the set of equipment is denoted \(\mathcal{E}\). The parameters \(R_{o e}\) equals 1 if equipment e is able to perform task o, and each equipment e has a cost \(c_{s e}\) at each station s. In this study, the workers can move from a station to another at any takt time, and the processing time \(p_{i o}^l\) of each task o of model i depends on the number l of workers on the station. Workers are assumed fully skilled and identical, and their movement time between stations is negligible.

Table 1. Compatibility between tasks and equipment, and the cost of equipment in each station.
Fig. 1.
figure 1

The precedence graph of the simple example.

At the design stage, the problem (denoted \(P^{Dyn}\)) is to decide the number Y of workers and the positions of the equipment (the variable \(w_{s e}\) equals 1 if equipment e is at station s, and 0 otherwise). At the operational stage, the sequence \(\omega \) of items is known at the beginning of the day, and \(P^{Dyn}\) is to assign the tasks and workers to the stations. To evaluate the impact of the dynamic task assignment, we also consider the problem with fixed task assignments (denoted \(P^{Fix}\)). More precisely, \(P^{Fix}\) is similar to \(P^{Dyn}\), but the tasks are assigned to the stations at the design stage, and their assignment is the same for all sequences at the operational stage.

Fig. 2.
figure 2

The optimal solution of \(P^{Fix}\) and \(P^{Dyn}\) in the simple example.

To clarify the problem, we provide a simple example with two stations, two models A and B, and the two possible sequences (A; B) and (B; A). Figure 1 gives the precedence graphs and processing times for each item with a common set of 5 tasks. Table 1 presents the compatibility between equipment and tasks, and the cost of using the equipment at each station. Note that the cost of each equipment is related to the number of tasks that it can perform. Finally, the cost of a worker is \(\alpha =500\), and the cycle time is \(C=8\). Figure 2 shows the optimal solution of \((P^{Fix})\) and \((P^{Dyn})\) for this simple example. More precisely, Fig. 2 gives the task, equipment and workforce assigned to the stations for each sequence, as well as the number of workers, equipment, and total cost for the worst takt. The optimal solution of \((P^{Fix})\) requires 5 workers and a total equipment and workforce cost of 2830, whereas \((P^{Dyn})\) leads to a solution with 3 workers and a total equipment and workforce cost of 1920.

The mathematical formulation of \(P^{Dyn}\) (1)–(11) relies on the set \(\Omega \) of all possible item sequences. Given a sequence \(\omega \), we can infer the station \(s_{it}^{\omega }\) where item i is at each takt. Similarly, \(i_{s}^{t \omega }\) denotes the item at station s at takt t for sequence \(\omega \). The operational decisions (affectation of workers and tasks) depend on the sequence, and they require to define three decision variables.

  • \(b_{s l}^{\omega t}\) equals 1 if there are l workers at station s in period t for sequence \(\omega \) (with \(l \in \mathcal{L}= \{1 \ldots l_{max} \}\)), and 0 otherwise.

  • \(b_{o i l}^{\omega t}\) equals 1 if l workers perform task o of item i in period t for sequence \(\omega \), and 0 otherwise.

  • \(x_{s o i}^{\omega }\) equals 1 if task o of item i is performed on station s for sequence \(\omega \), and 0 otherwise.

$$\begin{aligned} \min&\quad \alpha \ Y + \sum _{ s \in \mathcal{S}} \ \sum _{ e \in \mathcal{E}} \ w_{s e} c_{s e} \end{aligned}$$
(1)
$$\begin{aligned} \text {s.t.}&\nonumber \\&\sum _{ s \in \mathcal{S}} \ \sum _{l = 1}^{l_{max}} \ l \ b_{s l}^{\omega t} \ \leqslant \ Y \qquad \qquad \, \omega \in \Omega , \ t \in \mathcal{T} \end{aligned}$$
(2)
$$\begin{aligned}&\sum _{l = 1}^{ l_{max}} \ b_{s l}^{\omega t} \ = \ 1 \qquad \qquad \quad \qquad s \in \mathcal{S}, \ \omega \in \Omega , \ t \in \mathcal{T} \end{aligned}$$
(3)
$$\begin{aligned}&\sum _{s \in \mathcal{S}} \ x_{s o i}^{\omega } \ = \ 1 \qquad \qquad \quad \qquad \omega \in \Omega , \ o \in \mathcal{O}, \ i\in \mathcal{I} \end{aligned}$$
(4)
$$\begin{aligned}&b_{o i l}^{\omega t } \ \leqslant \ x_{s o i}^{\omega } \qquad \qquad \qquad \, l \in \mathcal{L}, \ \omega \in \Omega , \ o \in \mathcal{O}, \ i \in \mathcal{I}, \ t \in \mathcal{T}, \ s =s_{it}^{\omega } \end{aligned}$$
(5)
$$\begin{aligned}&b_{o i l}^{\omega t } \ \leqslant \ b_{s l}^{\omega t} \qquad \qquad \qquad \,\,\, l \in \mathcal{L}, \ \omega \in \Omega , \ o \in \mathcal{O}, \ i \in \mathcal{I}, \ t \in \mathcal{T}, \ s =s_{it}^{\omega } \end{aligned}$$
(6)
$$\begin{aligned}&b_{o i l}^{\omega t } \ \geqslant \ b_{s l}^{\omega t} + x_{s o i}^{\omega } -1 \qquad l \in \mathcal{L}, \ \omega \in \Omega , \ o \in \mathcal{O}, \ i \in \mathcal{I}, \ t \in \mathcal{T}, \ s =s_{it}^{\omega } \end{aligned}$$
(7)
$$\begin{aligned}&\sum _{o \in N_{i}} \ \sum _{l = 1}^{ l_{max}} \ p_{i o}^{l} \ b_{o i l}^{\omega t} \ \leqslant \ C \qquad \,\,\,\,\, \omega \in \Omega , \ t \in \mathcal{T}, \ s \in \mathcal{S}, \ i = i_{s}^{t \omega } \end{aligned}$$
(8)
$$\begin{aligned}&x_{s o i}^{\omega } \ \leqslant \ \sum _{e \in E} R_{o e} w_{s e} \qquad \qquad \,\,\,\, s \in \mathcal{S}, \ o \in \mathcal{O}, \ i \in \mathcal{I}, \ \omega \in \Omega \end{aligned}$$
(9)
$$\begin{aligned}&\sum _{s \in S} s \ x_{s o i}^{\omega } \ \leqslant \ \sum _{s' \in S} s' \ x_{s' o' i}^{\omega } \quad \quad (o,o') \in A_i, \ i \in \mathcal{I}, \ \omega \in \Omega \end{aligned}$$
(10)
$$\begin{aligned}&x_{s o i}^{\omega }, \ b_{s l}^{\omega t}, \ w_{s e} \in \{0, 1\} \qquad \text { and } \qquad Y \geqslant 0 \qquad \text { and } \qquad b_{o i l}^{\omega t} \leqslant 1 \end{aligned}$$
(11)

The objective function (1) is to minimize the costs associated with the workers and equipment amortization, where \(\alpha \) represents the salary of a worker. Constraints (2) prevent to affect more workers to the stations than the total number of workers. Constraints (3) state that a single number of worker must be chosen for each station in each takt and sequence. Constraints (4) state that each task must be affected to a single station for each sequence. The constraints (5), (6), and (7) compute the value of \(b_{o i l}^{\omega t}\) based on the values of \(b_{s l}^{\omega t}\) and \(x_{s o i}^{\omega }\). Finally, constraints (8), (9) (10) give the classical takt time, equipment, and precedence constraints, respectively.

The mathematical formulation of \(P^{Fix}\) is similar to (1)–(11), but the assignment of tasks to stations is a design decision. Therefore, they do not depend on the sequence and constraint (12) is added to (1)–(11).

$$\begin{aligned} x_{s o i}^{\omega } = x_{s o i'}^{\omega '} \quad \omega , \ \omega ' \in \Omega , \quad t \in \mathcal{T}, \quad o \in \mathcal{O}, \quad i, i' \in \mathcal{I}, \quad s = s_{it}^{\omega } \end{aligned}$$
(12)

4 Numerical Experiments

The numerical experiments are performed with instances generated by extending the well known simple assembly line balancing instances from  [15]. To generate an instance with I items and \(|\mathcal{O}|\) tasks, the precedence graph and processing times of each item i correspond to different instances from  [15] with \(|\mathcal{O}|\) tasks. These instances have been generated with different order strength values (in the range [0, 1]), where a high order strength value refers to a dense precedence graph. More precisely, each of our instances merges I consecutive (sorted by ascending order of instance’s numbers) instances of  [15] with a specific order strength range. In this work, we consider the instances with 3 items, 3 stations, and 5 takts \(({I}=3, {S}=3, T=5 )\). \(\Omega \) includes all possible sequences with a single unit of each item \((|{\Omega }|= 3! = 6)\). The cycle time is set to 1000. The equipment costs at each station are generated randomly in the range [100, 300]. Two different values for workers salary are considered \(( \alpha =\{500, 50\})\). Finally, the matrix of compatibility between tasks and equipment is generated manually such that an expensive equipment is able to perform a wide range of tasks. The resulting matrix is given in Table 2.

Table 2. Compatibility matrix of equipment and tasks (T1–T20).

The mathematical model is solved with CPLEX 12.9, and the numerical experiments are run on a processor Intel(R) Core(TM) i7-8650U CPU @ 1.90 GHz 2.11 GHz with a time limit of one hour. As our goal is to investigate the benefit of dynamic task assignment, we provide the results for the instances which were solved optimally within one hour.

Table 3 gives for each order strength the average total cost, number of workers, number of equipment duplications (Nr. Dup.), and execution time in second for \(P^{Fix}\) and \(P^{Dyn}\), as well as the percentage gap between the total costs in \(P^{Fix}\) and \(P^{Dyn}\) (see Eq. (13)). Note that the instances of  [15] do not cover all the order strength ranges, for instance, there is no instance with order strength in [0.4, 0.5). The dynamic task affectation in \(P^{Dyn}\) leads to a lower number of workers (4 and 7 workers in average when \(\alpha \) is equal to 500 and 50, respectively) than the fixed task assignment in \(P^{Fix}\) (6.1 and 7.5 workers in average when \(\alpha \) is equal to 500 and 50, respectively), but slightly larger equipment cost (1168.6 versus 1012.2 in average when \(\alpha = 500\), and 712.2 versus 710.4 in average when \(\alpha = 50\)) and smaller total cost. In addition, \(P^{Dyn}\) is harder to solve with an average execution time of 483 s versus 56.7 s for \(P^{Fix}\). When the workers salary decreases (\(\alpha = 50\)), both problems are solved faster, but \(P^{Dyn}\) is still harder to solve (102.2 s versus 28.9 s in average). Besides, a large order strength increases the average number of workers and total cost for both \(P^{Fix}\) and \(P^{Dyn}\). Finally, the dynamic task assignment is preferable in both cases when \(\alpha =\{500, 50\}\), but manufacturers should use the dynamic task assignment when the amortization cost of equipment is lower than the cost of workers (e.g. steering column assembly in the automotive industry  [11]).

$$\begin{aligned} Gap = \dfrac{Cost(P^{Fix})-Cost(P^{Dyn})}{Cost(P^{Fix})}*100 \end{aligned}$$
(13)
Table 3. Number of workers and equipment cost in the optimal solutions of \(P^{Dyn}\) and \(P^{Fix}\).

5 Conclusion

In this paper, we propose a scenario-based integer linear problem to design a mixed-model assembly line with dynamic task assignment and moving workers. Our computational experiments suggest that dynamic task assignment leads to significant cost savings when it is compared to the fixed task assignment strategy. However, the resulting optimization problem is difficult to solve. Consequently, the future works concern the design of efficient exact methods or (meta-)heuristics to solve the large scale instances. Besides, future works include the evaluation of the ergonomic impact of such dynamic assembly lines on the well being of the workers. On the one hand, this dynamic context may have some side effects in terms of ergonomics (e.g., workers get stress or over-loaded). On the other hand, job rotation is often used to reduce the exposure to ergonomics risks  [7, 16]. Finally, the considered problem can be extended to the context of hybrid human-robot collaboration systems, where dynamic task assignments is common. This extension requires to account for non-identical resources (e.g., different speed), resources skills, movable equipment, etc.