基于近似模型及差分进化算法求解高维优化问题的方法与流程

文档序号:18620690发布日期:2019-09-06 22:27阅读:883来源:国知局
基于近似模型及差分进化算法求解高维优化问题的方法与流程

本发明属于设计优化相关技术领域,更具体地,涉及一种基于近似模型及差分进化算法求解高维优化问题的方法。



背景技术:

工程优化问题通常涉及计算昂贵的仿真模拟和大量设计变量,虽然随着计算技术的发展,关于有限元分析(fea)和计算流体动力学(cfd)的仿真软件可以减轻设计过程中的计算成本,但是过高的计算耗时仍然会导致一些复杂的工程设计问题无法优化。如何以有效的方式解决这些问题仍然是一个巨大的挑战。

近年来,近似模型辅助的元启发式算法已经被广泛研究并被认为具有解决此类工程优化问题的潜力,在减少计算成本上近似模型具有相当的优势,但通常的近似模型辅助的元启发式算法无法满足大规模变量的高维问题的精度要求。相应地,本领域存在着发展一种精度较好的基于近似模型及差分进化算法求解高维优化问题的方法的技术需求。



技术实现要素:

针对现有技术的以上缺陷或改进需求,本发明提供了一种基于近似模型及差分进化算法求解高维优化问题的方法,其基于现有工程优化问题的特点,研究及设计了一种精度较好的基于近似模型及差分进化算法求解高维优化问题的方法。所述方法结合了全局、局部近似模型的预测能力和差分进化算法的寻优能力,提高了优化方法的精度,并适用于求解高维昂贵优化问题,适用性较强,灵活性较好。

为实现上述目的,按照本发明的一个方面,提供了一种基于近似模型及差分进化算法求解高维优化问题的方法,该方法包括以下步骤:

(1)根据待优化实际工程优化问题确定该待优化实际工程优化问题的设计空间,并在所述设计空间内进行采样以得到样本点,将得到的样本点作为初始种群;

(2)基于得到的样本点构建全局径向基函数近似模型,同时构建当前种群中所有个体的局部径向基函数近似模型;

(3)基于差分进化算法,采用局部径向基函数近似模型作为引导来对当前种群进行变异操作,进而对得到的种群进行交叉操作;

(4)基于差分进化算法,采用全局径向基函数近似模型作为引导来对种群进行选择操作;

(5)判断差分进化算法是否收敛,收敛则输出差分进化算法所计算得到的最优解,否则转至步骤(2),直至该差分进化算法收敛以输出最优解。

进一步地,所述局部径向基函数近似模型的构建包括以下步骤:

(31)确定种群中的个体局部区域半径,继而确定个体的局部建模区域;

(32)确定局部建模区域中的样本点,进而构建局部径向基函数近似模型。

进一步地,第g代中第i个个体xi,g的局部区域半径ri的计算公式为:

式中,di,max表示种群中第i个个体与其他个体之间的最大距离;d为实际工程优化问题的维数;n为种群中样本点的个数。

进一步地,所述局部建模区域为[xi,g-ri,xi,g+ri]∩[lb,ub],lb和ub分别为设计空间的下界和上界。

进一步地,所述局部径向基函数近似模型的数学表达式为:

式中,λi为第i个个体xi对应的参数,φi(||x-xi||)表示第i个个体xi的径向函数;||x-xi||表示x和xi之间的欧氏距离;p(x)表示一个用于校正的线性多项式函数。

进一步地,采用局部径向基函数近似模型作为引导来对种群进行的变异操作具体包括以下步骤:

(41)计算种群中的每个个体的突变因子,个体xi的突变因子fi=randci(μf,0.1),randci(μf,0.1)表示柯西分布,若fi≥1则截断为1,若fi≤0则重新生成;μf为个体位置参数,μf=(1-c)·μf+c·meanl(sf),c通常设置为0.1,

(42)在种群的前预定个数的个体中随机选取一个作为参考个体,进而基于局部径向基函数近似模型求解个体突变的位置。

进一步地,个体xi,g突变的位置采用以下公式计算:

式中,vi,g为突变个体;xi,g为个体突变前位置;r为随机生成的用于提高种群的收敛速度和多样性的参数,r∈[0,1.25];xr2,g为粒子r2在第g代的位置;fi为个体xi的突变因子;为xnbest,r1该点在局部径向基函数近似模型中的响应值;f(xr1,g)为xr1,g的真实响应值;xnbest,r1是局部建模区域中局部径向基函数近似模型预测的最小值。

进一步地,xi,g交叉后的第j个基因采用以下公式计算:

