jmetal框架学习
文章平均质量分 91
jmetal框架学习笔记
包括文档翻译
kininee
这个作者很懒,什么都没留下…
展开
-
requirements/experimentalStudies
从 5.1 版开始,jMetal 支持进行实验研究,即配置一个实验,其中一组算法解决了许多问题,因此生成了许多输出文件(R 脚本)。原创 2023-02-27 11:07:10 · 42 阅读 · 0 评论 -
changelog
【代码】changelog。原创 2023-02-27 11:06:35 · 77 阅读 · 0 评论 -
jMetal学习笔记(二)-NSGAii源码解读
一文看懂nsgaii源码原创 2022-07-23 20:19:44 · 1480 阅读 · 2 评论 -
qualityIndicators
(https//github.com/jMetal/jMetal/blob/jmetal-5.0/jmetal-core/src/main/java/org/uma/jmetal/util/front/imp/Array正面类通常,参考帕累托前沿存储在包含多个解的目标值的文件中。5.0/jmetal-exec/src/main/java/org/uma/jmetal/qualityIndicator/CommandLineIndicatorRunner.java)类。...原创 2022-07-20 16:48:27 · 134 阅读 · 0 评论 -
operator
模拟二元交叉(SBX)是许多多目标进化算法(例如,NSGA-II、SPEA2、SMS-EMOA、MOCell等)中的默认交叉算子。此接口中的泛型旨在指示将运算符应用于“Source”对象并作为结果返回“Result”对象。该接口简单地说明交叉具有“解决方案”对象列表作为源,并作为结果返回另一个解决方案列表。让我们检查这个接口的两种实现,一种用于双解,另一种用于二元解。在jMetal中,任何改变或生成解决方案的操作(或。用于修改解决方案的选择运算符。它们的集合)实现或扩展了。不同运营商的应用方式。...原创 2022-07-20 16:43:55 · 284 阅读 · 0 评论 -
problem
每个问题都以决策变量的数量、目标函数的数量和约束的数量为特征,因此必须定义返回这些值的getter方法。这样,问题必须包括一个方法,用于评估类’S’的任何解决方案,以及提供一个’createsolution()'方法来创建新的解决方案。为了避免这种违反[接口隔离原则](https//en.wikipedia.org/wiki/Interface_segregation_principle),在jMetal5中,只有那些具有侧约束的问题需要评估约束。对象,并且必须实现获取每个变量的下限和上限的方法。...原创 2022-07-20 16:41:23 · 141 阅读 · 0 评论 -
solution
的实用程序类(https//github.com/jMetal/jMetal/blob/master/jmetal-core/src/main/java/org/uma/jmetal/util/SolutionListUtils。泛型的使用还允许错误分配变量值的尝试导致编译错误,例如,试图将“双解”的变量值分配给int变量。此代码还包括另一个属性,称为“违反约束的数量”,用于设置给定解决方案的违反约束的数量。该接口具有访问解决方案的变量和目标的方法、复制方法以及访问解决方案属性的方法。...原创 2022-07-20 16:35:17 · 100 阅读 · 0 评论 -
measures
ajMetal5.0的一个新颖之处在于包含了一些措施,它允许在其执行期间获得特定于算法的信息。当前的实现支持两种类型的度量“PullMeasure”按需提供度量值(同步),而“PushMeasure”允许注册侦听器(或观察者)以接收度量值。产生(异步)。...原创 2022-07-20 16:31:25 · 183 阅读 · 0 评论 -
running
它们可以在文件夹https//github.com/jMetal/jMetal/tree/master/jmetal-exec/src/main/java/org/uma/jmetal/runner/的。在具有已知Pareto前沿(或Pareto前沿近似)的问题的情况下,添加包含它的文件允许将可用的质量指标应用于获得的前沿。Javadoc注释指示程序参数第一个是要解决的问题的类;第二个,是一个可选参数,指示包含引用前面的文件的路径。第二个,是一个可选参数,指示包含引用前面的文件的路径。......原创 2022-07-20 16:22:38 · 126 阅读 · 0 评论 -
algorithmTemplates
大多数元启发式家族具有一个共同的行为特征,该行为由属于该家族的所有算法共享。从软件工程的角度来看,行为属于基本模板的算法只需要实现新技术的一些特定方法;通用行为不需要编程,因此代码复制更少。这种控制反转是[软件框架]的一个特征(https//en.wikipedia.org/wiki/Software_framework)例如,jMetal。如果我们有兴趣实现遗传算法,EA的一个子家族,其特点是应用选择算子,并在复制步骤中使用交叉和变异算子,“抽象进化算法”的子类称为[抽象遗传算法](https。...原创 2022-07-20 16:17:57 · 91 阅读 · 0 评论 -
algorithm
我们接下来描述这些方法是如何在[NSGAII](https//github.com/jMetal/jMetal/blob/jmetal-5.0/jmetal-algorithm/src/main/java/org/uma/jmetal/algorithm/multiobjective/nsgaii/NSGAII.java)类。]表示(https//github.com/jMetal/jMetal/blob/jmetal-5.0/jmetal-...原创 2022-07-18 21:34:42 · 202 阅读 · 0 评论 -
jmetal-architecture
一方面,我们发现构成模板的抽象类(例如,“抽象进化算法”或“抽象粒子群优化”)可用于通过重用已提供代码的扩展来促进算法的实现。此图捕获了jMetal提供的典型功能“算法”通过使用多个“运算符”来操纵一组潜在的“解决方案”对象来解决“问题”。我们可以观察到,在NSGA-II的情况下,它继承自“抽象遗传算法”,它是“抽象进化算法”的子类。在jMetal5中,人口只是解决方案的列表(Java中的“List”)。“解决方案”界面代表进化算法中的个体和粒子群优化算法中的粒子。...原创 2022-07-17 15:31:56 · 141 阅读 · 0 评论 -
jMetal学习笔记(一)-架构组件
jMetal的基本架构依赖于Algorithm使用SolutionSet和一系列的Operator解决Problem在遗传算法中,种群(populations)对应SolutionSet,个体(individuals)对应Solution。下面根据的使用手册介绍四大基本组件。原创 2022-07-16 22:48:53 · 1084 阅读 · 0 评论