Block assembly consumes the majority of processing time and resources in shipbuilding, and the block spatial scheduling (BSS) related to block assembly has been widely studied as the key to improve shipbuilding efficiency. BSS is a complicated NPhard problem that aims to minimize the makespan. Since each block has specific building time and space constraints, the BSS problem can be hardly found with an acceptable solution by using constant scheduling rules. Thus, in this study, we considered the BSS problem as a timeconstrained 3D bin packing mathematical model and proposed an allocation algorithm, best contact algorithm (BCA), that is more suitable for dynamic processes. Then, for global optimization of the BSS problem, we regarded the starting time of each block as a variable and used the genetic algorithm (GA) to operate and optimize the block assembly sequence. Finally, we tested the BCA + GA scheduling system with real data from a shipyard and thereby determined the block scheduling status and the daily utilization rate of the work plate. Comparison shows that the proposed algorithm is able to get shorter makespan and better block scheduling effect; it realized the optimization of the block spatial scheduling dynamically.
Shipbuilding is a traditional mechanical manufacturing process that requires enough building space and resources due to its large and complex components. In the construction process, the components are built and transported as a basic element, called block. It is an intermediate product of dispatch and process in modern shipbuilding. Shipbuilding generally involves six stages: steel material processing, block assembly, outfitting, hull erection, commissioning, and trial trip. Among them, block assembly consumes the maximum building time and thus is considered as a bottleneck in improving production efficiency and reducing the makespan in the shipyard. Therefore, this study is focused on reasonable block scheduling in the assembly process.
Blockbased shipbuilding is very complicated and requires the joint action of diverse resources, such as space, manpower, equipment, overhang cranes, and flat transporters. One of the most basic and fundamental resources is the work plate, where the block is made and assembled sequentially. The block spatial scheduling (BSS) is a dynamic assignment that allocates blocks to suitable positions in the work plate at the right time. Meanwhile, all the constraints are satisfied. The selection of the processing position and time of any block would affect the subsequent block scheduling. The BSS problem as an NPhard problem can be hardly found to be an accurate optimum solution. In practice, BSS is still designed empirically in many shipyards. An efficient automatic algorithm of BSS is imperative for productivity improvement.
Work plate is the most significant resource in the whole process of shipbuilding, and an efficient management system is critical for solving the block spatial scheduling problem. Therefore, scholars and designers have presented many algorithms. For instance, Lee et al. [
Spatial scheduling in shipbuilding is a complicated and comprehensive practical problem with many key points to be studied. To solve the spatial allocation problem, Lee [
To date, many methods and algorithms have been proposed to solve the BSS problem from different perspectives, but the real efficiency of block spatial scheduling is still low. Thus, here we proposed a BCA, which has better use effect in dynamic block placement. However, since block spatial scheduling is an NPhard problem, the scheduling of fixed building sequence rules does not play the role of optimization actually. Thus, GA was used to find out the optimal block building sequence under the condition of satisfying its time and space constraints.
The remainder of this paper is organized as follows. Section
With blocks as the shipbuilding units, each block is assigned with a separate processing technology and time attribute depending on the manufacturing requirements and delivery date. The given time attributes, including earliest starting time (EST), due date (DD), and processing time (PT), should be taken into account. EST is determined by the material delivery date and building priority, and DD can be derived through the hull erection schedule, while PT is a prevalue assigned by personnel experience and empirical data. Another important parameter is the latest starting time (LST), which can be calculated by DD minus PT. These parameters made by the design institute reflect the processing time and betweenblock relationship as procedure constraints. In addition, the geometric shape of blocks is regarded as rectangles since most of the blocks are rectangles and the remaining part can be expressed easily. During the assembly, no block overlaps physically with others or overhangs the boundary of the work plate.
The blocks are moved sequentially and continuously into the work plate for processing and assembly and then are moved out. The process is repeated until all blocks are processed. Moreover, the blocks, once they enter the field, cannot be moved from their location until the end of the process. And the placement of blocks can only be orthogonal to the work plate. An example of BSS is shown in Figure
A comparison of different spatial schedules.
A 3D packing model with time constraint is widely used to solve the spatial scheduling problem, since it can vividly describe the dynamic allocation of blocks. As shown in Figure
Threedimensional packing model with time constraint.
The description above and Figure
The optimization objective in BSS is to minimize the makespan as shown in (
In this mathematical model, the input and output of the spatial schedule are given as follows:
The block spatial scheduling is a dynamic process, so the selection of processing position and starting time of any block would affect the whole scheduling. Just like a 3D packing problem, the optimal block placement way at any time point would not necessarily mean the final overall placement effect is the optimal. Thus, the optimal solution of the BSS problem could be found only from the global perspective. Starting from the two phases of spatial block allocation and assembly sequence, we propose a 2D spatial allocation method, BCA, that is suitable for dynamic scheduling and thereby use GA to optimize the assembly sequence.
The spatial allocation aimed to place the blocks into a work plate which already had blocks, so as to improve the space utilization rate. Heuristic allocation methods have already been studied. Baker et al. [
Comparison of different allocation methods after the addition of a bin.
Moreover, research on spatial allocation as a pure 2D bin packing problem has brought about some achievements. Huang et al. [
When a block is to be placed into a working platform, BCA computes the contact degree of all suitable positions in the space and selects the position with the best contact degree for block placement. The contact degree is defined as the position relationship between the newly allocated and the preexisting blocks (the work plate was considered as a special existing block), as shown in (
To describe the selection process for block placement, an example is given in Figure
An example of placement selection using the BCA.
Shipbuilding is a dynamic process in which the blocks are placed and removed continuously in the work plate. BCA considers the position relationship of blocks in order to maximally reduce the scattered spaces and improve the compactness of blocks. A comparison with traditional methods is shown in Figure
Spatial allocation in BCA after the addition of a bin.
Different priority rules such as EST and EST + LPT and the urgency of blocks have been used to study block assembly sequencing. However, BSS is a dynamic NPhard problem, so the use of a fixed sequencing rule will inevitably reduce the scheduling efficiency. Thus, we selected the starting time as a variable and used GA to globally operate and optimize the assembly sequence. Thereby, the spatial scheduling system is established.
Assembly sequence can be figured out by determining the starting process time (
Subsequently, the corresponding assembly sequence is calculated as follows:
Also, the blocks are arranged from large to small sizes if the starting time points of the blocks are the same in the sequencing process.
To quickly get a good solution, especially to the problem needing huge computation, we often set the initial solution in GA as the relatively optimal one. Hence, the initial solution is established by the EST rule (the assembly sequence of blocks is built according to the earliest starting time from early to late) in this algorithm, which is widely used in assembly sequencing. The process is given as follows:
The initial solution
This algorithm adopts iterative computation from
Example of crossover and mutation operators.
Crossover operator
Mutation operator
The crossover operator, which applies to pairs of chromosomes as shown in Figure
During iteration, the makespan of an assembly sequence is considered as the fitness corresponding to the chromosome. It can resolve the dynamic block spatial allocation. Here, a selection method is presented to obtain the chromosome with the best fitness. Firstly, the middle offspring is generated from the parent by using the crossover and mutation operators. Then, a new population is constructed from the parent and the middle offspring as follows:
Select the chromosomes in the middle offspring whose fitness is better than the parent’s and accept them as a part of the new population.
Build a completely new population from the remaining middle offspring and the parent with different probabilities.
Replace the worst solutions in the new population with the best solutions in the parent.
GA is actually a searching method based on iteration and selection. Figure
Spatial scheduling flowchart.
To benchmark the performances of BCA and the established system, we performed and compared experiments with representative BLF and EST that are widely used in the existing spatial scheduling systems. All computations and experiments were carried out on a workstation with an Inter(R) Xeon(R) CPU E52650 v3 and 64 GB memory using Matlab 2015a. The performance indicators were determined by averaging the data in ten tests.
Test data were collected from a large shipbuilding company in Shanghai, China, including 157 continuously processed real blocks and a work plate of 24 × 138 m^{2}. The major data structure of the block comprises the delayed starting time range (
Data structure of scheduling block.

Mean ( 
Std. ( 
Mean ( 
Std. ( 
Mean ( 
Std. ( 
Mean ( 
Std. ( 

157  7.02  3.66  25.83  4.55  14.06  4.38  9.7  3.06 
Ten groups of blocks were allocated in the initial (empty) work plate by BLF and BCA separately. Each group was composed of 30 blocks that were randomly selected from a total of 157 blocks. The results of spatial utilization ratio (
Performance comparison between BLF and BCA.
Algorithm 







BLF  90.8%  80.6%  86.4%  1.68  1.88  1.75 
BCA  93.7%  83%  89.5%  4.59  3.82  4.26 
Comparison of allocation effect between BLF and BCA.
Allocation effect in the BLF algorithm
Allocation effect in the BCA algorithm
The order and location of each block are shown in Figure
In actual shipbuilding, scheduling is a process to keep operation continuous. To examine the performance of the proposed scheduling system, we designed a virtual experiment: lay out the realworld blocks into the work plate one by one until all blocks are processed, while the nonspatial resources are adequate. To reflect the real scheduling of blocks, we introduced two definitions: the start time of rolling plan (
Performance results’ comparison.
Algorithm 







EST + BLF  25  243  273  78.93  69.9  17 
EST + BCA  25  231  261  82.91  72.8  42 
GA + BCA  26  218  248  94.68  75.4  19764 
GA is set to perform with a population number of 40 and 30 iterations. The scheduling results through EST + BLF, EST + BCA, and GA + BCA are shown in Table
Figure
Daily utilization of work plate.
Daily utilization of work plate in EST + BLF
Daily utilization of work plate in EST + BCA
Daily utilization of work plate in GA + BCA
Block spatial scheduling takes place in almost every stage of shipbuilding, which plays the key role in the successful operations of a shipyard. However, the scheduling level in the work plate is still very low. As is well known, it is a bottleneck against the improvement of shipbuilding efficiency. Here, according to the time and space attributes in block assembly, a dynamic 3D mathematical model was established. To resolve and optimize the BSS problem, we proposed an efficient allocation algorithm, BCA, and used GA to determine a good block assembly sequence. After that, computation and experiments were carried out by the data of 157 blocks from an actual shipyard. BCA improves space utilization and reduces scattered space in the work plate, which are more appropriate for dynamic block layout. The BCA + GA scheduling system could provide the suitable building position and starting time of each block. Compared with the conventional EST + BLF algorithm, the proposed algorithm not only generated a block assembly scheduling plan according to certain rules, but also achieved optimization from a global perspective.
In summary, the BCA + GA algorithm is capable of optimizing block spatial scheduling and improves the shipbuilding efficiency. It may also be extended to other similar manufacturing industries such as airplanes and special vehicle types. Future research should focus on more resourceconstrained and more accurate scheduling models.
The authors declare that they have no conflicts of interest.