Skip to main content
  • Original Article
  • Open access
  • Published:

Optimization of Fixture Number in Large Thin-Walled Parts Assembly Based on IPSO

Abstract

There are lots of researches on fixture layout optimization for large thin-walled parts. Current researches focus on the positioning problem, i.e., optimizing the positions of a constant number of fixtures. However, how to determine the number of fixtures is ignored. In most cases, the number of fixtures located on large thin-walled parts is determined based on engineering experience, which leads to huge fixture number and extra waste. Therefore, this paper constructs an optimization model to minimize the number of fixtures. The constraints are set in the optimization model to ensure that the part deformation is within the surface profile tolerance. In addition, the assembly gap between two parts is also controlled. To conduct the optimization, this paper develops an improved particle swarm optimization (IPSO) algorithm by integrating the shrinkage factor and adaptive inertia weight. In the algorithm, particles are encoded according to the fixture position. Each dimension of the particle is assigned to a sub-region by constraining the optional position range of each fixture to improve the optimization efficiency. Finally, a case study on ship curved panel assembly is provided to prove that our method can optimize the number of fixtures while meeting the assembly quality requirements. This research proposes a method to optimize the number of fixtures, which can reduce the number of fixtures and achieve deformation control at the same time.

1 Introduction

Large thin-walled parts are commonly-used components in aircraft manufacturing, ship building, and other industrial fields. They are usually assembled to construct outer shells, such as ship hulls and fuselage, which provide necessary space for passengers and cargoes. This kind of parts have large in-plane dimensions including the length and width (3 m−10 m), while the thickness of the part is very small (1 mm−10 mm), which leads to its low out-of-plane stiffness. Due to its low out-of-plane stiffness, deformation under the action of gravity is easy to occur. Its deformation will affect the final assembly quality, which will reduce the surface quality as well as the service life of products.

To suppress the part deformation in the assembly process, an "N-2-1" locating principle came into being [1]. According to the principle, N (N > 3) fixtures are placed on the main datum plane to reduce the deformation (shown in Figure 1). The research shows that this principle not only restricts the degree of freedom of large thin-walled parts, but also reduces their deformation. However, when arranging fixtures on the basis of “N-2-1” locating principle, how to arrange N fixtures reasonably has become a key problem for engineers. Therefore, lots of researches on the optimal design of fixture layout have been done.

Figure 1
figure 1

“N-2-1” locating principle for large thin-walled part assembly

Most researches on fixture layout optimization design are carried out under the situation that the number of fixtures is known. Researchers combine the finite element model with optimization algorithms to optimize fixture layout. Cai et al. [1] divided the plate into meshes with the finite element method (FEM). The deformation at the grid nodes was used to express the deformation of the plate. Then they applied the nonlinear programming algorithm to obtain the optimal fixture layout to reduce the overall deformation. Ahmad et al. [2,3,4] proposed to use the overall strain energy to represent the deformation of the part. They used the FEM to calculate the strain energy, and then used different optimization methods to conduct optimization. Bi et al. [5] used the partial least squares regression method to carry out optimization. Wu et al. [6] combined genetic algorithm (GA) with FEM to get an appropriate layout of the auxiliary support of the blade in order to suppress its deformation. ANSYS and ABAQUS are commonly-used finite element analysis (FEA) software. Liao and Wang [7] combined ANSYS and MATLAB to build the finite element model, and then used the mode purchasing sampling method to search for the appropriate fixture layout. Hajimiri et al. [8] used ABAQUS for FEA and calculated part deformation. They optimized fixture layout and clamping sequence by GA. Xiong et al. [9] and Yang et al. [10] used Python to modify the parameters of the finite element model, so as to calculate the part deformation under different fixture layouts. Different heuristic algorithms were utilized for optimization.

In addition to calculating the deformation directly in the FEA software, some researchers also chose to derive the stiffness matrix and modify it to calculate the deformation. Such behavior can be summarized as building a finite element solver. Du et al. [11] adopted the direct stiffness method (DSM) to obtain the deformation of each node. They modified the stiffness matrix according to modification rules proposed by Wu et al. [12], and then obtained the deformation according to Hooke's law. Liu and Hu [13] adopted the method of influence coefficients (MIC) to deal with the stiffness matrix. Camuz et al. [14] used MIC to obtain the plastic distribution of all nodes on the sheet metal. The method they proposed can efficiently improve the accuracy of deformation prediction.

The above studies are carried out when the number of fixtures has been determined based on engineering experience. In most assembly process of large thin-walled parts, the N fixtures are uniformly fixed on the X-Y plane (illustrated in Figure 1), while the heights of the “N” locators in Z direction are adjusted by workers according to the profile of each part to be assembled. With the large in-plane dimensions, the current dense and uniform fixture layout makes the value of “N” a great number. It brings long fixture setup time, extra assembly workload, and high cost in assembly process. Therefore, to reduce extra cost and improve the assembly efficiency under the requirements of assembly accuracy, the number of fixtures needs to be optimized.

Li and Melkote [15] employed the sequential quadratic programming technique to optimize the number of fixtures. They designed an iterative synthesis algorithm. Simulation results showed that their approach improved the workpiece location accuracy significantly. Wang et al. [16] proposed an approach which combined FEM with nonlinear programming algorithms to get the appropriate position and number of the fixtures. To optimize fixtures’ position and number, Liao [17] proposed a method based on GA. The deformation due to the gravity effect was also minimized. The method was applied to an industrial case and the practicability of the approach was demonstrated. Yang et al. [18] constructed the grey model to link the maximum deformations of the parts to the number of fixtures. The number of fixtures was found under the allowable maximum deformation. Khodabandeh et al. [19] came up with a novel idea which combined the FEM and multi-objective ant colony algorithm. The number and position of clamps were both optimized. This method was proved to be effective by the fixture layout optimization for the automotive side reinforcement. Aderiani et al. [20] utilized evolutionary optimization algorithms and compliant variation simulation of the assembly. They intended to optimize several fixture layout parameters simultaneously. Two cases from the automotive industry were studied to prove that the presented method was effective.

Although researchers have done some research on the optimization of fixture number, these studies still have limitations. First, most studies only consider the fixture layout of one part, while the assembly process involves at least two parts. Therefore, it is necessary to consider the fixture layout optimization of two parts at the same time. Second, most of the studies aim to reduce the part overall deformation. However, in large thin-walled part assembly process, in addition to the part deformation itself, there is also the assembly gap between the two parts. As many thin-walled parts are assembled by seam welding, the size of assembly gap has a great impact on the welding quality in the assembly process. Therefore, it is of great significance for improving the assembly quality to control the assembly gap size. Thirdly, the optimization of the number of fixtures was mostly carried out in the form of trial-and-error in the past. Researchers increased or reduced the number of fixtures one by one in each stage, looked for the optimal fixture layout respectively, and finally got the smallest number of fixtures. This optimization method has cumbersome steps and low efficiency. Therefore, an improved particle swarm optimization (IPSO) algorithm is proposed to optimize the number of fixtures for large thin-walled parts in this paper.

The optimization model is constructed in this paper. The DSM is used to calculate the part deformation and lay a foundation for the deformation and assembly gap control. Then, with the IPSO algorithm, the number of fixtures is optimized. Finally, taking ship curved panel assembly as a case, the feasibility of our method is proved. The arrangement of this paper is as follows: Section 2 introduces the construction of the optimization model, and Section 3 introduces the optimization algorithm. The case study of ship curved plane assembly is discussed in Section 4. Finally, the conclusions are summarized in Section 5.

2 Formulation of Fixture Layout Optimization for Large Thin-Walled Parts

According to the “N-2-1” locating principle, the layout scheme of “N” fixtures plays a critical role in reducing the part deformation in the assembly process. However, each additional fixture or adjustment of the fixture will produce additional costs. To reduce the waste and improve profits, it is essential to design an optimization model to minimize the number of fixtures while meet the assembly requirements. This section will describe the optimization problem, decision variables, optimization objectives and constraints, and construct the optimization model of the fixture layout.

