Closed. This question needs to be more focused。它当前不接受答案。
想要改善这个问题吗?更新问题,使它仅关注editing this post的一个问题。
5年前关闭。
Improve this question
我正在编写一个基因编程(GP)系统(用C语言编写,但这只是次要的细节)。我已经阅读了很多文献(Koza,Poli,Langdon,Banzhaf,Bramier等),但是有一些我从未见过的实现细节可以解释。例如:
我使用稳态人口而不是分代方式,主要是为了使用计算机的全部内存,而不是为临时人口保留一半的内存。
Q1。在GP中,与GA相对,在执行交叉时,您选择了两个 parent ,但是您创建了一个或两个 child ,还是您有一个自由选择?
Q2。在稳定的GP中,与世代制不同,交叉产生的 child 取代了人口的哪些成员?这是我未曾讨论过的。是两个 parent ,还是另外两个随机选择的成员?我可以理解是否是后者,并且您可以使用否定的锦标赛选择来选择要替换的成员,但这不会造成过早的趋同吗? (在发生交叉事件之后,人口中包含两个原始 parent 以及两个 parent 的两个 child ,另外两个随机成员被删除。精英是固有的。)
Q3。是否有一个针对GP的网络论坛或邮件列表?奇怪的是我还没找到。雅虎的GP小组几乎只用于发布公告,Poli/Langdon现场指南论坛几乎保持沉默,而在一般/游戏编程网站(例如gamedev.net)上的GP讨论非常基础。
感谢您的任何帮助,您可以提供!
想要改善这个问题吗?更新问题,使它仅关注editing this post的一个问题。
5年前关闭。
Improve this question
我正在编写一个基因编程(GP)系统(用C语言编写,但这只是次要的细节)。我已经阅读了很多文献(Koza,Poli,Langdon,Banzhaf,Bramier等),但是有一些我从未见过的实现细节可以解释。例如:
我使用稳态人口而不是分代方式,主要是为了使用计算机的全部内存,而不是为临时人口保留一半的内存。
Q1。在GP中,与GA相对,在执行交叉时,您选择了两个 parent ,但是您创建了一个或两个 child ,还是您有一个自由选择?
Q2。在稳定的GP中,与世代制不同,交叉产生的 child 取代了人口的哪些成员?这是我未曾讨论过的。是两个 parent ,还是另外两个随机选择的成员?我可以理解是否是后者,并且您可以使用否定的锦标赛选择来选择要替换的成员,但这不会造成过早的趋同吗? (在发生交叉事件之后,人口中包含两个原始 parent 以及两个 parent 的两个 child ,另外两个随机成员被删除。精英是固有的。)
Q3。是否有一个针对GP的网络论坛或邮件列表?奇怪的是我还没找到。雅虎的GP小组几乎只用于发布公告,Poli/Langdon现场指南论坛几乎保持沉默,而在一般/游戏编程网站(例如gamedev.net)上的GP讨论非常基础。
感谢您的任何帮助,您可以提供!
最佳答案
首先,放松一下。
GP中没有“正确”的方法。 GP比艺术更重要。尝试许多方案,然后选择效果最好的方案。
Q1:1、2或很多。你选。
问题2:全部替换为1、2。或尝试一些精英主义。
问题3:您可能找不到讨论这些问题的论坛,因为没有正确/最佳答案。对不起。
PS。在我的研究中,交叉从未真正表现出色...
关于artificial-intelligence - 在基因编程中实现交叉,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2047458/
10-09 02:45