相关疑难解决方法(0)

轮盘赌选择算法

任何人都可以为轮盘选择功能提供一些伪代码吗?我将如何实现这一点:我真的不明白如何阅读这个数学符号.我想要通用算法.

algorithm roulette-wheel-selection genetic-algorithm evolutionary-algorithm

20
推荐指数
4
解决办法
8万
查看次数

用Java编写的GA

我试图根据我从"用于游戏程序员的AI技术"一书中选择的技术编写遗传算法,该技术使用二进制编码和适应度比例选择(也称为轮盘赌选择)对人群的基因进行在程序中以二维数组随机生成.

我最近遇到了一个伪代码,并试图实现它,但是我遇到了一些问题,我需要做些什么.我检查过一些书籍和一些开源代码,但仍在努力取得进展.我明白我必须得到总人口的总体适应度的总和,在总和与零之间选择一个随机数,然后如果数字大于父母要覆盖它,但我正在努力实施这些想法.

由于我的Java生疏,因此非常感谢任何帮助实现这些想法.

java roulette-wheel-selection genetic-algorithm evolutionary-algorithm

15
推荐指数
1
解决办法
5万
查看次数

高效的算法随机选择频率项目

给定一组n字频对:

[ (w0, f0), (w1, f1), ..., (wn-1, fn-1) ]

在哪里是一个单词,是整数频率,以及频率的总和,wifi∑fi = m

我想使用伪随机数生成器(pRNG)来选择p单词,以便选择任何单词的概率与其频率成正比:wj0, wj1, ..., wjp-1

P(wi = wjk) = P(i = jk) = fi / m

(注意,这是替换选择,因此每次可以选择相同的单词).

到目前为止,我已经提出了三种算法:

  1. 创建一个大小数组m,并填充它以便第一个条目,下一个条目,等等,所以最后的条目是.f0w0f1w …

random algorithm big-o

10
推荐指数
2
解决办法
1914
查看次数

遗传编程:轮盘赌排名与锦标赛选择的区别

我正在阅读关于遗传编程的幻灯片.在这张幻灯片中,它表示在选择阶段有一些方法,例如Roulette,RankTournament没有任何解释.我试过谷歌,但没有说清楚这些条款.

请告诉我他们之间有什么区别.

genetic-programming roulette-wheel-selection selection genetic-algorithm

10
推荐指数
1
解决办法
6703
查看次数

遗传算法 - 新一代越来越差

我已经实现了一个简单的遗传算法来生成基于Aesop寓言的短篇小说.以下是我正在使用的参数:

突变:单字交换突变,测试率为0.01.

交叉:在给定点交换故事句子.率 - 0.7

选择:轮盘选择 - /sf/answers/372099731/

健身功能:3种不同功能.每个人的最高得分是1.0.所以最高健康分数是3.0.

人口规模:由于我使用的是86个Aesop寓言,我测试的人口规模是50.

初始人口:所有86个寓言句子都被洗牌,以便完全废话.我的目标是从这些结构丢失的寓言中产生一些有意义的东西(至少在一定程度上).

停止条件:3000代.结果如下:

在此输入图像描述

但是,这仍然没有产生有利的结果.我期待着几代人的情节.为什么我的GA表现更差的结果呢?

更新:正如你们所有人所建议的那样,我将当前一代的10%的精英主义复制到了下一代.结果仍然保持不变: 在此输入图像描述

可能我应该选择锦标赛.

algorithm python-2.x roulette-wheel-selection fitness genetic-algorithm

8
推荐指数
2
解决办法
4297
查看次数

如何实现非均匀概率分布?

我试图在遗传算法中实现非均匀概率分布.

在遗传程序的实施中,我有一个实验,其中有3个结果,每个结果都有不同的概率.比方说,一个结果的可能性是0.85,另一个是0.01,最后一个是0.14?

PS:我最近才知道它被称为概率的非均匀分布.我用Java实现它,任何人都能说出非均匀概率背后的理论.分发以及实现它的任何Java包.

如果您需要有关此问题的更多信息,请随时向我询问!

提前致谢!

probability genetic-programming probability-theory genetic-algorithm

2
推荐指数
1
解决办法
3936
查看次数