问题标签 [genetic-programming]
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.
genetic-algorithm - 我可以在 JGAP 中拥有可变长度的染色体吗?
我使用 JGAP 为原理图生成测试向量。通过将染色体的基因设置为 bits ,我获得了单个测试向量的最大覆盖率。现在我需要用最少的测试向量获得 100% 的覆盖率。
如果我将每个基因设计为测试向量,则 id 需要根据基因数量和总覆盖率计算适应度函数,并且 id 还需要进化染色体长度和每个测试向量(基因)位。
甚至有可能拥有可变长度的染色体吗?
此类任务是否有任何标准设计?
c# - 轮盘选择程序
是否可以使用适应度值来评估种群中的每个个体,而无需找到概率,如下面的伪代码
以及代码的以下部分做什么?
我真的很困惑轮盘赌如何选择一对父母。有什么帮助吗?提前致谢
genetic-algorithm - 交叉概率在遗传算法/遗传编程中有什么影响?
任何人都可以举一个交叉概率的例子吗?我想知道确定交叉概率有什么好处,以及它对遗传算法或遗传编程有什么影响。
selection - 随机通用抽样应如何与遗传编程中的精英主义相结合?
实施了排名选择 (“RS”) 和随机通用抽样 (“SUS”) [ Baker,1987 ] 我现在想介绍精英主义(将最适合的上一代成员重新引入下一代)以观察其声称的好处.
有提到 SUS 和精英主义的结合,例如 Melanie Mitchell 在An Introduction to Genetic Algorithms中的引用。但是,我遇到了一个(非常模糊的)在线参考,建议避免结合使用这两种方法。我想知道在后一种情况下,不正确的实现是否是两种方法不兼容的原因。
因此,如果对 GP 更有经验的人能提供关于如何结合 SUS 和精英主义的描述,我将不胜感激。根据我对这两种机制的了解,逻辑实现是从种群大小 N 中选择 K 最适合的个体,然后对整个排名种群(包括 K 精英)执行 SUS,但只进行 NK 选择(而不是 N 选择将在没有精英主义的情况下发生)。
有人能够确认这个提议的实现在数学上是合理的,以及推荐的方法吗?
genetic-programming - 线性遗传规划内含子检测算法
有人可以指出一种用于从 lgp 个体中去除内含子的特定算法吗?
谢谢
genetic-algorithm - 遗传算法——与无性遗传算法相比,有性遗传算法有什么好处?
直觉上我认为如果我想找到“最好”的参数集,我可以简单地从许多孩子的子集中挑选表现最好的一个人,让那个人产生 100 个与他相似的孩子,挑选表现最好的人并重复。专门挑选最好的 2 和杂交品种的目的是什么?就此而言,为什么不选择 3、4 或 10 个父母(“狂欢衍生”受精卵)来创造每一代孩子呢?
statistics - 测试误差低于训练误差
非常感谢您对此的意见。我正在借助遗传编程构建回归模型。
如果我在测试数据上的 RMSE(远)低于我在训练数据上的 RMSE(1:5 的数据比),我应该担心吗?
测试数据是从一组 24 个数据点中随机抽取的,无需替换。该模型是使用遗传编程技术构建的,因此随着我最小化由 GP 树中的节点数正则化的训练 RMSE,特征、建模框架等的数量会有所不同。
模型是否欠拟合?或者我应该最小化 MSE 而不是 RMSE(我认为这与 MSE 为正数相同,并且假设优化器足以找到最小值,则 MSE 的最小值将与 RMSE 的最小值一致)?
Tks
java - 同一群体中的重复个体
我实现了jenes库提供的 Java 示例(教程 5:ObjectChromosome</a>)。我发现人群中的个体都是相同的(即没有发生随机化);
我在 OCProblem 类之后添加了以下代码ga.evolve();
来打印人口中的每个人:
输出是令人震惊的个人是重复的!这是之前代码的输出
教程 5:找到最接近目标的颜色序列。[6,20,0.5623470035526044,false,(红色)] [6,20,0.5623470035526044,false,false,(红色)] [6,20,0.56234700355526044 )] [6,20,0.5623470035526044,false,(红色)] [6,20,0.5623470035526044,false,false,(red)] [6,20,0.5623470035526044 (红色) ] [ 6 ,20 , 0.5623470035526044 , 假 , (红色) ] [ 6 , 20 ,0.5623470035526044 , 假 , (红色) ]
x86 - 进化算法是否有可能创建机器代码?
这是一个普遍感兴趣的问题,因为我不是试图解决一个特定的问题。我环顾四周,试图找到一些涵盖该领域的文章,但我什至很难将一些好的搜索词放在一起。
让我们从我所知道的开始:我接受过大学水平的人工智能教育,包括基因编程和更广泛的进化算法类,尽管自从我十年前毕业以来,我并没有经常接触它们。我想知道这些方法是否可以用来创建机器代码来解决问题(也许是 x86,或者一些“任意”指令集)。我们能否发展算法本身,例如可以计算平方根或在屏幕上绘制令人愉悦的图像?是否可以使用进化算法来创建创建优化代码(针对大小、速度等)的整个编译器?
此外,我经常认为遗传编程或进化算法本身并不是物种进化的良好证据。涉及进化算法的问题解决方法似乎总是需要将智能写入其中。一个人如何创建一个真正的进化算法,从而真正产生真正有趣和令人惊讶的结果?
TLDR:进化算法的使用在创建一种机器代码时是否有用,以前有没有进化算法的例子通常产生真正有趣和令人惊讶的结果?
缺口