2.1 Decision Variables and Optimization Objectives

In “N-2-1” principle, N fixtures placed on the main datum plane are aimed at reducing part deformation. Two fixtures are located on the second datum plane and one fixture is placed on the third plane. Among them, the fixtures on the main datum plane have great influence on the part deformation. Therefore, this paper mainly considers the layout optimization of “N” fixtures on the main datum plane. According to the engineering practice, fixtures cannot locate on sharp curves. Therefore, the fixture design space should subtract these areas. If the fixture positions are represented by the coordinate, it will be difficult to design constraints when the part shape is irregular. To simplify the problem, the fixture positions are expressed by discrete variables \({\varvec{X}}=[{x}_{1},{x}_{2},{x}_{3},\dots ,{x}_{N}]\). \({\varvec{X}}\) is a vector representing the fixture layout. \({x}_{i}(i=\mathrm{1,2},3,\dots ,N)\) means the position of each fixture, which is represented by the index of finite element mesh nodes. N denotes the fixture number.

The specific method is as follows. Using the finite element analysis software, two large thin-walled parts are divided into multiple grids. It is assumed that the fixtures are arranged at the grid nodes. There are \({n}_{1}\) nodes and \({n}_{2}\) nodes for part 1 and part 2, respectively. Considering that the fixture cannot be arranged at the sharp edge, the nodes at the edge of the parts are excluded from the optional range in this paper. \({NF}_{1}\) and \({NF}_{2}\) are used to represent the number of nodes which cannot be selected on two parts respectively. In other words, there are \(({n}_{1}+{n}_{2}-{NF}_{1}-{NF}_{2})\) nodes where fixtures can be located on the two parts. \({C}_{s}\) represents the set of optional nodes so that \({x}_{i}\in {C}_{s}, i=\mathrm{1,2},3,\dots, N\).

The optimization objective of this paper is as follows to optimize the number of fixtures:

$$\begin{array}{c}{\text{min}}\\ {x}_{i}\in {C}_{s}\end{array}N\left({\varvec{X}}\right),$$
(1)

where \(N\left({\varvec{X}}\right)\) means the number of fixtures when the fixture layout is \({\varvec{X}}\). The objective is to minimize the number of fixtures.

2.2 Constraints

Large thin-walled parts have low out-of-plane stiffness. This characteristic makes them easy to deform. Excessive part deformation will also cause excessive assembly gap between two parts, resulting in a decline in assembly quality. Therefore, while optimizing the number of fixtures, constraints are needed to make sure that the part deformation and the assembly gap meet the requirement. The DSM is used to help calculate part deformation and assembly gap.

Firstly, the overall part deformation is considered. The large thin-walled part is divided into multiple grids through finite element analysis, and the nodal deformation is used to characterize the overall deformation. To calculate the deformation, this paper assumes that the deformation at each node is linear elastic. Based on Hooke's law, the overall stiffness equation can be obtained as follows:

$${\varvec{K}}{\varvec{U}}={\varvec{F}},$$
(2)

where \({\varvec{F}}\in {R}^{n}\) represents the force vector, \({\varvec{K}}\in {R}^{n\times n}\) means the global stiffness matrix, and \({\varvec{U}}\in {R}^{n}\) is the deformation vector. \(n\) represents the number of nodal displacements. The deformation at each node of the part can be calculated by expanding Eq. (2) as follows:

$$\left[\begin{array}{ccc}\begin{array}{ccc}{k}_{11}& {k}_{12}& {k}_{13}\\ {k}_{21}& {k}_{22}& {k}_{23}\\ {k}_{31}& {k}_{32}& {k}_{33}\end{array}& \begin{array}{c}\cdots \\ \cdots \\ \cdots \end{array}& \begin{array}{c}{k}_{1n}\\ {k}_{2n}\\ {k}_{3n}\end{array}\\ \begin{array}{ccc}\vdots & \vdots & \vdots \end{array}& \ddots & \vdots \\ \begin{array}{ccc}{k}_{n1}& {k}_{n2}& {k}_{n3}\end{array}& \cdots & {k}_{nn}\end{array}\right] \begin{array}{c}{\varvec{U}}\end{array}=\left\{\begin{array}{c}{f}_{1}\\ {f}_{2}\\ \begin{array}{c}{f}_{3}\\ \vdots \\ {f}_{n}\end{array}\end{array}\right\}.$$
(3)

To improve the calculation efficiency, this paper used the DSM [11, 12] to calculate \({\varvec{U}}\). According to the DSM, \({\varvec{U}}\) is calculated by adjusting the stiffness matrix and force vector. Suppose the \({\alpha }\text{th}\) node displacement \({u}^{\alpha }\) is known and \({u}^{\alpha }={u}^{\alpha }\mathrm{^{\prime}}\). The DSM set \({f}_{\alpha }\mathrm{^{\prime}}={k}_{\alpha \alpha }{u}^{\alpha }\mathrm{^{\prime}}\), \({f}_{i}\mathrm{^{\prime}}={{f}_{i}-k}_{i\alpha }{u}^{\alpha }\mathrm{^{\prime}}\), and \({k}_{i\alpha }^{\mathrm{^{\prime}}}={k}_{\alpha i}^{\mathrm{^{\prime}}}=0\), where \(i=\mathrm{1,2},3,\dots ,n\) and \(i\ne \alpha\). In the fixture layout process, when a fixture is set on node \(\alpha\), it means that  \({u}^{\alpha } =0\). According to the direct stiffness method, the displacement boundary conditions imposed by the fixture can be easily expressed. For example, if \(\alpha\)=3, i.e., \({u}^{3}\)=0, then Eq. (3) can be modified as:

$$\left[\begin{array}{ccc}\begin{array}{ccc}{k}_{11}& {k}_{12}& {k}_{13}\\ {k}_{21}& {k}_{22}& {k}_{23}\\ 0& 0& {k}_{33}\end{array}& \begin{array}{c}\cdots \\ \cdots \\ \cdots \end{array}& \begin{array}{c}{k}_{1n}\\ {k}_{2n}\\ 0\end{array}\\ \begin{array}{ccc}\vdots & \vdots & \vdots \end{array}& \ddots & \vdots \\ \begin{array}{ccc}{k}_{n1}& {k}_{n2}& {k}_{n3}\end{array}& \cdots & {k}_{nn}\end{array}\right] {\varvec{U}}=\left\{\begin{array}{c}{f}_{1}\\ {f}_{2}\\ \begin{array}{c}0\\ \vdots \\ {f}_{n}\end{array}\end{array}\right\}.$$
(4)

Through this method, the original Eq. (2) can be rewritten as follows:

$${{{\varvec{K}}}^{{\boldsymbol{\prime}}}}_{1}\left({\varvec{X}}\right){{\varvec{U}}}_{1}\left({\varvec{X}}\right)={{{\varvec{F}}}^{{\boldsymbol{\prime}}}}_{1}\left({\varvec{X}}\right),{{{\varvec{K}}}^{{\boldsymbol{\prime}}}}_{2}\left({\varvec{X}}\right){{\varvec{U}}}_{2}\left({\varvec{X}}\right)={{{\varvec{F}}}^{{\boldsymbol{\prime}}}}_{2}\left({\varvec{X}}\right),$$
(5)

where \({{{\varvec{F}}}\mathrm{^{\prime}}}_{1}\left({\varvec{X}}\right)\) and \({{{\varvec{K}}}\mathrm{^{\prime}}}_{1}\left({\varvec{X}}\right)\) are the adjusted force vector and stiffness matrix of part 1, respectively. \({{{\varvec{F}}}\mathrm{^{\prime}}}_{2}\left({\varvec{X}}\right)\) and \({{{\varvec{K}}}\mathrm{^{\prime}}}_{2}\left({\varvec{X}}\right)\) denote the force vector and adjusted stiffness matrix of part 2, respectively. \({{\varvec{U}}}_{1}\left({\varvec{X}}\right)\) and \({{\varvec{U}}}_{2}\left({\varvec{X}}\right)\) are the node deformation vectors of part 1 and part 2 respectively.

