一种利用集体信息的基于教学的全局优化算法的制作方法

文档序号:16883422发布日期:2019-02-15 22:24阅读:376来源:国知局
一种利用集体信息的基于教学的全局优化算法的制作方法

本发明涉及智能优化,数值优化技术领域,更具体地,涉及一种利用集体信息的基于教学的全局优化算法。



背景技术:

在科学以及工程领域中,经常能够遇到一些全局优化或者组合优化的问题,这些问题一般都有优化范围广,非线性等特点,利用人工方法去优化寻找这些问题的最优解往往比较复杂,而利用优化算法则可以方便地求出这些问题的全局最优解。

基于教学的优化算法是由r.v.rao和v.j.savsani等人于2011年提出的,这种优化方法类似于人们的课堂教学模式,即老师向学生传授知识,促使学生的学习成绩提高,同时,同学之间也有优秀的同学向其他同学传授知识,目的同样是促使所有人的学习成绩提高。基于教学的优化方法分两个阶段,第一阶段主要是从种群中找到一个较好的个体作为“教师”,利用“教师”提高种群的整体水平,第二阶段则是种群内个体互相学习进行提高,该算法实现起来简单,而且需要手动设置调整的参数少,同时具有较好的优化能力。由于基于教学优化方法的这些特点,吸引了不少学者对它的研究。rao等人提出每一代用种群中最好的个体取代种群中最差的个体的基于精英策略的改进;和增加“教师”数量的教学模式的改进并且将算法运用到多目标的热交换器的优化问题中;zou等人则提出了将种群进行分组,并且每组设置一个“教师”,让它们各组分开学习的算法。

基于教学优化算法的设置参数少,结构简单,收敛速度快的特点,使得它也容易陷入局部最优的状态中,得到并非全局最优的结果。这种情况的存在不利于我们对优化问题的求解。



技术实现要素:

本发明提供一种利用集体信息的基于教学的全局优化算法,该算法利用集体信息以及邻域信息来平衡基于教学优化算法的全局探测和局部搜索能力,提高算法优化性能。

为了达到上述技术效果,本发明的技术方案如下:

一种利用集体信息的基于教学的全局优化算法,包括以下步骤:

s1:初始化种群:设置种群规模np,变量维度d,最大可迭代代数gmax,邻域半径k;

s2:生成随机初始种群,计算种群个体的目标函数值并构建邻域结构;

s3:计算各个个体的集体信息向量;

s4:选出目标个体邻域中最优个体对目标个体进行更新,产生试验个体1;

s5:用目标个体的集体信息向量对个体进行更新,产生试验个体2;

s6:将步骤s4和步骤s5中的试验个体进行加权并对目标个体进行更新,产生新个体;

s7:对新个体和目标个体进行选择操作;

s8:重新计算种群各个个体的集体信息向量;

s9:利用新的集体信息向量对整种群中的个体进行更新;

s10:对更新个体与步骤s7选择后的个体进行选择操作;判断算法执行的终止条件是否满足,若满足,保存结果并退出,否则返回步骤s3继续执行。

进一步地,所述步骤s2的具体过程是:

随机生成初始种群p={x1,g,x2,g,…,xnp,g},其中g代表当前进化代数,x1,g,x2,g,…,xnp,g代表第g代中种群的个体,并计算各个个体的目标函数值f(x),邻域结构为环形,即种群个体排成环形,最后一个个体两边分别是第一个个体与倒数第二个个体,邻域半径为k,即每个个体与其两边各k个个体组成邻域。

进一步地,所述步骤s3的具体过程是:

计算各个个体的集体信息向量,集体信息向量根据以下公式计算:

其中xj,g为m个目标函数值优于xj,g的个体,且它们按目标函数值从优到劣排序,m为大于等于1且小于等于i范围内的的整数。

进一步地,所述步骤s4的具体过程是:

利用邻域个体产生试验个体,根据以下公式产生:

其中xnteacher,g为邻域中最优个体,xp1,g和xp2,g为邻域中随机选择的个体,r1为0到1之间的随机数,tf的值为随机整数1或者2。

进一步地,所述步骤s5的具体过程是:

利用集体信息向量产生试验个体,根据以下公式产生:

其中xg1,g和xg2,g为邻域中随机选择的个体,r2为0到1之间的随机数。

进一步地,所述步骤s6的具体过程是:

利用步骤4和步骤5中的试验个体加权,结合目标个体产生新的个体并计算目标函数值,新个体根据以下公式产生:

