【发布时间】:2014-03-30 20:04:51
【问题描述】:
我有一个遗传算法,目前正在使用轮盘赌选择来产生新的种群,我想将其更改为随机通用抽样。
我对这里的工作方式有一个粗略的概述:
pointerDistance = sumFitness/popSize
start = rand.uniform(0, pointerDistance)
for i in xrange(popSize):
pointers.append(start + i*pointerDistance)
cumulativeFit = 0
newIndiv = 0
for p in pointers:
while cumulativeFit <= p:
cumulativeFit += pop[newIndiv].fitness
newPop[newIndiv] = copy.deepcopy(pop[newIndiv])
newIndiv += 1
但我正在努力解决如何准确实施随机通用采样。有谁知道一些伪代码的好来源,或者一个例子?
用一个例子简要说明什么是随机通用采样(但我不确定它是否有意义?):
【问题讨论】:
-
如果您添加一个关于什么是随机通用抽样的链接或描述可能会有所帮助
-
我已经添加了一个指向关于它的 wiki 文章的链接。它确实有一些示例代码,但我不确定我是否理解它/我不相信它是正确的。
-
什么是你不明白的:你不确定你的实现有多准确,或者方法本身是否有用?
-
我觉得方法很有用,我觉得我的实现还不正确,也不确定wiki示例是否正确。
-
看看this,我试试看
标签: python genetic-algorithm evolutionary-algorithm stochastic