During assembly, the surface profile tolerance of the large thin-walled part meets the requirement. In this paper, the surface profile is expressed by the node deformation. Therefore, the requirements for surface profile tolerance can be reflected by the following constraints:

$$\left\{\begin{array}{c}{u}_{1,i}\left({\varvec{X}}\right)=\sqrt{{u}_{1, ix}^{2}\left({\varvec{X}}\right)+{u}_{1,iy}^{2}\left({\varvec{X}}\right)+{u}_{1,iz}^{2}\left({\varvec{X}}\right)}\le \varepsilon , i=\mathrm{1,2},\dots ,{n}_{1},\\ {u}_{2,j}\left({\varvec{X}}\right)=\sqrt{{u}_{2,jx}^{2}\left({\varvec{X}}\right)+{u}_{2,jy}^{2}\left({\varvec{X}}\right)+{u}_{2,jz}^{2}\left({\varvec{X}}\right)}\le \varepsilon , j=\mathrm{1,2},\dots ,{n}_{2},\end{array}\right.$$
(6)

where \({u}_{1,ix}^{ }\left({\varvec{X}}\right)\), \({u}_{1,iy}^{ }\left({\varvec{X}}\right)\), \({u}_{1,iz}^{ }\left({\varvec{X}}\right)\), \({u}_{2,jx}^{ }\left({\varvec{X}}\right)\), \({u}_{2,jy}^{ }\left({\varvec{X}}\right)\), and \({u}_{2,jz}^{ }\left({\varvec{X}}\right)\) are linear displacements of the \(i\)th node of part 1 and the \(j\)th node of part 2 in the X, Y and Z directions, respectively. \(\varepsilon\) is the surface profile tolerance requirement.

Besides considering the surface profile, the influence of the assembly gap between the two parts on the assembly quality is also considered in this paper. In fact, if the assembly gap between the two plates is too large, it will greatly affect the quality of welding. The calculation formula for assembly gap dimension of two parts is as follows:

$$\left\{\begin{array}{c}\begin{array}{c}{\psi }_{k}\left({\varvec{X}}\right)=\sqrt{{\left({u}_{1,kx}\left({\varvec{X}}\right)-{u}_{2,kx}\left({\varvec{X}}\right)\right)}^{2}+{\left({u}_{1,ky}\left({\varvec{X}}\right)-{u}_{2,ky}\left({\varvec{X}}\right)\right)}^{2}+{\left({u}_{1,kz}\left({\varvec{X}}\right)-{u}_{2,kz}\left({\varvec{X}}\right)\right)}^{2}}, \\ H\left({\varvec{X}}\right)={\text{max}}\left({\psi }_{k}\left({\varvec{X}}\right)\right),\\ k=\mathrm{1,2},\dots ,{m}_{0},\end{array}\\ \end{array}\right.$$
(7)

where \({\psi }_{k}\left({\varvec{X}}\right)\) means the assembly gap at node \(k\) under fixture layout \({\varvec{X}}\). \({m}_{0}\) is the number of nodes along the assembly gap. \(H\left({\varvec{X}}\right)\) is the maximum assembly gap, which needs to meet the requirement of less than \(\sigma\). Therefore, the constraint is as follows:

$$H\left({\varvec{X}}\right)\le \sigma .$$
(8)

In general, the optimization model is as follows:

$$\begin{array}{c}{\text{min}}\\ {x}_{i}\in {C}_{s}\end{array}N\left({\varvec{X}}\right),s.t.\, {{{\varvec{K}}}^{\boldsymbol{^{\prime}}}}_{1}\left({\varvec{X}}\right){{\varvec{U}}}_{1}\left({\varvec{X}}\right)={{{\varvec{F}}}^{\boldsymbol{^{\prime}}}}_{1}\left({\varvec{X}}\right),{{{\varvec{K}}}^{\boldsymbol{^{\prime}}}}_{2}\left({\varvec{X}}\right){{\varvec{U}}}_{2}\left({\varvec{X}}\right)={{{\varvec{F}}}^{\boldsymbol{^{\prime}}}}_{2}\left({\varvec{X}}\right),{u}_{1,i}\left({\varvec{X}}\right)\le \varepsilon , i=\mathrm{1,2},\dots ,{n}_{1},{u}_{2,j}\left({\varvec{X}}\right)\le \varepsilon , j=\mathrm{1,2},\dots ,{n}_{2},H\left({\varvec{X}}\right)\le \sigma .$$
(9)

It can be found that the optimization model contains three unequal constraints. To simplify the model, the number of unequal constraints should be reduced. Therefore, the penalty function \(\delta ({\varvec{X}})\) is introduced. \(\delta ({\varvec{X}})\) is defined as follows:

$$\delta \left({\varvec{X}}\right)=\left\{\begin{array}{c}0, \varvec{X}\in {C}_{1} \, {\text{and}} \, \varvec{X}\in {C}_{2},\\ {\delta }_{0}\times \mathrm{max}\left\{{u}_{1,i}\left({\varvec{X}}\right),{u}_{2,j}\left({\varvec{X}}\right)\right\}, {\varvec{X}}\notin {C}_{1}\, {\text{or}}\, \varvec{X}\notin {C}_{2},\end{array}\right. i=\mathrm{1,2},\dots ,{n}_{1},j=\mathrm{1,2},\dots ,{n}_{2},$$
(10)

where \({C}_{1}=\{{{\varvec{X}}| u}_{1,i}\left({\varvec{X}}\right)\le \varepsilon , i=\mathrm{1,2},\dots ,{n}_{1}\}\), \({C}_{2}=\{{{\varvec{X}}| u}_{2,j}\left({\varvec{X}}\right)\le \varepsilon , j=\mathrm{1,2},\dots ,{n}_{2}\}\), and \({\delta }_{0}\) is a positive parameter. \({\delta }_{0}\) is much greater than \(\sigma .\) At this time, the three unequal constraints of the original problem can be written as follows:

$${H}\mathrm{^{\prime}}\left({\varvec{X}}\right)=H\left({\varvec{X}}\right)+\delta \left({\varvec{X}}\right)\le \sigma .$$
(11)

It can be proved that Eq. (11) is equivalent to the three unequal constraints in Eq. (9). The proof process is as follows:

  1. (1)

    When \({\varvec{X}}\notin {C}_{1} \,{\text{or}} \, {\varvec{X}}\notin {C}_{2}\), \(\delta \left({\varvec{X}}\right)\) is much greater than \(\sigma\) as \({\delta }_{0}\) is much greater than \(\sigma\). Therefore, \({H}\mathrm{^{\prime}}\left({\varvec{X}}\right)\) will be greater than \(\sigma\).

  2. (2)

    When \(H\left({\varvec{X}}\right)\) is greater than \(\sigma\), because \(\delta \left({\varvec{X}}\right)\) is greater than or equal to 0, \({H}\mathrm{^{\prime}}\left({\varvec{X}}\right)\) must be greater than \(\sigma\).

  3. (3)

    When \({\varvec{X}}\) satisfies all three unequal constraints, \(\delta \left({\varvec{X}}\right)\) equals to 0 and \(H\left({\varvec{X}}\right)\) is less than or equal to \(\sigma\). Therefore, \({H}\mathrm{^{\prime}}\left({\varvec{X}}\right)\le \sigma\) holds.

The optimization model is simplified as follows:

$$\begin{array}{c}\text{min}\\ {x}_{i}\in {C}_{s}\end{array}N\left({\varvec{X}}\right),s.t.\, {{{\varvec{K}}}^{\boldsymbol{^{\prime}}}}_{1}\left({\varvec{X}}\right){{\varvec{U}}}_{1}\left({\varvec{X}}\right)={{{\varvec{F}}}^{\boldsymbol{^{\prime}}}}_{1}\left({\varvec{X}}\right),{{{\varvec{K}}}^{\boldsymbol{^{\prime}}}}_{2}\left({\varvec{X}}\right){{\varvec{U}}}_{2}\left({\varvec{X}}\right)={{{\varvec{F}}}^{\boldsymbol{^{\prime}}}}_{2}\left({\varvec{X}}\right),{H}^{{\prime}}\left({\varvec{X}}\right)\le \sigma .$$
(12)

3 Method for Fixture Layout Optimization for Large Thin-Walled Parts

After constructing the optimization model, we need to apply the optimization algorithm to calculate the optimal number of fixtures. As a classical heuristic algorithm, particle swarm optimization (PSO) algorithm has simple structure and fast search speed. It is often used to solve fixture layout optimization problems [21,22,23,24]. To further improve the search ability for the fixture layout optimization, the IPSO algorithm is proposed. This section introduces the IPSO algorithm and the specific optimization process.

3.1 Improved Particle Swarm Optimization Algorithm

Kennedy and Eberhart [25] first introduced the PSO algorithm. PSO simulates a behavior of birds gathering towards the same target in a multidimensional space. According to the actual requirements, we improve the PSO algorithm. Section 3.1.1, 3.1.2 and 3.1.3 respectively introduce the IPSO algorithm from three aspects: mapping between fixture layouts and particles, updating particle velocity and position, and selection of optimal fixture layouts.

3.1.1 Mapping Between Fixture Layouts and Particles

There are \(NP\) particles in PSO algorithm, and every particle represents a solution of the problem. As for the optimization model in this paper, each particle represents a fixture layout with \({N}^{*}\) dimensions, where \({N}^{*}\) means the maximum number of fixtures for two parts. The \(m\)th particle can be expressed as \({{\varvec{X}}}_{{\varvec{m}}}=[{x}_{m,1},{x}_{m,2},{x}_{m,3},\dots ,{x}_{m,{N}^{*}}]\), where \({x}_{m,l}\space(l=\mathrm{1,2},3,\dots, {N}^{*})\) indicates the index of the node where the \(l\)th fixture are located. For a fixture, it can be placed on any node on the part except the nodes on the edge. However, considering the large number of optional nodes and large solution space, it will become difficult to search feasible solutions. To improve the efficiency, the optional position range of each fixture is constrained. The original set \({C}_{s}\) is divided into \({N}^{*}\) subsets. These \({N}^{*}\) subsets have no intersection with each other, and their combination constitutes \({C}_{s}\). For the \(l\)th fixture, its position meets the condition that \({x}_{m, l}\in {C}_{s}^{l}\), where \({C}_{s}^{l}\) represents the set of optional nodes for the \(l\)th fixture.

As the assembly process involves two parts and the fixtures are scattered on them, a particle is also composed of two parts. One part represents the fixture layout on part 1 and the other part represents the fixture layout on part 2. As shown in Figure 2, the first \({n}_{1}^{*}\)-dimensional variable represents the positions of \({n}_{1}^{*}\) fixtures for part 1, while the last \({n}_{2}^{*}\)-dimensional variable represents the positions of \({n}_{2}^{*}\) fixtures for part 2. \({n}_{1}^{*}\) and \({n}_{2}^{*}\) mean the maximum number of fixtures for part 1 and part 2, respectively. The sum of \({n}_{1}^{*}\) and \({n}_{2}^{*}\) equals \({N}^{*}\).

Figure 2
figure 2

Sample particle in the IPSO algorithm

In the general PSO algorithm, the variable has a range. Once the variable exceeds the range, it needs to be pulled back. However, the goal of this paper is to optimize the number of fixtures. Therefore, when the variable is out of range, it is not pulled back to the range, but is regarded as the position of virtual fixtures. The number of fixtures is reduced in this way. For example, suppose after iteration \(t\), \({{\varvec{X}}}_{{\varvec{m}}}\left(t\right)=[{x}_{m,1},{x}_{m,2},{x}_{m,3},\dots ,{x}_{m,p},\dots ,{x}_{m,q},\dots ,{x}_{m,{N}^{*}}]\), where \({x}_{m,p}\) is outside the optional range \({C}_{s}^{p}\), and \({x}_{m,q}\) is outside the optional range \({C}_{s}^{q}\). Therefore, \({x}_{m,p}\) and \({x}_{m,q}\) are regarded as the position of virtual fixtures. In this case, the number of real fixtures becomes \({(N}^{*}-2)\), which means the fitness value of the \(m\)th particle \(N\left({{\varvec{X}}}_{{\varvec{m}}}\right)\) equals to \({(N}^{*}-2)\). In this way, the number of fixtures is optimized.

3.1.2 Updating Particle by Integrating Shrinkage Factor and Adaptive Inertia Weight

During the iteration, the velocity \({{\varvec{V}}}_{{\varvec{m}}}(t)\), the current position \({{\varvec{X}}}_{{\varvec{m}}}(t)\), the best position a particle reached in previous iterations \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t)\), and the best position of all particle \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t)\), determine the new position of particle \(m\). Every dimension of velocity \({\varvec{V}}_{\varvec{m}}(t+1)\) and position \({\varvec{X}}_{\varvec{m}}(t+1)\) is updated as follows:

