几种分布估计算法介绍

PBIL算法

用以解决二进制编码的、变量无关的优化问题。

在PBIL算法中,表示解空间的概率模型是一个概率向量:

p(x)= (p(x_1), p(x_2), p(x_3), \ldots ,p(x_n))

其中p(x_i)表示在位置i上取值为1的概率。

PBIL算法过程如下:

  1. 在每一代中,通过概率向量p(x)随机产生M个个体。
  2. 计算M个个体的适应值。
  3. 选择最优的N个个体来更新p(x),N<=M。
  4. 迭代,直至结束。

更新概率向量的方法如下:

p_{l+1}(x) = (1-\alpha)p_l(x)+\alpha \frac{1}{N} \sum_{k=1}^{N}x_l^k

其中l表示代数,α为学习速率。

UMDA算法

与PBIL算法的区别在于概率向量的更新:

p_{l+1}(x) = \frac{1}{N} \sum_{k=1}^{N}x_l^k

发表评论

电子邮件地址不会被公开。 必填项已用*标注