2017-05-24 76 views
1

我已经运行了一个基因程序在数据集上的30 * 7运行,现在我想比较一下这个结果。 每个程序运行了200代 我收集了每一代的数据,但我想比较的是30次运行的最佳测试健身状况以及来自每个设置的所有其他30次运行的最佳测试健身状况,以检查是否存在不同参数的结果。 由于事物的性质,分布并不正常,所以我在考虑对7个数据列(每列有30个样本)进行Kruskal Wallis检验。比较遗传程序设计性能

你们认为什么?

感谢 豪尔赫

回答

0

你是如何定义的性能? 假设你平均收敛到最佳(或至少局部极值),你可能需要比较:

  1. Optima在每次运行
  2. 你达到他们(平均增量或东西在哪个率达到类似)。

对于你甚至可能要适合在一个曲线(例如线),并尝试来比较Y A 参数的2点 =一个 X + B

只看统计学方面,你也可以使用Wilcoxon rank test,因为你可以成对地分组运行。顺便说一句,由于每一个给定的参数集(至少在理论上)运行可能会给你稍微不同的结果(由于遗传编程固有的随机性),你可能想要至少有几次运行每一组参数你想调整以消除(误)幸运的随机性影响。

+0

这是一个最小化问题,越接近0越好。我有30个运行与每个参数设置。 –

+0

因此,首先您可能想要比较运行是否接近0(具有一些“epsilon”容差)。然后你可以检查收敛速度。 – sophros

+0

我已经有一些运行等的grphical分析,像什么样的Id是告诉我方法结果有多不同,所以我可以衡量是否有点使用mehod A或B的定量方法。 有7种不同的算法“竞争”。 –