$$\begin{aligned} {v_{m,d}}\left( {t + 1} \right) & = \omega {v_{m,d}}\left( t \right) + {c_1}{r_1}\left( {x_{m,d}^{pbest}(t) - {x_{m,d}}\left( t \right)} \right) + {c_2}{r_2}\left( {x_d^{gbest}(t) - {x_{m,d}}\left( t \right)} \right) \\ & = \left\{ {\begin{array}{*{20}{c}} {{V_{\min }},{v_{m,d}}\left( {t + 1} \right) \leqslant {V_{\min }}}, \\ {{v_{m,d}}\left( {t + 1} \right),{V_{\min }} < {v_{m,d}}\left( {t + 1} \right) < {V_{\max }}} \\ {{V_{\max }},{V_{\max }} \leqslant {v_{m,d}}\left( {t + 1} \right)}, \end{array}} \right., \\ & {x_{m,d}}\left( {t + 1} \right) = {x_{m,d}}\left( t \right) + {v_{m,d}}\left( {t + 1} \right), \\ \end{aligned}$$
(13)

where \({r}_{1}\) and \({r}_{2}\) are the random real numbers in range [0, 1]. \({c}_{1}\) and \({c}_{2}\) are the learning factors. \({V}_{\mathrm{max}}\) and \({V}_{\mathrm{min}}\) are the maximum and minimum values of particle velocity. \(\omega\) is an inertia weight coefficient. The subscript \(d\) indicates the \(d\)th dimension of the vectors. \(v_{m,d}(t+1), v_{m,d}(t), {x_{m,d}^{pbest}}(t), x_{m,d}\left( t \right), x_{d}^{gbest}(t)\, \text{and} \, x_{m,d}(t+1)\) represent the dth element of \(\varvec{V}_{\varvec{m}}(t+1), \varvec{V}_{\varvec{m}}(t), {\varvec{X}_{\varvec{m}}^{\varvec{pbest}}}(t), {\varvec{X}}_{\varvec{m}}\left( t \right), {\varvec{X}}^{\varvec{gbest}}(t)\, \text{and} \, {\varvec{X}}_{\varvec{m}}(t+1)\), respectively.

Learning factors \({c}_{1}\) and \({c}_{2}\) reflect the information exchange between particles. Setting a larger \({c}_{1}\) will cause too many particles to search in the local range, while a larger \({c}_{2}\) will make the particles trapped in local optimal. To control the velocity of particles and make the algorithm achieve the balance between local search and global search, the shrinkage factor \(\varphi\) is introduced [26]. This adjustment method can ensure the convergence of PSO algorithm [27]. Therefore, the improved velocity and position update equation is as follows:

$$\begin{aligned} {v_{m,d}}\left( {t + 1} \right) & = \varphi \left( {\omega {v_{m,d}}\left( t \right) + {c_1}{r_1}\left( {x_{m,d}^{pbest}\left( t \right) - {x_{m,d}}\left( t \right)} \right) + {c_2}{r_2}\left( {x_d^{gbest}\left( t \right) - {x_{m,d}}\left( t \right)} \right)} \right) \\ & = \left\{ {\begin{array}{*{20}{c}} {{V_{\min }},{v_{m,d}}\left( {t + 1} \right) \leqslant {V_{\min }}} \\ {{v_{m,d}}\left( {t + 1} \right),{V_{\min }} < {v_{m,d}}\left( {t + 1} \right) < {V_{\max }}} \\ {{V_{\max }},{V_{\max }} \leqslant {v_{m,d}}\left( {t + 1} \right)}, \end{array}} \right., \\ & \varphi = \frac{2}{{\left| {2 - \left( {{c_1} + {c_2}} \right) - \sqrt {{{\left( {{c_1} + {c_2}} \right)}^2} - 4\left( {{c_1} + {c_2}} \right)} } \right|}}, \\ & {x_{m,d}}\left( {t + 1} \right) = {x_{m,d}}\left( t \right) + {v_{m,d}}\left( {t + 1} \right). \\ \end{aligned}$$
(14)

In PSO algorithm, inertia weight coefficient \(\omega\) is a very important parameter. It indicates the ability of particles to maintain the motion state of the previous moment. Also, it can help the algorithm keep the balance between local search and global search. The larger \(\omega\) is, the stronger the global search ability can be. When \(\omega\) is small, the local search ability become strong. For the optimization algorithm, we hope that it not only has good global search ability to find better solutions, but also can accurately search the local space of better solutions. Therefore, many researchers are interested in the improvement of the inertia weight coefficient \(\omega\) [28,29,30,31]. This paper chooses to introduce adaptive inertia weight [32]. The calculation of \(\omega\) of the \(m\)th particle is as follows:

$${\omega }_{m}(t)=\left\{\begin{array}{c}{\omega }_{\mathrm{min}}+\left({\omega }_{\mathrm{max}}-{\omega }_{\mathrm{min}}\right)\frac{N\left({{\varvec{X}}}_{{\varvec{m}}}{(t)}\right)-\mathrm{min}\left(N\left({{\varvec{X}}}{ }{(t)}\right)\right)}{\stackrel{-}{N\left({{\varvec{X}}}{(t)}\right)}-\mathrm{min}\left(N\left({{\varvec{X}}}{(t)}\right)\right)}, N\left({{\varvec{X}}}_{{\varvec{m}}}{(t)}\right)\le \overline{N\left({\varvec{X}}{(t)}\right)},\\ {\omega }_{\mathrm{max}}, N\left({{\varvec{X}}}_{{\varvec{m}}}{(t)}\right)>\overline{N\left({\varvec{X}}{(t)}\right)},\end{array}\right.$$
(15)

where \({\omega }_{\text{min}}\) and \({\omega }_{\text{max}}\) are the preset minimum and maximum inertia weights respectively, \(\overline{N\left({\varvec{X}}{(t)}\right)}\) is the average fitness of all particles in the \(t\)th iteration, \(\mathrm{min}\left(N\left({{\varvec{X}}}^{ }(t)\right)\right)\) is the minimum fitness in the \(t\)th iteration, and \(N\left({{\varvec{X}}}_{{\varvec{m}}}(t)\right)\) means the fitness of the \(m\)th particle in the \(t\)th iteration. The meaning of this equation is as follows: The smaller the fitness value is, the closer it is to the optimal solution, which means a greater need of local search. Conversely, global search is more needed.

3.1.3 Selection of Optimal Fixture Layouts

Figure 3 illustrates the specific flow of the IPSO algorithm. As can be seen from the flow chart, selecting and updating \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\) and \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\) is a very important step in PSO algorithm. For unconstrained optimization problems, only the fitness value is needed when selecting \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\) and \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\). However, the optimization problem in this paper is a constrained optimization problem. Therefore, when updating \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\) and \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\), the constraint \(H\mathrm{^{\prime}}\left({{\varvec{X}}}_{{\varvec{m}}}\right)\) needs to be carefully considered. \(H\mathrm{^{\prime}}\left({{\varvec{X}}}_{{\varvec{m}}}\right)\) can be obtained based on Eq. (11). In this process, DSM is applied to calculate node deformation vectors, which are necessary for calculating \(H\mathrm{^{\prime}}\left({{\varvec{X}}}_{{\varvec{m}}}\right)\). The specific application of DSM is as shown in Section 2.2. \(H\mathrm{^{\prime}}\left({{\varvec{X}}}_{{\varvec{m}}}\right)\) will be one of the key bases for updating \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\) and \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\).

