## 3 Multi-Scenario Cooperative Evolutionary Algorithm
### Knowledge Exchange with Neighborhood Scenario  
The neighborhood relations between the scenarios are defined based on the distances between their demand vectors.  
**Definition 2**.: _The distance between two scenarios \(s\) and \(s^{\prime}\) is defined as follows:_  
\[D_{ss^{\prime}}=\sqrt{\sum_{i\in M}(\sigma_{is}-\sigma_{is^{\prime}})^{2}} \tag{13}\]  
_where \(s\) and \(s^{\prime}\in S\) are the index of scenarios._  
It can be seen that the smaller the value of \(D_{ss^{\prime}}\), scenario \(s\) is more similar to scenario \(s^{\prime}\). The optimal solution of the subproblem under scenario \(s\) should be similar to that of the subproblem under scenario \(s^{\prime}\) if scenarios \(s\) and \(s^{\prime}\) are similar to each other. Thus, the knowledge obtained from the solution of subproblem \(s\) should be helpful in optimizing subproblem \(s^{\prime}\). Based on this observation, three neighborhood knowledge utilizing (NKU) operators are employed to utilize the helpful knowledge in the solutions of the neighborhood scenarios.  
(1) NKU operator based on random exchange  
Let \(Y^{s}\) be the set of opened facilities in a local optimal solution found in the search process of solving subproblem corresponding scenario \(s\) and \(Y^{s^{\prime}}\) be that of scenario \(s^{\prime}\). Let \(Y^{C}\) be the common facilities appearing in \(Y^{s}\) and \(Y^{s^{\prime}}\), that is \(Y^{C}=Y^{s}\cap Y^{s^{\prime}}\). As there are similarities in the optimal solutions of scenario \(s\) and its neighborhood scenarios \(s^{\prime}\), the common part \(Y^{C}\) is thought to be useful and is kept in the new solution. The other part of the solution \(Y^{s^{\prime}}\), that is \(Y^{s^{\prime}}/Y^{C}\), may also be part of the optimal solution of scenario \(s\). Thus, some of the uncommon parts in \(Y^{s}\) and \(Y^{s^{\prime}}\) are randomly exchanged to form new solutions. To illustrate, we considered an instance with 15 potential facilities and \(p=5\). Let \(Y^{s}=\{1,3,7,10,12\}\) be a local optimal solution of scenario \(s\) and \(Y^{s^{\prime}}=\{1,3,5,8,14\}\) be a local optimal solution of its neighborhood scenario \(s^{\prime}\). Then \(Y^{C}=\{1,3\}\), \(Y^{s}/Y^{C}=\{7,10,12\}\), and \(Y^{s^{\prime}}/Y^{C}=\{5,8,14\}\). Some of the uncommon parts in \(Y^{s}\) and \(Y^{s^{\prime}}\) are randomly selected (e.g., 10 in \(Y^{s}/Y^{C}\) and 8 in \(Y^{s^{\prime}}/Y^{C}\)and exchanged to form two new solutions, \(\{1,3,7,8,12\}\) and \(\{1,3,5,10,14\}\). Finally, the better one of the two new solutions is selected.  
(2) NKU operator based on the GAH  
In the NKU operator based on the GAH, the common parts of the solutions for scenario \(s\) and its neighborhood scenario \(s^{\prime}\) are also kept in the new solution. The number of facilities in \(Y^{C}\) is usually less than \(p\). In this situation, the number of \(p-\left|Y^{C}\right|\) facilities are selected by the GAH from all of the unopened facilities (\(N/Y^{C}\)) to form a new solution.  
(3) NKU operator based on the GDH  
In the NKU operator based on the GDH, the opened facilities in \(Y^{s}\) and \(Y^{s^{\prime}}\) are united to form a set \(Y^{U}=Y^{s}\cup Y^{s^{\prime}}\). Then, the facilities in \(Y^{U}\) are deleted one by one using GDH until the number of facilities is equal to \(p\).  
The above three NKU operators can exchange some useful knowledge between the solutions of a scenario and its neighborhood. In the MSCE algorithm, these NKU operators are randomly employed.