一种基于个体惩罚的代理模型辅助优化方法

文档序号:40201802发布日期:2024-12-03 12:00阅读:17来源:国知局
一种基于个体惩罚的代理模型辅助优化方法

本发明属于计算机,特别涉及一种基于个体惩罚的代理模型辅助优化方法。


背景技术:

1、许多工程问题,如计算流体力学、化工过程设计和结构设计等,都是约束优化问题。其中一些问题的目标函数和约束函数都是昂贵的黑盒函数,即目标函数和约束函数的评估都依赖于耗时的计算机模拟或昂贵的物理实验(例如,复杂化工过程的模拟需要几分钟甚至几小时的时间),并且目标函数和约束函数的梯度无法计算。这种优化问题被称为昂贵约束优化问题。由于目标函数和约束函数的评估都是耗时的或昂贵的,解决昂贵约束优化问题要求在有限的函数评估次数内找到最优可行解。直接应用进化算法求解此类问题并不现实,因为进化算法需要大量函数评估搜索最优解,造成极高的计算或实验负担。在有限的函数评估次数内,利用已生成数据构建计算成本低的代理模型,然后利用代理模型预测个体的适应度,引导进化算法的搜索,此方法称为代理模型辅助优化方法。

2、近几年,一些代理模型辅助优化方法被提出来解决昂贵约束优化问题。此类优化方法包括两个关键部分:代理模型辅助搜索和约束处理技术。代理模型辅助搜索用于探索景观和生成新的候选解,约束处理技术根据目标函数值和约束函数值比较个体的优劣。其中,代理模型辅助搜索可分为:代理模型辅助全局搜索、代理模型辅助局部搜索。代理模型辅助全局搜索利用所有评估过的个体解构建全局代理模型来引导搜索,但忽视了有希望区域的进一步开发。随着搜索的进行,评估过的个体数量增加,全局代理模型构建成本增加到难以负担的程度。代理模型辅助局部搜索构建局部代理模型以开发局部区域,这些代理模型在局部区域精准且易构建,但在搜索过程中可能忽略一些有希望的区域。

3、惩罚函数法通过在原目标函数中添加惩罚项,将约束优化问题转换为无约束优化问题。惩罚项中的惩罚系数与具体问题有关,只有合适的系数才能引导搜索找到最优可行解。然而,现有的惩罚系数设置方法没有利用当前种群中的其他信息(如个体的目标函数值和约束违反值)。此外,默认设置会给种群中的每个个体分配相同的惩罚系数,从而导致惩罚系数的合理性未知。


技术实现思路

1、本发明的目的在针对上述现有方法的不足,提出一种基于个体惩罚的代理模型辅助优化方法,以提升代理模型的局部预测精度,自适应地设置惩罚系数,实现在有限的函数评估次数内找到最优可行解,实现不同特征的昂贵约束优化问题的求解。

2、为实现上述目的,本发明的技术方案包括如下:一种基于个体惩罚的代理模型辅助优化方法,具体包括以下内容:

3、(1)生成初始种群并初始化档案:

4、(1.1)获取待优化目标的原始信息,包括决策空间,目标函数和约束函数,并在决策空间中进行初始采样,得到初始种群;评估初始种群的目标函数和约束函数值;

5、(1.2)利用初始种群及其目标函数和约束函数值构成档案a;

6、(2)初始化参数:设置函数评估次数为fes=np,最大函数评估次数为maxfes,迭代次数为t=1;

7、(3)确定惩罚系数的范围:分别根据目标函数值和约束函数值将当前种群中的个体递增排序,得到索引集合为of和oc;根据索引集合of和oc,确定惩罚系数的下界rmin和上界rmax;

8、(4)匹配惩罚系数与个体:根据变换适应度函数评估当前种群中的全部个体,按照递增排序得到个体的索引集合为index;根据索引集合index,为每个个体匹配一个惩罚系数;计算种群中所有个体的罚函数值;

9、(5)获取最近邻个体并构建局部搜索区域:

10、(5.1)计算每个个体与档案a中全部个体之间的距离;在档案a中找到距离每个个体最近的k个个体;

11、(5.2)根据最近邻的k个个体,确定局部搜索区域的边界;

12、(6)为目标函数和约束函数构建代理模型:

13、(6.1)基于径向基函数分别搭建目标函数和约束函数的代理模型;

14、(6.2)根据最近邻的k个个体及其目标函数值和约束函数值,训练得到目标函数和约束函数的径向基函数代理模型;

15、(7)通过差分进化算子生成试验子代并选出最佳候选解:

16、(7.1)亲本种群由当前个体及其最近邻的k个个体组成;采用差分进化算子来生成多个试验子代;

17、(7.2)根据目标函数和约束函数的代理模型评估所有的试验子代,得到代理模型预测的最佳候选解;