Figure 3
figure 3

Flow chart of the IPSO algorithm

The criteria of updating \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\) and \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\) are as follows:

  1. (1)

    When there are particles to make \(H\mathrm{^{\prime}}\) meet the constraint of \(H\mathrm{^{\prime}}\le \sigma\), select the one with the smallest \(N\);

  2. (2)

    When there is no particle to make \(H\mathrm{^{\prime}}\) meet the constraint of \(H\mathrm{^{\prime}}\le \sigma\), select the one with the smallest \(H\mathrm{^{\prime}}\);

  3. (3)

    When there are multiple particles that can make \({H}\mathrm{^{\prime}}\) meet the constraint of \(H\mathrm{^{\prime}}\le \sigma\), and their \(N\) is equal, select the one with the smallest \(H\mathrm{^{\prime}}\).

The criteria help us avoid selecting a fixture layout that has a small number of fixtures but cannot control part deformation.

As for the \(m\)th particle, the best position it reached in previous \(t\) iterations is recorded as \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t)\). After the \((t+1)\) th iteration, the resulting fixture layout is recorded as \({{\varvec{X}}}_{{\varvec{m}}}(t+1)\). The process of updating \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t+1)\) is shown in Algorithm 1. The process of updating \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t+1)\) is actually a process of selecting a better solution between \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t)\) and \({{\varvec{X}}}_{{\varvec{m}}}(t+1)\). \(H\mathrm{^{\prime}}\) and \(N\) are two important criteria for evaluating which solution is better. There are many situations when comparing \(H\mathrm{^{\prime}}\) and \(N\), so we listed how to make choices in various situations in Algorithm 1.

After updating \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t+1)\), \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t+1)\) is waiting to be updated. \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t+1)\) is recorded as the swarm’s best position after \((t+1)\) iterations. It is selected from \(\left\{{{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\left(t+1\right), m=\mathrm{1,2},\cdots ,NP\right\}\). Because \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t+1)\) is chosen from two solutions, while \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t+1)\) is chosen from \(NP\) solutions, the update procedures are different. The new swarm’s best position \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}(t+1)\) is updated according to Algorithm 2. \(H\mathrm{^{\prime}}\) and \(N\) are both considered when updating \({{\varvec{X}}}_{\boldsymbol{ }}^{{\varvec{g}}{\varvec{b}}{\varvec{e}}{\varvec{s}}{\varvec{t}}}\left(t+1\right).\)

figure a

Algorithm 1 Procedure of updating \({{\varvec{X}}}_{{\varvec{m}}}^{{\varvec{p}}{\varvec{best}}}(t+1)\) in the (t+ 1)th iteration

figure b

Algorithm 2 Procedure of updating \({{\varvec{X}}}^{{\varvec{g}}{\varvec{best}}}(t+1)\) in the (t+1)th iteration

3.2 Process of Fixture Layout Optimization

By combining the FEM with the IPSO algorithm, this paper optimizes the number of fixtures for large thin-walled parts. The specific optimization steps are shown in Figure 4.

Figure 4
figure 4

