Keywords

1 Introduction

An assembly line is made up of a number of workstations, arranged either in series or in parallel. Since the manufacturing of a production item is divided into a set of tasks which require an operation time for their execution, a usual and difficult problem, called assembly line balancing (ALB), is to determine how these tasks can be assigned to the stations fulfilling certain restrictions such as precedence relations. The final aim of ALB is to get an optimal assignment of subsets of tasks to the stations of the plant [4]. A well-known family of ALB problems is the simple assembly line balancing problem (SALBP) [2, 10]. The SALBP only considers the assignment of each task to a single station in such a way that all the precedence constraints are satisfied and no station workload time is greater than the line cycle time.

As a result of the observation of the ALB operation in an automotive Nissan plant from Barcelona (Spain), Bautista and Pereira [1] recently proposed a SALBP extension aiming to design a more realistic ALB model. They considered an additional space constraint to get a simplified but closer version to real-world situations, defining the time and space assembly line balancing problem (TSALBP). The TSALBP presents eight variants depending on three optimization criteria: m (the number of stations), c (the cycle time), and A (the area of the stations). The multicriteria nature of the TSALBP favoured the application of multiobjective meta-heuristics such as multiobjective ant colony optimization [5], evolutionary multiobjective optimization [6], and memetic algorithms [7].

However, we noticed the absence of an available dataset with real-like instances for the TSALBP. And what is more, there is not any instance containing mixed product plans when the demand is uncertain. Therefore, we have implemented real-like Nissan TSALBP instance generator software (NTIGen) in order to let researchers to validate their models and methods in a diverse set of TSALBP instances and production plans. The design and implementation of NTIGen is done with the use of real data and industrial features of the Nissan industry plant of Barcelona. The software is freely available on-line to be used for future research works. Using this tool, a set of eight instances has been generated as a benchmark to show the different features of the instances.

The rest of the paper is structured as follows. In Sect. 2 the TSALBP formulation is explained. The description of the NTIGen software is shown in Sects. 3 and 4. A comparison of the eight instances generated by NTIGen is shown in Sect. 5. Some concluding remarks are given in Sect. 6.

2 Time and Space Assembly Line Balancing Problem

The manufacturing of a production item is divided into a set J of n tasks. Each task j requires an operation time for its execution t j  > 0 that is determined as a function of the manufacturing technologies and the employed resources. Each station k (1, 2,…, m) is assigned to a subset of tasks S k , called workload. Each task j can only be assigned to a single station k.

Each task j has a set of direct “preceding tasks” P j which must be accomplished before starting it. These constraints are normally represented by means of an acyclic precedence graph, whose vertices stand for the tasks and where a directed arc (i, j) indicates that task i must be finished before starting task j on the production line. Thus, task j cannot be assigned to a station that is ordered before the one where task i was assigned. Each station k also presents a station workload time t(S k  ) that is equal to the sum of the tasks’ processing time assigned to the station k. SALBP focuses on grouping tasks in workstations by an efficient and coherent way.

In this simplistic model there is a need of introducing space constraints in assembly lines’ design based on two main reasons: (a) the length of the workstation is limited in the majority of the situations, and (b) the required tools and components to be assembled should be distributed along the sides of the line. Hence, an area constraint may be considered by associating a required area a j to each task j and an available area A k to each station k that, for the sake of simplicity, we shall assume it to be identical for every station and equal to = max k  = 1,2,…,m Ak. Thus, each station k requires a station area a(S k ) that is equal to the sum of areas required by the tasks assigned to station k.

This leads us to a new family of problems called TSALBP [1]. It may be stated as: given a set of n tasks with their temporal t j and spatial a j attributes (≤ ≤ n) and a precedence graph, each task must be assigned to a single station such that: (i) every precedence constraint is satisfied, (ii) no station workload time (t(S k   )) is greater than the cycle time (c), and (iii) no area required by any station (a(S k   )) is greater than the available area per station (A).

TSALBP presents eight variants depending on three optimization criteria: m (the number of stations), c (the cycle time) and A (the area of the stations). Within these variants there are four multiobjective problems depending on the set of criteria to be minimized (m, c and/or A). For more information about the problem we refer the interested reader to Chica et al. [5, 7].

3 Basics of the Nissan TSALBP Instance Generator Software (NTI-Gen)

The main goal of the NTIGen software is to create real-like TSALBP instances with different features to serve as a benchmark for any future research work. Although there are ALB instances available online and even a SALBP instance generator [9], there is not any existing source where TSALBP instances can be generated and referred. Also, as pointed out in the Introduction section, there is no instance containing production plans information.

Assembly lines in the automotive industry present a set of industrial features which condition the task and graph distribution of the problem instance. The user must be allowed to incorporate these industrial real-like features to the generated instances and these instances should be similar to the original Nissan instance context [7]. Concretely, the developed NTIGen software includes the following features, which are illustrated in Fig. 1:

Fig. 1
figure 1

