## 3 The Proposed Constraint Multi-Objective Optimization Algorithm
### Hybrid Variation Strategy  
The crossover operator is used to inherit the genetic information of two parents to generate a better offspring. The mutation operator randomly alters the genes in the chromosome to increase the diversity of the population. Considering the complex data structure of the chromosome, different crossover and mutation operators are required to process different elements in \(C\). In this paper, we propose a hybrid variation strategy to generate the offspring by a set of crossover and mutation operators.  
For \(C_{1}\) in the chromosome that represents the on/off status of the generator, we perform two-point crossover and bit-flip mutation operators on the bit array. The two-point crossover operator randomly selects two crossover points, and swaps the elements between the two points of the two parents. Since the on/off status of the generator should satisfy the minimum on/off time constraints, the two-point crossover operator can generate offspring with less constraint violation compared with other crossover operators. In bit-flip mutation, each bit in \(C_{1}\) has a probability of \(\frac{1}{D_{C1}}\) to mutate through bit flips, where \(D_{C1}\) is the number of elements in \(C_{1}\).  
We also perform two-point crossover on \(C_{2}\), which represents the running status of the BESS. For mutation, we replace the bit-flip operation in the bit-flip mutation operator with a random selection from among the candidate values of \(-1\), 0, and 1.  
For continuous values in \(C_{3}\), simulated binary crossover (SBX) and polynomial mutation (PM) are used. Given parents \(\mathbf{x}^{1}\left(x_{1}^{1},\cdots,x_{n}^{1}\right)\) and \(\mathbf{x}^{2}\left(x_{1}^{2},\cdots,x_{n}^{2}\right)\), the offspring \(\mathbf{c}^{1}\left(c_{1}^{1},\cdots,c_{n}^{1}\right)\) and \(\mathbf{c}^{2}\left(c_{1}^{2},\cdots,c_{n}^{2}\right)\) can be generated through SBX as:  
\[\left\{\begin{array}{l}c_{i}^{1}=0.5\times\left[(1+\beta)\cdot x_{i}^{1}+(1 -\beta)\cdot x_{i}^{2}\right]\\ c_{i}^{2}=0.5\times\left[(1-\beta)\cdot x_{i}^{1}+(1+\beta)\cdot x_{i}^{2} \right]\end{array}\right. \tag{23}\]  
\[\beta=\left\{\begin{array}{l}(r\times 2)^{1/(1+\eta_{c})}\qquad\qquad r\leq 0.5\\ (1/(2-r\times 2))^{1/(1+\eta_{c})}\quad\text{otherwise.}\end{array}\right. \tag{24}\]where \(\eta_{c}\) is the distribution index of simulated binary crossover. The polynomial mutation operator is performed on the parent \(x_{i}\) with a distribution index \(\eta_{m}\):  
\[x_{i} =x_{i}+\delta_{q}\cdot\left(x_{i}^{\text{Upper}}\,-x_{i}^{\text{Lower }}\,\right) \tag{25}\] \[\delta_{q} =\left\{\begin{array}{ll}\left[(2r)+(1-2r)\ast(1-\delta_{1})^{ \eta_{m}+1}\right]^{\frac{1}{\eta_{m}+1}}-1&\text{if }r\leq 0.5\\ 1-\left[2(1-r)+2\cdot(r-0.5)\ast(1-\delta_{2})^{\eta_{m}+1}\right]^{\frac{1}{ \eta_{m}+1}}&\text{otherwise}\end{array}\right.\]  
where:  
\[\begin{array}{ll}\delta_{1}\leftarrow\frac{x_{i}-x_{i}^{\text{Lower}}}{x_ {i}^{\text{Upper}}-x_{i}^{\text{Lower}}}\\ \delta_{2}\leftarrow\frac{x_{i}^{\text{Upper}}-x_{i}}{x_{i}^{\text{Upper}}-x _{i}^{\text{Lower}}}\end{array} \tag{26}\]  
We perform the point-wise SBX crossover, PM mutation, and rounding operators on \(C_{4}\) that represents the start and shutdown time for the controllable loads. The upper and lower limit \(x_{i}^{\text{Upper}}\) and \(x_{i}^{\text{Lower}}\) for elements in \(C_{4}\) are initialized according to the earliest startup and latest shutdown time of the controllable loads before conducting the point-wise SBX crossover.