Fixture layout optimization process

  • Step 1. Build a three-dimensional model according to the shape and size of the part. After modeling, export the data interaction file of the model.

  • Step 2. Meshed the model by the finite element meshing tool, and derive the data interaction file of the model. The number of finite element mesh nodes of two parts and the coordinates of each node are extracted from the data interaction file.

  • Step 3. Read the data interaction file using the FEA software. Set the material parameters. According to the actual situation of the assembly and splicing of the two thin plates, reasonably simplify the model, set that there is no interaction between the two parts and load gravity. After the parameter setting is completed, the stiffness matrixes and force vectors of the two parts are derived and recorded as \({{\varvec{K}}}_{1}\), \({{\varvec{K}}}_{2}\), \({{\varvec{F}}}_{1}\) and \({{\varvec{F}}}_{2}\) respectively.

  • Step 4. Use MATLAB to read the derived stiffness matrixes and force vectors. Set the positions of the three fixtures placed on the 2nd and 3rd datum planes according to the "N-2-1" positioning principle, and modify \({{\varvec{K}}}_{1}\), \({{\varvec{K}}}_{2}\), \({{\varvec{F}}}_{1}\) and \({{\varvec{F}}}_{2}\).

  • Step 5. Apply the IPSO algorithm to iteratively find the number and position of fixtures that meet all constraints and minimize the objective function. Use DSM to calculate \(H\mathrm{^{\prime}}\) in each iteration. Calculate \(N\). Select the optimal solution according to \(H\mathrm{^{\prime}}\) and \(N\).

  • Step 6. Validate and visualize the optimization results. According to the optimal fixture layout, we found out that the FEA software is used to design constraints at the corresponding grid nodes of the finite element model. Carry out finite element simulation, obtain the deformation nephogram of the parts, and complete the result verification and visualization.

4 Case Study

A case of ship curved plane assembly is studied to demonstrate the effectiveness of our method. The curved plane used in ship assembly has the characteristics of large size and low out-of-plane stiffness, which is easy to deform under the effect of force. Therefore, it is essential to reasonably design the fixture layout to reduce the deformation. Section 4.1 introduces the background and significance of the problem and constructs the finite element model. The optimization results are shown in 4.2. The optimization result of this method are compared with that obtained by iterative trial-and-error procedure based on simulated annealing (SA) algorithm [11] in Section 4.3, which shows the advantages of this method.

4.1 Problem Description of Ship Curved Panel Assembly

Large curved panels are widely used in ship building. Hundreds of large curved panels with different shape and size are assembled and welded together to be ship hull. With the characteristics of large in-plane dimensions, small thickness and low out-of-plane stiffness, large curved panels are very easy to deform under the action of gravity. The deformation of panels will introduce assembly gap in the assembly process. Incompliant assembly gap will affect the welding quality and efficiency [33]. Therefore, it is necessary to control the assembly gap dimension in the ship assembly process.

It is a common approach to restrain the part deformation by using reasonably arranged fixtures. At present, the uniformly distributed jig frame is usually used to support the large cured panels and restrain the deformation in the assembly process. In fact, this experience-based fixture layout not only makes it difficult to achieve satisfactory results in restraining deformation, but also causes unnecessary waste due to the excessive number of fixtures. To reduce the assembly cost and effectively restrain the deformation, the fixture number and the corresponding layout need to be optimized.

The research objects of this case are two ship parts located at the bow. Part 1 and part 2 are two curved parts. The welding method used in the part assembly process is laser welding or arc welding. During the welding process, two curved parts are welded by long continuous welding seam [11]. The lengths of four sides for part 1 are 5200 mm, 4800 mm, 2800 mm and 4200 mm. The lengths of four sides for part 2 are 5200 mm, 5100 mm, 1500 mm and 1900 mm. Both parts are 6 mm thick. The density, Poisson’s ratio, and Young’s modulus of the two parts are 7.85×10−3 g/mm3, 0.3, and 210000 N/mm2 respectively.

Using HyperMesh 13.0 for mesh generation. The size of the mesh is 100 mm \(\times\) 100 mm. Part 1 is divided into 1751 elements with 1828 nodes; Part 2 is divided into 826 elements with 892 nodes. Figure 5 shows the finite element model. This case only considers the influence of the gravity of the parts themselves on the deformation during the assembly process. The gravity is evenly distributed on the two parts in Z direction, and the gravitational acceleration is set as 9.81 m/s2.

Figure 5
figure 5

Finite element models of two parts to be assembled

After establishing the finite element model, the stiffness matrixes \({{\varvec{K}}}_{1}\) and \({{\varvec{K}}}_{2}\), and force vectors \({{\varvec{F}}}_{1}\) and \({{\varvec{F}}}_{2}\) are derived. Table 1 shows the input parameters which are set according to the obtained model and the known information in the assembly process. The parameter settings of the IPSO algorithm are shown in Table 2. The number of particles, the number of iterations, and the particle velocity variation range are determined through trial and error. To balance the search time and search scope, these parameters are set to the values in Table 2. The variable dimension is determined according to the maximum number of fixtures on two parts. The values of learning factors and the variation range of inertia weight are set according to Ref. [26].

Table 1 Setting of input parameters
Table 2 Setting of algorithm parameters

4.2 Results of Optimal Design

After setting the initial parameters, the appropriate fixture layout is found after several iterations. This section introduces the optimized fixture layout and the changes of deformation and assembly gap before and after optimization. The comparison demonstrates the effectiveness of our method.

After 25 iterations, the optimized number and position of fixtures are obtained. The iterative process is shown in Figure 6. Table 3 shows the number of fixtures on the two parts and nodes where the fixtures are located before and after optimization. Before optimization, there are 28 fixtures on part 1 and 14 fixtures on part 2. The fixtures are evenly distributed on the two parts in the X-Y plane (shown in Figure 7). After optimization, the number of fixtures on part 1 is \({m}_{1}=21\), and the number of fixtures on part 2 is \({m}_{2}=11\). The total number of fixtures is reduced from 42 to 32. Figure 8 shows the X-Y plane projection of the fixture layout.

Figure 6
figure 6

Iterative process of the IPSO algorithm

Table 3 Comparison of the number and position of fixtures
Figure 7
figure 7

X-Y plane projection of fixture layout before optimization

Figure 8
figure 8

X-Y plane projection of fixture layout after optimization

Although the number of fixtures is reduced, the optimized fixture layout still has a good effect of controlling deformation through the optimization of fixture position. Table 4 shows the deformation of parts with different fixture layouts. Comparing the dimension of the gap between the two parts, it can be found that the mean gap is 1.32 mm and the maximum gap is 1.86 mm when the fixture is evenly distributed. The optimized fixture layout controls the mean gap dimension to 0.37 mm and the maximum gap to 0.69 mm. They are reduced by 72.0% and 62.9% respectively compared with the former. It can be found that when the number of fixtures is 42, uniformly distributed fixtures cannot effectively control the part deformation. The maximum node deformation of the part is 4.53 mm. With the optimized fixture layout, the maximum deformation of parts is 2.20 mm, 51.4% reduced than the former. In terms of average deformation, before optimization, the mean deformation is 0.78 mm, while after optimization, the mean deformation is 0.36 mm. The average deformation is reduced by 53.8%.

Table 4 Comparison of part deformation and assembly gap under different fixture layout

To intuitively show the part deformation under different fixture layouts, the deformation diagram of the part is drawn using ABAQUS 6.14. Figure 9 shows the deformation of parts under uniform layout and optimized layout. It can be found from the figure that the most of nodal deformation of the two parts is well-controlled when the fixtures are evenly distributed. However, the deformation of some nodes at the edge of part 2 is serious. This is because when the fixtures are evenly distributed, the fixtures at the edge are arranged sparsely due to the size and shape of part 2. After optimization, the deformation of the two parts is well controlled because the deformation constraints are set before optimization. The maximum deformation of part 2 is reduced from 4.53 mm to 2.20 mm. Figure 9 also shows the assembly gap between two parts before and after optimization. It can be found from Figure 9 that when fixtures are uniformly distributed, the size of the assembly gap between the two parts increases along the X-direction and the gap is obvious. With the same deformation scale factor in ABAQUS 6.14, the assembly gap between these two parts is significantly reduced after optimization.

