## 3 Proposed MPUSMs-IMFEAO for Personalized Recommendation
### Interactive Multifactorial Evolutionary Optimization Algorithm with MPUSMs  
In this section, we design a new IEA, Interactive multifactorial evolutionary optimization algorithm, compatible with the constructed MPUSMs to discover more diverse and novel items for recommendation. The main components of the IMFEA include the following three parts: (1) Enhanced MFEA: For solving MPUSMs-aimed tasks and improving evolution efficiency, initial population with skill factors is obtained by sampling MPUSMs' probabilistic models that predicts the best search region. In addition, MFEA's knowledge sharing can increase the diversity of the items, but the use of common genetic operators in MFEA is still not sufficient to obtain sufficiently diverse items. MFEA with SBX crossover and Gaussian mutation is designed to optimize the personalized search to obtain more diverse and novel items. (2) MPUSM-based recommendation list: A pre-recommended list is creatively proposed in order to provide a Top-N list for user in line with diversity and current preferences. It is obtained by sampling evolved population with a roulette and resampling re-evolved population in case of insufficient diversity. (3) Interaction-assisted model management: MPUSMs and their derivatives are updated in accordance with the interaction results to learn useful information of the previous generation models while ensuring the accuracy of updated models. To the best of our knowledge, this is the first time to design an interactive MFEA for solving personalized searches. Its difference from common IEAs is that a user is not involved in the evaluation after each population iteration, which not only reduces user fatigue, but also improves the ability to uncover new items. The pseudocode of the specific process is shown in Algorithm 3. Asterisks indicate innovative key steps.  
\[x^{{}^{\prime}}_{ij}=\begin{cases}random(0-0.5)&x_{ij}=0\\ random(0.5-1)&x_{ij}=1\end{cases} \tag{10}\]  
where \(x_{ij}\) is the value of the \(j\)-th gene locus of the \(i\)-th individual in the population.  
```
0: Trained MPUSMs model, Partial-MPUSMs and probability models
0: User-satisfied Top-N list
1:while Top-N list is not satisfied do
2:while Number of items in the pre-recommended list \(<Q\)do
3: Enhanced MFA:
4: \"By sampling pop times for each probability model, a better initial population is obtained and saved to current-pop.
5: \"Directly fill in skill factor for each individual of population.
6: \"Evaluate the initial population with partial-MPUSMs.
7: \"Encode the initial population according to (10)
8:while generation\(<G\)do
9: Optimization of diversity population
10: \"Apply SBX and Gaussian mutation to current-pop to generate an offspring-pop.
11: \"Decode offspring-pop according to the inverse (10).
12: \"offspring-pop individuals are evaluated with partial-MPUSMs.
13: Update the scalar fitness and skill factor of each individual in the merged current-pop and offspring-pop.
14: Select the fittest individuals to form next current-pop.
15: end while
16: \"Select the superior individuals from the evolved population with multiple skill groups by roulette to fill the pre-recommended list.
17: end while \"Pre-recommended list:
18: Convert Q individuals to Q real items by matching them with the closest item in the item pool.
19: The \(Q\) items are evaluated using the MPUSM.
20: \"Top-N list Select the highest-rated \(N\) items in each category from the pre-recommended list using roulette.
21: \"Interactive Evaluations: The Top-N list is submitted to the user for evaluation.
22: \"Model Management: Update the partial-MPUSMs, MPUSMs and probability models based on interaction results. In case \(R_{topN}<\gamma\), then the models are fine-tuned. In case \(R_{topN}>\gamma\), re-clustering and retraining the model are necessary.
23:end while
```  
**Algorithm 3** Pseudocode of MPUSMs-IMFECOA