之前完成了导入JMetal到自己的工程这一步。

在开始我们研究的问题之前,我们先对JMetal的源代码一个全局的认识。

JMetal很好地利用了面向对象的特性,对所有的优化问题做了高度的抽象,建议有空认真阅读源代码。

core 中的类是整个JMetal的基础类,非常重要。比如,所有的算法都继承于的Algorithm类。

encodings 是编码的方法,就是启发式算法中的各种解的表示方法。

experiments 这里面给出利用JMetal做实验的一些示例代码。

metaheuristics里面包含了各种最新的优化算法的实现,可以非常方便地做对照实验。

operators 是优化算法里面的各种操作,比如遗传算法需要交叉、变异、选择,也可以自定义操作。

problems 包括多目标的一些经典的问题,广泛应用于各种多目标论文中对照实验,比如WFG,DTLZ还收录了CEC2009的测试集。

qualityIndicator 里面是对各种解的一些质量评估的方法。包括Spread, Epsilon, HyperVolume这些经典的指标。

最后的util类,包含很多实用的算法类,比如求解向量的距离,排序等等,如果能够用上可以节约很多时间。

以后用到再更新。

利用 JMetal 实现大规模聚类问题的研究(二) JMetal代码总览的更多相关文章

  1. 利用 JMetal 实现大规模聚类问题的研究(一)JMetal配置

    研究多目标优化问题,往往需要做实验来对比效果,所以需要很多多目标方面的经典代码,比如NSGA-II, SPEA, MOEA,MOEA/D, 或者PSO等等. 想亲自实现这些代码,非常浪费时间,还有可能 ...

  2. 利用GPU实现大规模动画角色的渲染(转)

    原文: https://www.cnblogs.com/murongxiaopifu/p/7250772.html 利用GPU实现大规模动画角色的渲染 0x00 前言 我想很多开发游戏的小伙伴都希望自 ...

  3. 利用MONAI加速医学影像学的深度学习研究

    利用MONAI加速医学影像学的深度学习研究 Accelerating Deep Learning Research in Medical Imaging Using MONAI 医学开放式人工智能网络 ...

  4. 关于linux系统如何实现fork的研究(二)

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 引言 前一篇关于linux系统如何实现fork的研究(一)通过代码已经说明了从用户态怎么通过软中断实现调用系统调 ...

  5. Fiddler实战深入研究(二)

    Fiddler实战深入研究(二) 阅读目录 Fiddler不能捕获chrome的session的设置 理解数据包统计 请求重定向(AutoResponder) Composer选项卡 Filters选 ...

  6. [转]如何利用ndk-stack工具查看so库的调用堆栈【代码示例】?

    如何利用ndk-stack工具查看so库的调用堆栈[代码示例]? http://hi.baidu.com/subo4110/item/d00395b3bf63e4432bebe36d Step1:An ...

  7. 利用ChromeCROSS可以在chrome浏览器上调试跨域代码

    利用ChromeCROSS可以在chrome浏览器上调试跨域代码 1.下载ChromeCROSS文件,可百度下载,或者在我的百度云上下载:链接: https://pan.baidu.com/s/10_ ...

  8. (转载)Fiddler实战深入研究(二)

    原文来源于:http://www.cnblogs.com/tugenhua0707/p/4637771.html,作者:涂根华 !个人觉得文章写的特别好,故收藏于此,感谢原作者的分享 Fiddler实 ...

  9. 如何利用Grunt生成对应的Source Map文件,线上代码压缩使用chrome浏览器便于调式

    如何利用Grunt生成对应的Source Map文件,线上代码压缩使用chrome浏览器便于调式 首先我们来说说为何要生成sourceMap文件呢?简单的说,sourceMap是为了压缩后的代码调式提 ...

随机推荐

  1. python 脚本之 获取远程主机的hostname

    import sys, socket try: result = socket.gethostbyaddr("查询的IP") #查询完后获得一个元组 print (result) ...

  2. Docker基本使用(二)

    Docker 客户端 我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项. 可以通过命令 docker command --help 更深入的了解指定的 Docker 命 ...

  3. Quartus prime 16.0 in_system memory content editor 使用

    前言 quartus提供了片内存储器的实时查看与修改,而不用编译工程,很棒.你可以方便的查看到存储器中到底存储了什么东西. 流程 1.打开: 2.主界面: 3.设置jtag项之后,查看即可. sign ...

  4. Linux block(1k) block(4k) 换算 gb

    输入 df  显示1k blocks  大小   再输入  df -h  显示 gb换算大小  结论 block(1k) 计算公式为:  block(1k)   /1024/1000  = xx gb ...

  5. 「2017 Multi-University Training Contest 2」2017多校训练2

    1001 Is Derek lying 题目链接 HDU6045 Is Derek lying? 给出两个人选择题的回答,问得分分别为x和y是否可能.(\(1\le N \le 80000,0\le ...

  6. Hyper-V 配置虚拟网络

    Hyper-V功能异常强大,不了解的自行GG 本文介绍如何使用Hyper-V在本机建立虚拟网络,创建虚拟交换机 打开Hyper-V Manager,选择右边侧边栏的Virtual Switch Man ...

  7. Linux网络基础-总

    目录 Linux网络基础 一.网卡和数据包的转发 1.收包流程 二.多网卡bonding 三.SR-IOV 四.DPDK 五.TUN/TAP 六.Linux bridge 和VLAN 七.TCP/IP ...

  8. java实现sftp客户端上传文件以及文件夹的功能

    1.依赖的jar文件 jsch-0.1.53.jar 2.登录方式有密码登录,和密匙登录 代码: 主函数: import java.util.Properties; import com.cloudp ...

  9. ArcGIS for qml -设置地图和视域中心

    源码:https://github.com/sueRimn/ArcGIS-for-qml-demos 作者: 狐狸家的鱼 Github: 八至 版权声明:如需转载请获取授权和联系作者 ArcGIS R ...

  10. C# Winform 对话框控件&简单记事本

    一.对话框 1.弹出可供用户选择“确定”.“取消”的对话框 Dialogresult dr =  MessigeBox.Show("这里显示的是对话框的内容","这里显示 ...