Figure 9
figure 9

Deformation and assembly gap with different fixture layouts

Figure 10 shows two different distribution histograms of node deformation before and after optimization. Figure 10(a) shows the deformation when a uniform layout is adopted. It can be found that the displacement of most nodes is less than 1 mm, and the displacement is mostly concentrated in 0.5−1 mm. However, the displacement of a few nodes has not been well controlled, exceeding 3 mm. Figure 10(b) shows the deformation after the fixture layout is optimized. It can be found that the nodal displacement is concentrated between 0−0.5 mm, and only a small part of the nodal displacement exceeds 1 mm. Figure 11 shows the gap dimensions at each node along the assembly edge. Compared with that before optimization, the gap dimensions are significantly reduced. Figures 10 and 11 illustrate that although our objective is to reduce the number of fixtures, the deformation and assembly gap dimensions of the two parts are reduced due to the setting of constraints.

Figure 10
figure 10

Nodal deformation distribution

Figure 11
figure 11

Comparison of gap dimensions of nodes along the assembly edge before and after optimization

4.3 Comparison and Discussion

This section proves the reliability and advantages of the proposed method from two aspects. Firstly, we validate the calculation accuracy of DSM. Secondly, the performance of IPSO algorithm for the number of fixtures optimization are compared with the traditional trial-and-error procedure.

To prove the accuracy of the calculation results of DSM, the deformation obtained by the DSM is compared with that obtained by ABAQUS 6.14. Taking the optimized fixture layout as an example, the absolute differences of the deformation results obtained by the two methods are shown in Table 5. It can be found that the order of magnitude of the absolute differences is \({10}^{-4}\), so the calculation result of DSM is credible. This means that the method of using DSM to calculate deformation does not need to call the FEA software frequently, and the calculation process is simpler.

Table 5 Deformation differences between DSM and FEA with the optimized fixture layout

Based on general PSO algorithm, the IPSO algorithm integrates the shrinkage factor and adaptive inertia weight to improve the search ability. To verify the superiority of the IPSO algorithm, we compare general PSO and IPSO through experiments. We run two algorithms 10 times respectively. The parameters of the IPSO algorithm are shown in Table 2, while PSO algorithm does not have shrinkage factor, and the inertia weight is fixed at 0.9. The results are plotted as a boxplot, as shown in Figure 12. It can be seen from the figure that the overall optimization result obtained by IPSO is better. The median of the numbers of fixtures obtained by IPSO algorithm is 32, while that obtained by PSO algorithm is 34. In addition, the results obtained by PSO algorithm are more scattered, which indicates that the search ability of PSO is unstable. The comparison results show that IPSO algorithm has better and more stable search ability.

Figure 12
figure 12

Comparison of IPSO and PSO

It is also essential to compare the method with the traditional iterative trial-and-error process to evaluate the performance of our method. Du et al. [11] used the combination of DSM and SA algorithm to optimize the fixture layout. Their purpose was to minimize the assembly gap between the two parts. The number of fixtures was determined before optimization. Based on the method proposed by Du et al., this paper carries out iterative trial-and-error to reduce the number of fixtures. Then, the trial-and-error procedure is compared with the IPSO algorithm. The iterative trial-and-error procedure on the basis of the method developed by Du et al. is as follows: Firstly, optimize the fixture layout with a constant number of fixtures until the assembly gap and deformation meet the requirements. Then, remove a fixture at random and continue to optimize the fixture layout until the requirements are met. Iterate until the number of fixtures is reduced to the target.

According to the optimization results shown in the previous section, the initial number of fixtures is 42 and the target number is 32. The relevant parameters of SA algorithm are consistent with those in the research conducted by Du et al. [11]. The data related to the finite element models of the parts are modified according to the case in this paper.

Through the above method, the number of fixtures is reduced. Table 6 shows the comparison between the result found by the iterative trial-and-error process and the proposed method. Run these two programs on a laptop with 11th Gen Intel (R) Core (TM) i5-11400H @ 2.70 GHz processor, 16 GB of RAM, it takes longer time for the iterative trial-and-error procedure to reduce the number of fixtures by the same degree. Besides, the ability of the fixture layout found by iterative trial-and-error procedure in controlling deformation and assembly gap is not as good as that found by the proposed method. With the fixture layout obtained by iterative trial-and-error method, the maximum deformation of the two parts is smaller, but the maximum gap, average gap and average deformation are not as small as that with the fixture layout obtained by the IPSO. The results in Table 6 show that the IPSO algorithm has higher efficiency and higher solution accuracy.

Table 6 Comparison of two different methods

5 Conclusions

  1. (1)

    An optimization model with the objective of minimizing the number of fixtures is proposed. We designed constraints to ensure that the deformation of parts and the assembly gap meet the requirements while reducing the number of fixtures. The stiffness matrixes and force vectors are derived by FEA software. The DSM is used to calculate the deformation. Using DSM can avoid frequently calling FEA software and make the process of calculating deformation easier.

  2. (2)

    The IPSO algorithm is used for optimization. Each dimension of a particle represents the position of a fixture. To improve the solution efficiency, we restrict the feasible position of each fixture to ensure that the feasible positions of a fixture are in a small area. The number of feasible solutions is greatly reduced, and the phenomenon that multiple fixtures concentrated in a unified area is avoided. In addition, this paper introduces adaptive inertia weight and shrinkage factor to weigh local search and global search.

  3. (3)

    A case of ship curved plane assembly is prepared. This case demonstrates that our approach can significantly reduce the number of fixtures while controlling the deformation and assembly gap very well. Comparing the deformation calculated by DSM with that calculated by FEA, it is proved that DSM can accurately calculate the deformation. In addition, the IPSO algorithm is compared with the general PSO algorithm, and the result shows that the IPSO algorithm has stronger search ability. Finally, comparing our method with the Iterative trial-and-error method, it is proved that our method has higher computational efficiency.

Data Availability

The data that supports the study is available from the corresponding author upon reasonable request.

