# An Improved Variable Neighborhood Search for the Reconfigurable Assembly Line Reconfiguring Problem
## 5 Proposed IVNS-RALRP
### Solution Evaluation
Line 7 determines whether the operation corresponds to the resource, which is selected in the matrix \(M_{m\times z}\) in Algorithm 2. If satisfied, a corresponding resource is randomly selected; otherwise, from Line 10 to 12, a resource is randomly selected from the resource library. Line 14 to 18 indicate that if placing the resource in the current station meets the cycle time \(ct\), it is placed; otherwise, the next station is opened and the resource is placed. 4. Line 21 calculates the reconfiguration cost of the new assembly line \(NAL^{\prime}\) using the cost calculation method. 5. Line 22 to 25 update the solution. If the reconfiguration cost \(rc^{\prime}\) of the locally optimal solution \(NAL^{\prime}\) is better than the reconfiguration cost \(rc\) of the current solution \(NAL\), then the locally optimal solution \(NAL^{\prime}\) is adopted as the current optimal solution \(NAL\). Figure 5: Five neighborhood structures of IVNS-RALRP. ```
Data: Product-process-resource information \(G\) with Data Structure 1, cycle time \(ct\), operation of new assembly line \(NALO\). Result: New assembly line \(NAL\) with Data Structure 2. 1 Initialize maximum iteration \(maxIter\), \(iter\gets 0\), \(rc\leftarrow+\infty\) ;
2\(m^{\prime}\gets 1\), \(ts_{1}\gets 0\) ;
3 repeat
4\(iter\gets iter+1\); // design \(NAL^{\prime}\) for\(j=1\) to \(n\)do
5\(i\gets NALO(j)\);
6 if\(\sum\limits_{k=1}^{z}m_{ik}==1\)then
7\((i,r)\leftarrow\) randomly select a corresponding resource in \(OAL\), the process time is \(ts\);
8
9 else
10\(k\leftarrow\) a uniformly distributed random number in \((0,1)\);
11\((i,r)\leftarrow\) a corresponding dedicated, reconfigurable, or flexible resource in \(G\) is selected according to \(k\);
12 the process time is \(ts\);
13
14 end if
15 if\(ts<ct-ts_{1}\)then
16\(ts_{1}\gets ts_{1}+ts\);
17
18 else
19\(m^{\prime}\gets m^{\prime}+1\), \(ts_{1}\gets 0\);
20
21 end if
22 Station \(m\) of \(NAL^{\prime}\leftarrow\) operation \(i\) and resource \((i,r)\);
23
24 end if
25\(rc^{\prime}\gets rcCalculate(OAL,NAL^{\prime})\);
26 if\(rc^{\prime}<rc\)then
27\(rc\gets rc^{\prime}\);
28\(NAL\getsNAL^{\prime}\);
29
30 end if
31\(iter>maxIter\) & \(rc^{\prime}=rc\);
```

**Algorithm 5**search

## 6 Experimental Results

This section includes the experimental analysis to evaluate the performance of the proposed IVNS-RALRP. The experiments are coded in C++, based on Microsoft Visual Studio Professional 2019, run on a computer with an Intel Core i7-11700F 2.50 GHz processor and 16 GB RAM. The experimental analysis includes the following aspects:

1. Assess the effectiveness of the data structure for IVNS-RALRP. 2. Assess the effectiveness of the shaking and local search procedure in IVNS-RALRP. 3. Examine the performance of IVNS-RALRP with other heuristic algorithms. ### Performance Metrics

For each test experiment, each algorithm performs \(y_{max}\) iterations. Then, the results \(r(y)\) and the running time \(t(y)\), where \(r(y)\) denotes the objective value obtained in the \(y\)th computation, and \(t(y)\) denotes the running time of the \(y\)th computation in seconds, are computed and recorded. This paper proposes four metrics to evaluate the effectiveness of the algorithm in Equations (24)-(27). \(R\) represents the optimal objective value among iterations, \(\overline{r}\) is the average objective value for \(y_{max}\) iterations, \(S\) reveals the computation stability across \(y_{max}\) iterations, and \(\overline{t}\) indicates the computation speed over \(y_{max}\) iterations. \[R =\min(r(1),r(2),\ldots,r(y_{max})) \tag{24}\] \[\bar{r} =\sum_{y=1}^{y_{max}}r(y)/y_{max}\] (25) \[S =\sum_{y=1}^{y_{max}}{(r(y)-\bar{r})^{2}/y_{max}}\] (26) \[\bar{t} =\sum_{y=1}^{y_{max}}{t(y)/y_{max}} \tag{27}\]

### Test Cases

To the best of our knowledge, there is currently no benchmark dataset available for RALRP. Therefore, we have collated and simplified RAL information from our partner OEM, categorizing the problems into two groups: small-scale and large-scale.