
$$(7\mathrm{a})$$
$rank(F_{x},S_{i}\cup S_{j})=\min\left\{rank(F_{x},S_{i}),rank(F_{x},S_{j})\right\}$
)` **(7a)** 
$$rank(F_{x},\mathbf{S}_{i}\cap\mathbf{S}_{j})=\max\left\{rank(F_{x},\mathbf{S}_{i}),rank(F_{x},\mathbf{S}_{j})\right\}\tag{7b}$$

According to Eq. 7, the rank value of vector Fx **for an "OR" operation between any two** 
specifications Si and Sj **takes the minimum rank value with respect to the two specification settings.** 
This is in order to evolve the population towards one of the specifications in which the objective vector is less strongly violated. In contrast, an "AND" operation takes the maximum rank value in order to direct the evolutionary search towards minimizing the amount of violation from both of the specifications concurrently. Clearly, the "AND" and "OR" operations in Eq. 7 can be easily extended to include general logical specifications with more complex connectives, such as "(Si **OR** Sj) AND (Sk OR Sl**)", if desired.** 

## 3. Dynamic Sharing Scheme And Moea Program Flowchart 3.1 Dynamic Sharing Scheme

Fitness sharing was proposed by Goldberg and Richardson (1987) to evolve an equally distributed population along the Pareto-optimal front or to distribute the population at multiple optima in the search space. The method creates sub-divisions in the objective domain by degrading an individual fitness upon the existence of other individuals in its neighborhood defined by a sharing distance. 

The niche count, ¦   N
mi jsh d , ji**, is calculated by summing a sharing function over all members of** 
the population, where the distance di,j represents the distance between individual i and j**. The** 
sharing function is defined as 

$$sh\Big{(}d_{i,j}\Big{)}=\begin{cases}1-\Bigg{(}\dfrac{d_{i,j}}{\sigma_{shave}}\Bigg{)}^{\alpha}&\text{if}\ \ d_{i,j}<\sigma_{shave}\\ 0&\text{otherwise}\end{cases}$$

$$(8)$$

with the parameter D **being commonly set to 1.** 
The sharing function in Eq. 8 requires a good setting of sharing distance V*share* **to be estimated** 
upon the trade-off surface, which is usually unknown in many optimization problems (Coello Coello, 1999). Moreover, the size of objective space usually cannot be predefined, as the exact bounds of the objective space are often undetermined. Fonseca and Fleming (1993) proposed the method of Kernel density estimation to determine an appropriate sharing distance for MO optimization. However, the sharing process is performed in the 'sphere' space which may not reflect the actual objective space for which the population is expected to be uniformly distributed. Miller and Shaw (1996) proposed a dynamic sharing method for which the peaks in the parameter domain are 'dynamically' detected and recalculated at every generation with the sharing distance remains predefined. However, the approach is made on the assumption that the number of niche peaks can be estimated and the peaks are all at the minimum distance of 2V*share* from each other. 