Keywords

1 Introduction

Robots play an important role in high-volume assembly lines, because they are reliable and repetitively accurate [1]. One widely used joining technology for robotic assembly lines is resistance spot welding (RSW) [2]. RSW welds car body sheets rapidly and forms a welding nugget in between the parts. Shape and size of the nugget affects the strength of the welded joint. To avoid excessive destructive tests to inspect weld quality and to react to disturbances during the welding process, feedback control systems (FCS) are used (see [3]). Since the weld strength cannot be measured directly, correlating electrical variables such as the dynamic resistance are commonly employed. The FCS determines the time of current termination based on experimentally determined values of the measurement variable, this leads to variation in the welding times.

Figure 1 shows the distribution of weld times for one weld point. The FCS is programmed to extend the weld time up to a preset prolongation limit [4]. This leads to a major weld time mode at −0.5 ms to 0.5 ms deviation from the predefined weld time of 450 ms, a center mode at about 7.5 ms to 8.5 ms and a closing mode at about 18.5 ms to 19.5 ms deviation. Similar distributions but different positions and heights of the modes can be found for other weld points. Gaussian Kernel-Density Estimation (KDE) is used to approximate a Gaussian Mixture Model (GMM). Its probability density function is shown in the figure.

In order to take into account the effects of processing time distributions on the robotic assembly line in early planning phases, this work introduces a computational approach to consider multimodal stochastic processing times in the robotic assembly line balancing problem (RALBP). In this approach, the planner specifies a probability limit for exceeding the cycle time in the stations, which is then respected by the algorithm. The probability of exceeding the cycle time is thus known in contrast to deterministic approaches and can be taken into consideration in subsequent planning steps so that, for example, the utilization of the stations can be optimized in a controlled manner. The proposed approach is inspired by the balancing of labour-intense assembly lines with normal distributed processing times, see ref. [5, 6].

Fig. 1.
figure 1

Weld time distribution of a weld joint with 357 samples from car body construction

2 State of Research

The RALBP, first described by Rubinovitz and Bukchin [7], is an extension to the popular assembly line balancing problem (ALBP). The goal is to assign a collection of tasks with their corresponding processing times and precedence relationships to workstations and to find a suitable robot for each station to optimize an objective function without violating resource and technological constraints.

As Chutima [8] shows, the RALBP is predominantly solved using meta-heuristics followed by exact algorithms and heuristics, because they show the highest effectiveness for practical sized problems.

Levitin et al. [9] present a genetic algorithm (GA) for the RALBP with the objective to minimize the cycle time at a given amount of serially arranged workstations (type II). The GA manipulates the order of the tasks, in which they are distributed to the stations. To avoid violation of their precedence constraints, the authors introduce a special reordering procedure to correct invalid solutions and a fragment reordering crossover as well as mutation operator. The actual assignment to stations and the selection of a robot is done in the decoding procedure.

3 Objective

The objective of this paper is to develop a method to address multimodal stochastic processing times that result from RSW process control using RALBP. In the context of car body construction, multiple robots per workstation are working on the same part in parallel. Multimodal processing time distributions have to be experimentally determined. The objective of the method is to minimize the amount of workstations. In addition, the influence of the distribution assumptions that are chosen to represent the task time variation will be investigated.

4 Genetic Algorithm

The proposed approach is based on the GA developed by Levitin et al. [9] and introduces a new decoding procedure. The assumptions for the RALBP made by Rubinovitz and Bukchin [7] are modified as follows:

  1. 1.

    The precedence relationships for all tasks are known and cannot be changed. They are represented by a precedence matrix \(\boldsymbol{P}_{T\times T}\), where \(p_{ij}=1\) means, task i must be a predecessor of task j.

  2. 2.

    The duration of a task is distributed and approximated by variations of the probability density function in Fig. 1. Tasks cannot be subdivided.

  3. 3.

    The only limitations for assigning tasks to stations are the probability limit PL for violating the given cycle time and the precedence constraints in \(\boldsymbol{P}\).

  4. 4.

    K robots are assigned to each station. There are no limitations for assigning a task to a robot other than the cycle time violation probability limit.

  5. 5.

    Loading, unloading and material handling times as well as setup and tool changes are neglected or are included in the task times.

  6. 6.

    The line is balanced for a single product.

  7. 7.

    There are no limitations for the availability of robots.

The notation used in this paper is described in Table 1.

Table 1. Notation for the genetic algorithm

4.1 Solution Representation

This paper uses a partition-oriented encoding scheme following Kim et al. [10]:

  • Vector \(\boldsymbol{v}\): Contains a permutation of the task elements. This vector is generated by the genetic algorithm.

  • Vector \(\boldsymbol{s}\): Contains pointers to elements in \(\boldsymbol{v}\) to partition it into stations.

  • Matrix \(\boldsymbol{R}\): \(K\times T\) binary matrix which contains the assignments of tasks to robots (if task i is assigned to robot k, \(r_{ki}\) is 1, otherwise 0).

4.2 Steps of the GA