式中,ui,g为第i个个体在第g代交叉操作生成的子代个体;uj,i,g表示ui,g的第j维;vj,i,g表示vi,g的第j维;cri=randni(μcr,0.1),randni(μcr,0.1)表示正态分布;μcr初始设置为0.75,每次迭代后更新为μcr=(1-c)·μcr+c·meana(scr),其中c=0.1,meana(scr)表示scr的算术平均值;jrand为(1,d)的随机整数;xj,i,g为的xi,g第j维。

进一步地,对种群的选择操作包括以下步骤:

(61)根据候选试验载体的全局预测响应对候选试验载体进行排序;

(62)选择具有最小预测响应值的试验向量并进行评估;

(63)从父矢量及得到的试验矢量中选择适合度值好的一个,并根据选择结果获取下一代个体位置。

进一步地,下一代个体位置的获取公式为:

式中,xio,g为父矢量;uo,g为试验矢量;f(uo,g)为试验矢量的适合度值;f(xio,g)为父矢量的适合度值。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,本发明提供的基于近似模型及差分进化算法求解高维优化问题的方法主要具有以下有益效果:

1.基于得到的样本点构建全局径向基函数近似模型,同时构建当前种群中所有个体的局部径向基函数近似模型,有效地平衡了全局径向基函数近似模型及局部径向基函数近似模型的预测能力,提高了精度。

2.基于差分进化算法,采用局部径向基函数近似模型作为引导来对当前种群进行变异操作,进而对得到的种群进行交叉操作,并基于差分进化算法,采用全局径向基函数近似模型作为引导来对种群进行选择操作,由此结合了近似模型的预测能力和差分进化算法的寻优能力,加快了算法寻优的速度,提高了精度及效率,降低了时间成本,灵活性较好,适用性较强。

3.本发明可以对高维度的设计空间进行准确的预测,提高了最优解的精度,且可广泛适用于昂贵问题的设计优化。

4.本发明所提供的方法简单,易于实施,灵活性较好,有利于推广应用。

附图说明

图1是本发明提供的基于近似模型及差分进化算法求解高维优化问题的方法的流程示意图;

图2是图1中的基于近似模型及差分进化算法求解高维优化问题的方法涉及的突变示意图;

图3是图1中的基于近似模型及差分进化算法求解高维优化问题的方法涉及的二维空间中个体局部区域的示意图;

图4是本发明实施例提供的基于近似模型及差分进化算法求解高维优化问题的方法涉及的阶梯式悬臂梁结构示意图;

图5是采用图4中提供的基于近似模型及差分进化算法求解高维优化问题的方法及其他优化算法得到的收敛曲线对比示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

请参阅图1、图2及图3,本发明提供的基于近似模型及差分进化算法求解高维优化问题的方法,其适用于工程优化问题。具体地,所述方法主要包括以下步骤:

步骤一,根据待优化实际工程优化问题确定该待优化实际工程优化问题的设计空间,并在所述设计空间内进行采样以得到样本点。其中,将得到的样本点作为初始种群。

步骤二,基于得到的样本点构建全局径向基函数近似模型,同时构建当前种群中所有个体的局部径向基函数近似模型。

所述局部径向基函数近似模型的构建包括以下步骤:

(31)确定种群中的个体局部区域半径,继而确定个体的局部建模区域。

具体地,确定个体的局部区域半径,第g代中第i个个体xi,g的局部区域的半径ri采用以下公式进行计算:

式中,di,max表示种群中第i个个体与其他个体之间的最大距离;d为实际工程优化问题的维数;n为种群中样本点的个数,即种群的大小。

根据局部区域半径来确定xi,g的局部建模区域:

[xi,g-ri,xi,g+ri]∩[lb,ub],

其中,lb和ub分别为设计空间的下界和上界。

(32)确定局部建模区域中的样本点,并构建局部径向基函数近似模型,所述局部径向基函数近似模型的数学表达式为:

式中,λi为第i个个体xi对应的参数,φi(||x-xi||)表示第i个个体xi的径向函数;||x-xi||表示x和xi之间的欧氏距离,x为自变量;p(x)表示一个用于校正的线性多项式函数。其中,p(x)=btx+a。

具体地,确定局部建模区域内的样本点,如果确定的样本点的个数少于5d,则在所述局部建模区域选点以使样本点的个数达到5d个。接着,计算x和xi之间的欧氏距离,并计算其径向基函数,同时用线性加权方式组合成基本径向函数模型,具体为之后,基于所述基本径向函数模型及用于校正的线性多项式函数p(x)确定局部径向基函数近似模型的数学表达式为:

对于局部径向基函数近似模型中的未知参数λ1,λ2,…,λn∈rd,b∈rd,a∈r,采用以下公式进行计算求得。

