问题标签 [jgap]
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 - 关于在 JGAP 中使用多线程,我应该知道任何“陷阱”吗?
我正在从事一个遗传编程项目,该项目试图生成代表图像的 GP。我的方法是将图像分成不同的独立部分,并让单独的线程对它们进行进化工作。
由于事情将是异步的,自然你也希望对象是独立的。问题是我注意到 JGAP 中的某些对象实际上是共享变量,因此它们将在线程之间共享,这会导致很多问题。例如,我注意到所有具有相同名称的变量都是相同的,这意味着如果我想同时评估多个 IGPProgram,我必须锁定该变量,这确实会影响性能。
我还注意到,如果您尝试创建多个 GPConfiguration,程序会抱怨您必须先重置它。所以在我看来,所有 GPConfigurations 都是共享的(即你不能让多个线程同时创建多个配置),这是一个问题,因为创建 GPProblems 可能需要很多时间,而我正在创建很多 GPProblems ,所以我希望通过将工作分成多个线程来减少所花费的时间。
在使用 JGAP 和线程时,我需要了解任何“陷阱”吗?不幸的是,JGAP 文档中没有过多地涉及多线程,我希望我能从可能有 JGAP 经验的人那里得到一些建议。
java - 使用 JGAp(遗传算法库)和重复的染色体
我使用了 JGAp java 遗传算法库。当我评估染色体时,我在总体样本中发现了重复的染色体:
我使用的配置是:
有没有什么配置可以用来获得独特的染色体?
genetic-algorithm - 我可以在 JGAP 中拥有可变长度的染色体吗?
我使用 JGAP 为原理图生成测试向量。通过将染色体的基因设置为 bits ,我获得了单个测试向量的最大覆盖率。现在我需要用最少的测试向量获得 100% 的覆盖率。
如果我将每个基因设计为测试向量,则 id 需要根据基因数量和总覆盖率计算适应度函数,并且 id 还需要进化染色体长度和每个测试向量(基因)位。
甚至有可能拥有可变长度的染色体吗?
此类任务是否有任何标准设计?
java - 如何使用 JGAP 设置具有非重复等位基因的染色体?
我正在为我的代码使用 JGAP,我想像这样评估染色体:
到目前为止,我得到的染色体具有重复的等位基因,如下所示:
我可以使用任何配置来获得具有非重复等位基因的染色体吗?
jgap - 具有非重复等位基因的染色体
我阅读了有关如何查找非重复染色体的建议: 使用 JGAp(遗传算法库)和重复染色体
如何使用 JGAP 找到具有非重复等位基因的染色体?
random - 避免染色体有重复基因(JGAP)
我使用 JGAP 作为 api 来设置我的 GA 应用程序。在我的染色体中,有时会有重复的整数值设置为等位基因。我正在使用基本随机生成器从所需范围内获取随机值。我想避免基因在染色体中是相同的整数。知道如何解决这个问题
java - JGAP Robocode 用户指南
我已经查看了 robocode 网站上的 JGAP 包,并且在尝试设置它时遇到了问题。似乎有些讨论的文件实际上并没有在下载中。例如,网站上的行说:-
但是,当尝试运行 JAR 文件时,上述子目录或机器人不在下载中,显示以下错误:
如果需要更多详细信息,请随时向我提供教程链接或有关此修复的一些建议的任何人都将不胜感激.....
问候..
genetic-algorithm - GA Jgap:避免不计算顺序的重复(双峰)染色体
我正在使用 JGAP 实现一种遗传算法来解决染色体是整数列表的问题(我想在结果中保留 N 个合适的解决方案,而不仅仅是最合适的解决方案)。
每个整数必须在染色体中只出现一次(我通过将 Fitness=0 设置为具有重复等位基因的染色体来做到这一点,这没关系......)
我的问题:
在我的问题中,数字出现在染色体中的顺序不计算在内(1 2 3 与 2 1 3 相同)。
所以在执行结束时,我列出了可能的解决方案
我使用此处报告的解决方案(使用 JGAp(遗传算法库)和重复的染色体)以这种方式删除重复的染色体:
但它只删除相同的染色体,它不会删除例如:
我的问题中的那些染色体代表相同的解决方案
所以我最终得到了一个染色体列表,这些染色体具有相同的适应度和相同的含义,但基因的顺序不同。
我如何删除代表相同解决方案的染色体,尽管它的表示顺序如何?
谢谢你,祝你有美好的一天。
java - 在染色体上设置基因限制
我目前正在尝试使用 JGAP 3.6 为简单的地下城游戏生成关卡。该问题涉及使用染色体表示,其中每个基因包含一个表示房间类型的整数值,例如 0 = 起始房间,1 = 怪物房间,等等。
问题是,我想确保一个级别中只有一个起始房间(染色体中只有一个值为 0 的基因)。我已经阅读了javadocs,特别是 Chromosome 和 Gene 类,但没有找到直接的方法来做到这一点。我也考虑过使用定制的 Gene,但它似乎没用,因为我认为这种“验证”需要由 Chromosome 类而不是 Gene 类来完成。
我目前针对该问题的解决方案是在对不满足所述条件的染色体进行适应性评估期间给予较大的惩罚。有任何想法、解决方案、建议或意见吗?谢谢
java - JGAP 遗传规划 - 分类
我想知道是否有任何教程可以帮助我开始使用 JGAP 来解决和发展分类问题。
示例我想解决这个数据集