## 3 The \(\epsilon\)BBO Algorithm for SSD Model
### Adaptive BBO for SSD Model  
There are modification probability and mutation probability factors in the BBO algorithm. Modification probability is denoted as \(P_{modif}\) and mutation probability is denoted as \(P_{muta}\). The two factors which range from 0 to 1 are defined by users. When generated random number is less than modification probability, the program executes migration operator; when generated random number is less than mutation probability, the program executes mutation operator. In original BBO algorithm, the modification probability and mutation probability are user-defined parameters. The setting of the parameters are very relevant to the experience of the user, and they are unfavorable for the selection of migration individuals. In order to choose better migration individuals, these parameters are related to the fitness function. When the value of fitness function is better than the average, we will reduce the probability of modification and mutation operations, or else we will increase the probability of modification and mutation operations. In other terms, in migration operations, when the value of fitness function is larger than the average, we set constant factor \(k_{1}\) to smaller value, and the probability of modification operations is decided by Formula (26). When the value of fitness function is less than the average, we set constant factor \(k_{2}\) to larger value, so as to search extensively in the solution space. Similarly, the selection of mutation probability is similar to the modification probability. When the value of the fitness function is better than the average, we set constant factor \(k_{3}\) to smaller value. Otherwise, we set constant factor \(k_{4}\) to larger value. As the mutation operation is adjusted near the optimal solution, we set the maximum mutation probability \(k_{4}\) to 0.25. So modification probability and mutation probability are adjusted adaptively by the fitness function.  
\[P_{modif}=\begin{cases}k_{1}*\dfrac{MaxCost-FitnessCost}{MaxCost-AvgCost}&FitnessCost \geq AvgCost\\ k_{2}&FitnessCost<AvgCost\end{cases} \tag{26}\]  
\[P_{muta}=\begin{cases}k_{3}*\dfrac{MaxCost-FitnessCost}{MaxCost-AvgCost}&FitnessCost \geq AvgCost\\ k_{4}&FitnessCost<AvgCost\end{cases} \tag{27}\]  
In the adaptive Biogeography-based optimization algorithm, modification probability and mutation probability are modified according to the relation between the cost of fitness function of randomly selected habitat and average cost of fitness function of all habitats in last generation. In other words, if the cost of fitness function is equal or greater than average cost, modification probability and mutation probability are modified by Equations (26) and (27) respectively. Otherwise, modification probability and mutation probability are taken as constant \(k_{2}\) and \(k_{4}\) respectively. In Equations (26) and (27), constant factors \(k_{1}\), \(k_{2}\), \(k_{3}\) and \(k_{4}\) which range from 0 to 1 are defined by users. In another literature [27], we used the values of adaptive factors and achieved good results. Therefore, in this paper, we adapt the same adaptive factors. We set \(k_{1}=0.4\), \(k_{2}=0.95\), \(k_{3}=0.1\), \(k_{4}=0.25\).