问题标签 [fitness]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
626 浏览

matlab - Matlab中利用遗传算法优化图像重建算法

我正在尝试使用遗传算法优化图像重建算法。我将初始种群大小设为 10。我有一个输入图像和 10 个重建图像。适应度函数是这两者之间的区别。那是

我想选择其中最好的适应度人群。但是我的适应度结果是一个图像(具有强度值的矩阵)。那么我怎样才能为每个群体获得一个单一的适应度值,以便在下一阶段进行交叉。请帮助。在此先感谢

0 投票
2 回答
759 浏览

python - DEAP 中的健身分享

有没有办法使用DEAP实现健身共享/利基?具体来说,我正在寻找pdf 第 98 页上定义的方法的实现(Goldberg 的健身共享)如果您知道 DEAP 中的任何其他方法,那也会很有用。

谢谢

0 投票
1 回答
525 浏览

python - Using fitness sharing on a minimization function

I'm trying to use fitness/function sharing on a minimization function. I'm using the standard definition of the sharing function found here which then divides the fitness by the niche count. This will lower the fitness, proportional to the amount of individuals in its niche. However, in my case the lower the fitness the more fit the individual is. How can I make my fitness sharing function increase the fitness proportionally to the amount of individuals in its niche?

Here's the code:

I couldn't find a non-pdf of the paper, but here's a picture of the relevant parts. Again, this is from the link above.

Fitness Sharing

0 投票
5 回答
6055 浏览

algorithm - 遗传算法 - 新一代变得更糟

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

突变:单个单词交换突变,测试率为 0.01。

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

选择:轮盘选择 - https://stackoverflow.com/a/5315710/536474

健身功能:3种不同的功能。每一项的最高分是1.0。所以总的最高健身得分是3.0。

人口规模:因为我使用了 86 个伊索寓言,所以我用 50 个测试人口规模。

初始人口:所有86个寓言句子顺序都被打乱了,以便完全胡说八道。我的目标是从这些结构失落的寓言中产生一些有意义的东西(至少在一定程度上)。

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

在此处输入图像描述

然而,这仍然没有产生有利的结果。我期待着世代相传的情节。关于为什么我的 GA 表现更差的任何想法?

更新:正如你们所有人所建议的那样,我已经将 10% 的当代精英复制到下一代。结果还是一样: 在此处输入图像描述

可能我应该使用锦标赛选择。

0 投票
2 回答
71 浏览

c - 进化算法达到恒定的适应度值

最近我决定接受进化编程的挑战,并遵循Rosetta Code上发布的问题,它说给定一个目标字符串,改变一个随机生成的字符串,直到它与目标匹配。我已经成功地进行了突变,但是我的适应度函数的值错误,但我不知道为什么。我的健身功能是:

而且,为了不弄乱整个帖子,这里是完整的代码 (Pastebin)
任何帮助表示赞赏伙计们。

示例输出(针对目标字符串“methinks”):

他们中的大多数人的预期适应度为 0。

0 投票
1 回答
590 浏览

c++ - 图像比较opencv,遗传编程的适应度函数

我正在编写遗传程序来提取图像中的对象。我现在有两个适应度函数:汉明距离和豪斯多夫距离。

Hausdorff 很好,但对于更大的图像来说太慢了。汉明更快,但并不总是有效(例如,有时白色图像在人群中是最好的)。你知道任何其他包含这两个函数优点的适应度函数吗?

这是二进制图像。第三种方法是首先找到边缘或调整图像大小,然后使用汉明距离来评估解决方案,目前这是最好的方法。

0 投票
0 回答
132 浏览

bayesian - 在适应度函数中实现贝叶斯定理

在我正在进行的一个进化编程项目中,我认为使用贝叶斯定理中的公式可能是一个有用的想法。虽然我不完全确定那会是什么样子。

因此,正在发展的程序正试图使用​​过去的数据来预测时间序列的未来状态。鉴于过去n几天的一些价格数据,该程序将预测buy它是否预测价格会上涨,sell如果下跌,leave如果变动太少。

根据我的理解,在对历史数据进行测试并记录正确和不正确的预测后,我计算出模型在使用以下算法购买时准确的概率。

我是否正确解释了贝叶斯定理,这是一个合适的适应度函数吗?

我将如何结合所有预测的适应度函数?(在我的例子中,我只展示了预测的预测概率buy

0 投票
1 回答
613 浏览

algorithm - 具有适应度得分的机器学习算法

我不确定这是否适用于StackOverflow程序员,但由于它更倾向于实施,我在这里问它。

我正在寻找一种可以接受n输入(所有浮点数)并产生m(所有浮点数;m < n)输出的算法。然后可以使用一种适应度分数来训练这个系统,以学习输入和输出之间的相关性。

用于此目的的最佳算法是什么?


一点上下文: 我想使用机器学习而不是自创算法,因为我不知道数据之间的(完全)相关性,我知道机器学习算法的结果是否好并从那里训练它。

我有几个变量要传递,例如:

  • 只有我知道的信息(信心 0-1
  • 所有人都知道的关于我的信息(资源和以前的成就 0-1
  • 我正在调查的人的风险状况(分别基于其他玩家 0-1
  • 我正在调查的人的行为概况(分别基于其他玩家 0-1
  • 我正在调查的玩家拥有的资源(分别 0-1
  • 玩家总数(基于允许的最大玩家数 0-1
  • 结果预测(偏差 0-1

输出应该是:

  • 采取的行动(从“什么都不做”到“迅速行动” 0-1
  • 采取的行动量(从“不多”到“你能做的最多” 0-1

我有非常大的数据集可以处理,所以理想情况下建议的算法也可以持久化。


我见过像人工神经网络这样的算法,但它们不允许适应度得分,因为它们需要将输入和输出耦合在一起。我不能提供,我只能计算这些数字正确的机会(健身分数——设计上永远不会>= 1

0 投票
0 回答
77 浏览

aforge - Aforge.Genetic、Fitness 函数

请帮我创建一个类型为“DoubleArrayChromosome”的染色体的适应度函数。我的染色体包含多项式系数。

你能给我一些例子或建议如何为这种类型的人群编写正确的代码。

现在我只有这个:

PS对不起我的英语...

0 投票
1 回答
822 浏览

matlab - 您的适应度函数必须返回一个标量值

我尝试使用神经网络和遗传算法进行优化。我用输入 p (4x72 矩阵)目标 t (2x72 矩阵)训练了一个神经网络。使用遗传算法重新优化优化,我使用sim神经网络的函数作为适应度函数。我使用的代码如下:

我提供了分别为下限和上限的 LB 和 UB。而且options,我试过了

从逻辑上讲,当我在命令中使用p'sim时,结果矩阵将是72x2,这与 GA 的总体相同。但由于某种原因,我总是收到错误消息“你的适应度函数必须返回一个标量值”。

请指导我解决这个问题。