## 4 Pseudocodes  
Now that all components have been defined, this section is devoted to the three pseudocodes tested in this article. The first is summarized in Algorithm 2 and is the general framework of \(NSGAII\) including the local search procedure.  
To diversify the search, an idea is to restart \(NSGAII\) from another initial-population instead of loosing time in unproductive generations, thus giving what we call a Multi-Start Non-Dominated Sorting Genetic Algorithm (\(MS\)-\(NSGAII\)). Lines 1-15 of Algorithm 2 are repeated \(nbstart\) times. At the end of each restart, the best population is updated by mixing the last best population \(BestPop\) with the current-population of \(NSGAII\). The latter is then sorted out (according to the non-domination criterion), and just the \(NP\) first solutions are retained. To test the same number of iterations as in Algorithm 2, an iteration of \(NSGAII\) inside \(MS\)-\(NSGAII\) consists of \(NG_{1}=\frac{NG}{nbstart}\) generations. The general structure of this approach is given by Algorithm 3.  
```
1:\(j:=1\)
2:while (\(j\leq nbstart\)) do
3:\(P_{0}^{\prime\prime}:=\) Initial population of \(NP\) solutions
4:\(P_{0}^{\prime}:=\)\(RLS(P_{0}^{\prime\prime})\)
5:\(P_{j}:=\) Sorting_Rank_Crowding(\(P_{0}^{\prime}\))
6:\(BestPop:=\emptyset\)
7:\(P_{j}:=NSGAII\)
8:if (\(j=1\)) then
9:\(BestPop:=P_{j}\)
10:else
11:\(BestPop:=Fusion(P_{j},BestPop)\)
12:endif
13:\(BestPop:=\) Sorting_Rank_Crowding(\(BestPop\))
14:\(j:=j+1\)
15:endwhile
16:\(LS2(F_{0}(BestPop))\) // applied in the case of Version 3 in Table 7
```  
**Algorithm 3** Multi-Start Non-Dominated Sorting Genetic Algorithm (MS-NSGAII).  
The third pseudocode is given in Algorithm 4. It is obtained by replacing the crossover operator of Algorithm 2 by the iterated local search procedure detailed in Section 3.5.2.  
Other configurations were designed, especially for the percentage of involved solutions for the local search. However, only versions that appeared successful are shown in this paper. In total, seven versions were tested and compared on 37 instances.  
\begin{table}
\begin{tabular}{l c c c c c} \hline \hline
**Method** & **Version** & **LS Strategy** & **Post-Optimization** & **LSFrequency** &
\begin{tabular}{c} **Involved Solutions** \\ **for the LS:**\(\Theta\) \\ \end{tabular} \\ \hline NSGAII and MS-NSGAII & 1 & - & - & - & - \\ \hline NSGAII and MS-NSGAII & 2 & LS1 & - & Periodically – nb = 10 & 50\% Domination \\ NSGAII and MS-NSGAII & 3 & LS1 & LS2 & Periodically – nb = 10 & 50\% Domination \\ \hline NSILS & & LS1 & - & Systematically & 10\% Random \\ \hline \hline \end{tabular}
\end{table}
Table 7: Non-dominated sorting versions.  
```
1:\(P_{0}^{\prime\prime}:=\text{Initial population of }NP\) solutions
2:\(P_{0}^{\prime}:=\text{$RLS(P_{0}^{\prime\prime})$}\)
3:\(P_{0}:=\text{Sorting\_Rank\_Crowding($P_{0}^{\prime}$)}\)
4:\(i:=1\)
5:while (\(i\leq NG\)) do
6:\(Q_{i}:=\emptyset\)
7:\(R_{i}:=\emptyset\)
8:for (j = 1 to NP) do
9:\(E_{j}:=LS1(\%P_{j})\)
10:for (k = 1 to \(max_{P}\)) do
11:\(E_{j}^{\prime}:=\text{$Perturb(E_{j},C_{max2})$}\)
12:\(E_{j}^{\prime}:=LS1(\%E_{j}^{\prime})\)
13:if (\(E_{j}^{\prime}<E_{j}\)) then
14:\(E_{j}:=E_{j}^{\prime}\)
15:endif
16:endfor
17:\(Q_{i}:=Q_{i}\cup E_{j}\)
18:endfor
19:\(R_{i}:=\text{$Fusion(P_{0},Q_{i})$}\)
20:\(P_{0}:=\text{Sorting\_Rank\_Crowding($R_{i}$)}\)
21:\(i:=i+1\)
22:endwhile
```  
**Algorithm 4** Non-Dominated Sorting Iterated Local Search Algorithm (NSILS).