受足球训练启发,新算法FTTA性能超越DBO
受足球训练启发,新算法FTTA性能超越DBO
足球队训练优化算法(FTTA)是一种新型的元启发式算法,灵感来自高水平足球训练中球员的行为。该算法由Zhirui Tian等人于2024年发表在SCI人工智能一区顶刊《Expert Systems With Applications》上。由于其新颖性和优异的性能,FTTA算法在智能优化领域引起了广泛关注。
原理简介
FTTA算法通过模拟高水平足球训练课上球员的行为来实现优化。通常,足球训练课分为三个部分:集体训练、小组训练和个人额外训练。具体行为和公式如下:
一、集体训练
训练开始时,球员们将在教练的指导下进行集体训练,教练将首先通过一系列测试让球员们了解自己的水平。然后球员们会根据自己的水平制定自己的集体训练计划。我们将球员分为四种不同类型:追随者、发现者、思考者和波动者。在每次迭代中,球员都会随机更改自己的类型。
追随者:追随者是当前最佳球员的狂热追随者,他在每个维度上都朝着最佳球员努力,希望达到当前最佳球员水平。但由于力量的限制,往往每个维度都只能随机移动到最佳球员。方程式如下:
其中当前最佳球员被定义为Fkbest,其中k是迭代次数,Fkbestj是其在维度j上的值;当前球员定义为Fki;i是其球员数量,Fkij是其在维度j上的值,Fkijnew是球员在训练后在维度j的状态。
发现者:发现者比追随者更理性。他们不仅看到了最好的球员,也看到了最差的球员,所以他们不仅朝着最好的球员努力,而且尽最大努力避免成为最糟糕的球员。方程式如下:
其中当前最差的球员被定义为Fkworst,k是迭代次数,其中FkWorstj是其在维度j中的值。Fkijnew是球员在训练后在维度j上的状态。
思考者:思考者比他们面前的人更警觉,他们直接看到了最好的球员和最差的球员之间的差距,并努力达到每个维度的差距,方程如下:
在维度j中,FkBestj-FkWorstj是当前最佳球员和最差球员之间的差向量,k是迭代次数。
波动者:波动性拒绝向任何人学习,他们自己训练,所以状态会有一定的波动。当然,随着训练次数的增加(迭代次数)。球员状态的波动会越来越小,我们将球员状态的变化定义如下:
其中,t(k)是一个具有t分布的随机数,其自由度为当前迭代次数,随着自由度的增加,t分布接近中间值(0)的概率越来越高,两端的分布逐渐减小,将越来越接近正态分布。因此,随着迭代次数的增加,波动程度会越来越小,并逐渐从全局搜索变为局部搜索。
该阶段原理解释图如下:
二、小组训练
集体训练结束后,足球训练过程已进入小组训练阶段,教练根据球员的特点将球员分为四类(每个维度都是一个特征值):前锋、中场、后卫和守门员。在分组训练中,我们使用MGEM自适应聚类方法(MixGaussEM),通过聚类方法模拟教练员的行为,并根据其自身特点将人群分为四类。具体的分类形式如下:
作者设置了一个阈值:团队人数(Teamnumber⩾2),这是每组中的最小人数。作者假设,如果组的数量小于这个值,则无法实施组训练。一旦发生这种情况,教练们将进行第二次分组,采用均匀随机分组的策略,将球员随机均匀地分为四组。
教练完成分组后,球员将与小组中的其他球员进行学习或交流。我们将群体训练定义为三种状态:最优学习、随机学习和随机交流。我们将学习概率定义为pstudy,通信概率为pcomm,球员将在每次迭代中随机选择状态。
最优学习:在每个维度中,球员都有一定的概率直接学习小组中最好的球员的能力值。公式定义如下:
其中Fk-teaml-Best是组l中最好的球员,k是迭代次数,teaml代表组l,Fk-teaml-Best-j是组l的最好球员的j维,Fk-teaml-ij-new是球员在最优学习后在j维中的状态。
随机学习:在每个维度中,球员都有一定的概率直接学习组中任意随机球员的能力值。公式定义如下:
其中Fk-teaml-Random是组l中的随机球员,k是迭代次数,teaml表示组l,Fk-teaml-Random-j是组l的随机球员的j维,Fk-teaml-ij-new是随机学习后球员在j维中的状态。
随机交流:在训练中,学习只是其中的一部分,而两个球员之间的交流对于能力的提高更为重要。在每个维度中,球员都有一定的概率与小组中的任何球员进行交流。
当rand⩽pcomm时,公式定义如下:
其中Fk,teamlRandom是l组中的一个随机球员,k是迭代次数,teaml-代表l组,Fk,TEAmlRandom,j是l组随机球员的j维,两个球员在j维中交换了他们的能力。Randn是一个正态分布的随机数,乘以(1+Randn)表示两个球员对他人能力的理解。
当rand>pcomm时,公式定义如下:
随机误差:我们假设,在小组训练过程中,有一定的概率会出现错误,即他们不小心学会了他人其他维度的内容。出现这种情况的可能性很低,但这是真实和客观的。我们将错误概率定义为perror。
该阶段原理解释图如下:
三、个人额外训练
小组训练结束后,有必要重新计算新的体能值,并用更好的体能值代替较差的体能值来更新球员的状态。更新后,教练会选择最好的球员,让他练习,让他变得更好,这样他才能更好地带动他人的训练状态,训练公式如下:
柯西和高斯联合变异用于描述个人额外训练,k是迭代次数。之所以选择高斯柯西分布,是因为在训练的早期阶段,每个人的水平通常都不高,所以最好的球员获得更大提升的概率更大,此时柯西分布函数占据了很大的比例,可以有效地为球员提供大范围的提升,这有利于全球搜索。随着迭代次数的增加,球员能力的提升变得越来越困难,此时高斯分布占比较大的比例,球员的晋升范围逐渐减小,更有利于局部搜索。
算法流程和伪代码
为了使大家更好地理解,这边给出算法流程和伪代码,非常清晰!
如果实在看不懂,不用担心,可以看下代码,再结合上文公式理解就一目了然了!
性能测评
原文作者采用CEC2005和CEC2020两组测试函数对算法进行评价,并用于优化变分模分解(VMD),以提高数据去噪效果,从而提出了一种新的基于FTTA的混合风速预测系统。
这边为了方便大家对比与理解,采用23个标准测试函数,即CEC2005,并与近年来非常火热的蜣螂优化算法DBO进行对比,这边展示5个测试函数的图~
可以看到,FTTA的效果还是非常不错的!性能极佳,在大部分函数上都超过了最近非常火热的蜣螂优化算法DBO,收敛速度也非常快,大家应用到各类预测、优化问题中是一个非常好的选择~
参考文献
[1]Tian Z, Gai M. Football team training algorithm: A novel sport-inspired meta-heuristic optimization algorithm for global optimization[J]. Expert Systems with Applications, 2024, 245: 123088.