# Portfolio Implementation Risk Management Using Evolutionary Multiobjective Optimization
## 2 Materials and Methods
### Proposed Approach
#### 2.2.2 Fitness Assignment  
Contrary to single-objective optimization, where an individual's fitness usually results directly from the objective function value, the fitness assignment in multiobjective optimization is not so straightforward as individuals are compared against multiple typically conflicting objectives. Since the fitness is the basis for selection, the effectiveness of any EMO algorithm largely depends on this design issue. Additionally to the convergence and diversity (two primary goals of multiobjective optimization), which must be reflected by the fitness value assigned to each population member, in this study, we propose a fitness assignment strategy that incorporates the robustness issue. The outline of the fitness assignment procedure is shown in Algorithm 2. ```
1:Input: \(P\)
2:sort \(P\) into non-domination fronts (\(\mathcal{F}_{1}\), \(\mathcal{F}_{2}\),...)
3:\(a^{*}\leftarrow\text{argmin}_{a\in\mathcal{F}_{1}}\ R(a)\)
4:for\(a\in\mathcal{F}_{1}\)do
5:\(r(a)\leftarrow\frac{R(a)}{R(a^{*})}\tau\)
6:endfor
7:\(\mathcal{F}_{0}\leftarrow\left\{a\in\mathcal{F}_{1}:r(a)<\epsilon\right\}\)
8:\(\mathcal{F}_{1}\leftarrow\mathcal{F}_{1}\setminus\mathcal{F}_{0}\)
9:for\(\mathcal{F}\in\left\{\mathcal{F}_{0},\ldots,\mathcal{F}_{l}\right\}\)do
10:for\(a\in\mathcal{F}\)do
11:\(\Delta_{S}(a)\leftarrow\mathcal{S}(\mathcal{F})-\mathcal{S}(\mathcal{F} \setminus a)\)
12:endfor
13:endfor
14:for\(\mathcal{F}\in\left\{\mathcal{F}_{0},\ldots,\mathcal{F}_{l}\right\}\)do
15: sort \(\mathcal{F}\) in descending order of \(\Delta_{S}\)
16: sort \(\mathcal{F}\) in ascending order of \(R\)
17:for\(a\in\mathcal{F}\)do
18: assign \(a\) with \(rank_{\Delta_{S}}\) based on sort in line 15
19: assign \(a\) with \(rank_{R}\) based on sort in line 16
20:endfor
21:endfor
22:for\(a\in P\)do
23:\(F(a)\leftarrow rank_{\prec}(a)+\epsilon\frac{rank_{\Delta_{S}}(a)}{rank_{ \Delta_{S}}(a)+1}+(1-\epsilon)\frac{rank_{R}(a)}{rank_{R}(a)+1}\)
24:endfor
25:Output: \(P\)
```  
**Algorithm 2** Fitness assignment  
The calculation of fitness values involves ranking the population with respect to dominance, diversity and robustness. These ranks are denoted as \(rank_{\prec}\), \(rank_{\Delta_{S}}\) and \(rank_{R}\), respectively. An individual's fitness results from the aggregation of these ranks. The process starts with a fast nondominated sorting procedure [38] that assigns each population member to the corresponding non-domination front (\(\mathcal{F}_{1}\), \(\mathcal{F}_{2}\) and so on), according to the Pareto dominance relation. Next, in the first non-domination front \(\mathcal{F}_{1}\), an individual with the best robustness measure is identified (line 3). Thereafter, individuals exhibiting promising characteristics with respect to the robustness are emphasized. To this end, the robustness ratio is calculated for each individual in the first front (lines 4-6). This calculation involves a scaling factor \(\tau\), determined experimentally. Individuals having the robustness ratio lower than the dispersion parameter \(\epsilon\) are retrieved from \(\mathcal{F}_{1}\) to form a distinct front \(\mathcal{F}_{0}\). The ranks of the remaining individuals remain unchanged (lines 7-8). This completes the calculation of \(rank_{\prec}\) of each population member. Afterwards, in each identified front, a hypervolume contribution of each individual is calculated. In line 11, \(\mathcal{S}\) is a metric that measures the amount of the objective space dominated by the set \(\mathcal{F}\) and bounded by the reference point \(\mathbf{r}=(r_{1},\ldots,r_{m})^{\mathsf{T}}\)[39].