References

  1. W Cai, S J Hu, J X Yuan. Deformable sheet metal fixturing: principles, algorithms, and simulations. Journal of Manufacturing Science and Engineering, 1996, 118(3): 318-324.

    Article  Google Scholar 

  2. Z Ahmad, M Zoppi, R Molfino. Fixture layout optimization using element strain energy and genetic algorithm. World Academy of Science, Engineering and Technology, 2013, 7(10): 1924 - 1930.

    Google Scholar 

  3. Z Ahmad, M Zoppi, R Molfino. Preliminary study on fixture layout optimization using element strain energy. World Academy of Science, Engineering and Technology, 2013, 7(4): 557 - 563.

    Google Scholar 

  4. Z Ahmad, T Sultan, M Asad, et al. Fixture layout optimization for multi point respot welding of sheet metals. Journal of Mechanical Science and Technology, 2018, 32(4): 1749-1760.

    Article  Google Scholar 

  5. Y Bi, W Yan, Y Ke. Multi load-transmitting device based support layout optimization for large fuselage panels in digital assembly. Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science, 2014, 229(10): 1792-1804.

    Google Scholar 

  6. B Wu, Z Zheng, J Wang, et al. Layout optimization of auxiliary support for deflection errors suppression in end milling of flexible blade. International Journal of Advanced Manufacturing Technology, 2021, 115(5-6): 1889-1905.

    Article  Google Scholar 

  7. X Liao, G G Wang. Simultaneous optimization of fixture and joint positions for non-rigid sheet metal assembly. International Journal of Advanced Manufacturing Technology, 2007, 36(3-4): 386-394.

    Google Scholar 

  8. H Hajimiri, V Abedini, M Shakeri, et al. Simultaneous fixturing layout and sequence optimization based on genetic algorithm and finite element method. International Journal of Advanced Manufacturing Technology, 2018, 97(9-12): 3191-3204.

    Article  Google Scholar 

  9. L Xiong, R Molfino, M Zoppi. Fixture layout optimization for flexible aerospace parts based on self-reconfigurable swarm intelligent fixture system. International Journal of Advanced Manufacturing Technology, 2012, 66(9-12): 1305-1313.

    Google Scholar 

  10. B Yang, Z Wang, Y Yang, et al. Optimization of fixture locating layout for sheet metal part by cuckoo search algorithm combined with finite element analysis. Advances in Mechanical Engineering, 2017, 9(6): 1-10.

    Article  MathSciNet  Google Scholar 

  11. J Du, C Liu, J Liu, et al. Optimal design of fixture layout for compliant part with application in ship curved panel assembly. Journal of Manufacturing Science and Engineering, 2021, 143(6): 061007.

    Article  Google Scholar 

  12. B Wu, Z Xu, Z Li. A note on imposing displacement boundary conditions in finite element analysis. Communications in Numerical Methods in Engineering, 2007, 24(9): 777-784.

    Article  MathSciNet  Google Scholar 

  13. S C Liu, S J Hu. Variation simulation for deformable sheet metal assemblies using finite element methods. Journal of Manufacturing Science and Engineering, 1997, 119(3): 368-374.

    Article  Google Scholar 

  14. S Camuz, S Lorin, K Wärmefjord, et al. Nonlinear material model in part variation simulations of sheet metals. Journal of Computing and Information Science in Engineering, 2019, 19(2): 021012.

    Article  Google Scholar 

  15. B Li, S N Melkote. Optimal fixture design accounting for the effect of workpiece dynamics. International Journal of Advanced Manufacturing Technology, 2001, 18(10): 701-707.

    Article  Google Scholar 

  16. Z Q Wang, Y Yang, Y G Kang, et al. A location optimization method for aircraft weakly-rigid structures. International Journal for Simulation and Multidisciplinary Design Optimization, 2014, 5: 1-4.

    Article  Google Scholar 

  17. Y G Liao. A genetic algorithm-based fixture locating positions and clamping schemes optimization. Proceedings of the Institution of Mechanical Engineers, Part B: Journal of Engineering Manufacture, 2016, 217(8): 1075-1083.

    Article  Google Scholar 

  18. B Yang, Z Wang, Y Yang, et al. Determination of the number of fixture locating points for sheet metal by grey model. 2016 the 3rd International Conference on Mechatronics and Mechanical Engineering, Shanghai, China, October 21-23, 2016.

  19. M Khodabandeh, M G Saryazdi, A Ohadi. Multi-objective optimization of auto-body fixture layout based on an ant colony algorithm. Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science, 2019, 234(6): 1137-1145.

    Google Scholar 

  20. A Rezaei Aderiani, K Wärmefjord, R Söderberg, et al. Optimal design of fixture layouts for compliant sheet metal assemblies. International Journal of Advanced Manufacturing Technology, 2020, 110(7-8): 2181-2201.

    Article  Google Scholar 

  21. Y Xing, W Chen, X Li, et al. Multi-station fixture location layout optimization design for sheet metal parts. Journal of Computational and Theoretical Nanoscience, 2015, 12(9): 2903-2908.

    Article  Google Scholar 

  22. X H Zhou, W Liu, Q Niu, et al. Locator layout optimization for checking fixture design of thin-walled parts. Key Engineering Materials, 2013, 572: 593-596.

    Article  Google Scholar 

  23. K A Sundararaman, K P Padmanaban, M Sabareeswaran. Optimization of machining fixture layout using integrated response surface methodology and evolutionary techniques. Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science, 2015, 230(13): 2245-2259.

    Google Scholar 

  24. K A Sundararaman, K P Padmanaban, M Sabareeswaran, et al. An integrated finite element method, response surface methodology, and evolutionary techniques for modeling and optimization of machining fixture layout for 3D hollow workpiece geometry. Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science, 2016, 231(23): 4344-4359.

    Google Scholar 

  25. J Kennedy, R C Eberhart. Particle swarm optimization. Proceedings of the IEEE International Conference on Neural Networks, Perth, Australia, November 27-December 1, 1995: 1942-1948.

    Article  Google Scholar 

  26. R C Eberhart, Y Shi. Comparing inertia weights and constriction factors in particle swarm optimization. Proceedings of the 2000 Congress on Evolutionary Computation, La Jolla, USA, July 16-19, 2000: 84-88.

  27. M Clerc, J Kennedy. The particle swarm—explosion, stability, and convergence in a multidimensional complex space. IEEE Transactions on Evolutionary Computation, 2002, 6(1): 58-73.

    Article  Google Scholar 

  28. P Chauhan, K Deep, M Pant. Novel inertia weight strategies for particle swarm optimization. Memetic Computing, 2013, 5(3): 229-251.

    Article  Google Scholar 

  29. M Li, H Chen, X Shi, et al. A multi-information fusion “triple variables with iteration” inertia weight PSO algorithm and its application. Applied Soft Computing, 2019, 84: 105677.

    Article  Google Scholar 

  30. A A Nagra, F Han, Q H Ling. An improved hybrid self-inertia weight adaptive particle swarm optimization algorithm with local search. Engineering Optimization, 2019, 51(7): 1115-1132.

    Article  MathSciNet  Google Scholar 

  31. J Zhang, J Sheng, J Lu, et al. UCPSO: A uniform initialized particle swarm optimization algorithm with cosine inertia weight. Computational Intelligence and Neuroscience, 2021: 881933.

    Google Scholar 

  32. C B Li, X F Jia, Y Zhou, et al. A microgrids energy management model based on multi-agent system using adaptive weight and chaotic search particle swarm optimization considering demand response. Journal of Cleaner Production, 2020, 262: 121247.

    Article  Google Scholar 

  33. W Liang, D Deng. Influences of heat input, welding sequence and external restraint on twisting distortion in an asymmetrical curved stiffened panel. Advances in Engineering Software, 2018, 115: 439-451.

    Article  Google Scholar 

Download references

Acknowledgements

Not applicable.

Funding

Supported by National Natural Science Foundation of China (Grant No. 52005371), Shanghai Pujiang Program of China (Grant No. 2020PJD071), Shanghai Municipal Natural Science Foundation of China (Grant No. 22ZR1463900), and Fundamental Research Funds for the Central Universities of China.

Author information

Authors and Affiliations

Authors

Contributions

CL was in charge of the whole trial, he also provided ideas and participated in manuscript writing; JW wrote the manuscript; YZ, KJ, JY, and JL assisted in modifying the structure and content of this paper. All authors read and approved the final manuscript.

Author's Information

Changhui Liu, born in 1986, is currently an assistant professor at School of Mechanical Engineering, Tongji University, China. He received his doctorate from Shanghai Jiaotong University, China, in 2016. His research interests include quality control and intelligent assembly.

Jing Wang, born in 1999, is currently a master candidate at School of Mechanical Engineering, Tongji University, China.

Ying Zheng, born in 2002, is currently an undergraduate student at School of Mechanical Engineering, Tongji University, China.

Ke Jin, born in 2001, is currently an undergraduate student at School of Mechanical Engineering, Tongji University, China.

Jianbo Yu, born in 1978, is currently a professor at School of Mechanical Engineering, Tongji University, China. He received his doctorate from Shanghai Jiaotong University, China, in 2009.

Jianfeng Liu, born in 1964, is currently a chief technical officer at Shanghai Waigaoqiao Shipbuilding Co., Ltd., China. He received his doctorate from Shanghai Jiaotong University, China, in 2000.

Corresponding author

Correspondence to Changhui Liu.

Ethics declarations

Competing Interests

The authors declare no competing financial interests.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Liu, C., Wang, J., Zheng, Y. et al. Optimization of Fixture Number in Large Thin-Walled Parts Assembly Based on IPSO. Chin. J. Mech. Eng. 37, 1 (2024). https://doi.org/10.1186/s10033-023-00972-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s10033-023-00972-9

Keywords