newxi,g=xi,g+(g/gmax)*xglobal,g+(1-g/gmax)*xlocal,g(5)。

进一步地,所述步骤s7的具体过程是:

对新个体与目标个体进行选择操作,若新个体优于目标个体,则新个体替换目标个体,否则,目标个体继续保留。

进一步地,所述步骤s8的具体过程是:利用步骤s3中的公式,重新计算种群中各个个体的集体信息向量。

进一步地,所述步骤s9的具体过程是:

利用新的集体信息向量对目标个体进行更新,产生新个体并计算目标函数值,新个体根据以下公式产生:

其中xj为种群中不同于xi的随机选择的个体,r为0到1之间的随机数。

进一步地,所述步骤s10的具体过程是:

对新个体与步骤7选择后的个体进行选择操作;判断算法执行的终止条件是否满足,若满足,保存结果并退出,否则返回步骤s3继续执行。

与现有技术相比,本发明技术方案的有益效果是:

本发明方法采用了邻域结构与集体信息向量,通过邻域向量与集体信息向量的加权协调提高种群个体的质量,同时后续对于种群中每一个个体的更新也利用了集体信息,能够使算法平衡全局探测和局部搜索,有效减少了算法陷入局部最优的可能,提高了算法的性能。

附图说明

图1为本发明的方法流程示意图;

图2为本发明对30维sphere函数优化求解时的收敛趋势曲线图;

图3为本发明对30维differentpowers函数优化求解时的收敛趋势曲线图;

图4为本发明对30维旋转的griewank函数优化求解时的收敛趋势曲线图。

具体实施方式

附图仅用于示例性说明,不能理解为对本专利的限制;

为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;

对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。

下面结合附图和实施例对本发明的技术方案做进一步的说明。

实施例1

如图1所示,一种利用集体信息的基于教学的全局优化算法,包括以下步骤:

(1)初始化种群:设置种群规模np,变量维度d,最大可迭代代数gmax,邻域半径k;

(2)随机生成初始种群p={x1,g,x2,g,…,xnp,g},其中g代表当前进化代数,x1,g,x2,g,…,xnp,g代表第g代中种群的个体,并计算各个个体的目标函数值f(x),邻域结构为环形,即种群个体排成环形,最后一个个体两边分别是第一个个体与倒数第二个个体,邻域半径为k,即每个个体与其两边各k个个体组成邻域;

(3)计算各个个体的集体信息向量,集体信息向量根据以下公式计算:

其中xj,g为m个目标函数值优于xj,g的个体,且它们按目标函数值从优到劣排序,m为大于等于1且小于等于i范围内的的整数;

(4)利用邻域个体产生试验个体,根据以下公式产生:

其中xnteacher,g为邻域中最优个体,xp1,g和xp2,g为邻域中随机选择的个体,r1为0到1之间的随机数,tf的值为随机整数1或者2;

(5)利用集体信息向量产生试验个体,根据以下公式产生:

其中xg1,g和xg2,g为邻域中随机选择的个体,r2为0到1之间的随机数;

(6)利用步骤4和步骤5中的试验个体加权,结合目标个体产生新的个体并计算目标函数值,新个体根据以下公式产生:

newxi,g=xi,g+(g/gmax)*xglobal,g+(1-g/gmax)*xlocal,g(5);

(7)对新个体与目标个体进行选择操作,若新个体优于目标个体,则新个体替换目标个体,否则,目标个体继续保留;

(8)利用步骤(3)中的公式,重新计算种群中各个个体的集体信息向量;

(9)利用新的集体信息向量对目标个体进行更新,产生新个体并计算目标函数值,新个体根据以下公式产生:

其中xj为种群中不同于xi的随机选择的个体,r为0到1之间的随机数;

(10)对新个体与步骤7选择后的个体进行选择操作;判断算法执行的终止条件是否满足,若满足,保存结果并退出,否则返回步骤s3继续执行。

如图2-4,以30维的sphere函数为实施例,51次独立运行的平均成功率为100%(规定算法在150000次目标函数评价次数内找到最优解的精确度为1e-8为成功求解),以30维的differentpowers函数为实施例,51次独立运行150000次目标函数评价次数,求解平均值为1.87e-8,标准差为5.55e-8,以30维的旋转的griewank函数为实施例,51次独立运行150000次目标函数评价次数,求解平均值为1.22e+0,标准差为5.23e-1。

相同或相似的标号对应相同或相似的部件;

附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1