问题标签 [jenetics]
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.
java - 具有前 N 个解决方案的遗传算法
基本上我需要找到使用 Java 的遗传算法的前 N 个解决方案(得分最高的解决方案)。我正在将 Jenetics 库用于遗传算法,但我找不到如何在不破解库源代码的情况下获得这些结果。
如果有人知道有更好的文档/示例的更好的库,我可以使用另一个库。
java - Jenetics HelloWorld in Scala
I'm trying to run a Jenetics HelloWorld example from Scala.
I'm getting a compilation error on the line where engine is initialized. Compiler complains that no Engine.Builder of conforming types exists. Can anyone explain why?
genetic-algorithm - 为什么突变概率是三分之一?
在 jenetics 库中,Mutator 类的 alter() 方法中给出了以下代码:
最终双 p = pow(_probability, 1.0/3.0);
谁能解释计算这个新的突变概率的目的?它有什么好处?我们如何使用这个类来实现 One-Position 或 Point Mutation?
java - 静态函数作为参数 (::) 抛出错误
使用 jenetics 遗传算法库,但我几乎可以肯定它与问题无关。似乎 Java 不理解 Java 8 中引入的双冒号表达式。Java 8 已安装并且 Gradle 正在使用它。
由于以下类中的双冒号表达式,构建不成功:
给出 Gradle 输出:
java - 为什么每个溶液(或基因型)不止一个染色体?
我正在尝试开始使用 Jenetics JAVA 库进行遗传算法,但从我的 GA 有限背景中有些东西我不明白;
据我了解,GA 会生成一组m
元素数组,其中每个数组都是要评估的潜在解决方案,一旦评估,就会对潜在解决方案进行排序,并选择最好的解决方案来创建新的群体,等等。但我发现一个Jenetics 中的解决方案(基因型)是一个数组列表,其中每个数组都是我理解的潜在解决方案,每个数组也可以有不同的长度,我不明白为什么要使用这种结构而不是基因向量。
参见手册第六页,第 3.1.3 节。
如果可能的话,我想知道这是为什么。我希望这个问题已经足够清楚了。
java - Jenetics 定制基因/染色体
我已经开始尝试使用 Jenetics 库,但是在尝试制作一组非常简单的“自定义”基因/染色体时遇到了一些问题。我试图做的是创建一个自定义染色体,其中包含不同(随机)数量的自定义基因。为了简单起见,基因只包含一个整数值。出于同样的简单性,基因的内容只能是从 0 到 9 范围内的数字,并且只有不包含数字 9 的基因才被认为是有效的(再次,迟钝的简单,但我只是想让它们自定义)
这是我的代码:
自定义基因:
自定义染色体:
主要的:
我不明白为什么我会得到这个输出:
我们可以清楚地看到具有最大适应度函数的基因型与所选基因型之间的差异。为什么?我知道我做错了什么,这可能是一个愚蠢的错误,但我似乎真的无法理解我做错了什么。你能帮帮我吗?
非常感谢!
java - 构建 jenetics 库时出现命令行错误
我正在尝试根据此网站为遗传算法构建 Java jenetics 库。
但是,如下图所示,我遇到了一些我无法解决的问题。
我是否遗漏了说明中的某些内容,或者我做了其他奇怪的事情?
此外,我希望能够通过 Eclipse 使用这个库,所以任何关于如何实现这一点的提示也将受到欢迎,以防万一网站上的直截了当的解释不起作用。
java - Jenetics,如何使用 GA 找到集合的子集
我正在尝试找到集合的最佳子集。想象一下,我们需要找到对象的子集。我们有这个子集的一些适应度函数。所以一开始我们应该做一个子集的种群,然后使用 GA 我们应该尝试找到最好的子集。
我想使用 Jenetics.io,但我不知道在这种情况下如何使用它。对我来说问题是染色体与子集有很大不同的数据结构。
我想有一个功能(人口,健身功能),使所有需要的工作。
我试图了解 Jenetics 是如何工作的。也许我错了,但我认为没有办法让它按我想要的方式工作。
请给我建议,也许在这种情况下可以选择使用 Jenetics?
java - 这两种基因型的区别
使用带有N (任意 > 0 个数字)的基因型和带有 1(一个)基因的染色体和带有 1(一个)染色体和N (相同数量)基因的基因型有什么区别?
在代码中:
相对
我的问题不是关于在 eval 函数中获取值,而是它是否可以以某种方式(结果或进化)改变遗传算法。
更新
我正在使用Jenetics库。
java - 使用 Jenetics 只有一条染色体显示出良好的结果
我正在使用Jenetics
库来解决 ga 的问题。我正在扩展官方示例以使用如下几个染色体:
并将eval
函数更改为正好有 8 个 1 和 8 个 0:
其他部分保持不变:
我期待 ga 产生 3 条染色体来最大化这个 eval 函数,但我得到:
如您所见,只有第一个结果满足条件。我怎样才能扩展这个例子,使所有染色体都最大化评估函数?