式中,其中φ是一个n×n的矩阵,φij=φ(||xi-xj||)。

步骤三,基于差分进化算法,采用局部径向基函数近似模型作为引导来对当前种群进行变异操作,进而对得到的种群进行交叉操作。

采用局部径向基函数近似模型作为引导来对种群进行的变异操作具体包括以下步骤:

(41)计算每个个体的突变因子。个体xi的突变因子fi=randci(μf,0.1),randci(μf,0.1)表示柯西分布,若fi≥1则截断为1,若fi≤0则重新生成;μf为个体位置参数,μf=(1-c)·μf+c·meanl(sf),c通常设置为0.1,

(42)在种群的前预定个数的个体中随机选取一个作为参考个体,进而基于局部径向基函数近似模型求解个体突变的位置。

具体地,在种群的前100*p%个个体中随机选择一个作为p∈(0,1)。接着,采用以下公式计算的位置:

式中,为xnbest,r1在局部径向基函数近似模型中的响应值;f(xr1,g)为xr1,a的真实响应值;xnbest,r1是局部建模区域中局部径向基函数近似模型预测的最小值。

此外,基于及突变因子采用以下公式计算xi,g突变的位置。

式中,vi,g为突变个体的位置;xi,g为个体突变前位置;r为随机生成的用于提高种群的收敛速度和多样性的参数,r∈[0,1.25];xr2,g为粒子r2在第g代的位置;fi为个体xi的突变因子。

对当前种群进行的交叉操作时,首先设置初始交叉参数μcr,设置为0.75,用于加速算法收敛,每次迭代后更新为μcr=(1-c)·μcr+c·meana(scr),其中c=0.1,meana(scr)表示scr的算术平均值;xi,g交叉后的第j个基因采用以下公式计算:

式中,ui,g为第i个个体在第g代交叉操作生成的子代个体;μj,i,g表示ui,g的第j维;vj,i,g表示vi,g的第j维;cri=randni(μcr,0.1),randni(μcr,0.1)表示正态分布;jrand为(1,d)内的随机整数;xj,i,g为xi,g的第j维。

步骤四,基于差分进化算法,采用全局径向基函数近似模型作为引导来对种群进行选择操作。具体包括以下步骤:

(61)根据候选试验载体ui,g的全局预测响应对候选试验载体ui,g进行排序。

(62)选择具有最小预测响应值的l个试验向量{uo,g|o=1,2,…l},并用模型进行评估。

(63)从父矢量xio,g和试验矢量uo,g中根据适合度值f(·)选择更好的一个,以采用以下公式获取下一代个体位置:

步骤五,判断差分进化算法是否收敛,收敛则输出此时通过差分进化算法计算得到的最优解,否则转至步骤二,直至该差分进化算法收敛以输出最优解。

实施例

请参阅图4,本实施例以阶梯式悬臂梁的优化设计来对本实施例提供的基于近似模型及差分进化算法求解高维优化问题的方法进行说明。其中,选择d=10步的阶梯式悬臂梁,其在尖端上承受p=50kn的力,选择e=200gpa和σallow=350mpa作为所用材料的属性。每一步的梁都包含了三个变量:即宽度(bi),高度(hi)和长度(li),此优化问题中存在30个输入变量,并按以下顺序排列:x=[b1,h1,l1,b2,h2,l2,…,b10,h10,l10],优化问题表达为:

bi∈[0.01m,0.05m],hi∈[0.3m,0.65m],lj∈[0.5m,1m],i=1,2,…10。

式中,σallow是所有阶梯梁的弯曲应力约束,ar=25是阶梯梁的所有横截面的纵横比约束,vmax=1.2是材料的体积约束,lmin=5是阶梯梁的长度约束;在处理该问题的约束时,使用简单的判断标准:如果候选后代超出约束限制,则舍弃不选,相应的后代点将不会更新,它们将设置为与其父点相同。

请参阅图5,本实施例提供的基于近似模型及差分进化算法求解高维优化问题的方法(s-jade)主要包括以下步骤:

步骤一,构建实际工程优化问题的设计变量与目标响应值之间的高精度仿真模型。

步骤二,根据实际工程优化问题确定设计工程优化问题的设计空间,并在所述设计空间内进行采样以得到样本点,将该样本点作为初始种群。

步骤三,基于得到的样本点构建全局径向基函数近似模型。

步骤四,基于所述样本点构建当前种群中所有个体的局部径向基函数近似模型,具体包括以下步骤:

1)确定个体局部区域半径,第g代中第i个个体xi,g的局部区域的半径ri采用以下公式进行计算:

式中,di,max表示种群中第i个个体与其他个体之间的最大距离;d为实际工程优化问题的维数;n为种群中样本点的个数,即种群的大小。