A precedence graph with nine tasks showing examples of different kinds of tasks in an industrial context: chains of tasks, initial and final tasks, isolated tasks, and checkpoints

  • Checkpoints: They are assembly line points in which workers test the quality and completeness of a set of operations previously finished. If we consider these checkpoints as new tasks, the representation of a checkpoint in an assembly line graph is given by a task having a high number of preceding tasks (for instance, task 6 in Fig. 1).

  • Tasks without prec e dence: In real industrial scenarios, such tasks are justified if there are operations unconditioned by other operations. They are commonly found in the engine and trim lines of the car manufacturing. In Fig. 1, tasks 1, 2, 4 and 8 have no precedence.

  • Final tasks: Tasks in an assembly line which are associated to the most external and final operations of the product. They are represented as tasks with no successors in the precedence graph (tasks 1, 7 and 9 in Fig. 1).

  • Isolated tasks: They can be performed at any part of the assembly of an item. An example of these kinds of tasks is this related with additional parts of a product which can be incorporated to the global product at any station. Task 1 in Fig. 1 is an isolated task as it has no precedence.

  • Operations aggregation: This process comes up when some operations need the same tools or are done by the same worker. In this case, several tasks of the same stage are put together in just one task.

  • Operations breaking up: If possible, it is used in the industrial context to detail the implementation of an operation in different operating tasks. It is useful for balancing an assembly line when the cycle time is reduced.

  • Chains of tasks: They appear when there are strongly linked operations, normally in the same station or stage. A chain of tasks represents natural sequences of operations within the assembly process (see tasks 4, 5, 6 and 7 in Fig. 1)

4 Tuneable Parameters of NTIGenn

The features introduced in the previous sub-section can be parameterized by the NTIGen user to generate a customizable instance. NTIGen is also fed by a set of stages with some initial tasks. By default, these stages and tasks correspond to the original Nissan instance with 140 tasks and 21 workstations [7] although they can be modified by the user before launching the application. The user can set all the desired features by changing the parameters of an XML file. The most important input parameters are the following:

  • Number of tasks ( n ). This is an important parameter of the instance that enormously conditions its complexity. From the initial set of tasks, new operating tasks are generated by breaking up them until reaching the user needs. If we need fewer tasks than the original ones, they are merged at random. The new generated tasks are required to belong to the same or close stages than their original ones.

  • Processing times ( tj ). The processing time of each task t j is randomly disrupted by a normal distribution within a user-defined interval. When creating or merging tasks, the processing times for the resulting tasks are reduced or duplicated, respectively. This is done to maintain the original situation of the Nissan instance.

  • Production plans. The production plans are always set to the NSIO original plans. The processing times of the tasks for the different engine products are created by randomly modifying the original processing time t j within the range [0.9t j, 1.1t j ].

  • Cycle time ( c ). It is also disrupted independently from the processing times of the tasks. As done with t j , the disruption is created within a user-defined interval. In our case, the new cycle time is set to a value within [0.75c, 1.25c].

  • Required operation area ( a j ). Task areas are specified by two-dimensional units, i.e. length (a j ) and width (b j ). The first dimension, a j , is the truly useful variable for the TSALBP optimization. In the original instance, b j is always set to one distance unit. To generate a new instance, the squared area of each task is always maintained by the generator but b j is randomly changed to a set value. In our case, the set is given by {0.5, 0.75… 2.25}. This set of possible b j values can be modified by the user of the NTIGen software. Therefore, the length of each task a j , used for the optimization, is different for each generated TSALBP instance. As done with the processing times, a j is reduced or duplicated when increasing or decreasing the number of tasks to try to maintain the original Nissan situation.

Apart from the operating tasks and their corresponding processing times and areas, NTIGen generates the precedence graph of the instance. These precedence relations are created between tasks of the same stage (generating chains) or different stages within a maximum window, set by the user, in order to link tasks which are industrially close. The minimum and maximum number of preceding tasks for a checkpoint in a problem instance can be set prior the instance generation. The same definition can be done for the number of initial, final, and isolated tasks.

NTIGen creates precedence relations until it reaches the required complexity of the graph which is another important feature of an ALB instance [3]. This complexity of the precedence graph is also a user parameter and it is measured by the order strength (OS) of the graph [8]. The OS is calculated from the graph in transitive closure. The transitive closure of a set of direct precedences E is given by E T = {(i, j)|i ∈ V, j ∈ F i T }, with V being the set of nodes and Fi T the set of indirect successors of the task i. The OS represents the number of ordering relations of the graph in a transitive closure with respect to all possible ordering relations: \({\rm{OS}} = \frac{{|{{\rm{E}}^{\rm{T}}}|}}{{\frac{{{\rm{n}}({\rm{n}} - 1)}}{2}}}\).

The OS varies between [0, 1]. If OS is equal to 0 the instance has no precedence relations but if OS takes value 1, there is just one feasible sequence of tasks. The result after running the NTIGen software is a structured text file describing the generated instance with the list of tasks, their operating times and area, and their precedence relations. The precedence relations form the transitive reduction of the graph in order to minimize computational resources.

In addition, by changing the number of tasks, their processing time and area we can generate instances having different time variability (TV) and area variability (AV). Descriptors about the generated instance are listed after its creation to show the complexity of the graph, TV, AV, and the number of checkpoints, isolated, initial, and final tasks.

5 Examples of Some Generated TSALBP Instances

By using the NTIGen software, a set of eight new TSALBP real-like instances have been created (Table 1). The NTIGen software and this set of TSALBP instances are publicly available at http://www.prothius.com/TSALBP.

Table 1 Main characteristics of the generated TSALBP instances

6 Concluding Remarks

The existing TSALBP formulation and previous ALB works do not cover an important real scenario where the same assembly line is devoted to produce mixed products and their demand is not fixed. Furthermore, the TSALBP instances of the literature were created by modifying ALB instances. The NTIGen software presented in this work allows researchers to create realistic TSALBP instances and production plans for future research. The generated TSALBP instances contain many real-like industrial features, e.g. checkpoints, isolated tasks, initial and final tasks, chains of tasks, or stages, which make the NTIGen software a practical tool for simulating the industrial conditions of an assembly line. Also, the NTIGen user can generate instances with production plans, having different operation time for each task of the assembly line.