Questions tagged «genetic-algorithms»

5
为什么身体素质低下的人有机会生存到下一代?
我目前正在阅读和观看遗传算法,并且发现它非常有趣(我上大学时没有机会学习它)。 我了解突变是基于概率的(随机性是进化的根源),但我不知道生存的原因。 据我了解,一个个体III具有适应性例如另一个个体具有适应性我们有,那么比具有更好的生存可能性到下一代。F(i)F(i)F(i)JJJF(j)F(j)F(j)F(i)>F(j)F(i)>F(j)F(i) > F(j)IIIJJJ 概率意味着可以生存而可能无法生存(“运气不好”)。我不明白为什么这很好?如果将始终在选择中幸免,那么算法中会出什么问题?我的猜测是该算法将类似于贪婪算法,但我不确定。JJJ III III

2
为什么二倍体(显性/隐性)基因没有在遗传算法中广泛使用?
此问题是从“人工智能堆栈交换” 迁移而来的,因为可以在“计算机科学堆栈交换”上回答。 迁移 5年前。 在遗传算法的大多数实现中,重点是交叉和变异。但是不知何故,它们中的大多数都忽略了基因的二倍体(显性/隐性)性质。就我(有限的)理解而言,基因的显性/隐性是决定生物体实际特征的一个非常重要的因素。 所以我的问题是,为什么在大多数实施方案中基因算法的基因没有二倍体性质? 是因为: 它没有太大的好处 它为原本简单的算法增加了不必要的复杂性 很难实现 还是完全其他?

4
不断发展的人工神经网络解决NP问题
最近,我从Google Research Blog上读了一个非常有趣的博客条目,内容涉及神经网络。基本上,他们使用这种神经网络来解决各种问题,例如图像识别。他们使用遗传算法来“进化”轴突的重量。 所以基本上我的想法如下。如果我应该写一个能识别数字的程序,我将不知道如何开始(我可能有一个模糊的想法,但我的意思是:这并不琐碎,也不容易。)但是通过使用神经网络,我不必这样做。通过创建正确的上下文以使神经网络进化,我的神经网络将“找到正确的算法”。在下面,我引用了文章中一个非常有趣的部分,其中他们解释了每一层如何在图像识别过程中发挥不同的作用。 神经网络的挑战之一是了解每一层到底发生了什么。我们知道,经过训练后,每一层都会逐步提取图像的越来越高的特征,直到最后一层基本上决定了图像显示的内容。例如,第一层可能寻找边缘或拐角。中间层解释基本特征以寻找整体形状或组件,例如门或叶子。最后几层将它们组合成完整的解释-这些神经元会响应非常复杂的事物(例如整个建筑物或树木)而激活。 所以,基本上我的问题是:我们不能使用遗传算法+神经网络来解决每个NP问题吗?我们只是创造正确的进化环境,而让“自然”找到解决方案。 感应主义:更深入地研究神经网络 编辑:我知道我们可以在许多情况下使用蛮力或找到效率不高的解决方案。这就是为什么我试图强调不断发展的人工神经网络。正如我在评论中所说:给定足够的时间和适当的突变率,我们可以找到最佳解决方案(或者至少我认为如此)。

2
遗传算法的参数选择
如何为遗传算法建模给定系统选择合适数量的参数? 例如,假设您要优化汽车的生产,并且对1,000名不同员工中的每名员工在不同任务下的小​​时效率进行了1,000次测量。因此,您有1,000,000个数据点。其中大多数可能与工厂的整体效率之间存在弱关联,但并非如此弱,以至于您可以说它们与统计信心无关。如何为GA选择输入,以使您没有1,000,000+的自由度,从而导致收敛速度非常慢或完全没有收敛? 具体来说,一个可以用来预选或选择性消除特征的算法是什么? 我在这种情况下使用的一种方法是自行发展参数选择,因此我可能会有像{a,b,c},{b,d,e,q,x,y,z}等等的父项。然后,我将对孩子进行突变以添加或删除功能。这对几十个功能都适用。但是问题是,如果存在大量的自由度,效率会很低。在这种情况下,您正在查看10^n组合(在上面的示例中10^1,000,000),这使得对功能进行一些预过滤对于获得任何有用的性能至关重要。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.