交互式进化策略研究
1. 变异参数与算法迭代
在进化策略(ES)中,当迭代次数较少时,简单的算法是可行的。但对于较高的迭代次数(如 $t_{max} \gg 100$),需要考虑更复杂的变异参数自适应机制。目前的先进技术包括 Schwefel 提出的个体步长自适应方法和 Hansen 与 Ostermeier 提出的协方差矩阵自适应(CMA)方法。为了实现变异步长的自适应,每一代需要生成多余的子代个体,推荐的 $\mu / \lambda \simeq 1/7$ 比例在很多情况下能使 ES 达到较好的平均性能。
以下是通过 3 点变异生成 $\lambda$ 个子代的算法:
Algorithm 1 Generate λ offspring via 3-point mutation
1: Q = ∅
2: for i ∈ 1...λ do
3: choose (x, s) randomly out of Pt
4: u ← uniform(0, 1)
// uniformly distributed random number between 0 and 1
5: s′1 ←
⎧
⎨
⎩
s1α if u < 1/3
s1/α if u > 2/3
s1 otherwise
6: for j ∈ {1,..., nx} do
7: x′j = xj + s′1 · normal(0, 1)
8: /* normal(0,1) ge