18、(8)执行选择操作:根据原目标函数和约束函数评估最佳候选解,计算最佳候选解的罚函数值;如果最佳候选解的罚函数值小于当前个体的罚函数值,则将当前个体替换为最佳候选解;否则,保留当前个体;令fes=fes+1;

19、(9)更新档案:添加最佳候选解及其目标函数和约束函数值到档案a中;

20、(10)判断fes>maxfes是否成立:若是,则根据可行性规则比较档案a中的个体之间的优劣,输出待优化问题的最优可行解;否则,令t=t+1,返回步骤(3)。

21、优选地,步骤(1.1)中所述的在决策空间中进行初始采样,采用随机采样或拉丁超立方采样的方法实现。

22、优选地,步骤(3)中所述的根据索引集合of和oc,确定惩罚系数的下界rmin和上界rmax,其实现如下:

23、假设初始采样个体数为np,of={i1,…,inp},oc={i1',…,inp'};判断of是否等于oc:若是,则设置惩罚系数的下界rmin=0,设置惩罚系数的上界其中,t表示迭代次数,d表示问题的维度,fr表示当前种群中的可行个体比例;否则,设置惩罚系数的下界设置惩罚系数的上界其中,表示个体的目标函数值,表示个体的约束违反值,表示第k个约束函数,m表示约束函数的数量。

24、优选地,步骤(4)中所述的根据变换适应度函数评估当前种群中的全部个体,其实现如下:

25、判断当前种群中是否有可行个体:若有,则可行个体的变换适应度函数不可行个体的变换适应度函数否则,个体的变换适应度函数其中,表示个体的目标函数值,fmin表示最小的目标函数值,fmax表示最大的目标函数值,表示0和之间的较大值,gmax,k表示的最大值,fr表示当前种群中的可行个体比例。

26、优选地,步骤(4)中所述的根据索引集合index,为每个个体匹配一个惩罚系数,其实现如下:

27、每个个体匹配的惩罚系数ri在[rmin,rmax]范围内随机取值,且必须满足的条件。

28、优选地,步骤(4)中所述的计算种群中所有个体的罚函数值,其实现如下:

29、个体的罚函数值其中,表示个体的目标函数值,ri表示个体匹配的惩罚系数,表示个体的约束违反值,表示个体的第k个约束函数值,m表示约束函数的数量。

30、优选地,步骤(5.1)中所述的计算每个个体与档案a中全部个体之间的距离为欧氏距离

31、优选地,步骤(6.1)中所述的基于径向基函数分别搭建目标函数和约束函数的代理模型,其实现如下:

32、假设存在n个数据点及其对应的函数值则新数据点的径向基函数代理模型的形式如下:其中,表示权重系数,表示个体与个体之间的欧氏距离,表示d个变量的一阶多项式,表示基函数。

33、优选地,步骤(6.2)中所述的根据最近邻的k个个体及其目标函数值和约束函数值,训练得到目标函数和约束函数的径向基函数代理模型,其实现如下:

34、权重系数和一阶多项式的系数通过求解得到,其中,矩阵的元素矩阵的第i个行向量是矩阵y=(y1,…,yk)t,yk表示第k个个体的目标函数值或约束函数值,0(d+1)×(d+1)表示行和列为(d+1)的零矩阵,0d+1表示大小为(d+1)的零向量。

35、优选地,步骤(7.2)中所述的根据目标函数和约束函数的代理模型评估所有的试验子代,得到代理模型预测的最佳候选解,其实现如下:

36、假设试验子代为根据评估所有的试验子代,得到为最佳候选解,其中,表示目标函数的代理模型,ri表示个体匹配的惩罚系数,表示约束违反的代理模型,表示第k个约束函数的代理模型,m表示约束函数的数量。

37、优选地,步骤(10)中所述的根据可行性规则比较档案a中的个体之间的优劣,其实现如下:

38、将档案a中的个体两两进行比较:

39、如果两个比较个体的约束违反值都大于0时,则约束违反值小的个体优于约束违反值大的个体;

40、如果两个比较个体中,其中一个个体的约束违反值大于0,另一个个体的约束违反值等于0时,则可行的个体优于不可行的个体;

41、如果两个比较个体的约束违反值都等于0时,则目标函数值小的个体优于目标函数值大的个体。

42、本发明与现有技术相比,具有如下优点:

43、第一,本发明采用多个代理模型辅助局部搜索的方法来探索景观,可以避免忽略有希望的区域并避免陷入局部最优;

44、第二,本发明仅构建局部代理模型,可以降低构建代理模型的计算成本;

45、第三,本发明采用一种个体惩罚系数的自适应生成策略,可以在最小化目标函数和最小化约束违反之间取得平衡。

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