若干优化问题的测试集

先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年提出的新型智能优化算法,并附MATLAB代码。

原文在这里:点一下

所有测试集的获取源在公众号里(启发式算法讨论

这一期主要是给大家分享CEC系列的测试套件,方便大家做数值实验。包含单目标无约束优化、单目标约束优化、多目标无约束优化、多目标约束优化、多模态优化、稀疏优化问题的测试集函数等内容。”

优化算法的性能是相对于问题而言的,测试集就是用来检验函数的性能。不同的优化问题有不同的评价指标。说白了,就是你的算法和其他算法在测试集上跑出的结果进行对比,利用评价指标进行评价,通过统计检验等方法证明你的算法牛逼~

01

CEC测试集

CEC2005特别会议/实参数单目标优化进化算法竞赛:

CEC2005测试集是应用最多、最经典的一个测试集,包含23个Benchmark函数。具体信息如下图:

CEC2005测试集MATLAB代码获取:

CEC2006特别会议/实参数单目标约束优化进化算法竞赛:

CEC2006是使用最多的一个单目标约束优化问题测试集,包含24个单目标约束优化测试函数。具体信息如下图:

CEC2006测试集MATLAB代码获取:

CEC2007特别会议/实参数多目标优化进化算法性能评估竞赛:

CEC2007包含了13个多目标优化函数,用于测试多目标进化算法的性能。具体信息如下图:

CEC2007测试集MATLAB代码获取:

CEC2009特别会议/实参数多目标优化进化算法性能评估竞赛:

CEC2009包含了23个测试实例:13个无约束实例、10个约束实例。因为是实例,所以没有概括性的表格进行展示。

CEC2009测试集MATLAB代码获取:

CEC2010特别会议/实参数单目标约束优化进化算法竞赛:

CEC2010也是使用较广泛的一个单目标约束优化测试集,包含18个单目标约束优化测试函数。具体信息如下图:

CEC2010测试集MATLAB代码获取:

CEC2011特别会议/在实际数值优化问题上测试进化算法竞赛:

CEC2011包含13个实际应用问题,其中,第11个应用又包含10种情形。想用算法做应用的朋友可以了解一下。具体信息如下图:

CEC2011测试集MATLAB代码获取:

CEC2013特别会议/实参数单目标优化进化算法竞赛:

CEC2013包含28个单目标的测试函数,是应用最广泛的测试集之一。具体信息如下图:

CEC2013测试集MATLAB代码获取:

CEC2013测试集Python代码获取:

CEC2014特别会议/实参数单目标优化进化算法竞赛:

CEC2014包含30个单目标的测试函数,也是应用最广泛的测试集之一。具体信息如下图:

CEC2014测试集MATLAB代码获取:

CEC2015特别会议/基于学习的实参数单目标优化竞赛:

CEC2015包含15个Learning-based Benchmark问题,这些问题被视为是黑箱问题,没有显式的方程,并且带有边界约束。具体信息如下图:

CEC2015测试集MATLAB代码获取:

CEC2016特别会议/实参数单目标优化进化算法竞赛:

CEC2016包含15个单目标约束优化函数,这些函数基于CEC2015测试集。具体信息如下图:

CEC2016测试集MATLAB代码获取:

CEC2017特别会议/实参数单目标优化进化算法竞赛:

CEC2017包含30个单目标优化函数,这些函数都比较复杂,带有边界约束,能够充分检验算法的综合性能。具体信息如下图(注意,CEC2017的F2是有问题的,严格来说只有29个Benchmark函数,官方已经作了声明):

CEC2017测试集MATLAB代码获取:

CEC2018特别会议/实参数单目标优化进化算法竞赛:

CEC2018包含了28个单目标的约束优化问题,28个Benchmark问题的具体信息如下图:

CEC2018测试集MATLAB代码获取:

CEC2019(GECCO19)特别会议/实参数单目标优化进化算法竞赛:

CEC2019仅包含了10个Benchmark问题,即10个要优化的函数。竞赛的目标是在不受时间限制的情况下计算每个函数的最小值到10位精度,因此也叫100-Digit挑战。要求参赛者用一种算法解决所有的十个问题。另一个不同之处在于,算法在给定函数上的得分是在50次试验中最好的25次结果的均值。不过,我们在使用时,就像平常的实验就可以了。10个Benchmark问题的具体信息如下:

CEC2019测试集MATLAB代码获取:

公众号里面

接下来注意:CEC2020和CEC2021都有两个测试集,一个是Benchmark函数测试集,一个是Real-World优化问题的测试集。简单一点说就是,一个是优化函数,一个是实际问题。

CEC2020(GECCO20)特别会议/现实世界的单目标约束优化问题竞赛:

1. CEC2020优化函数测试集

CEC2020的优化函数测试套件包含了10个Benchmark问题,具体信息如下图:

CEC2020优化函数测试集MATLAB代码获取:

2. CEC2020实际问题测试集(单目标约束)

CEC2020的实际问题测试套件包含了57个现实世界的单目标约束优化问题,包括:工业化学流程问题(7个)、工艺综合与设计问题(7个)、机械工程问题(19个)、电力系统问题(11个)、电子电路问题(6个)、畜牧业饲料配比问题(7个)。具体信息如下图:

CEC2020实际问题测试集MATLAB代码获取:

CEC2021(GECCO21)特别会议/现实世界的单目标约束优化问题竞赛:

1. CEC2021优化函数测试集

CEC2021的优化函数测试套件包含了10个Benchmark问题,实际上是从CEC2014和CEC2017中挑选出的函数组合而成,和上面CEC2020的优化函数测试集相同。具体信息如下图:

CEC2021优化函数测试集MATLAB代码获取:

2. CEC2021实际问题测试集(多目标约束)

CEC2021的实际问题测试套件包含了50个现实世界的多目标约束优化问题,包括:机械设计问题(21个)、化学工程问题(3个)、工艺综合与设计问题(5个)、电力电子问题(6个)、电力系统优化问题(15个)。这些多目标约束优化问题的具体信息如下图:

CEC2021实际问题测试集MATLAB代码获取:

02

其他测试套件

1. 难度可调且可扩展的多目标约束测试问题工具包

开源获取,获取源:

2. 稀疏优化测试函数

为了解决稀疏优化问题,人们提出了许多单目标稀疏优化算法。然而,单目标稀疏优化问题的调节参数难以确定。为了消除调节参数,提出了多种多目标稀疏优化算法,但重构精度不理想。这些测试函数旨在促进新算法的设计,以解决多余的优化问题。

开源获取,获取源:

交叉验证集和测试集在机器学习领域中都有其特定用途,并且它们的作用是评估模型的性能,但在目的、使用时机以及如何使用上有所不同。 ### 交叉验证集 **定义及目的**: 交叉验证是一种用于估计模型性能的技术,在训练数据集中分割出若干份独立的数据集合,通常分为K份。在每一轮迭代中,会选取一份作为验证集(验证当前模型),其余的部分作为训练集。通过这种方式,每个数据样本都被用作过验证集一次,以此减少数据分割带来的随机性影响,提供更稳定和准确的模型性能估计。 **应用场景**: 1. **模型选择**:当需要比较和选择最优的超参数配置时,通过交叉验证可以系统地评估不同配置下的模型性能。 2. **防止过拟合**:通过对数据的不同划分多次评估模型,有助于识别模型对新数据的实际泛化能力,避免过度拟合训练数据的现象。 3. **特征选择**:在评估特定特征组合的有效性时,交叉验证能提供更为可靠的性能指标。 ### 测试集 **定义及目的**: 测试集是在整个建模过程中最后使用的数据集,它主要用于最终评估模型在未见过的新数据上的性能。这一步是在所有调整、选择、优化等过程完成后进行的,以获得真实世界情况下的模型性能估计,类似于模型在未来数据上的预测能力。 **应用场景**: 1. **最终模型评估**:在所有的实验、调优和选择阶段完成后,使用测试集得出的模型性能是对外部用户展示和部署前的最后一道质量检验关卡。 2. **公平性和透明度**:通过测试集的结果,可以向利益相关者明确展示模型的表现,包括其精度、召回率、F1分数等关键指标,增强决策的信心。 3. **模型部署准备**:基于测试集的性能分析,可以更好地理解模型在实际应用环境中的预期效果,从而做出合理的部署策略。 ### 相关问题: 1. **如何正确实施交叉验证?** - 正确的交叉验证策略需要考虑数据集大小、分割比例和迭代次数等因素,通常推荐的K值范围为5到10之间。 2. **为什么需要使用测试集而不是仅依赖交叉验证?** - 使用测试集是为了获得独立于训练过程的性能评估结果,以避免因模型调整而产生的乐观偏差,确保模型的真实性能。 3. **在哪些场景下交叉验证可能是不必要的?** - 当数据量非常大以至于可以轻松分配足够资源用于训练、验证和测试,或者当模型训练时间极短且不需要担心过拟合问题时,交叉验证可能不是必要的步骤。在这种情况下,直接将数据划分为训练集和测试集即可。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

algorithmzzy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值