遗传算法。如何找到最佳人口规模

时间:2017-05-05 12:16:46

标签: c# genetic-algorithm

如何找到最佳人口规模。在我的任务中,每个基因都是一个在给定范围内的int类型的值。

例如:

  1. 染色体由2个基因组成。
  2. 第一基因可以包含5至15的范围内的int值
  3. 第二个基因可能含有15至25的int值。
  4. 问题。如何找到初始人口的大小。

1 个答案:

答案 0 :(得分:0)

通常通过反复试验找到最佳尺寸。您可以编写一个简单的算法来优化种群大小,例如以pop大小为100开始,并通过例如迭代法增加它。 50.对于每个步骤,您需要运行GA并计算一些评估人口规模的度量,您可以使用以下方法之一:最大适应度,平均适应度,达到收敛标准的时间。为了提高准确度,您应该至少重复几次每个步骤,然后计算每个步骤的平均值并绘制图表,从中可以选择最佳的弹出尺寸,或者如果它不够,您可以近距离优化做同样的事情。这个流行音乐大小。

根据您的问题,图表看起来会有所不同。如果它只是一个正斜率曲线,那么你将不得不选择合适的弹出尺寸。由于弹出尺寸太小,你的GA很可能会失去多样性,也许会降到一​​些局部最佳状态。如果它太大,那么你的GA将成为简单的随机搜索算法。

顺便说一下,我希望这个例子远非你真正的问题,因为遗传算法并不是这种小染色体的最佳选择。