JMetal使用小记
2016-01-01 02:55
363 查看
为了接下来在做MOEA算法对比的时候更加遍历,使用一个集成的可以更方便的评价算法的平台是非常有必要的,要么自己去写,要么用现成的,各有各的好处,如今我选择了JMetal,选择他主要基于我对Java比较熟悉,能够看懂和修改代码,其实这个玩意很简单,仔细一看他的结构就知道,并且还给了足够的manual来阐述如何使用,非常方便。如果只是跑一个实验,比如跑NSGAII在3个目标的DTLZ1问题上,那么这个就更简单了,今天我想说的是,比如我想使用NSGAII来跑DTLZ1的3,4,5,10,20等这些目标的结果,那么怎么办?其实在NSGAIIStudy的例子中可以看出来了,能够修改一下就可以用,主要修改的地方在:
algorithm[i] = new NSGAII_Settings(problemName).configure(parameters[i]);
这个代码的地方,是生成一个NSGAII_Settings的类,然后调用configure的方法返回一个algorithm。其实在初始化NSGAII_Setting的时候,就包含了对problem的定义,这个时候只传入了problem的名字,比如我传入的是DTLZ1,那么就使用DTLZ1,而目标数量是用的默认的3,那么如果我想改怎么办?很easy,打开这个NSGAII_Setting方法,加入一个构造函数,就好了
public NSGAII_Settings(String problem, int numberOfVariables, int numberOfObjectives)
以上就可以了。。
algorithm[i] = new NSGAII_Settings(problemName).configure(parameters[i]);
这个代码的地方,是生成一个NSGAII_Settings的类,然后调用configure的方法返回一个algorithm。其实在初始化NSGAII_Setting的时候,就包含了对problem的定义,这个时候只传入了problem的名字,比如我传入的是DTLZ1,那么就使用DTLZ1,而目标数量是用的默认的3,那么如果我想改怎么办?很easy,打开这个NSGAII_Setting方法,加入一个构造函数,就好了
public NSGAII_Settings(String problem, int numberOfVariables, int numberOfObjectives)
以上就可以了。。
相关文章推荐
- HDU-2255 奔小康赚大钱 简单KM
- Android OkHttp完全解析 是时候来了解OkHttp了
- Android 高清加载巨图方案
- linux中配置共享文件夹(配置 samba 实现文件夹共享)
- 黑马程序员——IO之序列化流详解
- 告别学生生涯,进入社会模式—2015总结,2016规划
- Ubuntu 服务配置(sysv-rc-conf)
- Ubuntu 服务配置(sysv-rc-conf)
- 美图秀秀美化图片之【增强】模块界面与功能设计
- 无权查看网页 IIS 解决问题:HTTP 错误 401.1 - 未授权登录失败
- Leetcode: Minimum Height Trees
- 双系统的一些问题。
- MFC 用 Direct2D 显示图像到 Picture Control 中
- 2016新年总结
- 2016依然做一个偏执顽固的程序猿
- uva 10038 - Jolly Jumpers
- lnmp快速搭建
- ubuntu强制安装32位包库
- Android AutoLayout全新的适配方式 堪称适配终结者
- 解决linux 命令行乱码