Skip to main content

IEEE 进化计算大会 CEC'2013 上真正大规模全局优化会议的基准测试包

项目描述

这是一个 Python 包装,使用测试套件的 C++ 实现,用于 2013 年 IEEE 进化计算大会上的大规模全局优化特别会议。

笔记

如果您要使用此代码的任何部分,请引用以下出版物:X. Li, K. Tang, M. Omidvar, Z. Yang 和 K. Qin, “Benchmark Functions for the CEC'2013 Special Session and Competition on大规模全局优化,”技术报告,进化计算和机器学习小组,RMIT 大学,澳大利亚,2013。http: //goanna.cs.rmit.edu.au/~xiaodong/cec13-lsgo/competition/

要求

  • GNU 制作

  • GNU G++

  • Python

  • 赛通

测试环境

  • Debian GNU/Linux 杰西/sid

  • GNU Make 3.81

  • g++ (Debian 4.7.3-4) 4.7.3

  • Python 2.7 和 Python 3.2

  • numpy 1.8.1

  • 赛通 0.20.1

Travis-CI 的结果

https://api.travis-ci.org/dmolina/cec2013lsgo.svg?branch=master

安装

很简单,pip install cec2013lsgo ;-)。

您也可以从https://github.com/dmolina/cec2013lsgo下载,然后执行python setup.py install [–user]。(选项–user用于在本地安装软件包,作为普通用户(当您想在没有管理权限的集群/服务器中运行实验时很有趣)。

用 C++ 编译源代码

C++ 的源代码也可用。如果您只想编译源代码根目录中的“make”中的 C++ 版本类型。

有两个等效的演示可执行文件:demo 和 demo2。

记住:要运行 C++ 版本,目录 cdatafiles 必须在工作目录中可用。在 python 版本中,这些文件包含在包中,因此不需要。

测试

源代码具有检查每个函数的信息的测试,以及使用解决方案 np.zeros(1000)(零的解决方案)使用 C 版本获得的结果。

快速开始

该软件包非常易于使用。有一个类 Benchmark 有两个功能:

  • 为每个函数提供信息:它们的最优值、维度、域搜索以及实现最优值的预期阈值。

  • 给出一个适应度函数来评估解决方案。它期望这些解决方案是 numpy 数组(向量),但它也可以与普通数组一起使用。

这两个功能是通过 Benchmark 类中的两个方法完成的:

  • get_num_functions()

    返回基准中的函数数量 (15)

  • 获取信息(函数 ID)

    返回一个包含以下信息的数组,其中 /function_id/ 是函数的标识符,一个介于 1 和 15 之间的 int 值。

    • 小写大写

      域搜索的上下边界

    • 最好的

      最佳实现,它始终为零,因此可以忽略。

    • 临界点

      获取的阈值,总是为零,因此也可以忽略。

    • 方面

      函数的维度,始终为 1000。

    可以注意到,所有函数的几个数据都是相同的。它是为维护与其他 cec20xx 竞赛的相同接口而设计的。

  • 获取函数(函数 ID)

    function_id与get_info中的参数相同,是 1 到 15 之间的整数值。

    它返回适应度函数来评估解决方案。

使用示例

获取有关一项功能的信息

>>> from cec2013lsgo.cec2013 import Benchmark
>>> bench = Benchmark()
>>> bench.get_info(1)
{'best': 0.0,
 'dimension': 1000,
 'lower': -100.0,
 'threshold': 0,
 'upper': 100.0}

评估解决方案

>>> fun_fitness = bench.get_function(1)
>>> fun_fitness(sol)
464006824710.75995

接触

Python包和C++版本

Daniel Molina @ 格拉纳达大学计算机科学系 请随时通过 < dmolina @ decsai与我联系乌格_ es > 如有任何疑问或建议。

最近更新时间:

  • C++版本<2018-12-10>

  • Python 包装 <2018-01-08>

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

cec2013lsgo-2.2.tar.gz (1.5 MB 查看哈希

已上传 source