2)确定个体xi,g的局部建模区域[xi,g-ri,xi,g+ri]∩[lb,ub],其中,lb和ub分别为设计空间的下界和上界。

3)寻找局部建模区域内的样本点,如果得到的样本点个数少于150,则在局部建模区域内进行选点直至达到150个。

4)计算x和xi之间的欧氏距离,并计算其径向基函数,用线性加权方式组合成基本径向基函数模型,具体表达式为

式中,λi为第i个个体xi对应的参数,φi(||x-xi||)表示第i个个体xi的径向函数;||x-xi||表示x和xi之间的欧氏距离;p(x)表示一个用于校正的线性多项式函数。其中,p(x)=btx+a。

5)基于基本径向基函数模型及用于校正的线性多项式函数确定局部径向基函数近似模型的数学表达式为:

对于局部径向基函数近似模型中的未知参数λ1,λ2,…,λn∈rd,b∈rd,a∈r,采用以下公式进行计算求得。

式中,φ是一个n×n的矩阵;φij=φ(||xi-xj||)。

步骤五,基于差分进化算法,采用局部径向基函数近似模型作为引导来对当前种群进行变异操作,具体包括以下步骤:

(a)计算每个个体的突变因子。个体xi的突变因子fi=randci(μf,0.1),randci(μf,0.1)表示柯西分布,若fi≥1则截断为1,若fi≤0则重新生成;μf为个体位置参数,μf=(1-c)·μf+c·meanl(sf),c通常设置为0.1,

(b)在种群的前预定个数的个体中随机选取一个作为参考个体,进而基于局部径向基函数近似模型求解个体突变的位置。

具体地,在种群的前100*p%个个体中随机选择一个作为p∈(0,1)。接着,采用以下公式计算的位置:

式中,xnbest,r1是局部建模区域中局部径向基函数近似模型预测的最小值。

此外,基于及突变因子采用以下公式计算xi,g突变的位置。

式中,vi,g为突变个体的位置;xi,9为个体突变前位置;r为随机生成的用于提高种群的收敛速度和多样性的参数,r∈[0,1.25];xr2,g为粒子r2在第g代的位置;fi为个体xi的突变因子。

步骤六,对当前种群进行交叉操作。具体地,首先设置初始交叉参数μcr,设置为0.75,用于加速算法收敛,每次迭代后更新为μcr=(1-c)·μcr+c·meana(scr),其中c=0.1,meana(scr)表示scr的算术平均值;接着,xi,g交叉后的第j个基因采用以下公式计算:

式中,ui,g为第i个个体在第g代交叉操作生成的子代个体;uj,i,g表示ui,g的第j维;vj,i,g表示vi,g的第j维;cri=randni(μcr,0.1),randni(μcr,0.1)表示正态分布;jrand为(1,d)的随机整数;xj,i,g为xi,g的第j维。

步骤七,基于差分进化算法,采用全局径向基函数近似模型作为引导来对种群进行选择操作。具体包括以下步骤:

(s1)根据候选试验载体ui,g的全局预测响应对候选试验载体ui,g进行排序。

(s2)选择具有最小预测响应值的l个试验向量{uo,g|o=1,2,…l},并用模型进行评估。

(s3)从父矢量xio,g和试验矢量uo,g中根据适合度值选择更好的一个,以采用以下公式获取下一代个体位置:

步骤八,判断判断差分进化算法是否收敛,收敛则输出此时通过差分进化算法计算得到的最优解,否则转至步骤三,直至该差分进化算法收敛以输出最优解。

为了进一步对本实施例进行说明,采用本实施例的方法与abc、tlbo、mfo、trmps2算法进行对比,设置真实模型最大调用次数nfe=990,每个算法测试25次,为了测试n和l的影响,使用包括n=l=90,n=l=60,n=l=30和n=30,l=10的不同组别来设置s-jade中的参数n和l,结果分析见表1,在相同的时间成本限制内,本实施例的方法求得了最优的解,且稳定性也比较高,可以人为本实施例的方法在计算昂贵的高维问题中有良好的表现。

此外,在对比的所有算法中,本实施例的收敛速度最快,可以体现了本实施例在提高寻优效率上的有效性。同时,对比试验结果证明本实施例的参数n和l对于其在阶梯式悬臂梁的优化设计中具有一定的影响,在实际优化中可通过对参数的调节达到提升算法性能的效果。

表1不用算法的优化结果

本发明提供的基于近似模型及差分进化算法求解高维优化问题的方法,所述方法结合了近似模型的预测能力和差分进化算法的寻优能力,加快了算法寻优的速度,提高了精度及效率,降低了时间成本,灵活性较好,适用性较强。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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