The steps of the algorithm can be summarized as follows, for further details the reader is referred to [9]: i) generate a random valid initial population ii) decode and sort the population by their fitness using the decoding procedure in Sect. 4.3 iii) create offspring of some of the best chromosomes and replace the worst with them iv) randomly mutate some of the chromosomes v) jump back to step ii) for G times or stop after not improving for H times.

4.3 Decoding Procedure for the RALBP

The decoding procedure populates vector \(\boldsymbol{s}\) and matrix \(\boldsymbol{R}\), i.e. assign the tasks to workstations and robots. It considers a probability limit PL for violating the cycle time in each robot. The algorithm consists of the following steps:

D1:

Set variables \(m=1\) and \(n=1\).

D2:

Open a new station by adding the index of the current task m to station vector \(\boldsymbol{s}\). Set \(n=m\).

D3:

Select element \(v\left( m\right) \) if \(m\le |v|\), otherwise stop the algorithm.

D4:

Check, if the selected task element \(v\left( m\right) \) fits into the station:

D4.1:

If \(n=m\), set \(r_{1m}=1\) and increase m to \(m+1\). Jump to step D3.

D4.2:

Sort the robots by their descending free capacity \(\boldsymbol{cp}\), see Eq. 1, which leads to a permutation \(d = \left( d\left( 1\right) ,\dots , d\left( K\right) \right) \).

$$\begin{aligned} cp_k = C - \sum _{a=n}^{m-1}r_{ka}\cdot e_{v\left( a\right) },\, k\in \left( 1, \dots , K\right) \end{aligned}$$
(1)
D4.3:

For each robot \(d\left( l\right) \) in \(l\in \left( 1,\dots , K\right) \), do a monte carlo simulation to check if the probability to violate the cycle time of the tasks in the robot including the random numbers \(X_{v\left( m\right) }\) of the currently selected task \(v\left( m\right) \) exceeds the given limit PL. If it does not, the current task fits on the robot. Break the loop and jump to step D4.4. If \(l=K\) and no robot has been found to be able to complete task \(v\left( m\right) \), jump to step D2.

D4.4:

Set \(r_{d\left( l\right) m}=1\) and increase m to \(m+1\). Jump to step D3.

5 Results

The presented algorithm is evaluated on the basis of practical problems from car body construction. The BARTHOLD problem statement from the data sets by Scholl [11] is chosen because it matches the F-Ratio (0.7 to 0.8) and WEST-Ratio (15 to 25) (see Dar-El [12]), which we have found to be typical for car body construction problems. The cycle times and processing times of the problem are multiplied by 0.1 s, which results in cycle times of 56.4 s, 62.6 s, 70.5 s, and 80.5 s. It consists of 149 tasks with processing times within a range of 0.3 s to 38.3 s. For each test case, the probability limit of cycle time violations PL is gradually increased from 1% to 50%, the decoding procedure assigns the tasks in such a way that PL is not exceeded in the stations. A normal distribution (\(\mathcal {N}\)) is derived from the expectation value (454.98 ms) and standard deviation (6.67 ms) of the weld time distribution in Fig. 1 and compared to the approximated GMM. The BARTHOLD problem contains deterministic task times \(t_i\). The random variables \(X_i\) are linearly scaled so that their expectation values match \(t_i\).

The gradually increase of the probability limit PL allows to assign more tasks to each station, resulting in a shift from rear to front stations and an increasing free capacity in the last workstation. At a certain probability limit, the shift is sufficient to save one station. The position of this limit is essentially determined by the problem and the process time distribution of the tasks. The boxplot in Fig. 2 shows the free capacity of the last station \(\mathcal {S}\) for all test cases, where the boxes contain the values of \(\mathcal {S}\) for PL in a range from 1 % to 50%.

Fig. 2.
figure 2

Free capacity in the last station \(\mathcal {S}\) for cycle times 56.4 s, 62.6 s, 70.5 s and 80.5 s (WEST-Ratios 14.8, 16.44, 18.5 and 21.14) and probability limits PL from 1% to 50%

In all scenarios except at a cycle time of 70.5 s, the range of \(\mathcal {S}\) is wider with the normal distribution. The interquartile range is between 12 % (\(C={80.5}\,s\)) and 56 % (\(C={62.6}\,s\)) larger than with GMM. Normal distributed processing times therefore save more capacity.

6 Conclusion and Future Research

A genetic algorithm considering stochastic processing times and multiple parallel-working robots per workstation for the RALBP was presented. The algorithm was evaluated on the basis of practical test problems using an approximated GMM and a normal distribution to represent stochastic task times. The results show that with a normal distribution more capacity in the last station could be saved by increasing the probability limit for violating the cycle time, which can lead to savings of workstations at lower risk. It can be concluded from this that the choice of distribution and the underlying problem play a decisive role. Quality of the input data as well as appropriate and process adequate distribution assumptions strongly affect the results. Therefore inaccuracies may lead to false assumptions and therefore to lasting effects on following operations.

For practical application of the proposed approach, some features are missing and may be subject to future research: i) Support for in-station constraints, which result from geographical positions of the tasks and depend on the actual set of tasks being assigned to the station and ii) a procedure to preserve precedence constraints in the stations and on the parallel-working robots.